From dbac7c579e163870c759f7cd11b2b254ab0fdb10 Mon Sep 17 00:00:00 2001 From: Matt Corallo Date: Wed, 5 Jan 2022 06:49:44 +0000 Subject: [PATCH] Update auto-generated mts files (without structs) --- ts/bindings.c | 50747 ++++++++-------- ts/bindings.c.body | 50747 ++++++++-------- ts/{bindings.ts => bindings.mts} | 20689 +++---- ts/enums/AccessError.mts | 1 + ts/enums/AccessError.ts | 12 - ts/enums/COption_NoneZ.mts | 1 + ts/enums/COption_NoneZ.ts | 12 - ts/enums/ChannelMonitorUpdateErr.mts | 1 + ts/enums/ChannelMonitorUpdateErr.ts | 68 - ts/enums/ConfirmationTarget.mts | 1 + ts/enums/ConfirmationTarget.ts | 16 - ts/enums/CreationError.ts | 24 - ts/enums/Currency.ts | 24 - ts/enums/IOError.ts | 22 - ts/enums/Level.mts | 1 + ts/enums/Level.ts | 28 - ts/enums/Network.mts | 1 + ts/enums/Network.ts | 20 - ts/enums/Secp256k1Error.mts | 1 + ts/enums/Secp256k1Error.ts | 40 - ts/enums/SemanticError.ts | 45 - ts/enums/SiPrefix.ts | 20 - ts/node/fs.d.ts | 4 +- ts/node/index.d.ts | 4 +- ts/structs/APIError.ts | 134 - ts/structs/AcceptChannel.ts | 170 - ts/structs/Access.ts | 61 - ts/structs/AnnouncementSignatures.ts | 87 - ts/structs/BackgroundProcessor.ts | 47 - ts/structs/Balance.ts | 108 - ts/structs/BaseSign.ts | 233 - ts/structs/BestBlock.ts | 57 - ts/structs/BroadcasterInterface.ts | 57 - ts/structs/BuiltCommitmentTransaction.ts | 79 - ts/structs/ChainMonitor.ts | 97 - ts/structs/ChainParameters.ts | 60 - ts/structs/ChannelAnnouncement.ts | 98 - ts/structs/ChannelConfig.ts | 121 - ts/structs/ChannelCounterparty.ts | 80 - ts/structs/ChannelDetails.ts | 196 - ts/structs/ChannelFeatures.ts | 69 - ts/structs/ChannelHandshakeConfig.ts | 74 - ts/structs/ChannelHandshakeLimits.ts | 119 - ts/structs/ChannelInfo.ts | 121 - ts/structs/ChannelManager.ts | 243 - ts/structs/ChannelManagerPersister.ts | 63 - ts/structs/ChannelManagerReadArgs.ts | 105 - ts/structs/ChannelMessageHandler.ts | 273 - ts/structs/ChannelMonitor.ts | 190 - ts/structs/ChannelMonitorUpdate.ts | 53 - ts/structs/ChannelPublicKeys.ts | 96 - ts/structs/ChannelReestablish.ts | 71 - ts/structs/ChannelTransactionParameters.ts | 130 - ts/structs/ChannelTypeFeatures.ts | 69 - ts/structs/ChannelUpdate.ts | 71 - ts/structs/ClosingSigned.ts | 89 - ts/structs/ClosingSignedFeeRange.ts | 69 - ts/structs/ClosingTransaction.ts | 78 - ts/structs/ClosureReason.ts | 158 - ts/structs/CommitmentSigned.ts | 73 - ts/structs/CommitmentTransaction.ts | 80 - ts/structs/CommitmentUpdate.ts | 126 - ts/structs/CommonBase.ts | 10 - ts/structs/Confirm.ts | 94 - ...ounterpartyChannelTransactionParameters.ts | 71 - ts/structs/CounterpartyForwardingInfo.ts | 67 - ts/structs/CustomMessageHandler.ts | 84 - ts/structs/CustomMessageReader.ts | 61 - ts/structs/DataLossProtect.ts | 58 - ts/structs/DecodeError.ts | 33 - ts/structs/DefaultRouter.ts | 37 - ts/structs/DelayedPaymentOutputDescriptor.ts | 111 - ts/structs/Description.ts | 55 - .../DirectedChannelTransactionParameters.ts | 57 - ts/structs/DirectionalChannelInfo.ts | 120 - ts/structs/ErrorAction.ts | 116 - ts/structs/ErrorMessage.ts | 69 - ts/structs/ErroringMessageHandler.ts | 42 - ts/structs/Event.ts | 310 - ts/structs/EventHandler.ts | 58 - ts/structs/EventsProvider.ts | 60 - ts/structs/ExpiryTime.ts | 66 - ts/structs/Fallback.ts | 94 - ts/structs/FeeEstimator.ts | 59 - ts/structs/FilesystemPersister.ts | 47 - ts/structs/Filter.ts | 73 - ts/structs/FundingCreated.ts | 87 - ts/structs/FundingLocked.ts | 69 - ts/structs/FundingSigned.ts | 69 - ts/structs/GossipTimestampFilter.ts | 78 - ts/structs/HTLCOutputInCommitment.ts | 98 - ts/structs/HTLCUpdate.ts | 44 - ts/structs/HolderCommitmentTransaction.ts | 64 - ts/structs/IgnoringMessageHandler.ts | 56 - ts/structs/InMemorySigner.ts | 174 - ts/structs/Init.ts | 62 - ts/structs/InitFeatures.ts | 69 - ts/structs/InvalidShutdownScript.ts | 49 - ts/structs/Invoice.ts | 152 - ts/structs/InvoiceFeatures.ts | 69 - ts/structs/InvoicePayer.ts | 64 - ts/structs/InvoiceSignature.ts | 39 - ts/structs/KeysInterface.ts | 150 - ts/structs/KeysManager.ts | 48 - ts/structs/LightningError.ts | 60 - ts/structs/Listen.ts | 66 - ts/structs/LockableScore.ts | 63 - ts/structs/LockedChannelMonitor.ts | 20 - ts/structs/Logger.ts | 54 - ts/structs/MessageHandler.ts | 54 - ts/structs/MessageSendEvent.ts | 446 - ts/structs/MessageSendEventsProvider.ts | 67 - ts/structs/MinFinalCltvExpiry.ts | 60 - ts/structs/MonitorEvent.ts | 116 - ts/structs/MonitorUpdateId.ts | 44 - ts/structs/MultiThreadedLockableScore.ts | 29 - ts/structs/NetAddress.ts | 118 - ts/structs/NetGraphMsgHandler.ts | 57 - ts/structs/NetworkGraph.ts | 114 - ts/structs/NetworkUpdate.ts | 92 - ts/structs/NodeAnnouncement.ts | 71 - ts/structs/NodeAnnouncementInfo.ts | 104 - ts/structs/NodeFeatures.ts | 69 - ts/structs/NodeId.ts | 61 - ts/structs/NodeInfo.ts | 77 - ts/structs/OpenChannel.ts | 217 - ts/structs/Option_AccessZ.ts | 53 - .../Option_C2Tuple_usizeTransactionZZ.ts | 64 - ts/structs/Option_CVec_NetAddressZZ.ts | 69 - ts/structs/Option_ClosureReasonZ.ts | 64 - ts/structs/Option_EventZ.ts | 64 - ts/structs/Option_FilterZ.ts | 53 - ts/structs/Option_MonitorEventZ.ts | 64 - ts/structs/Option_NetworkUpdateZ.ts | 64 - ts/structs/Option_TypeZ.ts | 65 - ts/structs/Option_u16Z.ts | 61 - ts/structs/Option_u32Z.ts | 61 - ts/structs/Option_u64Z.ts | 61 - ts/structs/OutPoint.ts | 85 - ts/structs/Payee.ts | 123 - ts/structs/PayeePubKey.ts | 60 - ts/structs/Payer.ts | 133 - ts/structs/PaymentError.ts | 86 - ts/structs/PaymentPurpose.ts | 65 - ts/structs/PaymentSendFailure.ts | 129 - ts/structs/PeerHandleError.ts | 49 - ts/structs/PeerManager.ts | 83 - ts/structs/Persist.ts | 88 - ts/structs/Ping.ts | 69 - ts/structs/Pong.ts | 60 - ts/structs/PositiveTimestamp.ts | 61 - ts/structs/PrivateRoute.ts | 57 - ts/structs/QueryChannelRange.ts | 83 - ts/structs/QueryShortChannelIds.ts | 64 - ts/structs/RawDataPart.ts | 50 - ts/structs/RawInvoice.ts | 133 - ts/structs/ReadOnlyNetworkGraph.ts | 28 - ts/structs/Record.ts | 78 - ts/structs/ReplyChannelRange.ts | 91 - ts/structs/ReplyShortChannelIdsEnd.ts | 69 - .../Result_AcceptChannelDecodeErrorZ.ts | 68 - ...sult_AnnouncementSignaturesDecodeErrorZ.ts | 68 - ..._BuiltCommitmentTransactionDecodeErrorZ.ts | 68 - ...le_BlockHashChannelManagerZDecodeErrorZ.ts | 57 - ...le_BlockHashChannelMonitorZDecodeErrorZ.ts | 68 - ...aymentHashPaymentIdZPaymentSendFailureZ.ts | 68 - ...uple_PaymentHashPaymentSecretZAPIErrorZ.ts | 68 - ..._C2Tuple_PaymentHashPaymentSecretZNoneZ.ts | 63 - ..._C2Tuple_SignatureCVec_SignatureZZNoneZ.ts | 63 - ...sult_COption_ClosureReasonZDecodeErrorZ.ts | 68 - .../Result_COption_EventZDecodeErrorZ.ts | 68 - ...esult_COption_MonitorEventZDecodeErrorZ.ts | 68 - ...sult_COption_NetworkUpdateZDecodeErrorZ.ts | 68 - .../Result_COption_TypeZDecodeErrorZ.ts | 68 - ...C2Tuple_BlockHashChannelMonitorZZErrorZ.ts | 70 - ts/structs/Result_CVec_CVec_u8ZZNoneZ.ts | 60 - ts/structs/Result_CVec_SignatureZNoneZ.ts | 60 - ts/structs/Result_CVec_u8ZPeerHandleErrorZ.ts | 65 - .../Result_ChannelAnnouncementDecodeErrorZ.ts | 68 - .../Result_ChannelConfigDecodeErrorZ.ts | 68 - .../Result_ChannelFeaturesDecodeErrorZ.ts | 57 - ts/structs/Result_ChannelInfoDecodeErrorZ.ts | 68 - ...Result_ChannelMonitorUpdateDecodeErrorZ.ts | 68 - .../Result_ChannelPublicKeysDecodeErrorZ.ts | 68 - .../Result_ChannelReestablishDecodeErrorZ.ts | 68 - ...hannelTransactionParametersDecodeErrorZ.ts | 68 - .../Result_ChannelTypeFeaturesDecodeErrorZ.ts | 57 - .../Result_ChannelUpdateDecodeErrorZ.ts | 68 - .../Result_ClosingSignedDecodeErrorZ.ts | 68 - ...esult_ClosingSignedFeeRangeDecodeErrorZ.ts | 68 - .../Result_CommitmentSignedDecodeErrorZ.ts | 68 - ...esult_CommitmentTransactionDecodeErrorZ.ts | 68 - ...hannelTransactionParametersDecodeErrorZ.ts | 68 - ...ayedPaymentOutputDescriptorDecodeErrorZ.ts | 68 - .../Result_DescriptionCreationErrorZ.ts | 65 - ...sult_DirectionalChannelInfoDecodeErrorZ.ts | 68 - ts/structs/Result_ErrorMessageDecodeErrorZ.ts | 68 - ts/structs/Result_ExpiryTimeCreationErrorZ.ts | 65 - .../Result_FundingCreatedDecodeErrorZ.ts | 68 - .../Result_FundingLockedDecodeErrorZ.ts | 68 - .../Result_FundingSignedDecodeErrorZ.ts | 68 - ...esult_GossipTimestampFilterDecodeErrorZ.ts | 68 - ...sult_HTLCOutputInCommitmentDecodeErrorZ.ts | 68 - ts/structs/Result_HTLCUpdateDecodeErrorZ.ts | 68 - ...HolderCommitmentTransactionDecodeErrorZ.ts | 68 - .../Result_InMemorySignerDecodeErrorZ.ts | 68 - ts/structs/Result_InitDecodeErrorZ.ts | 68 - ts/structs/Result_InitFeaturesDecodeErrorZ.ts | 57 - .../Result_InvoiceFeaturesDecodeErrorZ.ts | 57 - ts/structs/Result_InvoiceNoneZ.ts | 63 - ts/structs/Result_InvoiceSemanticErrorZ.ts | 65 - .../Result_InvoiceSignOrCreationErrorZ.ts | 68 - .../Result_LockedChannelMonitorNoneZ.ts | 61 - ts/structs/Result_NetAddressDecodeErrorZ.ts | 68 - ts/structs/Result_NetworkGraphDecodeErrorZ.ts | 68 - .../Result_NodeAnnouncementDecodeErrorZ.ts | 68 - ...Result_NodeAnnouncementInfoDecodeErrorZ.ts | 68 - ts/structs/Result_NodeFeaturesDecodeErrorZ.ts | 57 - ts/structs/Result_NodeIdDecodeErrorZ.ts | 68 - ts/structs/Result_NodeInfoDecodeErrorZ.ts | 68 - ts/structs/Result_NoneAPIErrorZ.ts | 63 - .../Result_NoneChannelMonitorUpdateErrZ.ts | 60 - ts/structs/Result_NoneErrorZ.ts | 60 - ts/structs/Result_NoneLightningErrorZ.ts | 63 - ts/structs/Result_NoneNoneZ.ts | 58 - ts/structs/Result_NonePaymentSendFailureZ.ts | 63 - ts/structs/Result_NonePeerHandleErrorZ.ts | 63 - ts/structs/Result_NoneSemanticErrorZ.ts | 60 - ts/structs/Result_OpenChannelDecodeErrorZ.ts | 68 - ts/structs/Result_OutPointDecodeErrorZ.ts | 68 - ts/structs/Result_PayeeDecodeErrorZ.ts | 68 - ts/structs/Result_PayeePubKeyErrorZ.ts | 65 - ts/structs/Result_PaymentIdPaymentErrorZ.ts | 65 - .../Result_PaymentIdPaymentSendFailureZ.ts | 65 - ts/structs/Result_PaymentPreimageAPIErrorZ.ts | 65 - ts/structs/Result_PaymentSecretAPIErrorZ.ts | 65 - ts/structs/Result_PaymentSecretNoneZ.ts | 60 - ts/structs/Result_PingDecodeErrorZ.ts | 68 - ts/structs/Result_PongDecodeErrorZ.ts | 68 - .../Result_PositiveTimestampCreationErrorZ.ts | 65 - .../Result_PrivateRouteCreationErrorZ.ts | 65 - ts/structs/Result_PublicKeyErrorZ.ts | 62 - .../Result_QueryChannelRangeDecodeErrorZ.ts | 68 - ...Result_QueryShortChannelIdsDecodeErrorZ.ts | 68 - .../Result_RecoverableSignatureNoneZ.ts | 60 - .../Result_ReplyChannelRangeDecodeErrorZ.ts | 68 - ...ult_ReplyShortChannelIdsEndDecodeErrorZ.ts | 68 - ts/structs/Result_RevokeAndACKDecodeErrorZ.ts | 68 - ts/structs/Result_RouteDecodeErrorZ.ts | 68 - ts/structs/Result_RouteHintDecodeErrorZ.ts | 68 - ts/structs/Result_RouteHintHopDecodeErrorZ.ts | 68 - ts/structs/Result_RouteHopDecodeErrorZ.ts | 68 - ts/structs/Result_RouteLightningErrorZ.ts | 68 - .../Result_RouteParametersDecodeErrorZ.ts | 68 - ts/structs/Result_RoutingFeesDecodeErrorZ.ts | 68 - ts/structs/Result_ScorerDecodeErrorZ.ts | 66 - .../Result_ScoringParametersDecodeErrorZ.ts | 57 - ts/structs/Result_SecretKeyErrorZ.ts | 51 - ts/structs/Result_ShutdownDecodeErrorZ.ts | 68 - .../Result_ShutdownScriptDecodeErrorZ.ts | 68 - ...lt_ShutdownScriptInvalidShutdownScriptZ.ts | 68 - ts/structs/Result_SiPrefixNoneZ.ts | 60 - ts/structs/Result_SignDecodeErrorZ.ts | 69 - ts/structs/Result_SignatureNoneZ.ts | 60 - ts/structs/Result_SignedRawInvoiceNoneZ.ts | 63 - ...t_SpendableOutputDescriptorDecodeErrorZ.ts | 68 - ...aticPaymentOutputDescriptorDecodeErrorZ.ts | 68 - ts/structs/Result_StringErrorZ.ts | 51 - ts/structs/Result_TransactionNoneZ.ts | 60 - .../Result_TrustedClosingTransactionNoneZ.ts | 61 - ...esult_TrustedCommitmentTransactionNoneZ.ts | 61 - .../Result_TxCreationKeysDecodeErrorZ.ts | 68 - ts/structs/Result_TxCreationKeysErrorZ.ts | 65 - ts/structs/Result_TxOutAccessErrorZ.ts | 64 - ...UnsignedChannelAnnouncementDecodeErrorZ.ts | 68 - ...esult_UnsignedChannelUpdateDecodeErrorZ.ts | 68 - ...lt_UnsignedNodeAnnouncementDecodeErrorZ.ts | 68 - .../Result_UpdateAddHTLCDecodeErrorZ.ts | 68 - .../Result_UpdateFailHTLCDecodeErrorZ.ts | 68 - ...ult_UpdateFailMalformedHTLCDecodeErrorZ.ts | 68 - ts/structs/Result_UpdateFeeDecodeErrorZ.ts | 68 - .../Result_UpdateFulfillHTLCDecodeErrorZ.ts | 68 - ts/structs/Result__u832APIErrorZ.ts | 65 - ts/structs/Result_boolLightningErrorZ.ts | 65 - ts/structs/Result_boolPeerHandleErrorZ.ts | 65 - ts/structs/RetryAttempts.ts | 60 - ts/structs/RevokeAndACK.ts | 78 - ts/structs/Route.ts | 104 - ts/structs/RouteHint.ts | 78 - ts/structs/RouteHintHop.ts | 122 - ts/structs/RouteHop.ts | 120 - ts/structs/RouteParameters.ts | 80 - ts/structs/Router.ts | 74 - ts/structs/RoutingFees.ts | 80 - ts/structs/RoutingMessageHandler.ts | 203 - ts/structs/Score.ts | 108 - ts/structs/Scorer.ts | 53 - ts/structs/ScoringParameters.ts | 91 - ts/structs/Sha256.ts | 44 - ts/structs/Shutdown.ts | 69 - ts/structs/ShutdownScript.ts | 80 - ts/structs/Sign.ts | 72 - ts/structs/SignOrCreationError.ts | 71 - ts/structs/SignedRawInvoice.ts | 87 - ts/structs/SocketDescriptor.ts | 99 - ts/structs/SpendableOutputDescriptor.ts | 104 - ts/structs/StaticPaymentOutputDescriptor.ts | 84 - ...AnnouncementChannelUpdateChannelUpdateZ.ts | 61 - ...eTuple_RawInvoice_u832InvoiceSignatureZ.ts | 59 - ts/structs/TrustedClosingTransaction.ts | 36 - ts/structs/TrustedCommitmentTransaction.ts | 52 - .../TwoTuple_BlockHashChannelManagerZ.ts | 47 - .../TwoTuple_BlockHashChannelMonitorZ.ts | 52 - ts/structs/TwoTuple_OutPointScriptZ.ts | 52 - ts/structs/TwoTuple_PaymentHashPaymentIdZ.ts | 50 - .../TwoTuple_PaymentHashPaymentSecretZ.ts | 50 - ts/structs/TwoTuple_PublicKeyTypeZ.ts | 53 - .../TwoTuple_SignatureCVec_SignatureZZ.ts | 50 - .../TwoTuple_TxidCVec_C2Tuple_u32ScriptZZZ.ts | 57 - .../TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ.ts | 57 - ts/structs/TwoTuple_u32ScriptZ.ts | 50 - ts/structs/TwoTuple_u32TxOutZ.ts | 51 - ts/structs/TwoTuple_usizeTransactionZ.ts | 50 - ts/structs/TxCreationKeys.ts | 110 - ts/structs/TxOut.ts | 28 - ts/structs/Type.ts | 93 - ts/structs/UnsignedChannelAnnouncement.ts | 109 - ts/structs/UnsignedChannelUpdate.ts | 116 - ts/structs/UnsignedNodeAnnouncement.ts | 95 - ts/structs/UpdateAddHTLC.ts | 89 - ts/structs/UpdateFailHTLC.ts | 62 - ts/structs/UpdateFailMalformedHTLC.ts | 71 - ts/structs/UpdateFee.ts | 69 - ts/structs/UpdateFulfillHTLC.ts | 78 - ts/structs/UserConfig.ts | 98 - ts/structs/UtilMethods.ts | 174 - ts/structs/Watch.ts | 101 - ts/structs/WatchedOutput.ts | 74 - ts/version.mts | 0 339 files changed, 57706 insertions(+), 89106 deletions(-) rename ts/{bindings.ts => bindings.mts} (71%) create mode 100644 ts/enums/AccessError.mts delete mode 100644 ts/enums/AccessError.ts create mode 100644 ts/enums/COption_NoneZ.mts delete mode 100644 ts/enums/COption_NoneZ.ts create mode 100644 ts/enums/ChannelMonitorUpdateErr.mts delete mode 100644 ts/enums/ChannelMonitorUpdateErr.ts create mode 100644 ts/enums/ConfirmationTarget.mts delete mode 100644 ts/enums/ConfirmationTarget.ts delete mode 100644 ts/enums/CreationError.ts delete mode 100644 ts/enums/Currency.ts delete mode 100644 ts/enums/IOError.ts create mode 100644 ts/enums/Level.mts delete mode 100644 ts/enums/Level.ts create mode 100644 ts/enums/Network.mts delete mode 100644 ts/enums/Network.ts create mode 100644 ts/enums/Secp256k1Error.mts delete mode 100644 ts/enums/Secp256k1Error.ts delete mode 100644 ts/enums/SemanticError.ts delete mode 100644 ts/enums/SiPrefix.ts delete mode 100644 ts/structs/APIError.ts delete mode 100644 ts/structs/AcceptChannel.ts delete mode 100644 ts/structs/Access.ts delete mode 100644 ts/structs/AnnouncementSignatures.ts delete mode 100644 ts/structs/BackgroundProcessor.ts delete mode 100644 ts/structs/Balance.ts delete mode 100644 ts/structs/BaseSign.ts delete mode 100644 ts/structs/BestBlock.ts delete mode 100644 ts/structs/BroadcasterInterface.ts delete mode 100644 ts/structs/BuiltCommitmentTransaction.ts delete mode 100644 ts/structs/ChainMonitor.ts delete mode 100644 ts/structs/ChainParameters.ts delete mode 100644 ts/structs/ChannelAnnouncement.ts delete mode 100644 ts/structs/ChannelConfig.ts delete mode 100644 ts/structs/ChannelCounterparty.ts delete mode 100644 ts/structs/ChannelDetails.ts delete mode 100644 ts/structs/ChannelFeatures.ts delete mode 100644 ts/structs/ChannelHandshakeConfig.ts delete mode 100644 ts/structs/ChannelHandshakeLimits.ts delete mode 100644 ts/structs/ChannelInfo.ts delete mode 100644 ts/structs/ChannelManager.ts delete mode 100644 ts/structs/ChannelManagerPersister.ts delete mode 100644 ts/structs/ChannelManagerReadArgs.ts delete mode 100644 ts/structs/ChannelMessageHandler.ts delete mode 100644 ts/structs/ChannelMonitor.ts delete mode 100644 ts/structs/ChannelMonitorUpdate.ts delete mode 100644 ts/structs/ChannelPublicKeys.ts delete mode 100644 ts/structs/ChannelReestablish.ts delete mode 100644 ts/structs/ChannelTransactionParameters.ts delete mode 100644 ts/structs/ChannelTypeFeatures.ts delete mode 100644 ts/structs/ChannelUpdate.ts delete mode 100644 ts/structs/ClosingSigned.ts delete mode 100644 ts/structs/ClosingSignedFeeRange.ts delete mode 100644 ts/structs/ClosingTransaction.ts delete mode 100644 ts/structs/ClosureReason.ts delete mode 100644 ts/structs/CommitmentSigned.ts delete mode 100644 ts/structs/CommitmentTransaction.ts delete mode 100644 ts/structs/CommitmentUpdate.ts delete mode 100644 ts/structs/CommonBase.ts delete mode 100644 ts/structs/Confirm.ts delete mode 100644 ts/structs/CounterpartyChannelTransactionParameters.ts delete mode 100644 ts/structs/CounterpartyForwardingInfo.ts delete mode 100644 ts/structs/CustomMessageHandler.ts delete mode 100644 ts/structs/CustomMessageReader.ts delete mode 100644 ts/structs/DataLossProtect.ts delete mode 100644 ts/structs/DecodeError.ts delete mode 100644 ts/structs/DefaultRouter.ts delete mode 100644 ts/structs/DelayedPaymentOutputDescriptor.ts delete mode 100644 ts/structs/Description.ts delete mode 100644 ts/structs/DirectedChannelTransactionParameters.ts delete mode 100644 ts/structs/DirectionalChannelInfo.ts delete mode 100644 ts/structs/ErrorAction.ts delete mode 100644 ts/structs/ErrorMessage.ts delete mode 100644 ts/structs/ErroringMessageHandler.ts delete mode 100644 ts/structs/Event.ts delete mode 100644 ts/structs/EventHandler.ts delete mode 100644 ts/structs/EventsProvider.ts delete mode 100644 ts/structs/ExpiryTime.ts delete mode 100644 ts/structs/Fallback.ts delete mode 100644 ts/structs/FeeEstimator.ts delete mode 100644 ts/structs/FilesystemPersister.ts delete mode 100644 ts/structs/Filter.ts delete mode 100644 ts/structs/FundingCreated.ts delete mode 100644 ts/structs/FundingLocked.ts delete mode 100644 ts/structs/FundingSigned.ts delete mode 100644 ts/structs/GossipTimestampFilter.ts delete mode 100644 ts/structs/HTLCOutputInCommitment.ts delete mode 100644 ts/structs/HTLCUpdate.ts delete mode 100644 ts/structs/HolderCommitmentTransaction.ts delete mode 100644 ts/structs/IgnoringMessageHandler.ts delete mode 100644 ts/structs/InMemorySigner.ts delete mode 100644 ts/structs/Init.ts delete mode 100644 ts/structs/InitFeatures.ts delete mode 100644 ts/structs/InvalidShutdownScript.ts delete mode 100644 ts/structs/Invoice.ts delete mode 100644 ts/structs/InvoiceFeatures.ts delete mode 100644 ts/structs/InvoicePayer.ts delete mode 100644 ts/structs/InvoiceSignature.ts delete mode 100644 ts/structs/KeysInterface.ts delete mode 100644 ts/structs/KeysManager.ts delete mode 100644 ts/structs/LightningError.ts delete mode 100644 ts/structs/Listen.ts delete mode 100644 ts/structs/LockableScore.ts delete mode 100644 ts/structs/LockedChannelMonitor.ts delete mode 100644 ts/structs/Logger.ts delete mode 100644 ts/structs/MessageHandler.ts delete mode 100644 ts/structs/MessageSendEvent.ts delete mode 100644 ts/structs/MessageSendEventsProvider.ts delete mode 100644 ts/structs/MinFinalCltvExpiry.ts delete mode 100644 ts/structs/MonitorEvent.ts delete mode 100644 ts/structs/MonitorUpdateId.ts delete mode 100644 ts/structs/MultiThreadedLockableScore.ts delete mode 100644 ts/structs/NetAddress.ts delete mode 100644 ts/structs/NetGraphMsgHandler.ts delete mode 100644 ts/structs/NetworkGraph.ts delete mode 100644 ts/structs/NetworkUpdate.ts delete mode 100644 ts/structs/NodeAnnouncement.ts delete mode 100644 ts/structs/NodeAnnouncementInfo.ts delete mode 100644 ts/structs/NodeFeatures.ts delete mode 100644 ts/structs/NodeId.ts delete mode 100644 ts/structs/NodeInfo.ts delete mode 100644 ts/structs/OpenChannel.ts delete mode 100644 ts/structs/Option_AccessZ.ts delete mode 100644 ts/structs/Option_C2Tuple_usizeTransactionZZ.ts delete mode 100644 ts/structs/Option_CVec_NetAddressZZ.ts delete mode 100644 ts/structs/Option_ClosureReasonZ.ts delete mode 100644 ts/structs/Option_EventZ.ts delete mode 100644 ts/structs/Option_FilterZ.ts delete mode 100644 ts/structs/Option_MonitorEventZ.ts delete mode 100644 ts/structs/Option_NetworkUpdateZ.ts delete mode 100644 ts/structs/Option_TypeZ.ts delete mode 100644 ts/structs/Option_u16Z.ts delete mode 100644 ts/structs/Option_u32Z.ts delete mode 100644 ts/structs/Option_u64Z.ts delete mode 100644 ts/structs/OutPoint.ts delete mode 100644 ts/structs/Payee.ts delete mode 100644 ts/structs/PayeePubKey.ts delete mode 100644 ts/structs/Payer.ts delete mode 100644 ts/structs/PaymentError.ts delete mode 100644 ts/structs/PaymentPurpose.ts delete mode 100644 ts/structs/PaymentSendFailure.ts delete mode 100644 ts/structs/PeerHandleError.ts delete mode 100644 ts/structs/PeerManager.ts delete mode 100644 ts/structs/Persist.ts delete mode 100644 ts/structs/Ping.ts delete mode 100644 ts/structs/Pong.ts delete mode 100644 ts/structs/PositiveTimestamp.ts delete mode 100644 ts/structs/PrivateRoute.ts delete mode 100644 ts/structs/QueryChannelRange.ts delete mode 100644 ts/structs/QueryShortChannelIds.ts delete mode 100644 ts/structs/RawDataPart.ts delete mode 100644 ts/structs/RawInvoice.ts delete mode 100644 ts/structs/ReadOnlyNetworkGraph.ts delete mode 100644 ts/structs/Record.ts delete mode 100644 ts/structs/ReplyChannelRange.ts delete mode 100644 ts/structs/ReplyShortChannelIdsEnd.ts delete mode 100644 ts/structs/Result_AcceptChannelDecodeErrorZ.ts delete mode 100644 ts/structs/Result_AnnouncementSignaturesDecodeErrorZ.ts delete mode 100644 ts/structs/Result_BuiltCommitmentTransactionDecodeErrorZ.ts delete mode 100644 ts/structs/Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ.ts delete mode 100644 ts/structs/Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ.ts delete mode 100644 ts/structs/Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ.ts delete mode 100644 ts/structs/Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ.ts delete mode 100644 ts/structs/Result_C2Tuple_PaymentHashPaymentSecretZNoneZ.ts delete mode 100644 ts/structs/Result_C2Tuple_SignatureCVec_SignatureZZNoneZ.ts delete mode 100644 ts/structs/Result_COption_ClosureReasonZDecodeErrorZ.ts delete mode 100644 ts/structs/Result_COption_EventZDecodeErrorZ.ts delete mode 100644 ts/structs/Result_COption_MonitorEventZDecodeErrorZ.ts delete mode 100644 ts/structs/Result_COption_NetworkUpdateZDecodeErrorZ.ts delete mode 100644 ts/structs/Result_COption_TypeZDecodeErrorZ.ts delete mode 100644 ts/structs/Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ.ts delete mode 100644 ts/structs/Result_CVec_CVec_u8ZZNoneZ.ts delete mode 100644 ts/structs/Result_CVec_SignatureZNoneZ.ts delete mode 100644 ts/structs/Result_CVec_u8ZPeerHandleErrorZ.ts delete mode 100644 ts/structs/Result_ChannelAnnouncementDecodeErrorZ.ts delete mode 100644 ts/structs/Result_ChannelConfigDecodeErrorZ.ts delete mode 100644 ts/structs/Result_ChannelFeaturesDecodeErrorZ.ts delete mode 100644 ts/structs/Result_ChannelInfoDecodeErrorZ.ts delete mode 100644 ts/structs/Result_ChannelMonitorUpdateDecodeErrorZ.ts delete mode 100644 ts/structs/Result_ChannelPublicKeysDecodeErrorZ.ts delete mode 100644 ts/structs/Result_ChannelReestablishDecodeErrorZ.ts delete mode 100644 ts/structs/Result_ChannelTransactionParametersDecodeErrorZ.ts delete mode 100644 ts/structs/Result_ChannelTypeFeaturesDecodeErrorZ.ts delete mode 100644 ts/structs/Result_ChannelUpdateDecodeErrorZ.ts delete mode 100644 ts/structs/Result_ClosingSignedDecodeErrorZ.ts delete mode 100644 ts/structs/Result_ClosingSignedFeeRangeDecodeErrorZ.ts delete mode 100644 ts/structs/Result_CommitmentSignedDecodeErrorZ.ts delete mode 100644 ts/structs/Result_CommitmentTransactionDecodeErrorZ.ts delete mode 100644 ts/structs/Result_CounterpartyChannelTransactionParametersDecodeErrorZ.ts delete mode 100644 ts/structs/Result_DelayedPaymentOutputDescriptorDecodeErrorZ.ts delete mode 100644 ts/structs/Result_DescriptionCreationErrorZ.ts delete mode 100644 ts/structs/Result_DirectionalChannelInfoDecodeErrorZ.ts delete mode 100644 ts/structs/Result_ErrorMessageDecodeErrorZ.ts delete mode 100644 ts/structs/Result_ExpiryTimeCreationErrorZ.ts delete mode 100644 ts/structs/Result_FundingCreatedDecodeErrorZ.ts delete mode 100644 ts/structs/Result_FundingLockedDecodeErrorZ.ts delete mode 100644 ts/structs/Result_FundingSignedDecodeErrorZ.ts delete mode 100644 ts/structs/Result_GossipTimestampFilterDecodeErrorZ.ts delete mode 100644 ts/structs/Result_HTLCOutputInCommitmentDecodeErrorZ.ts delete mode 100644 ts/structs/Result_HTLCUpdateDecodeErrorZ.ts delete mode 100644 ts/structs/Result_HolderCommitmentTransactionDecodeErrorZ.ts delete mode 100644 ts/structs/Result_InMemorySignerDecodeErrorZ.ts delete mode 100644 ts/structs/Result_InitDecodeErrorZ.ts delete mode 100644 ts/structs/Result_InitFeaturesDecodeErrorZ.ts delete mode 100644 ts/structs/Result_InvoiceFeaturesDecodeErrorZ.ts delete mode 100644 ts/structs/Result_InvoiceNoneZ.ts delete mode 100644 ts/structs/Result_InvoiceSemanticErrorZ.ts delete mode 100644 ts/structs/Result_InvoiceSignOrCreationErrorZ.ts delete mode 100644 ts/structs/Result_LockedChannelMonitorNoneZ.ts delete mode 100644 ts/structs/Result_NetAddressDecodeErrorZ.ts delete mode 100644 ts/structs/Result_NetworkGraphDecodeErrorZ.ts delete mode 100644 ts/structs/Result_NodeAnnouncementDecodeErrorZ.ts delete mode 100644 ts/structs/Result_NodeAnnouncementInfoDecodeErrorZ.ts delete mode 100644 ts/structs/Result_NodeFeaturesDecodeErrorZ.ts delete mode 100644 ts/structs/Result_NodeIdDecodeErrorZ.ts delete mode 100644 ts/structs/Result_NodeInfoDecodeErrorZ.ts delete mode 100644 ts/structs/Result_NoneAPIErrorZ.ts delete mode 100644 ts/structs/Result_NoneChannelMonitorUpdateErrZ.ts delete mode 100644 ts/structs/Result_NoneErrorZ.ts delete mode 100644 ts/structs/Result_NoneLightningErrorZ.ts delete mode 100644 ts/structs/Result_NoneNoneZ.ts delete mode 100644 ts/structs/Result_NonePaymentSendFailureZ.ts delete mode 100644 ts/structs/Result_NonePeerHandleErrorZ.ts delete mode 100644 ts/structs/Result_NoneSemanticErrorZ.ts delete mode 100644 ts/structs/Result_OpenChannelDecodeErrorZ.ts delete mode 100644 ts/structs/Result_OutPointDecodeErrorZ.ts delete mode 100644 ts/structs/Result_PayeeDecodeErrorZ.ts delete mode 100644 ts/structs/Result_PayeePubKeyErrorZ.ts delete mode 100644 ts/structs/Result_PaymentIdPaymentErrorZ.ts delete mode 100644 ts/structs/Result_PaymentIdPaymentSendFailureZ.ts delete mode 100644 ts/structs/Result_PaymentPreimageAPIErrorZ.ts delete mode 100644 ts/structs/Result_PaymentSecretAPIErrorZ.ts delete mode 100644 ts/structs/Result_PaymentSecretNoneZ.ts delete mode 100644 ts/structs/Result_PingDecodeErrorZ.ts delete mode 100644 ts/structs/Result_PongDecodeErrorZ.ts delete mode 100644 ts/structs/Result_PositiveTimestampCreationErrorZ.ts delete mode 100644 ts/structs/Result_PrivateRouteCreationErrorZ.ts delete mode 100644 ts/structs/Result_PublicKeyErrorZ.ts delete mode 100644 ts/structs/Result_QueryChannelRangeDecodeErrorZ.ts delete mode 100644 ts/structs/Result_QueryShortChannelIdsDecodeErrorZ.ts delete mode 100644 ts/structs/Result_RecoverableSignatureNoneZ.ts delete mode 100644 ts/structs/Result_ReplyChannelRangeDecodeErrorZ.ts delete mode 100644 ts/structs/Result_ReplyShortChannelIdsEndDecodeErrorZ.ts delete mode 100644 ts/structs/Result_RevokeAndACKDecodeErrorZ.ts delete mode 100644 ts/structs/Result_RouteDecodeErrorZ.ts delete mode 100644 ts/structs/Result_RouteHintDecodeErrorZ.ts delete mode 100644 ts/structs/Result_RouteHintHopDecodeErrorZ.ts delete mode 100644 ts/structs/Result_RouteHopDecodeErrorZ.ts delete mode 100644 ts/structs/Result_RouteLightningErrorZ.ts delete mode 100644 ts/structs/Result_RouteParametersDecodeErrorZ.ts delete mode 100644 ts/structs/Result_RoutingFeesDecodeErrorZ.ts delete mode 100644 ts/structs/Result_ScorerDecodeErrorZ.ts delete mode 100644 ts/structs/Result_ScoringParametersDecodeErrorZ.ts delete mode 100644 ts/structs/Result_SecretKeyErrorZ.ts delete mode 100644 ts/structs/Result_ShutdownDecodeErrorZ.ts delete mode 100644 ts/structs/Result_ShutdownScriptDecodeErrorZ.ts delete mode 100644 ts/structs/Result_ShutdownScriptInvalidShutdownScriptZ.ts delete mode 100644 ts/structs/Result_SiPrefixNoneZ.ts delete mode 100644 ts/structs/Result_SignDecodeErrorZ.ts delete mode 100644 ts/structs/Result_SignatureNoneZ.ts delete mode 100644 ts/structs/Result_SignedRawInvoiceNoneZ.ts delete mode 100644 ts/structs/Result_SpendableOutputDescriptorDecodeErrorZ.ts delete mode 100644 ts/structs/Result_StaticPaymentOutputDescriptorDecodeErrorZ.ts delete mode 100644 ts/structs/Result_StringErrorZ.ts delete mode 100644 ts/structs/Result_TransactionNoneZ.ts delete mode 100644 ts/structs/Result_TrustedClosingTransactionNoneZ.ts delete mode 100644 ts/structs/Result_TrustedCommitmentTransactionNoneZ.ts delete mode 100644 ts/structs/Result_TxCreationKeysDecodeErrorZ.ts delete mode 100644 ts/structs/Result_TxCreationKeysErrorZ.ts delete mode 100644 ts/structs/Result_TxOutAccessErrorZ.ts delete mode 100644 ts/structs/Result_UnsignedChannelAnnouncementDecodeErrorZ.ts delete mode 100644 ts/structs/Result_UnsignedChannelUpdateDecodeErrorZ.ts delete mode 100644 ts/structs/Result_UnsignedNodeAnnouncementDecodeErrorZ.ts delete mode 100644 ts/structs/Result_UpdateAddHTLCDecodeErrorZ.ts delete mode 100644 ts/structs/Result_UpdateFailHTLCDecodeErrorZ.ts delete mode 100644 ts/structs/Result_UpdateFailMalformedHTLCDecodeErrorZ.ts delete mode 100644 ts/structs/Result_UpdateFeeDecodeErrorZ.ts delete mode 100644 ts/structs/Result_UpdateFulfillHTLCDecodeErrorZ.ts delete mode 100644 ts/structs/Result__u832APIErrorZ.ts delete mode 100644 ts/structs/Result_boolLightningErrorZ.ts delete mode 100644 ts/structs/Result_boolPeerHandleErrorZ.ts delete mode 100644 ts/structs/RetryAttempts.ts delete mode 100644 ts/structs/RevokeAndACK.ts delete mode 100644 ts/structs/Route.ts delete mode 100644 ts/structs/RouteHint.ts delete mode 100644 ts/structs/RouteHintHop.ts delete mode 100644 ts/structs/RouteHop.ts delete mode 100644 ts/structs/RouteParameters.ts delete mode 100644 ts/structs/Router.ts delete mode 100644 ts/structs/RoutingFees.ts delete mode 100644 ts/structs/RoutingMessageHandler.ts delete mode 100644 ts/structs/Score.ts delete mode 100644 ts/structs/Scorer.ts delete mode 100644 ts/structs/ScoringParameters.ts delete mode 100644 ts/structs/Sha256.ts delete mode 100644 ts/structs/Shutdown.ts delete mode 100644 ts/structs/ShutdownScript.ts delete mode 100644 ts/structs/Sign.ts delete mode 100644 ts/structs/SignOrCreationError.ts delete mode 100644 ts/structs/SignedRawInvoice.ts delete mode 100644 ts/structs/SocketDescriptor.ts delete mode 100644 ts/structs/SpendableOutputDescriptor.ts delete mode 100644 ts/structs/StaticPaymentOutputDescriptor.ts delete mode 100644 ts/structs/ThreeTuple_ChannelAnnouncementChannelUpdateChannelUpdateZ.ts delete mode 100644 ts/structs/ThreeTuple_RawInvoice_u832InvoiceSignatureZ.ts delete mode 100644 ts/structs/TrustedClosingTransaction.ts delete mode 100644 ts/structs/TrustedCommitmentTransaction.ts delete mode 100644 ts/structs/TwoTuple_BlockHashChannelManagerZ.ts delete mode 100644 ts/structs/TwoTuple_BlockHashChannelMonitorZ.ts delete mode 100644 ts/structs/TwoTuple_OutPointScriptZ.ts delete mode 100644 ts/structs/TwoTuple_PaymentHashPaymentIdZ.ts delete mode 100644 ts/structs/TwoTuple_PaymentHashPaymentSecretZ.ts delete mode 100644 ts/structs/TwoTuple_PublicKeyTypeZ.ts delete mode 100644 ts/structs/TwoTuple_SignatureCVec_SignatureZZ.ts delete mode 100644 ts/structs/TwoTuple_TxidCVec_C2Tuple_u32ScriptZZZ.ts delete mode 100644 ts/structs/TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ.ts delete mode 100644 ts/structs/TwoTuple_u32ScriptZ.ts delete mode 100644 ts/structs/TwoTuple_u32TxOutZ.ts delete mode 100644 ts/structs/TwoTuple_usizeTransactionZ.ts delete mode 100644 ts/structs/TxCreationKeys.ts delete mode 100644 ts/structs/TxOut.ts delete mode 100644 ts/structs/Type.ts delete mode 100644 ts/structs/UnsignedChannelAnnouncement.ts delete mode 100644 ts/structs/UnsignedChannelUpdate.ts delete mode 100644 ts/structs/UnsignedNodeAnnouncement.ts delete mode 100644 ts/structs/UpdateAddHTLC.ts delete mode 100644 ts/structs/UpdateFailHTLC.ts delete mode 100644 ts/structs/UpdateFailMalformedHTLC.ts delete mode 100644 ts/structs/UpdateFee.ts delete mode 100644 ts/structs/UpdateFulfillHTLC.ts delete mode 100644 ts/structs/UserConfig.ts delete mode 100644 ts/structs/UtilMethods.ts delete mode 100644 ts/structs/Watch.ts delete mode 100644 ts/structs/WatchedOutput.ts create mode 100644 ts/version.mts diff --git a/ts/bindings.c b/ts/bindings.c index 0c274a48..4bbbfc23 100644 --- a/ts/bindings.c +++ b/ts/bindings.c @@ -31,32 +31,37 @@ _Static_assert(offsetof(LDKCVec_u8Z, datalen) == offsetof(LDKu8slice, datalen), _Static_assert(sizeof(void*) == 4, "Pointers mut be 32 bits"); -typedef uint32_t int64_tArray; -typedef uint32_t int8_tArray; -typedef uint32_t uint32_tArray; -typedef uint32_t ptrArray; -typedef uint32_t jstring; - -static inline uint32_t init_arr(size_t arr_len, size_t elem_size, const char *type_desc) { - uint32_t *elems = (uint32_t*)MALLOC(arr_len * elem_size + 4, type_desc); - elems[0] = arr_len; - return (uint32_t)elems; -} +#define DECL_ARR_TYPE(ty, name) \ + struct name##array { \ + uint32_t arr_len; \ + ty elems[]; \ + }; \ + typedef struct name##array * name##Array; \ + static inline name##Array init_##name##Array(size_t arr_len) { \ + name##Array arr = (name##Array)MALLOC(arr_len * sizeof(ty) + sizeof(uint32_t), "##name array init"); \ + arr->arr_len = arr_len; \ + return arr; \ + } + +DECL_ARR_TYPE(int64_t, int64_t); +DECL_ARR_TYPE(int8_t, int8_t); +DECL_ARR_TYPE(uint32_t, uint32_t); +DECL_ARR_TYPE(void*, ptr); +DECL_ARR_TYPE(char, char); +typedef charArray jstring; static inline jstring str_ref_to_ts(const char* chars, size_t len) { - char* err_buf = MALLOC(len + 4, "str conv buf"); - *((uint32_t*)err_buf) = len; - memcpy(err_buf + 4, chars, len); - return (uint32_t) err_buf; -} -static inline LDKStr str_ref_to_owned_c(jstring str) { - uint32_t *str_len = (uint32_t*)str; - char* newchars = MALLOC(*str_len + 1, "String chars"); - memcpy(newchars, (const char*)(str + 4), *str_len); - newchars[*str_len] = 0; - LDKStr res= { + charArray arr = init_charArray(len); + memcpy(arr->elems, chars, len); + return arr; +} +static inline LDKStr str_ref_to_owned_c(const jstring str) { + char* newchars = MALLOC(str->arr_len + 1, "String chars"); + memcpy(newchars, str->elems, str->arr_len); + newchars[str->arr_len] = 0; + LDKStr res = { .chars = newchars, - .len = *str_len, + .len = str->arr_len, .chars_is_owned = true }; return res; @@ -129,92 +134,6 @@ static inline int32_t LDKConfirmationTarget_to_js(LDKConfirmationTarget val) { default: abort(); } } -static inline LDKCreationError LDKCreationError_from_js(int32_t ord) { - switch (ord) { - case 0: return LDKCreationError_DescriptionTooLong; - case 1: return LDKCreationError_RouteTooLong; - case 2: return LDKCreationError_TimestampOutOfBounds; - case 3: return LDKCreationError_ExpiryTimeOutOfBounds; - case 4: return LDKCreationError_InvalidAmount; - } - abort(); -} -static inline int32_t LDKCreationError_to_js(LDKCreationError val) { - switch (val) { - case LDKCreationError_DescriptionTooLong: return 0; - case LDKCreationError_RouteTooLong: return 1; - case LDKCreationError_TimestampOutOfBounds: return 2; - case LDKCreationError_ExpiryTimeOutOfBounds: return 3; - case LDKCreationError_InvalidAmount: return 4; - default: abort(); - } -} -static inline LDKCurrency LDKCurrency_from_js(int32_t ord) { - switch (ord) { - case 0: return LDKCurrency_Bitcoin; - case 1: return LDKCurrency_BitcoinTestnet; - case 2: return LDKCurrency_Regtest; - case 3: return LDKCurrency_Simnet; - case 4: return LDKCurrency_Signet; - } - abort(); -} -static inline int32_t LDKCurrency_to_js(LDKCurrency val) { - switch (val) { - case LDKCurrency_Bitcoin: return 0; - case LDKCurrency_BitcoinTestnet: return 1; - case LDKCurrency_Regtest: return 2; - case LDKCurrency_Simnet: return 3; - case LDKCurrency_Signet: return 4; - default: abort(); - } -} -static inline LDKIOError LDKIOError_from_js(int32_t ord) { - switch (ord) { - case 0: return LDKIOError_NotFound; - case 1: return LDKIOError_PermissionDenied; - case 2: return LDKIOError_ConnectionRefused; - case 3: return LDKIOError_ConnectionReset; - case 4: return LDKIOError_ConnectionAborted; - case 5: return LDKIOError_NotConnected; - case 6: return LDKIOError_AddrInUse; - case 7: return LDKIOError_AddrNotAvailable; - case 8: return LDKIOError_BrokenPipe; - case 9: return LDKIOError_AlreadyExists; - case 10: return LDKIOError_WouldBlock; - case 11: return LDKIOError_InvalidInput; - case 12: return LDKIOError_InvalidData; - case 13: return LDKIOError_TimedOut; - case 14: return LDKIOError_WriteZero; - case 15: return LDKIOError_Interrupted; - case 16: return LDKIOError_Other; - case 17: return LDKIOError_UnexpectedEof; - } - abort(); -} -static inline int32_t LDKIOError_to_js(LDKIOError val) { - switch (val) { - case LDKIOError_NotFound: return 0; - case LDKIOError_PermissionDenied: return 1; - case LDKIOError_ConnectionRefused: return 2; - case LDKIOError_ConnectionReset: return 3; - case LDKIOError_ConnectionAborted: return 4; - case LDKIOError_NotConnected: return 5; - case LDKIOError_AddrInUse: return 6; - case LDKIOError_AddrNotAvailable: return 7; - case LDKIOError_BrokenPipe: return 8; - case LDKIOError_AlreadyExists: return 9; - case LDKIOError_WouldBlock: return 10; - case LDKIOError_InvalidInput: return 11; - case LDKIOError_InvalidData: return 12; - case LDKIOError_TimedOut: return 13; - case LDKIOError_WriteZero: return 14; - case LDKIOError_Interrupted: return 15; - case LDKIOError_Other: return 16; - case LDKIOError_UnexpectedEof: return 17; - default: abort(); - } -} static inline LDKLevel LDKLevel_from_js(int32_t ord) { switch (ord) { case 0: return LDKLevel_Gossip; @@ -283,54 +202,6 @@ static inline int32_t LDKSecp256k1Error_to_js(LDKSecp256k1Error val) { default: abort(); } } -static inline LDKSemanticError LDKSemanticError_from_js(int32_t ord) { - switch (ord) { - case 0: return LDKSemanticError_NoPaymentHash; - case 1: return LDKSemanticError_MultiplePaymentHashes; - case 2: return LDKSemanticError_NoDescription; - case 3: return LDKSemanticError_MultipleDescriptions; - case 4: return LDKSemanticError_NoPaymentSecret; - case 5: return LDKSemanticError_MultiplePaymentSecrets; - case 6: return LDKSemanticError_InvalidFeatures; - case 7: return LDKSemanticError_InvalidRecoveryId; - case 8: return LDKSemanticError_InvalidSignature; - case 9: return LDKSemanticError_ImpreciseAmount; - } - abort(); -} -static inline int32_t LDKSemanticError_to_js(LDKSemanticError val) { - switch (val) { - case LDKSemanticError_NoPaymentHash: return 0; - case LDKSemanticError_MultiplePaymentHashes: return 1; - case LDKSemanticError_NoDescription: return 2; - case LDKSemanticError_MultipleDescriptions: return 3; - case LDKSemanticError_NoPaymentSecret: return 4; - case LDKSemanticError_MultiplePaymentSecrets: return 5; - case LDKSemanticError_InvalidFeatures: return 6; - case LDKSemanticError_InvalidRecoveryId: return 7; - case LDKSemanticError_InvalidSignature: return 8; - case LDKSemanticError_ImpreciseAmount: return 9; - default: abort(); - } -} -static inline LDKSiPrefix LDKSiPrefix_from_js(int32_t ord) { - switch (ord) { - case 0: return LDKSiPrefix_Milli; - case 1: return LDKSiPrefix_Micro; - case 2: return LDKSiPrefix_Nano; - case 3: return LDKSiPrefix_Pico; - } - abort(); -} -static inline int32_t LDKSiPrefix_to_js(LDKSiPrefix val) { - switch (val) { - case LDKSiPrefix_Milli: return 0; - case LDKSiPrefix_Micro: return 1; - case LDKSiPrefix_Nano: return 2; - case LDKSiPrefix_Pico: return 3; - default: abort(); - } -} static inline LDKCVec_u8Z CVec_u8Z_clone(const LDKCVec_u8Z *orig) { LDKCVec_u8Z ret = { .data = MALLOC(sizeof(int8_t) * orig->datalen, "LDKCVec_u8Z clone bytes"), .datalen = orig->datalen }; memcpy(ret.data, orig->data, sizeof(int8_t) * ret.datalen); @@ -339,8 +210,8 @@ static inline LDKCVec_u8Z CVec_u8Z_clone(const LDKCVec_u8Z *orig) { struct LDKCVec_u8Z TxOut_get_script_pubkey (struct LDKTxOut* thing) { return CVec_u8Z_clone(&thing->script_pubkey);}int8_tArray __attribute__((visibility("default"))) TS_TxOut_get_script_pubkey(uint32_t thing) { LDKTxOut* thing_conv = (LDKTxOut*)(thing & ~1); LDKCVec_u8Z ret_var = TxOut_get_script_pubkey(thing_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } @@ -351,1981 +222,775 @@ uint64_t TxOut_get_value (struct LDKTxOut* thing) { return thing->value;}int64_t return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_LDKCResult_SecretKeyErrorZ_get_ok(uint32_t arg) { - LDKCResult_SecretKeyErrorZ *val = (LDKCResult_SecretKeyErrorZ*)(arg & ~1); - CHECK(val->result_ok); - int8_tArray res_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(res_arr + 4), (*val->contents.result).bytes, 32); - return res_arr; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_SecretKeyErrorZ_get_err(uint32_t arg) { - LDKCResult_SecretKeyErrorZ *val = (LDKCResult_SecretKeyErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKSecp256k1Error_to_js((*val->contents.err)); - return err_conv; -} -int8_tArray __attribute__((visibility("default"))) TS_LDKCResult_PublicKeyErrorZ_get_ok(uint32_t arg) { - LDKCResult_PublicKeyErrorZ *val = (LDKCResult_PublicKeyErrorZ*)(arg & ~1); - CHECK(val->result_ok); - int8_tArray res_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(res_arr + 4), (*val->contents.result).compressed_form, 33); - return res_arr; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PublicKeyErrorZ_get_err(uint32_t arg) { - LDKCResult_PublicKeyErrorZ *val = (LDKCResult_PublicKeyErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKSecp256k1Error_to_js((*val->contents.err)); - return err_conv; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_TxCreationKeysDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_TxCreationKeysDecodeErrorZ *val = (LDKCResult_TxCreationKeysDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKTxCreationKeys res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_TxCreationKeysDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_TxCreationKeysDecodeErrorZ *val = (LDKCResult_TxCreationKeysDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelPublicKeysDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ChannelPublicKeysDecodeErrorZ *val = (LDKCResult_ChannelPublicKeysDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKChannelPublicKeys res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelPublicKeysDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ChannelPublicKeysDecodeErrorZ *val = (LDKCResult_ChannelPublicKeysDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_TxCreationKeysErrorZ_get_ok(uint32_t arg) { - LDKCResult_TxCreationKeysErrorZ *val = (LDKCResult_TxCreationKeysErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKTxCreationKeys res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_TxCreationKeysErrorZ_get_err(uint32_t arg) { - LDKCResult_TxCreationKeysErrorZ *val = (LDKCResult_TxCreationKeysErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKSecp256k1Error_to_js((*val->contents.err)); - return err_conv; +static inline struct LDKChannelConfig CResult_ChannelConfigDecodeErrorZ_get_ok(LDKCResult_ChannelConfigDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ChannelConfig_clone(&*owner->contents.result); } -uint32_t __attribute__((visibility("default"))) TS_LDKCOption_u32Z_ref_from_ptr(uint32_t ptr) { - LDKCOption_u32Z *obj = (LDKCOption_u32Z*)(ptr & ~1); - switch(obj->tag) { - case LDKCOption_u32Z_Some: { - return 0 /* LDKCOption_u32Z - Some */; (void) obj->some; - } - case LDKCOption_u32Z_None: { - return 0 /* LDKCOption_u32Z - None */; - } - default: abort(); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ChannelConfigDecodeErrorZ* owner_conv = (LDKCResult_ChannelConfigDecodeErrorZ*)(owner & ~1); + LDKChannelConfig ret_var = CResult_ChannelConfigDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_HTLCOutputInCommitmentDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_HTLCOutputInCommitmentDecodeErrorZ *val = (LDKCResult_HTLCOutputInCommitmentDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKHTLCOutputInCommitment res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_HTLCOutputInCommitmentDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_HTLCOutputInCommitmentDecodeErrorZ *val = (LDKCResult_HTLCOutputInCommitmentDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ *val = (LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKCounterpartyChannelTransactionParameters res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ *val = (LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelTransactionParametersDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ChannelTransactionParametersDecodeErrorZ *val = (LDKCResult_ChannelTransactionParametersDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKChannelTransactionParameters res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelTransactionParametersDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ChannelTransactionParametersDecodeErrorZ *val = (LDKCResult_ChannelTransactionParametersDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_HolderCommitmentTransactionDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_HolderCommitmentTransactionDecodeErrorZ *val = (LDKCResult_HolderCommitmentTransactionDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKHolderCommitmentTransaction res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_HolderCommitmentTransactionDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_HolderCommitmentTransactionDecodeErrorZ *val = (LDKCResult_HolderCommitmentTransactionDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_BuiltCommitmentTransactionDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_BuiltCommitmentTransactionDecodeErrorZ *val = (LDKCResult_BuiltCommitmentTransactionDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKBuiltCommitmentTransaction res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_BuiltCommitmentTransactionDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_BuiltCommitmentTransactionDecodeErrorZ *val = (LDKCResult_BuiltCommitmentTransactionDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_TrustedClosingTransactionNoneZ_get_ok(uint32_t arg) { - LDKCResult_TrustedClosingTransactionNoneZ *val = (LDKCResult_TrustedClosingTransactionNoneZ*)(arg & ~1); - CHECK(val->result_ok); - LDKTrustedClosingTransaction res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -void __attribute__((visibility("default"))) TS_LDKCResult_TrustedClosingTransactionNoneZ_get_err(uint32_t arg) { - LDKCResult_TrustedClosingTransactionNoneZ *val = (LDKCResult_TrustedClosingTransactionNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_CommitmentTransactionDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_CommitmentTransactionDecodeErrorZ *val = (LDKCResult_CommitmentTransactionDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKCommitmentTransaction res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_CommitmentTransactionDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_CommitmentTransactionDecodeErrorZ *val = (LDKCResult_CommitmentTransactionDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_TrustedCommitmentTransactionNoneZ_get_ok(uint32_t arg) { - LDKCResult_TrustedCommitmentTransactionNoneZ *val = (LDKCResult_TrustedCommitmentTransactionNoneZ*)(arg & ~1); - CHECK(val->result_ok); - LDKTrustedCommitmentTransaction res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -void __attribute__((visibility("default"))) TS_LDKCResult_TrustedCommitmentTransactionNoneZ_get_err(uint32_t arg) { - LDKCResult_TrustedCommitmentTransactionNoneZ *val = (LDKCResult_TrustedCommitmentTransactionNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; -} -ptrArray __attribute__((visibility("default"))) TS_LDKCResult_CVec_SignatureZNoneZ_get_ok(uint32_t arg) { - LDKCResult_CVec_SignatureZNoneZ *val = (LDKCResult_CVec_SignatureZNoneZ*)(arg & ~1); - CHECK(val->result_ok); - LDKCVec_SignatureZ res_var = (*val->contents.result); - ptrArray res_arr = NULL; - res_arr = init_arr(res_var.datalen, sizeof(uint32_t), "Native ptrArray Bytes"); - int8_tArray *res_arr_ptr = (int8_tArray*)(res_arr + 4); - for (size_t m = 0; m < res_var.datalen; m++) { - int8_tArray res_conv_12_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(res_conv_12_arr + 4), res_var.data[m].compact_form, 64); - res_arr_ptr[m] = res_conv_12_arr; - } - - return res_arr; -} -void __attribute__((visibility("default"))) TS_LDKCResult_CVec_SignatureZNoneZ_get_err(uint32_t arg) { - LDKCResult_CVec_SignatureZNoneZ *val = (LDKCResult_CVec_SignatureZNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ShutdownScriptDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ShutdownScriptDecodeErrorZ *val = (LDKCResult_ShutdownScriptDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKShutdownScript res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ShutdownScriptDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ShutdownScriptDecodeErrorZ *val = (LDKCResult_ShutdownScriptDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ShutdownScriptInvalidShutdownScriptZ_get_ok(uint32_t arg) { - LDKCResult_ShutdownScriptInvalidShutdownScriptZ *val = (LDKCResult_ShutdownScriptInvalidShutdownScriptZ*)(arg & ~1); - CHECK(val->result_ok); - LDKShutdownScript res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ShutdownScriptInvalidShutdownScriptZ_get_err(uint32_t arg) { - LDKCResult_ShutdownScriptInvalidShutdownScriptZ *val = (LDKCResult_ShutdownScriptInvalidShutdownScriptZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKInvalidShutdownScript err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -void __attribute__((visibility("default"))) TS_LDKCResult_NoneErrorZ_get_ok(uint32_t arg) { - LDKCResult_NoneErrorZ *val = (LDKCResult_NoneErrorZ*)(arg & ~1); - CHECK(val->result_ok); - return *val->contents.result; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NoneErrorZ_get_err(uint32_t arg) { - LDKCResult_NoneErrorZ *val = (LDKCResult_NoneErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKIOError_to_js((*val->contents.err)); - return err_conv; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RouteHopDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_RouteHopDecodeErrorZ *val = (LDKCResult_RouteHopDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKRouteHop res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RouteHopDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_RouteHopDecodeErrorZ *val = (LDKCResult_RouteHopDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; + +static inline struct LDKDecodeError CResult_ChannelConfigDecodeErrorZ_get_err(LDKCResult_ChannelConfigDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -static inline LDKCVec_RouteHopZ CVec_RouteHopZ_clone(const LDKCVec_RouteHopZ *orig) { - LDKCVec_RouteHopZ ret = { .data = MALLOC(sizeof(LDKRouteHop) * orig->datalen, "LDKCVec_RouteHopZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = RouteHop_clone(&orig->data[i]); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ChannelConfigDecodeErrorZ* owner_conv = (LDKCResult_ChannelConfigDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ChannelConfigDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; + return ret_ref; } -static inline LDKCVec_CVec_RouteHopZZ CVec_CVec_RouteHopZZ_clone(const LDKCVec_CVec_RouteHopZZ *orig) { - LDKCVec_CVec_RouteHopZZ ret = { .data = MALLOC(sizeof(LDKCVec_RouteHopZ) * orig->datalen, "LDKCVec_CVec_RouteHopZZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = CVec_RouteHopZ_clone(&orig->data[i]); + +static inline struct LDKOutPoint CResult_OutPointDecodeErrorZ_get_ok(LDKCResult_OutPointDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return OutPoint_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_OutPointDecodeErrorZ* owner_conv = (LDKCResult_OutPointDecodeErrorZ*)(owner & ~1); + LDKOutPoint ret_var = CResult_OutPointDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RouteDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_RouteDecodeErrorZ *val = (LDKCResult_RouteDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKRoute res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RouteDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_RouteDecodeErrorZ *val = (LDKCResult_RouteDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RouteParametersDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_RouteParametersDecodeErrorZ *val = (LDKCResult_RouteParametersDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKRouteParameters res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RouteParametersDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_RouteParametersDecodeErrorZ *val = (LDKCResult_RouteParametersDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; + +static inline struct LDKDecodeError CResult_OutPointDecodeErrorZ_get_err(LDKCResult_OutPointDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -static inline LDKCVec_RouteHintZ CVec_RouteHintZ_clone(const LDKCVec_RouteHintZ *orig) { - LDKCVec_RouteHintZ ret = { .data = MALLOC(sizeof(LDKRouteHint) * orig->datalen, "LDKCVec_RouteHintZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = RouteHint_clone(&orig->data[i]); +uint32_t __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_OutPointDecodeErrorZ* owner_conv = (LDKCResult_OutPointDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_OutPointDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCOption_u64Z_ref_from_ptr(uint32_t ptr) { - LDKCOption_u64Z *obj = (LDKCOption_u64Z*)(ptr & ~1); - switch(obj->tag) { - case LDKCOption_u64Z_Some: { - return 0 /* LDKCOption_u64Z - Some */; (void) obj->some; - } - case LDKCOption_u64Z_None: { - return 0 /* LDKCOption_u64Z - None */; - } - default: abort(); - } + +static inline struct LDKSecretKey CResult_SecretKeyErrorZ_get_ok(LDKCResult_SecretKeyErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PayeeDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_PayeeDecodeErrorZ *val = (LDKCResult_PayeeDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKPayee res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PayeeDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_PayeeDecodeErrorZ *val = (LDKCResult_PayeeDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; +int8_tArray __attribute__((visibility("default"))) TS_CResult_SecretKeyErrorZ_get_ok(uint32_t owner) { + LDKCResult_SecretKeyErrorZ* owner_conv = (LDKCResult_SecretKeyErrorZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, CResult_SecretKeyErrorZ_get_ok(owner_conv).bytes, 32); + return ret_arr; } -static inline LDKCVec_RouteHintHopZ CVec_RouteHintHopZ_clone(const LDKCVec_RouteHintHopZ *orig) { - LDKCVec_RouteHintHopZ ret = { .data = MALLOC(sizeof(LDKRouteHintHop) * orig->datalen, "LDKCVec_RouteHintHopZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = RouteHintHop_clone(&orig->data[i]); + +static inline enum LDKSecp256k1Error CResult_SecretKeyErrorZ_get_err(LDKCResult_SecretKeyErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; +} +uint32_t __attribute__((visibility("default"))) TS_CResult_SecretKeyErrorZ_get_err(uint32_t owner) { + LDKCResult_SecretKeyErrorZ* owner_conv = (LDKCResult_SecretKeyErrorZ*)(owner & ~1); + uint32_t ret_conv = LDKSecp256k1Error_to_js(CResult_SecretKeyErrorZ_get_err(owner_conv)); + return ret_conv; +} + +static inline struct LDKPublicKey CResult_PublicKeyErrorZ_get_ok(LDKCResult_PublicKeyErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; +} +int8_tArray __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_get_ok(uint32_t owner) { + LDKCResult_PublicKeyErrorZ* owner_conv = (LDKCResult_PublicKeyErrorZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, CResult_PublicKeyErrorZ_get_ok(owner_conv).compressed_form, 33); + return ret_arr; +} + +static inline enum LDKSecp256k1Error CResult_PublicKeyErrorZ_get_err(LDKCResult_PublicKeyErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; +} +uint32_t __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_get_err(uint32_t owner) { + LDKCResult_PublicKeyErrorZ* owner_conv = (LDKCResult_PublicKeyErrorZ*)(owner & ~1); + uint32_t ret_conv = LDKSecp256k1Error_to_js(CResult_PublicKeyErrorZ_get_err(owner_conv)); + return ret_conv; +} + +static inline struct LDKTxCreationKeys CResult_TxCreationKeysDecodeErrorZ_get_ok(LDKCResult_TxCreationKeysDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return TxCreationKeys_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_TxCreationKeysDecodeErrorZ* owner_conv = (LDKCResult_TxCreationKeysDecodeErrorZ*)(owner & ~1); + LDKTxCreationKeys ret_var = CResult_TxCreationKeysDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RouteHintDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_RouteHintDecodeErrorZ *val = (LDKCResult_RouteHintDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKRouteHint res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RouteHintDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_RouteHintDecodeErrorZ *val = (LDKCResult_RouteHintDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RouteHintHopDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_RouteHintHopDecodeErrorZ *val = (LDKCResult_RouteHintHopDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKRouteHintHop res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RouteHintHopDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_RouteHintHopDecodeErrorZ *val = (LDKCResult_RouteHintHopDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; + +static inline struct LDKDecodeError CResult_TxCreationKeysDecodeErrorZ_get_err(LDKCResult_TxCreationKeysDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -static inline LDKCVec_ChannelDetailsZ CVec_ChannelDetailsZ_clone(const LDKCVec_ChannelDetailsZ *orig) { - LDKCVec_ChannelDetailsZ ret = { .data = MALLOC(sizeof(LDKChannelDetails) * orig->datalen, "LDKCVec_ChannelDetailsZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = ChannelDetails_clone(&orig->data[i]); +uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_TxCreationKeysDecodeErrorZ* owner_conv = (LDKCResult_TxCreationKeysDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_TxCreationKeysDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RouteLightningErrorZ_get_ok(uint32_t arg) { - LDKCResult_RouteLightningErrorZ *val = (LDKCResult_RouteLightningErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKRoute res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RouteLightningErrorZ_get_err(uint32_t arg) { - LDKCResult_RouteLightningErrorZ *val = (LDKCResult_RouteLightningErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKLightningError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_TxOutAccessErrorZ_get_ok(uint32_t arg) { - LDKCResult_TxOutAccessErrorZ *val = (LDKCResult_TxOutAccessErrorZ*)(arg & ~1); - CHECK(val->result_ok); - uint64_t res_ref = ((uint64_t)&(*val->contents.result)) | 1; - return (uint64_t)res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_TxOutAccessErrorZ_get_err(uint32_t arg) { - LDKCResult_TxOutAccessErrorZ *val = (LDKCResult_TxOutAccessErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKAccessError_to_js((*val->contents.err)); - return err_conv; -} -static inline uintptr_t C2Tuple_usizeTransactionZ_get_a(LDKC2Tuple_usizeTransactionZ *NONNULL_PTR tuple){ - return tuple->a; -} -int64_t __attribute__((visibility("default"))) TS_C2Tuple_usizeTransactionZ_get_a(uint32_t tuple) { - LDKC2Tuple_usizeTransactionZ* tuple_conv = (LDKC2Tuple_usizeTransactionZ*)(tuple & ~1); - int64_t ret_val = C2Tuple_usizeTransactionZ_get_a(tuple_conv); - return ret_val; -} - -static inline struct LDKTransaction C2Tuple_usizeTransactionZ_get_b(LDKC2Tuple_usizeTransactionZ *NONNULL_PTR tuple){ - return tuple->b; -} -int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_usizeTransactionZ_get_b(uint32_t tuple) { - LDKC2Tuple_usizeTransactionZ* tuple_conv = (LDKC2Tuple_usizeTransactionZ*)(tuple & ~1); - LDKTransaction ret_var = C2Tuple_usizeTransactionZ_get_b(tuple_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - Transaction_free(ret_var); - return ret_arr; + +static inline struct LDKChannelPublicKeys CResult_ChannelPublicKeysDecodeErrorZ_get_ok(LDKCResult_ChannelPublicKeysDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ChannelPublicKeys_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ChannelPublicKeysDecodeErrorZ* owner_conv = (LDKCResult_ChannelPublicKeysDecodeErrorZ*)(owner & ~1); + LDKChannelPublicKeys ret_var = CResult_ChannelPublicKeysDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline LDKCVec_C2Tuple_usizeTransactionZZ CVec_C2Tuple_usizeTransactionZZ_clone(const LDKCVec_C2Tuple_usizeTransactionZZ *orig) { - LDKCVec_C2Tuple_usizeTransactionZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_usizeTransactionZ) * orig->datalen, "LDKCVec_C2Tuple_usizeTransactionZZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = C2Tuple_usizeTransactionZ_clone(&orig->data[i]); +static inline struct LDKDecodeError CResult_ChannelPublicKeysDecodeErrorZ_get_err(LDKCResult_ChannelPublicKeysDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ChannelPublicKeysDecodeErrorZ* owner_conv = (LDKCResult_ChannelPublicKeysDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ChannelPublicKeysDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; + return ret_ref; } -static inline LDKCVec_TxidZ CVec_ThirtyTwoBytesZ_clone(const LDKCVec_TxidZ *orig) { - LDKCVec_TxidZ ret = { .data = MALLOC(sizeof(LDKThirtyTwoBytes) * orig->datalen, "LDKCVec_TxidZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = ThirtyTwoBytes_clone(&orig->data[i]); + +static inline struct LDKTxCreationKeys CResult_TxCreationKeysErrorZ_get_ok(LDKCResult_TxCreationKeysErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return TxCreationKeys_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_get_ok(uint32_t owner) { + LDKCResult_TxCreationKeysErrorZ* owner_conv = (LDKCResult_TxCreationKeysErrorZ*)(owner & ~1); + LDKTxCreationKeys ret_var = CResult_TxCreationKeysErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; + return ret_ref; } -void __attribute__((visibility("default"))) TS_LDKCResult_NoneChannelMonitorUpdateErrZ_get_ok(uint32_t arg) { - LDKCResult_NoneChannelMonitorUpdateErrZ *val = (LDKCResult_NoneChannelMonitorUpdateErrZ*)(arg & ~1); - CHECK(val->result_ok); - return *val->contents.result; + +static inline enum LDKSecp256k1Error CResult_TxCreationKeysErrorZ_get_err(LDKCResult_TxCreationKeysErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NoneChannelMonitorUpdateErrZ_get_err(uint32_t arg) { - LDKCResult_NoneChannelMonitorUpdateErrZ *val = (LDKCResult_NoneChannelMonitorUpdateErrZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKChannelMonitorUpdateErr_to_js((*val->contents.err)); - return err_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_get_err(uint32_t owner) { + LDKCResult_TxCreationKeysErrorZ* owner_conv = (LDKCResult_TxCreationKeysErrorZ*)(owner & ~1); + uint32_t ret_conv = LDKSecp256k1Error_to_js(CResult_TxCreationKeysErrorZ_get_err(owner_conv)); + return ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_LDKMonitorEvent_ref_from_ptr(uint32_t ptr) { - LDKMonitorEvent *obj = (LDKMonitorEvent*)(ptr & ~1); + +uint32_t __attribute__((visibility("default"))) TS_LDKCOption_u32Z_ref_from_ptr(uint32_t ptr) { + LDKCOption_u32Z *obj = (LDKCOption_u32Z*)(ptr & ~1); switch(obj->tag) { - case LDKMonitorEvent_HTLCEvent: { - LDKHTLCUpdate htlc_event_var = obj->htlc_event; - uint64_t htlc_event_ref = 0; - CHECK((((uint64_t)htlc_event_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&htlc_event_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_event_var); - htlc_event_ref = (uint64_t)htlc_event_var.inner & ~1; - return 0 /* LDKMonitorEvent - HTLCEvent */; (void) htlc_event_ref; - } - case LDKMonitorEvent_CommitmentTxConfirmed: { - LDKOutPoint commitment_tx_confirmed_var = obj->commitment_tx_confirmed; - uint64_t commitment_tx_confirmed_ref = 0; - CHECK((((uint64_t)commitment_tx_confirmed_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&commitment_tx_confirmed_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_confirmed_var); - commitment_tx_confirmed_ref = (uint64_t)commitment_tx_confirmed_var.inner & ~1; - return 0 /* LDKMonitorEvent - CommitmentTxConfirmed */; (void) commitment_tx_confirmed_ref; - } - case LDKMonitorEvent_UpdateCompleted: { - LDKOutPoint funding_txo_var = obj->update_completed.funding_txo; - uint64_t funding_txo_ref = 0; - CHECK((((uint64_t)funding_txo_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&funding_txo_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_var); - funding_txo_ref = (uint64_t)funding_txo_var.inner & ~1; - return 0 /* LDKMonitorEvent - UpdateCompleted */; (void) funding_txo_ref; (void) obj->update_completed.monitor_update_id; + case LDKCOption_u32Z_Some: { + return 0 /* LDKCOption_u32Z - Some */; (void) obj->some; } - case LDKMonitorEvent_UpdateFailed: { - LDKOutPoint update_failed_var = obj->update_failed; - uint64_t update_failed_ref = 0; - CHECK((((uint64_t)update_failed_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&update_failed_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_failed_var); - update_failed_ref = (uint64_t)update_failed_var.inner & ~1; - return 0 /* LDKMonitorEvent - UpdateFailed */; (void) update_failed_ref; + case LDKCOption_u32Z_None: { + return 0 /* LDKCOption_u32Z - None */; } default: abort(); } } -static inline LDKCVec_MonitorEventZ CVec_MonitorEventZ_clone(const LDKCVec_MonitorEventZ *orig) { - LDKCVec_MonitorEventZ ret = { .data = MALLOC(sizeof(LDKMonitorEvent) * orig->datalen, "LDKCVec_MonitorEventZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = MonitorEvent_clone(&orig->data[i]); - } - return ret; +static inline struct LDKHTLCOutputInCommitment CResult_HTLCOutputInCommitmentDecodeErrorZ_get_ok(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return HTLCOutputInCommitment_clone(&*owner->contents.result); } -uint32_t __attribute__((visibility("default"))) TS_LDKCOption_C2Tuple_usizeTransactionZZ_ref_from_ptr(uint32_t ptr) { - LDKCOption_C2Tuple_usizeTransactionZZ *obj = (LDKCOption_C2Tuple_usizeTransactionZZ*)(ptr & ~1); - switch(obj->tag) { - case LDKCOption_C2Tuple_usizeTransactionZZ_Some: { - LDKC2Tuple_usizeTransactionZ* some_conv = MALLOC(sizeof(LDKC2Tuple_usizeTransactionZ), "LDKC2Tuple_usizeTransactionZ"); - *some_conv = obj->some; - *some_conv = C2Tuple_usizeTransactionZ_clone(some_conv); - return 0 /* LDKCOption_C2Tuple_usizeTransactionZZ - Some */; (void) ((uint64_t)some_conv); - } - case LDKCOption_C2Tuple_usizeTransactionZZ_None: { - return 0 /* LDKCOption_C2Tuple_usizeTransactionZZ - None */; - } - default: abort(); +uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* owner_conv = (LDKCResult_HTLCOutputInCommitmentDecodeErrorZ*)(owner & ~1); + LDKHTLCOutputInCommitment ret_var = CResult_HTLCOutputInCommitmentDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKClosureReason_ref_from_ptr(uint32_t ptr) { - LDKClosureReason *obj = (LDKClosureReason*)(ptr & ~1); - switch(obj->tag) { - case LDKClosureReason_CounterpartyForceClosed: { - LDKStr peer_msg_str = obj->counterparty_force_closed.peer_msg; - jstring peer_msg_conv = str_ref_to_ts(peer_msg_str.chars, peer_msg_str.len); - return 0 /* LDKClosureReason - CounterpartyForceClosed */; (void) peer_msg_conv; - } - case LDKClosureReason_HolderForceClosed: { - return 0 /* LDKClosureReason - HolderForceClosed */; - } - case LDKClosureReason_CooperativeClosure: { - return 0 /* LDKClosureReason - CooperativeClosure */; - } - case LDKClosureReason_CommitmentTxConfirmed: { - return 0 /* LDKClosureReason - CommitmentTxConfirmed */; - } - case LDKClosureReason_FundingTimedOut: { - return 0 /* LDKClosureReason - FundingTimedOut */; - } - case LDKClosureReason_ProcessingError: { - LDKStr err_str = obj->processing_error.err; - jstring err_conv = str_ref_to_ts(err_str.chars, err_str.len); - return 0 /* LDKClosureReason - ProcessingError */; (void) err_conv; - } - case LDKClosureReason_DisconnectedPeer: { - return 0 /* LDKClosureReason - DisconnectedPeer */; - } - case LDKClosureReason_OutdatedChannelManager: { - return 0 /* LDKClosureReason - OutdatedChannelManager */; - } - default: abort(); + +static inline struct LDKDecodeError CResult_HTLCOutputInCommitmentDecodeErrorZ_get_err(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* owner_conv = (LDKCResult_HTLCOutputInCommitmentDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_HTLCOutputInCommitmentDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCOption_ClosureReasonZ_ref_from_ptr(uint32_t ptr) { - LDKCOption_ClosureReasonZ *obj = (LDKCOption_ClosureReasonZ*)(ptr & ~1); - switch(obj->tag) { - case LDKCOption_ClosureReasonZ_Some: { - uint64_t some_ref = ((uint64_t)&obj->some) | 1; - return 0 /* LDKCOption_ClosureReasonZ - Some */; (void) some_ref; - } - case LDKCOption_ClosureReasonZ_None: { - return 0 /* LDKCOption_ClosureReasonZ - None */; - } - default: abort(); + +static inline struct LDKCounterpartyChannelTransactionParameters CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_get_ok(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return CounterpartyChannelTransactionParameters_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* owner_conv = (LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ*)(owner & ~1); + LDKCounterpartyChannelTransactionParameters ret_var = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_COption_ClosureReasonZDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_COption_ClosureReasonZDecodeErrorZ *val = (LDKCResult_COption_ClosureReasonZDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - uint64_t res_ref = ((uint64_t)&(*val->contents.result)) | 1; - return res_ref; + +static inline struct LDKDecodeError CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_get_err(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_COption_ClosureReasonZDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_COption_ClosureReasonZDecodeErrorZ *val = (LDKCResult_COption_ClosureReasonZDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* owner_conv = (LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKNetworkUpdate_ref_from_ptr(uint32_t ptr) { - LDKNetworkUpdate *obj = (LDKNetworkUpdate*)(ptr & ~1); - switch(obj->tag) { - case LDKNetworkUpdate_ChannelUpdateMessage: { - LDKChannelUpdate msg_var = obj->channel_update_message.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKNetworkUpdate - ChannelUpdateMessage */; (void) msg_ref; - } - case LDKNetworkUpdate_ChannelClosed: { - return 0 /* LDKNetworkUpdate - ChannelClosed */; (void) obj->channel_closed.short_channel_id; (void) obj->channel_closed.is_permanent; - } - case LDKNetworkUpdate_NodeFailure: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->node_failure.node_id.compressed_form, 33); - return 0 /* LDKNetworkUpdate - NodeFailure */; (void) node_id_arr; (void) obj->node_failure.is_permanent; - } - default: abort(); + +static inline struct LDKChannelTransactionParameters CResult_ChannelTransactionParametersDecodeErrorZ_get_ok(LDKCResult_ChannelTransactionParametersDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ChannelTransactionParameters_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ChannelTransactionParametersDecodeErrorZ* owner_conv = (LDKCResult_ChannelTransactionParametersDecodeErrorZ*)(owner & ~1); + LDKChannelTransactionParameters ret_var = CResult_ChannelTransactionParametersDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCOption_NetworkUpdateZ_ref_from_ptr(uint32_t ptr) { - LDKCOption_NetworkUpdateZ *obj = (LDKCOption_NetworkUpdateZ*)(ptr & ~1); - switch(obj->tag) { - case LDKCOption_NetworkUpdateZ_Some: { - uint64_t some_ref = ((uint64_t)&obj->some) | 1; - return 0 /* LDKCOption_NetworkUpdateZ - Some */; (void) some_ref; - } - case LDKCOption_NetworkUpdateZ_None: { - return 0 /* LDKCOption_NetworkUpdateZ - None */; - } - default: abort(); + +static inline struct LDKDecodeError CResult_ChannelTransactionParametersDecodeErrorZ_get_err(LDKCResult_ChannelTransactionParametersDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ChannelTransactionParametersDecodeErrorZ* owner_conv = (LDKCResult_ChannelTransactionParametersDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ChannelTransactionParametersDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKSpendableOutputDescriptor_ref_from_ptr(uint32_t ptr) { - LDKSpendableOutputDescriptor *obj = (LDKSpendableOutputDescriptor*)(ptr & ~1); - switch(obj->tag) { - case LDKSpendableOutputDescriptor_StaticOutput: { - LDKOutPoint outpoint_var = obj->static_output.outpoint; - uint64_t outpoint_ref = 0; - CHECK((((uint64_t)outpoint_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&outpoint_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(outpoint_var); - outpoint_ref = (uint64_t)outpoint_var.inner & ~1; - uint64_t output_ref = ((uint64_t)&obj->static_output.output) | 1; - return 0 /* LDKSpendableOutputDescriptor - StaticOutput */; (void) outpoint_ref; (void) (uint64_t)output_ref; - } - case LDKSpendableOutputDescriptor_DelayedPaymentOutput: { - LDKDelayedPaymentOutputDescriptor delayed_payment_output_var = obj->delayed_payment_output; - uint64_t delayed_payment_output_ref = 0; - CHECK((((uint64_t)delayed_payment_output_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&delayed_payment_output_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(delayed_payment_output_var); - delayed_payment_output_ref = (uint64_t)delayed_payment_output_var.inner & ~1; - return 0 /* LDKSpendableOutputDescriptor - DelayedPaymentOutput */; (void) delayed_payment_output_ref; - } - case LDKSpendableOutputDescriptor_StaticPaymentOutput: { - LDKStaticPaymentOutputDescriptor static_payment_output_var = obj->static_payment_output; - uint64_t static_payment_output_ref = 0; - CHECK((((uint64_t)static_payment_output_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&static_payment_output_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(static_payment_output_var); - static_payment_output_ref = (uint64_t)static_payment_output_var.inner & ~1; - return 0 /* LDKSpendableOutputDescriptor - StaticPaymentOutput */; (void) static_payment_output_ref; - } - default: abort(); + +static inline struct LDKHolderCommitmentTransaction CResult_HolderCommitmentTransactionDecodeErrorZ_get_ok(LDKCResult_HolderCommitmentTransactionDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return HolderCommitmentTransaction_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_HolderCommitmentTransactionDecodeErrorZ* owner_conv = (LDKCResult_HolderCommitmentTransactionDecodeErrorZ*)(owner & ~1); + LDKHolderCommitmentTransaction ret_var = CResult_HolderCommitmentTransactionDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -static inline LDKCVec_SpendableOutputDescriptorZ CVec_SpendableOutputDescriptorZ_clone(const LDKCVec_SpendableOutputDescriptorZ *orig) { - LDKCVec_SpendableOutputDescriptorZ ret = { .data = MALLOC(sizeof(LDKSpendableOutputDescriptor) * orig->datalen, "LDKCVec_SpendableOutputDescriptorZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = SpendableOutputDescriptor_clone(&orig->data[i]); + +static inline struct LDKDecodeError CResult_HolderCommitmentTransactionDecodeErrorZ_get_err(LDKCResult_HolderCommitmentTransactionDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_HolderCommitmentTransactionDecodeErrorZ* owner_conv = (LDKCResult_HolderCommitmentTransactionDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_HolderCommitmentTransactionDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKPaymentPurpose_ref_from_ptr(uint32_t ptr) { - LDKPaymentPurpose *obj = (LDKPaymentPurpose*)(ptr & ~1); - switch(obj->tag) { - case LDKPaymentPurpose_InvoicePayment: { - int8_tArray payment_preimage_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_preimage_arr + 4), obj->invoice_payment.payment_preimage.data, 32); - int8_tArray payment_secret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_secret_arr + 4), obj->invoice_payment.payment_secret.data, 32); - return 0 /* LDKPaymentPurpose - InvoicePayment */; (void) payment_preimage_arr; (void) payment_secret_arr; - } - case LDKPaymentPurpose_SpontaneousPayment: { - int8_tArray spontaneous_payment_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(spontaneous_payment_arr + 4), obj->spontaneous_payment.data, 32); - return 0 /* LDKPaymentPurpose - SpontaneousPayment */; (void) spontaneous_payment_arr; - } - default: abort(); + +static inline struct LDKBuiltCommitmentTransaction CResult_BuiltCommitmentTransactionDecodeErrorZ_get_ok(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return BuiltCommitmentTransaction_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* owner_conv = (LDKCResult_BuiltCommitmentTransactionDecodeErrorZ*)(owner & ~1); + LDKBuiltCommitmentTransaction ret_var = CResult_BuiltCommitmentTransactionDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKEvent_ref_from_ptr(uint32_t ptr) { - LDKEvent *obj = (LDKEvent*)(ptr & ~1); - switch(obj->tag) { - case LDKEvent_FundingGenerationReady: { - int8_tArray temporary_channel_id_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(temporary_channel_id_arr + 4), obj->funding_generation_ready.temporary_channel_id.data, 32); - LDKCVec_u8Z output_script_var = obj->funding_generation_ready.output_script; - int8_tArray output_script_arr = init_arr(output_script_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(output_script_arr + 4), output_script_var.data, output_script_var.datalen); - return 0 /* LDKEvent - FundingGenerationReady */; (void) temporary_channel_id_arr; (void) obj->funding_generation_ready.channel_value_satoshis; (void) output_script_arr; (void) obj->funding_generation_ready.user_channel_id; - } - case LDKEvent_PaymentReceived: { - int8_tArray payment_hash_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_hash_arr + 4), obj->payment_received.payment_hash.data, 32); - uint64_t purpose_ref = ((uint64_t)&obj->payment_received.purpose) | 1; - return 0 /* LDKEvent - PaymentReceived */; (void) payment_hash_arr; (void) obj->payment_received.amt; (void) purpose_ref; - } - case LDKEvent_PaymentSent: { - int8_tArray payment_id_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_id_arr + 4), obj->payment_sent.payment_id.data, 32); - int8_tArray payment_preimage_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_preimage_arr + 4), obj->payment_sent.payment_preimage.data, 32); - int8_tArray payment_hash_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_hash_arr + 4), obj->payment_sent.payment_hash.data, 32); - uint64_t fee_paid_msat_ref = ((uint64_t)&obj->payment_sent.fee_paid_msat) | 1; - return 0 /* LDKEvent - PaymentSent */; (void) payment_id_arr; (void) payment_preimage_arr; (void) payment_hash_arr; (void) fee_paid_msat_ref; - } - case LDKEvent_PaymentPathFailed: { - int8_tArray payment_id_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_id_arr + 4), obj->payment_path_failed.payment_id.data, 32); - int8_tArray payment_hash_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_hash_arr + 4), obj->payment_path_failed.payment_hash.data, 32); - uint64_t network_update_ref = ((uint64_t)&obj->payment_path_failed.network_update) | 1; - LDKCVec_RouteHopZ path_var = obj->payment_path_failed.path; - uint32_tArray path_arr = NULL; - path_arr = init_arr(path_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *path_arr_ptr = (uint32_t*)(path_arr + 4); - for (size_t k = 0; k < path_var.datalen; k++) { - LDKRouteHop path_conv_10_var = path_var.data[k]; - uint64_t path_conv_10_ref = 0; - CHECK((((uint64_t)path_conv_10_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&path_conv_10_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_var); - path_conv_10_ref = (uint64_t)path_conv_10_var.inner & ~1; - path_arr_ptr[k] = path_conv_10_ref; - } - - uint64_t short_channel_id_ref = ((uint64_t)&obj->payment_path_failed.short_channel_id) | 1; - LDKRouteParameters retry_var = obj->payment_path_failed.retry; - uint64_t retry_ref = 0; - if ((uint64_t)retry_var.inner > 4096) { - CHECK((((uint64_t)retry_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&retry_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(retry_var); - retry_ref = (uint64_t)retry_var.inner & ~1; - } - return 0 /* LDKEvent - PaymentPathFailed */; (void) payment_id_arr; (void) payment_hash_arr; (void) obj->payment_path_failed.rejected_by_dest; (void) network_update_ref; (void) obj->payment_path_failed.all_paths_failed; (void) path_arr; (void) short_channel_id_ref; (void) retry_ref; - } - case LDKEvent_PaymentFailed: { - int8_tArray payment_id_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_id_arr + 4), obj->payment_failed.payment_id.data, 32); - int8_tArray payment_hash_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_hash_arr + 4), obj->payment_failed.payment_hash.data, 32); - return 0 /* LDKEvent - PaymentFailed */; (void) payment_id_arr; (void) payment_hash_arr; - } - case LDKEvent_PendingHTLCsForwardable: { - return 0 /* LDKEvent - PendingHTLCsForwardable */; (void) obj->pending_htl_cs_forwardable.time_forwardable; - } - case LDKEvent_SpendableOutputs: { - LDKCVec_SpendableOutputDescriptorZ outputs_var = obj->spendable_outputs.outputs; - uint32_tArray outputs_arr = NULL; - outputs_arr = init_arr(outputs_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *outputs_arr_ptr = (uint32_t*)(outputs_arr + 4); - for (size_t b = 0; b < outputs_var.datalen; b++) { - uint64_t outputs_conv_27_ref = ((uint64_t)&outputs_var.data[b]) | 1; - outputs_arr_ptr[b] = outputs_conv_27_ref; - } - - return 0 /* LDKEvent - SpendableOutputs */; (void) outputs_arr; - } - case LDKEvent_PaymentForwarded: { - uint64_t fee_earned_msat_ref = ((uint64_t)&obj->payment_forwarded.fee_earned_msat) | 1; - return 0 /* LDKEvent - PaymentForwarded */; (void) fee_earned_msat_ref; (void) obj->payment_forwarded.claim_from_onchain_tx; - } - case LDKEvent_ChannelClosed: { - int8_tArray channel_id_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(channel_id_arr + 4), obj->channel_closed.channel_id.data, 32); - uint64_t reason_ref = ((uint64_t)&obj->channel_closed.reason) | 1; - return 0 /* LDKEvent - ChannelClosed */; (void) channel_id_arr; (void) obj->channel_closed.user_channel_id; (void) reason_ref; - } - case LDKEvent_DiscardFunding: { - int8_tArray channel_id_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(channel_id_arr + 4), obj->discard_funding.channel_id.data, 32); - LDKTransaction transaction_var = obj->discard_funding.transaction; - int8_tArray transaction_arr = init_arr(transaction_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(transaction_arr + 4), transaction_var.data, transaction_var.datalen); - return 0 /* LDKEvent - DiscardFunding */; (void) channel_id_arr; (void) transaction_arr; - } - case LDKEvent_PaymentPathSuccessful: { - int8_tArray payment_id_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_id_arr + 4), obj->payment_path_successful.payment_id.data, 32); - int8_tArray payment_hash_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_hash_arr + 4), obj->payment_path_successful.payment_hash.data, 32); - LDKCVec_RouteHopZ path_var = obj->payment_path_successful.path; - uint32_tArray path_arr = NULL; - path_arr = init_arr(path_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *path_arr_ptr = (uint32_t*)(path_arr + 4); - for (size_t k = 0; k < path_var.datalen; k++) { - LDKRouteHop path_conv_10_var = path_var.data[k]; - uint64_t path_conv_10_ref = 0; - CHECK((((uint64_t)path_conv_10_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&path_conv_10_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_var); - path_conv_10_ref = (uint64_t)path_conv_10_var.inner & ~1; - path_arr_ptr[k] = path_conv_10_ref; - } - - return 0 /* LDKEvent - PaymentPathSuccessful */; (void) payment_id_arr; (void) payment_hash_arr; (void) path_arr; - } - default: abort(); + +static inline struct LDKDecodeError CResult_BuiltCommitmentTransactionDecodeErrorZ_get_err(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* owner_conv = (LDKCResult_BuiltCommitmentTransactionDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_BuiltCommitmentTransactionDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCOption_EventZ_ref_from_ptr(uint32_t ptr) { - LDKCOption_EventZ *obj = (LDKCOption_EventZ*)(ptr & ~1); - switch(obj->tag) { - case LDKCOption_EventZ_Some: { - uint64_t some_ref = ((uint64_t)&obj->some) | 1; - return 0 /* LDKCOption_EventZ - Some */; (void) some_ref; - } - case LDKCOption_EventZ_None: { - return 0 /* LDKCOption_EventZ - None */; - } - default: abort(); + +static inline struct LDKTrustedClosingTransaction *CResult_TrustedClosingTransactionNoneZ_get_ok(LDKCResult_TrustedClosingTransactionNoneZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return &*owner->contents.result; +} +uint32_t __attribute__((visibility("default"))) TS_CResult_TrustedClosingTransactionNoneZ_get_ok(uint32_t owner) { + LDKCResult_TrustedClosingTransactionNoneZ* owner_conv = (LDKCResult_TrustedClosingTransactionNoneZ*)(owner & ~1); + LDKTrustedClosingTransaction ret_var = *CResult_TrustedClosingTransactionNoneZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner & ~1; + return ret_ref; +} + +static inline void CResult_TrustedClosingTransactionNoneZ_get_err(LDKCResult_TrustedClosingTransactionNoneZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; +} +void __attribute__((visibility("default"))) TS_CResult_TrustedClosingTransactionNoneZ_get_err(uint32_t owner) { + LDKCResult_TrustedClosingTransactionNoneZ* owner_conv = (LDKCResult_TrustedClosingTransactionNoneZ*)(owner & ~1); + CResult_TrustedClosingTransactionNoneZ_get_err(owner_conv); +} + +static inline struct LDKCommitmentTransaction CResult_CommitmentTransactionDecodeErrorZ_get_ok(LDKCResult_CommitmentTransactionDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return CommitmentTransaction_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_CommitmentTransactionDecodeErrorZ* owner_conv = (LDKCResult_CommitmentTransactionDecodeErrorZ*)(owner & ~1); + LDKCommitmentTransaction ret_var = CResult_CommitmentTransactionDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_COption_EventZDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_COption_EventZDecodeErrorZ *val = (LDKCResult_COption_EventZDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - uint64_t res_ref = ((uint64_t)&(*val->contents.result)) | 1; - return res_ref; + +static inline struct LDKDecodeError CResult_CommitmentTransactionDecodeErrorZ_get_err(LDKCResult_CommitmentTransactionDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_COption_EventZDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_COption_EventZDecodeErrorZ *val = (LDKCResult_COption_EventZDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_CommitmentTransactionDecodeErrorZ* owner_conv = (LDKCResult_CommitmentTransactionDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_CommitmentTransactionDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKErrorAction_ref_from_ptr(uint32_t ptr) { - LDKErrorAction *obj = (LDKErrorAction*)(ptr & ~1); - switch(obj->tag) { - case LDKErrorAction_DisconnectPeer: { - LDKErrorMessage msg_var = obj->disconnect_peer.msg; - uint64_t msg_ref = 0; - if ((uint64_t)msg_var.inner > 4096) { - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - } - return 0 /* LDKErrorAction - DisconnectPeer */; (void) msg_ref; - } - case LDKErrorAction_IgnoreError: { - return 0 /* LDKErrorAction - IgnoreError */; - } - case LDKErrorAction_IgnoreAndLog: { - uint32_t ignore_and_log_conv = LDKLevel_to_js(obj->ignore_and_log); - return 0 /* LDKErrorAction - IgnoreAndLog */; (void) ignore_and_log_conv; - } - case LDKErrorAction_IgnoreDuplicateGossip: { - return 0 /* LDKErrorAction - IgnoreDuplicateGossip */; - } - case LDKErrorAction_SendErrorMessage: { - LDKErrorMessage msg_var = obj->send_error_message.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKErrorAction - SendErrorMessage */; (void) msg_ref; - } - default: abort(); + +static inline struct LDKTrustedCommitmentTransaction *CResult_TrustedCommitmentTransactionNoneZ_get_ok(LDKCResult_TrustedCommitmentTransactionNoneZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return &*owner->contents.result; +} +uint32_t __attribute__((visibility("default"))) TS_CResult_TrustedCommitmentTransactionNoneZ_get_ok(uint32_t owner) { + LDKCResult_TrustedCommitmentTransactionNoneZ* owner_conv = (LDKCResult_TrustedCommitmentTransactionNoneZ*)(owner & ~1); + LDKTrustedCommitmentTransaction ret_var = *CResult_TrustedCommitmentTransactionNoneZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner & ~1; + return ret_ref; +} + +static inline void CResult_TrustedCommitmentTransactionNoneZ_get_err(LDKCResult_TrustedCommitmentTransactionNoneZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; +} +void __attribute__((visibility("default"))) TS_CResult_TrustedCommitmentTransactionNoneZ_get_err(uint32_t owner) { + LDKCResult_TrustedCommitmentTransactionNoneZ* owner_conv = (LDKCResult_TrustedCommitmentTransactionNoneZ*)(owner & ~1); + CResult_TrustedCommitmentTransactionNoneZ_get_err(owner_conv); +} + +static inline struct LDKCVec_SignatureZ CResult_CVec_SignatureZNoneZ_get_ok(LDKCResult_CVec_SignatureZNoneZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; +} +ptrArray __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_get_ok(uint32_t owner) { + LDKCResult_CVec_SignatureZNoneZ* owner_conv = (LDKCResult_CVec_SignatureZNoneZ*)(owner & ~1); + LDKCVec_SignatureZ ret_var = CResult_CVec_SignatureZNoneZ_get_ok(owner_conv); + ptrArray ret_arr = NULL; + ret_arr = init_ptrArray(ret_var.datalen); + int8_tArray *ret_arr_ptr = (int8_tArray*)(ret_arr + 4); + for (size_t m = 0; m < ret_var.datalen; m++) { + int8_tArray ret_conv_12_arr = init_int8_tArray(64); + memcpy(ret_conv_12_arr->elems, ret_var.data[m].compact_form, 64); + ret_arr_ptr[m] = ret_conv_12_arr; } + + FREE(ret_var.data); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_LDKMessageSendEvent_ref_from_ptr(uint32_t ptr) { - LDKMessageSendEvent *obj = (LDKMessageSendEvent*)(ptr & ~1); - switch(obj->tag) { - case LDKMessageSendEvent_SendAcceptChannel: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_accept_channel.node_id.compressed_form, 33); - LDKAcceptChannel msg_var = obj->send_accept_channel.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendAcceptChannel */; (void) node_id_arr; (void) msg_ref; - } - case LDKMessageSendEvent_SendOpenChannel: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_open_channel.node_id.compressed_form, 33); - LDKOpenChannel msg_var = obj->send_open_channel.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendOpenChannel */; (void) node_id_arr; (void) msg_ref; - } - case LDKMessageSendEvent_SendFundingCreated: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_funding_created.node_id.compressed_form, 33); - LDKFundingCreated msg_var = obj->send_funding_created.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendFundingCreated */; (void) node_id_arr; (void) msg_ref; - } - case LDKMessageSendEvent_SendFundingSigned: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_funding_signed.node_id.compressed_form, 33); - LDKFundingSigned msg_var = obj->send_funding_signed.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendFundingSigned */; (void) node_id_arr; (void) msg_ref; - } - case LDKMessageSendEvent_SendFundingLocked: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_funding_locked.node_id.compressed_form, 33); - LDKFundingLocked msg_var = obj->send_funding_locked.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendFundingLocked */; (void) node_id_arr; (void) msg_ref; - } - case LDKMessageSendEvent_SendAnnouncementSignatures: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_announcement_signatures.node_id.compressed_form, 33); - LDKAnnouncementSignatures msg_var = obj->send_announcement_signatures.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendAnnouncementSignatures */; (void) node_id_arr; (void) msg_ref; - } - case LDKMessageSendEvent_UpdateHTLCs: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->update_htl_cs.node_id.compressed_form, 33); - LDKCommitmentUpdate updates_var = obj->update_htl_cs.updates; - uint64_t updates_ref = 0; - CHECK((((uint64_t)updates_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&updates_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(updates_var); - updates_ref = (uint64_t)updates_var.inner & ~1; - return 0 /* LDKMessageSendEvent - UpdateHTLCs */; (void) node_id_arr; (void) updates_ref; - } - case LDKMessageSendEvent_SendRevokeAndACK: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_revoke_and_ack.node_id.compressed_form, 33); - LDKRevokeAndACK msg_var = obj->send_revoke_and_ack.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendRevokeAndACK */; (void) node_id_arr; (void) msg_ref; - } - case LDKMessageSendEvent_SendClosingSigned: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_closing_signed.node_id.compressed_form, 33); - LDKClosingSigned msg_var = obj->send_closing_signed.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendClosingSigned */; (void) node_id_arr; (void) msg_ref; - } - case LDKMessageSendEvent_SendShutdown: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_shutdown.node_id.compressed_form, 33); - LDKShutdown msg_var = obj->send_shutdown.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendShutdown */; (void) node_id_arr; (void) msg_ref; - } - case LDKMessageSendEvent_SendChannelReestablish: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_channel_reestablish.node_id.compressed_form, 33); - LDKChannelReestablish msg_var = obj->send_channel_reestablish.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendChannelReestablish */; (void) node_id_arr; (void) msg_ref; - } - case LDKMessageSendEvent_BroadcastChannelAnnouncement: { - LDKChannelAnnouncement msg_var = obj->broadcast_channel_announcement.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - LDKChannelUpdate update_msg_var = obj->broadcast_channel_announcement.update_msg; - uint64_t update_msg_ref = 0; - CHECK((((uint64_t)update_msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&update_msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_msg_var); - update_msg_ref = (uint64_t)update_msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - BroadcastChannelAnnouncement */; (void) msg_ref; (void) update_msg_ref; - } - case LDKMessageSendEvent_BroadcastNodeAnnouncement: { - LDKNodeAnnouncement msg_var = obj->broadcast_node_announcement.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - BroadcastNodeAnnouncement */; (void) msg_ref; - } - case LDKMessageSendEvent_BroadcastChannelUpdate: { - LDKChannelUpdate msg_var = obj->broadcast_channel_update.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - BroadcastChannelUpdate */; (void) msg_ref; - } - case LDKMessageSendEvent_SendChannelUpdate: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_channel_update.node_id.compressed_form, 33); - LDKChannelUpdate msg_var = obj->send_channel_update.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendChannelUpdate */; (void) node_id_arr; (void) msg_ref; - } - case LDKMessageSendEvent_HandleError: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->handle_error.node_id.compressed_form, 33); - uint64_t action_ref = ((uint64_t)&obj->handle_error.action) | 1; - return 0 /* LDKMessageSendEvent - HandleError */; (void) node_id_arr; (void) action_ref; - } - case LDKMessageSendEvent_SendChannelRangeQuery: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_channel_range_query.node_id.compressed_form, 33); - LDKQueryChannelRange msg_var = obj->send_channel_range_query.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendChannelRangeQuery */; (void) node_id_arr; (void) msg_ref; - } - case LDKMessageSendEvent_SendShortIdsQuery: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_short_ids_query.node_id.compressed_form, 33); - LDKQueryShortChannelIds msg_var = obj->send_short_ids_query.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendShortIdsQuery */; (void) node_id_arr; (void) msg_ref; - } - case LDKMessageSendEvent_SendReplyChannelRange: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_reply_channel_range.node_id.compressed_form, 33); - LDKReplyChannelRange msg_var = obj->send_reply_channel_range.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendReplyChannelRange */; (void) node_id_arr; (void) msg_ref; - } - default: abort(); - } + +static inline void CResult_CVec_SignatureZNoneZ_get_err(LDKCResult_CVec_SignatureZNoneZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; } -static inline LDKCVec_MessageSendEventZ CVec_MessageSendEventZ_clone(const LDKCVec_MessageSendEventZ *orig) { - LDKCVec_MessageSendEventZ ret = { .data = MALLOC(sizeof(LDKMessageSendEvent) * orig->datalen, "LDKCVec_MessageSendEventZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = MessageSendEvent_clone(&orig->data[i]); +void __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_get_err(uint32_t owner) { + LDKCResult_CVec_SignatureZNoneZ* owner_conv = (LDKCResult_CVec_SignatureZNoneZ*)(owner & ~1); + CResult_CVec_SignatureZNoneZ_get_err(owner_conv); +} + +static inline struct LDKShutdownScript CResult_ShutdownScriptDecodeErrorZ_get_ok(LDKCResult_ShutdownScriptDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ShutdownScript_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ShutdownScriptDecodeErrorZ* owner_conv = (LDKCResult_ShutdownScriptDecodeErrorZ*)(owner & ~1); + LDKShutdownScript ret_var = CResult_ShutdownScriptDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ScoringParametersDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ScoringParametersDecodeErrorZ *val = (LDKCResult_ScoringParametersDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKScoringParameters res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ScoringParametersDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ScoringParametersDecodeErrorZ *val = (LDKCResult_ScoringParametersDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ScorerDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ScorerDecodeErrorZ *val = (LDKCResult_ScorerDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKScorer res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ScorerDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ScorerDecodeErrorZ *val = (LDKCResult_ScorerDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_InitFeaturesDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_InitFeaturesDecodeErrorZ *val = (LDKCResult_InitFeaturesDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKInitFeatures res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_InitFeaturesDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_InitFeaturesDecodeErrorZ *val = (LDKCResult_InitFeaturesDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelFeaturesDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ChannelFeaturesDecodeErrorZ *val = (LDKCResult_ChannelFeaturesDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKChannelFeatures res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelFeaturesDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ChannelFeaturesDecodeErrorZ *val = (LDKCResult_ChannelFeaturesDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NodeFeaturesDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_NodeFeaturesDecodeErrorZ *val = (LDKCResult_NodeFeaturesDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKNodeFeatures res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NodeFeaturesDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_NodeFeaturesDecodeErrorZ *val = (LDKCResult_NodeFeaturesDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_InvoiceFeaturesDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_InvoiceFeaturesDecodeErrorZ *val = (LDKCResult_InvoiceFeaturesDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKInvoiceFeatures res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_InvoiceFeaturesDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_InvoiceFeaturesDecodeErrorZ *val = (LDKCResult_InvoiceFeaturesDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelTypeFeaturesDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ChannelTypeFeaturesDecodeErrorZ *val = (LDKCResult_ChannelTypeFeaturesDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKChannelTypeFeatures res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelTypeFeaturesDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ChannelTypeFeaturesDecodeErrorZ *val = (LDKCResult_ChannelTypeFeaturesDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ *val = (LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKDelayedPaymentOutputDescriptor res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ *val = (LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ *val = (LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKStaticPaymentOutputDescriptor res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ *val = (LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_SpendableOutputDescriptorDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_SpendableOutputDescriptorDecodeErrorZ *val = (LDKCResult_SpendableOutputDescriptorDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - uint64_t res_ref = ((uint64_t)&(*val->contents.result)) | 1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_SpendableOutputDescriptorDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_SpendableOutputDescriptorDecodeErrorZ *val = (LDKCResult_SpendableOutputDescriptorDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -void __attribute__((visibility("default"))) TS_LDKCResult_NoneNoneZ_get_ok(uint32_t arg) { - LDKCResult_NoneNoneZ *val = (LDKCResult_NoneNoneZ*)(arg & ~1); - CHECK(val->result_ok); - return *val->contents.result; -} -void __attribute__((visibility("default"))) TS_LDKCResult_NoneNoneZ_get_err(uint32_t arg) { - LDKCResult_NoneNoneZ *val = (LDKCResult_NoneNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; -} -static inline struct LDKSignature C2Tuple_SignatureCVec_SignatureZZ_get_a(LDKC2Tuple_SignatureCVec_SignatureZZ *NONNULL_PTR tuple){ - return tuple->a; -} -int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_SignatureCVec_SignatureZZ_get_a(uint32_t tuple) { - LDKC2Tuple_SignatureCVec_SignatureZZ* tuple_conv = (LDKC2Tuple_SignatureCVec_SignatureZZ*)(tuple & ~1); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), C2Tuple_SignatureCVec_SignatureZZ_get_a(tuple_conv).compact_form, 64); - return ret_arr; -} - -static inline struct LDKCVec_SignatureZ C2Tuple_SignatureCVec_SignatureZZ_get_b(LDKC2Tuple_SignatureCVec_SignatureZZ *NONNULL_PTR tuple){ - return tuple->b; -} -ptrArray __attribute__((visibility("default"))) TS_C2Tuple_SignatureCVec_SignatureZZ_get_b(uint32_t tuple) { - LDKC2Tuple_SignatureCVec_SignatureZZ* tuple_conv = (LDKC2Tuple_SignatureCVec_SignatureZZ*)(tuple & ~1); - LDKCVec_SignatureZ ret_var = C2Tuple_SignatureCVec_SignatureZZ_get_b(tuple_conv); - ptrArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native ptrArray Bytes"); - int8_tArray *ret_arr_ptr = (int8_tArray*)(ret_arr + 4); - for (size_t m = 0; m < ret_var.datalen; m++) { - int8_tArray ret_conv_12_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_conv_12_arr + 4), ret_var.data[m].compact_form, 64); - ret_arr_ptr[m] = ret_conv_12_arr; + +static inline struct LDKDecodeError CResult_ShutdownScriptDecodeErrorZ_get_err(LDKCResult_ShutdownScriptDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ShutdownScriptDecodeErrorZ* owner_conv = (LDKCResult_ShutdownScriptDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ShutdownScriptDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - - FREE(ret_var.data); - return ret_arr; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_ok(uint32_t arg) { - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ *val = (LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(arg & ~1); - CHECK(val->result_ok); - LDKC2Tuple_SignatureCVec_SignatureZZ* res_conv = MALLOC(sizeof(LDKC2Tuple_SignatureCVec_SignatureZZ), "LDKC2Tuple_SignatureCVec_SignatureZZ"); - *res_conv = (*val->contents.result); - *res_conv = C2Tuple_SignatureCVec_SignatureZZ_clone(res_conv); - return ((uint64_t)res_conv); +static inline struct LDKShutdownScript CResult_ShutdownScriptInvalidShutdownScriptZ_get_ok(LDKCResult_ShutdownScriptInvalidShutdownScriptZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ShutdownScript_clone(&*owner->contents.result); } -void __attribute__((visibility("default"))) TS_LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_err(uint32_t arg) { - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ *val = (LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_get_ok(uint32_t owner) { + LDKCResult_ShutdownScriptInvalidShutdownScriptZ* owner_conv = (LDKCResult_ShutdownScriptInvalidShutdownScriptZ*)(owner & ~1); + LDKShutdownScript ret_var = CResult_ShutdownScriptInvalidShutdownScriptZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_LDKCResult_SignatureNoneZ_get_ok(uint32_t arg) { - LDKCResult_SignatureNoneZ *val = (LDKCResult_SignatureNoneZ*)(arg & ~1); - CHECK(val->result_ok); - int8_tArray res_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(res_arr + 4), (*val->contents.result).compact_form, 64); - return res_arr; + +static inline struct LDKInvalidShutdownScript CResult_ShutdownScriptInvalidShutdownScriptZ_get_err(LDKCResult_ShutdownScriptInvalidShutdownScriptZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return InvalidShutdownScript_clone(&*owner->contents.err); } -void __attribute__((visibility("default"))) TS_LDKCResult_SignatureNoneZ_get_err(uint32_t arg) { - LDKCResult_SignatureNoneZ *val = (LDKCResult_SignatureNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_get_err(uint32_t owner) { + LDKCResult_ShutdownScriptInvalidShutdownScriptZ* owner_conv = (LDKCResult_ShutdownScriptInvalidShutdownScriptZ*)(owner & ~1); + LDKInvalidShutdownScript ret_var = CResult_ShutdownScriptInvalidShutdownScriptZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -typedef struct LDKBaseSign_JCalls { + +typedef struct LDKType_JCalls { atomic_size_t refcnt; - uint32_t get_per_commitment_point_meth; - uint32_t release_commitment_secret_meth; - uint32_t validate_holder_commitment_meth; - uint32_t channel_keys_id_meth; - uint32_t sign_counterparty_commitment_meth; - uint32_t validate_counterparty_revocation_meth; - uint32_t sign_holder_commitment_and_htlcs_meth; - uint32_t sign_justice_revoked_output_meth; - uint32_t sign_justice_revoked_htlc_meth; - uint32_t sign_counterparty_htlc_transaction_meth; - uint32_t sign_closing_transaction_meth; - uint32_t sign_channel_announcement_meth; - uint32_t ready_channel_meth; -} LDKBaseSign_JCalls; -static void LDKBaseSign_JCalls_free(void* this_arg) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + uint32_t type_id_meth; + uint32_t debug_str_meth; + uint32_t write_meth; +} LDKType_JCalls; +static void LDKType_JCalls_free(void* this_arg) { + LDKType_JCalls *j_calls = (LDKType_JCalls*) this_arg; if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->get_per_commitment_point_meth); - js_free(j_calls->release_commitment_secret_meth); - js_free(j_calls->validate_holder_commitment_meth); - js_free(j_calls->channel_keys_id_meth); - js_free(j_calls->sign_counterparty_commitment_meth); - js_free(j_calls->validate_counterparty_revocation_meth); - js_free(j_calls->sign_holder_commitment_and_htlcs_meth); - js_free(j_calls->sign_justice_revoked_output_meth); - js_free(j_calls->sign_justice_revoked_htlc_meth); - js_free(j_calls->sign_counterparty_htlc_transaction_meth); - js_free(j_calls->sign_closing_transaction_meth); - js_free(j_calls->sign_channel_announcement_meth); - js_free(j_calls->ready_channel_meth); + js_free_function_ptr(j_calls->type_id_meth); + js_free_function_ptr(j_calls->debug_str_meth); + js_free_function_ptr(j_calls->write_meth); FREE(j_calls); } } -LDKPublicKey get_per_commitment_point_LDKBaseSign_jcall(const void* this_arg, uint64_t idx) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; - int8_tArray ret = js_invoke_function_1(j_calls->get_per_commitment_point_meth, idx); - LDKPublicKey ret_ref; - CHECK(*((uint32_t*)ret) == 33); - memcpy(ret_ref.compressed_form, (uint8_t*)(ret + 4), 33); - return ret_ref; -} -LDKThirtyTwoBytes release_commitment_secret_LDKBaseSign_jcall(const void* this_arg, uint64_t idx) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; - int8_tArray ret = js_invoke_function_1(j_calls->release_commitment_secret_meth, idx); - LDKThirtyTwoBytes ret_ref; - CHECK(*((uint32_t*)ret) == 32); - memcpy(ret_ref.data, (uint8_t*)(ret + 4), 32); - return ret_ref; +uint16_t type_id_LDKType_jcall(const void* this_arg) { + LDKType_JCalls *j_calls = (LDKType_JCalls*) this_arg; + return js_invoke_function_0(j_calls->type_id_meth); } -LDKCResult_NoneNoneZ validate_holder_commitment_LDKBaseSign_jcall(const void* this_arg, const LDKHolderCommitmentTransaction * holder_tx) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; - LDKHolderCommitmentTransaction holder_tx_var = *holder_tx; - uint64_t holder_tx_ref = 0; - holder_tx_var = HolderCommitmentTransaction_clone(holder_tx); - CHECK((((uint64_t)holder_tx_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&holder_tx_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(holder_tx_var); - holder_tx_ref = (uint64_t)holder_tx_var.inner; - if (holder_tx_var.is_owned) { - holder_tx_ref |= 1; - } - uint32_t ret = js_invoke_function_1(j_calls->validate_holder_commitment_meth, holder_tx_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_NoneNoneZ ret_conv = *(LDKCResult_NoneNoneZ*)(ret_ptr); - FREE((void*)ret); +LDKStr debug_str_LDKType_jcall(const void* this_arg) { + LDKType_JCalls *j_calls = (LDKType_JCalls*) this_arg; + jstring ret = (jstring)js_invoke_function_0(j_calls->debug_str_meth); + LDKStr ret_conv = str_ref_to_owned_c(ret); return ret_conv; } -LDKThirtyTwoBytes channel_keys_id_LDKBaseSign_jcall(const void* this_arg) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; - int8_tArray ret = js_invoke_function_0(j_calls->channel_keys_id_meth); - LDKThirtyTwoBytes ret_ref; - CHECK(*((uint32_t*)ret) == 32); - memcpy(ret_ref.data, (uint8_t*)(ret + 4), 32); +LDKCVec_u8Z write_LDKType_jcall(const void* this_arg) { + LDKType_JCalls *j_calls = (LDKType_JCalls*) this_arg; + int8_tArray ret = (int8_tArray)js_invoke_function_0(j_calls->write_meth); + LDKCVec_u8Z ret_ref; + ret_ref.datalen = ret->arr_len; + ret_ref.data = MALLOC(ret_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(ret_ref.data, ret->elems, ret_ref.datalen); return ret_ref; } -LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ sign_counterparty_commitment_LDKBaseSign_jcall(const void* this_arg, const LDKCommitmentTransaction * commitment_tx) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; - LDKCommitmentTransaction commitment_tx_var = *commitment_tx; - uint64_t commitment_tx_ref = 0; - commitment_tx_var = CommitmentTransaction_clone(commitment_tx); - CHECK((((uint64_t)commitment_tx_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&commitment_tx_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_var); - commitment_tx_ref = (uint64_t)commitment_tx_var.inner; - if (commitment_tx_var.is_owned) { - commitment_tx_ref |= 1; - } - uint32_t ret = js_invoke_function_1(j_calls->sign_counterparty_commitment_meth, commitment_tx_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ ret_conv = *(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; +static void LDKType_JCalls_cloned(LDKType* new_obj) { + LDKType_JCalls *j_calls = (LDKType_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } -LDKCResult_NoneNoneZ validate_counterparty_revocation_LDKBaseSign_jcall(const void* this_arg, uint64_t idx, const uint8_t (* secret)[32]) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; - int8_tArray secret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(secret_arr + 4), *secret, 32); - uint32_t ret = js_invoke_function_2(j_calls->validate_counterparty_revocation_meth, idx, secret_arr); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_NoneNoneZ ret_conv = *(LDKCResult_NoneNoneZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; +static inline LDKType LDKType_init (/*TODO: JS Object Reference */void* o) { + LDKType_JCalls *calls = MALLOC(sizeof(LDKType_JCalls), "LDKType_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o + + LDKType ret = { + .this_arg = (void*) calls, + .type_id = type_id_LDKType_jcall, + .debug_str = debug_str_LDKType_jcall, + .write = write_LDKType_jcall, + .cloned = LDKType_JCalls_cloned, + .free = LDKType_JCalls_free, + }; + return ret; } -LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ sign_holder_commitment_and_htlcs_LDKBaseSign_jcall(const void* this_arg, const LDKHolderCommitmentTransaction * commitment_tx) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; - LDKHolderCommitmentTransaction commitment_tx_var = *commitment_tx; - uint64_t commitment_tx_ref = 0; - commitment_tx_var = HolderCommitmentTransaction_clone(commitment_tx); - CHECK((((uint64_t)commitment_tx_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&commitment_tx_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_var); - commitment_tx_ref = (uint64_t)commitment_tx_var.inner; - if (commitment_tx_var.is_owned) { - commitment_tx_ref |= 1; - } - uint32_t ret = js_invoke_function_1(j_calls->sign_holder_commitment_and_htlcs_meth, commitment_tx_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ ret_conv = *(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; +long __attribute__((visibility("default"))) TS_LDKType_new(/*TODO: JS Object Reference */void* o) { + LDKType *res_ptr = MALLOC(sizeof(LDKType), "LDKType"); + *res_ptr = LDKType_init(o); + return (long)res_ptr; } -LDKCResult_SignatureNoneZ sign_justice_revoked_output_LDKBaseSign_jcall(const void* this_arg, LDKTransaction justice_tx, uintptr_t input, uint64_t amount, const uint8_t (* per_commitment_key)[32]) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; - LDKTransaction justice_tx_var = justice_tx; - int8_tArray justice_tx_arr = init_arr(justice_tx_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(justice_tx_arr + 4), justice_tx_var.data, justice_tx_var.datalen); - Transaction_free(justice_tx_var); - int8_tArray per_commitment_key_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(per_commitment_key_arr + 4), *per_commitment_key, 32); - uint32_t ret = js_invoke_function_4(j_calls->sign_justice_revoked_output_meth, justice_tx_arr, input, amount, per_commitment_key_arr); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_SignatureNoneZ ret_conv = *(LDKCResult_SignatureNoneZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; -} -LDKCResult_SignatureNoneZ sign_justice_revoked_htlc_LDKBaseSign_jcall(const void* this_arg, LDKTransaction justice_tx, uintptr_t input, uint64_t amount, const uint8_t (* per_commitment_key)[32], const LDKHTLCOutputInCommitment * htlc) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; - LDKTransaction justice_tx_var = justice_tx; - int8_tArray justice_tx_arr = init_arr(justice_tx_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(justice_tx_arr + 4), justice_tx_var.data, justice_tx_var.datalen); - Transaction_free(justice_tx_var); - int8_tArray per_commitment_key_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(per_commitment_key_arr + 4), *per_commitment_key, 32); - LDKHTLCOutputInCommitment htlc_var = *htlc; - uint64_t htlc_ref = 0; - htlc_var = HTLCOutputInCommitment_clone(htlc); - CHECK((((uint64_t)htlc_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&htlc_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_var); - htlc_ref = (uint64_t)htlc_var.inner; - if (htlc_var.is_owned) { - htlc_ref |= 1; - } - uint32_t ret = js_invoke_function_5(j_calls->sign_justice_revoked_htlc_meth, justice_tx_arr, input, amount, per_commitment_key_arr, htlc_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_SignatureNoneZ ret_conv = *(LDKCResult_SignatureNoneZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; -} -LDKCResult_SignatureNoneZ sign_counterparty_htlc_transaction_LDKBaseSign_jcall(const void* this_arg, LDKTransaction htlc_tx, uintptr_t input, uint64_t amount, LDKPublicKey per_commitment_point, const LDKHTLCOutputInCommitment * htlc) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; - LDKTransaction htlc_tx_var = htlc_tx; - int8_tArray htlc_tx_arr = init_arr(htlc_tx_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(htlc_tx_arr + 4), htlc_tx_var.data, htlc_tx_var.datalen); - Transaction_free(htlc_tx_var); - int8_tArray per_commitment_point_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(per_commitment_point_arr + 4), per_commitment_point.compressed_form, 33); - LDKHTLCOutputInCommitment htlc_var = *htlc; - uint64_t htlc_ref = 0; - htlc_var = HTLCOutputInCommitment_clone(htlc); - CHECK((((uint64_t)htlc_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&htlc_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_var); - htlc_ref = (uint64_t)htlc_var.inner; - if (htlc_var.is_owned) { - htlc_ref |= 1; - } - uint32_t ret = js_invoke_function_5(j_calls->sign_counterparty_htlc_transaction_meth, htlc_tx_arr, input, amount, per_commitment_point_arr, htlc_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_SignatureNoneZ ret_conv = *(LDKCResult_SignatureNoneZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; -} -LDKCResult_SignatureNoneZ sign_closing_transaction_LDKBaseSign_jcall(const void* this_arg, const LDKClosingTransaction * closing_tx) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; - LDKClosingTransaction closing_tx_var = *closing_tx; - uint64_t closing_tx_ref = 0; - closing_tx_var = ClosingTransaction_clone(closing_tx); - CHECK((((uint64_t)closing_tx_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&closing_tx_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(closing_tx_var); - closing_tx_ref = (uint64_t)closing_tx_var.inner; - if (closing_tx_var.is_owned) { - closing_tx_ref |= 1; - } - uint32_t ret = js_invoke_function_1(j_calls->sign_closing_transaction_meth, closing_tx_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_SignatureNoneZ ret_conv = *(LDKCResult_SignatureNoneZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; -} -LDKCResult_SignatureNoneZ sign_channel_announcement_LDKBaseSign_jcall(const void* this_arg, const LDKUnsignedChannelAnnouncement * msg) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; - LDKUnsignedChannelAnnouncement msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = UnsignedChannelAnnouncement_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - uint32_t ret = js_invoke_function_1(j_calls->sign_channel_announcement_meth, msg_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_SignatureNoneZ ret_conv = *(LDKCResult_SignatureNoneZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; -} -void ready_channel_LDKBaseSign_jcall(void* this_arg, const LDKChannelTransactionParameters * channel_parameters) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; - LDKChannelTransactionParameters channel_parameters_var = *channel_parameters; - uint64_t channel_parameters_ref = 0; - channel_parameters_var = ChannelTransactionParameters_clone(channel_parameters); - CHECK((((uint64_t)channel_parameters_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&channel_parameters_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_parameters_var); - channel_parameters_ref = (uint64_t)channel_parameters_var.inner; - if (channel_parameters_var.is_owned) { - channel_parameters_ref |= 1; - } - js_invoke_function_1(j_calls->ready_channel_meth, channel_parameters_ref); -} -static void LDKBaseSign_JCalls_cloned(LDKBaseSign* new_obj) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); -} -static inline LDKBaseSign LDKBaseSign_init (/*TODO: JS Object Reference */void* o, uint32_t pubkeys) { - LDKBaseSign_JCalls *calls = MALLOC(sizeof(LDKBaseSign_JCalls), "LDKBaseSign_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - - LDKChannelPublicKeys pubkeys_conv; - pubkeys_conv.inner = (void*)(pubkeys & (~1)); - pubkeys_conv.is_owned = (pubkeys & 1) || (pubkeys == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(pubkeys_conv); - - LDKBaseSign ret = { - .this_arg = (void*) calls, - .get_per_commitment_point = get_per_commitment_point_LDKBaseSign_jcall, - .release_commitment_secret = release_commitment_secret_LDKBaseSign_jcall, - .validate_holder_commitment = validate_holder_commitment_LDKBaseSign_jcall, - .channel_keys_id = channel_keys_id_LDKBaseSign_jcall, - .sign_counterparty_commitment = sign_counterparty_commitment_LDKBaseSign_jcall, - .validate_counterparty_revocation = validate_counterparty_revocation_LDKBaseSign_jcall, - .sign_holder_commitment_and_htlcs = sign_holder_commitment_and_htlcs_LDKBaseSign_jcall, - .sign_justice_revoked_output = sign_justice_revoked_output_LDKBaseSign_jcall, - .sign_justice_revoked_htlc = sign_justice_revoked_htlc_LDKBaseSign_jcall, - .sign_counterparty_htlc_transaction = sign_counterparty_htlc_transaction_LDKBaseSign_jcall, - .sign_closing_transaction = sign_closing_transaction_LDKBaseSign_jcall, - .sign_channel_announcement = sign_channel_announcement_LDKBaseSign_jcall, - .ready_channel = ready_channel_LDKBaseSign_jcall, - .free = LDKBaseSign_JCalls_free, - .pubkeys = pubkeys_conv, - .set_pubkeys = NULL, - }; - return ret; -} -long __attribute__((visibility("default"))) TS_LDKBaseSign_new(/*TODO: JS Object Reference */void* o, uint32_t pubkeys) { - LDKBaseSign *res_ptr = MALLOC(sizeof(LDKBaseSign), "LDKBaseSign"); - *res_ptr = LDKBaseSign_init(o, pubkeys); - return (long)res_ptr; -} -int8_tArray __attribute__((visibility("default"))) TS_BaseSign_get_per_commitment_point(uint32_t this_arg, int64_t idx) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), (this_arg_conv->get_per_commitment_point)(this_arg_conv->this_arg, idx).compressed_form, 33); - return ret_arr; -} - -int8_tArray __attribute__((visibility("default"))) TS_BaseSign_release_commitment_secret(uint32_t this_arg, int64_t idx) { +int16_t __attribute__((visibility("default"))) TS_Type_type_id(uint32_t this_arg) { void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), (this_arg_conv->release_commitment_secret)(this_arg_conv->this_arg, idx).data, 32); - return ret_arr; + LDKType* this_arg_conv = (LDKType*)this_arg_ptr; + int16_t ret_val = (this_arg_conv->type_id)(this_arg_conv->this_arg); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_BaseSign_validate_holder_commitment(uint32_t this_arg, uint32_t holder_tx) { +jstring __attribute__((visibility("default"))) TS_Type_debug_str(uint32_t this_arg) { void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - LDKHolderCommitmentTransaction holder_tx_conv; - holder_tx_conv.inner = (void*)(holder_tx & (~1)); - holder_tx_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(holder_tx_conv); - LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); - *ret_conv = (this_arg_conv->validate_holder_commitment)(this_arg_conv->this_arg, &holder_tx_conv); - return (uint64_t)ret_conv; + LDKType* this_arg_conv = (LDKType*)this_arg_ptr; + LDKStr ret_str = (this_arg_conv->debug_str)(this_arg_conv->this_arg); + jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); + Str_free(ret_str); + return ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_BaseSign_channel_keys_id(uint32_t this_arg) { +int8_tArray __attribute__((visibility("default"))) TS_Type_write(uint32_t this_arg) { void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), (this_arg_conv->channel_keys_id)(this_arg_conv->this_arg).data, 32); + LDKType* this_arg_conv = (LDKType*)this_arg_ptr; + LDKCVec_u8Z ret_var = (this_arg_conv->write)(this_arg_conv->this_arg); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_counterparty_commitment(uint32_t this_arg, uint32_t commitment_tx) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - LDKCommitmentTransaction commitment_tx_conv; - commitment_tx_conv.inner = (void*)(commitment_tx & (~1)); - commitment_tx_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_conv); - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ), "LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ"); - *ret_conv = (this_arg_conv->sign_counterparty_commitment)(this_arg_conv->this_arg, &commitment_tx_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_LDKCOption_TypeZ_ref_from_ptr(uint32_t ptr) { + LDKCOption_TypeZ *obj = (LDKCOption_TypeZ*)(ptr & ~1); + switch(obj->tag) { + case LDKCOption_TypeZ_Some: { + LDKType* some_ret = MALLOC(sizeof(LDKType), "LDKType"); + *some_ret = Type_clone(&obj->some); + return 0 /* LDKCOption_TypeZ - Some */; (void) (uint64_t)some_ret; + } + case LDKCOption_TypeZ_None: { + return 0 /* LDKCOption_TypeZ - None */; + } + default: abort(); + } +} +static inline struct LDKCOption_TypeZ CResult_COption_TypeZDecodeErrorZ_get_ok(LDKCResult_COption_TypeZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return COption_TypeZ_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_COption_TypeZDecodeErrorZ* owner_conv = (LDKCResult_COption_TypeZDecodeErrorZ*)(owner & ~1); + LDKCOption_TypeZ *ret_copy = MALLOC(sizeof(LDKCOption_TypeZ), "LDKCOption_TypeZ"); + *ret_copy = CResult_COption_TypeZDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_BaseSign_validate_counterparty_revocation(uint32_t this_arg, int64_t idx, int8_tArray secret) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - unsigned char secret_arr[32]; - CHECK(*((uint32_t*)secret) == 32); - memcpy(secret_arr, (uint8_t*)(secret + 4), 32); - unsigned char (*secret_ref)[32] = &secret_arr; - LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); - *ret_conv = (this_arg_conv->validate_counterparty_revocation)(this_arg_conv->this_arg, idx, secret_ref); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_COption_TypeZDecodeErrorZ_get_err(LDKCResult_COption_TypeZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_COption_TypeZDecodeErrorZ* owner_conv = (LDKCResult_COption_TypeZDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_COption_TypeZDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_holder_commitment_and_htlcs(uint32_t this_arg, uint32_t commitment_tx) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - LDKHolderCommitmentTransaction commitment_tx_conv; - commitment_tx_conv.inner = (void*)(commitment_tx & (~1)); - commitment_tx_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_conv); - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ), "LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ"); - *ret_conv = (this_arg_conv->sign_holder_commitment_and_htlcs)(this_arg_conv->this_arg, &commitment_tx_conv); - return (uint64_t)ret_conv; +static inline struct LDKStr CResult_StringErrorZ_get_ok(LDKCResult_StringErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; +} +jstring __attribute__((visibility("default"))) TS_CResult_StringErrorZ_get_ok(uint32_t owner) { + LDKCResult_StringErrorZ* owner_conv = (LDKCResult_StringErrorZ*)(owner & ~1); + LDKStr ret_str = CResult_StringErrorZ_get_ok(owner_conv); + jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); + Str_free(ret_str); + return ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_justice_revoked_output(uint32_t this_arg, int8_tArray justice_tx, int64_t input, int64_t amount, int8_tArray per_commitment_key) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - LDKTransaction justice_tx_ref; - justice_tx_ref.datalen = *((uint32_t*)justice_tx); - justice_tx_ref.data = MALLOC(justice_tx_ref.datalen, "LDKTransaction Bytes"); - memcpy(justice_tx_ref.data, (uint8_t*)(justice_tx + 4), justice_tx_ref.datalen); - justice_tx_ref.data_is_owned = true; - unsigned char per_commitment_key_arr[32]; - CHECK(*((uint32_t*)per_commitment_key) == 32); - memcpy(per_commitment_key_arr, (uint8_t*)(per_commitment_key + 4), 32); - unsigned char (*per_commitment_key_ref)[32] = &per_commitment_key_arr; - LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); - *ret_conv = (this_arg_conv->sign_justice_revoked_output)(this_arg_conv->this_arg, justice_tx_ref, input, amount, per_commitment_key_ref); - return (uint64_t)ret_conv; +static inline enum LDKSecp256k1Error CResult_StringErrorZ_get_err(LDKCResult_StringErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; +} +uint32_t __attribute__((visibility("default"))) TS_CResult_StringErrorZ_get_err(uint32_t owner) { + LDKCResult_StringErrorZ* owner_conv = (LDKCResult_StringErrorZ*)(owner & ~1); + uint32_t ret_conv = LDKSecp256k1Error_to_js(CResult_StringErrorZ_get_err(owner_conv)); + return ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_justice_revoked_htlc(uint32_t this_arg, int8_tArray justice_tx, int64_t input, int64_t amount, int8_tArray per_commitment_key, uint32_t htlc) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - LDKTransaction justice_tx_ref; - justice_tx_ref.datalen = *((uint32_t*)justice_tx); - justice_tx_ref.data = MALLOC(justice_tx_ref.datalen, "LDKTransaction Bytes"); - memcpy(justice_tx_ref.data, (uint8_t*)(justice_tx + 4), justice_tx_ref.datalen); - justice_tx_ref.data_is_owned = true; - unsigned char per_commitment_key_arr[32]; - CHECK(*((uint32_t*)per_commitment_key) == 32); - memcpy(per_commitment_key_arr, (uint8_t*)(per_commitment_key + 4), 32); - unsigned char (*per_commitment_key_ref)[32] = &per_commitment_key_arr; - LDKHTLCOutputInCommitment htlc_conv; - htlc_conv.inner = (void*)(htlc & (~1)); - htlc_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_conv); - LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); - *ret_conv = (this_arg_conv->sign_justice_revoked_htlc)(this_arg_conv->this_arg, justice_tx_ref, input, amount, per_commitment_key_ref, &htlc_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_counterparty_htlc_transaction(uint32_t this_arg, int8_tArray htlc_tx, int64_t input, int64_t amount, int8_tArray per_commitment_point, uint32_t htlc) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - LDKTransaction htlc_tx_ref; - htlc_tx_ref.datalen = *((uint32_t*)htlc_tx); - htlc_tx_ref.data = MALLOC(htlc_tx_ref.datalen, "LDKTransaction Bytes"); - memcpy(htlc_tx_ref.data, (uint8_t*)(htlc_tx + 4), htlc_tx_ref.datalen); - htlc_tx_ref.data_is_owned = true; - LDKPublicKey per_commitment_point_ref; - CHECK(*((uint32_t*)per_commitment_point) == 33); - memcpy(per_commitment_point_ref.compressed_form, (uint8_t*)(per_commitment_point + 4), 33); - LDKHTLCOutputInCommitment htlc_conv; - htlc_conv.inner = (void*)(htlc & (~1)); - htlc_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_conv); - LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); - *ret_conv = (this_arg_conv->sign_counterparty_htlc_transaction)(this_arg_conv->this_arg, htlc_tx_ref, input, amount, per_commitment_point_ref, &htlc_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_closing_transaction(uint32_t this_arg, uint32_t closing_tx) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - LDKClosingTransaction closing_tx_conv; - closing_tx_conv.inner = (void*)(closing_tx & (~1)); - closing_tx_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(closing_tx_conv); - LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); - *ret_conv = (this_arg_conv->sign_closing_transaction)(this_arg_conv->this_arg, &closing_tx_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_channel_announcement(uint32_t this_arg, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - LDKUnsignedChannelAnnouncement msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); - *ret_conv = (this_arg_conv->sign_channel_announcement)(this_arg_conv->this_arg, &msg_conv); - return (uint64_t)ret_conv; +static inline struct LDKChannelMonitorUpdate CResult_ChannelMonitorUpdateDecodeErrorZ_get_ok(LDKCResult_ChannelMonitorUpdateDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ChannelMonitorUpdate_clone(&*owner->contents.result); } - -void __attribute__((visibility("default"))) TS_BaseSign_ready_channel(uint32_t this_arg, uint32_t channel_parameters) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - LDKChannelTransactionParameters channel_parameters_conv; - channel_parameters_conv.inner = (void*)(channel_parameters & (~1)); - channel_parameters_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_parameters_conv); - (this_arg_conv->ready_channel)(this_arg_conv->this_arg, &channel_parameters_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ChannelMonitorUpdateDecodeErrorZ* owner_conv = (LDKCResult_ChannelMonitorUpdateDecodeErrorZ*)(owner & ~1); + LDKChannelMonitorUpdate ret_var = CResult_ChannelMonitorUpdateDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -LDKChannelPublicKeys LDKBaseSign_set_get_pubkeys(LDKBaseSign* this_arg) { - if (this_arg->set_pubkeys != NULL) - this_arg->set_pubkeys(this_arg); - return this_arg->pubkeys; +static inline struct LDKDecodeError CResult_ChannelMonitorUpdateDecodeErrorZ_get_err(LDKCResult_ChannelMonitorUpdateDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -uint32_t __attribute__((visibility("default"))) TS_BaseSign_get_pubkeys(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - LDKChannelPublicKeys ret_var = LDKBaseSign_set_get_pubkeys(this_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ChannelMonitorUpdateDecodeErrorZ* owner_conv = (LDKCResult_ChannelMonitorUpdateDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ChannelMonitorUpdateDecodeErrorZ_get_err(owner_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -2337,184 +1002,151 @@ uint32_t __attribute__((visibility("default"))) TS_BaseSign_get_pubkeys(uint32_ return ret_ref; } -typedef struct LDKSign_JCalls { - atomic_size_t refcnt; - LDKBaseSign_JCalls* BaseSign; - uint32_t write_meth; -} LDKSign_JCalls; -static void LDKSign_JCalls_free(void* this_arg) { - LDKSign_JCalls *j_calls = (LDKSign_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->write_meth); - FREE(j_calls); +uint32_t __attribute__((visibility("default"))) TS_LDKMonitorEvent_ref_from_ptr(uint32_t ptr) { + LDKMonitorEvent *obj = (LDKMonitorEvent*)(ptr & ~1); + switch(obj->tag) { + case LDKMonitorEvent_HTLCEvent: { + LDKHTLCUpdate htlc_event_var = obj->htlc_event; + uint64_t htlc_event_ref = 0; + CHECK((((uint64_t)htlc_event_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&htlc_event_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_event_var); + htlc_event_ref = (uint64_t)htlc_event_var.inner & ~1; + return 0 /* LDKMonitorEvent - HTLCEvent */; (void) htlc_event_ref; + } + case LDKMonitorEvent_CommitmentTxConfirmed: { + LDKOutPoint commitment_tx_confirmed_var = obj->commitment_tx_confirmed; + uint64_t commitment_tx_confirmed_ref = 0; + CHECK((((uint64_t)commitment_tx_confirmed_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&commitment_tx_confirmed_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_confirmed_var); + commitment_tx_confirmed_ref = (uint64_t)commitment_tx_confirmed_var.inner & ~1; + return 0 /* LDKMonitorEvent - CommitmentTxConfirmed */; (void) commitment_tx_confirmed_ref; + } + case LDKMonitorEvent_UpdateCompleted: { + LDKOutPoint funding_txo_var = obj->update_completed.funding_txo; + uint64_t funding_txo_ref = 0; + CHECK((((uint64_t)funding_txo_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&funding_txo_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_var); + funding_txo_ref = (uint64_t)funding_txo_var.inner & ~1; + return 0 /* LDKMonitorEvent - UpdateCompleted */; (void) funding_txo_ref; (void) obj->update_completed.monitor_update_id; + } + case LDKMonitorEvent_UpdateFailed: { + LDKOutPoint update_failed_var = obj->update_failed; + uint64_t update_failed_ref = 0; + CHECK((((uint64_t)update_failed_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&update_failed_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_failed_var); + update_failed_ref = (uint64_t)update_failed_var.inner & ~1; + return 0 /* LDKMonitorEvent - UpdateFailed */; (void) update_failed_ref; + } + default: abort(); } } -LDKCVec_u8Z write_LDKSign_jcall(const void* this_arg) { - LDKSign_JCalls *j_calls = (LDKSign_JCalls*) this_arg; - int8_tArray ret = js_invoke_function_0(j_calls->write_meth); - LDKCVec_u8Z ret_ref; - ret_ref.datalen = *((uint32_t*)ret); - ret_ref.data = MALLOC(ret_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(ret_ref.data, (uint8_t*)(ret + 4), ret_ref.datalen); - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_LDKCOption_MonitorEventZ_ref_from_ptr(uint32_t ptr) { + LDKCOption_MonitorEventZ *obj = (LDKCOption_MonitorEventZ*)(ptr & ~1); + switch(obj->tag) { + case LDKCOption_MonitorEventZ_Some: { + uint64_t some_ref = ((uint64_t)&obj->some) | 1; + return 0 /* LDKCOption_MonitorEventZ - Some */; (void) some_ref; + } + case LDKCOption_MonitorEventZ_None: { + return 0 /* LDKCOption_MonitorEventZ - None */; + } + default: abort(); + } } -static void LDKSign_JCalls_cloned(LDKSign* new_obj) { - LDKSign_JCalls *j_calls = (LDKSign_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); - atomic_fetch_add_explicit(&j_calls->BaseSign->refcnt, 1, memory_order_release); +static inline struct LDKCOption_MonitorEventZ CResult_COption_MonitorEventZDecodeErrorZ_get_ok(LDKCResult_COption_MonitorEventZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return COption_MonitorEventZ_clone(&*owner->contents.result); } -static inline LDKSign LDKSign_init (/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */void* BaseSign, uint32_t pubkeys) { - LDKSign_JCalls *calls = MALLOC(sizeof(LDKSign_JCalls), "LDKSign_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - - LDKChannelPublicKeys pubkeys_conv; - pubkeys_conv.inner = (void*)(pubkeys & (~1)); - pubkeys_conv.is_owned = (pubkeys & 1) || (pubkeys == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(pubkeys_conv); - - LDKSign ret = { - .this_arg = (void*) calls, - .write = write_LDKSign_jcall, - .cloned = LDKSign_JCalls_cloned, - .free = LDKSign_JCalls_free, - .BaseSign = LDKBaseSign_init(BaseSign, pubkeys), - }; - calls->BaseSign = ret.BaseSign.this_arg; - return ret; +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_COption_MonitorEventZDecodeErrorZ* owner_conv = (LDKCResult_COption_MonitorEventZDecodeErrorZ*)(owner & ~1); + LDKCOption_MonitorEventZ *ret_copy = MALLOC(sizeof(LDKCOption_MonitorEventZ), "LDKCOption_MonitorEventZ"); + *ret_copy = CResult_COption_MonitorEventZDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -long __attribute__((visibility("default"))) TS_LDKSign_new(/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */ void* BaseSign, uint32_t pubkeys) { - LDKSign *res_ptr = MALLOC(sizeof(LDKSign), "LDKSign"); - *res_ptr = LDKSign_init(o, BaseSign, pubkeys); - return (long)res_ptr; + +static inline struct LDKDecodeError CResult_COption_MonitorEventZDecodeErrorZ_get_err(LDKCResult_COption_MonitorEventZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -int8_tArray __attribute__((visibility("default"))) TS_Sign_write(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKSign* this_arg_conv = (LDKSign*)this_arg_ptr; - LDKCVec_u8Z ret_var = (this_arg_conv->write)(this_arg_conv->this_arg); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_COption_MonitorEventZDecodeErrorZ* owner_conv = (LDKCResult_COption_MonitorEventZDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_COption_MonitorEventZDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_SignDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_SignDecodeErrorZ *val = (LDKCResult_SignDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKSign* res_ret = MALLOC(sizeof(LDKSign), "LDKSign"); - *res_ret = Sign_clone(&(*val->contents.result)); - return (uint64_t)res_ret; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_SignDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_SignDecodeErrorZ *val = (LDKCResult_SignDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -int8_tArray __attribute__((visibility("default"))) TS_LDKCResult_RecoverableSignatureNoneZ_get_ok(uint32_t arg) { - LDKCResult_RecoverableSignatureNoneZ *val = (LDKCResult_RecoverableSignatureNoneZ*)(arg & ~1); - CHECK(val->result_ok); - int8_tArray es_arr = init_arr(68, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(es_arr + 4), (*val->contents.result).serialized_form, 68); - return es_arr; -} -void __attribute__((visibility("default"))) TS_LDKCResult_RecoverableSignatureNoneZ_get_err(uint32_t arg) { - LDKCResult_RecoverableSignatureNoneZ *val = (LDKCResult_RecoverableSignatureNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; +static inline struct LDKHTLCUpdate CResult_HTLCUpdateDecodeErrorZ_get_ok(LDKCResult_HTLCUpdateDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return HTLCUpdate_clone(&*owner->contents.result); } -static inline LDKCVec_CVec_u8ZZ CVec_CVec_u8ZZ_clone(const LDKCVec_CVec_u8ZZ *orig) { - LDKCVec_CVec_u8ZZ ret = { .data = MALLOC(sizeof(LDKCVec_u8Z) * orig->datalen, "LDKCVec_CVec_u8ZZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = CVec_u8Z_clone(&orig->data[i]); +uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_HTLCUpdateDecodeErrorZ* owner_conv = (LDKCResult_HTLCUpdateDecodeErrorZ*)(owner & ~1); + LDKHTLCUpdate ret_var = CResult_HTLCUpdateDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; + return ret_ref; } -ptrArray __attribute__((visibility("default"))) TS_LDKCResult_CVec_CVec_u8ZZNoneZ_get_ok(uint32_t arg) { - LDKCResult_CVec_CVec_u8ZZNoneZ *val = (LDKCResult_CVec_CVec_u8ZZNoneZ*)(arg & ~1); - CHECK(val->result_ok); - LDKCVec_CVec_u8ZZ res_var = (*val->contents.result); - ptrArray res_arr = NULL; - res_arr = init_arr(res_var.datalen, sizeof(uint32_t), "Native ptrArray Bytes"); - int8_tArray *res_arr_ptr = (int8_tArray*)(res_arr + 4); - for (size_t m = 0; m < res_var.datalen; m++) { - LDKCVec_u8Z res_conv_12_var = res_var.data[m]; - int8_tArray res_conv_12_arr = init_arr(res_conv_12_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(res_conv_12_arr + 4), res_conv_12_var.data, res_conv_12_var.datalen); - res_arr_ptr[m] = res_conv_12_arr; - } - - return res_arr; -} -void __attribute__((visibility("default"))) TS_LDKCResult_CVec_CVec_u8ZZNoneZ_get_err(uint32_t arg) { - LDKCResult_CVec_CVec_u8ZZNoneZ *val = (LDKCResult_CVec_CVec_u8ZZNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_InMemorySignerDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_InMemorySignerDecodeErrorZ *val = (LDKCResult_InMemorySignerDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKInMemorySigner res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_InMemorySignerDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_InMemorySignerDecodeErrorZ *val = (LDKCResult_InMemorySignerDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; + +static inline struct LDKDecodeError CResult_HTLCUpdateDecodeErrorZ_get_err(LDKCResult_HTLCUpdateDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -static inline LDKCVec_TxOutZ CVec_TxOutZ_clone(const LDKCVec_TxOutZ *orig) { - LDKCVec_TxOutZ ret = { .data = MALLOC(sizeof(LDKTxOut) * orig->datalen, "LDKCVec_TxOutZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = TxOut_clone(&orig->data[i]); +uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_HTLCUpdateDecodeErrorZ* owner_conv = (LDKCResult_HTLCUpdateDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_HTLCUpdateDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_LDKCResult_TransactionNoneZ_get_ok(uint32_t arg) { - LDKCResult_TransactionNoneZ *val = (LDKCResult_TransactionNoneZ*)(arg & ~1); - CHECK(val->result_ok); - LDKTransaction res_var = (*val->contents.result); - int8_tArray res_arr = init_arr(res_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(res_arr + 4), res_var.data, res_var.datalen); - return res_arr; + +static inline void CResult_NoneNoneZ_get_ok(LDKCResult_NoneNoneZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; } -void __attribute__((visibility("default"))) TS_LDKCResult_TransactionNoneZ_get_err(uint32_t arg) { - LDKCResult_TransactionNoneZ *val = (LDKCResult_TransactionNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; +void __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_get_ok(uint32_t owner) { + LDKCResult_NoneNoneZ* owner_conv = (LDKCResult_NoneNoneZ*)(owner & ~1); + CResult_NoneNoneZ_get_ok(owner_conv); } -static inline struct LDKThirtyTwoBytes C2Tuple_BlockHashChannelMonitorZ_get_a(LDKC2Tuple_BlockHashChannelMonitorZ *NONNULL_PTR tuple){ - return ThirtyTwoBytes_clone(&tuple->a); + +static inline void CResult_NoneNoneZ_get_err(LDKCResult_NoneNoneZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; } -int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_get_a(uint32_t tuple) { - LDKC2Tuple_BlockHashChannelMonitorZ* tuple_conv = (LDKC2Tuple_BlockHashChannelMonitorZ*)(tuple & ~1); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), C2Tuple_BlockHashChannelMonitorZ_get_a(tuple_conv).data, 32); - return ret_arr; +void __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_get_err(uint32_t owner) { + LDKCResult_NoneNoneZ* owner_conv = (LDKCResult_NoneNoneZ*)(owner & ~1); + CResult_NoneNoneZ_get_err(owner_conv); } -static inline struct LDKChannelMonitor C2Tuple_BlockHashChannelMonitorZ_get_b(LDKC2Tuple_BlockHashChannelMonitorZ *NONNULL_PTR tuple){ - return ChannelMonitor_clone(&tuple->b); +static inline struct LDKOutPoint C2Tuple_OutPointScriptZ_get_a(LDKC2Tuple_OutPointScriptZ *NONNULL_PTR owner){ + return OutPoint_clone(&owner->a); } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_get_b(uint32_t tuple) { - LDKC2Tuple_BlockHashChannelMonitorZ* tuple_conv = (LDKC2Tuple_BlockHashChannelMonitorZ*)(tuple & ~1); - LDKChannelMonitor ret_var = C2Tuple_BlockHashChannelMonitorZ_get_b(tuple_conv); +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_OutPointScriptZ_get_a(uint32_t owner) { + LDKC2Tuple_OutPointScriptZ* owner_conv = (LDKC2Tuple_OutPointScriptZ*)(owner & ~1); + LDKOutPoint ret_var = C2Tuple_OutPointScriptZ_get_a(owner_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -2526,1186 +1158,1103 @@ uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMoni return ret_ref; } -static inline LDKCVec_C2Tuple_BlockHashChannelMonitorZZ CVec_C2Tuple_BlockHashChannelMonitorZZ_clone(const LDKCVec_C2Tuple_BlockHashChannelMonitorZZ *orig) { - LDKCVec_C2Tuple_BlockHashChannelMonitorZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_BlockHashChannelMonitorZ) * orig->datalen, "LDKCVec_C2Tuple_BlockHashChannelMonitorZZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = C2Tuple_BlockHashChannelMonitorZ_clone(&orig->data[i]); - } - return ret; +static inline struct LDKCVec_u8Z C2Tuple_OutPointScriptZ_get_b(LDKC2Tuple_OutPointScriptZ *NONNULL_PTR owner){ + return CVec_u8Z_clone(&owner->b); } -uint32_tArray __attribute__((visibility("default"))) TS_LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_get_ok(uint32_t arg) { - LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ *val = (LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKCVec_C2Tuple_BlockHashChannelMonitorZZ res_var = (*val->contents.result); - uint32_tArray res_arr = NULL; - res_arr = init_arr(res_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *res_arr_ptr = (uint32_t*)(res_arr + 4); - for (size_t j = 0; j < res_var.datalen; j++) { - LDKC2Tuple_BlockHashChannelMonitorZ* res_conv_35_conv = MALLOC(sizeof(LDKC2Tuple_BlockHashChannelMonitorZ), "LDKC2Tuple_BlockHashChannelMonitorZ"); - *res_conv_35_conv = res_var.data[j]; - *res_conv_35_conv = C2Tuple_BlockHashChannelMonitorZ_clone(res_conv_35_conv); - res_arr_ptr[j] = ((uint64_t)res_conv_35_conv); - } - - return res_arr; +int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_OutPointScriptZ_get_b(uint32_t owner) { + LDKC2Tuple_OutPointScriptZ* owner_conv = (LDKC2Tuple_OutPointScriptZ*)(owner & ~1); + LDKCVec_u8Z ret_var = C2Tuple_OutPointScriptZ_get_b(owner_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_get_err(uint32_t arg) { - LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ *val = (LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKIOError_to_js((*val->contents.err)); - return err_conv; + +static inline uint32_t C2Tuple_u32ScriptZ_get_a(LDKC2Tuple_u32ScriptZ *NONNULL_PTR owner){ + return owner->a; } -uint32_t __attribute__((visibility("default"))) TS_LDKCOption_u16Z_ref_from_ptr(uint32_t ptr) { - LDKCOption_u16Z *obj = (LDKCOption_u16Z*)(ptr & ~1); - switch(obj->tag) { - case LDKCOption_u16Z_Some: { - return 0 /* LDKCOption_u16Z - Some */; (void) obj->some; - } - case LDKCOption_u16Z_None: { - return 0 /* LDKCOption_u16Z - None */; - } - default: abort(); - } +int32_t __attribute__((visibility("default"))) TS_C2Tuple_u32ScriptZ_get_a(uint32_t owner) { + LDKC2Tuple_u32ScriptZ* owner_conv = (LDKC2Tuple_u32ScriptZ*)(owner & ~1); + int32_t ret_val = C2Tuple_u32ScriptZ_get_a(owner_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_LDKAPIError_ref_from_ptr(uint32_t ptr) { - LDKAPIError *obj = (LDKAPIError*)(ptr & ~1); - switch(obj->tag) { - case LDKAPIError_APIMisuseError: { - LDKStr err_str = obj->api_misuse_error.err; - jstring err_conv = str_ref_to_ts(err_str.chars, err_str.len); - return 0 /* LDKAPIError - APIMisuseError */; (void) err_conv; - } - case LDKAPIError_FeeRateTooHigh: { - LDKStr err_str = obj->fee_rate_too_high.err; - jstring err_conv = str_ref_to_ts(err_str.chars, err_str.len); - return 0 /* LDKAPIError - FeeRateTooHigh */; (void) err_conv; (void) obj->fee_rate_too_high.feerate; - } - case LDKAPIError_RouteError: { - LDKStr err_str = obj->route_error.err; - jstring err_conv = str_ref_to_ts(err_str.chars, err_str.len); - return 0 /* LDKAPIError - RouteError */; (void) err_conv; - } - case LDKAPIError_ChannelUnavailable: { - LDKStr err_str = obj->channel_unavailable.err; - jstring err_conv = str_ref_to_ts(err_str.chars, err_str.len); - return 0 /* LDKAPIError - ChannelUnavailable */; (void) err_conv; - } - case LDKAPIError_MonitorUpdateFailed: { - return 0 /* LDKAPIError - MonitorUpdateFailed */; - } - case LDKAPIError_IncompatibleShutdownScript: { - LDKShutdownScript script_var = obj->incompatible_shutdown_script.script; - uint64_t script_ref = 0; - CHECK((((uint64_t)script_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&script_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(script_var); - script_ref = (uint64_t)script_var.inner & ~1; - return 0 /* LDKAPIError - IncompatibleShutdownScript */; (void) script_ref; - } - default: abort(); - } + +static inline struct LDKCVec_u8Z C2Tuple_u32ScriptZ_get_b(LDKC2Tuple_u32ScriptZ *NONNULL_PTR owner){ + return CVec_u8Z_clone(&owner->b); } -void __attribute__((visibility("default"))) TS_LDKCResult_NoneAPIErrorZ_get_ok(uint32_t arg) { - LDKCResult_NoneAPIErrorZ *val = (LDKCResult_NoneAPIErrorZ*)(arg & ~1); - CHECK(val->result_ok); - return *val->contents.result; +int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_u32ScriptZ_get_b(uint32_t owner) { + LDKC2Tuple_u32ScriptZ* owner_conv = (LDKC2Tuple_u32ScriptZ*)(owner & ~1); + LDKCVec_u8Z ret_var = C2Tuple_u32ScriptZ_get_b(owner_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NoneAPIErrorZ_get_err(uint32_t arg) { - LDKCResult_NoneAPIErrorZ *val = (LDKCResult_NoneAPIErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint64_t err_ref = ((uint64_t)&(*val->contents.err)) | 1; - return err_ref; + +static inline struct LDKThirtyTwoBytes C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_a(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ *NONNULL_PTR owner){ + return ThirtyTwoBytes_clone(&owner->a); } -static inline LDKCVec_CResult_NoneAPIErrorZZ CVec_CResult_NoneAPIErrorZZ_clone(const LDKCVec_CResult_NoneAPIErrorZZ *orig) { - LDKCVec_CResult_NoneAPIErrorZZ ret = { .data = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ) * orig->datalen, "LDKCVec_CResult_NoneAPIErrorZZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = CResult_NoneAPIErrorZ_clone(&orig->data[i]); +int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_a(uint32_t owner) { + LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* owner_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_a(owner_conv).data, 32); + return ret_arr; +} + +static inline struct LDKCVec_C2Tuple_u32ScriptZZ C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_b(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ *NONNULL_PTR owner){ + return owner->b; +} +uint32_tArray __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_b(uint32_t owner) { + LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* owner_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ*)(owner & ~1); + LDKCVec_C2Tuple_u32ScriptZZ ret_var = C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_b(owner_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t v = 0; v < ret_var.datalen; v++) { + LDKC2Tuple_u32ScriptZ* ret_conv_21_conv = MALLOC(sizeof(LDKC2Tuple_u32ScriptZ), "LDKC2Tuple_u32ScriptZ"); + *ret_conv_21_conv = ret_var.data[v]; + ret_arr_ptr[v] = ((uint64_t)ret_conv_21_conv); } - return ret; + + FREE(ret_var.data); + return ret_arr; } -static inline LDKCVec_APIErrorZ CVec_APIErrorZ_clone(const LDKCVec_APIErrorZ *orig) { - LDKCVec_APIErrorZ ret = { .data = MALLOC(sizeof(LDKAPIError) * orig->datalen, "LDKCVec_APIErrorZ clone bytes"), .datalen = orig->datalen }; + +static inline LDKCVec_MonitorEventZ CVec_MonitorEventZ_clone(const LDKCVec_MonitorEventZ *orig) { + LDKCVec_MonitorEventZ ret = { .data = MALLOC(sizeof(LDKMonitorEvent) * orig->datalen, "LDKCVec_MonitorEventZ clone bytes"), .datalen = orig->datalen }; for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = APIError_clone(&orig->data[i]); + ret.data[i] = MonitorEvent_clone(&orig->data[i]); } return ret; } -int8_tArray __attribute__((visibility("default"))) TS_LDKCResult__u832APIErrorZ_get_ok(uint32_t arg) { - LDKCResult__u832APIErrorZ *val = (LDKCResult__u832APIErrorZ*)(arg & ~1); - CHECK(val->result_ok); - int8_tArray res_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(res_arr + 4), (*val->contents.result).data, 32); - return res_arr; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult__u832APIErrorZ_get_err(uint32_t arg) { - LDKCResult__u832APIErrorZ *val = (LDKCResult__u832APIErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint64_t err_ref = ((uint64_t)&(*val->contents.err)) | 1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKPaymentSendFailure_ref_from_ptr(uint32_t ptr) { - LDKPaymentSendFailure *obj = (LDKPaymentSendFailure*)(ptr & ~1); +uint32_t __attribute__((visibility("default"))) TS_LDKPaymentPurpose_ref_from_ptr(uint32_t ptr) { + LDKPaymentPurpose *obj = (LDKPaymentPurpose*)(ptr & ~1); switch(obj->tag) { - case LDKPaymentSendFailure_ParameterError: { - uint64_t parameter_error_ref = ((uint64_t)&obj->parameter_error) | 1; - return 0 /* LDKPaymentSendFailure - ParameterError */; (void) parameter_error_ref; + case LDKPaymentPurpose_InvoicePayment: { + int8_tArray payment_preimage_arr = init_int8_tArray(32); + memcpy(payment_preimage_arr->elems, obj->invoice_payment.payment_preimage.data, 32); + int8_tArray payment_secret_arr = init_int8_tArray(32); + memcpy(payment_secret_arr->elems, obj->invoice_payment.payment_secret.data, 32); + return 0 /* LDKPaymentPurpose - InvoicePayment */; (void) payment_preimage_arr; (void) payment_secret_arr; } - case LDKPaymentSendFailure_PathParameterError: { - LDKCVec_CResult_NoneAPIErrorZZ path_parameter_error_var = obj->path_parameter_error; - uint32_tArray path_parameter_error_arr = NULL; - path_parameter_error_arr = init_arr(path_parameter_error_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *path_parameter_error_arr_ptr = (uint32_t*)(path_parameter_error_arr + 4); - for (size_t w = 0; w < path_parameter_error_var.datalen; w++) { - LDKCResult_NoneAPIErrorZ* path_parameter_error_conv_22_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); - *path_parameter_error_conv_22_conv = path_parameter_error_var.data[w]; - *path_parameter_error_conv_22_conv = CResult_NoneAPIErrorZ_clone(path_parameter_error_conv_22_conv); - path_parameter_error_arr_ptr[w] = (uint64_t)path_parameter_error_conv_22_conv; - } - - return 0 /* LDKPaymentSendFailure - PathParameterError */; (void) path_parameter_error_arr; + case LDKPaymentPurpose_SpontaneousPayment: { + int8_tArray spontaneous_payment_arr = init_int8_tArray(32); + memcpy(spontaneous_payment_arr->elems, obj->spontaneous_payment.data, 32); + return 0 /* LDKPaymentPurpose - SpontaneousPayment */; (void) spontaneous_payment_arr; } - case LDKPaymentSendFailure_AllFailedRetrySafe: { - LDKCVec_APIErrorZ all_failed_retry_safe_var = obj->all_failed_retry_safe; - uint32_tArray all_failed_retry_safe_arr = NULL; - all_failed_retry_safe_arr = init_arr(all_failed_retry_safe_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *all_failed_retry_safe_arr_ptr = (uint32_t*)(all_failed_retry_safe_arr + 4); - for (size_t k = 0; k < all_failed_retry_safe_var.datalen; k++) { - uint64_t all_failed_retry_safe_conv_10_ref = ((uint64_t)&all_failed_retry_safe_var.data[k]) | 1; - all_failed_retry_safe_arr_ptr[k] = all_failed_retry_safe_conv_10_ref; - } - - return 0 /* LDKPaymentSendFailure - AllFailedRetrySafe */; (void) all_failed_retry_safe_arr; + default: abort(); + } +} +uint32_t __attribute__((visibility("default"))) TS_LDKCOption_u64Z_ref_from_ptr(uint32_t ptr) { + LDKCOption_u64Z *obj = (LDKCOption_u64Z*)(ptr & ~1); + switch(obj->tag) { + case LDKCOption_u64Z_Some: { + return 0 /* LDKCOption_u64Z - Some */; (void) obj->some; } - case LDKPaymentSendFailure_PartialFailure: { - LDKCVec_CResult_NoneAPIErrorZZ results_var = obj->partial_failure.results; - uint32_tArray results_arr = NULL; - results_arr = init_arr(results_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *results_arr_ptr = (uint32_t*)(results_arr + 4); - for (size_t w = 0; w < results_var.datalen; w++) { - LDKCResult_NoneAPIErrorZ* results_conv_22_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); - *results_conv_22_conv = results_var.data[w]; - *results_conv_22_conv = CResult_NoneAPIErrorZ_clone(results_conv_22_conv); - results_arr_ptr[w] = (uint64_t)results_conv_22_conv; - } - - LDKRouteParameters failed_paths_retry_var = obj->partial_failure.failed_paths_retry; - uint64_t failed_paths_retry_ref = 0; - if ((uint64_t)failed_paths_retry_var.inner > 4096) { - CHECK((((uint64_t)failed_paths_retry_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&failed_paths_retry_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(failed_paths_retry_var); - failed_paths_retry_ref = (uint64_t)failed_paths_retry_var.inner & ~1; - } - int8_tArray payment_id_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_id_arr + 4), obj->partial_failure.payment_id.data, 32); - return 0 /* LDKPaymentSendFailure - PartialFailure */; (void) results_arr; (void) failed_paths_retry_ref; (void) payment_id_arr; + case LDKCOption_u64Z_None: { + return 0 /* LDKCOption_u64Z - None */; } default: abort(); } } -int8_tArray __attribute__((visibility("default"))) TS_LDKCResult_PaymentIdPaymentSendFailureZ_get_ok(uint32_t arg) { - LDKCResult_PaymentIdPaymentSendFailureZ *val = (LDKCResult_PaymentIdPaymentSendFailureZ*)(arg & ~1); - CHECK(val->result_ok); - int8_tArray res_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(res_arr + 4), (*val->contents.result).data, 32); - return res_arr; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PaymentIdPaymentSendFailureZ_get_err(uint32_t arg) { - LDKCResult_PaymentIdPaymentSendFailureZ *val = (LDKCResult_PaymentIdPaymentSendFailureZ*)(arg & ~1); - CHECK(!val->result_ok); - uint64_t err_ref = ((uint64_t)&(*val->contents.err)) | 1; - return err_ref; -} -void __attribute__((visibility("default"))) TS_LDKCResult_NonePaymentSendFailureZ_get_ok(uint32_t arg) { - LDKCResult_NonePaymentSendFailureZ *val = (LDKCResult_NonePaymentSendFailureZ*)(arg & ~1); - CHECK(val->result_ok); - return *val->contents.result; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NonePaymentSendFailureZ_get_err(uint32_t arg) { - LDKCResult_NonePaymentSendFailureZ *val = (LDKCResult_NonePaymentSendFailureZ*)(arg & ~1); - CHECK(!val->result_ok); - uint64_t err_ref = ((uint64_t)&(*val->contents.err)) | 1; - return err_ref; -} -static inline struct LDKThirtyTwoBytes C2Tuple_PaymentHashPaymentIdZ_get_a(LDKC2Tuple_PaymentHashPaymentIdZ *NONNULL_PTR tuple){ - return ThirtyTwoBytes_clone(&tuple->a); -} -int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentIdZ_get_a(uint32_t tuple) { - LDKC2Tuple_PaymentHashPaymentIdZ* tuple_conv = (LDKC2Tuple_PaymentHashPaymentIdZ*)(tuple & ~1); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), C2Tuple_PaymentHashPaymentIdZ_get_a(tuple_conv).data, 32); - return ret_arr; -} - -static inline struct LDKThirtyTwoBytes C2Tuple_PaymentHashPaymentIdZ_get_b(LDKC2Tuple_PaymentHashPaymentIdZ *NONNULL_PTR tuple){ - return ThirtyTwoBytes_clone(&tuple->b); -} -int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentIdZ_get_b(uint32_t tuple) { - LDKC2Tuple_PaymentHashPaymentIdZ* tuple_conv = (LDKC2Tuple_PaymentHashPaymentIdZ*)(tuple & ~1); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), C2Tuple_PaymentHashPaymentIdZ_get_b(tuple_conv).data, 32); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_get_ok(uint32_t arg) { - LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ *val = (LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ*)(arg & ~1); - CHECK(val->result_ok); - LDKC2Tuple_PaymentHashPaymentIdZ* res_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentIdZ), "LDKC2Tuple_PaymentHashPaymentIdZ"); - *res_conv = (*val->contents.result); - *res_conv = C2Tuple_PaymentHashPaymentIdZ_clone(res_conv); - return ((uint64_t)res_conv); -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_get_err(uint32_t arg) { - LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ *val = (LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ*)(arg & ~1); - CHECK(!val->result_ok); - uint64_t err_ref = ((uint64_t)&(*val->contents.err)) | 1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKNetAddress_ref_from_ptr(uint32_t ptr) { - LDKNetAddress *obj = (LDKNetAddress*)(ptr & ~1); +uint32_t __attribute__((visibility("default"))) TS_LDKNetworkUpdate_ref_from_ptr(uint32_t ptr) { + LDKNetworkUpdate *obj = (LDKNetworkUpdate*)(ptr & ~1); switch(obj->tag) { - case LDKNetAddress_IPv4: { - int8_tArray addr_arr = init_arr(4, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(addr_arr + 4), obj->i_pv4.addr.data, 4); - return 0 /* LDKNetAddress - IPv4 */; (void) addr_arr; (void) obj->i_pv4.port; - } - case LDKNetAddress_IPv6: { - int8_tArray addr_arr = init_arr(16, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(addr_arr + 4), obj->i_pv6.addr.data, 16); - return 0 /* LDKNetAddress - IPv6 */; (void) addr_arr; (void) obj->i_pv6.port; + case LDKNetworkUpdate_ChannelUpdateMessage: { + LDKChannelUpdate msg_var = obj->channel_update_message.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKNetworkUpdate - ChannelUpdateMessage */; (void) msg_ref; } - case LDKNetAddress_OnionV2: { - int8_tArray onion_v2_arr = init_arr(12, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(onion_v2_arr + 4), obj->onion_v2.data, 12); - return 0 /* LDKNetAddress - OnionV2 */; (void) onion_v2_arr; + case LDKNetworkUpdate_ChannelClosed: { + return 0 /* LDKNetworkUpdate - ChannelClosed */; (void) obj->channel_closed.short_channel_id; (void) obj->channel_closed.is_permanent; } - case LDKNetAddress_OnionV3: { - int8_tArray ed25519_pubkey_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ed25519_pubkey_arr + 4), obj->onion_v3.ed25519_pubkey.data, 32); - return 0 /* LDKNetAddress - OnionV3 */; (void) ed25519_pubkey_arr; (void) obj->onion_v3.checksum; (void) obj->onion_v3.version; (void) obj->onion_v3.port; + case LDKNetworkUpdate_NodeFailure: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->node_failure.node_id.compressed_form, 33); + return 0 /* LDKNetworkUpdate - NodeFailure */; (void) node_id_arr; (void) obj->node_failure.is_permanent; } default: abort(); } } -static inline LDKCVec_NetAddressZ CVec_NetAddressZ_clone(const LDKCVec_NetAddressZ *orig) { - LDKCVec_NetAddressZ ret = { .data = MALLOC(sizeof(LDKNetAddress) * orig->datalen, "LDKCVec_NetAddressZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = NetAddress_clone(&orig->data[i]); +uint32_t __attribute__((visibility("default"))) TS_LDKCOption_NetworkUpdateZ_ref_from_ptr(uint32_t ptr) { + LDKCOption_NetworkUpdateZ *obj = (LDKCOption_NetworkUpdateZ*)(ptr & ~1); + switch(obj->tag) { + case LDKCOption_NetworkUpdateZ_Some: { + uint64_t some_ref = ((uint64_t)&obj->some) | 1; + return 0 /* LDKCOption_NetworkUpdateZ - Some */; (void) some_ref; + } + case LDKCOption_NetworkUpdateZ_None: { + return 0 /* LDKCOption_NetworkUpdateZ - None */; + } + default: abort(); } - return ret; } -static inline struct LDKThirtyTwoBytes C2Tuple_PaymentHashPaymentSecretZ_get_a(LDKC2Tuple_PaymentHashPaymentSecretZ *NONNULL_PTR tuple){ - return ThirtyTwoBytes_clone(&tuple->a); -} -int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentSecretZ_get_a(uint32_t tuple) { - LDKC2Tuple_PaymentHashPaymentSecretZ* tuple_conv = (LDKC2Tuple_PaymentHashPaymentSecretZ*)(tuple & ~1); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), C2Tuple_PaymentHashPaymentSecretZ_get_a(tuple_conv).data, 32); - return ret_arr; -} - -static inline struct LDKThirtyTwoBytes C2Tuple_PaymentHashPaymentSecretZ_get_b(LDKC2Tuple_PaymentHashPaymentSecretZ *NONNULL_PTR tuple){ - return ThirtyTwoBytes_clone(&tuple->b); -} -int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentSecretZ_get_b(uint32_t tuple) { - LDKC2Tuple_PaymentHashPaymentSecretZ* tuple_conv = (LDKC2Tuple_PaymentHashPaymentSecretZ*)(tuple & ~1); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), C2Tuple_PaymentHashPaymentSecretZ_get_b(tuple_conv).data, 32); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_get_ok(uint32_t arg) { - LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ *val = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ*)(arg & ~1); - CHECK(val->result_ok); - LDKC2Tuple_PaymentHashPaymentSecretZ* res_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentSecretZ), "LDKC2Tuple_PaymentHashPaymentSecretZ"); - *res_conv = (*val->contents.result); - *res_conv = C2Tuple_PaymentHashPaymentSecretZ_clone(res_conv); - return ((uint64_t)res_conv); -} -void __attribute__((visibility("default"))) TS_LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_get_err(uint32_t arg) { - LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ *val = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_get_ok(uint32_t arg) { - LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ *val = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKC2Tuple_PaymentHashPaymentSecretZ* res_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentSecretZ), "LDKC2Tuple_PaymentHashPaymentSecretZ"); - *res_conv = (*val->contents.result); - *res_conv = C2Tuple_PaymentHashPaymentSecretZ_clone(res_conv); - return ((uint64_t)res_conv); -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_get_err(uint32_t arg) { - LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ *val = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint64_t err_ref = ((uint64_t)&(*val->contents.err)) | 1; - return err_ref; -} -int8_tArray __attribute__((visibility("default"))) TS_LDKCResult_PaymentSecretNoneZ_get_ok(uint32_t arg) { - LDKCResult_PaymentSecretNoneZ *val = (LDKCResult_PaymentSecretNoneZ*)(arg & ~1); - CHECK(val->result_ok); - int8_tArray res_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(res_arr + 4), (*val->contents.result).data, 32); - return res_arr; -} -void __attribute__((visibility("default"))) TS_LDKCResult_PaymentSecretNoneZ_get_err(uint32_t arg) { - LDKCResult_PaymentSecretNoneZ *val = (LDKCResult_PaymentSecretNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; -} -int8_tArray __attribute__((visibility("default"))) TS_LDKCResult_PaymentSecretAPIErrorZ_get_ok(uint32_t arg) { - LDKCResult_PaymentSecretAPIErrorZ *val = (LDKCResult_PaymentSecretAPIErrorZ*)(arg & ~1); - CHECK(val->result_ok); - int8_tArray res_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(res_arr + 4), (*val->contents.result).data, 32); - return res_arr; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PaymentSecretAPIErrorZ_get_err(uint32_t arg) { - LDKCResult_PaymentSecretAPIErrorZ *val = (LDKCResult_PaymentSecretAPIErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint64_t err_ref = ((uint64_t)&(*val->contents.err)) | 1; - return err_ref; -} -int8_tArray __attribute__((visibility("default"))) TS_LDKCResult_PaymentPreimageAPIErrorZ_get_ok(uint32_t arg) { - LDKCResult_PaymentPreimageAPIErrorZ *val = (LDKCResult_PaymentPreimageAPIErrorZ*)(arg & ~1); - CHECK(val->result_ok); - int8_tArray res_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(res_arr + 4), (*val->contents.result).data, 32); - return res_arr; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PaymentPreimageAPIErrorZ_get_err(uint32_t arg) { - LDKCResult_PaymentPreimageAPIErrorZ *val = (LDKCResult_PaymentPreimageAPIErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint64_t err_ref = ((uint64_t)&(*val->contents.err)) | 1; - return err_ref; -} -static inline LDKCVec_ChannelMonitorZ CVec_ChannelMonitorZ_clone(const LDKCVec_ChannelMonitorZ *orig) { - LDKCVec_ChannelMonitorZ ret = { .data = MALLOC(sizeof(LDKChannelMonitor) * orig->datalen, "LDKCVec_ChannelMonitorZ clone bytes"), .datalen = orig->datalen }; +static inline LDKCVec_RouteHopZ CVec_RouteHopZ_clone(const LDKCVec_RouteHopZ *orig) { + LDKCVec_RouteHopZ ret = { .data = MALLOC(sizeof(LDKRouteHop) * orig->datalen, "LDKCVec_RouteHopZ clone bytes"), .datalen = orig->datalen }; for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = ChannelMonitor_clone(&orig->data[i]); + ret.data[i] = RouteHop_clone(&orig->data[i]); } return ret; } -typedef struct LDKWatch_JCalls { - atomic_size_t refcnt; - uint32_t watch_channel_meth; - uint32_t update_channel_meth; - uint32_t release_pending_monitor_events_meth; -} LDKWatch_JCalls; -static void LDKWatch_JCalls_free(void* this_arg) { - LDKWatch_JCalls *j_calls = (LDKWatch_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->watch_channel_meth); - js_free(j_calls->update_channel_meth); - js_free(j_calls->release_pending_monitor_events_meth); - FREE(j_calls); +uint32_t __attribute__((visibility("default"))) TS_LDKSpendableOutputDescriptor_ref_from_ptr(uint32_t ptr) { + LDKSpendableOutputDescriptor *obj = (LDKSpendableOutputDescriptor*)(ptr & ~1); + switch(obj->tag) { + case LDKSpendableOutputDescriptor_StaticOutput: { + LDKOutPoint outpoint_var = obj->static_output.outpoint; + uint64_t outpoint_ref = 0; + CHECK((((uint64_t)outpoint_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&outpoint_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(outpoint_var); + outpoint_ref = (uint64_t)outpoint_var.inner & ~1; + uint64_t output_ref = ((uint64_t)&obj->static_output.output) | 1; + return 0 /* LDKSpendableOutputDescriptor - StaticOutput */; (void) outpoint_ref; (void) (uint64_t)output_ref; + } + case LDKSpendableOutputDescriptor_DelayedPaymentOutput: { + LDKDelayedPaymentOutputDescriptor delayed_payment_output_var = obj->delayed_payment_output; + uint64_t delayed_payment_output_ref = 0; + CHECK((((uint64_t)delayed_payment_output_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&delayed_payment_output_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(delayed_payment_output_var); + delayed_payment_output_ref = (uint64_t)delayed_payment_output_var.inner & ~1; + return 0 /* LDKSpendableOutputDescriptor - DelayedPaymentOutput */; (void) delayed_payment_output_ref; + } + case LDKSpendableOutputDescriptor_StaticPaymentOutput: { + LDKStaticPaymentOutputDescriptor static_payment_output_var = obj->static_payment_output; + uint64_t static_payment_output_ref = 0; + CHECK((((uint64_t)static_payment_output_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&static_payment_output_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(static_payment_output_var); + static_payment_output_ref = (uint64_t)static_payment_output_var.inner & ~1; + return 0 /* LDKSpendableOutputDescriptor - StaticPaymentOutput */; (void) static_payment_output_ref; + } + default: abort(); } } -LDKCResult_NoneChannelMonitorUpdateErrZ watch_channel_LDKWatch_jcall(const void* this_arg, LDKOutPoint funding_txo, LDKChannelMonitor monitor) { - LDKWatch_JCalls *j_calls = (LDKWatch_JCalls*) this_arg; - LDKOutPoint funding_txo_var = funding_txo; - uint64_t funding_txo_ref = 0; - CHECK((((uint64_t)funding_txo_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&funding_txo_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_var); - funding_txo_ref = (uint64_t)funding_txo_var.inner; - if (funding_txo_var.is_owned) { - funding_txo_ref |= 1; - } - LDKChannelMonitor monitor_var = monitor; - uint64_t monitor_ref = 0; - CHECK((((uint64_t)monitor_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&monitor_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(monitor_var); - monitor_ref = (uint64_t)monitor_var.inner; - if (monitor_var.is_owned) { - monitor_ref |= 1; +static inline LDKCVec_SpendableOutputDescriptorZ CVec_SpendableOutputDescriptorZ_clone(const LDKCVec_SpendableOutputDescriptorZ *orig) { + LDKCVec_SpendableOutputDescriptorZ ret = { .data = MALLOC(sizeof(LDKSpendableOutputDescriptor) * orig->datalen, "LDKCVec_SpendableOutputDescriptorZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = SpendableOutputDescriptor_clone(&orig->data[i]); } - uint32_t ret = js_invoke_function_2(j_calls->watch_channel_meth, funding_txo_ref, monitor_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_NoneChannelMonitorUpdateErrZ ret_conv = *(LDKCResult_NoneChannelMonitorUpdateErrZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; + return ret; } -LDKCResult_NoneChannelMonitorUpdateErrZ update_channel_LDKWatch_jcall(const void* this_arg, LDKOutPoint funding_txo, LDKChannelMonitorUpdate update) { - LDKWatch_JCalls *j_calls = (LDKWatch_JCalls*) this_arg; - LDKOutPoint funding_txo_var = funding_txo; - uint64_t funding_txo_ref = 0; - CHECK((((uint64_t)funding_txo_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&funding_txo_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_var); - funding_txo_ref = (uint64_t)funding_txo_var.inner; - if (funding_txo_var.is_owned) { - funding_txo_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_LDKClosureReason_ref_from_ptr(uint32_t ptr) { + LDKClosureReason *obj = (LDKClosureReason*)(ptr & ~1); + switch(obj->tag) { + case LDKClosureReason_CounterpartyForceClosed: { + LDKStr peer_msg_str = obj->counterparty_force_closed.peer_msg; + jstring peer_msg_conv = str_ref_to_ts(peer_msg_str.chars, peer_msg_str.len); + return 0 /* LDKClosureReason - CounterpartyForceClosed */; (void) peer_msg_conv; + } + case LDKClosureReason_HolderForceClosed: { + return 0 /* LDKClosureReason - HolderForceClosed */; + } + case LDKClosureReason_CooperativeClosure: { + return 0 /* LDKClosureReason - CooperativeClosure */; + } + case LDKClosureReason_CommitmentTxConfirmed: { + return 0 /* LDKClosureReason - CommitmentTxConfirmed */; + } + case LDKClosureReason_FundingTimedOut: { + return 0 /* LDKClosureReason - FundingTimedOut */; + } + case LDKClosureReason_ProcessingError: { + LDKStr err_str = obj->processing_error.err; + jstring err_conv = str_ref_to_ts(err_str.chars, err_str.len); + return 0 /* LDKClosureReason - ProcessingError */; (void) err_conv; + } + case LDKClosureReason_DisconnectedPeer: { + return 0 /* LDKClosureReason - DisconnectedPeer */; + } + case LDKClosureReason_OutdatedChannelManager: { + return 0 /* LDKClosureReason - OutdatedChannelManager */; + } + default: abort(); } - LDKChannelMonitorUpdate update_var = update; - uint64_t update_ref = 0; - CHECK((((uint64_t)update_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&update_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_var); - update_ref = (uint64_t)update_var.inner; - if (update_var.is_owned) { - update_ref |= 1; +} +uint32_t __attribute__((visibility("default"))) TS_LDKEvent_ref_from_ptr(uint32_t ptr) { + LDKEvent *obj = (LDKEvent*)(ptr & ~1); + switch(obj->tag) { + case LDKEvent_FundingGenerationReady: { + int8_tArray temporary_channel_id_arr = init_int8_tArray(32); + memcpy(temporary_channel_id_arr->elems, obj->funding_generation_ready.temporary_channel_id.data, 32); + LDKCVec_u8Z output_script_var = obj->funding_generation_ready.output_script; + int8_tArray output_script_arr = init_int8_tArray(output_script_var.datalen); + memcpy(output_script_arr->elems, output_script_var.data, output_script_var.datalen); + return 0 /* LDKEvent - FundingGenerationReady */; (void) temporary_channel_id_arr; (void) obj->funding_generation_ready.channel_value_satoshis; (void) output_script_arr; (void) obj->funding_generation_ready.user_channel_id; + } + case LDKEvent_PaymentReceived: { + int8_tArray payment_hash_arr = init_int8_tArray(32); + memcpy(payment_hash_arr->elems, obj->payment_received.payment_hash.data, 32); + uint64_t purpose_ref = ((uint64_t)&obj->payment_received.purpose) | 1; + return 0 /* LDKEvent - PaymentReceived */; (void) payment_hash_arr; (void) obj->payment_received.amt; (void) purpose_ref; + } + case LDKEvent_PaymentSent: { + int8_tArray payment_id_arr = init_int8_tArray(32); + memcpy(payment_id_arr->elems, obj->payment_sent.payment_id.data, 32); + int8_tArray payment_preimage_arr = init_int8_tArray(32); + memcpy(payment_preimage_arr->elems, obj->payment_sent.payment_preimage.data, 32); + int8_tArray payment_hash_arr = init_int8_tArray(32); + memcpy(payment_hash_arr->elems, obj->payment_sent.payment_hash.data, 32); + uint64_t fee_paid_msat_ref = ((uint64_t)&obj->payment_sent.fee_paid_msat) | 1; + return 0 /* LDKEvent - PaymentSent */; (void) payment_id_arr; (void) payment_preimage_arr; (void) payment_hash_arr; (void) fee_paid_msat_ref; + } + case LDKEvent_PaymentPathFailed: { + int8_tArray payment_id_arr = init_int8_tArray(32); + memcpy(payment_id_arr->elems, obj->payment_path_failed.payment_id.data, 32); + int8_tArray payment_hash_arr = init_int8_tArray(32); + memcpy(payment_hash_arr->elems, obj->payment_path_failed.payment_hash.data, 32); + uint64_t network_update_ref = ((uint64_t)&obj->payment_path_failed.network_update) | 1; + LDKCVec_RouteHopZ path_var = obj->payment_path_failed.path; + uint32_tArray path_arr = NULL; + path_arr = init_uint32_tArray(path_var.datalen); + uint32_t *path_arr_ptr = (uint32_t*)(path_arr + 4); + for (size_t k = 0; k < path_var.datalen; k++) { + LDKRouteHop path_conv_10_var = path_var.data[k]; + uint64_t path_conv_10_ref = 0; + CHECK((((uint64_t)path_conv_10_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&path_conv_10_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_var); + path_conv_10_ref = (uint64_t)path_conv_10_var.inner & ~1; + path_arr_ptr[k] = path_conv_10_ref; + } + + uint64_t short_channel_id_ref = ((uint64_t)&obj->payment_path_failed.short_channel_id) | 1; + LDKRouteParameters retry_var = obj->payment_path_failed.retry; + uint64_t retry_ref = 0; + if ((uint64_t)retry_var.inner > 4096) { + CHECK((((uint64_t)retry_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&retry_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(retry_var); + retry_ref = (uint64_t)retry_var.inner & ~1; + } + return 0 /* LDKEvent - PaymentPathFailed */; (void) payment_id_arr; (void) payment_hash_arr; (void) obj->payment_path_failed.rejected_by_dest; (void) network_update_ref; (void) obj->payment_path_failed.all_paths_failed; (void) path_arr; (void) short_channel_id_ref; (void) retry_ref; + } + case LDKEvent_PaymentFailed: { + int8_tArray payment_id_arr = init_int8_tArray(32); + memcpy(payment_id_arr->elems, obj->payment_failed.payment_id.data, 32); + int8_tArray payment_hash_arr = init_int8_tArray(32); + memcpy(payment_hash_arr->elems, obj->payment_failed.payment_hash.data, 32); + return 0 /* LDKEvent - PaymentFailed */; (void) payment_id_arr; (void) payment_hash_arr; + } + case LDKEvent_PendingHTLCsForwardable: { + return 0 /* LDKEvent - PendingHTLCsForwardable */; (void) obj->pending_htl_cs_forwardable.time_forwardable; + } + case LDKEvent_SpendableOutputs: { + LDKCVec_SpendableOutputDescriptorZ outputs_var = obj->spendable_outputs.outputs; + uint32_tArray outputs_arr = NULL; + outputs_arr = init_uint32_tArray(outputs_var.datalen); + uint32_t *outputs_arr_ptr = (uint32_t*)(outputs_arr + 4); + for (size_t b = 0; b < outputs_var.datalen; b++) { + uint64_t outputs_conv_27_ref = ((uint64_t)&outputs_var.data[b]) | 1; + outputs_arr_ptr[b] = outputs_conv_27_ref; + } + + return 0 /* LDKEvent - SpendableOutputs */; (void) outputs_arr; + } + case LDKEvent_PaymentForwarded: { + uint64_t fee_earned_msat_ref = ((uint64_t)&obj->payment_forwarded.fee_earned_msat) | 1; + return 0 /* LDKEvent - PaymentForwarded */; (void) fee_earned_msat_ref; (void) obj->payment_forwarded.claim_from_onchain_tx; + } + case LDKEvent_ChannelClosed: { + int8_tArray channel_id_arr = init_int8_tArray(32); + memcpy(channel_id_arr->elems, obj->channel_closed.channel_id.data, 32); + uint64_t reason_ref = ((uint64_t)&obj->channel_closed.reason) | 1; + return 0 /* LDKEvent - ChannelClosed */; (void) channel_id_arr; (void) obj->channel_closed.user_channel_id; (void) reason_ref; + } + case LDKEvent_DiscardFunding: { + int8_tArray channel_id_arr = init_int8_tArray(32); + memcpy(channel_id_arr->elems, obj->discard_funding.channel_id.data, 32); + LDKTransaction transaction_var = obj->discard_funding.transaction; + int8_tArray transaction_arr = init_int8_tArray(transaction_var.datalen); + memcpy(transaction_arr->elems, transaction_var.data, transaction_var.datalen); + return 0 /* LDKEvent - DiscardFunding */; (void) channel_id_arr; (void) transaction_arr; + } + case LDKEvent_PaymentPathSuccessful: { + int8_tArray payment_id_arr = init_int8_tArray(32); + memcpy(payment_id_arr->elems, obj->payment_path_successful.payment_id.data, 32); + int8_tArray payment_hash_arr = init_int8_tArray(32); + memcpy(payment_hash_arr->elems, obj->payment_path_successful.payment_hash.data, 32); + LDKCVec_RouteHopZ path_var = obj->payment_path_successful.path; + uint32_tArray path_arr = NULL; + path_arr = init_uint32_tArray(path_var.datalen); + uint32_t *path_arr_ptr = (uint32_t*)(path_arr + 4); + for (size_t k = 0; k < path_var.datalen; k++) { + LDKRouteHop path_conv_10_var = path_var.data[k]; + uint64_t path_conv_10_ref = 0; + CHECK((((uint64_t)path_conv_10_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&path_conv_10_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_var); + path_conv_10_ref = (uint64_t)path_conv_10_var.inner & ~1; + path_arr_ptr[k] = path_conv_10_ref; + } + + return 0 /* LDKEvent - PaymentPathSuccessful */; (void) payment_id_arr; (void) payment_hash_arr; (void) path_arr; + } + default: abort(); } - uint32_t ret = js_invoke_function_2(j_calls->update_channel_meth, funding_txo_ref, update_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_NoneChannelMonitorUpdateErrZ ret_conv = *(LDKCResult_NoneChannelMonitorUpdateErrZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; } -LDKCVec_MonitorEventZ release_pending_monitor_events_LDKWatch_jcall(const void* this_arg) { - LDKWatch_JCalls *j_calls = (LDKWatch_JCalls*) this_arg; - uint32_tArray ret = js_invoke_function_0(j_calls->release_pending_monitor_events_meth); - LDKCVec_MonitorEventZ ret_constr; - ret_constr.datalen = *((uint32_t*)ret); - if (ret_constr.datalen > 0) - ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKMonitorEvent), "LDKCVec_MonitorEventZ Elements"); - else - ret_constr.data = NULL; - uint32_t* ret_vals = (uint32_t*)(ret + 4); - for (size_t o = 0; o < ret_constr.datalen; o++) { - uint32_t ret_conv_14 = ret_vals[o]; - void* ret_conv_14_ptr = (void*)(((uint64_t)ret_conv_14) & ~1); - CHECK_ACCESS(ret_conv_14_ptr); - LDKMonitorEvent ret_conv_14_conv = *(LDKMonitorEvent*)(ret_conv_14_ptr); - FREE((void*)ret_conv_14); - ret_constr.data[o] = ret_conv_14_conv; +static inline LDKCVec_EventZ CVec_EventZ_clone(const LDKCVec_EventZ *orig) { + LDKCVec_EventZ ret = { .data = MALLOC(sizeof(LDKEvent) * orig->datalen, "LDKCVec_EventZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = Event_clone(&orig->data[i]); } - return ret_constr; + return ret; } -static void LDKWatch_JCalls_cloned(LDKWatch* new_obj) { - LDKWatch_JCalls *j_calls = (LDKWatch_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); +static inline uintptr_t C2Tuple_usizeTransactionZ_get_a(LDKC2Tuple_usizeTransactionZ *NONNULL_PTR owner){ + return owner->a; +} +int64_t __attribute__((visibility("default"))) TS_C2Tuple_usizeTransactionZ_get_a(uint32_t owner) { + LDKC2Tuple_usizeTransactionZ* owner_conv = (LDKC2Tuple_usizeTransactionZ*)(owner & ~1); + int64_t ret_val = C2Tuple_usizeTransactionZ_get_a(owner_conv); + return ret_val; } -static inline LDKWatch LDKWatch_init (/*TODO: JS Object Reference */void* o) { - LDKWatch_JCalls *calls = MALLOC(sizeof(LDKWatch_JCalls), "LDKWatch_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - LDKWatch ret = { - .this_arg = (void*) calls, - .watch_channel = watch_channel_LDKWatch_jcall, - .update_channel = update_channel_LDKWatch_jcall, - .release_pending_monitor_events = release_pending_monitor_events_LDKWatch_jcall, - .free = LDKWatch_JCalls_free, - }; +static inline struct LDKTransaction C2Tuple_usizeTransactionZ_get_b(LDKC2Tuple_usizeTransactionZ *NONNULL_PTR owner){ + return owner->b; +} +int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_usizeTransactionZ_get_b(uint32_t owner) { + LDKC2Tuple_usizeTransactionZ* owner_conv = (LDKC2Tuple_usizeTransactionZ*)(owner & ~1); + LDKTransaction ret_var = C2Tuple_usizeTransactionZ_get_b(owner_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + Transaction_free(ret_var); + return ret_arr; +} + +static inline LDKCVec_C2Tuple_usizeTransactionZZ CVec_C2Tuple_usizeTransactionZZ_clone(const LDKCVec_C2Tuple_usizeTransactionZZ *orig) { + LDKCVec_C2Tuple_usizeTransactionZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_usizeTransactionZ) * orig->datalen, "LDKCVec_C2Tuple_usizeTransactionZZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = C2Tuple_usizeTransactionZ_clone(&orig->data[i]); + } return ret; } -long __attribute__((visibility("default"))) TS_LDKWatch_new(/*TODO: JS Object Reference */void* o) { - LDKWatch *res_ptr = MALLOC(sizeof(LDKWatch), "LDKWatch"); - *res_ptr = LDKWatch_init(o); - return (long)res_ptr; +static inline uint32_t C2Tuple_u32TxOutZ_get_a(LDKC2Tuple_u32TxOutZ *NONNULL_PTR owner){ + return owner->a; } -uint32_t __attribute__((visibility("default"))) TS_Watch_watch_channel(uint32_t this_arg, uint32_t funding_txo, uint32_t monitor) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKWatch* this_arg_conv = (LDKWatch*)this_arg_ptr; - LDKOutPoint funding_txo_conv; - funding_txo_conv.inner = (void*)(funding_txo & (~1)); - funding_txo_conv.is_owned = (funding_txo & 1) || (funding_txo == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_conv); - funding_txo_conv = OutPoint_clone(&funding_txo_conv); - LDKChannelMonitor monitor_conv; - monitor_conv.inner = (void*)(monitor & (~1)); - monitor_conv.is_owned = (monitor & 1) || (monitor == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(monitor_conv); - monitor_conv = ChannelMonitor_clone(&monitor_conv); - LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); - *ret_conv = (this_arg_conv->watch_channel)(this_arg_conv->this_arg, funding_txo_conv, monitor_conv); - return (uint64_t)ret_conv; +int32_t __attribute__((visibility("default"))) TS_C2Tuple_u32TxOutZ_get_a(uint32_t owner) { + LDKC2Tuple_u32TxOutZ* owner_conv = (LDKC2Tuple_u32TxOutZ*)(owner & ~1); + int32_t ret_val = C2Tuple_u32TxOutZ_get_a(owner_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Watch_update_channel(uint32_t this_arg, uint32_t funding_txo, uint32_t update) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKWatch* this_arg_conv = (LDKWatch*)this_arg_ptr; - LDKOutPoint funding_txo_conv; - funding_txo_conv.inner = (void*)(funding_txo & (~1)); - funding_txo_conv.is_owned = (funding_txo & 1) || (funding_txo == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_conv); - funding_txo_conv = OutPoint_clone(&funding_txo_conv); - LDKChannelMonitorUpdate update_conv; - update_conv.inner = (void*)(update & (~1)); - update_conv.is_owned = (update & 1) || (update == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_conv); - update_conv = ChannelMonitorUpdate_clone(&update_conv); - LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); - *ret_conv = (this_arg_conv->update_channel)(this_arg_conv->this_arg, funding_txo_conv, update_conv); - return (uint64_t)ret_conv; +static inline struct LDKTxOut C2Tuple_u32TxOutZ_get_b(LDKC2Tuple_u32TxOutZ *NONNULL_PTR owner){ + return TxOut_clone(&owner->b); +} +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_u32TxOutZ_get_b(uint32_t owner) { + LDKC2Tuple_u32TxOutZ* owner_conv = (LDKC2Tuple_u32TxOutZ*)(owner & ~1); + LDKTxOut* ret_ref = MALLOC(sizeof(LDKTxOut), "LDKTxOut"); + *ret_ref = C2Tuple_u32TxOutZ_get_b(owner_conv); + return (uint64_t)ret_ref; } -uint32_tArray __attribute__((visibility("default"))) TS_Watch_release_pending_monitor_events(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKWatch* this_arg_conv = (LDKWatch*)this_arg_ptr; - LDKCVec_MonitorEventZ ret_var = (this_arg_conv->release_pending_monitor_events)(this_arg_conv->this_arg); +static inline LDKCVec_C2Tuple_u32TxOutZZ CVec_C2Tuple_u32TxOutZZ_clone(const LDKCVec_C2Tuple_u32TxOutZZ *orig) { + LDKCVec_C2Tuple_u32TxOutZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_u32TxOutZ) * orig->datalen, "LDKCVec_C2Tuple_u32TxOutZZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = C2Tuple_u32TxOutZ_clone(&orig->data[i]); + } + return ret; +} +static inline struct LDKThirtyTwoBytes C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_a(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ *NONNULL_PTR owner){ + return ThirtyTwoBytes_clone(&owner->a); +} +int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_a(uint32_t owner) { + LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* owner_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_a(owner_conv).data, 32); + return ret_arr; +} + +static inline struct LDKCVec_C2Tuple_u32TxOutZZ C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_b(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ *NONNULL_PTR owner){ + return CVec_C2Tuple_u32TxOutZZ_clone(&owner->b); +} +uint32_tArray __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_b(uint32_t owner) { + LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* owner_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ*)(owner & ~1); + LDKCVec_C2Tuple_u32TxOutZZ ret_var = C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_b(owner_conv); uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); + ret_arr = init_uint32_tArray(ret_var.datalen); uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t o = 0; o < ret_var.datalen; o++) { - LDKMonitorEvent *ret_conv_14_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); - *ret_conv_14_copy = ret_var.data[o]; - uint64_t ret_conv_14_ref = (uint64_t)ret_conv_14_copy; - ret_arr_ptr[o] = ret_conv_14_ref; + for (size_t u = 0; u < ret_var.datalen; u++) { + LDKC2Tuple_u32TxOutZ* ret_conv_20_conv = MALLOC(sizeof(LDKC2Tuple_u32TxOutZ), "LDKC2Tuple_u32TxOutZ"); + *ret_conv_20_conv = ret_var.data[u]; + ret_arr_ptr[u] = ((uint64_t)ret_conv_20_conv); } FREE(ret_var.data); return ret_arr; } -typedef struct LDKBroadcasterInterface_JCalls { - atomic_size_t refcnt; - uint32_t broadcast_transaction_meth; -} LDKBroadcasterInterface_JCalls; -static void LDKBroadcasterInterface_JCalls_free(void* this_arg) { - LDKBroadcasterInterface_JCalls *j_calls = (LDKBroadcasterInterface_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->broadcast_transaction_meth); - FREE(j_calls); +static inline LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ CVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ_clone(const LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ *orig) { + LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ) * orig->datalen, "LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(&orig->data[i]); } + return ret; } -void broadcast_transaction_LDKBroadcasterInterface_jcall(const void* this_arg, LDKTransaction tx) { - LDKBroadcasterInterface_JCalls *j_calls = (LDKBroadcasterInterface_JCalls*) this_arg; - LDKTransaction tx_var = tx; - int8_tArray tx_arr = init_arr(tx_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(tx_arr + 4), tx_var.data, tx_var.datalen); - Transaction_free(tx_var); - js_invoke_function_1(j_calls->broadcast_transaction_meth, tx_arr); +static inline LDKCVec_TxidZ CVec_ThirtyTwoBytesZ_clone(const LDKCVec_TxidZ *orig) { + LDKCVec_TxidZ ret = { .data = MALLOC(sizeof(LDKThirtyTwoBytes) * orig->datalen, "LDKCVec_TxidZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = ThirtyTwoBytes_clone(&orig->data[i]); + } + return ret; } -static void LDKBroadcasterInterface_JCalls_cloned(LDKBroadcasterInterface* new_obj) { - LDKBroadcasterInterface_JCalls *j_calls = (LDKBroadcasterInterface_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); +uint32_t __attribute__((visibility("default"))) TS_LDKBalance_ref_from_ptr(uint32_t ptr) { + LDKBalance *obj = (LDKBalance*)(ptr & ~1); + switch(obj->tag) { + case LDKBalance_ClaimableOnChannelClose: { + return 0 /* LDKBalance - ClaimableOnChannelClose */; (void) obj->claimable_on_channel_close.claimable_amount_satoshis; + } + case LDKBalance_ClaimableAwaitingConfirmations: { + return 0 /* LDKBalance - ClaimableAwaitingConfirmations */; (void) obj->claimable_awaiting_confirmations.claimable_amount_satoshis; (void) obj->claimable_awaiting_confirmations.confirmation_height; + } + case LDKBalance_ContentiousClaimable: { + return 0 /* LDKBalance - ContentiousClaimable */; (void) obj->contentious_claimable.claimable_amount_satoshis; (void) obj->contentious_claimable.timeout_height; + } + case LDKBalance_MaybeClaimableHTLCAwaitingTimeout: { + return 0 /* LDKBalance - MaybeClaimableHTLCAwaitingTimeout */; (void) obj->maybe_claimable_htlc_awaiting_timeout.claimable_amount_satoshis; (void) obj->maybe_claimable_htlc_awaiting_timeout.claimable_height; + } + default: abort(); + } } -static inline LDKBroadcasterInterface LDKBroadcasterInterface_init (/*TODO: JS Object Reference */void* o) { - LDKBroadcasterInterface_JCalls *calls = MALLOC(sizeof(LDKBroadcasterInterface_JCalls), "LDKBroadcasterInterface_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - - LDKBroadcasterInterface ret = { - .this_arg = (void*) calls, - .broadcast_transaction = broadcast_transaction_LDKBroadcasterInterface_jcall, - .free = LDKBroadcasterInterface_JCalls_free, - }; +static inline LDKCVec_BalanceZ CVec_BalanceZ_clone(const LDKCVec_BalanceZ *orig) { + LDKCVec_BalanceZ ret = { .data = MALLOC(sizeof(LDKBalance) * orig->datalen, "LDKCVec_BalanceZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = Balance_clone(&orig->data[i]); + } return ret; } -long __attribute__((visibility("default"))) TS_LDKBroadcasterInterface_new(/*TODO: JS Object Reference */void* o) { - LDKBroadcasterInterface *res_ptr = MALLOC(sizeof(LDKBroadcasterInterface), "LDKBroadcasterInterface"); - *res_ptr = LDKBroadcasterInterface_init(o); - return (long)res_ptr; +static inline struct LDKSignature C2Tuple_SignatureCVec_SignatureZZ_get_a(LDKC2Tuple_SignatureCVec_SignatureZZ *NONNULL_PTR owner){ + return owner->a; } -void __attribute__((visibility("default"))) TS_BroadcasterInterface_broadcast_transaction(uint32_t this_arg, int8_tArray tx) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBroadcasterInterface* this_arg_conv = (LDKBroadcasterInterface*)this_arg_ptr; - LDKTransaction tx_ref; - tx_ref.datalen = *((uint32_t*)tx); - tx_ref.data = MALLOC(tx_ref.datalen, "LDKTransaction Bytes"); - memcpy(tx_ref.data, (uint8_t*)(tx + 4), tx_ref.datalen); - tx_ref.data_is_owned = true; - (this_arg_conv->broadcast_transaction)(this_arg_conv->this_arg, tx_ref); +int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_SignatureCVec_SignatureZZ_get_a(uint32_t owner) { + LDKC2Tuple_SignatureCVec_SignatureZZ* owner_conv = (LDKC2Tuple_SignatureCVec_SignatureZZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, C2Tuple_SignatureCVec_SignatureZZ_get_a(owner_conv).compact_form, 64); + return ret_arr; } -typedef struct LDKKeysInterface_JCalls { +static inline struct LDKCVec_SignatureZ C2Tuple_SignatureCVec_SignatureZZ_get_b(LDKC2Tuple_SignatureCVec_SignatureZZ *NONNULL_PTR owner){ + return owner->b; +} +ptrArray __attribute__((visibility("default"))) TS_C2Tuple_SignatureCVec_SignatureZZ_get_b(uint32_t owner) { + LDKC2Tuple_SignatureCVec_SignatureZZ* owner_conv = (LDKC2Tuple_SignatureCVec_SignatureZZ*)(owner & ~1); + LDKCVec_SignatureZ ret_var = C2Tuple_SignatureCVec_SignatureZZ_get_b(owner_conv); + ptrArray ret_arr = NULL; + ret_arr = init_ptrArray(ret_var.datalen); + int8_tArray *ret_arr_ptr = (int8_tArray*)(ret_arr + 4); + for (size_t m = 0; m < ret_var.datalen; m++) { + int8_tArray ret_conv_12_arr = init_int8_tArray(64); + memcpy(ret_conv_12_arr->elems, ret_var.data[m].compact_form, 64); + ret_arr_ptr[m] = ret_conv_12_arr; + } + + FREE(ret_var.data); + return ret_arr; +} + +static inline struct LDKC2Tuple_SignatureCVec_SignatureZZ CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_ok(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return C2Tuple_SignatureCVec_SignatureZZ_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_ok(uint32_t owner) { + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* owner_conv = (LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(owner & ~1); + LDKC2Tuple_SignatureCVec_SignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_SignatureCVec_SignatureZZ), "LDKC2Tuple_SignatureCVec_SignatureZZ"); + *ret_conv = CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_ok(owner_conv); + return ((uint64_t)ret_conv); +} + +static inline void CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_err(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; +} +void __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_err(uint32_t owner) { + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* owner_conv = (LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(owner & ~1); + CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_err(owner_conv); +} + +static inline struct LDKSignature CResult_SignatureNoneZ_get_ok(LDKCResult_SignatureNoneZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; +} +int8_tArray __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_get_ok(uint32_t owner) { + LDKCResult_SignatureNoneZ* owner_conv = (LDKCResult_SignatureNoneZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, CResult_SignatureNoneZ_get_ok(owner_conv).compact_form, 64); + return ret_arr; +} + +static inline void CResult_SignatureNoneZ_get_err(LDKCResult_SignatureNoneZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; +} +void __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_get_err(uint32_t owner) { + LDKCResult_SignatureNoneZ* owner_conv = (LDKCResult_SignatureNoneZ*)(owner & ~1); + CResult_SignatureNoneZ_get_err(owner_conv); +} + +typedef struct LDKBaseSign_JCalls { atomic_size_t refcnt; - uint32_t get_node_secret_meth; - uint32_t get_destination_script_meth; - uint32_t get_shutdown_scriptpubkey_meth; - uint32_t get_channel_signer_meth; - uint32_t get_secure_random_bytes_meth; - uint32_t read_chan_signer_meth; - uint32_t sign_invoice_meth; - uint32_t get_inbound_payment_key_material_meth; -} LDKKeysInterface_JCalls; -static void LDKKeysInterface_JCalls_free(void* this_arg) { - LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; + uint32_t get_per_commitment_point_meth; + uint32_t release_commitment_secret_meth; + uint32_t validate_holder_commitment_meth; + uint32_t channel_keys_id_meth; + uint32_t sign_counterparty_commitment_meth; + uint32_t validate_counterparty_revocation_meth; + uint32_t sign_holder_commitment_and_htlcs_meth; + uint32_t sign_justice_revoked_output_meth; + uint32_t sign_justice_revoked_htlc_meth; + uint32_t sign_counterparty_htlc_transaction_meth; + uint32_t sign_closing_transaction_meth; + uint32_t sign_channel_announcement_meth; + uint32_t ready_channel_meth; +} LDKBaseSign_JCalls; +static void LDKBaseSign_JCalls_free(void* this_arg) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->get_node_secret_meth); - js_free(j_calls->get_destination_script_meth); - js_free(j_calls->get_shutdown_scriptpubkey_meth); - js_free(j_calls->get_channel_signer_meth); - js_free(j_calls->get_secure_random_bytes_meth); - js_free(j_calls->read_chan_signer_meth); - js_free(j_calls->sign_invoice_meth); - js_free(j_calls->get_inbound_payment_key_material_meth); + js_free_function_ptr(j_calls->get_per_commitment_point_meth); + js_free_function_ptr(j_calls->release_commitment_secret_meth); + js_free_function_ptr(j_calls->validate_holder_commitment_meth); + js_free_function_ptr(j_calls->channel_keys_id_meth); + js_free_function_ptr(j_calls->sign_counterparty_commitment_meth); + js_free_function_ptr(j_calls->validate_counterparty_revocation_meth); + js_free_function_ptr(j_calls->sign_holder_commitment_and_htlcs_meth); + js_free_function_ptr(j_calls->sign_justice_revoked_output_meth); + js_free_function_ptr(j_calls->sign_justice_revoked_htlc_meth); + js_free_function_ptr(j_calls->sign_counterparty_htlc_transaction_meth); + js_free_function_ptr(j_calls->sign_closing_transaction_meth); + js_free_function_ptr(j_calls->sign_channel_announcement_meth); + js_free_function_ptr(j_calls->ready_channel_meth); FREE(j_calls); } } -LDKSecretKey get_node_secret_LDKKeysInterface_jcall(const void* this_arg) { - LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; - int8_tArray ret = js_invoke_function_0(j_calls->get_node_secret_meth); - LDKSecretKey ret_ref; - CHECK(*((uint32_t*)ret) == 32); - memcpy(ret_ref.bytes, (uint8_t*)(ret + 4), 32); +LDKPublicKey get_per_commitment_point_LDKBaseSign_jcall(const void* this_arg, uint64_t idx) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + int8_tArray ret = (int8_tArray)js_invoke_function_1(j_calls->get_per_commitment_point_meth, (uint32_t)idx); + LDKPublicKey ret_ref; + CHECK(ret->arr_len == 33); + memcpy(ret_ref.compressed_form, ret->elems, 33); return ret_ref; } -LDKCVec_u8Z get_destination_script_LDKKeysInterface_jcall(const void* this_arg) { - LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; - int8_tArray ret = js_invoke_function_0(j_calls->get_destination_script_meth); - LDKCVec_u8Z ret_ref; - ret_ref.datalen = *((uint32_t*)ret); - ret_ref.data = MALLOC(ret_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(ret_ref.data, (uint8_t*)(ret + 4), ret_ref.datalen); +LDKThirtyTwoBytes release_commitment_secret_LDKBaseSign_jcall(const void* this_arg, uint64_t idx) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + int8_tArray ret = (int8_tArray)js_invoke_function_1(j_calls->release_commitment_secret_meth, (uint32_t)idx); + LDKThirtyTwoBytes ret_ref; + CHECK(ret->arr_len == 32); + memcpy(ret_ref.data, ret->elems, 32); return ret_ref; } -LDKShutdownScript get_shutdown_scriptpubkey_LDKKeysInterface_jcall(const void* this_arg) { - LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; - uint32_t ret = js_invoke_function_0(j_calls->get_shutdown_scriptpubkey_meth); - LDKShutdownScript ret_conv; - ret_conv.inner = (void*)(ret & (~1)); - ret_conv.is_owned = (ret & 1) || (ret == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv); - return ret_conv; -} -LDKSign get_channel_signer_LDKKeysInterface_jcall(const void* this_arg, bool inbound, uint64_t channel_value_satoshis) { - LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; - uint32_t ret = js_invoke_function_2(j_calls->get_channel_signer_meth, inbound, channel_value_satoshis); +LDKCResult_NoneNoneZ validate_holder_commitment_LDKBaseSign_jcall(const void* this_arg, const LDKHolderCommitmentTransaction * holder_tx) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + LDKHolderCommitmentTransaction holder_tx_var = *holder_tx; + uint64_t holder_tx_ref = 0; + holder_tx_var = HolderCommitmentTransaction_clone(holder_tx); + CHECK((((uint64_t)holder_tx_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&holder_tx_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(holder_tx_var); + holder_tx_ref = (uint64_t)holder_tx_var.inner; + if (holder_tx_var.is_owned) { + holder_tx_ref |= 1; + } + uint32_t ret = js_invoke_function_1(j_calls->validate_holder_commitment_meth, (uint32_t)holder_tx_ref); void* ret_ptr = (void*)(((uint64_t)ret) & ~1); CHECK_ACCESS(ret_ptr); - LDKSign ret_conv = *(LDKSign*)(ret_ptr); + LDKCResult_NoneNoneZ ret_conv = *(LDKCResult_NoneNoneZ*)(ret_ptr); FREE((void*)ret); return ret_conv; } -LDKThirtyTwoBytes get_secure_random_bytes_LDKKeysInterface_jcall(const void* this_arg) { - LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; - int8_tArray ret = js_invoke_function_0(j_calls->get_secure_random_bytes_meth); +LDKThirtyTwoBytes channel_keys_id_LDKBaseSign_jcall(const void* this_arg) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + int8_tArray ret = (int8_tArray)js_invoke_function_0(j_calls->channel_keys_id_meth); LDKThirtyTwoBytes ret_ref; - CHECK(*((uint32_t*)ret) == 32); - memcpy(ret_ref.data, (uint8_t*)(ret + 4), 32); + CHECK(ret->arr_len == 32); + memcpy(ret_ref.data, ret->elems, 32); return ret_ref; } -LDKCResult_SignDecodeErrorZ read_chan_signer_LDKKeysInterface_jcall(const void* this_arg, LDKu8slice reader) { - LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; - LDKu8slice reader_var = reader; - int8_tArray reader_arr = init_arr(reader_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(reader_arr + 4), reader_var.data, reader_var.datalen); - uint32_t ret = js_invoke_function_1(j_calls->read_chan_signer_meth, reader_arr); +LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ sign_counterparty_commitment_LDKBaseSign_jcall(const void* this_arg, const LDKCommitmentTransaction * commitment_tx) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + LDKCommitmentTransaction commitment_tx_var = *commitment_tx; + uint64_t commitment_tx_ref = 0; + commitment_tx_var = CommitmentTransaction_clone(commitment_tx); + CHECK((((uint64_t)commitment_tx_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&commitment_tx_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_var); + commitment_tx_ref = (uint64_t)commitment_tx_var.inner; + if (commitment_tx_var.is_owned) { + commitment_tx_ref |= 1; + } + uint32_t ret = js_invoke_function_1(j_calls->sign_counterparty_commitment_meth, (uint32_t)commitment_tx_ref); void* ret_ptr = (void*)(((uint64_t)ret) & ~1); CHECK_ACCESS(ret_ptr); - LDKCResult_SignDecodeErrorZ ret_conv = *(LDKCResult_SignDecodeErrorZ*)(ret_ptr); + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ ret_conv = *(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(ret_ptr); FREE((void*)ret); return ret_conv; } -LDKCResult_RecoverableSignatureNoneZ sign_invoice_LDKKeysInterface_jcall(const void* this_arg, LDKCVec_u8Z invoice_preimage) { - LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; - LDKCVec_u8Z invoice_preimage_var = invoice_preimage; - int8_tArray invoice_preimage_arr = init_arr(invoice_preimage_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(invoice_preimage_arr + 4), invoice_preimage_var.data, invoice_preimage_var.datalen); - CVec_u8Z_free(invoice_preimage_var); - uint32_t ret = js_invoke_function_1(j_calls->sign_invoice_meth, invoice_preimage_arr); +LDKCResult_NoneNoneZ validate_counterparty_revocation_LDKBaseSign_jcall(const void* this_arg, uint64_t idx, const uint8_t (* secret)[32]) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + int8_tArray secret_arr = init_int8_tArray(32); + memcpy(secret_arr->elems, *secret, 32); + uint32_t ret = js_invoke_function_2(j_calls->validate_counterparty_revocation_meth, (uint32_t)idx, (uint32_t)secret_arr); void* ret_ptr = (void*)(((uint64_t)ret) & ~1); CHECK_ACCESS(ret_ptr); - LDKCResult_RecoverableSignatureNoneZ ret_conv = *(LDKCResult_RecoverableSignatureNoneZ*)(ret_ptr); + LDKCResult_NoneNoneZ ret_conv = *(LDKCResult_NoneNoneZ*)(ret_ptr); FREE((void*)ret); return ret_conv; } -LDKThirtyTwoBytes get_inbound_payment_key_material_LDKKeysInterface_jcall(const void* this_arg) { - LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; - int8_tArray ret = js_invoke_function_0(j_calls->get_inbound_payment_key_material_meth); - LDKThirtyTwoBytes ret_ref; - CHECK(*((uint32_t*)ret) == 32); - memcpy(ret_ref.data, (uint8_t*)(ret + 4), 32); - return ret_ref; -} -static void LDKKeysInterface_JCalls_cloned(LDKKeysInterface* new_obj) { - LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); -} -static inline LDKKeysInterface LDKKeysInterface_init (/*TODO: JS Object Reference */void* o) { - LDKKeysInterface_JCalls *calls = MALLOC(sizeof(LDKKeysInterface_JCalls), "LDKKeysInterface_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - - LDKKeysInterface ret = { - .this_arg = (void*) calls, - .get_node_secret = get_node_secret_LDKKeysInterface_jcall, - .get_destination_script = get_destination_script_LDKKeysInterface_jcall, - .get_shutdown_scriptpubkey = get_shutdown_scriptpubkey_LDKKeysInterface_jcall, - .get_channel_signer = get_channel_signer_LDKKeysInterface_jcall, - .get_secure_random_bytes = get_secure_random_bytes_LDKKeysInterface_jcall, - .read_chan_signer = read_chan_signer_LDKKeysInterface_jcall, - .sign_invoice = sign_invoice_LDKKeysInterface_jcall, - .get_inbound_payment_key_material = get_inbound_payment_key_material_LDKKeysInterface_jcall, - .free = LDKKeysInterface_JCalls_free, - }; - return ret; -} -long __attribute__((visibility("default"))) TS_LDKKeysInterface_new(/*TODO: JS Object Reference */void* o) { - LDKKeysInterface *res_ptr = MALLOC(sizeof(LDKKeysInterface), "LDKKeysInterface"); - *res_ptr = LDKKeysInterface_init(o); - return (long)res_ptr; +LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ sign_holder_commitment_and_htlcs_LDKBaseSign_jcall(const void* this_arg, const LDKHolderCommitmentTransaction * commitment_tx) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + LDKHolderCommitmentTransaction commitment_tx_var = *commitment_tx; + uint64_t commitment_tx_ref = 0; + commitment_tx_var = HolderCommitmentTransaction_clone(commitment_tx); + CHECK((((uint64_t)commitment_tx_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&commitment_tx_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_var); + commitment_tx_ref = (uint64_t)commitment_tx_var.inner; + if (commitment_tx_var.is_owned) { + commitment_tx_ref |= 1; + } + uint32_t ret = js_invoke_function_1(j_calls->sign_holder_commitment_and_htlcs_meth, (uint32_t)commitment_tx_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ ret_conv = *(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_KeysInterface_get_node_secret(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), (this_arg_conv->get_node_secret)(this_arg_conv->this_arg).bytes, 32); - return ret_arr; +LDKCResult_SignatureNoneZ sign_justice_revoked_output_LDKBaseSign_jcall(const void* this_arg, LDKTransaction justice_tx, uintptr_t input, uint64_t amount, const uint8_t (* per_commitment_key)[32]) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + LDKTransaction justice_tx_var = justice_tx; + int8_tArray justice_tx_arr = init_int8_tArray(justice_tx_var.datalen); + memcpy(justice_tx_arr->elems, justice_tx_var.data, justice_tx_var.datalen); + Transaction_free(justice_tx_var); + int8_tArray per_commitment_key_arr = init_int8_tArray(32); + memcpy(per_commitment_key_arr->elems, *per_commitment_key, 32); + uint32_t ret = js_invoke_function_4(j_calls->sign_justice_revoked_output_meth, (uint32_t)justice_tx_arr, (uint32_t)input, (uint32_t)amount, (uint32_t)per_commitment_key_arr); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_SignatureNoneZ ret_conv = *(LDKCResult_SignatureNoneZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } - -int8_tArray __attribute__((visibility("default"))) TS_KeysInterface_get_destination_script(uint32_t this_arg) { +LDKCResult_SignatureNoneZ sign_justice_revoked_htlc_LDKBaseSign_jcall(const void* this_arg, LDKTransaction justice_tx, uintptr_t input, uint64_t amount, const uint8_t (* per_commitment_key)[32], const LDKHTLCOutputInCommitment * htlc) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + LDKTransaction justice_tx_var = justice_tx; + int8_tArray justice_tx_arr = init_int8_tArray(justice_tx_var.datalen); + memcpy(justice_tx_arr->elems, justice_tx_var.data, justice_tx_var.datalen); + Transaction_free(justice_tx_var); + int8_tArray per_commitment_key_arr = init_int8_tArray(32); + memcpy(per_commitment_key_arr->elems, *per_commitment_key, 32); + LDKHTLCOutputInCommitment htlc_var = *htlc; + uint64_t htlc_ref = 0; + htlc_var = HTLCOutputInCommitment_clone(htlc); + CHECK((((uint64_t)htlc_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&htlc_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_var); + htlc_ref = (uint64_t)htlc_var.inner; + if (htlc_var.is_owned) { + htlc_ref |= 1; + } + uint32_t ret = js_invoke_function_5(j_calls->sign_justice_revoked_htlc_meth, (uint32_t)justice_tx_arr, (uint32_t)input, (uint32_t)amount, (uint32_t)per_commitment_key_arr, (uint32_t)htlc_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_SignatureNoneZ ret_conv = *(LDKCResult_SignatureNoneZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; +} +LDKCResult_SignatureNoneZ sign_counterparty_htlc_transaction_LDKBaseSign_jcall(const void* this_arg, LDKTransaction htlc_tx, uintptr_t input, uint64_t amount, LDKPublicKey per_commitment_point, const LDKHTLCOutputInCommitment * htlc) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + LDKTransaction htlc_tx_var = htlc_tx; + int8_tArray htlc_tx_arr = init_int8_tArray(htlc_tx_var.datalen); + memcpy(htlc_tx_arr->elems, htlc_tx_var.data, htlc_tx_var.datalen); + Transaction_free(htlc_tx_var); + int8_tArray per_commitment_point_arr = init_int8_tArray(33); + memcpy(per_commitment_point_arr->elems, per_commitment_point.compressed_form, 33); + LDKHTLCOutputInCommitment htlc_var = *htlc; + uint64_t htlc_ref = 0; + htlc_var = HTLCOutputInCommitment_clone(htlc); + CHECK((((uint64_t)htlc_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&htlc_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_var); + htlc_ref = (uint64_t)htlc_var.inner; + if (htlc_var.is_owned) { + htlc_ref |= 1; + } + uint32_t ret = js_invoke_function_5(j_calls->sign_counterparty_htlc_transaction_meth, (uint32_t)htlc_tx_arr, (uint32_t)input, (uint32_t)amount, (uint32_t)per_commitment_point_arr, (uint32_t)htlc_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_SignatureNoneZ ret_conv = *(LDKCResult_SignatureNoneZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; +} +LDKCResult_SignatureNoneZ sign_closing_transaction_LDKBaseSign_jcall(const void* this_arg, const LDKClosingTransaction * closing_tx) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + LDKClosingTransaction closing_tx_var = *closing_tx; + uint64_t closing_tx_ref = 0; + closing_tx_var = ClosingTransaction_clone(closing_tx); + CHECK((((uint64_t)closing_tx_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&closing_tx_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(closing_tx_var); + closing_tx_ref = (uint64_t)closing_tx_var.inner; + if (closing_tx_var.is_owned) { + closing_tx_ref |= 1; + } + uint32_t ret = js_invoke_function_1(j_calls->sign_closing_transaction_meth, (uint32_t)closing_tx_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_SignatureNoneZ ret_conv = *(LDKCResult_SignatureNoneZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; +} +LDKCResult_SignatureNoneZ sign_channel_announcement_LDKBaseSign_jcall(const void* this_arg, const LDKUnsignedChannelAnnouncement * msg) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + LDKUnsignedChannelAnnouncement msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = UnsignedChannelAnnouncement_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + uint32_t ret = js_invoke_function_1(j_calls->sign_channel_announcement_meth, (uint32_t)msg_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_SignatureNoneZ ret_conv = *(LDKCResult_SignatureNoneZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; +} +void ready_channel_LDKBaseSign_jcall(void* this_arg, const LDKChannelTransactionParameters * channel_parameters) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + LDKChannelTransactionParameters channel_parameters_var = *channel_parameters; + uint64_t channel_parameters_ref = 0; + channel_parameters_var = ChannelTransactionParameters_clone(channel_parameters); + CHECK((((uint64_t)channel_parameters_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&channel_parameters_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_parameters_var); + channel_parameters_ref = (uint64_t)channel_parameters_var.inner; + if (channel_parameters_var.is_owned) { + channel_parameters_ref |= 1; + } + js_invoke_function_1(j_calls->ready_channel_meth, (uint32_t)channel_parameters_ref); +} +static void LDKBaseSign_JCalls_cloned(LDKBaseSign* new_obj) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); +} +static inline LDKBaseSign LDKBaseSign_init (/*TODO: JS Object Reference */void* o, uint32_t pubkeys) { + LDKBaseSign_JCalls *calls = MALLOC(sizeof(LDKBaseSign_JCalls), "LDKBaseSign_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o + + LDKChannelPublicKeys pubkeys_conv; + pubkeys_conv.inner = (void*)(pubkeys & (~1)); + pubkeys_conv.is_owned = (pubkeys & 1) || (pubkeys == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(pubkeys_conv); + + LDKBaseSign ret = { + .this_arg = (void*) calls, + .get_per_commitment_point = get_per_commitment_point_LDKBaseSign_jcall, + .release_commitment_secret = release_commitment_secret_LDKBaseSign_jcall, + .validate_holder_commitment = validate_holder_commitment_LDKBaseSign_jcall, + .channel_keys_id = channel_keys_id_LDKBaseSign_jcall, + .sign_counterparty_commitment = sign_counterparty_commitment_LDKBaseSign_jcall, + .validate_counterparty_revocation = validate_counterparty_revocation_LDKBaseSign_jcall, + .sign_holder_commitment_and_htlcs = sign_holder_commitment_and_htlcs_LDKBaseSign_jcall, + .sign_justice_revoked_output = sign_justice_revoked_output_LDKBaseSign_jcall, + .sign_justice_revoked_htlc = sign_justice_revoked_htlc_LDKBaseSign_jcall, + .sign_counterparty_htlc_transaction = sign_counterparty_htlc_transaction_LDKBaseSign_jcall, + .sign_closing_transaction = sign_closing_transaction_LDKBaseSign_jcall, + .sign_channel_announcement = sign_channel_announcement_LDKBaseSign_jcall, + .ready_channel = ready_channel_LDKBaseSign_jcall, + .free = LDKBaseSign_JCalls_free, + .pubkeys = pubkeys_conv, + .set_pubkeys = NULL, + }; + return ret; +} +long __attribute__((visibility("default"))) TS_LDKBaseSign_new(/*TODO: JS Object Reference */void* o, uint32_t pubkeys) { + LDKBaseSign *res_ptr = MALLOC(sizeof(LDKBaseSign), "LDKBaseSign"); + *res_ptr = LDKBaseSign_init(o, pubkeys); + return (long)res_ptr; +} +int8_tArray __attribute__((visibility("default"))) TS_BaseSign_get_per_commitment_point(uint32_t this_arg, int64_t idx) { void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; - LDKCVec_u8Z ret_var = (this_arg_conv->get_destination_script)(this_arg_conv->this_arg); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, (this_arg_conv->get_per_commitment_point)(this_arg_conv->this_arg, idx).compressed_form, 33); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_KeysInterface_get_shutdown_scriptpubkey(uint32_t this_arg) { +int8_tArray __attribute__((visibility("default"))) TS_BaseSign_release_commitment_secret(uint32_t this_arg, int64_t idx) { void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; - LDKShutdownScript ret_var = (this_arg_conv->get_shutdown_scriptpubkey)(this_arg_conv->this_arg); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, (this_arg_conv->release_commitment_secret)(this_arg_conv->this_arg, idx).data, 32); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_KeysInterface_get_channel_signer(uint32_t this_arg, jboolean inbound, int64_t channel_value_satoshis) { +uint32_t __attribute__((visibility("default"))) TS_BaseSign_validate_holder_commitment(uint32_t this_arg, uint32_t holder_tx) { void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; - LDKSign* ret_ret = MALLOC(sizeof(LDKSign), "LDKSign"); - *ret_ret = (this_arg_conv->get_channel_signer)(this_arg_conv->this_arg, inbound, channel_value_satoshis); - return (uint64_t)ret_ret; + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + LDKHolderCommitmentTransaction holder_tx_conv; + holder_tx_conv.inner = (void*)(holder_tx & (~1)); + holder_tx_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(holder_tx_conv); + LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); + *ret_conv = (this_arg_conv->validate_holder_commitment)(this_arg_conv->this_arg, &holder_tx_conv); + return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_KeysInterface_get_secure_random_bytes(uint32_t this_arg) { +int8_tArray __attribute__((visibility("default"))) TS_BaseSign_channel_keys_id(uint32_t this_arg) { void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), (this_arg_conv->get_secure_random_bytes)(this_arg_conv->this_arg).data, 32); + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, (this_arg_conv->channel_keys_id)(this_arg_conv->this_arg).data, 32); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_KeysInterface_read_chan_signer(uint32_t this_arg, int8_tArray reader) { +uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_counterparty_commitment(uint32_t this_arg, uint32_t commitment_tx) { void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; - LDKu8slice reader_ref; - reader_ref.datalen = *((uint32_t*)reader); - reader_ref.data = (int8_t*)(reader + 4); - LDKCResult_SignDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SignDecodeErrorZ), "LDKCResult_SignDecodeErrorZ"); - *ret_conv = (this_arg_conv->read_chan_signer)(this_arg_conv->this_arg, reader_ref); + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + LDKCommitmentTransaction commitment_tx_conv; + commitment_tx_conv.inner = (void*)(commitment_tx & (~1)); + commitment_tx_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_conv); + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ), "LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ"); + *ret_conv = (this_arg_conv->sign_counterparty_commitment)(this_arg_conv->this_arg, &commitment_tx_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_KeysInterface_sign_invoice(uint32_t this_arg, int8_tArray invoice_preimage) { +uint32_t __attribute__((visibility("default"))) TS_BaseSign_validate_counterparty_revocation(uint32_t this_arg, int64_t idx, int8_tArray secret) { void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; - LDKCVec_u8Z invoice_preimage_ref; - invoice_preimage_ref.datalen = *((uint32_t*)invoice_preimage); - invoice_preimage_ref.data = MALLOC(invoice_preimage_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(invoice_preimage_ref.data, (uint8_t*)(invoice_preimage + 4), invoice_preimage_ref.datalen); - LDKCResult_RecoverableSignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_RecoverableSignatureNoneZ), "LDKCResult_RecoverableSignatureNoneZ"); - *ret_conv = (this_arg_conv->sign_invoice)(this_arg_conv->this_arg, invoice_preimage_ref); + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + unsigned char secret_arr[32]; + CHECK(secret->arr_len == 32); + memcpy(secret_arr, secret->elems, 32); + unsigned char (*secret_ref)[32] = &secret_arr; + LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); + *ret_conv = (this_arg_conv->validate_counterparty_revocation)(this_arg_conv->this_arg, idx, secret_ref); return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_KeysInterface_get_inbound_payment_key_material(uint32_t this_arg) { +uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_holder_commitment_and_htlcs(uint32_t this_arg, uint32_t commitment_tx) { void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), (this_arg_conv->get_inbound_payment_key_material)(this_arg_conv->this_arg).data, 32); - return ret_arr; -} - -typedef struct LDKFeeEstimator_JCalls { - atomic_size_t refcnt; - uint32_t get_est_sat_per_1000_weight_meth; -} LDKFeeEstimator_JCalls; -static void LDKFeeEstimator_JCalls_free(void* this_arg) { - LDKFeeEstimator_JCalls *j_calls = (LDKFeeEstimator_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->get_est_sat_per_1000_weight_meth); - FREE(j_calls); - } -} -uint32_t get_est_sat_per_1000_weight_LDKFeeEstimator_jcall(const void* this_arg, LDKConfirmationTarget confirmation_target) { - LDKFeeEstimator_JCalls *j_calls = (LDKFeeEstimator_JCalls*) this_arg; - uint32_t confirmation_target_conv = LDKConfirmationTarget_to_js(confirmation_target); - return js_invoke_function_1(j_calls->get_est_sat_per_1000_weight_meth, confirmation_target_conv); -} -static void LDKFeeEstimator_JCalls_cloned(LDKFeeEstimator* new_obj) { - LDKFeeEstimator_JCalls *j_calls = (LDKFeeEstimator_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + LDKHolderCommitmentTransaction commitment_tx_conv; + commitment_tx_conv.inner = (void*)(commitment_tx & (~1)); + commitment_tx_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_conv); + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ), "LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ"); + *ret_conv = (this_arg_conv->sign_holder_commitment_and_htlcs)(this_arg_conv->this_arg, &commitment_tx_conv); + return (uint64_t)ret_conv; } -static inline LDKFeeEstimator LDKFeeEstimator_init (/*TODO: JS Object Reference */void* o) { - LDKFeeEstimator_JCalls *calls = MALLOC(sizeof(LDKFeeEstimator_JCalls), "LDKFeeEstimator_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - LDKFeeEstimator ret = { - .this_arg = (void*) calls, - .get_est_sat_per_1000_weight = get_est_sat_per_1000_weight_LDKFeeEstimator_jcall, - .free = LDKFeeEstimator_JCalls_free, - }; - return ret; -} -long __attribute__((visibility("default"))) TS_LDKFeeEstimator_new(/*TODO: JS Object Reference */void* o) { - LDKFeeEstimator *res_ptr = MALLOC(sizeof(LDKFeeEstimator), "LDKFeeEstimator"); - *res_ptr = LDKFeeEstimator_init(o); - return (long)res_ptr; -} -int32_t __attribute__((visibility("default"))) TS_FeeEstimator_get_est_sat_per_1000_weight(uint32_t this_arg, uint32_t confirmation_target) { +uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_justice_revoked_output(uint32_t this_arg, int8_tArray justice_tx, int64_t input, int64_t amount, int8_tArray per_commitment_key) { void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKFeeEstimator* this_arg_conv = (LDKFeeEstimator*)this_arg_ptr; - LDKConfirmationTarget confirmation_target_conv = LDKConfirmationTarget_from_js(confirmation_target); - int32_t ret_val = (this_arg_conv->get_est_sat_per_1000_weight)(this_arg_conv->this_arg, confirmation_target_conv); - return ret_val; + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + LDKTransaction justice_tx_ref; + justice_tx_ref.datalen = justice_tx->arr_len; + justice_tx_ref.data = MALLOC(justice_tx_ref.datalen, "LDKTransaction Bytes"); + memcpy(justice_tx_ref.data, justice_tx->elems, justice_tx_ref.datalen); + justice_tx_ref.data_is_owned = true; + unsigned char per_commitment_key_arr[32]; + CHECK(per_commitment_key->arr_len == 32); + memcpy(per_commitment_key_arr, per_commitment_key->elems, 32); + unsigned char (*per_commitment_key_ref)[32] = &per_commitment_key_arr; + LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); + *ret_conv = (this_arg_conv->sign_justice_revoked_output)(this_arg_conv->this_arg, justice_tx_ref, input, amount, per_commitment_key_ref); + return (uint64_t)ret_conv; } -typedef struct LDKLogger_JCalls { - atomic_size_t refcnt; - uint32_t log_meth; -} LDKLogger_JCalls; -static void LDKLogger_JCalls_free(void* this_arg) { - LDKLogger_JCalls *j_calls = (LDKLogger_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->log_meth); - FREE(j_calls); - } -} -void log_LDKLogger_jcall(const void* this_arg, const LDKRecord * record) { - LDKLogger_JCalls *j_calls = (LDKLogger_JCalls*) this_arg; - LDKRecord record_var = *record; - uint64_t record_ref = 0; - record_var = Record_clone(record); - CHECK((((uint64_t)record_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&record_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(record_var); - record_ref = (uint64_t)record_var.inner; - if (record_var.is_owned) { - record_ref |= 1; - } - js_invoke_function_1(j_calls->log_meth, record_ref); -} -static void LDKLogger_JCalls_cloned(LDKLogger* new_obj) { - LDKLogger_JCalls *j_calls = (LDKLogger_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); +uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_justice_revoked_htlc(uint32_t this_arg, int8_tArray justice_tx, int64_t input, int64_t amount, int8_tArray per_commitment_key, uint32_t htlc) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + LDKTransaction justice_tx_ref; + justice_tx_ref.datalen = justice_tx->arr_len; + justice_tx_ref.data = MALLOC(justice_tx_ref.datalen, "LDKTransaction Bytes"); + memcpy(justice_tx_ref.data, justice_tx->elems, justice_tx_ref.datalen); + justice_tx_ref.data_is_owned = true; + unsigned char per_commitment_key_arr[32]; + CHECK(per_commitment_key->arr_len == 32); + memcpy(per_commitment_key_arr, per_commitment_key->elems, 32); + unsigned char (*per_commitment_key_ref)[32] = &per_commitment_key_arr; + LDKHTLCOutputInCommitment htlc_conv; + htlc_conv.inner = (void*)(htlc & (~1)); + htlc_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_conv); + LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); + *ret_conv = (this_arg_conv->sign_justice_revoked_htlc)(this_arg_conv->this_arg, justice_tx_ref, input, amount, per_commitment_key_ref, &htlc_conv); + return (uint64_t)ret_conv; } -static inline LDKLogger LDKLogger_init (/*TODO: JS Object Reference */void* o) { - LDKLogger_JCalls *calls = MALLOC(sizeof(LDKLogger_JCalls), "LDKLogger_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - LDKLogger ret = { - .this_arg = (void*) calls, - .log = log_LDKLogger_jcall, - .free = LDKLogger_JCalls_free, - }; - return ret; +uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_counterparty_htlc_transaction(uint32_t this_arg, int8_tArray htlc_tx, int64_t input, int64_t amount, int8_tArray per_commitment_point, uint32_t htlc) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + LDKTransaction htlc_tx_ref; + htlc_tx_ref.datalen = htlc_tx->arr_len; + htlc_tx_ref.data = MALLOC(htlc_tx_ref.datalen, "LDKTransaction Bytes"); + memcpy(htlc_tx_ref.data, htlc_tx->elems, htlc_tx_ref.datalen); + htlc_tx_ref.data_is_owned = true; + LDKPublicKey per_commitment_point_ref; + CHECK(per_commitment_point->arr_len == 33); + memcpy(per_commitment_point_ref.compressed_form, per_commitment_point->elems, 33); + LDKHTLCOutputInCommitment htlc_conv; + htlc_conv.inner = (void*)(htlc & (~1)); + htlc_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_conv); + LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); + *ret_conv = (this_arg_conv->sign_counterparty_htlc_transaction)(this_arg_conv->this_arg, htlc_tx_ref, input, amount, per_commitment_point_ref, &htlc_conv); + return (uint64_t)ret_conv; } -long __attribute__((visibility("default"))) TS_LDKLogger_new(/*TODO: JS Object Reference */void* o) { - LDKLogger *res_ptr = MALLOC(sizeof(LDKLogger), "LDKLogger"); - *res_ptr = LDKLogger_init(o); - return (long)res_ptr; + +uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_closing_transaction(uint32_t this_arg, uint32_t closing_tx) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + LDKClosingTransaction closing_tx_conv; + closing_tx_conv.inner = (void*)(closing_tx & (~1)); + closing_tx_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(closing_tx_conv); + LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); + *ret_conv = (this_arg_conv->sign_closing_transaction)(this_arg_conv->this_arg, &closing_tx_conv); + return (uint64_t)ret_conv; } -static inline struct LDKThirtyTwoBytes C2Tuple_BlockHashChannelManagerZ_get_a(LDKC2Tuple_BlockHashChannelManagerZ *NONNULL_PTR tuple){ - return ThirtyTwoBytes_clone(&tuple->a); + +uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_channel_announcement(uint32_t this_arg, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + LDKUnsignedChannelAnnouncement msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); + *ret_conv = (this_arg_conv->sign_channel_announcement)(this_arg_conv->this_arg, &msg_conv); + return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelManagerZ_get_a(uint32_t tuple) { - LDKC2Tuple_BlockHashChannelManagerZ* tuple_conv = (LDKC2Tuple_BlockHashChannelManagerZ*)(tuple & ~1); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), C2Tuple_BlockHashChannelManagerZ_get_a(tuple_conv).data, 32); - return ret_arr; + +void __attribute__((visibility("default"))) TS_BaseSign_ready_channel(uint32_t this_arg, uint32_t channel_parameters) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + LDKChannelTransactionParameters channel_parameters_conv; + channel_parameters_conv.inner = (void*)(channel_parameters & (~1)); + channel_parameters_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_parameters_conv); + (this_arg_conv->ready_channel)(this_arg_conv->this_arg, &channel_parameters_conv); } -static inline struct LDKChannelManager *C2Tuple_BlockHashChannelManagerZ_get_b(LDKC2Tuple_BlockHashChannelManagerZ *NONNULL_PTR tuple){ - return &tuple->b; +LDKChannelPublicKeys LDKBaseSign_set_get_pubkeys(LDKBaseSign* this_arg) { + if (this_arg->set_pubkeys != NULL) + this_arg->set_pubkeys(this_arg); + return this_arg->pubkeys; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelManagerZ_get_b(uint32_t tuple) { - LDKC2Tuple_BlockHashChannelManagerZ* tuple_conv = (LDKC2Tuple_BlockHashChannelManagerZ*)(tuple & ~1); - LDKChannelManager ret_var = *C2Tuple_BlockHashChannelManagerZ_get_b(tuple_conv); +uint32_t __attribute__((visibility("default"))) TS_BaseSign_get_pubkeys(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + LDKChannelPublicKeys ret_var = LDKBaseSign_set_get_pubkeys(this_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner & ~1; + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ *val = (LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKC2Tuple_BlockHashChannelManagerZ* res_conv = &(*val->contents.result); - // Warning: we really need to clone here, but no clone is available for LDKC2Tuple_BlockHashChannelManagerZ - return ((uint64_t)res_conv) | 1; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ *val = (LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelConfigDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ChannelConfigDecodeErrorZ *val = (LDKCResult_ChannelConfigDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKChannelConfig res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelConfigDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ChannelConfigDecodeErrorZ *val = (LDKCResult_ChannelConfigDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_OutPointDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_OutPointDecodeErrorZ *val = (LDKCResult_OutPointDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKOutPoint res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_OutPointDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_OutPointDecodeErrorZ *val = (LDKCResult_OutPointDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -typedef struct LDKType_JCalls { +typedef struct LDKSign_JCalls { atomic_size_t refcnt; - uint32_t type_id_meth; - uint32_t debug_str_meth; + LDKBaseSign_JCalls* BaseSign; uint32_t write_meth; -} LDKType_JCalls; -static void LDKType_JCalls_free(void* this_arg) { - LDKType_JCalls *j_calls = (LDKType_JCalls*) this_arg; +} LDKSign_JCalls; +static void LDKSign_JCalls_free(void* this_arg) { + LDKSign_JCalls *j_calls = (LDKSign_JCalls*) this_arg; if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->type_id_meth); - js_free(j_calls->debug_str_meth); - js_free(j_calls->write_meth); + js_free_function_ptr(j_calls->write_meth); FREE(j_calls); } } -uint16_t type_id_LDKType_jcall(const void* this_arg) { - LDKType_JCalls *j_calls = (LDKType_JCalls*) this_arg; - return js_invoke_function_0(j_calls->type_id_meth); -} -LDKStr debug_str_LDKType_jcall(const void* this_arg) { - LDKType_JCalls *j_calls = (LDKType_JCalls*) this_arg; - uint32_t ret = js_invoke_function_0(j_calls->debug_str_meth); - LDKStr ret_conv = str_ref_to_owned_c(ret); - return ret_conv; -} -LDKCVec_u8Z write_LDKType_jcall(const void* this_arg) { - LDKType_JCalls *j_calls = (LDKType_JCalls*) this_arg; - int8_tArray ret = js_invoke_function_0(j_calls->write_meth); +LDKCVec_u8Z write_LDKSign_jcall(const void* this_arg) { + LDKSign_JCalls *j_calls = (LDKSign_JCalls*) this_arg; + int8_tArray ret = (int8_tArray)js_invoke_function_0(j_calls->write_meth); LDKCVec_u8Z ret_ref; - ret_ref.datalen = *((uint32_t*)ret); + ret_ref.datalen = ret->arr_len; ret_ref.data = MALLOC(ret_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(ret_ref.data, (uint8_t*)(ret + 4), ret_ref.datalen); + memcpy(ret_ref.data, ret->elems, ret_ref.datalen); return ret_ref; } -static void LDKType_JCalls_cloned(LDKType* new_obj) { - LDKType_JCalls *j_calls = (LDKType_JCalls*) new_obj->this_arg; +static void LDKSign_JCalls_cloned(LDKSign* new_obj) { + LDKSign_JCalls *j_calls = (LDKSign_JCalls*) new_obj->this_arg; atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); + atomic_fetch_add_explicit(&j_calls->BaseSign->refcnt, 1, memory_order_release); } -static inline LDKType LDKType_init (/*TODO: JS Object Reference */void* o) { - LDKType_JCalls *calls = MALLOC(sizeof(LDKType_JCalls), "LDKType_JCalls"); +static inline LDKSign LDKSign_init (/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */void* BaseSign, uint32_t pubkeys) { + LDKSign_JCalls *calls = MALLOC(sizeof(LDKSign_JCalls), "LDKSign_JCalls"); atomic_init(&calls->refcnt, 1); //TODO: Assign calls->o from o - LDKType ret = { + LDKChannelPublicKeys pubkeys_conv; + pubkeys_conv.inner = (void*)(pubkeys & (~1)); + pubkeys_conv.is_owned = (pubkeys & 1) || (pubkeys == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(pubkeys_conv); + + LDKSign ret = { .this_arg = (void*) calls, - .type_id = type_id_LDKType_jcall, - .debug_str = debug_str_LDKType_jcall, - .write = write_LDKType_jcall, - .cloned = LDKType_JCalls_cloned, - .free = LDKType_JCalls_free, + .write = write_LDKSign_jcall, + .cloned = LDKSign_JCalls_cloned, + .free = LDKSign_JCalls_free, + .BaseSign = LDKBaseSign_init(BaseSign, pubkeys), }; + calls->BaseSign = ret.BaseSign.this_arg; return ret; } -long __attribute__((visibility("default"))) TS_LDKType_new(/*TODO: JS Object Reference */void* o) { - LDKType *res_ptr = MALLOC(sizeof(LDKType), "LDKType"); - *res_ptr = LDKType_init(o); +long __attribute__((visibility("default"))) TS_LDKSign_new(/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */ void* BaseSign, uint32_t pubkeys) { + LDKSign *res_ptr = MALLOC(sizeof(LDKSign), "LDKSign"); + *res_ptr = LDKSign_init(o, BaseSign, pubkeys); return (long)res_ptr; } -int16_t __attribute__((visibility("default"))) TS_Type_type_id(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKType* this_arg_conv = (LDKType*)this_arg_ptr; - int16_t ret_val = (this_arg_conv->type_id)(this_arg_conv->this_arg); - return ret_val; -} - -jstring __attribute__((visibility("default"))) TS_Type_debug_str(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKType* this_arg_conv = (LDKType*)this_arg_ptr; - LDKStr ret_str = (this_arg_conv->debug_str)(this_arg_conv->this_arg); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; -} - -int8_tArray __attribute__((visibility("default"))) TS_Type_write(uint32_t this_arg) { +int8_tArray __attribute__((visibility("default"))) TS_Sign_write(uint32_t this_arg) { void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKType* this_arg_conv = (LDKType*)this_arg_ptr; + LDKSign* this_arg_conv = (LDKSign*)this_arg_ptr; LDKCVec_u8Z ret_var = (this_arg_conv->write)(this_arg_conv->this_arg); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_LDKCOption_TypeZ_ref_from_ptr(uint32_t ptr) { - LDKCOption_TypeZ *obj = (LDKCOption_TypeZ*)(ptr & ~1); - switch(obj->tag) { - case LDKCOption_TypeZ_Some: { - LDKType* some_ret = MALLOC(sizeof(LDKType), "LDKType"); - *some_ret = Type_clone(&obj->some); - return 0 /* LDKCOption_TypeZ - Some */; (void) (uint64_t)some_ret; - } - case LDKCOption_TypeZ_None: { - return 0 /* LDKCOption_TypeZ - None */; - } - default: abort(); - } -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_COption_TypeZDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_COption_TypeZDecodeErrorZ *val = (LDKCResult_COption_TypeZDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - uint64_t res_ref = ((uint64_t)&(*val->contents.result)) | 1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_COption_TypeZDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_COption_TypeZDecodeErrorZ *val = (LDKCResult_COption_TypeZDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKPaymentError_ref_from_ptr(uint32_t ptr) { - LDKPaymentError *obj = (LDKPaymentError*)(ptr & ~1); - switch(obj->tag) { - case LDKPaymentError_Invoice: { - LDKStr invoice_str = obj->invoice; - jstring invoice_conv = str_ref_to_ts(invoice_str.chars, invoice_str.len); - return 0 /* LDKPaymentError - Invoice */; (void) invoice_conv; - } - case LDKPaymentError_Routing: { - LDKLightningError routing_var = obj->routing; - uint64_t routing_ref = 0; - CHECK((((uint64_t)routing_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&routing_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(routing_var); - routing_ref = (uint64_t)routing_var.inner & ~1; - return 0 /* LDKPaymentError - Routing */; (void) routing_ref; - } - case LDKPaymentError_Sending: { - uint64_t sending_ref = ((uint64_t)&obj->sending) | 1; - return 0 /* LDKPaymentError - Sending */; (void) sending_ref; - } - default: abort(); - } -} -int8_tArray __attribute__((visibility("default"))) TS_LDKCResult_PaymentIdPaymentErrorZ_get_ok(uint32_t arg) { - LDKCResult_PaymentIdPaymentErrorZ *val = (LDKCResult_PaymentIdPaymentErrorZ*)(arg & ~1); - CHECK(val->result_ok); - int8_tArray res_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(res_arr + 4), (*val->contents.result).data, 32); - return res_arr; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PaymentIdPaymentErrorZ_get_err(uint32_t arg) { - LDKCResult_PaymentIdPaymentErrorZ *val = (LDKCResult_PaymentIdPaymentErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint64_t err_ref = ((uint64_t)&(*val->contents.err)) | 1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_SiPrefixNoneZ_get_ok(uint32_t arg) { - LDKCResult_SiPrefixNoneZ *val = (LDKCResult_SiPrefixNoneZ*)(arg & ~1); - CHECK(val->result_ok); - uint32_t res_conv = LDKSiPrefix_to_js((*val->contents.result)); - return res_conv; -} -void __attribute__((visibility("default"))) TS_LDKCResult_SiPrefixNoneZ_get_err(uint32_t arg) { - LDKCResult_SiPrefixNoneZ *val = (LDKCResult_SiPrefixNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_InvoiceNoneZ_get_ok(uint32_t arg) { - LDKCResult_InvoiceNoneZ *val = (LDKCResult_InvoiceNoneZ*)(arg & ~1); - CHECK(val->result_ok); - LDKInvoice res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -void __attribute__((visibility("default"))) TS_LDKCResult_InvoiceNoneZ_get_err(uint32_t arg) { - LDKCResult_InvoiceNoneZ *val = (LDKCResult_InvoiceNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; +static inline struct LDKThirtyTwoBytes C2Tuple_BlockHashChannelMonitorZ_get_a(LDKC2Tuple_BlockHashChannelMonitorZ *NONNULL_PTR owner){ + return ThirtyTwoBytes_clone(&owner->a); } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_SignedRawInvoiceNoneZ_get_ok(uint32_t arg) { - LDKCResult_SignedRawInvoiceNoneZ *val = (LDKCResult_SignedRawInvoiceNoneZ*)(arg & ~1); - CHECK(val->result_ok); - LDKSignedRawInvoice res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -void __attribute__((visibility("default"))) TS_LDKCResult_SignedRawInvoiceNoneZ_get_err(uint32_t arg) { - LDKCResult_SignedRawInvoiceNoneZ *val = (LDKCResult_SignedRawInvoiceNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; +int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_get_a(uint32_t owner) { + LDKC2Tuple_BlockHashChannelMonitorZ* owner_conv = (LDKC2Tuple_BlockHashChannelMonitorZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, C2Tuple_BlockHashChannelMonitorZ_get_a(owner_conv).data, 32); + return ret_arr; } -static inline struct LDKRawInvoice C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_a(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ *NONNULL_PTR tuple){ - return RawInvoice_clone(&tuple->a); + +static inline struct LDKChannelMonitor C2Tuple_BlockHashChannelMonitorZ_get_b(LDKC2Tuple_BlockHashChannelMonitorZ *NONNULL_PTR owner){ + return ChannelMonitor_clone(&owner->b); } -uint32_t __attribute__((visibility("default"))) TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_a(uint32_t tuple) { - LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ* tuple_conv = (LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ*)(tuple & ~1); - LDKRawInvoice ret_var = C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_a(tuple_conv); +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_get_b(uint32_t owner) { + LDKC2Tuple_BlockHashChannelMonitorZ* owner_conv = (LDKC2Tuple_BlockHashChannelMonitorZ*)(owner & ~1); + LDKChannelMonitor ret_var = C2Tuple_BlockHashChannelMonitorZ_get_b(owner_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -3717,22 +2266,24 @@ uint32_t __attribute__((visibility("default"))) TS_C3Tuple_RawInvoice_u832Invoi return ret_ref; } -static inline struct LDKThirtyTwoBytes C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_b(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ *NONNULL_PTR tuple){ - return ThirtyTwoBytes_clone(&tuple->b); +static inline struct LDKC2Tuple_BlockHashChannelMonitorZ CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_ok(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return C2Tuple_BlockHashChannelMonitorZ_clone(&*owner->contents.result); } -int8_tArray __attribute__((visibility("default"))) TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_b(uint32_t tuple) { - LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ* tuple_conv = (LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ*)(tuple & ~1); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_b(tuple_conv).data, 32); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* owner_conv = (LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ*)(owner & ~1); + LDKC2Tuple_BlockHashChannelMonitorZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlockHashChannelMonitorZ), "LDKC2Tuple_BlockHashChannelMonitorZ"); + *ret_conv = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_ok(owner_conv); + return ((uint64_t)ret_conv); } -static inline struct LDKInvoiceSignature C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_c(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ *NONNULL_PTR tuple){ - return InvoiceSignature_clone(&tuple->c); +static inline struct LDKDecodeError CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_err(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -uint32_t __attribute__((visibility("default"))) TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_c(uint32_t tuple) { - LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ* tuple_conv = (LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ*)(tuple & ~1); - LDKInvoiceSignature ret_var = C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_c(tuple_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* owner_conv = (LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_err(owner_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -3744,219 +2295,13 @@ uint32_t __attribute__((visibility("default"))) TS_C3Tuple_RawInvoice_u832Invoi return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PayeePubKeyErrorZ_get_ok(uint32_t arg) { - LDKCResult_PayeePubKeyErrorZ *val = (LDKCResult_PayeePubKeyErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKPayeePubKey res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PayeePubKeyErrorZ_get_err(uint32_t arg) { - LDKCResult_PayeePubKeyErrorZ *val = (LDKCResult_PayeePubKeyErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKSecp256k1Error_to_js((*val->contents.err)); - return err_conv; -} -static inline LDKCVec_PrivateRouteZ CVec_PrivateRouteZ_clone(const LDKCVec_PrivateRouteZ *orig) { - LDKCVec_PrivateRouteZ ret = { .data = MALLOC(sizeof(LDKPrivateRoute) * orig->datalen, "LDKCVec_PrivateRouteZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = PrivateRoute_clone(&orig->data[i]); - } - return ret; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PositiveTimestampCreationErrorZ_get_ok(uint32_t arg) { - LDKCResult_PositiveTimestampCreationErrorZ *val = (LDKCResult_PositiveTimestampCreationErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKPositiveTimestamp res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PositiveTimestampCreationErrorZ_get_err(uint32_t arg) { - LDKCResult_PositiveTimestampCreationErrorZ *val = (LDKCResult_PositiveTimestampCreationErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKCreationError_to_js((*val->contents.err)); - return err_conv; -} -void __attribute__((visibility("default"))) TS_LDKCResult_NoneSemanticErrorZ_get_ok(uint32_t arg) { - LDKCResult_NoneSemanticErrorZ *val = (LDKCResult_NoneSemanticErrorZ*)(arg & ~1); - CHECK(val->result_ok); - return *val->contents.result; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NoneSemanticErrorZ_get_err(uint32_t arg) { - LDKCResult_NoneSemanticErrorZ *val = (LDKCResult_NoneSemanticErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKSemanticError_to_js((*val->contents.err)); - return err_conv; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_InvoiceSemanticErrorZ_get_ok(uint32_t arg) { - LDKCResult_InvoiceSemanticErrorZ *val = (LDKCResult_InvoiceSemanticErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKInvoice res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_InvoiceSemanticErrorZ_get_err(uint32_t arg) { - LDKCResult_InvoiceSemanticErrorZ *val = (LDKCResult_InvoiceSemanticErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKSemanticError_to_js((*val->contents.err)); - return err_conv; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_DescriptionCreationErrorZ_get_ok(uint32_t arg) { - LDKCResult_DescriptionCreationErrorZ *val = (LDKCResult_DescriptionCreationErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKDescription res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_DescriptionCreationErrorZ_get_err(uint32_t arg) { - LDKCResult_DescriptionCreationErrorZ *val = (LDKCResult_DescriptionCreationErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKCreationError_to_js((*val->contents.err)); - return err_conv; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ExpiryTimeCreationErrorZ_get_ok(uint32_t arg) { - LDKCResult_ExpiryTimeCreationErrorZ *val = (LDKCResult_ExpiryTimeCreationErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKExpiryTime res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ExpiryTimeCreationErrorZ_get_err(uint32_t arg) { - LDKCResult_ExpiryTimeCreationErrorZ *val = (LDKCResult_ExpiryTimeCreationErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKCreationError_to_js((*val->contents.err)); - return err_conv; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PrivateRouteCreationErrorZ_get_ok(uint32_t arg) { - LDKCResult_PrivateRouteCreationErrorZ *val = (LDKCResult_PrivateRouteCreationErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKPrivateRoute res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PrivateRouteCreationErrorZ_get_err(uint32_t arg) { - LDKCResult_PrivateRouteCreationErrorZ *val = (LDKCResult_PrivateRouteCreationErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKCreationError_to_js((*val->contents.err)); - return err_conv; -} -jstring __attribute__((visibility("default"))) TS_LDKCResult_StringErrorZ_get_ok(uint32_t arg) { - LDKCResult_StringErrorZ *val = (LDKCResult_StringErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKStr res_str = (*val->contents.result); - jstring res_conv = str_ref_to_ts(res_str.chars, res_str.len); - return res_conv; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_StringErrorZ_get_err(uint32_t arg) { - LDKCResult_StringErrorZ *val = (LDKCResult_StringErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKSecp256k1Error_to_js((*val->contents.err)); - return err_conv; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelMonitorUpdateDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ChannelMonitorUpdateDecodeErrorZ *val = (LDKCResult_ChannelMonitorUpdateDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKChannelMonitorUpdate res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelMonitorUpdateDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ChannelMonitorUpdateDecodeErrorZ *val = (LDKCResult_ChannelMonitorUpdateDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCOption_MonitorEventZ_ref_from_ptr(uint32_t ptr) { - LDKCOption_MonitorEventZ *obj = (LDKCOption_MonitorEventZ*)(ptr & ~1); - switch(obj->tag) { - case LDKCOption_MonitorEventZ_Some: { - uint64_t some_ref = ((uint64_t)&obj->some) | 1; - return 0 /* LDKCOption_MonitorEventZ - Some */; (void) some_ref; - } - case LDKCOption_MonitorEventZ_None: { - return 0 /* LDKCOption_MonitorEventZ - None */; - } - default: abort(); - } -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_COption_MonitorEventZDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_COption_MonitorEventZDecodeErrorZ *val = (LDKCResult_COption_MonitorEventZDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - uint64_t res_ref = ((uint64_t)&(*val->contents.result)) | 1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_COption_MonitorEventZDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_COption_MonitorEventZDecodeErrorZ *val = (LDKCResult_COption_MonitorEventZDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_HTLCUpdateDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_HTLCUpdateDecodeErrorZ *val = (LDKCResult_HTLCUpdateDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKHTLCUpdate res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; +static inline struct LDKRouteHop CResult_RouteHopDecodeErrorZ_get_ok(LDKCResult_RouteHopDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return RouteHop_clone(&*owner->contents.result); } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_HTLCUpdateDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_HTLCUpdateDecodeErrorZ *val = (LDKCResult_HTLCUpdateDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -static inline struct LDKOutPoint C2Tuple_OutPointScriptZ_get_a(LDKC2Tuple_OutPointScriptZ *NONNULL_PTR tuple){ - return OutPoint_clone(&tuple->a); -} -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_OutPointScriptZ_get_a(uint32_t tuple) { - LDKC2Tuple_OutPointScriptZ* tuple_conv = (LDKC2Tuple_OutPointScriptZ*)(tuple & ~1); - LDKOutPoint ret_var = C2Tuple_OutPointScriptZ_get_a(tuple_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_RouteHopDecodeErrorZ* owner_conv = (LDKCResult_RouteHopDecodeErrorZ*)(owner & ~1); + LDKRouteHop ret_var = CResult_RouteHopDecodeErrorZ_get_ok(owner_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -3968,260 +2313,178 @@ uint32_t __attribute__((visibility("default"))) TS_C2Tuple_OutPointScriptZ_get_ return ret_ref; } -static inline struct LDKCVec_u8Z C2Tuple_OutPointScriptZ_get_b(LDKC2Tuple_OutPointScriptZ *NONNULL_PTR tuple){ - return CVec_u8Z_clone(&tuple->b); +static inline struct LDKDecodeError CResult_RouteHopDecodeErrorZ_get_err(LDKCResult_RouteHopDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_OutPointScriptZ_get_b(uint32_t tuple) { - LDKC2Tuple_OutPointScriptZ* tuple_conv = (LDKC2Tuple_OutPointScriptZ*)(tuple & ~1); - LDKCVec_u8Z ret_var = C2Tuple_OutPointScriptZ_get_b(tuple_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -static inline uint32_t C2Tuple_u32ScriptZ_get_a(LDKC2Tuple_u32ScriptZ *NONNULL_PTR tuple){ - return tuple->a; -} -int32_t __attribute__((visibility("default"))) TS_C2Tuple_u32ScriptZ_get_a(uint32_t tuple) { - LDKC2Tuple_u32ScriptZ* tuple_conv = (LDKC2Tuple_u32ScriptZ*)(tuple & ~1); - int32_t ret_val = C2Tuple_u32ScriptZ_get_a(tuple_conv); - return ret_val; -} - -static inline struct LDKCVec_u8Z C2Tuple_u32ScriptZ_get_b(LDKC2Tuple_u32ScriptZ *NONNULL_PTR tuple){ - return CVec_u8Z_clone(&tuple->b); -} -int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_u32ScriptZ_get_b(uint32_t tuple) { - LDKC2Tuple_u32ScriptZ* tuple_conv = (LDKC2Tuple_u32ScriptZ*)(tuple & ~1); - LDKCVec_u8Z ret_var = C2Tuple_u32ScriptZ_get_b(tuple_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_RouteHopDecodeErrorZ* owner_conv = (LDKCResult_RouteHopDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_RouteHopDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline LDKCVec_C2Tuple_u32ScriptZZ CVec_C2Tuple_u32ScriptZZ_clone(const LDKCVec_C2Tuple_u32ScriptZZ *orig) { - LDKCVec_C2Tuple_u32ScriptZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_u32ScriptZ) * orig->datalen, "LDKCVec_C2Tuple_u32ScriptZZ clone bytes"), .datalen = orig->datalen }; +static inline LDKCVec_CVec_RouteHopZZ CVec_CVec_RouteHopZZ_clone(const LDKCVec_CVec_RouteHopZZ *orig) { + LDKCVec_CVec_RouteHopZZ ret = { .data = MALLOC(sizeof(LDKCVec_RouteHopZ) * orig->datalen, "LDKCVec_CVec_RouteHopZZ clone bytes"), .datalen = orig->datalen }; for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = C2Tuple_u32ScriptZ_clone(&orig->data[i]); + ret.data[i] = CVec_RouteHopZ_clone(&orig->data[i]); } return ret; } -static inline struct LDKThirtyTwoBytes C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_a(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ *NONNULL_PTR tuple){ - return ThirtyTwoBytes_clone(&tuple->a); +static inline struct LDKRoute CResult_RouteDecodeErrorZ_get_ok(LDKCResult_RouteDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return Route_clone(&*owner->contents.result); } -int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_a(uint32_t tuple) { - LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* tuple_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ*)(tuple & ~1); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_a(tuple_conv).data, 32); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_RouteDecodeErrorZ* owner_conv = (LDKCResult_RouteDecodeErrorZ*)(owner & ~1); + LDKRoute ret_var = CResult_RouteDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline struct LDKCVec_C2Tuple_u32ScriptZZ C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_b(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ *NONNULL_PTR tuple){ - return CVec_C2Tuple_u32ScriptZZ_clone(&tuple->b); +static inline struct LDKDecodeError CResult_RouteDecodeErrorZ_get_err(LDKCResult_RouteDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -uint32_tArray __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_b(uint32_t tuple) { - LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* tuple_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ*)(tuple & ~1); - LDKCVec_C2Tuple_u32ScriptZZ ret_var = C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_b(tuple_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t v = 0; v < ret_var.datalen; v++) { - LDKC2Tuple_u32ScriptZ* ret_conv_21_conv = MALLOC(sizeof(LDKC2Tuple_u32ScriptZ), "LDKC2Tuple_u32ScriptZ"); - *ret_conv_21_conv = ret_var.data[v]; - ret_arr_ptr[v] = ((uint64_t)ret_conv_21_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_RouteDecodeErrorZ* owner_conv = (LDKCResult_RouteDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_RouteDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - - FREE(ret_var.data); - return ret_arr; + return ret_ref; } -static inline LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ_clone(const LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ *orig) { - LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ) * orig->datalen, "LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone(&orig->data[i]); - } - return ret; +static inline struct LDKRouteParameters CResult_RouteParametersDecodeErrorZ_get_ok(LDKCResult_RouteParametersDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return RouteParameters_clone(&*owner->contents.result); } -static inline LDKCVec_EventZ CVec_EventZ_clone(const LDKCVec_EventZ *orig) { - LDKCVec_EventZ ret = { .data = MALLOC(sizeof(LDKEvent) * orig->datalen, "LDKCVec_EventZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = Event_clone(&orig->data[i]); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_RouteParametersDecodeErrorZ* owner_conv = (LDKCResult_RouteParametersDecodeErrorZ*)(owner & ~1); + LDKRouteParameters ret_var = CResult_RouteParametersDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; -} -static inline uint32_t C2Tuple_u32TxOutZ_get_a(LDKC2Tuple_u32TxOutZ *NONNULL_PTR tuple){ - return tuple->a; -} -int32_t __attribute__((visibility("default"))) TS_C2Tuple_u32TxOutZ_get_a(uint32_t tuple) { - LDKC2Tuple_u32TxOutZ* tuple_conv = (LDKC2Tuple_u32TxOutZ*)(tuple & ~1); - int32_t ret_val = C2Tuple_u32TxOutZ_get_a(tuple_conv); - return ret_val; + return ret_ref; } -static inline struct LDKTxOut C2Tuple_u32TxOutZ_get_b(LDKC2Tuple_u32TxOutZ *NONNULL_PTR tuple){ - return TxOut_clone(&tuple->b); +static inline struct LDKDecodeError CResult_RouteParametersDecodeErrorZ_get_err(LDKCResult_RouteParametersDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_u32TxOutZ_get_b(uint32_t tuple) { - LDKC2Tuple_u32TxOutZ* tuple_conv = (LDKC2Tuple_u32TxOutZ*)(tuple & ~1); - LDKTxOut* ret_ref = MALLOC(sizeof(LDKTxOut), "LDKTxOut"); - *ret_ref = C2Tuple_u32TxOutZ_get_b(tuple_conv); - return (uint64_t)ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_RouteParametersDecodeErrorZ* owner_conv = (LDKCResult_RouteParametersDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_RouteParametersDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline LDKCVec_C2Tuple_u32TxOutZZ CVec_C2Tuple_u32TxOutZZ_clone(const LDKCVec_C2Tuple_u32TxOutZZ *orig) { - LDKCVec_C2Tuple_u32TxOutZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_u32TxOutZ) * orig->datalen, "LDKCVec_C2Tuple_u32TxOutZZ clone bytes"), .datalen = orig->datalen }; +static inline LDKCVec_RouteHintZ CVec_RouteHintZ_clone(const LDKCVec_RouteHintZ *orig) { + LDKCVec_RouteHintZ ret = { .data = MALLOC(sizeof(LDKRouteHint) * orig->datalen, "LDKCVec_RouteHintZ clone bytes"), .datalen = orig->datalen }; for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = C2Tuple_u32TxOutZ_clone(&orig->data[i]); + ret.data[i] = RouteHint_clone(&orig->data[i]); } return ret; } -static inline struct LDKThirtyTwoBytes C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_a(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ *NONNULL_PTR tuple){ - return ThirtyTwoBytes_clone(&tuple->a); +static inline struct LDKPayee CResult_PayeeDecodeErrorZ_get_ok(LDKCResult_PayeeDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return Payee_clone(&*owner->contents.result); } -int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_a(uint32_t tuple) { - LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* tuple_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ*)(tuple & ~1); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_a(tuple_conv).data, 32); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_PayeeDecodeErrorZ* owner_conv = (LDKCResult_PayeeDecodeErrorZ*)(owner & ~1); + LDKPayee ret_var = CResult_PayeeDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline struct LDKCVec_C2Tuple_u32TxOutZZ C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_b(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ *NONNULL_PTR tuple){ - return CVec_C2Tuple_u32TxOutZZ_clone(&tuple->b); +static inline struct LDKDecodeError CResult_PayeeDecodeErrorZ_get_err(LDKCResult_PayeeDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -uint32_tArray __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_b(uint32_t tuple) { - LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* tuple_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ*)(tuple & ~1); - LDKCVec_C2Tuple_u32TxOutZZ ret_var = C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_b(tuple_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t u = 0; u < ret_var.datalen; u++) { - LDKC2Tuple_u32TxOutZ* ret_conv_20_conv = MALLOC(sizeof(LDKC2Tuple_u32TxOutZ), "LDKC2Tuple_u32TxOutZ"); - *ret_conv_20_conv = ret_var.data[u]; - ret_arr_ptr[u] = ((uint64_t)ret_conv_20_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_PayeeDecodeErrorZ* owner_conv = (LDKCResult_PayeeDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_PayeeDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - - FREE(ret_var.data); - return ret_arr; + return ret_ref; } -static inline LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ CVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ_clone(const LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ *orig) { - LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ) * orig->datalen, "LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ clone bytes"), .datalen = orig->datalen }; +static inline LDKCVec_RouteHintHopZ CVec_RouteHintHopZ_clone(const LDKCVec_RouteHintHopZ *orig) { + LDKCVec_RouteHintHopZ ret = { .data = MALLOC(sizeof(LDKRouteHintHop) * orig->datalen, "LDKCVec_RouteHintHopZ clone bytes"), .datalen = orig->datalen }; for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(&orig->data[i]); + ret.data[i] = RouteHintHop_clone(&orig->data[i]); } return ret; } -uint32_t __attribute__((visibility("default"))) TS_LDKBalance_ref_from_ptr(uint32_t ptr) { - LDKBalance *obj = (LDKBalance*)(ptr & ~1); - switch(obj->tag) { - case LDKBalance_ClaimableOnChannelClose: { - return 0 /* LDKBalance - ClaimableOnChannelClose */; (void) obj->claimable_on_channel_close.claimable_amount_satoshis; - } - case LDKBalance_ClaimableAwaitingConfirmations: { - return 0 /* LDKBalance - ClaimableAwaitingConfirmations */; (void) obj->claimable_awaiting_confirmations.claimable_amount_satoshis; (void) obj->claimable_awaiting_confirmations.confirmation_height; - } - case LDKBalance_ContentiousClaimable: { - return 0 /* LDKBalance - ContentiousClaimable */; (void) obj->contentious_claimable.claimable_amount_satoshis; (void) obj->contentious_claimable.timeout_height; - } - case LDKBalance_MaybeClaimableHTLCAwaitingTimeout: { - return 0 /* LDKBalance - MaybeClaimableHTLCAwaitingTimeout */; (void) obj->maybe_claimable_htlc_awaiting_timeout.claimable_amount_satoshis; (void) obj->maybe_claimable_htlc_awaiting_timeout.claimable_height; - } - default: abort(); - } +static inline struct LDKRouteHint CResult_RouteHintDecodeErrorZ_get_ok(LDKCResult_RouteHintDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return RouteHint_clone(&*owner->contents.result); } -static inline LDKCVec_BalanceZ CVec_BalanceZ_clone(const LDKCVec_BalanceZ *orig) { - LDKCVec_BalanceZ ret = { .data = MALLOC(sizeof(LDKBalance) * orig->datalen, "LDKCVec_BalanceZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = Balance_clone(&orig->data[i]); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_RouteHintDecodeErrorZ* owner_conv = (LDKCResult_RouteHintDecodeErrorZ*)(owner & ~1); + LDKRouteHint ret_var = CResult_RouteHintDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ *val = (LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKC2Tuple_BlockHashChannelMonitorZ* res_conv = MALLOC(sizeof(LDKC2Tuple_BlockHashChannelMonitorZ), "LDKC2Tuple_BlockHashChannelMonitorZ"); - *res_conv = (*val->contents.result); - *res_conv = C2Tuple_BlockHashChannelMonitorZ_clone(res_conv); - return ((uint64_t)res_conv); -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ *val = (LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -void __attribute__((visibility("default"))) TS_LDKCResult_NoneLightningErrorZ_get_ok(uint32_t arg) { - LDKCResult_NoneLightningErrorZ *val = (LDKCResult_NoneLightningErrorZ*)(arg & ~1); - CHECK(val->result_ok); - return *val->contents.result; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NoneLightningErrorZ_get_err(uint32_t arg) { - LDKCResult_NoneLightningErrorZ *val = (LDKCResult_NoneLightningErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKLightningError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -static inline struct LDKPublicKey C2Tuple_PublicKeyTypeZ_get_a(LDKC2Tuple_PublicKeyTypeZ *NONNULL_PTR tuple){ - return tuple->a; -} -int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_PublicKeyTypeZ_get_a(uint32_t tuple) { - LDKC2Tuple_PublicKeyTypeZ* tuple_conv = (LDKC2Tuple_PublicKeyTypeZ*)(tuple & ~1); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), C2Tuple_PublicKeyTypeZ_get_a(tuple_conv).compressed_form, 33); - return ret_arr; -} - -static inline struct LDKType C2Tuple_PublicKeyTypeZ_get_b(LDKC2Tuple_PublicKeyTypeZ *NONNULL_PTR tuple){ - return Type_clone(&tuple->b); -} -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PublicKeyTypeZ_get_b(uint32_t tuple) { - LDKC2Tuple_PublicKeyTypeZ* tuple_conv = (LDKC2Tuple_PublicKeyTypeZ*)(tuple & ~1); - LDKType* ret_ret = MALLOC(sizeof(LDKType), "LDKType"); - *ret_ret = C2Tuple_PublicKeyTypeZ_get_b(tuple_conv); - return (uint64_t)ret_ret; + return ret_ref; } -static inline LDKCVec_C2Tuple_PublicKeyTypeZZ CVec_C2Tuple_PublicKeyTypeZZ_clone(const LDKCVec_C2Tuple_PublicKeyTypeZZ *orig) { - LDKCVec_C2Tuple_PublicKeyTypeZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_PublicKeyTypeZ) * orig->datalen, "LDKCVec_C2Tuple_PublicKeyTypeZZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = C2Tuple_PublicKeyTypeZ_clone(&orig->data[i]); - } - return ret; +static inline struct LDKDecodeError CResult_RouteHintDecodeErrorZ_get_err(LDKCResult_RouteHintDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -jboolean __attribute__((visibility("default"))) TS_LDKCResult_boolLightningErrorZ_get_ok(uint32_t arg) { - LDKCResult_boolLightningErrorZ *val = (LDKCResult_boolLightningErrorZ*)(arg & ~1); - CHECK(val->result_ok); - return *val->contents.result; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_boolLightningErrorZ_get_err(uint32_t arg) { - LDKCResult_boolLightningErrorZ *val = (LDKCResult_boolLightningErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKLightningError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -static inline struct LDKChannelAnnouncement C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_a(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ *NONNULL_PTR tuple){ - return ChannelAnnouncement_clone(&tuple->a); -} -uint32_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_a(uint32_t tuple) { - LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* tuple_conv = (LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(tuple & ~1); - LDKChannelAnnouncement ret_var = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_a(tuple_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_RouteHintDecodeErrorZ* owner_conv = (LDKCResult_RouteHintDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_RouteHintDecodeErrorZ_get_err(owner_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -4233,12 +2496,13 @@ uint32_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementC return ret_ref; } -static inline struct LDKChannelUpdate C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_b(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ *NONNULL_PTR tuple){ - return ChannelUpdate_clone(&tuple->b); +static inline struct LDKRouteHintHop CResult_RouteHintHopDecodeErrorZ_get_ok(LDKCResult_RouteHintHopDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return RouteHintHop_clone(&*owner->contents.result); } -uint32_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_b(uint32_t tuple) { - LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* tuple_conv = (LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(tuple & ~1); - LDKChannelUpdate ret_var = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_b(tuple_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_RouteHintHopDecodeErrorZ* owner_conv = (LDKCResult_RouteHintHopDecodeErrorZ*)(owner & ~1); + LDKRouteHintHop ret_var = CResult_RouteHintHopDecodeErrorZ_get_ok(owner_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -4250,12 +2514,13 @@ uint32_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementC return ret_ref; } -static inline struct LDKChannelUpdate C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_c(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ *NONNULL_PTR tuple){ - return ChannelUpdate_clone(&tuple->c); +static inline struct LDKDecodeError CResult_RouteHintHopDecodeErrorZ_get_err(LDKCResult_RouteHintHopDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -uint32_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_c(uint32_t tuple) { - LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* tuple_conv = (LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(tuple & ~1); - LDKChannelUpdate ret_var = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_c(tuple_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_RouteHintHopDecodeErrorZ* owner_conv = (LDKCResult_RouteHintHopDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_RouteHintHopDecodeErrorZ_get_err(owner_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -4267,9645 +2532,9391 @@ uint32_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementC return ret_ref; } -static inline LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_clone(const LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ *orig) { - LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ ret = { .data = MALLOC(sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ) * orig->datalen, "LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ clone bytes"), .datalen = orig->datalen }; +static inline LDKCVec_ChannelDetailsZ CVec_ChannelDetailsZ_clone(const LDKCVec_ChannelDetailsZ *orig) { + LDKCVec_ChannelDetailsZ ret = { .data = MALLOC(sizeof(LDKChannelDetails) * orig->datalen, "LDKCVec_ChannelDetailsZ clone bytes"), .datalen = orig->datalen }; for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone(&orig->data[i]); + ret.data[i] = ChannelDetails_clone(&orig->data[i]); } return ret; } -static inline LDKCVec_NodeAnnouncementZ CVec_NodeAnnouncementZ_clone(const LDKCVec_NodeAnnouncementZ *orig) { - LDKCVec_NodeAnnouncementZ ret = { .data = MALLOC(sizeof(LDKNodeAnnouncement) * orig->datalen, "LDKCVec_NodeAnnouncementZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = NodeAnnouncement_clone(&orig->data[i]); +static inline struct LDKRoute CResult_RouteLightningErrorZ_get_ok(LDKCResult_RouteLightningErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return Route_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_get_ok(uint32_t owner) { + LDKCResult_RouteLightningErrorZ* owner_conv = (LDKCResult_RouteLightningErrorZ*)(owner & ~1); + LDKRoute ret_var = CResult_RouteLightningErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_LDKCResult_CVec_u8ZPeerHandleErrorZ_get_ok(uint32_t arg) { - LDKCResult_CVec_u8ZPeerHandleErrorZ *val = (LDKCResult_CVec_u8ZPeerHandleErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKCVec_u8Z res_var = (*val->contents.result); - int8_tArray res_arr = init_arr(res_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(res_arr + 4), res_var.data, res_var.datalen); - return res_arr; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_CVec_u8ZPeerHandleErrorZ_get_err(uint32_t arg) { - LDKCResult_CVec_u8ZPeerHandleErrorZ *val = (LDKCResult_CVec_u8ZPeerHandleErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKPeerHandleError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -void __attribute__((visibility("default"))) TS_LDKCResult_NonePeerHandleErrorZ_get_ok(uint32_t arg) { - LDKCResult_NonePeerHandleErrorZ *val = (LDKCResult_NonePeerHandleErrorZ*)(arg & ~1); - CHECK(val->result_ok); - return *val->contents.result; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NonePeerHandleErrorZ_get_err(uint32_t arg) { - LDKCResult_NonePeerHandleErrorZ *val = (LDKCResult_NonePeerHandleErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKPeerHandleError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -jboolean __attribute__((visibility("default"))) TS_LDKCResult_boolPeerHandleErrorZ_get_ok(uint32_t arg) { - LDKCResult_boolPeerHandleErrorZ *val = (LDKCResult_boolPeerHandleErrorZ*)(arg & ~1); - CHECK(val->result_ok); - return *val->contents.result; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_boolPeerHandleErrorZ_get_err(uint32_t arg) { - LDKCResult_boolPeerHandleErrorZ *val = (LDKCResult_boolPeerHandleErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKPeerHandleError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NodeIdDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_NodeIdDecodeErrorZ *val = (LDKCResult_NodeIdDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKNodeId res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NodeIdDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_NodeIdDecodeErrorZ *val = (LDKCResult_NodeIdDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_COption_NetworkUpdateZDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_COption_NetworkUpdateZDecodeErrorZ *val = (LDKCResult_COption_NetworkUpdateZDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - uint64_t res_ref = ((uint64_t)&(*val->contents.result)) | 1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_COption_NetworkUpdateZDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_COption_NetworkUpdateZDecodeErrorZ *val = (LDKCResult_COption_NetworkUpdateZDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; + +static inline struct LDKLightningError CResult_RouteLightningErrorZ_get_err(LDKCResult_RouteLightningErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return LightningError_clone(&*owner->contents.err); } -typedef struct LDKAccess_JCalls { - atomic_size_t refcnt; - uint32_t get_utxo_meth; -} LDKAccess_JCalls; -static void LDKAccess_JCalls_free(void* this_arg) { - LDKAccess_JCalls *j_calls = (LDKAccess_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->get_utxo_meth); - FREE(j_calls); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_get_err(uint32_t owner) { + LDKCResult_RouteLightningErrorZ* owner_conv = (LDKCResult_RouteLightningErrorZ*)(owner & ~1); + LDKLightningError ret_var = CResult_RouteLightningErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -LDKCResult_TxOutAccessErrorZ get_utxo_LDKAccess_jcall(const void* this_arg, const uint8_t (* genesis_hash)[32], uint64_t short_channel_id) { - LDKAccess_JCalls *j_calls = (LDKAccess_JCalls*) this_arg; - int8_tArray genesis_hash_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(genesis_hash_arr + 4), *genesis_hash, 32); - uint32_t ret = js_invoke_function_2(j_calls->get_utxo_meth, genesis_hash_arr, short_channel_id); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_TxOutAccessErrorZ ret_conv = *(LDKCResult_TxOutAccessErrorZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; + +static inline void CResult_NoneLightningErrorZ_get_ok(LDKCResult_NoneLightningErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; } -static void LDKAccess_JCalls_cloned(LDKAccess* new_obj) { - LDKAccess_JCalls *j_calls = (LDKAccess_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); +void __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_get_ok(uint32_t owner) { + LDKCResult_NoneLightningErrorZ* owner_conv = (LDKCResult_NoneLightningErrorZ*)(owner & ~1); + CResult_NoneLightningErrorZ_get_ok(owner_conv); } -static inline LDKAccess LDKAccess_init (/*TODO: JS Object Reference */void* o) { - LDKAccess_JCalls *calls = MALLOC(sizeof(LDKAccess_JCalls), "LDKAccess_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - LDKAccess ret = { - .this_arg = (void*) calls, - .get_utxo = get_utxo_LDKAccess_jcall, - .free = LDKAccess_JCalls_free, - }; - return ret; -} -long __attribute__((visibility("default"))) TS_LDKAccess_new(/*TODO: JS Object Reference */void* o) { - LDKAccess *res_ptr = MALLOC(sizeof(LDKAccess), "LDKAccess"); - *res_ptr = LDKAccess_init(o); - return (long)res_ptr; +static inline struct LDKLightningError CResult_NoneLightningErrorZ_get_err(LDKCResult_NoneLightningErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return LightningError_clone(&*owner->contents.err); } -uint32_t __attribute__((visibility("default"))) TS_Access_get_utxo(uint32_t this_arg, int8_tArray genesis_hash, int64_t short_channel_id) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKAccess* this_arg_conv = (LDKAccess*)this_arg_ptr; - unsigned char genesis_hash_arr[32]; - CHECK(*((uint32_t*)genesis_hash) == 32); - memcpy(genesis_hash_arr, (uint8_t*)(genesis_hash + 4), 32); - unsigned char (*genesis_hash_ref)[32] = &genesis_hash_arr; - LDKCResult_TxOutAccessErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxOutAccessErrorZ), "LDKCResult_TxOutAccessErrorZ"); - *ret_conv = (this_arg_conv->get_utxo)(this_arg_conv->this_arg, genesis_hash_ref, short_channel_id); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_get_err(uint32_t owner) { + LDKCResult_NoneLightningErrorZ* owner_conv = (LDKCResult_NoneLightningErrorZ*)(owner & ~1); + LDKLightningError ret_var = CResult_NoneLightningErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCOption_AccessZ_ref_from_ptr(uint32_t ptr) { - LDKCOption_AccessZ *obj = (LDKCOption_AccessZ*)(ptr & ~1); - switch(obj->tag) { - case LDKCOption_AccessZ_Some: { - LDKAccess* some_ret = MALLOC(sizeof(LDKAccess), "LDKAccess"); - *some_ret = obj->some; - // Warning: We likely need to clone here, but no clone is available, so we just do it for Java instances - return 0 /* LDKCOption_AccessZ - Some */; (void) (uint64_t)some_ret; - } - case LDKCOption_AccessZ_None: { - return 0 /* LDKCOption_AccessZ - None */; - } - default: abort(); - } +static inline struct LDKPublicKey C2Tuple_PublicKeyTypeZ_get_a(LDKC2Tuple_PublicKeyTypeZ *NONNULL_PTR owner){ + return owner->a; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_DirectionalChannelInfoDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_DirectionalChannelInfoDecodeErrorZ *val = (LDKCResult_DirectionalChannelInfoDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKDirectionalChannelInfo res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_DirectionalChannelInfoDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_DirectionalChannelInfoDecodeErrorZ *val = (LDKCResult_DirectionalChannelInfoDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelInfoDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ChannelInfoDecodeErrorZ *val = (LDKCResult_ChannelInfoDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKChannelInfo res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelInfoDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ChannelInfoDecodeErrorZ *val = (LDKCResult_ChannelInfoDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RoutingFeesDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_RoutingFeesDecodeErrorZ *val = (LDKCResult_RoutingFeesDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKRoutingFees res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RoutingFeesDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_RoutingFeesDecodeErrorZ *val = (LDKCResult_RoutingFeesDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NodeAnnouncementInfoDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_NodeAnnouncementInfoDecodeErrorZ *val = (LDKCResult_NodeAnnouncementInfoDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKNodeAnnouncementInfo res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NodeAnnouncementInfoDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_NodeAnnouncementInfoDecodeErrorZ *val = (LDKCResult_NodeAnnouncementInfoDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; +int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_PublicKeyTypeZ_get_a(uint32_t owner) { + LDKC2Tuple_PublicKeyTypeZ* owner_conv = (LDKC2Tuple_PublicKeyTypeZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, C2Tuple_PublicKeyTypeZ_get_a(owner_conv).compressed_form, 33); + return ret_arr; } -static inline LDKCVec_u64Z CVec_u64Z_clone(const LDKCVec_u64Z *orig) { - LDKCVec_u64Z ret = { .data = MALLOC(sizeof(int64_t) * orig->datalen, "LDKCVec_u64Z clone bytes"), .datalen = orig->datalen }; - memcpy(ret.data, orig->data, sizeof(int64_t) * ret.datalen); - return ret; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NodeInfoDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_NodeInfoDecodeErrorZ *val = (LDKCResult_NodeInfoDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKNodeInfo res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NodeInfoDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_NodeInfoDecodeErrorZ *val = (LDKCResult_NodeInfoDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NetworkGraphDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_NetworkGraphDecodeErrorZ *val = (LDKCResult_NetworkGraphDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKNetworkGraph res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NetworkGraphDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_NetworkGraphDecodeErrorZ *val = (LDKCResult_NetworkGraphDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCOption_CVec_NetAddressZZ_ref_from_ptr(uint32_t ptr) { - LDKCOption_CVec_NetAddressZZ *obj = (LDKCOption_CVec_NetAddressZZ*)(ptr & ~1); - switch(obj->tag) { - case LDKCOption_CVec_NetAddressZZ_Some: { - LDKCVec_NetAddressZ some_var = obj->some; - uint32_tArray some_arr = NULL; - some_arr = init_arr(some_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *some_arr_ptr = (uint32_t*)(some_arr + 4); - for (size_t m = 0; m < some_var.datalen; m++) { - uint64_t some_conv_12_ref = ((uint64_t)&some_var.data[m]) | 1; - some_arr_ptr[m] = some_conv_12_ref; - } - - return 0 /* LDKCOption_CVec_NetAddressZZ - Some */; (void) some_arr; - } - case LDKCOption_CVec_NetAddressZZ_None: { - return 0 /* LDKCOption_CVec_NetAddressZZ - None */; - } - default: abort(); - } -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NetAddressDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_NetAddressDecodeErrorZ *val = (LDKCResult_NetAddressDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - uint64_t res_ref = ((uint64_t)&(*val->contents.result)) | 1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NetAddressDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_NetAddressDecodeErrorZ *val = (LDKCResult_NetAddressDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -static inline LDKCVec_UpdateAddHTLCZ CVec_UpdateAddHTLCZ_clone(const LDKCVec_UpdateAddHTLCZ *orig) { - LDKCVec_UpdateAddHTLCZ ret = { .data = MALLOC(sizeof(LDKUpdateAddHTLC) * orig->datalen, "LDKCVec_UpdateAddHTLCZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = UpdateAddHTLC_clone(&orig->data[i]); - } - return ret; -} -static inline LDKCVec_UpdateFulfillHTLCZ CVec_UpdateFulfillHTLCZ_clone(const LDKCVec_UpdateFulfillHTLCZ *orig) { - LDKCVec_UpdateFulfillHTLCZ ret = { .data = MALLOC(sizeof(LDKUpdateFulfillHTLC) * orig->datalen, "LDKCVec_UpdateFulfillHTLCZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = UpdateFulfillHTLC_clone(&orig->data[i]); - } - return ret; + +static inline struct LDKType C2Tuple_PublicKeyTypeZ_get_b(LDKC2Tuple_PublicKeyTypeZ *NONNULL_PTR owner){ + return Type_clone(&owner->b); } -static inline LDKCVec_UpdateFailHTLCZ CVec_UpdateFailHTLCZ_clone(const LDKCVec_UpdateFailHTLCZ *orig) { - LDKCVec_UpdateFailHTLCZ ret = { .data = MALLOC(sizeof(LDKUpdateFailHTLC) * orig->datalen, "LDKCVec_UpdateFailHTLCZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = UpdateFailHTLC_clone(&orig->data[i]); - } - return ret; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PublicKeyTypeZ_get_b(uint32_t owner) { + LDKC2Tuple_PublicKeyTypeZ* owner_conv = (LDKC2Tuple_PublicKeyTypeZ*)(owner & ~1); + LDKType* ret_ret = MALLOC(sizeof(LDKType), "LDKType"); + *ret_ret = C2Tuple_PublicKeyTypeZ_get_b(owner_conv); + return (uint64_t)ret_ret; } -static inline LDKCVec_UpdateFailMalformedHTLCZ CVec_UpdateFailMalformedHTLCZ_clone(const LDKCVec_UpdateFailMalformedHTLCZ *orig) { - LDKCVec_UpdateFailMalformedHTLCZ ret = { .data = MALLOC(sizeof(LDKUpdateFailMalformedHTLC) * orig->datalen, "LDKCVec_UpdateFailMalformedHTLCZ clone bytes"), .datalen = orig->datalen }; + +static inline LDKCVec_C2Tuple_PublicKeyTypeZZ CVec_C2Tuple_PublicKeyTypeZZ_clone(const LDKCVec_C2Tuple_PublicKeyTypeZZ *orig) { + LDKCVec_C2Tuple_PublicKeyTypeZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_PublicKeyTypeZ) * orig->datalen, "LDKCVec_C2Tuple_PublicKeyTypeZZ clone bytes"), .datalen = orig->datalen }; for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = UpdateFailMalformedHTLC_clone(&orig->data[i]); + ret.data[i] = C2Tuple_PublicKeyTypeZ_clone(&orig->data[i]); } return ret; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_AcceptChannelDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_AcceptChannelDecodeErrorZ *val = (LDKCResult_AcceptChannelDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKAcceptChannel res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_AcceptChannelDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_AcceptChannelDecodeErrorZ *val = (LDKCResult_AcceptChannelDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_AnnouncementSignaturesDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_AnnouncementSignaturesDecodeErrorZ *val = (LDKCResult_AnnouncementSignaturesDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKAnnouncementSignatures res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_AnnouncementSignaturesDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_AnnouncementSignaturesDecodeErrorZ *val = (LDKCResult_AnnouncementSignaturesDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelReestablishDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ChannelReestablishDecodeErrorZ *val = (LDKCResult_ChannelReestablishDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKChannelReestablish res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelReestablishDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ChannelReestablishDecodeErrorZ *val = (LDKCResult_ChannelReestablishDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ClosingSignedDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ClosingSignedDecodeErrorZ *val = (LDKCResult_ClosingSignedDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKClosingSigned res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ClosingSignedDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ClosingSignedDecodeErrorZ *val = (LDKCResult_ClosingSignedDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ClosingSignedFeeRangeDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ClosingSignedFeeRangeDecodeErrorZ *val = (LDKCResult_ClosingSignedFeeRangeDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKClosingSignedFeeRange res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ClosingSignedFeeRangeDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ClosingSignedFeeRangeDecodeErrorZ *val = (LDKCResult_ClosingSignedFeeRangeDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_CommitmentSignedDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_CommitmentSignedDecodeErrorZ *val = (LDKCResult_CommitmentSignedDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKCommitmentSigned res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_CommitmentSignedDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_CommitmentSignedDecodeErrorZ *val = (LDKCResult_CommitmentSignedDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_FundingCreatedDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_FundingCreatedDecodeErrorZ *val = (LDKCResult_FundingCreatedDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKFundingCreated res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_FundingCreatedDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_FundingCreatedDecodeErrorZ *val = (LDKCResult_FundingCreatedDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_FundingSignedDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_FundingSignedDecodeErrorZ *val = (LDKCResult_FundingSignedDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKFundingSigned res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_FundingSignedDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_FundingSignedDecodeErrorZ *val = (LDKCResult_FundingSignedDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_FundingLockedDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_FundingLockedDecodeErrorZ *val = (LDKCResult_FundingLockedDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKFundingLocked res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_FundingLockedDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_FundingLockedDecodeErrorZ *val = (LDKCResult_FundingLockedDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_InitDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_InitDecodeErrorZ *val = (LDKCResult_InitDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKInit res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_InitDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_InitDecodeErrorZ *val = (LDKCResult_InitDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_OpenChannelDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_OpenChannelDecodeErrorZ *val = (LDKCResult_OpenChannelDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKOpenChannel res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_OpenChannelDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_OpenChannelDecodeErrorZ *val = (LDKCResult_OpenChannelDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RevokeAndACKDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_RevokeAndACKDecodeErrorZ *val = (LDKCResult_RevokeAndACKDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKRevokeAndACK res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RevokeAndACKDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_RevokeAndACKDecodeErrorZ *val = (LDKCResult_RevokeAndACKDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ShutdownDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ShutdownDecodeErrorZ *val = (LDKCResult_ShutdownDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKShutdown res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ShutdownDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ShutdownDecodeErrorZ *val = (LDKCResult_ShutdownDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UpdateFailHTLCDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_UpdateFailHTLCDecodeErrorZ *val = (LDKCResult_UpdateFailHTLCDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKUpdateFailHTLC res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UpdateFailHTLCDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_UpdateFailHTLCDecodeErrorZ *val = (LDKCResult_UpdateFailHTLCDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ *val = (LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKUpdateFailMalformedHTLC res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ *val = (LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UpdateFeeDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_UpdateFeeDecodeErrorZ *val = (LDKCResult_UpdateFeeDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKUpdateFee res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UpdateFeeDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_UpdateFeeDecodeErrorZ *val = (LDKCResult_UpdateFeeDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UpdateFulfillHTLCDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_UpdateFulfillHTLCDecodeErrorZ *val = (LDKCResult_UpdateFulfillHTLCDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKUpdateFulfillHTLC res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UpdateFulfillHTLCDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_UpdateFulfillHTLCDecodeErrorZ *val = (LDKCResult_UpdateFulfillHTLCDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UpdateAddHTLCDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_UpdateAddHTLCDecodeErrorZ *val = (LDKCResult_UpdateAddHTLCDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKUpdateAddHTLC res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UpdateAddHTLCDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_UpdateAddHTLCDecodeErrorZ *val = (LDKCResult_UpdateAddHTLCDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PingDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_PingDecodeErrorZ *val = (LDKCResult_PingDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKPing res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PingDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_PingDecodeErrorZ *val = (LDKCResult_PingDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PongDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_PongDecodeErrorZ *val = (LDKCResult_PongDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKPong res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PongDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_PongDecodeErrorZ *val = (LDKCResult_PongDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ *val = (LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKUnsignedChannelAnnouncement res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ *val = (LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelAnnouncementDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ChannelAnnouncementDecodeErrorZ *val = (LDKCResult_ChannelAnnouncementDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKChannelAnnouncement res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelAnnouncementDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ChannelAnnouncementDecodeErrorZ *val = (LDKCResult_ChannelAnnouncementDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UnsignedChannelUpdateDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_UnsignedChannelUpdateDecodeErrorZ *val = (LDKCResult_UnsignedChannelUpdateDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKUnsignedChannelUpdate res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UnsignedChannelUpdateDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_UnsignedChannelUpdateDecodeErrorZ *val = (LDKCResult_UnsignedChannelUpdateDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelUpdateDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ChannelUpdateDecodeErrorZ *val = (LDKCResult_ChannelUpdateDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKChannelUpdate res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelUpdateDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ChannelUpdateDecodeErrorZ *val = (LDKCResult_ChannelUpdateDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ErrorMessageDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ErrorMessageDecodeErrorZ *val = (LDKCResult_ErrorMessageDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKErrorMessage res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ErrorMessageDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ErrorMessageDecodeErrorZ *val = (LDKCResult_ErrorMessageDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ *val = (LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKUnsignedNodeAnnouncement res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ *val = (LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NodeAnnouncementDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_NodeAnnouncementDecodeErrorZ *val = (LDKCResult_NodeAnnouncementDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKNodeAnnouncement res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NodeAnnouncementDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_NodeAnnouncementDecodeErrorZ *val = (LDKCResult_NodeAnnouncementDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_QueryShortChannelIdsDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_QueryShortChannelIdsDecodeErrorZ *val = (LDKCResult_QueryShortChannelIdsDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKQueryShortChannelIds res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_QueryShortChannelIdsDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_QueryShortChannelIdsDecodeErrorZ *val = (LDKCResult_QueryShortChannelIdsDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ *val = (LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKReplyShortChannelIdsEnd res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ *val = (LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_QueryChannelRangeDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_QueryChannelRangeDecodeErrorZ *val = (LDKCResult_QueryChannelRangeDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKQueryChannelRange res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_QueryChannelRangeDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_QueryChannelRangeDecodeErrorZ *val = (LDKCResult_QueryChannelRangeDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ReplyChannelRangeDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ReplyChannelRangeDecodeErrorZ *val = (LDKCResult_ReplyChannelRangeDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKReplyChannelRange res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ReplyChannelRangeDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ReplyChannelRangeDecodeErrorZ *val = (LDKCResult_ReplyChannelRangeDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_GossipTimestampFilterDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_GossipTimestampFilterDecodeErrorZ *val = (LDKCResult_GossipTimestampFilterDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKGossipTimestampFilter res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_GossipTimestampFilterDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_GossipTimestampFilterDecodeErrorZ *val = (LDKCResult_GossipTimestampFilterDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKSignOrCreationError_ref_from_ptr(uint32_t ptr) { - LDKSignOrCreationError *obj = (LDKSignOrCreationError*)(ptr & ~1); +uint32_t __attribute__((visibility("default"))) TS_LDKErrorAction_ref_from_ptr(uint32_t ptr) { + LDKErrorAction *obj = (LDKErrorAction*)(ptr & ~1); switch(obj->tag) { - case LDKSignOrCreationError_SignError: { - return 0 /* LDKSignOrCreationError - SignError */; + case LDKErrorAction_DisconnectPeer: { + LDKErrorMessage msg_var = obj->disconnect_peer.msg; + uint64_t msg_ref = 0; + if ((uint64_t)msg_var.inner > 4096) { + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + } + return 0 /* LDKErrorAction - DisconnectPeer */; (void) msg_ref; + } + case LDKErrorAction_IgnoreError: { + return 0 /* LDKErrorAction - IgnoreError */; + } + case LDKErrorAction_IgnoreAndLog: { + uint32_t ignore_and_log_conv = LDKLevel_to_js(obj->ignore_and_log); + return 0 /* LDKErrorAction - IgnoreAndLog */; (void) ignore_and_log_conv; + } + case LDKErrorAction_IgnoreDuplicateGossip: { + return 0 /* LDKErrorAction - IgnoreDuplicateGossip */; } - case LDKSignOrCreationError_CreationError: { - uint32_t creation_error_conv = LDKCreationError_to_js(obj->creation_error); - return 0 /* LDKSignOrCreationError - CreationError */; (void) creation_error_conv; + case LDKErrorAction_SendErrorMessage: { + LDKErrorMessage msg_var = obj->send_error_message.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKErrorAction - SendErrorMessage */; (void) msg_ref; } default: abort(); } } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_InvoiceSignOrCreationErrorZ_get_ok(uint32_t arg) { - LDKCResult_InvoiceSignOrCreationErrorZ *val = (LDKCResult_InvoiceSignOrCreationErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKInvoice res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_InvoiceSignOrCreationErrorZ_get_err(uint32_t arg) { - LDKCResult_InvoiceSignOrCreationErrorZ *val = (LDKCResult_InvoiceSignOrCreationErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint64_t err_ref = ((uint64_t)&(*val->contents.err)) | 1; - return err_ref; -} -typedef struct LDKFilter_JCalls { - atomic_size_t refcnt; - uint32_t register_tx_meth; - uint32_t register_output_meth; -} LDKFilter_JCalls; -static void LDKFilter_JCalls_free(void* this_arg) { - LDKFilter_JCalls *j_calls = (LDKFilter_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->register_tx_meth); - js_free(j_calls->register_output_meth); - FREE(j_calls); - } -} -void register_tx_LDKFilter_jcall(const void* this_arg, const uint8_t (* txid)[32], LDKu8slice script_pubkey) { - LDKFilter_JCalls *j_calls = (LDKFilter_JCalls*) this_arg; - int8_tArray txid_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(txid_arr + 4), *txid, 32); - LDKu8slice script_pubkey_var = script_pubkey; - int8_tArray script_pubkey_arr = init_arr(script_pubkey_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(script_pubkey_arr + 4), script_pubkey_var.data, script_pubkey_var.datalen); - js_invoke_function_2(j_calls->register_tx_meth, txid_arr, script_pubkey_arr); -} -LDKCOption_C2Tuple_usizeTransactionZZ register_output_LDKFilter_jcall(const void* this_arg, LDKWatchedOutput output) { - LDKFilter_JCalls *j_calls = (LDKFilter_JCalls*) this_arg; - LDKWatchedOutput output_var = output; - uint64_t output_ref = 0; - CHECK((((uint64_t)output_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&output_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(output_var); - output_ref = (uint64_t)output_var.inner; - if (output_var.is_owned) { - output_ref |= 1; - } - uint32_t ret = js_invoke_function_1(j_calls->register_output_meth, output_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCOption_C2Tuple_usizeTransactionZZ ret_conv = *(LDKCOption_C2Tuple_usizeTransactionZZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; -} -static void LDKFilter_JCalls_cloned(LDKFilter* new_obj) { - LDKFilter_JCalls *j_calls = (LDKFilter_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); -} -static inline LDKFilter LDKFilter_init (/*TODO: JS Object Reference */void* o) { - LDKFilter_JCalls *calls = MALLOC(sizeof(LDKFilter_JCalls), "LDKFilter_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - - LDKFilter ret = { - .this_arg = (void*) calls, - .register_tx = register_tx_LDKFilter_jcall, - .register_output = register_output_LDKFilter_jcall, - .free = LDKFilter_JCalls_free, - }; - return ret; -} -long __attribute__((visibility("default"))) TS_LDKFilter_new(/*TODO: JS Object Reference */void* o) { - LDKFilter *res_ptr = MALLOC(sizeof(LDKFilter), "LDKFilter"); - *res_ptr = LDKFilter_init(o); - return (long)res_ptr; -} -void __attribute__((visibility("default"))) TS_Filter_register_tx(uint32_t this_arg, int8_tArray txid, int8_tArray script_pubkey) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKFilter* this_arg_conv = (LDKFilter*)this_arg_ptr; - unsigned char txid_arr[32]; - CHECK(*((uint32_t*)txid) == 32); - memcpy(txid_arr, (uint8_t*)(txid + 4), 32); - unsigned char (*txid_ref)[32] = &txid_arr; - LDKu8slice script_pubkey_ref; - script_pubkey_ref.datalen = *((uint32_t*)script_pubkey); - script_pubkey_ref.data = (int8_t*)(script_pubkey + 4); - (this_arg_conv->register_tx)(this_arg_conv->this_arg, txid_ref, script_pubkey_ref); -} - -uint32_t __attribute__((visibility("default"))) TS_Filter_register_output(uint32_t this_arg, uint32_t output) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKFilter* this_arg_conv = (LDKFilter*)this_arg_ptr; - LDKWatchedOutput output_conv; - output_conv.inner = (void*)(output & (~1)); - output_conv.is_owned = (output & 1) || (output == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(output_conv); - output_conv = WatchedOutput_clone(&output_conv); - LDKCOption_C2Tuple_usizeTransactionZZ *ret_copy = MALLOC(sizeof(LDKCOption_C2Tuple_usizeTransactionZZ), "LDKCOption_C2Tuple_usizeTransactionZZ"); - *ret_copy = (this_arg_conv->register_output)(this_arg_conv->this_arg, output_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_LDKCOption_FilterZ_ref_from_ptr(uint32_t ptr) { - LDKCOption_FilterZ *obj = (LDKCOption_FilterZ*)(ptr & ~1); +uint32_t __attribute__((visibility("default"))) TS_LDKMessageSendEvent_ref_from_ptr(uint32_t ptr) { + LDKMessageSendEvent *obj = (LDKMessageSendEvent*)(ptr & ~1); switch(obj->tag) { - case LDKCOption_FilterZ_Some: { - LDKFilter* some_ret = MALLOC(sizeof(LDKFilter), "LDKFilter"); - *some_ret = obj->some; - // Warning: We likely need to clone here, but no clone is available, so we just do it for Java instances - return 0 /* LDKCOption_FilterZ - Some */; (void) (uint64_t)some_ret; + case LDKMessageSendEvent_SendAcceptChannel: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_accept_channel.node_id.compressed_form, 33); + LDKAcceptChannel msg_var = obj->send_accept_channel.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendAcceptChannel */; (void) node_id_arr; (void) msg_ref; } - case LDKCOption_FilterZ_None: { - return 0 /* LDKCOption_FilterZ - None */; + case LDKMessageSendEvent_SendOpenChannel: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_open_channel.node_id.compressed_form, 33); + LDKOpenChannel msg_var = obj->send_open_channel.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendOpenChannel */; (void) node_id_arr; (void) msg_ref; } - default: abort(); - } -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_LockedChannelMonitorNoneZ_get_ok(uint32_t arg) { - LDKCResult_LockedChannelMonitorNoneZ *val = (LDKCResult_LockedChannelMonitorNoneZ*)(arg & ~1); - CHECK(val->result_ok); - LDKLockedChannelMonitor res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -void __attribute__((visibility("default"))) TS_LDKCResult_LockedChannelMonitorNoneZ_get_err(uint32_t arg) { - LDKCResult_LockedChannelMonitorNoneZ *val = (LDKCResult_LockedChannelMonitorNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; -} -static inline LDKCVec_OutPointZ CVec_OutPointZ_clone(const LDKCVec_OutPointZ *orig) { - LDKCVec_OutPointZ ret = { .data = MALLOC(sizeof(LDKOutPoint) * orig->datalen, "LDKCVec_OutPointZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = OutPoint_clone(&orig->data[i]); - } - return ret; -} -typedef struct LDKMessageSendEventsProvider_JCalls { - atomic_size_t refcnt; - uint32_t get_and_clear_pending_msg_events_meth; -} LDKMessageSendEventsProvider_JCalls; -static void LDKMessageSendEventsProvider_JCalls_free(void* this_arg) { - LDKMessageSendEventsProvider_JCalls *j_calls = (LDKMessageSendEventsProvider_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->get_and_clear_pending_msg_events_meth); - FREE(j_calls); - } -} -LDKCVec_MessageSendEventZ get_and_clear_pending_msg_events_LDKMessageSendEventsProvider_jcall(const void* this_arg) { - LDKMessageSendEventsProvider_JCalls *j_calls = (LDKMessageSendEventsProvider_JCalls*) this_arg; - uint32_tArray ret = js_invoke_function_0(j_calls->get_and_clear_pending_msg_events_meth); - LDKCVec_MessageSendEventZ ret_constr; - ret_constr.datalen = *((uint32_t*)ret); - if (ret_constr.datalen > 0) - ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKMessageSendEvent), "LDKCVec_MessageSendEventZ Elements"); - else - ret_constr.data = NULL; - uint32_t* ret_vals = (uint32_t*)(ret + 4); - for (size_t s = 0; s < ret_constr.datalen; s++) { - uint32_t ret_conv_18 = ret_vals[s]; - void* ret_conv_18_ptr = (void*)(((uint64_t)ret_conv_18) & ~1); - CHECK_ACCESS(ret_conv_18_ptr); - LDKMessageSendEvent ret_conv_18_conv = *(LDKMessageSendEvent*)(ret_conv_18_ptr); - FREE((void*)ret_conv_18); - ret_constr.data[s] = ret_conv_18_conv; - } - return ret_constr; -} -static void LDKMessageSendEventsProvider_JCalls_cloned(LDKMessageSendEventsProvider* new_obj) { - LDKMessageSendEventsProvider_JCalls *j_calls = (LDKMessageSendEventsProvider_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); -} -static inline LDKMessageSendEventsProvider LDKMessageSendEventsProvider_init (/*TODO: JS Object Reference */void* o) { - LDKMessageSendEventsProvider_JCalls *calls = MALLOC(sizeof(LDKMessageSendEventsProvider_JCalls), "LDKMessageSendEventsProvider_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - - LDKMessageSendEventsProvider ret = { - .this_arg = (void*) calls, - .get_and_clear_pending_msg_events = get_and_clear_pending_msg_events_LDKMessageSendEventsProvider_jcall, - .free = LDKMessageSendEventsProvider_JCalls_free, - }; - return ret; -} -long __attribute__((visibility("default"))) TS_LDKMessageSendEventsProvider_new(/*TODO: JS Object Reference */void* o) { - LDKMessageSendEventsProvider *res_ptr = MALLOC(sizeof(LDKMessageSendEventsProvider), "LDKMessageSendEventsProvider"); - *res_ptr = LDKMessageSendEventsProvider_init(o); - return (long)res_ptr; -} -uint32_tArray __attribute__((visibility("default"))) TS_MessageSendEventsProvider_get_and_clear_pending_msg_events(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKMessageSendEventsProvider* this_arg_conv = (LDKMessageSendEventsProvider*)this_arg_ptr; - LDKCVec_MessageSendEventZ ret_var = (this_arg_conv->get_and_clear_pending_msg_events)(this_arg_conv->this_arg); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t s = 0; s < ret_var.datalen; s++) { - LDKMessageSendEvent *ret_conv_18_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_conv_18_copy = ret_var.data[s]; - uint64_t ret_conv_18_ref = (uint64_t)ret_conv_18_copy; - ret_arr_ptr[s] = ret_conv_18_ref; - } - - FREE(ret_var.data); - return ret_arr; -} - -typedef struct LDKEventHandler_JCalls { - atomic_size_t refcnt; - uint32_t handle_event_meth; -} LDKEventHandler_JCalls; -static void LDKEventHandler_JCalls_free(void* this_arg) { - LDKEventHandler_JCalls *j_calls = (LDKEventHandler_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->handle_event_meth); - FREE(j_calls); - } -} -void handle_event_LDKEventHandler_jcall(const void* this_arg, const LDKEvent * event) { - LDKEventHandler_JCalls *j_calls = (LDKEventHandler_JCalls*) this_arg; - LDKEvent *ret_event = MALLOC(sizeof(LDKEvent), "LDKEvent ret conversion"); - *ret_event = Event_clone(event); - js_invoke_function_1(j_calls->handle_event_meth, (uint64_t)ret_event); -} -static void LDKEventHandler_JCalls_cloned(LDKEventHandler* new_obj) { - LDKEventHandler_JCalls *j_calls = (LDKEventHandler_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); -} -static inline LDKEventHandler LDKEventHandler_init (/*TODO: JS Object Reference */void* o) { - LDKEventHandler_JCalls *calls = MALLOC(sizeof(LDKEventHandler_JCalls), "LDKEventHandler_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - - LDKEventHandler ret = { - .this_arg = (void*) calls, - .handle_event = handle_event_LDKEventHandler_jcall, - .free = LDKEventHandler_JCalls_free, - }; - return ret; -} -long __attribute__((visibility("default"))) TS_LDKEventHandler_new(/*TODO: JS Object Reference */void* o) { - LDKEventHandler *res_ptr = MALLOC(sizeof(LDKEventHandler), "LDKEventHandler"); - *res_ptr = LDKEventHandler_init(o); - return (long)res_ptr; -} -void __attribute__((visibility("default"))) TS_EventHandler_handle_event(uint32_t this_arg, uint32_t event) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKEventHandler* this_arg_conv = (LDKEventHandler*)this_arg_ptr; - LDKEvent* event_conv = (LDKEvent*)event; - (this_arg_conv->handle_event)(this_arg_conv->this_arg, event_conv); -} - -typedef struct LDKEventsProvider_JCalls { - atomic_size_t refcnt; - uint32_t process_pending_events_meth; -} LDKEventsProvider_JCalls; -static void LDKEventsProvider_JCalls_free(void* this_arg) { - LDKEventsProvider_JCalls *j_calls = (LDKEventsProvider_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->process_pending_events_meth); - FREE(j_calls); - } -} -void process_pending_events_LDKEventsProvider_jcall(const void* this_arg, LDKEventHandler handler) { - LDKEventsProvider_JCalls *j_calls = (LDKEventsProvider_JCalls*) this_arg; - LDKEventHandler* handler_ret = MALLOC(sizeof(LDKEventHandler), "LDKEventHandler"); - *handler_ret = handler; - js_invoke_function_1(j_calls->process_pending_events_meth, (uint64_t)handler_ret); -} -static void LDKEventsProvider_JCalls_cloned(LDKEventsProvider* new_obj) { - LDKEventsProvider_JCalls *j_calls = (LDKEventsProvider_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); -} -static inline LDKEventsProvider LDKEventsProvider_init (/*TODO: JS Object Reference */void* o) { - LDKEventsProvider_JCalls *calls = MALLOC(sizeof(LDKEventsProvider_JCalls), "LDKEventsProvider_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - - LDKEventsProvider ret = { - .this_arg = (void*) calls, - .process_pending_events = process_pending_events_LDKEventsProvider_jcall, - .free = LDKEventsProvider_JCalls_free, - }; - return ret; -} -long __attribute__((visibility("default"))) TS_LDKEventsProvider_new(/*TODO: JS Object Reference */void* o) { - LDKEventsProvider *res_ptr = MALLOC(sizeof(LDKEventsProvider), "LDKEventsProvider"); - *res_ptr = LDKEventsProvider_init(o); - return (long)res_ptr; -} -void __attribute__((visibility("default"))) TS_EventsProvider_process_pending_events(uint32_t this_arg, uint32_t handler) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKEventsProvider* this_arg_conv = (LDKEventsProvider*)this_arg_ptr; - void* handler_ptr = (void*)(((uint64_t)handler) & ~1); - CHECK_ACCESS(handler_ptr); - LDKEventHandler handler_conv = *(LDKEventHandler*)(handler_ptr); - (this_arg_conv->process_pending_events)(this_arg_conv->this_arg, handler_conv); -} - -typedef struct LDKListen_JCalls { - atomic_size_t refcnt; - uint32_t block_connected_meth; - uint32_t block_disconnected_meth; -} LDKListen_JCalls; -static void LDKListen_JCalls_free(void* this_arg) { - LDKListen_JCalls *j_calls = (LDKListen_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->block_connected_meth); - js_free(j_calls->block_disconnected_meth); - FREE(j_calls); - } -} -void block_connected_LDKListen_jcall(const void* this_arg, LDKu8slice block, uint32_t height) { - LDKListen_JCalls *j_calls = (LDKListen_JCalls*) this_arg; - LDKu8slice block_var = block; - int8_tArray block_arr = init_arr(block_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(block_arr + 4), block_var.data, block_var.datalen); - js_invoke_function_2(j_calls->block_connected_meth, block_arr, height); -} -void block_disconnected_LDKListen_jcall(const void* this_arg, const uint8_t (* header)[80], uint32_t height) { - LDKListen_JCalls *j_calls = (LDKListen_JCalls*) this_arg; - int8_tArray header_arr = init_arr(80, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(header_arr + 4), *header, 80); - js_invoke_function_2(j_calls->block_disconnected_meth, header_arr, height); -} -static void LDKListen_JCalls_cloned(LDKListen* new_obj) { - LDKListen_JCalls *j_calls = (LDKListen_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); -} -static inline LDKListen LDKListen_init (/*TODO: JS Object Reference */void* o) { - LDKListen_JCalls *calls = MALLOC(sizeof(LDKListen_JCalls), "LDKListen_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - - LDKListen ret = { - .this_arg = (void*) calls, - .block_connected = block_connected_LDKListen_jcall, - .block_disconnected = block_disconnected_LDKListen_jcall, - .free = LDKListen_JCalls_free, - }; - return ret; -} -long __attribute__((visibility("default"))) TS_LDKListen_new(/*TODO: JS Object Reference */void* o) { - LDKListen *res_ptr = MALLOC(sizeof(LDKListen), "LDKListen"); - *res_ptr = LDKListen_init(o); - return (long)res_ptr; -} -void __attribute__((visibility("default"))) TS_Listen_block_connected(uint32_t this_arg, int8_tArray block, int32_t height) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKListen* this_arg_conv = (LDKListen*)this_arg_ptr; - LDKu8slice block_ref; - block_ref.datalen = *((uint32_t*)block); - block_ref.data = (int8_t*)(block + 4); - (this_arg_conv->block_connected)(this_arg_conv->this_arg, block_ref, height); -} - -void __attribute__((visibility("default"))) TS_Listen_block_disconnected(uint32_t this_arg, int8_tArray header, int32_t height) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKListen* this_arg_conv = (LDKListen*)this_arg_ptr; - unsigned char header_arr[80]; - CHECK(*((uint32_t*)header) == 80); - memcpy(header_arr, (uint8_t*)(header + 4), 80); - unsigned char (*header_ref)[80] = &header_arr; - (this_arg_conv->block_disconnected)(this_arg_conv->this_arg, header_ref, height); -} - -typedef struct LDKConfirm_JCalls { - atomic_size_t refcnt; - uint32_t transactions_confirmed_meth; - uint32_t transaction_unconfirmed_meth; - uint32_t best_block_updated_meth; - uint32_t get_relevant_txids_meth; -} LDKConfirm_JCalls; -static void LDKConfirm_JCalls_free(void* this_arg) { - LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->transactions_confirmed_meth); - js_free(j_calls->transaction_unconfirmed_meth); - js_free(j_calls->best_block_updated_meth); - js_free(j_calls->get_relevant_txids_meth); - FREE(j_calls); - } -} -void transactions_confirmed_LDKConfirm_jcall(const void* this_arg, const uint8_t (* header)[80], LDKCVec_C2Tuple_usizeTransactionZZ txdata, uint32_t height) { - LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) this_arg; - int8_tArray header_arr = init_arr(80, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(header_arr + 4), *header, 80); - LDKCVec_C2Tuple_usizeTransactionZZ txdata_var = txdata; - uint32_tArray txdata_arr = NULL; - txdata_arr = init_arr(txdata_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *txdata_arr_ptr = (uint32_t*)(txdata_arr + 4); - for (size_t c = 0; c < txdata_var.datalen; c++) { - LDKC2Tuple_usizeTransactionZ* txdata_conv_28_conv = MALLOC(sizeof(LDKC2Tuple_usizeTransactionZ), "LDKC2Tuple_usizeTransactionZ"); - *txdata_conv_28_conv = txdata_var.data[c]; - txdata_arr_ptr[c] = ((uint64_t)txdata_conv_28_conv); - } - - FREE(txdata_var.data); - js_invoke_function_3(j_calls->transactions_confirmed_meth, header_arr, txdata_arr, height); -} -void transaction_unconfirmed_LDKConfirm_jcall(const void* this_arg, const uint8_t (* txid)[32]) { - LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) this_arg; - int8_tArray txid_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(txid_arr + 4), *txid, 32); - js_invoke_function_1(j_calls->transaction_unconfirmed_meth, txid_arr); -} -void best_block_updated_LDKConfirm_jcall(const void* this_arg, const uint8_t (* header)[80], uint32_t height) { - LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) this_arg; - int8_tArray header_arr = init_arr(80, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(header_arr + 4), *header, 80); - js_invoke_function_2(j_calls->best_block_updated_meth, header_arr, height); -} -LDKCVec_TxidZ get_relevant_txids_LDKConfirm_jcall(const void* this_arg) { - LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) this_arg; - ptrArray ret = js_invoke_function_0(j_calls->get_relevant_txids_meth); - LDKCVec_TxidZ ret_constr; - ret_constr.datalen = *((uint32_t*)ret); - if (ret_constr.datalen > 0) - ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKThirtyTwoBytes), "LDKCVec_TxidZ Elements"); - else - ret_constr.data = NULL; - int8_tArray* ret_vals = (int8_tArray*)(ret + 4); - for (size_t m = 0; m < ret_constr.datalen; m++) { - int8_tArray ret_conv_12 = ret_vals[m]; - LDKThirtyTwoBytes ret_conv_12_ref; - CHECK(*((uint32_t*)ret_conv_12) == 32); - memcpy(ret_conv_12_ref.data, (uint8_t*)(ret_conv_12 + 4), 32); - ret_constr.data[m] = ret_conv_12_ref; - } - return ret_constr; -} -static void LDKConfirm_JCalls_cloned(LDKConfirm* new_obj) { - LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); -} -static inline LDKConfirm LDKConfirm_init (/*TODO: JS Object Reference */void* o) { - LDKConfirm_JCalls *calls = MALLOC(sizeof(LDKConfirm_JCalls), "LDKConfirm_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - - LDKConfirm ret = { - .this_arg = (void*) calls, - .transactions_confirmed = transactions_confirmed_LDKConfirm_jcall, - .transaction_unconfirmed = transaction_unconfirmed_LDKConfirm_jcall, - .best_block_updated = best_block_updated_LDKConfirm_jcall, - .get_relevant_txids = get_relevant_txids_LDKConfirm_jcall, - .free = LDKConfirm_JCalls_free, - }; - return ret; -} -long __attribute__((visibility("default"))) TS_LDKConfirm_new(/*TODO: JS Object Reference */void* o) { - LDKConfirm *res_ptr = MALLOC(sizeof(LDKConfirm), "LDKConfirm"); - *res_ptr = LDKConfirm_init(o); - return (long)res_ptr; -} -void __attribute__((visibility("default"))) TS_Confirm_transactions_confirmed(uint32_t this_arg, int8_tArray header, uint32_tArray txdata, int32_t height) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKConfirm* this_arg_conv = (LDKConfirm*)this_arg_ptr; - unsigned char header_arr[80]; - CHECK(*((uint32_t*)header) == 80); - memcpy(header_arr, (uint8_t*)(header + 4), 80); - unsigned char (*header_ref)[80] = &header_arr; - LDKCVec_C2Tuple_usizeTransactionZZ txdata_constr; - txdata_constr.datalen = *((uint32_t*)txdata); - if (txdata_constr.datalen > 0) - txdata_constr.data = MALLOC(txdata_constr.datalen * sizeof(LDKC2Tuple_usizeTransactionZ), "LDKCVec_C2Tuple_usizeTransactionZZ Elements"); - else - txdata_constr.data = NULL; - uint32_t* txdata_vals = (uint32_t*)(txdata + 4); - for (size_t c = 0; c < txdata_constr.datalen; c++) { - uint32_t txdata_conv_28 = txdata_vals[c]; - void* txdata_conv_28_ptr = (void*)(((uint64_t)txdata_conv_28) & ~1); - CHECK_ACCESS(txdata_conv_28_ptr); - LDKC2Tuple_usizeTransactionZ txdata_conv_28_conv = *(LDKC2Tuple_usizeTransactionZ*)(txdata_conv_28_ptr); - txdata_conv_28_conv = C2Tuple_usizeTransactionZ_clone((LDKC2Tuple_usizeTransactionZ*)(((uint64_t)txdata_conv_28) & ~1)); - txdata_constr.data[c] = txdata_conv_28_conv; - } - (this_arg_conv->transactions_confirmed)(this_arg_conv->this_arg, header_ref, txdata_constr, height); -} - -void __attribute__((visibility("default"))) TS_Confirm_transaction_unconfirmed(uint32_t this_arg, int8_tArray txid) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKConfirm* this_arg_conv = (LDKConfirm*)this_arg_ptr; - unsigned char txid_arr[32]; - CHECK(*((uint32_t*)txid) == 32); - memcpy(txid_arr, (uint8_t*)(txid + 4), 32); - unsigned char (*txid_ref)[32] = &txid_arr; - (this_arg_conv->transaction_unconfirmed)(this_arg_conv->this_arg, txid_ref); -} - -void __attribute__((visibility("default"))) TS_Confirm_best_block_updated(uint32_t this_arg, int8_tArray header, int32_t height) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKConfirm* this_arg_conv = (LDKConfirm*)this_arg_ptr; - unsigned char header_arr[80]; - CHECK(*((uint32_t*)header) == 80); - memcpy(header_arr, (uint8_t*)(header + 4), 80); - unsigned char (*header_ref)[80] = &header_arr; - (this_arg_conv->best_block_updated)(this_arg_conv->this_arg, header_ref, height); -} - -ptrArray __attribute__((visibility("default"))) TS_Confirm_get_relevant_txids(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKConfirm* this_arg_conv = (LDKConfirm*)this_arg_ptr; - LDKCVec_TxidZ ret_var = (this_arg_conv->get_relevant_txids)(this_arg_conv->this_arg); - ptrArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native ptrArray Bytes"); - int8_tArray *ret_arr_ptr = (int8_tArray*)(ret_arr + 4); - for (size_t m = 0; m < ret_var.datalen; m++) { - int8_tArray ret_conv_12_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_conv_12_arr + 4), ret_var.data[m].data, 32); - ret_arr_ptr[m] = ret_conv_12_arr; - } - - FREE(ret_var.data); - return ret_arr; -} - -typedef struct LDKPersist_JCalls { - atomic_size_t refcnt; - uint32_t persist_new_channel_meth; - uint32_t update_persisted_channel_meth; -} LDKPersist_JCalls; -static void LDKPersist_JCalls_free(void* this_arg) { - LDKPersist_JCalls *j_calls = (LDKPersist_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->persist_new_channel_meth); - js_free(j_calls->update_persisted_channel_meth); - FREE(j_calls); - } -} -LDKCResult_NoneChannelMonitorUpdateErrZ persist_new_channel_LDKPersist_jcall(const void* this_arg, LDKOutPoint channel_id, const LDKChannelMonitor * data, LDKMonitorUpdateId update_id) { - LDKPersist_JCalls *j_calls = (LDKPersist_JCalls*) this_arg; - LDKOutPoint channel_id_var = channel_id; - uint64_t channel_id_ref = 0; - CHECK((((uint64_t)channel_id_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&channel_id_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_id_var); - channel_id_ref = (uint64_t)channel_id_var.inner; - if (channel_id_var.is_owned) { - channel_id_ref |= 1; - } - LDKChannelMonitor data_var = *data; - uint64_t data_ref = 0; - data_var = ChannelMonitor_clone(data); - CHECK((((uint64_t)data_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&data_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(data_var); - data_ref = (uint64_t)data_var.inner; - if (data_var.is_owned) { - data_ref |= 1; - } - LDKMonitorUpdateId update_id_var = update_id; - uint64_t update_id_ref = 0; - CHECK((((uint64_t)update_id_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&update_id_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_id_var); - update_id_ref = (uint64_t)update_id_var.inner; - if (update_id_var.is_owned) { - update_id_ref |= 1; - } - uint32_t ret = js_invoke_function_3(j_calls->persist_new_channel_meth, channel_id_ref, data_ref, update_id_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_NoneChannelMonitorUpdateErrZ ret_conv = *(LDKCResult_NoneChannelMonitorUpdateErrZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; -} -LDKCResult_NoneChannelMonitorUpdateErrZ update_persisted_channel_LDKPersist_jcall(const void* this_arg, LDKOutPoint channel_id, const LDKChannelMonitorUpdate * update, const LDKChannelMonitor * data, LDKMonitorUpdateId update_id) { - LDKPersist_JCalls *j_calls = (LDKPersist_JCalls*) this_arg; - LDKOutPoint channel_id_var = channel_id; - uint64_t channel_id_ref = 0; - CHECK((((uint64_t)channel_id_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&channel_id_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_id_var); - channel_id_ref = (uint64_t)channel_id_var.inner; - if (channel_id_var.is_owned) { - channel_id_ref |= 1; - } - LDKChannelMonitorUpdate update_var = *update; - uint64_t update_ref = 0; - if ((uint64_t)update_var.inner > 4096) { - update_var = ChannelMonitorUpdate_clone(update); - CHECK((((uint64_t)update_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&update_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_var); - update_ref = (uint64_t)update_var.inner; - if (update_var.is_owned) { - update_ref |= 1; - } - } - LDKChannelMonitor data_var = *data; - uint64_t data_ref = 0; - data_var = ChannelMonitor_clone(data); - CHECK((((uint64_t)data_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&data_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(data_var); - data_ref = (uint64_t)data_var.inner; - if (data_var.is_owned) { - data_ref |= 1; - } - LDKMonitorUpdateId update_id_var = update_id; - uint64_t update_id_ref = 0; - CHECK((((uint64_t)update_id_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&update_id_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_id_var); - update_id_ref = (uint64_t)update_id_var.inner; - if (update_id_var.is_owned) { - update_id_ref |= 1; - } - uint32_t ret = js_invoke_function_4(j_calls->update_persisted_channel_meth, channel_id_ref, update_ref, data_ref, update_id_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_NoneChannelMonitorUpdateErrZ ret_conv = *(LDKCResult_NoneChannelMonitorUpdateErrZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; -} -static void LDKPersist_JCalls_cloned(LDKPersist* new_obj) { - LDKPersist_JCalls *j_calls = (LDKPersist_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); -} -static inline LDKPersist LDKPersist_init (/*TODO: JS Object Reference */void* o) { - LDKPersist_JCalls *calls = MALLOC(sizeof(LDKPersist_JCalls), "LDKPersist_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - - LDKPersist ret = { - .this_arg = (void*) calls, - .persist_new_channel = persist_new_channel_LDKPersist_jcall, - .update_persisted_channel = update_persisted_channel_LDKPersist_jcall, - .free = LDKPersist_JCalls_free, - }; - return ret; -} -long __attribute__((visibility("default"))) TS_LDKPersist_new(/*TODO: JS Object Reference */void* o) { - LDKPersist *res_ptr = MALLOC(sizeof(LDKPersist), "LDKPersist"); - *res_ptr = LDKPersist_init(o); - return (long)res_ptr; -} -uint32_t __attribute__((visibility("default"))) TS_Persist_persist_new_channel(uint32_t this_arg, uint32_t channel_id, uint32_t data, uint32_t update_id) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKPersist* this_arg_conv = (LDKPersist*)this_arg_ptr; - LDKOutPoint channel_id_conv; - channel_id_conv.inner = (void*)(channel_id & (~1)); - channel_id_conv.is_owned = (channel_id & 1) || (channel_id == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_id_conv); - channel_id_conv = OutPoint_clone(&channel_id_conv); - LDKChannelMonitor data_conv; - data_conv.inner = (void*)(data & (~1)); - data_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(data_conv); - LDKMonitorUpdateId update_id_conv; - update_id_conv.inner = (void*)(update_id & (~1)); - update_id_conv.is_owned = (update_id & 1) || (update_id == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_id_conv); - update_id_conv = MonitorUpdateId_clone(&update_id_conv); - LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); - *ret_conv = (this_arg_conv->persist_new_channel)(this_arg_conv->this_arg, channel_id_conv, &data_conv, update_id_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_Persist_update_persisted_channel(uint32_t this_arg, uint32_t channel_id, uint32_t update, uint32_t data, uint32_t update_id) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKPersist* this_arg_conv = (LDKPersist*)this_arg_ptr; - LDKOutPoint channel_id_conv; - channel_id_conv.inner = (void*)(channel_id & (~1)); - channel_id_conv.is_owned = (channel_id & 1) || (channel_id == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_id_conv); - channel_id_conv = OutPoint_clone(&channel_id_conv); - LDKChannelMonitorUpdate update_conv; - update_conv.inner = (void*)(update & (~1)); - update_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_conv); - LDKChannelMonitor data_conv; - data_conv.inner = (void*)(data & (~1)); - data_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(data_conv); - LDKMonitorUpdateId update_id_conv; - update_id_conv.inner = (void*)(update_id & (~1)); - update_id_conv.is_owned = (update_id & 1) || (update_id == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_id_conv); - update_id_conv = MonitorUpdateId_clone(&update_id_conv); - LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); - *ret_conv = (this_arg_conv->update_persisted_channel)(this_arg_conv->this_arg, channel_id_conv, &update_conv, &data_conv, update_id_conv); - return (uint64_t)ret_conv; -} - -typedef struct LDKChannelMessageHandler_JCalls { - atomic_size_t refcnt; - LDKMessageSendEventsProvider_JCalls* MessageSendEventsProvider; - uint32_t handle_open_channel_meth; - uint32_t handle_accept_channel_meth; - uint32_t handle_funding_created_meth; - uint32_t handle_funding_signed_meth; - uint32_t handle_funding_locked_meth; - uint32_t handle_shutdown_meth; - uint32_t handle_closing_signed_meth; - uint32_t handle_update_add_htlc_meth; - uint32_t handle_update_fulfill_htlc_meth; - uint32_t handle_update_fail_htlc_meth; - uint32_t handle_update_fail_malformed_htlc_meth; - uint32_t handle_commitment_signed_meth; - uint32_t handle_revoke_and_ack_meth; - uint32_t handle_update_fee_meth; - uint32_t handle_announcement_signatures_meth; - uint32_t peer_disconnected_meth; - uint32_t peer_connected_meth; - uint32_t handle_channel_reestablish_meth; - uint32_t handle_channel_update_meth; - uint32_t handle_error_meth; -} LDKChannelMessageHandler_JCalls; -static void LDKChannelMessageHandler_JCalls_free(void* this_arg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->handle_open_channel_meth); - js_free(j_calls->handle_accept_channel_meth); - js_free(j_calls->handle_funding_created_meth); - js_free(j_calls->handle_funding_signed_meth); - js_free(j_calls->handle_funding_locked_meth); - js_free(j_calls->handle_shutdown_meth); - js_free(j_calls->handle_closing_signed_meth); - js_free(j_calls->handle_update_add_htlc_meth); - js_free(j_calls->handle_update_fulfill_htlc_meth); - js_free(j_calls->handle_update_fail_htlc_meth); - js_free(j_calls->handle_update_fail_malformed_htlc_meth); - js_free(j_calls->handle_commitment_signed_meth); - js_free(j_calls->handle_revoke_and_ack_meth); - js_free(j_calls->handle_update_fee_meth); - js_free(j_calls->handle_announcement_signatures_meth); - js_free(j_calls->peer_disconnected_meth); - js_free(j_calls->peer_connected_meth); - js_free(j_calls->handle_channel_reestablish_meth); - js_free(j_calls->handle_channel_update_meth); - js_free(j_calls->handle_error_meth); - FREE(j_calls); - } -} -void handle_open_channel_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, LDKInitFeatures their_features, const LDKOpenChannel * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKInitFeatures their_features_var = their_features; - uint64_t their_features_ref = 0; - CHECK((((uint64_t)their_features_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&their_features_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(their_features_var); - their_features_ref = (uint64_t)their_features_var.inner; - if (their_features_var.is_owned) { - their_features_ref |= 1; - } - LDKOpenChannel msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = OpenChannel_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - js_invoke_function_3(j_calls->handle_open_channel_meth, their_node_id_arr, their_features_ref, msg_ref); -} -void handle_accept_channel_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, LDKInitFeatures their_features, const LDKAcceptChannel * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKInitFeatures their_features_var = their_features; - uint64_t their_features_ref = 0; - CHECK((((uint64_t)their_features_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&their_features_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(their_features_var); - their_features_ref = (uint64_t)their_features_var.inner; - if (their_features_var.is_owned) { - their_features_ref |= 1; - } - LDKAcceptChannel msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = AcceptChannel_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - js_invoke_function_3(j_calls->handle_accept_channel_meth, their_node_id_arr, their_features_ref, msg_ref); -} -void handle_funding_created_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKFundingCreated * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKFundingCreated msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = FundingCreated_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - js_invoke_function_2(j_calls->handle_funding_created_meth, their_node_id_arr, msg_ref); -} -void handle_funding_signed_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKFundingSigned * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKFundingSigned msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = FundingSigned_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - js_invoke_function_2(j_calls->handle_funding_signed_meth, their_node_id_arr, msg_ref); -} -void handle_funding_locked_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKFundingLocked * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKFundingLocked msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = FundingLocked_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - js_invoke_function_2(j_calls->handle_funding_locked_meth, their_node_id_arr, msg_ref); -} -void handle_shutdown_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKInitFeatures * their_features, const LDKShutdown * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKInitFeatures their_features_var = *their_features; - uint64_t their_features_ref = 0; - their_features_var = InitFeatures_clone(their_features); - CHECK((((uint64_t)their_features_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&their_features_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(their_features_var); - their_features_ref = (uint64_t)their_features_var.inner; - if (their_features_var.is_owned) { - their_features_ref |= 1; - } - LDKShutdown msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = Shutdown_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - js_invoke_function_3(j_calls->handle_shutdown_meth, their_node_id_arr, their_features_ref, msg_ref); -} -void handle_closing_signed_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKClosingSigned * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKClosingSigned msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = ClosingSigned_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - js_invoke_function_2(j_calls->handle_closing_signed_meth, their_node_id_arr, msg_ref); -} -void handle_update_add_htlc_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateAddHTLC * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKUpdateAddHTLC msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = UpdateAddHTLC_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; + case LDKMessageSendEvent_SendFundingCreated: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_funding_created.node_id.compressed_form, 33); + LDKFundingCreated msg_var = obj->send_funding_created.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendFundingCreated */; (void) node_id_arr; (void) msg_ref; + } + case LDKMessageSendEvent_SendFundingSigned: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_funding_signed.node_id.compressed_form, 33); + LDKFundingSigned msg_var = obj->send_funding_signed.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendFundingSigned */; (void) node_id_arr; (void) msg_ref; + } + case LDKMessageSendEvent_SendFundingLocked: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_funding_locked.node_id.compressed_form, 33); + LDKFundingLocked msg_var = obj->send_funding_locked.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendFundingLocked */; (void) node_id_arr; (void) msg_ref; + } + case LDKMessageSendEvent_SendAnnouncementSignatures: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_announcement_signatures.node_id.compressed_form, 33); + LDKAnnouncementSignatures msg_var = obj->send_announcement_signatures.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendAnnouncementSignatures */; (void) node_id_arr; (void) msg_ref; + } + case LDKMessageSendEvent_UpdateHTLCs: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->update_htl_cs.node_id.compressed_form, 33); + LDKCommitmentUpdate updates_var = obj->update_htl_cs.updates; + uint64_t updates_ref = 0; + CHECK((((uint64_t)updates_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&updates_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(updates_var); + updates_ref = (uint64_t)updates_var.inner & ~1; + return 0 /* LDKMessageSendEvent - UpdateHTLCs */; (void) node_id_arr; (void) updates_ref; + } + case LDKMessageSendEvent_SendRevokeAndACK: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_revoke_and_ack.node_id.compressed_form, 33); + LDKRevokeAndACK msg_var = obj->send_revoke_and_ack.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendRevokeAndACK */; (void) node_id_arr; (void) msg_ref; + } + case LDKMessageSendEvent_SendClosingSigned: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_closing_signed.node_id.compressed_form, 33); + LDKClosingSigned msg_var = obj->send_closing_signed.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendClosingSigned */; (void) node_id_arr; (void) msg_ref; + } + case LDKMessageSendEvent_SendShutdown: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_shutdown.node_id.compressed_form, 33); + LDKShutdown msg_var = obj->send_shutdown.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendShutdown */; (void) node_id_arr; (void) msg_ref; + } + case LDKMessageSendEvent_SendChannelReestablish: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_channel_reestablish.node_id.compressed_form, 33); + LDKChannelReestablish msg_var = obj->send_channel_reestablish.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendChannelReestablish */; (void) node_id_arr; (void) msg_ref; + } + case LDKMessageSendEvent_BroadcastChannelAnnouncement: { + LDKChannelAnnouncement msg_var = obj->broadcast_channel_announcement.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + LDKChannelUpdate update_msg_var = obj->broadcast_channel_announcement.update_msg; + uint64_t update_msg_ref = 0; + CHECK((((uint64_t)update_msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&update_msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_msg_var); + update_msg_ref = (uint64_t)update_msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - BroadcastChannelAnnouncement */; (void) msg_ref; (void) update_msg_ref; + } + case LDKMessageSendEvent_BroadcastNodeAnnouncement: { + LDKNodeAnnouncement msg_var = obj->broadcast_node_announcement.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - BroadcastNodeAnnouncement */; (void) msg_ref; + } + case LDKMessageSendEvent_BroadcastChannelUpdate: { + LDKChannelUpdate msg_var = obj->broadcast_channel_update.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - BroadcastChannelUpdate */; (void) msg_ref; + } + case LDKMessageSendEvent_SendChannelUpdate: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_channel_update.node_id.compressed_form, 33); + LDKChannelUpdate msg_var = obj->send_channel_update.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendChannelUpdate */; (void) node_id_arr; (void) msg_ref; + } + case LDKMessageSendEvent_HandleError: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->handle_error.node_id.compressed_form, 33); + uint64_t action_ref = ((uint64_t)&obj->handle_error.action) | 1; + return 0 /* LDKMessageSendEvent - HandleError */; (void) node_id_arr; (void) action_ref; + } + case LDKMessageSendEvent_SendChannelRangeQuery: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_channel_range_query.node_id.compressed_form, 33); + LDKQueryChannelRange msg_var = obj->send_channel_range_query.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendChannelRangeQuery */; (void) node_id_arr; (void) msg_ref; + } + case LDKMessageSendEvent_SendShortIdsQuery: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_short_ids_query.node_id.compressed_form, 33); + LDKQueryShortChannelIds msg_var = obj->send_short_ids_query.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendShortIdsQuery */; (void) node_id_arr; (void) msg_ref; + } + case LDKMessageSendEvent_SendReplyChannelRange: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_reply_channel_range.node_id.compressed_form, 33); + LDKReplyChannelRange msg_var = obj->send_reply_channel_range.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendReplyChannelRange */; (void) node_id_arr; (void) msg_ref; + } + default: abort(); } - js_invoke_function_2(j_calls->handle_update_add_htlc_meth, their_node_id_arr, msg_ref); } -void handle_update_fulfill_htlc_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateFulfillHTLC * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKUpdateFulfillHTLC msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = UpdateFulfillHTLC_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; +static inline LDKCVec_MessageSendEventZ CVec_MessageSendEventZ_clone(const LDKCVec_MessageSendEventZ *orig) { + LDKCVec_MessageSendEventZ ret = { .data = MALLOC(sizeof(LDKMessageSendEvent) * orig->datalen, "LDKCVec_MessageSendEventZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = MessageSendEvent_clone(&orig->data[i]); } - js_invoke_function_2(j_calls->handle_update_fulfill_htlc_meth, their_node_id_arr, msg_ref); + return ret; } -void handle_update_fail_htlc_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateFailHTLC * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKUpdateFailHTLC msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = UpdateFailHTLC_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - js_invoke_function_2(j_calls->handle_update_fail_htlc_meth, their_node_id_arr, msg_ref); +static inline bool CResult_boolLightningErrorZ_get_ok(LDKCResult_boolLightningErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; } -void handle_update_fail_malformed_htlc_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateFailMalformedHTLC * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKUpdateFailMalformedHTLC msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = UpdateFailMalformedHTLC_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - js_invoke_function_2(j_calls->handle_update_fail_malformed_htlc_meth, their_node_id_arr, msg_ref); +jboolean __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_get_ok(uint32_t owner) { + LDKCResult_boolLightningErrorZ* owner_conv = (LDKCResult_boolLightningErrorZ*)(owner & ~1); + jboolean ret_val = CResult_boolLightningErrorZ_get_ok(owner_conv); + return ret_val; } -void handle_commitment_signed_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKCommitmentSigned * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKCommitmentSigned msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = CommitmentSigned_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - js_invoke_function_2(j_calls->handle_commitment_signed_meth, their_node_id_arr, msg_ref); + +static inline struct LDKLightningError CResult_boolLightningErrorZ_get_err(LDKCResult_boolLightningErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return LightningError_clone(&*owner->contents.err); } -void handle_revoke_and_ack_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKRevokeAndACK * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKRevokeAndACK msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = RevokeAndACK_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_get_err(uint32_t owner) { + LDKCResult_boolLightningErrorZ* owner_conv = (LDKCResult_boolLightningErrorZ*)(owner & ~1); + LDKLightningError ret_var = CResult_boolLightningErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - js_invoke_function_2(j_calls->handle_revoke_and_ack_meth, their_node_id_arr, msg_ref); + return ret_ref; } -void handle_update_fee_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateFee * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKUpdateFee msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = UpdateFee_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - js_invoke_function_2(j_calls->handle_update_fee_meth, their_node_id_arr, msg_ref); + +static inline struct LDKChannelAnnouncement C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_a(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ *NONNULL_PTR owner){ + return ChannelAnnouncement_clone(&owner->a); } -void handle_announcement_signatures_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKAnnouncementSignatures * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKAnnouncementSignatures msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = AnnouncementSignatures_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_a(uint32_t owner) { + LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* owner_conv = (LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(owner & ~1); + LDKChannelAnnouncement ret_var = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_a(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - js_invoke_function_2(j_calls->handle_announcement_signatures_meth, their_node_id_arr, msg_ref); -} -void peer_disconnected_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, bool no_connection_possible) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - js_invoke_function_2(j_calls->peer_disconnected_meth, their_node_id_arr, no_connection_possible); + return ret_ref; } -void peer_connected_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKInit * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKInit msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = Init_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - js_invoke_function_2(j_calls->peer_connected_meth, their_node_id_arr, msg_ref); + +static inline struct LDKChannelUpdate C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_b(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ *NONNULL_PTR owner){ + return ChannelUpdate_clone(&owner->b); } -void handle_channel_reestablish_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKChannelReestablish * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKChannelReestablish msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = ChannelReestablish_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_b(uint32_t owner) { + LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* owner_conv = (LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(owner & ~1); + LDKChannelUpdate ret_var = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_b(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - js_invoke_function_2(j_calls->handle_channel_reestablish_meth, their_node_id_arr, msg_ref); + return ret_ref; } -void handle_channel_update_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKChannelUpdate * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKChannelUpdate msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = ChannelUpdate_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - js_invoke_function_2(j_calls->handle_channel_update_meth, their_node_id_arr, msg_ref); + +static inline struct LDKChannelUpdate C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_c(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ *NONNULL_PTR owner){ + return ChannelUpdate_clone(&owner->c); } -void handle_error_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKErrorMessage * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKErrorMessage msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = ErrorMessage_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_c(uint32_t owner) { + LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* owner_conv = (LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(owner & ~1); + LDKChannelUpdate ret_var = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_c(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - js_invoke_function_2(j_calls->handle_error_meth, their_node_id_arr, msg_ref); -} -static void LDKChannelMessageHandler_JCalls_cloned(LDKChannelMessageHandler* new_obj) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); - atomic_fetch_add_explicit(&j_calls->MessageSendEventsProvider->refcnt, 1, memory_order_release); + return ret_ref; } -static inline LDKChannelMessageHandler LDKChannelMessageHandler_init (/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */void* MessageSendEventsProvider) { - LDKChannelMessageHandler_JCalls *calls = MALLOC(sizeof(LDKChannelMessageHandler_JCalls), "LDKChannelMessageHandler_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - LDKChannelMessageHandler ret = { - .this_arg = (void*) calls, - .handle_open_channel = handle_open_channel_LDKChannelMessageHandler_jcall, - .handle_accept_channel = handle_accept_channel_LDKChannelMessageHandler_jcall, - .handle_funding_created = handle_funding_created_LDKChannelMessageHandler_jcall, - .handle_funding_signed = handle_funding_signed_LDKChannelMessageHandler_jcall, - .handle_funding_locked = handle_funding_locked_LDKChannelMessageHandler_jcall, - .handle_shutdown = handle_shutdown_LDKChannelMessageHandler_jcall, - .handle_closing_signed = handle_closing_signed_LDKChannelMessageHandler_jcall, - .handle_update_add_htlc = handle_update_add_htlc_LDKChannelMessageHandler_jcall, - .handle_update_fulfill_htlc = handle_update_fulfill_htlc_LDKChannelMessageHandler_jcall, - .handle_update_fail_htlc = handle_update_fail_htlc_LDKChannelMessageHandler_jcall, - .handle_update_fail_malformed_htlc = handle_update_fail_malformed_htlc_LDKChannelMessageHandler_jcall, - .handle_commitment_signed = handle_commitment_signed_LDKChannelMessageHandler_jcall, - .handle_revoke_and_ack = handle_revoke_and_ack_LDKChannelMessageHandler_jcall, - .handle_update_fee = handle_update_fee_LDKChannelMessageHandler_jcall, - .handle_announcement_signatures = handle_announcement_signatures_LDKChannelMessageHandler_jcall, - .peer_disconnected = peer_disconnected_LDKChannelMessageHandler_jcall, - .peer_connected = peer_connected_LDKChannelMessageHandler_jcall, - .handle_channel_reestablish = handle_channel_reestablish_LDKChannelMessageHandler_jcall, - .handle_channel_update = handle_channel_update_LDKChannelMessageHandler_jcall, - .handle_error = handle_error_LDKChannelMessageHandler_jcall, - .free = LDKChannelMessageHandler_JCalls_free, - .MessageSendEventsProvider = LDKMessageSendEventsProvider_init(MessageSendEventsProvider), - }; - calls->MessageSendEventsProvider = ret.MessageSendEventsProvider.this_arg; +static inline LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_clone(const LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ *orig) { + LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ ret = { .data = MALLOC(sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ) * orig->datalen, "LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone(&orig->data[i]); + } return ret; } -long __attribute__((visibility("default"))) TS_LDKChannelMessageHandler_new(/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */ void* MessageSendEventsProvider) { - LDKChannelMessageHandler *res_ptr = MALLOC(sizeof(LDKChannelMessageHandler), "LDKChannelMessageHandler"); - *res_ptr = LDKChannelMessageHandler_init(o, MessageSendEventsProvider); - return (long)res_ptr; -} -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_open_channel(uint32_t this_arg, int8_tArray their_node_id, uint32_t their_features, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKInitFeatures their_features_conv; - their_features_conv.inner = (void*)(their_features & (~1)); - their_features_conv.is_owned = (their_features & 1) || (their_features == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(their_features_conv); - their_features_conv = InitFeatures_clone(&their_features_conv); - LDKOpenChannel msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_open_channel)(this_arg_conv->this_arg, their_node_id_ref, their_features_conv, &msg_conv); -} - -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_accept_channel(uint32_t this_arg, int8_tArray their_node_id, uint32_t their_features, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKInitFeatures their_features_conv; - their_features_conv.inner = (void*)(their_features & (~1)); - their_features_conv.is_owned = (their_features & 1) || (their_features == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(their_features_conv); - their_features_conv = InitFeatures_clone(&their_features_conv); - LDKAcceptChannel msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_accept_channel)(this_arg_conv->this_arg, their_node_id_ref, their_features_conv, &msg_conv); +static inline LDKCVec_NodeAnnouncementZ CVec_NodeAnnouncementZ_clone(const LDKCVec_NodeAnnouncementZ *orig) { + LDKCVec_NodeAnnouncementZ ret = { .data = MALLOC(sizeof(LDKNodeAnnouncement) * orig->datalen, "LDKCVec_NodeAnnouncementZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = NodeAnnouncement_clone(&orig->data[i]); + } + return ret; } - -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_funding_created(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKFundingCreated msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_funding_created)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline struct LDKCVec_u8Z CResult_CVec_u8ZPeerHandleErrorZ_get_ok(LDKCResult_CVec_u8ZPeerHandleErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return CVec_u8Z_clone(&*owner->contents.result); +} +int8_tArray __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_get_ok(uint32_t owner) { + LDKCResult_CVec_u8ZPeerHandleErrorZ* owner_conv = (LDKCResult_CVec_u8ZPeerHandleErrorZ*)(owner & ~1); + LDKCVec_u8Z ret_var = CResult_CVec_u8ZPeerHandleErrorZ_get_ok(owner_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_funding_signed(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKFundingSigned msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_funding_signed)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline struct LDKPeerHandleError CResult_CVec_u8ZPeerHandleErrorZ_get_err(LDKCResult_CVec_u8ZPeerHandleErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return PeerHandleError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_get_err(uint32_t owner) { + LDKCResult_CVec_u8ZPeerHandleErrorZ* owner_conv = (LDKCResult_CVec_u8ZPeerHandleErrorZ*)(owner & ~1); + LDKPeerHandleError ret_var = CResult_CVec_u8ZPeerHandleErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_funding_locked(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKFundingLocked msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_funding_locked)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline void CResult_NonePeerHandleErrorZ_get_ok(LDKCResult_NonePeerHandleErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; +} +void __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_get_ok(uint32_t owner) { + LDKCResult_NonePeerHandleErrorZ* owner_conv = (LDKCResult_NonePeerHandleErrorZ*)(owner & ~1); + CResult_NonePeerHandleErrorZ_get_ok(owner_conv); } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_shutdown(uint32_t this_arg, int8_tArray their_node_id, uint32_t their_features, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKInitFeatures their_features_conv; - their_features_conv.inner = (void*)(their_features & (~1)); - their_features_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(their_features_conv); - LDKShutdown msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_shutdown)(this_arg_conv->this_arg, their_node_id_ref, &their_features_conv, &msg_conv); +static inline struct LDKPeerHandleError CResult_NonePeerHandleErrorZ_get_err(LDKCResult_NonePeerHandleErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return PeerHandleError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_get_err(uint32_t owner) { + LDKCResult_NonePeerHandleErrorZ* owner_conv = (LDKCResult_NonePeerHandleErrorZ*)(owner & ~1); + LDKPeerHandleError ret_var = CResult_NonePeerHandleErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_closing_signed(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKClosingSigned msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_closing_signed)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline bool CResult_boolPeerHandleErrorZ_get_ok(LDKCResult_boolPeerHandleErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; +} +jboolean __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_get_ok(uint32_t owner) { + LDKCResult_boolPeerHandleErrorZ* owner_conv = (LDKCResult_boolPeerHandleErrorZ*)(owner & ~1); + jboolean ret_val = CResult_boolPeerHandleErrorZ_get_ok(owner_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_update_add_htlc(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKUpdateAddHTLC msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_update_add_htlc)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline struct LDKPeerHandleError CResult_boolPeerHandleErrorZ_get_err(LDKCResult_boolPeerHandleErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return PeerHandleError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_get_err(uint32_t owner) { + LDKCResult_boolPeerHandleErrorZ* owner_conv = (LDKCResult_boolPeerHandleErrorZ*)(owner & ~1); + LDKPeerHandleError ret_var = CResult_boolPeerHandleErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_update_fulfill_htlc(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKUpdateFulfillHTLC msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_update_fulfill_htlc)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline struct LDKTxOut CResult_TxOutAccessErrorZ_get_ok(LDKCResult_TxOutAccessErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return TxOut_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_get_ok(uint32_t owner) { + LDKCResult_TxOutAccessErrorZ* owner_conv = (LDKCResult_TxOutAccessErrorZ*)(owner & ~1); + LDKTxOut* ret_ref = MALLOC(sizeof(LDKTxOut), "LDKTxOut"); + *ret_ref = CResult_TxOutAccessErrorZ_get_ok(owner_conv); + return (uint64_t)ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_update_fail_htlc(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKUpdateFailHTLC msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_update_fail_htlc)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline enum LDKAccessError CResult_TxOutAccessErrorZ_get_err(LDKCResult_TxOutAccessErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return AccessError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_get_err(uint32_t owner) { + LDKCResult_TxOutAccessErrorZ* owner_conv = (LDKCResult_TxOutAccessErrorZ*)(owner & ~1); + uint32_t ret_conv = LDKAccessError_to_js(CResult_TxOutAccessErrorZ_get_err(owner_conv)); + return ret_conv; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_update_fail_malformed_htlc(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKUpdateFailMalformedHTLC msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_update_fail_malformed_htlc)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline void CResult_NoneChannelMonitorUpdateErrZ_get_ok(LDKCResult_NoneChannelMonitorUpdateErrZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; +} +void __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_get_ok(uint32_t owner) { + LDKCResult_NoneChannelMonitorUpdateErrZ* owner_conv = (LDKCResult_NoneChannelMonitorUpdateErrZ*)(owner & ~1); + CResult_NoneChannelMonitorUpdateErrZ_get_ok(owner_conv); } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_commitment_signed(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKCommitmentSigned msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_commitment_signed)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline enum LDKChannelMonitorUpdateErr CResult_NoneChannelMonitorUpdateErrZ_get_err(LDKCResult_NoneChannelMonitorUpdateErrZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return ChannelMonitorUpdateErr_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_get_err(uint32_t owner) { + LDKCResult_NoneChannelMonitorUpdateErrZ* owner_conv = (LDKCResult_NoneChannelMonitorUpdateErrZ*)(owner & ~1); + uint32_t ret_conv = LDKChannelMonitorUpdateErr_to_js(CResult_NoneChannelMonitorUpdateErrZ_get_err(owner_conv)); + return ret_conv; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_revoke_and_ack(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKRevokeAndACK msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_revoke_and_ack)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +uint32_t __attribute__((visibility("default"))) TS_LDKCOption_C2Tuple_usizeTransactionZZ_ref_from_ptr(uint32_t ptr) { + LDKCOption_C2Tuple_usizeTransactionZZ *obj = (LDKCOption_C2Tuple_usizeTransactionZZ*)(ptr & ~1); + switch(obj->tag) { + case LDKCOption_C2Tuple_usizeTransactionZZ_Some: { + LDKC2Tuple_usizeTransactionZ* some_conv = MALLOC(sizeof(LDKC2Tuple_usizeTransactionZ), "LDKC2Tuple_usizeTransactionZ"); + *some_conv = obj->some; + *some_conv = C2Tuple_usizeTransactionZ_clone(some_conv); + return 0 /* LDKCOption_C2Tuple_usizeTransactionZZ - Some */; (void) ((uint64_t)some_conv); + } + case LDKCOption_C2Tuple_usizeTransactionZZ_None: { + return 0 /* LDKCOption_C2Tuple_usizeTransactionZZ - None */; + } + default: abort(); + } +} +uint32_t __attribute__((visibility("default"))) TS_LDKCOption_ClosureReasonZ_ref_from_ptr(uint32_t ptr) { + LDKCOption_ClosureReasonZ *obj = (LDKCOption_ClosureReasonZ*)(ptr & ~1); + switch(obj->tag) { + case LDKCOption_ClosureReasonZ_Some: { + uint64_t some_ref = ((uint64_t)&obj->some) | 1; + return 0 /* LDKCOption_ClosureReasonZ - Some */; (void) some_ref; + } + case LDKCOption_ClosureReasonZ_None: { + return 0 /* LDKCOption_ClosureReasonZ - None */; + } + default: abort(); + } +} +static inline struct LDKCOption_ClosureReasonZ CResult_COption_ClosureReasonZDecodeErrorZ_get_ok(LDKCResult_COption_ClosureReasonZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return COption_ClosureReasonZ_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_COption_ClosureReasonZDecodeErrorZ* owner_conv = (LDKCResult_COption_ClosureReasonZDecodeErrorZ*)(owner & ~1); + LDKCOption_ClosureReasonZ *ret_copy = MALLOC(sizeof(LDKCOption_ClosureReasonZ), "LDKCOption_ClosureReasonZ"); + *ret_copy = CResult_COption_ClosureReasonZDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_update_fee(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKUpdateFee msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_update_fee)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline struct LDKDecodeError CResult_COption_ClosureReasonZDecodeErrorZ_get_err(LDKCResult_COption_ClosureReasonZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_COption_ClosureReasonZDecodeErrorZ* owner_conv = (LDKCResult_COption_ClosureReasonZDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_COption_ClosureReasonZDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_announcement_signatures(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKAnnouncementSignatures msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_announcement_signatures)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +uint32_t __attribute__((visibility("default"))) TS_LDKCOption_EventZ_ref_from_ptr(uint32_t ptr) { + LDKCOption_EventZ *obj = (LDKCOption_EventZ*)(ptr & ~1); + switch(obj->tag) { + case LDKCOption_EventZ_Some: { + uint64_t some_ref = ((uint64_t)&obj->some) | 1; + return 0 /* LDKCOption_EventZ - Some */; (void) some_ref; + } + case LDKCOption_EventZ_None: { + return 0 /* LDKCOption_EventZ - None */; + } + default: abort(); + } +} +static inline struct LDKCOption_EventZ CResult_COption_EventZDecodeErrorZ_get_ok(LDKCResult_COption_EventZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return COption_EventZ_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_COption_EventZDecodeErrorZ* owner_conv = (LDKCResult_COption_EventZDecodeErrorZ*)(owner & ~1); + LDKCOption_EventZ *ret_copy = MALLOC(sizeof(LDKCOption_EventZ), "LDKCOption_EventZ"); + *ret_copy = CResult_COption_EventZDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_peer_disconnected(uint32_t this_arg, int8_tArray their_node_id, jboolean no_connection_possible) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - (this_arg_conv->peer_disconnected)(this_arg_conv->this_arg, their_node_id_ref, no_connection_possible); +static inline struct LDKDecodeError CResult_COption_EventZDecodeErrorZ_get_err(LDKCResult_COption_EventZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_COption_EventZDecodeErrorZ* owner_conv = (LDKCResult_COption_EventZDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_COption_EventZDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_peer_connected(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKInit msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->peer_connected)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline struct LDKNodeId CResult_NodeIdDecodeErrorZ_get_ok(LDKCResult_NodeIdDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return NodeId_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeIdDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_NodeIdDecodeErrorZ* owner_conv = (LDKCResult_NodeIdDecodeErrorZ*)(owner & ~1); + LDKNodeId ret_var = CResult_NodeIdDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_channel_reestablish(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKChannelReestablish msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_channel_reestablish)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline struct LDKDecodeError CResult_NodeIdDecodeErrorZ_get_err(LDKCResult_NodeIdDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeIdDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_NodeIdDecodeErrorZ* owner_conv = (LDKCResult_NodeIdDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_NodeIdDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_channel_update(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKChannelUpdate msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_channel_update)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline struct LDKCOption_NetworkUpdateZ CResult_COption_NetworkUpdateZDecodeErrorZ_get_ok(LDKCResult_COption_NetworkUpdateZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return COption_NetworkUpdateZ_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_NetworkUpdateZDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_COption_NetworkUpdateZDecodeErrorZ* owner_conv = (LDKCResult_COption_NetworkUpdateZDecodeErrorZ*)(owner & ~1); + LDKCOption_NetworkUpdateZ *ret_copy = MALLOC(sizeof(LDKCOption_NetworkUpdateZ), "LDKCOption_NetworkUpdateZ"); + *ret_copy = CResult_COption_NetworkUpdateZDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_error(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKErrorMessage msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_error)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline struct LDKDecodeError CResult_COption_NetworkUpdateZDecodeErrorZ_get_err(LDKCResult_COption_NetworkUpdateZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_NetworkUpdateZDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_COption_NetworkUpdateZDecodeErrorZ* owner_conv = (LDKCResult_COption_NetworkUpdateZDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_COption_NetworkUpdateZDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -typedef struct LDKRoutingMessageHandler_JCalls { +typedef struct LDKAccess_JCalls { atomic_size_t refcnt; - LDKMessageSendEventsProvider_JCalls* MessageSendEventsProvider; - uint32_t handle_node_announcement_meth; - uint32_t handle_channel_announcement_meth; - uint32_t handle_channel_update_meth; - uint32_t get_next_channel_announcements_meth; - uint32_t get_next_node_announcements_meth; - uint32_t sync_routing_table_meth; - uint32_t handle_reply_channel_range_meth; - uint32_t handle_reply_short_channel_ids_end_meth; - uint32_t handle_query_channel_range_meth; - uint32_t handle_query_short_channel_ids_meth; -} LDKRoutingMessageHandler_JCalls; -static void LDKRoutingMessageHandler_JCalls_free(void* this_arg) { - LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; + uint32_t get_utxo_meth; +} LDKAccess_JCalls; +static void LDKAccess_JCalls_free(void* this_arg) { + LDKAccess_JCalls *j_calls = (LDKAccess_JCalls*) this_arg; if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->handle_node_announcement_meth); - js_free(j_calls->handle_channel_announcement_meth); - js_free(j_calls->handle_channel_update_meth); - js_free(j_calls->get_next_channel_announcements_meth); - js_free(j_calls->get_next_node_announcements_meth); - js_free(j_calls->sync_routing_table_meth); - js_free(j_calls->handle_reply_channel_range_meth); - js_free(j_calls->handle_reply_short_channel_ids_end_meth); - js_free(j_calls->handle_query_channel_range_meth); - js_free(j_calls->handle_query_short_channel_ids_meth); + js_free_function_ptr(j_calls->get_utxo_meth); FREE(j_calls); } } -LDKCResult_boolLightningErrorZ handle_node_announcement_LDKRoutingMessageHandler_jcall(const void* this_arg, const LDKNodeAnnouncement * msg) { - LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; - LDKNodeAnnouncement msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = NodeAnnouncement_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - uint32_t ret = js_invoke_function_1(j_calls->handle_node_announcement_meth, msg_ref); +LDKCResult_TxOutAccessErrorZ get_utxo_LDKAccess_jcall(const void* this_arg, const uint8_t (* genesis_hash)[32], uint64_t short_channel_id) { + LDKAccess_JCalls *j_calls = (LDKAccess_JCalls*) this_arg; + int8_tArray genesis_hash_arr = init_int8_tArray(32); + memcpy(genesis_hash_arr->elems, *genesis_hash, 32); + uint32_t ret = js_invoke_function_2(j_calls->get_utxo_meth, (uint32_t)genesis_hash_arr, (uint32_t)short_channel_id); void* ret_ptr = (void*)(((uint64_t)ret) & ~1); CHECK_ACCESS(ret_ptr); - LDKCResult_boolLightningErrorZ ret_conv = *(LDKCResult_boolLightningErrorZ*)(ret_ptr); + LDKCResult_TxOutAccessErrorZ ret_conv = *(LDKCResult_TxOutAccessErrorZ*)(ret_ptr); FREE((void*)ret); return ret_conv; } -LDKCResult_boolLightningErrorZ handle_channel_announcement_LDKRoutingMessageHandler_jcall(const void* this_arg, const LDKChannelAnnouncement * msg) { - LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; - LDKChannelAnnouncement msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = ChannelAnnouncement_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; +static void LDKAccess_JCalls_cloned(LDKAccess* new_obj) { + LDKAccess_JCalls *j_calls = (LDKAccess_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); +} +static inline LDKAccess LDKAccess_init (/*TODO: JS Object Reference */void* o) { + LDKAccess_JCalls *calls = MALLOC(sizeof(LDKAccess_JCalls), "LDKAccess_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o + + LDKAccess ret = { + .this_arg = (void*) calls, + .get_utxo = get_utxo_LDKAccess_jcall, + .free = LDKAccess_JCalls_free, + }; + return ret; +} +long __attribute__((visibility("default"))) TS_LDKAccess_new(/*TODO: JS Object Reference */void* o) { + LDKAccess *res_ptr = MALLOC(sizeof(LDKAccess), "LDKAccess"); + *res_ptr = LDKAccess_init(o); + return (long)res_ptr; +} +uint32_t __attribute__((visibility("default"))) TS_Access_get_utxo(uint32_t this_arg, int8_tArray genesis_hash, int64_t short_channel_id) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKAccess* this_arg_conv = (LDKAccess*)this_arg_ptr; + unsigned char genesis_hash_arr[32]; + CHECK(genesis_hash->arr_len == 32); + memcpy(genesis_hash_arr, genesis_hash->elems, 32); + unsigned char (*genesis_hash_ref)[32] = &genesis_hash_arr; + LDKCResult_TxOutAccessErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxOutAccessErrorZ), "LDKCResult_TxOutAccessErrorZ"); + *ret_conv = (this_arg_conv->get_utxo)(this_arg_conv->this_arg, genesis_hash_ref, short_channel_id); + return (uint64_t)ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_LDKCOption_AccessZ_ref_from_ptr(uint32_t ptr) { + LDKCOption_AccessZ *obj = (LDKCOption_AccessZ*)(ptr & ~1); + switch(obj->tag) { + case LDKCOption_AccessZ_Some: { + LDKAccess* some_ret = MALLOC(sizeof(LDKAccess), "LDKAccess"); + *some_ret = obj->some; + // Warning: We likely need to clone here, but no clone is available, so we just do it for Java instances + return 0 /* LDKCOption_AccessZ - Some */; (void) (uint64_t)some_ret; + } + case LDKCOption_AccessZ_None: { + return 0 /* LDKCOption_AccessZ - None */; + } + default: abort(); } - uint32_t ret = js_invoke_function_1(j_calls->handle_channel_announcement_meth, msg_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_boolLightningErrorZ ret_conv = *(LDKCResult_boolLightningErrorZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; } -LDKCResult_boolLightningErrorZ handle_channel_update_LDKRoutingMessageHandler_jcall(const void* this_arg, const LDKChannelUpdate * msg) { - LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; - LDKChannelUpdate msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = ChannelUpdate_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; +static inline struct LDKDirectionalChannelInfo CResult_DirectionalChannelInfoDecodeErrorZ_get_ok(LDKCResult_DirectionalChannelInfoDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return DirectionalChannelInfo_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_DirectionalChannelInfoDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_DirectionalChannelInfoDecodeErrorZ* owner_conv = (LDKCResult_DirectionalChannelInfoDecodeErrorZ*)(owner & ~1); + LDKDirectionalChannelInfo ret_var = CResult_DirectionalChannelInfoDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - uint32_t ret = js_invoke_function_1(j_calls->handle_channel_update_meth, msg_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_boolLightningErrorZ ret_conv = *(LDKCResult_boolLightningErrorZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; + return ret_ref; } -LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ get_next_channel_announcements_LDKRoutingMessageHandler_jcall(const void* this_arg, uint64_t starting_point, uint8_t batch_amount) { - LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; - uint32_tArray ret = js_invoke_function_2(j_calls->get_next_channel_announcements_meth, starting_point, batch_amount); - LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ ret_constr; - ret_constr.datalen = *((uint32_t*)ret); - if (ret_constr.datalen > 0) - ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ), "LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ Elements"); - else - ret_constr.data = NULL; - uint32_t* ret_vals = (uint32_t*)(ret + 4); - for (size_t h = 0; h < ret_constr.datalen; h++) { - uint32_t ret_conv_59 = ret_vals[h]; - void* ret_conv_59_ptr = (void*)(((uint64_t)ret_conv_59) & ~1); - CHECK_ACCESS(ret_conv_59_ptr); - LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ ret_conv_59_conv = *(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(ret_conv_59_ptr); - FREE((void*)ret_conv_59); - ret_constr.data[h] = ret_conv_59_conv; + +static inline struct LDKDecodeError CResult_DirectionalChannelInfoDecodeErrorZ_get_err(LDKCResult_DirectionalChannelInfoDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_DirectionalChannelInfoDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_DirectionalChannelInfoDecodeErrorZ* owner_conv = (LDKCResult_DirectionalChannelInfoDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_DirectionalChannelInfoDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +static inline struct LDKChannelInfo CResult_ChannelInfoDecodeErrorZ_get_ok(LDKCResult_ChannelInfoDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ChannelInfo_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelInfoDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ChannelInfoDecodeErrorZ* owner_conv = (LDKCResult_ChannelInfoDecodeErrorZ*)(owner & ~1); + LDKChannelInfo ret_var = CResult_ChannelInfoDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +static inline struct LDKDecodeError CResult_ChannelInfoDecodeErrorZ_get_err(LDKCResult_ChannelInfoDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelInfoDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ChannelInfoDecodeErrorZ* owner_conv = (LDKCResult_ChannelInfoDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ChannelInfoDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +static inline struct LDKRoutingFees CResult_RoutingFeesDecodeErrorZ_get_ok(LDKCResult_RoutingFeesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return RoutingFees_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_RoutingFeesDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_RoutingFeesDecodeErrorZ* owner_conv = (LDKCResult_RoutingFeesDecodeErrorZ*)(owner & ~1); + LDKRoutingFees ret_var = CResult_RoutingFeesDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret_constr; + return ret_ref; } -LDKCVec_NodeAnnouncementZ get_next_node_announcements_LDKRoutingMessageHandler_jcall(const void* this_arg, LDKPublicKey starting_point, uint8_t batch_amount) { - LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; - int8_tArray starting_point_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(starting_point_arr + 4), starting_point.compressed_form, 33); - uint32_tArray ret = js_invoke_function_2(j_calls->get_next_node_announcements_meth, starting_point_arr, batch_amount); - LDKCVec_NodeAnnouncementZ ret_constr; - ret_constr.datalen = *((uint32_t*)ret); - if (ret_constr.datalen > 0) - ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKNodeAnnouncement), "LDKCVec_NodeAnnouncementZ Elements"); - else - ret_constr.data = NULL; - uint32_t* ret_vals = (uint32_t*)(ret + 4); - for (size_t s = 0; s < ret_constr.datalen; s++) { - uint32_t ret_conv_18 = ret_vals[s]; - LDKNodeAnnouncement ret_conv_18_conv; - ret_conv_18_conv.inner = (void*)(ret_conv_18 & (~1)); - ret_conv_18_conv.is_owned = (ret_conv_18 & 1) || (ret_conv_18 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_18_conv); - ret_constr.data[s] = ret_conv_18_conv; + +static inline struct LDKDecodeError CResult_RoutingFeesDecodeErrorZ_get_err(LDKCResult_RoutingFeesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_RoutingFeesDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_RoutingFeesDecodeErrorZ* owner_conv = (LDKCResult_RoutingFeesDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_RoutingFeesDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret_constr; + return ret_ref; } -void sync_routing_table_LDKRoutingMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKInit * init) { - LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKInit init_var = *init; - uint64_t init_ref = 0; - init_var = Init_clone(init); - CHECK((((uint64_t)init_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&init_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(init_var); - init_ref = (uint64_t)init_var.inner; - if (init_var.is_owned) { - init_ref |= 1; + +uint32_t __attribute__((visibility("default"))) TS_LDKNetAddress_ref_from_ptr(uint32_t ptr) { + LDKNetAddress *obj = (LDKNetAddress*)(ptr & ~1); + switch(obj->tag) { + case LDKNetAddress_IPv4: { + int8_tArray addr_arr = init_int8_tArray(4); + memcpy(addr_arr->elems, obj->i_pv4.addr.data, 4); + return 0 /* LDKNetAddress - IPv4 */; (void) addr_arr; (void) obj->i_pv4.port; + } + case LDKNetAddress_IPv6: { + int8_tArray addr_arr = init_int8_tArray(16); + memcpy(addr_arr->elems, obj->i_pv6.addr.data, 16); + return 0 /* LDKNetAddress - IPv6 */; (void) addr_arr; (void) obj->i_pv6.port; + } + case LDKNetAddress_OnionV2: { + int8_tArray onion_v2_arr = init_int8_tArray(12); + memcpy(onion_v2_arr->elems, obj->onion_v2.data, 12); + return 0 /* LDKNetAddress - OnionV2 */; (void) onion_v2_arr; + } + case LDKNetAddress_OnionV3: { + int8_tArray ed25519_pubkey_arr = init_int8_tArray(32); + memcpy(ed25519_pubkey_arr->elems, obj->onion_v3.ed25519_pubkey.data, 32); + return 0 /* LDKNetAddress - OnionV3 */; (void) ed25519_pubkey_arr; (void) obj->onion_v3.checksum; (void) obj->onion_v3.version; (void) obj->onion_v3.port; + } + default: abort(); } - js_invoke_function_2(j_calls->sync_routing_table_meth, their_node_id_arr, init_ref); } -LDKCResult_NoneLightningErrorZ handle_reply_channel_range_LDKRoutingMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, LDKReplyChannelRange msg) { - LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKReplyChannelRange msg_var = msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; +static inline LDKCVec_NetAddressZ CVec_NetAddressZ_clone(const LDKCVec_NetAddressZ *orig) { + LDKCVec_NetAddressZ ret = { .data = MALLOC(sizeof(LDKNetAddress) * orig->datalen, "LDKCVec_NetAddressZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = NetAddress_clone(&orig->data[i]); } - uint32_t ret = js_invoke_function_2(j_calls->handle_reply_channel_range_meth, their_node_id_arr, msg_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; + return ret; } -LDKCResult_NoneLightningErrorZ handle_reply_short_channel_ids_end_LDKRoutingMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, LDKReplyShortChannelIdsEnd msg) { - LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKReplyShortChannelIdsEnd msg_var = msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; +static inline struct LDKNodeAnnouncementInfo CResult_NodeAnnouncementInfoDecodeErrorZ_get_ok(LDKCResult_NodeAnnouncementInfoDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return NodeAnnouncementInfo_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementInfoDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_NodeAnnouncementInfoDecodeErrorZ* owner_conv = (LDKCResult_NodeAnnouncementInfoDecodeErrorZ*)(owner & ~1); + LDKNodeAnnouncementInfo ret_var = CResult_NodeAnnouncementInfoDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - uint32_t ret = js_invoke_function_2(j_calls->handle_reply_short_channel_ids_end_meth, their_node_id_arr, msg_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; + return ret_ref; } -LDKCResult_NoneLightningErrorZ handle_query_channel_range_LDKRoutingMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, LDKQueryChannelRange msg) { - LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKQueryChannelRange msg_var = msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; + +static inline struct LDKDecodeError CResult_NodeAnnouncementInfoDecodeErrorZ_get_err(LDKCResult_NodeAnnouncementInfoDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementInfoDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_NodeAnnouncementInfoDecodeErrorZ* owner_conv = (LDKCResult_NodeAnnouncementInfoDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_NodeAnnouncementInfoDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - uint32_t ret = js_invoke_function_2(j_calls->handle_query_channel_range_meth, their_node_id_arr, msg_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; + return ret_ref; } -LDKCResult_NoneLightningErrorZ handle_query_short_channel_ids_LDKRoutingMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, LDKQueryShortChannelIds msg) { - LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKQueryShortChannelIds msg_var = msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; + +static inline LDKCVec_u64Z CVec_u64Z_clone(const LDKCVec_u64Z *orig) { + LDKCVec_u64Z ret = { .data = MALLOC(sizeof(int64_t) * orig->datalen, "LDKCVec_u64Z clone bytes"), .datalen = orig->datalen }; + memcpy(ret.data, orig->data, sizeof(int64_t) * ret.datalen); + return ret; +} +static inline struct LDKNodeInfo CResult_NodeInfoDecodeErrorZ_get_ok(LDKCResult_NodeInfoDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return NodeInfo_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeInfoDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_NodeInfoDecodeErrorZ* owner_conv = (LDKCResult_NodeInfoDecodeErrorZ*)(owner & ~1); + LDKNodeInfo ret_var = CResult_NodeInfoDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - uint32_t ret = js_invoke_function_2(j_calls->handle_query_short_channel_ids_meth, their_node_id_arr, msg_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; + return ret_ref; } -static void LDKRoutingMessageHandler_JCalls_cloned(LDKRoutingMessageHandler* new_obj) { - LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); - atomic_fetch_add_explicit(&j_calls->MessageSendEventsProvider->refcnt, 1, memory_order_release); + +static inline struct LDKDecodeError CResult_NodeInfoDecodeErrorZ_get_err(LDKCResult_NodeInfoDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeInfoDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_NodeInfoDecodeErrorZ* owner_conv = (LDKCResult_NodeInfoDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_NodeInfoDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline LDKRoutingMessageHandler LDKRoutingMessageHandler_init (/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */void* MessageSendEventsProvider) { - LDKRoutingMessageHandler_JCalls *calls = MALLOC(sizeof(LDKRoutingMessageHandler_JCalls), "LDKRoutingMessageHandler_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - LDKRoutingMessageHandler ret = { - .this_arg = (void*) calls, - .handle_node_announcement = handle_node_announcement_LDKRoutingMessageHandler_jcall, - .handle_channel_announcement = handle_channel_announcement_LDKRoutingMessageHandler_jcall, - .handle_channel_update = handle_channel_update_LDKRoutingMessageHandler_jcall, - .get_next_channel_announcements = get_next_channel_announcements_LDKRoutingMessageHandler_jcall, - .get_next_node_announcements = get_next_node_announcements_LDKRoutingMessageHandler_jcall, - .sync_routing_table = sync_routing_table_LDKRoutingMessageHandler_jcall, - .handle_reply_channel_range = handle_reply_channel_range_LDKRoutingMessageHandler_jcall, - .handle_reply_short_channel_ids_end = handle_reply_short_channel_ids_end_LDKRoutingMessageHandler_jcall, - .handle_query_channel_range = handle_query_channel_range_LDKRoutingMessageHandler_jcall, - .handle_query_short_channel_ids = handle_query_short_channel_ids_LDKRoutingMessageHandler_jcall, - .free = LDKRoutingMessageHandler_JCalls_free, - .MessageSendEventsProvider = LDKMessageSendEventsProvider_init(MessageSendEventsProvider), - }; - calls->MessageSendEventsProvider = ret.MessageSendEventsProvider.this_arg; - return ret; +static inline struct LDKNetworkGraph CResult_NetworkGraphDecodeErrorZ_get_ok(LDKCResult_NetworkGraphDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return NetworkGraph_clone(&*owner->contents.result); } -long __attribute__((visibility("default"))) TS_LDKRoutingMessageHandler_new(/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */ void* MessageSendEventsProvider) { - LDKRoutingMessageHandler *res_ptr = MALLOC(sizeof(LDKRoutingMessageHandler), "LDKRoutingMessageHandler"); - *res_ptr = LDKRoutingMessageHandler_init(o, MessageSendEventsProvider); - return (long)res_ptr; +uint32_t __attribute__((visibility("default"))) TS_CResult_NetworkGraphDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_NetworkGraphDecodeErrorZ* owner_conv = (LDKCResult_NetworkGraphDecodeErrorZ*)(owner & ~1); + LDKNetworkGraph ret_var = CResult_NetworkGraphDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_node_announcement(uint32_t this_arg, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; - LDKNodeAnnouncement msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); - *ret_conv = (this_arg_conv->handle_node_announcement)(this_arg_conv->this_arg, &msg_conv); - return (uint64_t)ret_conv; + +static inline struct LDKDecodeError CResult_NetworkGraphDecodeErrorZ_get_err(LDKCResult_NetworkGraphDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_NetworkGraphDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_NetworkGraphDecodeErrorZ* owner_conv = (LDKCResult_NetworkGraphDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_NetworkGraphDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_channel_announcement(uint32_t this_arg, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; - LDKChannelAnnouncement msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); - *ret_conv = (this_arg_conv->handle_channel_announcement)(this_arg_conv->this_arg, &msg_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_LDKCOption_CVec_NetAddressZZ_ref_from_ptr(uint32_t ptr) { + LDKCOption_CVec_NetAddressZZ *obj = (LDKCOption_CVec_NetAddressZZ*)(ptr & ~1); + switch(obj->tag) { + case LDKCOption_CVec_NetAddressZZ_Some: { + LDKCVec_NetAddressZ some_var = obj->some; + uint32_tArray some_arr = NULL; + some_arr = init_uint32_tArray(some_var.datalen); + uint32_t *some_arr_ptr = (uint32_t*)(some_arr + 4); + for (size_t m = 0; m < some_var.datalen; m++) { + uint64_t some_conv_12_ref = ((uint64_t)&some_var.data[m]) | 1; + some_arr_ptr[m] = some_conv_12_ref; + } + + return 0 /* LDKCOption_CVec_NetAddressZZ - Some */; (void) some_arr; + } + case LDKCOption_CVec_NetAddressZZ_None: { + return 0 /* LDKCOption_CVec_NetAddressZZ - None */; + } + default: abort(); + } +} +static inline struct LDKScoringParameters *CResult_ScoringParametersDecodeErrorZ_get_ok(LDKCResult_ScoringParametersDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return &*owner->contents.result; +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ScoringParametersDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ScoringParametersDecodeErrorZ* owner_conv = (LDKCResult_ScoringParametersDecodeErrorZ*)(owner & ~1); + LDKScoringParameters ret_var = *CResult_ScoringParametersDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner & ~1; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_channel_update(uint32_t this_arg, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; - LDKChannelUpdate msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); - *ret_conv = (this_arg_conv->handle_channel_update)(this_arg_conv->this_arg, &msg_conv); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_ScoringParametersDecodeErrorZ_get_err(LDKCResult_ScoringParametersDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ScoringParametersDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ScoringParametersDecodeErrorZ* owner_conv = (LDKCResult_ScoringParametersDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ScoringParametersDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_tArray __attribute__((visibility("default"))) TS_RoutingMessageHandler_get_next_channel_announcements(uint32_t this_arg, int64_t starting_point, int8_t batch_amount) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; - LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ ret_var = (this_arg_conv->get_next_channel_announcements)(this_arg_conv->this_arg, starting_point, batch_amount); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t h = 0; h < ret_var.datalen; h++) { - LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* ret_conv_59_conv = MALLOC(sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ), "LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ"); - *ret_conv_59_conv = ret_var.data[h]; - ret_arr_ptr[h] = ((uint64_t)ret_conv_59_conv); +static inline struct LDKInitFeatures CResult_InitFeaturesDecodeErrorZ_get_ok(LDKCResult_InitFeaturesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return InitFeatures_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_InitFeaturesDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_InitFeaturesDecodeErrorZ* owner_conv = (LDKCResult_InitFeaturesDecodeErrorZ*)(owner & ~1); + LDKInitFeatures ret_var = CResult_InitFeaturesDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - - FREE(ret_var.data); - return ret_arr; + return ret_ref; } -uint32_tArray __attribute__((visibility("default"))) TS_RoutingMessageHandler_get_next_node_announcements(uint32_t this_arg, int8_tArray starting_point, int8_t batch_amount) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; - LDKPublicKey starting_point_ref; - CHECK(*((uint32_t*)starting_point) == 33); - memcpy(starting_point_ref.compressed_form, (uint8_t*)(starting_point + 4), 33); - LDKCVec_NodeAnnouncementZ ret_var = (this_arg_conv->get_next_node_announcements)(this_arg_conv->this_arg, starting_point_ref, batch_amount); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t s = 0; s < ret_var.datalen; s++) { - LDKNodeAnnouncement ret_conv_18_var = ret_var.data[s]; - uint64_t ret_conv_18_ref = 0; - CHECK((((uint64_t)ret_conv_18_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_18_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_18_var); - ret_conv_18_ref = (uint64_t)ret_conv_18_var.inner; - if (ret_conv_18_var.is_owned) { - ret_conv_18_ref |= 1; - } - ret_arr_ptr[s] = ret_conv_18_ref; +static inline struct LDKDecodeError CResult_InitFeaturesDecodeErrorZ_get_err(LDKCResult_InitFeaturesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_InitFeaturesDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_InitFeaturesDecodeErrorZ* owner_conv = (LDKCResult_InitFeaturesDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_InitFeaturesDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - - FREE(ret_var.data); - return ret_arr; + return ret_ref; } -void __attribute__((visibility("default"))) TS_RoutingMessageHandler_sync_routing_table(uint32_t this_arg, int8_tArray their_node_id, uint32_t init) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKInit init_conv; - init_conv.inner = (void*)(init & (~1)); - init_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(init_conv); - (this_arg_conv->sync_routing_table)(this_arg_conv->this_arg, their_node_id_ref, &init_conv); +static inline struct LDKChannelFeatures CResult_ChannelFeaturesDecodeErrorZ_get_ok(LDKCResult_ChannelFeaturesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ChannelFeatures_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelFeaturesDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ChannelFeaturesDecodeErrorZ* owner_conv = (LDKCResult_ChannelFeaturesDecodeErrorZ*)(owner & ~1); + LDKChannelFeatures ret_var = CResult_ChannelFeaturesDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_reply_channel_range(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKReplyChannelRange msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = ReplyChannelRange_clone(&msg_conv); - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = (this_arg_conv->handle_reply_channel_range)(this_arg_conv->this_arg, their_node_id_ref, msg_conv); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_ChannelFeaturesDecodeErrorZ_get_err(LDKCResult_ChannelFeaturesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelFeaturesDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ChannelFeaturesDecodeErrorZ* owner_conv = (LDKCResult_ChannelFeaturesDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ChannelFeaturesDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_reply_short_channel_ids_end(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKReplyShortChannelIdsEnd msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = ReplyShortChannelIdsEnd_clone(&msg_conv); - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = (this_arg_conv->handle_reply_short_channel_ids_end)(this_arg_conv->this_arg, their_node_id_ref, msg_conv); - return (uint64_t)ret_conv; +static inline struct LDKNodeFeatures CResult_NodeFeaturesDecodeErrorZ_get_ok(LDKCResult_NodeFeaturesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return NodeFeatures_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeFeaturesDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_NodeFeaturesDecodeErrorZ* owner_conv = (LDKCResult_NodeFeaturesDecodeErrorZ*)(owner & ~1); + LDKNodeFeatures ret_var = CResult_NodeFeaturesDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_query_channel_range(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKQueryChannelRange msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = QueryChannelRange_clone(&msg_conv); - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = (this_arg_conv->handle_query_channel_range)(this_arg_conv->this_arg, their_node_id_ref, msg_conv); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_NodeFeaturesDecodeErrorZ_get_err(LDKCResult_NodeFeaturesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeFeaturesDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_NodeFeaturesDecodeErrorZ* owner_conv = (LDKCResult_NodeFeaturesDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_NodeFeaturesDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_query_short_channel_ids(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKQueryShortChannelIds msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = QueryShortChannelIds_clone(&msg_conv); - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = (this_arg_conv->handle_query_short_channel_ids)(this_arg_conv->this_arg, their_node_id_ref, msg_conv); - return (uint64_t)ret_conv; +static inline struct LDKInvoiceFeatures CResult_InvoiceFeaturesDecodeErrorZ_get_ok(LDKCResult_InvoiceFeaturesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return InvoiceFeatures_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceFeaturesDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_InvoiceFeaturesDecodeErrorZ* owner_conv = (LDKCResult_InvoiceFeaturesDecodeErrorZ*)(owner & ~1); + LDKInvoiceFeatures ret_var = CResult_InvoiceFeaturesDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -typedef struct LDKCustomMessageReader_JCalls { - atomic_size_t refcnt; - uint32_t read_meth; -} LDKCustomMessageReader_JCalls; -static void LDKCustomMessageReader_JCalls_free(void* this_arg) { - LDKCustomMessageReader_JCalls *j_calls = (LDKCustomMessageReader_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->read_meth); - FREE(j_calls); +static inline struct LDKDecodeError CResult_InvoiceFeaturesDecodeErrorZ_get_err(LDKCResult_InvoiceFeaturesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceFeaturesDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_InvoiceFeaturesDecodeErrorZ* owner_conv = (LDKCResult_InvoiceFeaturesDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_InvoiceFeaturesDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -LDKCResult_COption_TypeZDecodeErrorZ read_LDKCustomMessageReader_jcall(const void* this_arg, uint16_t message_type, LDKu8slice buffer) { - LDKCustomMessageReader_JCalls *j_calls = (LDKCustomMessageReader_JCalls*) this_arg; - LDKu8slice buffer_var = buffer; - int8_tArray buffer_arr = init_arr(buffer_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(buffer_arr + 4), buffer_var.data, buffer_var.datalen); - uint32_t ret = js_invoke_function_2(j_calls->read_meth, message_type, buffer_arr); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_COption_TypeZDecodeErrorZ ret_conv = *(LDKCResult_COption_TypeZDecodeErrorZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; + +static inline struct LDKChannelTypeFeatures CResult_ChannelTypeFeaturesDecodeErrorZ_get_ok(LDKCResult_ChannelTypeFeaturesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ChannelTypeFeatures_clone(&*owner->contents.result); } -static void LDKCustomMessageReader_JCalls_cloned(LDKCustomMessageReader* new_obj) { - LDKCustomMessageReader_JCalls *j_calls = (LDKCustomMessageReader_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTypeFeaturesDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ChannelTypeFeaturesDecodeErrorZ* owner_conv = (LDKCResult_ChannelTypeFeaturesDecodeErrorZ*)(owner & ~1); + LDKChannelTypeFeatures ret_var = CResult_ChannelTypeFeaturesDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline LDKCustomMessageReader LDKCustomMessageReader_init (/*TODO: JS Object Reference */void* o) { - LDKCustomMessageReader_JCalls *calls = MALLOC(sizeof(LDKCustomMessageReader_JCalls), "LDKCustomMessageReader_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - LDKCustomMessageReader ret = { - .this_arg = (void*) calls, - .read = read_LDKCustomMessageReader_jcall, - .free = LDKCustomMessageReader_JCalls_free, - }; - return ret; +static inline struct LDKDecodeError CResult_ChannelTypeFeaturesDecodeErrorZ_get_err(LDKCResult_ChannelTypeFeaturesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -long __attribute__((visibility("default"))) TS_LDKCustomMessageReader_new(/*TODO: JS Object Reference */void* o) { - LDKCustomMessageReader *res_ptr = MALLOC(sizeof(LDKCustomMessageReader), "LDKCustomMessageReader"); - *res_ptr = LDKCustomMessageReader_init(o); - return (long)res_ptr; +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTypeFeaturesDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ChannelTypeFeaturesDecodeErrorZ* owner_conv = (LDKCResult_ChannelTypeFeaturesDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ChannelTypeFeaturesDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CustomMessageReader_read(uint32_t this_arg, int16_t message_type, int8_tArray buffer) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKCustomMessageReader* this_arg_conv = (LDKCustomMessageReader*)this_arg_ptr; - LDKu8slice buffer_ref; - buffer_ref.datalen = *((uint32_t*)buffer); - buffer_ref.data = (int8_t*)(buffer + 4); - LDKCResult_COption_TypeZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_TypeZDecodeErrorZ), "LDKCResult_COption_TypeZDecodeErrorZ"); - *ret_conv = (this_arg_conv->read)(this_arg_conv->this_arg, message_type, buffer_ref); - return (uint64_t)ret_conv; + +static inline struct LDKNetAddress CResult_NetAddressDecodeErrorZ_get_ok(LDKCResult_NetAddressDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return NetAddress_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_NetAddressDecodeErrorZ* owner_conv = (LDKCResult_NetAddressDecodeErrorZ*)(owner & ~1); + LDKNetAddress *ret_copy = MALLOC(sizeof(LDKNetAddress), "LDKNetAddress"); + *ret_copy = CResult_NetAddressDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -typedef struct LDKCustomMessageHandler_JCalls { - atomic_size_t refcnt; - LDKCustomMessageReader_JCalls* CustomMessageReader; - uint32_t handle_custom_message_meth; - uint32_t get_and_clear_pending_msg_meth; -} LDKCustomMessageHandler_JCalls; -static void LDKCustomMessageHandler_JCalls_free(void* this_arg) { - LDKCustomMessageHandler_JCalls *j_calls = (LDKCustomMessageHandler_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->handle_custom_message_meth); - js_free(j_calls->get_and_clear_pending_msg_meth); - FREE(j_calls); +static inline struct LDKDecodeError CResult_NetAddressDecodeErrorZ_get_err(LDKCResult_NetAddressDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_NetAddressDecodeErrorZ* owner_conv = (LDKCResult_NetAddressDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_NetAddressDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -LDKCResult_NoneLightningErrorZ handle_custom_message_LDKCustomMessageHandler_jcall(const void* this_arg, LDKType msg, LDKPublicKey sender_node_id) { - LDKCustomMessageHandler_JCalls *j_calls = (LDKCustomMessageHandler_JCalls*) this_arg; - LDKType* msg_ret = MALLOC(sizeof(LDKType), "LDKType"); - *msg_ret = msg; - int8_tArray sender_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(sender_node_id_arr + 4), sender_node_id.compressed_form, 33); - uint32_t ret = js_invoke_function_2(j_calls->handle_custom_message_meth, (uint64_t)msg_ret, sender_node_id_arr); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; + +static inline LDKCVec_UpdateAddHTLCZ CVec_UpdateAddHTLCZ_clone(const LDKCVec_UpdateAddHTLCZ *orig) { + LDKCVec_UpdateAddHTLCZ ret = { .data = MALLOC(sizeof(LDKUpdateAddHTLC) * orig->datalen, "LDKCVec_UpdateAddHTLCZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = UpdateAddHTLC_clone(&orig->data[i]); + } + return ret; } -LDKCVec_C2Tuple_PublicKeyTypeZZ get_and_clear_pending_msg_LDKCustomMessageHandler_jcall(const void* this_arg) { - LDKCustomMessageHandler_JCalls *j_calls = (LDKCustomMessageHandler_JCalls*) this_arg; - uint32_tArray ret = js_invoke_function_0(j_calls->get_and_clear_pending_msg_meth); - LDKCVec_C2Tuple_PublicKeyTypeZZ ret_constr; - ret_constr.datalen = *((uint32_t*)ret); - if (ret_constr.datalen > 0) - ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKC2Tuple_PublicKeyTypeZ), "LDKCVec_C2Tuple_PublicKeyTypeZZ Elements"); - else - ret_constr.data = NULL; - uint32_t* ret_vals = (uint32_t*)(ret + 4); - for (size_t z = 0; z < ret_constr.datalen; z++) { - uint32_t ret_conv_25 = ret_vals[z]; - void* ret_conv_25_ptr = (void*)(((uint64_t)ret_conv_25) & ~1); - CHECK_ACCESS(ret_conv_25_ptr); - LDKC2Tuple_PublicKeyTypeZ ret_conv_25_conv = *(LDKC2Tuple_PublicKeyTypeZ*)(ret_conv_25_ptr); - FREE((void*)ret_conv_25); - ret_constr.data[z] = ret_conv_25_conv; +static inline LDKCVec_UpdateFulfillHTLCZ CVec_UpdateFulfillHTLCZ_clone(const LDKCVec_UpdateFulfillHTLCZ *orig) { + LDKCVec_UpdateFulfillHTLCZ ret = { .data = MALLOC(sizeof(LDKUpdateFulfillHTLC) * orig->datalen, "LDKCVec_UpdateFulfillHTLCZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = UpdateFulfillHTLC_clone(&orig->data[i]); } - return ret_constr; + return ret; } -static void LDKCustomMessageHandler_JCalls_cloned(LDKCustomMessageHandler* new_obj) { - LDKCustomMessageHandler_JCalls *j_calls = (LDKCustomMessageHandler_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); - atomic_fetch_add_explicit(&j_calls->CustomMessageReader->refcnt, 1, memory_order_release); +static inline LDKCVec_UpdateFailHTLCZ CVec_UpdateFailHTLCZ_clone(const LDKCVec_UpdateFailHTLCZ *orig) { + LDKCVec_UpdateFailHTLCZ ret = { .data = MALLOC(sizeof(LDKUpdateFailHTLC) * orig->datalen, "LDKCVec_UpdateFailHTLCZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = UpdateFailHTLC_clone(&orig->data[i]); + } + return ret; } -static inline LDKCustomMessageHandler LDKCustomMessageHandler_init (/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */void* CustomMessageReader) { - LDKCustomMessageHandler_JCalls *calls = MALLOC(sizeof(LDKCustomMessageHandler_JCalls), "LDKCustomMessageHandler_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - - LDKCustomMessageHandler ret = { - .this_arg = (void*) calls, - .handle_custom_message = handle_custom_message_LDKCustomMessageHandler_jcall, - .get_and_clear_pending_msg = get_and_clear_pending_msg_LDKCustomMessageHandler_jcall, - .free = LDKCustomMessageHandler_JCalls_free, - .CustomMessageReader = LDKCustomMessageReader_init(CustomMessageReader), - }; - calls->CustomMessageReader = ret.CustomMessageReader.this_arg; +static inline LDKCVec_UpdateFailMalformedHTLCZ CVec_UpdateFailMalformedHTLCZ_clone(const LDKCVec_UpdateFailMalformedHTLCZ *orig) { + LDKCVec_UpdateFailMalformedHTLCZ ret = { .data = MALLOC(sizeof(LDKUpdateFailMalformedHTLC) * orig->datalen, "LDKCVec_UpdateFailMalformedHTLCZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = UpdateFailMalformedHTLC_clone(&orig->data[i]); + } return ret; } -long __attribute__((visibility("default"))) TS_LDKCustomMessageHandler_new(/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */ void* CustomMessageReader) { - LDKCustomMessageHandler *res_ptr = MALLOC(sizeof(LDKCustomMessageHandler), "LDKCustomMessageHandler"); - *res_ptr = LDKCustomMessageHandler_init(o, CustomMessageReader); - return (long)res_ptr; +static inline struct LDKAcceptChannel CResult_AcceptChannelDecodeErrorZ_get_ok(LDKCResult_AcceptChannelDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return AcceptChannel_clone(&*owner->contents.result); } -uint32_t __attribute__((visibility("default"))) TS_CustomMessageHandler_handle_custom_message(uint32_t this_arg, uint32_t msg, int8_tArray sender_node_id) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKCustomMessageHandler* this_arg_conv = (LDKCustomMessageHandler*)this_arg_ptr; - void* msg_ptr = (void*)(((uint64_t)msg) & ~1); - CHECK_ACCESS(msg_ptr); - LDKType msg_conv = *(LDKType*)(msg_ptr); - LDKPublicKey sender_node_id_ref; - CHECK(*((uint32_t*)sender_node_id) == 33); - memcpy(sender_node_id_ref.compressed_form, (uint8_t*)(sender_node_id + 4), 33); - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = (this_arg_conv->handle_custom_message)(this_arg_conv->this_arg, msg_conv, sender_node_id_ref); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_AcceptChannelDecodeErrorZ* owner_conv = (LDKCResult_AcceptChannelDecodeErrorZ*)(owner & ~1); + LDKAcceptChannel ret_var = CResult_AcceptChannelDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_tArray __attribute__((visibility("default"))) TS_CustomMessageHandler_get_and_clear_pending_msg(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKCustomMessageHandler* this_arg_conv = (LDKCustomMessageHandler*)this_arg_ptr; - LDKCVec_C2Tuple_PublicKeyTypeZZ ret_var = (this_arg_conv->get_and_clear_pending_msg)(this_arg_conv->this_arg); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t z = 0; z < ret_var.datalen; z++) { - LDKC2Tuple_PublicKeyTypeZ* ret_conv_25_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyTypeZ), "LDKC2Tuple_PublicKeyTypeZ"); - *ret_conv_25_conv = ret_var.data[z]; - ret_arr_ptr[z] = ((uint64_t)ret_conv_25_conv); +static inline struct LDKDecodeError CResult_AcceptChannelDecodeErrorZ_get_err(LDKCResult_AcceptChannelDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_AcceptChannelDecodeErrorZ* owner_conv = (LDKCResult_AcceptChannelDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_AcceptChannelDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - - FREE(ret_var.data); - return ret_arr; + return ret_ref; } -typedef struct LDKSocketDescriptor_JCalls { - atomic_size_t refcnt; - uint32_t send_data_meth; - uint32_t disconnect_socket_meth; - uint32_t eq_meth; - uint32_t hash_meth; -} LDKSocketDescriptor_JCalls; -static void LDKSocketDescriptor_JCalls_free(void* this_arg) { - LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->send_data_meth); - js_free(j_calls->disconnect_socket_meth); - js_free(j_calls->eq_meth); - js_free(j_calls->hash_meth); - FREE(j_calls); +static inline struct LDKAnnouncementSignatures CResult_AnnouncementSignaturesDecodeErrorZ_get_ok(LDKCResult_AnnouncementSignaturesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return AnnouncementSignatures_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_AnnouncementSignaturesDecodeErrorZ* owner_conv = (LDKCResult_AnnouncementSignaturesDecodeErrorZ*)(owner & ~1); + LDKAnnouncementSignatures ret_var = CResult_AnnouncementSignaturesDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -uintptr_t send_data_LDKSocketDescriptor_jcall(void* this_arg, LDKu8slice data, bool resume_read) { - LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) this_arg; - LDKu8slice data_var = data; - int8_tArray data_arr = init_arr(data_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(data_arr + 4), data_var.data, data_var.datalen); - return js_invoke_function_2(j_calls->send_data_meth, data_arr, resume_read); + +static inline struct LDKDecodeError CResult_AnnouncementSignaturesDecodeErrorZ_get_err(LDKCResult_AnnouncementSignaturesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -void disconnect_socket_LDKSocketDescriptor_jcall(void* this_arg) { - LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) this_arg; - js_invoke_function_0(j_calls->disconnect_socket_meth); +uint32_t __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_AnnouncementSignaturesDecodeErrorZ* owner_conv = (LDKCResult_AnnouncementSignaturesDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_AnnouncementSignaturesDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -bool eq_LDKSocketDescriptor_jcall(const void* this_arg, const LDKSocketDescriptor * other_arg) { - LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) this_arg; - LDKSocketDescriptor *other_arg_clone = MALLOC(sizeof(LDKSocketDescriptor), "LDKSocketDescriptor"); - *other_arg_clone = SocketDescriptor_clone(other_arg); - return js_invoke_function_1(j_calls->eq_meth, (uint64_t)other_arg_clone); + +static inline struct LDKChannelReestablish CResult_ChannelReestablishDecodeErrorZ_get_ok(LDKCResult_ChannelReestablishDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ChannelReestablish_clone(&*owner->contents.result); } -uint64_t hash_LDKSocketDescriptor_jcall(const void* this_arg) { - LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) this_arg; - return js_invoke_function_0(j_calls->hash_meth); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ChannelReestablishDecodeErrorZ* owner_conv = (LDKCResult_ChannelReestablishDecodeErrorZ*)(owner & ~1); + LDKChannelReestablish ret_var = CResult_ChannelReestablishDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static void LDKSocketDescriptor_JCalls_cloned(LDKSocketDescriptor* new_obj) { - LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); + +static inline struct LDKDecodeError CResult_ChannelReestablishDecodeErrorZ_get_err(LDKCResult_ChannelReestablishDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ChannelReestablishDecodeErrorZ* owner_conv = (LDKCResult_ChannelReestablishDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ChannelReestablishDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline LDKSocketDescriptor LDKSocketDescriptor_init (/*TODO: JS Object Reference */void* o) { - LDKSocketDescriptor_JCalls *calls = MALLOC(sizeof(LDKSocketDescriptor_JCalls), "LDKSocketDescriptor_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - LDKSocketDescriptor ret = { - .this_arg = (void*) calls, - .send_data = send_data_LDKSocketDescriptor_jcall, - .disconnect_socket = disconnect_socket_LDKSocketDescriptor_jcall, - .eq = eq_LDKSocketDescriptor_jcall, - .hash = hash_LDKSocketDescriptor_jcall, - .cloned = LDKSocketDescriptor_JCalls_cloned, - .free = LDKSocketDescriptor_JCalls_free, - }; - return ret; +static inline struct LDKClosingSigned CResult_ClosingSignedDecodeErrorZ_get_ok(LDKCResult_ClosingSignedDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ClosingSigned_clone(&*owner->contents.result); } -long __attribute__((visibility("default"))) TS_LDKSocketDescriptor_new(/*TODO: JS Object Reference */void* o) { - LDKSocketDescriptor *res_ptr = MALLOC(sizeof(LDKSocketDescriptor), "LDKSocketDescriptor"); - *res_ptr = LDKSocketDescriptor_init(o); - return (long)res_ptr; +uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ClosingSignedDecodeErrorZ* owner_conv = (LDKCResult_ClosingSignedDecodeErrorZ*)(owner & ~1); + LDKClosingSigned ret_var = CResult_ClosingSignedDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_SocketDescriptor_send_data(uint32_t this_arg, int8_tArray data, jboolean resume_read) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKSocketDescriptor* this_arg_conv = (LDKSocketDescriptor*)this_arg_ptr; - LDKu8slice data_ref; - data_ref.datalen = *((uint32_t*)data); - data_ref.data = (int8_t*)(data + 4); - int64_t ret_val = (this_arg_conv->send_data)(this_arg_conv->this_arg, data_ref, resume_read); - return ret_val; + +static inline struct LDKDecodeError CResult_ClosingSignedDecodeErrorZ_get_err(LDKCResult_ClosingSignedDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ClosingSignedDecodeErrorZ* owner_conv = (LDKCResult_ClosingSignedDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ClosingSignedDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_SocketDescriptor_disconnect_socket(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKSocketDescriptor* this_arg_conv = (LDKSocketDescriptor*)this_arg_ptr; - (this_arg_conv->disconnect_socket)(this_arg_conv->this_arg); +static inline struct LDKClosingSignedFeeRange CResult_ClosingSignedFeeRangeDecodeErrorZ_get_ok(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ClosingSignedFeeRange_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* owner_conv = (LDKCResult_ClosingSignedFeeRangeDecodeErrorZ*)(owner & ~1); + LDKClosingSignedFeeRange ret_var = CResult_ClosingSignedFeeRangeDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_SocketDescriptor_hash(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKSocketDescriptor* this_arg_conv = (LDKSocketDescriptor*)this_arg_ptr; - int64_t ret_val = (this_arg_conv->hash)(this_arg_conv->this_arg); - return ret_val; +static inline struct LDKDecodeError CResult_ClosingSignedFeeRangeDecodeErrorZ_get_err(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* owner_conv = (LDKCResult_ClosingSignedFeeRangeDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ClosingSignedFeeRangeDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -typedef struct LDKScore_JCalls { - atomic_size_t refcnt; - uint32_t channel_penalty_msat_meth; - uint32_t payment_path_failed_meth; - uint32_t payment_path_successful_meth; - uint32_t write_meth; -} LDKScore_JCalls; -static void LDKScore_JCalls_free(void* this_arg) { - LDKScore_JCalls *j_calls = (LDKScore_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->channel_penalty_msat_meth); - js_free(j_calls->payment_path_failed_meth); - js_free(j_calls->payment_path_successful_meth); - js_free(j_calls->write_meth); - FREE(j_calls); +static inline struct LDKCommitmentSigned CResult_CommitmentSignedDecodeErrorZ_get_ok(LDKCResult_CommitmentSignedDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return CommitmentSigned_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_CommitmentSignedDecodeErrorZ* owner_conv = (LDKCResult_CommitmentSignedDecodeErrorZ*)(owner & ~1); + LDKCommitmentSigned ret_var = CResult_CommitmentSignedDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -uint64_t channel_penalty_msat_LDKScore_jcall(const void* this_arg, uint64_t short_channel_id, uint64_t send_amt_msat, LDKCOption_u64Z channel_capacity_msat, const LDKNodeId * source, const LDKNodeId * target) { - LDKScore_JCalls *j_calls = (LDKScore_JCalls*) this_arg; - LDKCOption_u64Z *channel_capacity_msat_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *channel_capacity_msat_copy = channel_capacity_msat; - uint64_t channel_capacity_msat_ref = (uint64_t)channel_capacity_msat_copy; - LDKNodeId source_var = *source; - uint64_t source_ref = 0; - source_var = NodeId_clone(source); - CHECK((((uint64_t)source_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&source_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(source_var); - source_ref = (uint64_t)source_var.inner; - if (source_var.is_owned) { - source_ref |= 1; + +static inline struct LDKDecodeError CResult_CommitmentSignedDecodeErrorZ_get_err(LDKCResult_CommitmentSignedDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_CommitmentSignedDecodeErrorZ* owner_conv = (LDKCResult_CommitmentSignedDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_CommitmentSignedDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - LDKNodeId target_var = *target; - uint64_t target_ref = 0; - target_var = NodeId_clone(target); - CHECK((((uint64_t)target_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&target_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(target_var); - target_ref = (uint64_t)target_var.inner; - if (target_var.is_owned) { - target_ref |= 1; + return ret_ref; +} + +static inline struct LDKFundingCreated CResult_FundingCreatedDecodeErrorZ_get_ok(LDKCResult_FundingCreatedDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return FundingCreated_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_FundingCreatedDecodeErrorZ* owner_conv = (LDKCResult_FundingCreatedDecodeErrorZ*)(owner & ~1); + LDKFundingCreated ret_var = CResult_FundingCreatedDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return js_invoke_function_5(j_calls->channel_penalty_msat_meth, short_channel_id, send_amt_msat, channel_capacity_msat_ref, source_ref, target_ref); + return ret_ref; } -void payment_path_failed_LDKScore_jcall(void* this_arg, LDKCVec_RouteHopZ path, uint64_t short_channel_id) { - LDKScore_JCalls *j_calls = (LDKScore_JCalls*) this_arg; - LDKCVec_RouteHopZ path_var = path; - uint32_tArray path_arr = NULL; - path_arr = init_arr(path_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *path_arr_ptr = (uint32_t*)(path_arr + 4); - for (size_t k = 0; k < path_var.datalen; k++) { - LDKRouteHop path_conv_10_var = path_var.data[k]; - uint64_t path_conv_10_ref = 0; - CHECK((((uint64_t)path_conv_10_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&path_conv_10_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_var); - path_conv_10_ref = (uint64_t)path_conv_10_var.inner; - if (path_conv_10_var.is_owned) { - path_conv_10_ref |= 1; - } - path_arr_ptr[k] = path_conv_10_ref; + +static inline struct LDKDecodeError CResult_FundingCreatedDecodeErrorZ_get_err(LDKCResult_FundingCreatedDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_FundingCreatedDecodeErrorZ* owner_conv = (LDKCResult_FundingCreatedDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_FundingCreatedDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - - FREE(path_var.data); - js_invoke_function_2(j_calls->payment_path_failed_meth, path_arr, short_channel_id); + return ret_ref; } -void payment_path_successful_LDKScore_jcall(void* this_arg, LDKCVec_RouteHopZ path) { - LDKScore_JCalls *j_calls = (LDKScore_JCalls*) this_arg; - LDKCVec_RouteHopZ path_var = path; - uint32_tArray path_arr = NULL; - path_arr = init_arr(path_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *path_arr_ptr = (uint32_t*)(path_arr + 4); - for (size_t k = 0; k < path_var.datalen; k++) { - LDKRouteHop path_conv_10_var = path_var.data[k]; - uint64_t path_conv_10_ref = 0; - CHECK((((uint64_t)path_conv_10_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&path_conv_10_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_var); - path_conv_10_ref = (uint64_t)path_conv_10_var.inner; - if (path_conv_10_var.is_owned) { - path_conv_10_ref |= 1; - } - path_arr_ptr[k] = path_conv_10_ref; + +static inline struct LDKFundingSigned CResult_FundingSignedDecodeErrorZ_get_ok(LDKCResult_FundingSignedDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return FundingSigned_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_FundingSignedDecodeErrorZ* owner_conv = (LDKCResult_FundingSignedDecodeErrorZ*)(owner & ~1); + LDKFundingSigned ret_var = CResult_FundingSignedDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - - FREE(path_var.data); - js_invoke_function_1(j_calls->payment_path_successful_meth, path_arr); + return ret_ref; } -LDKCVec_u8Z write_LDKScore_jcall(const void* this_arg) { - LDKScore_JCalls *j_calls = (LDKScore_JCalls*) this_arg; - int8_tArray ret = js_invoke_function_0(j_calls->write_meth); - LDKCVec_u8Z ret_ref; - ret_ref.datalen = *((uint32_t*)ret); - ret_ref.data = MALLOC(ret_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(ret_ref.data, (uint8_t*)(ret + 4), ret_ref.datalen); + +static inline struct LDKDecodeError CResult_FundingSignedDecodeErrorZ_get_err(LDKCResult_FundingSignedDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_FundingSignedDecodeErrorZ* owner_conv = (LDKCResult_FundingSignedDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_FundingSignedDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -static void LDKScore_JCalls_cloned(LDKScore* new_obj) { - LDKScore_JCalls *j_calls = (LDKScore_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); + +static inline struct LDKFundingLocked CResult_FundingLockedDecodeErrorZ_get_ok(LDKCResult_FundingLockedDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return FundingLocked_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_FundingLockedDecodeErrorZ* owner_conv = (LDKCResult_FundingLockedDecodeErrorZ*)(owner & ~1); + LDKFundingLocked ret_var = CResult_FundingLockedDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline LDKScore LDKScore_init (/*TODO: JS Object Reference */void* o) { - LDKScore_JCalls *calls = MALLOC(sizeof(LDKScore_JCalls), "LDKScore_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - LDKScore ret = { - .this_arg = (void*) calls, - .channel_penalty_msat = channel_penalty_msat_LDKScore_jcall, - .payment_path_failed = payment_path_failed_LDKScore_jcall, - .payment_path_successful = payment_path_successful_LDKScore_jcall, - .write = write_LDKScore_jcall, - .free = LDKScore_JCalls_free, - }; - return ret; +static inline struct LDKDecodeError CResult_FundingLockedDecodeErrorZ_get_err(LDKCResult_FundingLockedDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -long __attribute__((visibility("default"))) TS_LDKScore_new(/*TODO: JS Object Reference */void* o) { - LDKScore *res_ptr = MALLOC(sizeof(LDKScore), "LDKScore"); - *res_ptr = LDKScore_init(o); - return (long)res_ptr; +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_FundingLockedDecodeErrorZ* owner_conv = (LDKCResult_FundingLockedDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_FundingLockedDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_Score_channel_penalty_msat(uint32_t this_arg, int64_t short_channel_id, int64_t send_amt_msat, uint32_t channel_capacity_msat, uint32_t source, uint32_t target) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKScore* this_arg_conv = (LDKScore*)this_arg_ptr; - void* channel_capacity_msat_ptr = (void*)(((uint64_t)channel_capacity_msat) & ~1); - CHECK_ACCESS(channel_capacity_msat_ptr); - LDKCOption_u64Z channel_capacity_msat_conv = *(LDKCOption_u64Z*)(channel_capacity_msat_ptr); - channel_capacity_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)channel_capacity_msat) & ~1)); - LDKNodeId source_conv; - source_conv.inner = (void*)(source & (~1)); - source_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(source_conv); - LDKNodeId target_conv; - target_conv.inner = (void*)(target & (~1)); - target_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(target_conv); - int64_t ret_val = (this_arg_conv->channel_penalty_msat)(this_arg_conv->this_arg, short_channel_id, send_amt_msat, channel_capacity_msat_conv, &source_conv, &target_conv); - return ret_val; + +static inline struct LDKInit CResult_InitDecodeErrorZ_get_ok(LDKCResult_InitDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return Init_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_InitDecodeErrorZ* owner_conv = (LDKCResult_InitDecodeErrorZ*)(owner & ~1); + LDKInit ret_var = CResult_InitDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_Score_payment_path_failed(uint32_t this_arg, uint32_tArray path, int64_t short_channel_id) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKScore* this_arg_conv = (LDKScore*)this_arg_ptr; - LDKCVec_RouteHopZ path_constr; - path_constr.datalen = *((uint32_t*)path); - if (path_constr.datalen > 0) - path_constr.data = MALLOC(path_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); - else - path_constr.data = NULL; - uint32_t* path_vals = (uint32_t*)(path + 4); - for (size_t k = 0; k < path_constr.datalen; k++) { - uint32_t path_conv_10 = path_vals[k]; - LDKRouteHop path_conv_10_conv; - path_conv_10_conv.inner = (void*)(path_conv_10 & (~1)); - path_conv_10_conv.is_owned = (path_conv_10 & 1) || (path_conv_10 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_conv); - path_conv_10_conv = RouteHop_clone(&path_conv_10_conv); - path_constr.data[k] = path_conv_10_conv; +static inline struct LDKDecodeError CResult_InitDecodeErrorZ_get_err(LDKCResult_InitDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_InitDecodeErrorZ* owner_conv = (LDKCResult_InitDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_InitDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - (this_arg_conv->payment_path_failed)(this_arg_conv->this_arg, path_constr, short_channel_id); + return ret_ref; } -void __attribute__((visibility("default"))) TS_Score_payment_path_successful(uint32_t this_arg, uint32_tArray path) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKScore* this_arg_conv = (LDKScore*)this_arg_ptr; - LDKCVec_RouteHopZ path_constr; - path_constr.datalen = *((uint32_t*)path); - if (path_constr.datalen > 0) - path_constr.data = MALLOC(path_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); - else - path_constr.data = NULL; - uint32_t* path_vals = (uint32_t*)(path + 4); - for (size_t k = 0; k < path_constr.datalen; k++) { - uint32_t path_conv_10 = path_vals[k]; - LDKRouteHop path_conv_10_conv; - path_conv_10_conv.inner = (void*)(path_conv_10 & (~1)); - path_conv_10_conv.is_owned = (path_conv_10 & 1) || (path_conv_10 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_conv); - path_conv_10_conv = RouteHop_clone(&path_conv_10_conv); - path_constr.data[k] = path_conv_10_conv; +static inline struct LDKOpenChannel CResult_OpenChannelDecodeErrorZ_get_ok(LDKCResult_OpenChannelDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return OpenChannel_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_OpenChannelDecodeErrorZ* owner_conv = (LDKCResult_OpenChannelDecodeErrorZ*)(owner & ~1); + LDKOpenChannel ret_var = CResult_OpenChannelDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - (this_arg_conv->payment_path_successful)(this_arg_conv->this_arg, path_constr); + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_Score_write(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKScore* this_arg_conv = (LDKScore*)this_arg_ptr; - LDKCVec_u8Z ret_var = (this_arg_conv->write)(this_arg_conv->this_arg); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +static inline struct LDKDecodeError CResult_OpenChannelDecodeErrorZ_get_err(LDKCResult_OpenChannelDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } - -typedef struct LDKLockableScore_JCalls { - atomic_size_t refcnt; - uint32_t lock_meth; -} LDKLockableScore_JCalls; -static void LDKLockableScore_JCalls_free(void* this_arg) { - LDKLockableScore_JCalls *j_calls = (LDKLockableScore_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->lock_meth); - FREE(j_calls); +uint32_t __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_OpenChannelDecodeErrorZ* owner_conv = (LDKCResult_OpenChannelDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_OpenChannelDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -LDKScore lock_LDKLockableScore_jcall(const void* this_arg) { - LDKLockableScore_JCalls *j_calls = (LDKLockableScore_JCalls*) this_arg; - uint32_t ret = js_invoke_function_0(j_calls->lock_meth); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKScore ret_conv = *(LDKScore*)(ret_ptr);// Warning: we may need a move here but no clone is available for LDKScore - - return ret_conv; + +static inline struct LDKRevokeAndACK CResult_RevokeAndACKDecodeErrorZ_get_ok(LDKCResult_RevokeAndACKDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return RevokeAndACK_clone(&*owner->contents.result); } -static void LDKLockableScore_JCalls_cloned(LDKLockableScore* new_obj) { - LDKLockableScore_JCalls *j_calls = (LDKLockableScore_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); +uint32_t __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_RevokeAndACKDecodeErrorZ* owner_conv = (LDKCResult_RevokeAndACKDecodeErrorZ*)(owner & ~1); + LDKRevokeAndACK ret_var = CResult_RevokeAndACKDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline LDKLockableScore LDKLockableScore_init (/*TODO: JS Object Reference */void* o) { - LDKLockableScore_JCalls *calls = MALLOC(sizeof(LDKLockableScore_JCalls), "LDKLockableScore_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - LDKLockableScore ret = { - .this_arg = (void*) calls, - .lock = lock_LDKLockableScore_jcall, - .free = LDKLockableScore_JCalls_free, - }; - return ret; -} -long __attribute__((visibility("default"))) TS_LDKLockableScore_new(/*TODO: JS Object Reference */void* o) { - LDKLockableScore *res_ptr = MALLOC(sizeof(LDKLockableScore), "LDKLockableScore"); - *res_ptr = LDKLockableScore_init(o); - return (long)res_ptr; +static inline struct LDKDecodeError CResult_RevokeAndACKDecodeErrorZ_get_err(LDKCResult_RevokeAndACKDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -uint32_t __attribute__((visibility("default"))) TS_LockableScore_lock(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKLockableScore* this_arg_conv = (LDKLockableScore*)this_arg_ptr; - LDKScore* ret_ret = MALLOC(sizeof(LDKScore), "LDKScore"); - *ret_ret = (this_arg_conv->lock)(this_arg_conv->this_arg); - return (uint64_t)ret_ret; +uint32_t __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_RevokeAndACKDecodeErrorZ* owner_conv = (LDKCResult_RevokeAndACKDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_RevokeAndACKDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -typedef struct LDKChannelManagerPersister_JCalls { - atomic_size_t refcnt; - uint32_t persist_manager_meth; -} LDKChannelManagerPersister_JCalls; -static void LDKChannelManagerPersister_JCalls_free(void* this_arg) { - LDKChannelManagerPersister_JCalls *j_calls = (LDKChannelManagerPersister_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->persist_manager_meth); - FREE(j_calls); +static inline struct LDKShutdown CResult_ShutdownDecodeErrorZ_get_ok(LDKCResult_ShutdownDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return Shutdown_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ShutdownDecodeErrorZ* owner_conv = (LDKCResult_ShutdownDecodeErrorZ*)(owner & ~1); + LDKShutdown ret_var = CResult_ShutdownDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -LDKCResult_NoneErrorZ persist_manager_LDKChannelManagerPersister_jcall(const void* this_arg, const LDKChannelManager * channel_manager) { - LDKChannelManagerPersister_JCalls *j_calls = (LDKChannelManagerPersister_JCalls*) this_arg; - LDKChannelManager channel_manager_var = *channel_manager; - uint64_t channel_manager_ref = 0; - // Warning: we may need a move here but no clone is available for LDKChannelManager - CHECK((((uint64_t)channel_manager_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&channel_manager_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_manager_var); - channel_manager_ref = (uint64_t)channel_manager_var.inner; - if (channel_manager_var.is_owned) { - channel_manager_ref |= 1; + +static inline struct LDKDecodeError CResult_ShutdownDecodeErrorZ_get_err(LDKCResult_ShutdownDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ShutdownDecodeErrorZ* owner_conv = (LDKCResult_ShutdownDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ShutdownDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - uint32_t ret = js_invoke_function_1(j_calls->persist_manager_meth, channel_manager_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_NoneErrorZ ret_conv = *(LDKCResult_NoneErrorZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; + return ret_ref; } -static void LDKChannelManagerPersister_JCalls_cloned(LDKChannelManagerPersister* new_obj) { - LDKChannelManagerPersister_JCalls *j_calls = (LDKChannelManagerPersister_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); + +static inline struct LDKUpdateFailHTLC CResult_UpdateFailHTLCDecodeErrorZ_get_ok(LDKCResult_UpdateFailHTLCDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return UpdateFailHTLC_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_UpdateFailHTLCDecodeErrorZ* owner_conv = (LDKCResult_UpdateFailHTLCDecodeErrorZ*)(owner & ~1); + LDKUpdateFailHTLC ret_var = CResult_UpdateFailHTLCDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline LDKChannelManagerPersister LDKChannelManagerPersister_init (/*TODO: JS Object Reference */void* o) { - LDKChannelManagerPersister_JCalls *calls = MALLOC(sizeof(LDKChannelManagerPersister_JCalls), "LDKChannelManagerPersister_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - LDKChannelManagerPersister ret = { - .this_arg = (void*) calls, - .persist_manager = persist_manager_LDKChannelManagerPersister_jcall, - .free = LDKChannelManagerPersister_JCalls_free, - }; - return ret; +static inline struct LDKDecodeError CResult_UpdateFailHTLCDecodeErrorZ_get_err(LDKCResult_UpdateFailHTLCDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -long __attribute__((visibility("default"))) TS_LDKChannelManagerPersister_new(/*TODO: JS Object Reference */void* o) { - LDKChannelManagerPersister *res_ptr = MALLOC(sizeof(LDKChannelManagerPersister), "LDKChannelManagerPersister"); - *res_ptr = LDKChannelManagerPersister_init(o); - return (long)res_ptr; +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_UpdateFailHTLCDecodeErrorZ* owner_conv = (LDKCResult_UpdateFailHTLCDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_UpdateFailHTLCDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManagerPersister_persist_manager(uint32_t this_arg, uint32_t channel_manager) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelManagerPersister* this_arg_conv = (LDKChannelManagerPersister*)this_arg_ptr; - LDKChannelManager channel_manager_conv; - channel_manager_conv.inner = (void*)(channel_manager & (~1)); - channel_manager_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_manager_conv); - LDKCResult_NoneErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneErrorZ), "LDKCResult_NoneErrorZ"); - *ret_conv = (this_arg_conv->persist_manager)(this_arg_conv->this_arg, &channel_manager_conv); - return (uint64_t)ret_conv; + +static inline struct LDKUpdateFailMalformedHTLC CResult_UpdateFailMalformedHTLCDecodeErrorZ_get_ok(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return UpdateFailMalformedHTLC_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* owner_conv = (LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ*)(owner & ~1); + LDKUpdateFailMalformedHTLC ret_var = CResult_UpdateFailMalformedHTLCDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKFallback_ref_from_ptr(uint32_t ptr) { - LDKFallback *obj = (LDKFallback*)(ptr & ~1); - switch(obj->tag) { - case LDKFallback_SegWitProgram: { - uint8_t version_val = obj->seg_wit_program.version._0; - LDKCVec_u8Z program_var = obj->seg_wit_program.program; - int8_tArray program_arr = init_arr(program_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(program_arr + 4), program_var.data, program_var.datalen); - return 0 /* LDKFallback - SegWitProgram */; (void) version_val; (void) program_arr; - } - case LDKFallback_PubKeyHash: { - int8_tArray pub_key_hash_arr = init_arr(20, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(pub_key_hash_arr + 4), obj->pub_key_hash.data, 20); - return 0 /* LDKFallback - PubKeyHash */; (void) pub_key_hash_arr; - } - case LDKFallback_ScriptHash: { - int8_tArray script_hash_arr = init_arr(20, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(script_hash_arr + 4), obj->script_hash.data, 20); - return 0 /* LDKFallback - ScriptHash */; (void) script_hash_arr; - } - default: abort(); +static inline struct LDKDecodeError CResult_UpdateFailMalformedHTLCDecodeErrorZ_get_err(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* owner_conv = (LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_UpdateFailMalformedHTLCDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -typedef struct LDKPayer_JCalls { - atomic_size_t refcnt; - uint32_t node_id_meth; - uint32_t first_hops_meth; - uint32_t send_payment_meth; - uint32_t send_spontaneous_payment_meth; - uint32_t retry_payment_meth; - uint32_t abandon_payment_meth; -} LDKPayer_JCalls; -static void LDKPayer_JCalls_free(void* this_arg) { - LDKPayer_JCalls *j_calls = (LDKPayer_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->node_id_meth); - js_free(j_calls->first_hops_meth); - js_free(j_calls->send_payment_meth); - js_free(j_calls->send_spontaneous_payment_meth); - js_free(j_calls->retry_payment_meth); - js_free(j_calls->abandon_payment_meth); - FREE(j_calls); + +static inline struct LDKUpdateFee CResult_UpdateFeeDecodeErrorZ_get_ok(LDKCResult_UpdateFeeDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return UpdateFee_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_UpdateFeeDecodeErrorZ* owner_conv = (LDKCResult_UpdateFeeDecodeErrorZ*)(owner & ~1); + LDKUpdateFee ret_var = CResult_UpdateFeeDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -LDKPublicKey node_id_LDKPayer_jcall(const void* this_arg) { - LDKPayer_JCalls *j_calls = (LDKPayer_JCalls*) this_arg; - int8_tArray ret = js_invoke_function_0(j_calls->node_id_meth); - LDKPublicKey ret_ref; - CHECK(*((uint32_t*)ret) == 33); - memcpy(ret_ref.compressed_form, (uint8_t*)(ret + 4), 33); + +static inline struct LDKDecodeError CResult_UpdateFeeDecodeErrorZ_get_err(LDKCResult_UpdateFeeDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_UpdateFeeDecodeErrorZ* owner_conv = (LDKCResult_UpdateFeeDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_UpdateFeeDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -LDKCVec_ChannelDetailsZ first_hops_LDKPayer_jcall(const void* this_arg) { - LDKPayer_JCalls *j_calls = (LDKPayer_JCalls*) this_arg; - uint32_tArray ret = js_invoke_function_0(j_calls->first_hops_meth); - LDKCVec_ChannelDetailsZ ret_constr; - ret_constr.datalen = *((uint32_t*)ret); - if (ret_constr.datalen > 0) - ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKChannelDetails), "LDKCVec_ChannelDetailsZ Elements"); - else - ret_constr.data = NULL; - uint32_t* ret_vals = (uint32_t*)(ret + 4); - for (size_t q = 0; q < ret_constr.datalen; q++) { - uint32_t ret_conv_16 = ret_vals[q]; - LDKChannelDetails ret_conv_16_conv; - ret_conv_16_conv.inner = (void*)(ret_conv_16 & (~1)); - ret_conv_16_conv.is_owned = (ret_conv_16 & 1) || (ret_conv_16 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_16_conv); - ret_constr.data[q] = ret_conv_16_conv; + +static inline struct LDKUpdateFulfillHTLC CResult_UpdateFulfillHTLCDecodeErrorZ_get_ok(LDKCResult_UpdateFulfillHTLCDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return UpdateFulfillHTLC_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_UpdateFulfillHTLCDecodeErrorZ* owner_conv = (LDKCResult_UpdateFulfillHTLCDecodeErrorZ*)(owner & ~1); + LDKUpdateFulfillHTLC ret_var = CResult_UpdateFulfillHTLCDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret_constr; + return ret_ref; } -LDKCResult_PaymentIdPaymentSendFailureZ send_payment_LDKPayer_jcall(const void* this_arg, const LDKRoute * route, LDKThirtyTwoBytes payment_hash, LDKThirtyTwoBytes payment_secret) { - LDKPayer_JCalls *j_calls = (LDKPayer_JCalls*) this_arg; - LDKRoute route_var = *route; - uint64_t route_ref = 0; - route_var = Route_clone(route); - CHECK((((uint64_t)route_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&route_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(route_var); - route_ref = (uint64_t)route_var.inner; - if (route_var.is_owned) { - route_ref |= 1; - } - int8_tArray payment_hash_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_hash_arr + 4), payment_hash.data, 32); - int8_tArray payment_secret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_secret_arr + 4), payment_secret.data, 32); - uint32_t ret = js_invoke_function_3(j_calls->send_payment_meth, route_ref, payment_hash_arr, payment_secret_arr); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_PaymentIdPaymentSendFailureZ ret_conv = *(LDKCResult_PaymentIdPaymentSendFailureZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; + +static inline struct LDKDecodeError CResult_UpdateFulfillHTLCDecodeErrorZ_get_err(LDKCResult_UpdateFulfillHTLCDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -LDKCResult_PaymentIdPaymentSendFailureZ send_spontaneous_payment_LDKPayer_jcall(const void* this_arg, const LDKRoute * route, LDKThirtyTwoBytes payment_preimage) { - LDKPayer_JCalls *j_calls = (LDKPayer_JCalls*) this_arg; - LDKRoute route_var = *route; - uint64_t route_ref = 0; - route_var = Route_clone(route); - CHECK((((uint64_t)route_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&route_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(route_var); - route_ref = (uint64_t)route_var.inner; - if (route_var.is_owned) { - route_ref |= 1; - } - int8_tArray payment_preimage_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_preimage_arr + 4), payment_preimage.data, 32); - uint32_t ret = js_invoke_function_2(j_calls->send_spontaneous_payment_meth, route_ref, payment_preimage_arr); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_PaymentIdPaymentSendFailureZ ret_conv = *(LDKCResult_PaymentIdPaymentSendFailureZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_UpdateFulfillHTLCDecodeErrorZ* owner_conv = (LDKCResult_UpdateFulfillHTLCDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_UpdateFulfillHTLCDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -LDKCResult_NonePaymentSendFailureZ retry_payment_LDKPayer_jcall(const void* this_arg, const LDKRoute * route, LDKThirtyTwoBytes payment_id) { - LDKPayer_JCalls *j_calls = (LDKPayer_JCalls*) this_arg; - LDKRoute route_var = *route; - uint64_t route_ref = 0; - route_var = Route_clone(route); - CHECK((((uint64_t)route_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&route_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(route_var); - route_ref = (uint64_t)route_var.inner; - if (route_var.is_owned) { - route_ref |= 1; - } - int8_tArray payment_id_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_id_arr + 4), payment_id.data, 32); - uint32_t ret = js_invoke_function_2(j_calls->retry_payment_meth, route_ref, payment_id_arr); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_NonePaymentSendFailureZ ret_conv = *(LDKCResult_NonePaymentSendFailureZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; + +static inline struct LDKUpdateAddHTLC CResult_UpdateAddHTLCDecodeErrorZ_get_ok(LDKCResult_UpdateAddHTLCDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return UpdateAddHTLC_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_UpdateAddHTLCDecodeErrorZ* owner_conv = (LDKCResult_UpdateAddHTLCDecodeErrorZ*)(owner & ~1); + LDKUpdateAddHTLC ret_var = CResult_UpdateAddHTLCDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void abandon_payment_LDKPayer_jcall(const void* this_arg, LDKThirtyTwoBytes payment_id) { - LDKPayer_JCalls *j_calls = (LDKPayer_JCalls*) this_arg; - int8_tArray payment_id_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_id_arr + 4), payment_id.data, 32); - js_invoke_function_1(j_calls->abandon_payment_meth, payment_id_arr); + +static inline struct LDKDecodeError CResult_UpdateAddHTLCDecodeErrorZ_get_err(LDKCResult_UpdateAddHTLCDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -static void LDKPayer_JCalls_cloned(LDKPayer* new_obj) { - LDKPayer_JCalls *j_calls = (LDKPayer_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_UpdateAddHTLCDecodeErrorZ* owner_conv = (LDKCResult_UpdateAddHTLCDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_UpdateAddHTLCDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline LDKPayer LDKPayer_init (/*TODO: JS Object Reference */void* o) { - LDKPayer_JCalls *calls = MALLOC(sizeof(LDKPayer_JCalls), "LDKPayer_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - LDKPayer ret = { - .this_arg = (void*) calls, - .node_id = node_id_LDKPayer_jcall, - .first_hops = first_hops_LDKPayer_jcall, - .send_payment = send_payment_LDKPayer_jcall, - .send_spontaneous_payment = send_spontaneous_payment_LDKPayer_jcall, - .retry_payment = retry_payment_LDKPayer_jcall, - .abandon_payment = abandon_payment_LDKPayer_jcall, - .free = LDKPayer_JCalls_free, - }; - return ret; +static inline struct LDKPing CResult_PingDecodeErrorZ_get_ok(LDKCResult_PingDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return Ping_clone(&*owner->contents.result); } -long __attribute__((visibility("default"))) TS_LDKPayer_new(/*TODO: JS Object Reference */void* o) { - LDKPayer *res_ptr = MALLOC(sizeof(LDKPayer), "LDKPayer"); - *res_ptr = LDKPayer_init(o); - return (long)res_ptr; -} -int8_tArray __attribute__((visibility("default"))) TS_Payer_node_id(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKPayer* this_arg_conv = (LDKPayer*)this_arg_ptr; - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), (this_arg_conv->node_id)(this_arg_conv->this_arg).compressed_form, 33); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_PingDecodeErrorZ* owner_conv = (LDKCResult_PingDecodeErrorZ*)(owner & ~1); + LDKPing ret_var = CResult_PingDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_tArray __attribute__((visibility("default"))) TS_Payer_first_hops(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKPayer* this_arg_conv = (LDKPayer*)this_arg_ptr; - LDKCVec_ChannelDetailsZ ret_var = (this_arg_conv->first_hops)(this_arg_conv->this_arg); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t q = 0; q < ret_var.datalen; q++) { - LDKChannelDetails ret_conv_16_var = ret_var.data[q]; - uint64_t ret_conv_16_ref = 0; - CHECK((((uint64_t)ret_conv_16_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_16_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_16_var); - ret_conv_16_ref = (uint64_t)ret_conv_16_var.inner; - if (ret_conv_16_var.is_owned) { - ret_conv_16_ref |= 1; - } - ret_arr_ptr[q] = ret_conv_16_ref; +static inline struct LDKDecodeError CResult_PingDecodeErrorZ_get_err(LDKCResult_PingDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_PingDecodeErrorZ* owner_conv = (LDKCResult_PingDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_PingDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - - FREE(ret_var.data); - return ret_arr; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_Payer_send_payment(uint32_t this_arg, uint32_t route, int8_tArray payment_hash, int8_tArray payment_secret) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKPayer* this_arg_conv = (LDKPayer*)this_arg_ptr; - LDKRoute route_conv; - route_conv.inner = (void*)(route & (~1)); - route_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(route_conv); - LDKThirtyTwoBytes payment_hash_ref; - CHECK(*((uint32_t*)payment_hash) == 32); - memcpy(payment_hash_ref.data, (uint8_t*)(payment_hash + 4), 32); - LDKThirtyTwoBytes payment_secret_ref; - CHECK(*((uint32_t*)payment_secret) == 32); - memcpy(payment_secret_ref.data, (uint8_t*)(payment_secret + 4), 32); - LDKCResult_PaymentIdPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentSendFailureZ), "LDKCResult_PaymentIdPaymentSendFailureZ"); - *ret_conv = (this_arg_conv->send_payment)(this_arg_conv->this_arg, &route_conv, payment_hash_ref, payment_secret_ref); - return (uint64_t)ret_conv; +static inline struct LDKPong CResult_PongDecodeErrorZ_get_ok(LDKCResult_PongDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return Pong_clone(&*owner->contents.result); } - -uint32_t __attribute__((visibility("default"))) TS_Payer_send_spontaneous_payment(uint32_t this_arg, uint32_t route, int8_tArray payment_preimage) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKPayer* this_arg_conv = (LDKPayer*)this_arg_ptr; - LDKRoute route_conv; - route_conv.inner = (void*)(route & (~1)); - route_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(route_conv); - LDKThirtyTwoBytes payment_preimage_ref; - CHECK(*((uint32_t*)payment_preimage) == 32); - memcpy(payment_preimage_ref.data, (uint8_t*)(payment_preimage + 4), 32); - LDKCResult_PaymentIdPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentSendFailureZ), "LDKCResult_PaymentIdPaymentSendFailureZ"); - *ret_conv = (this_arg_conv->send_spontaneous_payment)(this_arg_conv->this_arg, &route_conv, payment_preimage_ref); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_PongDecodeErrorZ* owner_conv = (LDKCResult_PongDecodeErrorZ*)(owner & ~1); + LDKPong ret_var = CResult_PongDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_Payer_retry_payment(uint32_t this_arg, uint32_t route, int8_tArray payment_id) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKPayer* this_arg_conv = (LDKPayer*)this_arg_ptr; - LDKRoute route_conv; - route_conv.inner = (void*)(route & (~1)); - route_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(route_conv); - LDKThirtyTwoBytes payment_id_ref; - CHECK(*((uint32_t*)payment_id) == 32); - memcpy(payment_id_ref.data, (uint8_t*)(payment_id + 4), 32); - LDKCResult_NonePaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentSendFailureZ), "LDKCResult_NonePaymentSendFailureZ"); - *ret_conv = (this_arg_conv->retry_payment)(this_arg_conv->this_arg, &route_conv, payment_id_ref); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_PongDecodeErrorZ_get_err(LDKCResult_PongDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } - -void __attribute__((visibility("default"))) TS_Payer_abandon_payment(uint32_t this_arg, int8_tArray payment_id) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKPayer* this_arg_conv = (LDKPayer*)this_arg_ptr; - LDKThirtyTwoBytes payment_id_ref; - CHECK(*((uint32_t*)payment_id) == 32); - memcpy(payment_id_ref.data, (uint8_t*)(payment_id + 4), 32); - (this_arg_conv->abandon_payment)(this_arg_conv->this_arg, payment_id_ref); +uint32_t __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_PongDecodeErrorZ* owner_conv = (LDKCResult_PongDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_PongDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -typedef struct LDKRouter_JCalls { - atomic_size_t refcnt; - uint32_t find_route_meth; -} LDKRouter_JCalls; -static void LDKRouter_JCalls_free(void* this_arg) { - LDKRouter_JCalls *j_calls = (LDKRouter_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->find_route_meth); - FREE(j_calls); - } +static inline struct LDKUnsignedChannelAnnouncement CResult_UnsignedChannelAnnouncementDecodeErrorZ_get_ok(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return UnsignedChannelAnnouncement_clone(&*owner->contents.result); } -LDKCResult_RouteLightningErrorZ find_route_LDKRouter_jcall(const void* this_arg, LDKPublicKey payer, const LDKRouteParameters * params, const uint8_t (* payment_hash)[32], LDKCVec_ChannelDetailsZ * first_hops, const LDKScore * scorer) { - LDKRouter_JCalls *j_calls = (LDKRouter_JCalls*) this_arg; - int8_tArray payer_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payer_arr + 4), payer.compressed_form, 33); - LDKRouteParameters params_var = *params; - uint64_t params_ref = 0; - params_var = RouteParameters_clone(params); - CHECK((((uint64_t)params_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)¶ms_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(params_var); - params_ref = (uint64_t)params_var.inner; - if (params_var.is_owned) { - params_ref |= 1; - } - int8_tArray payment_hash_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_hash_arr + 4), *payment_hash, 32); - LDKCVec_ChannelDetailsZ *first_hops_var_ptr = first_hops; - uint32_tArray first_hops_arr = NULL; - if (first_hops != NULL) { - LDKCVec_ChannelDetailsZ first_hops_var = *first_hops_var_ptr; - first_hops_arr = init_arr(first_hops_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *first_hops_arr_ptr = (uint32_t*)(first_hops_arr + 4); - for (size_t q = 0; q < first_hops_var.datalen; q++) { - LDKChannelDetails first_hops_conv_16_var = first_hops_var.data[q]; - uint64_t first_hops_conv_16_ref = 0; - CHECK((((uint64_t)first_hops_conv_16_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&first_hops_conv_16_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(first_hops_conv_16_var); - first_hops_conv_16_ref = (uint64_t)first_hops_conv_16_var.inner; - if (first_hops_conv_16_var.is_owned) { - first_hops_conv_16_ref |= 1; - } - first_hops_arr_ptr[q] = first_hops_conv_16_ref; - } - +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* owner_conv = (LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ*)(owner & ~1); + LDKUnsignedChannelAnnouncement ret_var = CResult_UnsignedChannelAnnouncementDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - // WARNING: This object doesn't live past this scope, needs clone! - uint64_t ret_scorer = ((uint64_t)scorer) | 1; - uint32_t ret = js_invoke_function_5(j_calls->find_route_meth, payer_arr, params_ref, payment_hash_arr, first_hops_arr, ret_scorer); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_RouteLightningErrorZ ret_conv = *(LDKCResult_RouteLightningErrorZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; -} -static void LDKRouter_JCalls_cloned(LDKRouter* new_obj) { - LDKRouter_JCalls *j_calls = (LDKRouter_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); + return ret_ref; } -static inline LDKRouter LDKRouter_init (/*TODO: JS Object Reference */void* o) { - LDKRouter_JCalls *calls = MALLOC(sizeof(LDKRouter_JCalls), "LDKRouter_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - LDKRouter ret = { - .this_arg = (void*) calls, - .find_route = find_route_LDKRouter_jcall, - .free = LDKRouter_JCalls_free, - }; - return ret; -} -long __attribute__((visibility("default"))) TS_LDKRouter_new(/*TODO: JS Object Reference */void* o) { - LDKRouter *res_ptr = MALLOC(sizeof(LDKRouter), "LDKRouter"); - *res_ptr = LDKRouter_init(o); - return (long)res_ptr; +static inline struct LDKDecodeError CResult_UnsignedChannelAnnouncementDecodeErrorZ_get_err(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -uint32_t __attribute__((visibility("default"))) TS_Router_find_route(uint32_t this_arg, int8_tArray payer, uint32_t params, int8_tArray payment_hash, uint32_tArray first_hops, uint32_t scorer) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKRouter* this_arg_conv = (LDKRouter*)this_arg_ptr; - LDKPublicKey payer_ref; - CHECK(*((uint32_t*)payer) == 33); - memcpy(payer_ref.compressed_form, (uint8_t*)(payer + 4), 33); - LDKRouteParameters params_conv; - params_conv.inner = (void*)(params & (~1)); - params_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(params_conv); - unsigned char payment_hash_arr[32]; - CHECK(*((uint32_t*)payment_hash) == 32); - memcpy(payment_hash_arr, (uint8_t*)(payment_hash + 4), 32); - unsigned char (*payment_hash_ref)[32] = &payment_hash_arr; - LDKCVec_ChannelDetailsZ first_hops_constr; - LDKCVec_ChannelDetailsZ *first_hops_ptr = NULL; - if (first_hops != 0) { - first_hops_constr.datalen = *((uint32_t*)first_hops); - if (first_hops_constr.datalen > 0) - first_hops_constr.data = MALLOC(first_hops_constr.datalen * sizeof(LDKChannelDetails), "LDKCVec_ChannelDetailsZ Elements"); - else - first_hops_constr.data = NULL; - uint32_t* first_hops_vals = (uint32_t*)(first_hops + 4); - for (size_t q = 0; q < first_hops_constr.datalen; q++) { - uint32_t first_hops_conv_16 = first_hops_vals[q]; - LDKChannelDetails first_hops_conv_16_conv; - first_hops_conv_16_conv.inner = (void*)(first_hops_conv_16 & (~1)); - first_hops_conv_16_conv.is_owned = (first_hops_conv_16 & 1) || (first_hops_conv_16 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(first_hops_conv_16_conv); - first_hops_constr.data[q] = first_hops_conv_16_conv; - } - first_hops_ptr = &first_hops_constr; +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* owner_conv = (LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_UnsignedChannelAnnouncementDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - void* scorer_ptr = (void*)(((uint64_t)scorer) & ~1); - if (!(scorer & 1)) { CHECK_ACCESS(scorer_ptr); } - LDKScore* scorer_conv = (LDKScore*)scorer_ptr; - LDKCResult_RouteLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteLightningErrorZ), "LDKCResult_RouteLightningErrorZ"); - *ret_conv = (this_arg_conv->find_route)(this_arg_conv->this_arg, payer_ref, ¶ms_conv, payment_hash_ref, first_hops_ptr, scorer_conv); - if (first_hops_ptr != NULL) { FREE(first_hops_constr.data); } - return (uint64_t)ret_conv; + return ret_ref; } -jstring __attribute__((visibility("default"))) TS__ldk_get_compiled_version() { - LDKStr ret_str = _ldk_get_compiled_version(); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; +static inline struct LDKChannelAnnouncement CResult_ChannelAnnouncementDecodeErrorZ_get_ok(LDKCResult_ChannelAnnouncementDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ChannelAnnouncement_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ChannelAnnouncementDecodeErrorZ* owner_conv = (LDKCResult_ChannelAnnouncementDecodeErrorZ*)(owner & ~1); + LDKChannelAnnouncement ret_var = CResult_ChannelAnnouncementDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -jstring __attribute__((visibility("default"))) TS__ldk_c_bindings_get_compiled_version() { - LDKStr ret_str = _ldk_c_bindings_get_compiled_version(); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; +static inline struct LDKDecodeError CResult_ChannelAnnouncementDecodeErrorZ_get_err(LDKCResult_ChannelAnnouncementDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ChannelAnnouncementDecodeErrorZ* owner_conv = (LDKCResult_ChannelAnnouncementDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ChannelAnnouncementDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_Transaction_free(int8_tArray _res) { - LDKTransaction _res_ref; - _res_ref.datalen = *((uint32_t*)_res); - _res_ref.data = MALLOC(_res_ref.datalen, "LDKTransaction Bytes"); - memcpy(_res_ref.data, (uint8_t*)(_res + 4), _res_ref.datalen); - _res_ref.data_is_owned = true; - Transaction_free(_res_ref); +static inline struct LDKUnsignedChannelUpdate CResult_UnsignedChannelUpdateDecodeErrorZ_get_ok(LDKCResult_UnsignedChannelUpdateDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return UnsignedChannelUpdate_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_UnsignedChannelUpdateDecodeErrorZ* owner_conv = (LDKCResult_UnsignedChannelUpdateDecodeErrorZ*)(owner & ~1); + LDKUnsignedChannelUpdate ret_var = CResult_UnsignedChannelUpdateDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_TxOut_new(int8_tArray script_pubkey, int64_t value) { - LDKCVec_u8Z script_pubkey_ref; - script_pubkey_ref.datalen = *((uint32_t*)script_pubkey); - script_pubkey_ref.data = MALLOC(script_pubkey_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(script_pubkey_ref.data, (uint8_t*)(script_pubkey + 4), script_pubkey_ref.datalen); - LDKTxOut* ret_ref = MALLOC(sizeof(LDKTxOut), "LDKTxOut"); - *ret_ref = TxOut_new(script_pubkey_ref, value); - return (uint64_t)ret_ref; +static inline struct LDKDecodeError CResult_UnsignedChannelUpdateDecodeErrorZ_get_err(LDKCResult_UnsignedChannelUpdateDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_UnsignedChannelUpdateDecodeErrorZ* owner_conv = (LDKCResult_UnsignedChannelUpdateDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_UnsignedChannelUpdateDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_TxOut_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKTxOut _res_conv = *(LDKTxOut*)(_res_ptr); - FREE((void*)_res); - TxOut_free(_res_conv); +static inline struct LDKChannelUpdate CResult_ChannelUpdateDecodeErrorZ_get_ok(LDKCResult_ChannelUpdateDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ChannelUpdate_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ChannelUpdateDecodeErrorZ* owner_conv = (LDKCResult_ChannelUpdateDecodeErrorZ*)(owner & ~1); + LDKChannelUpdate ret_var = CResult_ChannelUpdateDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline uint64_t TxOut_clone_ptr(LDKTxOut *NONNULL_PTR arg) { - LDKTxOut* ret_ref = MALLOC(sizeof(LDKTxOut), "LDKTxOut"); - *ret_ref = TxOut_clone(arg); - return (uint64_t)ret_ref; +static inline struct LDKDecodeError CResult_ChannelUpdateDecodeErrorZ_get_err(LDKCResult_ChannelUpdateDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -int64_t __attribute__((visibility("default"))) TS_TxOut_clone_ptr(uint32_t arg) { - LDKTxOut* arg_conv = (LDKTxOut*)(arg & ~1); - int64_t ret_val = TxOut_clone_ptr(arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ChannelUpdateDecodeErrorZ* owner_conv = (LDKCResult_ChannelUpdateDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ChannelUpdateDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_TxOut_clone(uint32_t orig) { - LDKTxOut* orig_conv = (LDKTxOut*)(orig & ~1); - LDKTxOut* ret_ref = MALLOC(sizeof(LDKTxOut), "LDKTxOut"); - *ret_ref = TxOut_clone(orig_conv); - return (uint64_t)ret_ref; +static inline struct LDKErrorMessage CResult_ErrorMessageDecodeErrorZ_get_ok(LDKCResult_ErrorMessageDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ErrorMessage_clone(&*owner->contents.result); } - -void __attribute__((visibility("default"))) TS_Str_free(jstring _res) { - LDKStr dummy = { .chars = NULL, .len = 0, .chars_is_owned = false }; - Str_free(dummy); +uint32_t __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ErrorMessageDecodeErrorZ* owner_conv = (LDKCResult_ErrorMessageDecodeErrorZ*)(owner & ~1); + LDKErrorMessage ret_var = CResult_ErrorMessageDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_SecretKeyErrorZ_ok(int8_tArray o) { - LDKSecretKey o_ref; - CHECK(*((uint32_t*)o) == 32); - memcpy(o_ref.bytes, (uint8_t*)(o + 4), 32); - LDKCResult_SecretKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SecretKeyErrorZ), "LDKCResult_SecretKeyErrorZ"); - *ret_conv = CResult_SecretKeyErrorZ_ok(o_ref); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_ErrorMessageDecodeErrorZ_get_err(LDKCResult_ErrorMessageDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_SecretKeyErrorZ_err(uint32_t e) { - LDKSecp256k1Error e_conv = LDKSecp256k1Error_from_js(e); - LDKCResult_SecretKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SecretKeyErrorZ), "LDKCResult_SecretKeyErrorZ"); - *ret_conv = CResult_SecretKeyErrorZ_err(e_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ErrorMessageDecodeErrorZ* owner_conv = (LDKCResult_ErrorMessageDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ErrorMessageDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_CResult_SecretKeyErrorZ_is_ok(uint32_t o) { - LDKCResult_SecretKeyErrorZ* o_conv = (LDKCResult_SecretKeyErrorZ*)(o & ~1); - jboolean ret_val = CResult_SecretKeyErrorZ_is_ok(o_conv); - return ret_val; +static inline struct LDKUnsignedNodeAnnouncement CResult_UnsignedNodeAnnouncementDecodeErrorZ_get_ok(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return UnsignedNodeAnnouncement_clone(&*owner->contents.result); } - -void __attribute__((visibility("default"))) TS_CResult_SecretKeyErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_SecretKeyErrorZ _res_conv = *(LDKCResult_SecretKeyErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_SecretKeyErrorZ_free(_res_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* owner_conv = (LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ*)(owner & ~1); + LDKUnsignedNodeAnnouncement ret_var = CResult_UnsignedNodeAnnouncementDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_ok(int8_tArray o) { - LDKPublicKey o_ref; - CHECK(*((uint32_t*)o) == 33); - memcpy(o_ref.compressed_form, (uint8_t*)(o + 4), 33); - LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); - *ret_conv = CResult_PublicKeyErrorZ_ok(o_ref); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_UnsignedNodeAnnouncementDecodeErrorZ_get_err(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_err(uint32_t e) { - LDKSecp256k1Error e_conv = LDKSecp256k1Error_from_js(e); - LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); - *ret_conv = CResult_PublicKeyErrorZ_err(e_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* owner_conv = (LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_UnsignedNodeAnnouncementDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_is_ok(uint32_t o) { - LDKCResult_PublicKeyErrorZ* o_conv = (LDKCResult_PublicKeyErrorZ*)(o & ~1); - jboolean ret_val = CResult_PublicKeyErrorZ_is_ok(o_conv); - return ret_val; +static inline struct LDKNodeAnnouncement CResult_NodeAnnouncementDecodeErrorZ_get_ok(LDKCResult_NodeAnnouncementDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return NodeAnnouncement_clone(&*owner->contents.result); } - -void __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_PublicKeyErrorZ _res_conv = *(LDKCResult_PublicKeyErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_PublicKeyErrorZ_free(_res_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_NodeAnnouncementDecodeErrorZ* owner_conv = (LDKCResult_NodeAnnouncementDecodeErrorZ*)(owner & ~1); + LDKNodeAnnouncement ret_var = CResult_NodeAnnouncementDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline uint64_t CResult_PublicKeyErrorZ_clone_ptr(LDKCResult_PublicKeyErrorZ *NONNULL_PTR arg) { - LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); - *ret_conv = CResult_PublicKeyErrorZ_clone(arg); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_NodeAnnouncementDecodeErrorZ_get_err(LDKCResult_NodeAnnouncementDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -int64_t __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_PublicKeyErrorZ* arg_conv = (LDKCResult_PublicKeyErrorZ*)(arg & ~1); - int64_t ret_val = CResult_PublicKeyErrorZ_clone_ptr(arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_NodeAnnouncementDecodeErrorZ* owner_conv = (LDKCResult_NodeAnnouncementDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_NodeAnnouncementDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_clone(uint32_t orig) { - LDKCResult_PublicKeyErrorZ* orig_conv = (LDKCResult_PublicKeyErrorZ*)(orig & ~1); - LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); - *ret_conv = CResult_PublicKeyErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +static inline struct LDKQueryShortChannelIds CResult_QueryShortChannelIdsDecodeErrorZ_get_ok(LDKCResult_QueryShortChannelIdsDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return QueryShortChannelIds_clone(&*owner->contents.result); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_ok(uint32_t o) { - LDKTxCreationKeys o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = TxCreationKeys_clone(&o_conv); - LDKCResult_TxCreationKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysDecodeErrorZ), "LDKCResult_TxCreationKeysDecodeErrorZ"); - *ret_conv = CResult_TxCreationKeysDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_QueryShortChannelIdsDecodeErrorZ* owner_conv = (LDKCResult_QueryShortChannelIdsDecodeErrorZ*)(owner & ~1); + LDKQueryShortChannelIds ret_var = CResult_QueryShortChannelIdsDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_TxCreationKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysDecodeErrorZ), "LDKCResult_TxCreationKeysDecodeErrorZ"); - *ret_conv = CResult_TxCreationKeysDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_QueryShortChannelIdsDecodeErrorZ_get_err(LDKCResult_QueryShortChannelIdsDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } - -jboolean __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_TxCreationKeysDecodeErrorZ* o_conv = (LDKCResult_TxCreationKeysDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_TxCreationKeysDecodeErrorZ_is_ok(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_QueryShortChannelIdsDecodeErrorZ* owner_conv = (LDKCResult_QueryShortChannelIdsDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_QueryShortChannelIdsDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_TxCreationKeysDecodeErrorZ _res_conv = *(LDKCResult_TxCreationKeysDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_TxCreationKeysDecodeErrorZ_free(_res_conv); +static inline struct LDKReplyShortChannelIdsEnd CResult_ReplyShortChannelIdsEndDecodeErrorZ_get_ok(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ReplyShortChannelIdsEnd_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* owner_conv = (LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ*)(owner & ~1); + LDKReplyShortChannelIdsEnd ret_var = CResult_ReplyShortChannelIdsEndDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline uint64_t CResult_TxCreationKeysDecodeErrorZ_clone_ptr(LDKCResult_TxCreationKeysDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_TxCreationKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysDecodeErrorZ), "LDKCResult_TxCreationKeysDecodeErrorZ"); - *ret_conv = CResult_TxCreationKeysDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_ReplyShortChannelIdsEndDecodeErrorZ_get_err(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -int64_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_TxCreationKeysDecodeErrorZ* arg_conv = (LDKCResult_TxCreationKeysDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_TxCreationKeysDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* owner_conv = (LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ReplyShortChannelIdsEndDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_TxCreationKeysDecodeErrorZ* orig_conv = (LDKCResult_TxCreationKeysDecodeErrorZ*)(orig & ~1); - LDKCResult_TxCreationKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysDecodeErrorZ), "LDKCResult_TxCreationKeysDecodeErrorZ"); - *ret_conv = CResult_TxCreationKeysDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +static inline struct LDKQueryChannelRange CResult_QueryChannelRangeDecodeErrorZ_get_ok(LDKCResult_QueryChannelRangeDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return QueryChannelRange_clone(&*owner->contents.result); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_ok(uint32_t o) { - LDKChannelPublicKeys o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ChannelPublicKeys_clone(&o_conv); - LDKCResult_ChannelPublicKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelPublicKeysDecodeErrorZ), "LDKCResult_ChannelPublicKeysDecodeErrorZ"); - *ret_conv = CResult_ChannelPublicKeysDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_QueryChannelRangeDecodeErrorZ* owner_conv = (LDKCResult_QueryChannelRangeDecodeErrorZ*)(owner & ~1); + LDKQueryChannelRange ret_var = CResult_QueryChannelRangeDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_ChannelPublicKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelPublicKeysDecodeErrorZ), "LDKCResult_ChannelPublicKeysDecodeErrorZ"); - *ret_conv = CResult_ChannelPublicKeysDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_QueryChannelRangeDecodeErrorZ_get_err(LDKCResult_QueryChannelRangeDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_QueryChannelRangeDecodeErrorZ* owner_conv = (LDKCResult_QueryChannelRangeDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_QueryChannelRangeDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ChannelPublicKeysDecodeErrorZ* o_conv = (LDKCResult_ChannelPublicKeysDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ChannelPublicKeysDecodeErrorZ_is_ok(o_conv); - return ret_val; +static inline struct LDKReplyChannelRange CResult_ReplyChannelRangeDecodeErrorZ_get_ok(LDKCResult_ReplyChannelRangeDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ReplyChannelRange_clone(&*owner->contents.result); } - -void __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_ChannelPublicKeysDecodeErrorZ _res_conv = *(LDKCResult_ChannelPublicKeysDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_ChannelPublicKeysDecodeErrorZ_free(_res_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ReplyChannelRangeDecodeErrorZ* owner_conv = (LDKCResult_ReplyChannelRangeDecodeErrorZ*)(owner & ~1); + LDKReplyChannelRange ret_var = CResult_ReplyChannelRangeDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline uint64_t CResult_ChannelPublicKeysDecodeErrorZ_clone_ptr(LDKCResult_ChannelPublicKeysDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ChannelPublicKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelPublicKeysDecodeErrorZ), "LDKCResult_ChannelPublicKeysDecodeErrorZ"); - *ret_conv = CResult_ChannelPublicKeysDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_ReplyChannelRangeDecodeErrorZ_get_err(LDKCResult_ReplyChannelRangeDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -int64_t __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ChannelPublicKeysDecodeErrorZ* arg_conv = (LDKCResult_ChannelPublicKeysDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ChannelPublicKeysDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ReplyChannelRangeDecodeErrorZ* owner_conv = (LDKCResult_ReplyChannelRangeDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ReplyChannelRangeDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ChannelPublicKeysDecodeErrorZ* orig_conv = (LDKCResult_ChannelPublicKeysDecodeErrorZ*)(orig & ~1); - LDKCResult_ChannelPublicKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelPublicKeysDecodeErrorZ), "LDKCResult_ChannelPublicKeysDecodeErrorZ"); - *ret_conv = CResult_ChannelPublicKeysDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +static inline struct LDKGossipTimestampFilter CResult_GossipTimestampFilterDecodeErrorZ_get_ok(LDKCResult_GossipTimestampFilterDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return GossipTimestampFilter_clone(&*owner->contents.result); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_ok(uint32_t o) { - LDKTxCreationKeys o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = TxCreationKeys_clone(&o_conv); - LDKCResult_TxCreationKeysErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysErrorZ), "LDKCResult_TxCreationKeysErrorZ"); - *ret_conv = CResult_TxCreationKeysErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_GossipTimestampFilterDecodeErrorZ* owner_conv = (LDKCResult_GossipTimestampFilterDecodeErrorZ*)(owner & ~1); + LDKGossipTimestampFilter ret_var = CResult_GossipTimestampFilterDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_err(uint32_t e) { - LDKSecp256k1Error e_conv = LDKSecp256k1Error_from_js(e); - LDKCResult_TxCreationKeysErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysErrorZ), "LDKCResult_TxCreationKeysErrorZ"); - *ret_conv = CResult_TxCreationKeysErrorZ_err(e_conv); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_GossipTimestampFilterDecodeErrorZ_get_err(LDKCResult_GossipTimestampFilterDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } - -jboolean __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_is_ok(uint32_t o) { - LDKCResult_TxCreationKeysErrorZ* o_conv = (LDKCResult_TxCreationKeysErrorZ*)(o & ~1); - jboolean ret_val = CResult_TxCreationKeysErrorZ_is_ok(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_GossipTimestampFilterDecodeErrorZ* owner_conv = (LDKCResult_GossipTimestampFilterDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_GossipTimestampFilterDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_TxCreationKeysErrorZ _res_conv = *(LDKCResult_TxCreationKeysErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_TxCreationKeysErrorZ_free(_res_conv); +static inline struct LDKDelayedPaymentOutputDescriptor CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_get_ok(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return DelayedPaymentOutputDescriptor_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* owner_conv = (LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ*)(owner & ~1); + LDKDelayedPaymentOutputDescriptor ret_var = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline uint64_t CResult_TxCreationKeysErrorZ_clone_ptr(LDKCResult_TxCreationKeysErrorZ *NONNULL_PTR arg) { - LDKCResult_TxCreationKeysErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysErrorZ), "LDKCResult_TxCreationKeysErrorZ"); - *ret_conv = CResult_TxCreationKeysErrorZ_clone(arg); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_get_err(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -int64_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_TxCreationKeysErrorZ* arg_conv = (LDKCResult_TxCreationKeysErrorZ*)(arg & ~1); - int64_t ret_val = CResult_TxCreationKeysErrorZ_clone_ptr(arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* owner_conv = (LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_clone(uint32_t orig) { - LDKCResult_TxCreationKeysErrorZ* orig_conv = (LDKCResult_TxCreationKeysErrorZ*)(orig & ~1); - LDKCResult_TxCreationKeysErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysErrorZ), "LDKCResult_TxCreationKeysErrorZ"); - *ret_conv = CResult_TxCreationKeysErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +static inline struct LDKStaticPaymentOutputDescriptor CResult_StaticPaymentOutputDescriptorDecodeErrorZ_get_ok(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return StaticPaymentOutputDescriptor_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* owner_conv = (LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ*)(owner & ~1); + LDKStaticPaymentOutputDescriptor ret_var = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_COption_u32Z_some(int32_t o) { - LDKCOption_u32Z *ret_copy = MALLOC(sizeof(LDKCOption_u32Z), "LDKCOption_u32Z"); - *ret_copy = COption_u32Z_some(o); - uint64_t ret_ref = (uint64_t)ret_copy; +static inline struct LDKDecodeError CResult_StaticPaymentOutputDescriptorDecodeErrorZ_get_err(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* owner_conv = (LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_COption_u32Z_none() { - LDKCOption_u32Z *ret_copy = MALLOC(sizeof(LDKCOption_u32Z), "LDKCOption_u32Z"); - *ret_copy = COption_u32Z_none(); +static inline struct LDKSpendableOutputDescriptor CResult_SpendableOutputDescriptorDecodeErrorZ_get_ok(LDKCResult_SpendableOutputDescriptorDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return SpendableOutputDescriptor_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_SpendableOutputDescriptorDecodeErrorZ* owner_conv = (LDKCResult_SpendableOutputDescriptorDecodeErrorZ*)(owner & ~1); + LDKSpendableOutputDescriptor *ret_copy = MALLOC(sizeof(LDKSpendableOutputDescriptor), "LDKSpendableOutputDescriptor"); + *ret_copy = CResult_SpendableOutputDescriptorDecodeErrorZ_get_ok(owner_conv); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -void __attribute__((visibility("default"))) TS_COption_u32Z_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCOption_u32Z _res_conv = *(LDKCOption_u32Z*)(_res_ptr); - FREE((void*)_res); - COption_u32Z_free(_res_conv); +static inline struct LDKDecodeError CResult_SpendableOutputDescriptorDecodeErrorZ_get_err(LDKCResult_SpendableOutputDescriptorDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } - -static inline uint64_t COption_u32Z_clone_ptr(LDKCOption_u32Z *NONNULL_PTR arg) { - LDKCOption_u32Z *ret_copy = MALLOC(sizeof(LDKCOption_u32Z), "LDKCOption_u32Z"); - *ret_copy = COption_u32Z_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; +uint32_t __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_SpendableOutputDescriptorDecodeErrorZ* owner_conv = (LDKCResult_SpendableOutputDescriptorDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_SpendableOutputDescriptorDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_COption_u32Z_clone_ptr(uint32_t arg) { - LDKCOption_u32Z* arg_conv = (LDKCOption_u32Z*)arg; - int64_t ret_val = COption_u32Z_clone_ptr(arg_conv); - return ret_val; + +static inline struct LDKSign CResult_SignDecodeErrorZ_get_ok(LDKCResult_SignDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return Sign_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_SignDecodeErrorZ* owner_conv = (LDKCResult_SignDecodeErrorZ*)(owner & ~1); + LDKSign* ret_ret = MALLOC(sizeof(LDKSign), "LDKSign"); + *ret_ret = CResult_SignDecodeErrorZ_get_ok(owner_conv); + return (uint64_t)ret_ret; } -uint32_t __attribute__((visibility("default"))) TS_COption_u32Z_clone(uint32_t orig) { - LDKCOption_u32Z* orig_conv = (LDKCOption_u32Z*)orig; - LDKCOption_u32Z *ret_copy = MALLOC(sizeof(LDKCOption_u32Z), "LDKCOption_u32Z"); - *ret_copy = COption_u32Z_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; +static inline struct LDKDecodeError CResult_SignDecodeErrorZ_get_err(LDKCResult_SignDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_SignDecodeErrorZ* owner_conv = (LDKCResult_SignDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_SignDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_ok(uint32_t o) { - LDKHTLCOutputInCommitment o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = HTLCOutputInCommitment_clone(&o_conv); - LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ), "LDKCResult_HTLCOutputInCommitmentDecodeErrorZ"); - *ret_conv = CResult_HTLCOutputInCommitmentDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +static inline struct LDKRecoverableSignature CResult_RecoverableSignatureNoneZ_get_ok(LDKCResult_RecoverableSignatureNoneZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; +} +int8_tArray __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_get_ok(uint32_t owner) { + LDKCResult_RecoverableSignatureNoneZ* owner_conv = (LDKCResult_RecoverableSignatureNoneZ*)(owner & ~1); + int8_tArray et_arr = init_int8_tArray(68); + memcpy(et_arr->elems, CResult_RecoverableSignatureNoneZ_get_ok(owner_conv).serialized_form, 68); + return et_arr; } -uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ), "LDKCResult_HTLCOutputInCommitmentDecodeErrorZ"); - *ret_conv = CResult_HTLCOutputInCommitmentDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +static inline void CResult_RecoverableSignatureNoneZ_get_err(LDKCResult_RecoverableSignatureNoneZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; +} +void __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_get_err(uint32_t owner) { + LDKCResult_RecoverableSignatureNoneZ* owner_conv = (LDKCResult_RecoverableSignatureNoneZ*)(owner & ~1); + CResult_RecoverableSignatureNoneZ_get_err(owner_conv); } -jboolean __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* o_conv = (LDKCResult_HTLCOutputInCommitmentDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_HTLCOutputInCommitmentDecodeErrorZ_is_ok(o_conv); - return ret_val; +static inline LDKCVec_CVec_u8ZZ CVec_CVec_u8ZZ_clone(const LDKCVec_CVec_u8ZZ *orig) { + LDKCVec_CVec_u8ZZ ret = { .data = MALLOC(sizeof(LDKCVec_u8Z) * orig->datalen, "LDKCVec_CVec_u8ZZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = CVec_u8Z_clone(&orig->data[i]); + } + return ret; +} +static inline struct LDKCVec_CVec_u8ZZ CResult_CVec_CVec_u8ZZNoneZ_get_ok(LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return CVec_CVec_u8ZZ_clone(&*owner->contents.result); +} +ptrArray __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_get_ok(uint32_t owner) { + LDKCResult_CVec_CVec_u8ZZNoneZ* owner_conv = (LDKCResult_CVec_CVec_u8ZZNoneZ*)(owner & ~1); + LDKCVec_CVec_u8ZZ ret_var = CResult_CVec_CVec_u8ZZNoneZ_get_ok(owner_conv); + ptrArray ret_arr = NULL; + ret_arr = init_ptrArray(ret_var.datalen); + int8_tArray *ret_arr_ptr = (int8_tArray*)(ret_arr + 4); + for (size_t m = 0; m < ret_var.datalen; m++) { + LDKCVec_u8Z ret_conv_12_var = ret_var.data[m]; + int8_tArray ret_conv_12_arr = init_int8_tArray(ret_conv_12_var.datalen); + memcpy(ret_conv_12_arr->elems, ret_conv_12_var.data, ret_conv_12_var.datalen); + CVec_u8Z_free(ret_conv_12_var); + ret_arr_ptr[m] = ret_conv_12_arr; + } + + FREE(ret_var.data); + return ret_arr; } -void __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_HTLCOutputInCommitmentDecodeErrorZ _res_conv = *(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_HTLCOutputInCommitmentDecodeErrorZ_free(_res_conv); +static inline void CResult_CVec_CVec_u8ZZNoneZ_get_err(LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; +} +void __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_get_err(uint32_t owner) { + LDKCResult_CVec_CVec_u8ZZNoneZ* owner_conv = (LDKCResult_CVec_CVec_u8ZZNoneZ*)(owner & ~1); + CResult_CVec_CVec_u8ZZNoneZ_get_err(owner_conv); } -static inline uint64_t CResult_HTLCOutputInCommitmentDecodeErrorZ_clone_ptr(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ), "LDKCResult_HTLCOutputInCommitmentDecodeErrorZ"); - *ret_conv = CResult_HTLCOutputInCommitmentDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +static inline struct LDKInMemorySigner CResult_InMemorySignerDecodeErrorZ_get_ok(LDKCResult_InMemorySignerDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return InMemorySigner_clone(&*owner->contents.result); } -int64_t __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* arg_conv = (LDKCResult_HTLCOutputInCommitmentDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_HTLCOutputInCommitmentDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_InMemorySignerDecodeErrorZ* owner_conv = (LDKCResult_InMemorySignerDecodeErrorZ*)(owner & ~1); + LDKInMemorySigner ret_var = CResult_InMemorySignerDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* orig_conv = (LDKCResult_HTLCOutputInCommitmentDecodeErrorZ*)(orig & ~1); - LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ), "LDKCResult_HTLCOutputInCommitmentDecodeErrorZ"); - *ret_conv = CResult_HTLCOutputInCommitmentDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_InMemorySignerDecodeErrorZ_get_err(LDKCResult_InMemorySignerDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } - -uint32_t __attribute__((visibility("default"))) TS_COption_NoneZ_some() { - uint32_t ret_conv = LDKCOption_NoneZ_to_js(COption_NoneZ_some()); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_InMemorySignerDecodeErrorZ* owner_conv = (LDKCResult_InMemorySignerDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_InMemorySignerDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_COption_NoneZ_none() { - uint32_t ret_conv = LDKCOption_NoneZ_to_js(COption_NoneZ_none()); - return ret_conv; +static inline LDKCVec_TxOutZ CVec_TxOutZ_clone(const LDKCVec_TxOutZ *orig) { + LDKCVec_TxOutZ ret = { .data = MALLOC(sizeof(LDKTxOut) * orig->datalen, "LDKCVec_TxOutZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = TxOut_clone(&orig->data[i]); + } + return ret; } - -void __attribute__((visibility("default"))) TS_COption_NoneZ_free(uint32_t _res) { - LDKCOption_NoneZ _res_conv = LDKCOption_NoneZ_from_js(_res); - COption_NoneZ_free(_res_conv); +static inline struct LDKTransaction CResult_TransactionNoneZ_get_ok(LDKCResult_TransactionNoneZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_ok(uint32_t o) { - LDKCounterpartyChannelTransactionParameters o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = CounterpartyChannelTransactionParameters_clone(&o_conv); - LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ), "LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ"); - *ret_conv = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +int8_tArray __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_get_ok(uint32_t owner) { + LDKCResult_TransactionNoneZ* owner_conv = (LDKCResult_TransactionNoneZ*)(owner & ~1); + LDKTransaction ret_var = CResult_TransactionNoneZ_get_ok(owner_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + Transaction_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ), "LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ"); - *ret_conv = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +static inline void CResult_TransactionNoneZ_get_err(LDKCResult_TransactionNoneZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; } - -jboolean __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* o_conv = (LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_is_ok(o_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_get_err(uint32_t owner) { + LDKCResult_TransactionNoneZ* owner_conv = (LDKCResult_TransactionNoneZ*)(owner & ~1); + CResult_TransactionNoneZ_get_err(owner_conv); } -void __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ _res_conv = *(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_free(_res_conv); +typedef struct LDKFilter_JCalls { + atomic_size_t refcnt; + uint32_t register_tx_meth; + uint32_t register_output_meth; +} LDKFilter_JCalls; +static void LDKFilter_JCalls_free(void* this_arg) { + LDKFilter_JCalls *j_calls = (LDKFilter_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->register_tx_meth); + js_free_function_ptr(j_calls->register_output_meth); + FREE(j_calls); + } } - -static inline uint64_t CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone_ptr(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ), "LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ"); - *ret_conv = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +void register_tx_LDKFilter_jcall(const void* this_arg, const uint8_t (* txid)[32], LDKu8slice script_pubkey) { + LDKFilter_JCalls *j_calls = (LDKFilter_JCalls*) this_arg; + int8_tArray txid_arr = init_int8_tArray(32); + memcpy(txid_arr->elems, *txid, 32); + LDKu8slice script_pubkey_var = script_pubkey; + int8_tArray script_pubkey_arr = init_int8_tArray(script_pubkey_var.datalen); + memcpy(script_pubkey_arr->elems, script_pubkey_var.data, script_pubkey_var.datalen); + js_invoke_function_2(j_calls->register_tx_meth, (uint32_t)txid_arr, (uint32_t)script_pubkey_arr); } -int64_t __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* arg_conv = (LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +LDKCOption_C2Tuple_usizeTransactionZZ register_output_LDKFilter_jcall(const void* this_arg, LDKWatchedOutput output) { + LDKFilter_JCalls *j_calls = (LDKFilter_JCalls*) this_arg; + LDKWatchedOutput output_var = output; + uint64_t output_ref = 0; + CHECK((((uint64_t)output_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&output_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(output_var); + output_ref = (uint64_t)output_var.inner; + if (output_var.is_owned) { + output_ref |= 1; + } + uint32_t ret = js_invoke_function_1(j_calls->register_output_meth, (uint32_t)output_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCOption_C2Tuple_usizeTransactionZZ ret_conv = *(LDKCOption_C2Tuple_usizeTransactionZZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* orig_conv = (LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ*)(orig & ~1); - LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ), "LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ"); - *ret_conv = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +static void LDKFilter_JCalls_cloned(LDKFilter* new_obj) { + LDKFilter_JCalls *j_calls = (LDKFilter_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKFilter LDKFilter_init (/*TODO: JS Object Reference */void* o) { + LDKFilter_JCalls *calls = MALLOC(sizeof(LDKFilter_JCalls), "LDKFilter_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_ok(uint32_t o) { - LDKChannelTransactionParameters o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ChannelTransactionParameters_clone(&o_conv); - LDKCResult_ChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTransactionParametersDecodeErrorZ), "LDKCResult_ChannelTransactionParametersDecodeErrorZ"); - *ret_conv = CResult_ChannelTransactionParametersDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; + LDKFilter ret = { + .this_arg = (void*) calls, + .register_tx = register_tx_LDKFilter_jcall, + .register_output = register_output_LDKFilter_jcall, + .free = LDKFilter_JCalls_free, + }; + return ret; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_ChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTransactionParametersDecodeErrorZ), "LDKCResult_ChannelTransactionParametersDecodeErrorZ"); - *ret_conv = CResult_ChannelTransactionParametersDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +long __attribute__((visibility("default"))) TS_LDKFilter_new(/*TODO: JS Object Reference */void* o) { + LDKFilter *res_ptr = MALLOC(sizeof(LDKFilter), "LDKFilter"); + *res_ptr = LDKFilter_init(o); + return (long)res_ptr; } - -jboolean __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ChannelTransactionParametersDecodeErrorZ* o_conv = (LDKCResult_ChannelTransactionParametersDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ChannelTransactionParametersDecodeErrorZ_is_ok(o_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_Filter_register_tx(uint32_t this_arg, int8_tArray txid, int8_tArray script_pubkey) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKFilter* this_arg_conv = (LDKFilter*)this_arg_ptr; + unsigned char txid_arr[32]; + CHECK(txid->arr_len == 32); + memcpy(txid_arr, txid->elems, 32); + unsigned char (*txid_ref)[32] = &txid_arr; + LDKu8slice script_pubkey_ref; + script_pubkey_ref.datalen = script_pubkey->arr_len; + script_pubkey_ref.data = script_pubkey->elems; + (this_arg_conv->register_tx)(this_arg_conv->this_arg, txid_ref, script_pubkey_ref); } -void __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_ChannelTransactionParametersDecodeErrorZ _res_conv = *(LDKCResult_ChannelTransactionParametersDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_ChannelTransactionParametersDecodeErrorZ_free(_res_conv); +uint32_t __attribute__((visibility("default"))) TS_Filter_register_output(uint32_t this_arg, uint32_t output) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKFilter* this_arg_conv = (LDKFilter*)this_arg_ptr; + LDKWatchedOutput output_conv; + output_conv.inner = (void*)(output & (~1)); + output_conv.is_owned = (output & 1) || (output == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(output_conv); + output_conv = WatchedOutput_clone(&output_conv); + LDKCOption_C2Tuple_usizeTransactionZZ *ret_copy = MALLOC(sizeof(LDKCOption_C2Tuple_usizeTransactionZZ), "LDKCOption_C2Tuple_usizeTransactionZZ"); + *ret_copy = (this_arg_conv->register_output)(this_arg_conv->this_arg, output_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -static inline uint64_t CResult_ChannelTransactionParametersDecodeErrorZ_clone_ptr(LDKCResult_ChannelTransactionParametersDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTransactionParametersDecodeErrorZ), "LDKCResult_ChannelTransactionParametersDecodeErrorZ"); - *ret_conv = CResult_ChannelTransactionParametersDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_LDKCOption_FilterZ_ref_from_ptr(uint32_t ptr) { + LDKCOption_FilterZ *obj = (LDKCOption_FilterZ*)(ptr & ~1); + switch(obj->tag) { + case LDKCOption_FilterZ_Some: { + LDKFilter* some_ret = MALLOC(sizeof(LDKFilter), "LDKFilter"); + *some_ret = obj->some; + // Warning: We likely need to clone here, but no clone is available, so we just do it for Java instances + return 0 /* LDKCOption_FilterZ - Some */; (void) (uint64_t)some_ret; + } + case LDKCOption_FilterZ_None: { + return 0 /* LDKCOption_FilterZ - None */; + } + default: abort(); + } } -int64_t __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ChannelTransactionParametersDecodeErrorZ* arg_conv = (LDKCResult_ChannelTransactionParametersDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ChannelTransactionParametersDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +static inline struct LDKLockedChannelMonitor *CResult_LockedChannelMonitorNoneZ_get_ok(LDKCResult_LockedChannelMonitorNoneZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return &*owner->contents.result; +} +uint32_t __attribute__((visibility("default"))) TS_CResult_LockedChannelMonitorNoneZ_get_ok(uint32_t owner) { + LDKCResult_LockedChannelMonitorNoneZ* owner_conv = (LDKCResult_LockedChannelMonitorNoneZ*)(owner & ~1); + LDKLockedChannelMonitor ret_var = *CResult_LockedChannelMonitorNoneZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner & ~1; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ChannelTransactionParametersDecodeErrorZ* orig_conv = (LDKCResult_ChannelTransactionParametersDecodeErrorZ*)(orig & ~1); - LDKCResult_ChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTransactionParametersDecodeErrorZ), "LDKCResult_ChannelTransactionParametersDecodeErrorZ"); - *ret_conv = CResult_ChannelTransactionParametersDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +static inline void CResult_LockedChannelMonitorNoneZ_get_err(LDKCResult_LockedChannelMonitorNoneZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; +} +void __attribute__((visibility("default"))) TS_CResult_LockedChannelMonitorNoneZ_get_err(uint32_t owner) { + LDKCResult_LockedChannelMonitorNoneZ* owner_conv = (LDKCResult_LockedChannelMonitorNoneZ*)(owner & ~1); + CResult_LockedChannelMonitorNoneZ_get_err(owner_conv); } -void __attribute__((visibility("default"))) TS_CVec_SignatureZ_free(ptrArray _res) { - LDKCVec_SignatureZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); - else - _res_constr.data = NULL; - int8_tArray* _res_vals = (int8_tArray*)(_res + 4); - for (size_t m = 0; m < _res_constr.datalen; m++) { - int8_tArray _res_conv_12 = _res_vals[m]; - LDKSignature _res_conv_12_ref; - CHECK(*((uint32_t*)_res_conv_12) == 64); - memcpy(_res_conv_12_ref.compact_form, (uint8_t*)(_res_conv_12 + 4), 64); - _res_constr.data[m] = _res_conv_12_ref; +static inline LDKCVec_OutPointZ CVec_OutPointZ_clone(const LDKCVec_OutPointZ *orig) { + LDKCVec_OutPointZ ret = { .data = MALLOC(sizeof(LDKOutPoint) * orig->datalen, "LDKCVec_OutPointZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = OutPoint_clone(&orig->data[i]); + } + return ret; +} +uint32_t __attribute__((visibility("default"))) TS_LDKAPIError_ref_from_ptr(uint32_t ptr) { + LDKAPIError *obj = (LDKAPIError*)(ptr & ~1); + switch(obj->tag) { + case LDKAPIError_APIMisuseError: { + LDKStr err_str = obj->api_misuse_error.err; + jstring err_conv = str_ref_to_ts(err_str.chars, err_str.len); + return 0 /* LDKAPIError - APIMisuseError */; (void) err_conv; + } + case LDKAPIError_FeeRateTooHigh: { + LDKStr err_str = obj->fee_rate_too_high.err; + jstring err_conv = str_ref_to_ts(err_str.chars, err_str.len); + return 0 /* LDKAPIError - FeeRateTooHigh */; (void) err_conv; (void) obj->fee_rate_too_high.feerate; + } + case LDKAPIError_RouteError: { + LDKStr err_str = obj->route_error.err; + jstring err_conv = str_ref_to_ts(err_str.chars, err_str.len); + return 0 /* LDKAPIError - RouteError */; (void) err_conv; + } + case LDKAPIError_ChannelUnavailable: { + LDKStr err_str = obj->channel_unavailable.err; + jstring err_conv = str_ref_to_ts(err_str.chars, err_str.len); + return 0 /* LDKAPIError - ChannelUnavailable */; (void) err_conv; + } + case LDKAPIError_MonitorUpdateFailed: { + return 0 /* LDKAPIError - MonitorUpdateFailed */; + } + case LDKAPIError_IncompatibleShutdownScript: { + LDKShutdownScript script_var = obj->incompatible_shutdown_script.script; + uint64_t script_ref = 0; + CHECK((((uint64_t)script_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&script_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(script_var); + script_ref = (uint64_t)script_var.inner & ~1; + return 0 /* LDKAPIError - IncompatibleShutdownScript */; (void) script_ref; + } + default: abort(); } - CVec_SignatureZ_free(_res_constr); -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_ok(uint32_t o) { - LDKHolderCommitmentTransaction o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = HolderCommitmentTransaction_clone(&o_conv); - LDKCResult_HolderCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HolderCommitmentTransactionDecodeErrorZ), "LDKCResult_HolderCommitmentTransactionDecodeErrorZ"); - *ret_conv = CResult_HolderCommitmentTransactionDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_HolderCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HolderCommitmentTransactionDecodeErrorZ), "LDKCResult_HolderCommitmentTransactionDecodeErrorZ"); - *ret_conv = CResult_HolderCommitmentTransactionDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; } - -jboolean __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_HolderCommitmentTransactionDecodeErrorZ* o_conv = (LDKCResult_HolderCommitmentTransactionDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_HolderCommitmentTransactionDecodeErrorZ_is_ok(o_conv); - return ret_val; +static inline void CResult_NoneAPIErrorZ_get_ok(LDKCResult_NoneAPIErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; } - -void __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_HolderCommitmentTransactionDecodeErrorZ _res_conv = *(LDKCResult_HolderCommitmentTransactionDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_HolderCommitmentTransactionDecodeErrorZ_free(_res_conv); +void __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_get_ok(uint32_t owner) { + LDKCResult_NoneAPIErrorZ* owner_conv = (LDKCResult_NoneAPIErrorZ*)(owner & ~1); + CResult_NoneAPIErrorZ_get_ok(owner_conv); } -static inline uint64_t CResult_HolderCommitmentTransactionDecodeErrorZ_clone_ptr(LDKCResult_HolderCommitmentTransactionDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_HolderCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HolderCommitmentTransactionDecodeErrorZ), "LDKCResult_HolderCommitmentTransactionDecodeErrorZ"); - *ret_conv = CResult_HolderCommitmentTransactionDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +static inline struct LDKAPIError CResult_NoneAPIErrorZ_get_err(LDKCResult_NoneAPIErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return APIError_clone(&*owner->contents.err); } -int64_t __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_HolderCommitmentTransactionDecodeErrorZ* arg_conv = (LDKCResult_HolderCommitmentTransactionDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_HolderCommitmentTransactionDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_get_err(uint32_t owner) { + LDKCResult_NoneAPIErrorZ* owner_conv = (LDKCResult_NoneAPIErrorZ*)(owner & ~1); + LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); + *ret_copy = CResult_NoneAPIErrorZ_get_err(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_HolderCommitmentTransactionDecodeErrorZ* orig_conv = (LDKCResult_HolderCommitmentTransactionDecodeErrorZ*)(orig & ~1); - LDKCResult_HolderCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HolderCommitmentTransactionDecodeErrorZ), "LDKCResult_HolderCommitmentTransactionDecodeErrorZ"); - *ret_conv = CResult_HolderCommitmentTransactionDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_LDKCOption_u16Z_ref_from_ptr(uint32_t ptr) { + LDKCOption_u16Z *obj = (LDKCOption_u16Z*)(ptr & ~1); + switch(obj->tag) { + case LDKCOption_u16Z_Some: { + return 0 /* LDKCOption_u16Z - Some */; (void) obj->some; + } + case LDKCOption_u16Z_None: { + return 0 /* LDKCOption_u16Z - None */; + } + default: abort(); + } } - -uint32_t __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_ok(uint32_t o) { - LDKBuiltCommitmentTransaction o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = BuiltCommitmentTransaction_clone(&o_conv); - LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ), "LDKCResult_BuiltCommitmentTransactionDecodeErrorZ"); - *ret_conv = CResult_BuiltCommitmentTransactionDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +static inline LDKCVec_CResult_NoneAPIErrorZZ CVec_CResult_NoneAPIErrorZZ_clone(const LDKCVec_CResult_NoneAPIErrorZZ *orig) { + LDKCVec_CResult_NoneAPIErrorZZ ret = { .data = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ) * orig->datalen, "LDKCVec_CResult_NoneAPIErrorZZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = CResult_NoneAPIErrorZ_clone(&orig->data[i]); + } + return ret; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ), "LDKCResult_BuiltCommitmentTransactionDecodeErrorZ"); - *ret_conv = CResult_BuiltCommitmentTransactionDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +static inline LDKCVec_APIErrorZ CVec_APIErrorZ_clone(const LDKCVec_APIErrorZ *orig) { + LDKCVec_APIErrorZ ret = { .data = MALLOC(sizeof(LDKAPIError) * orig->datalen, "LDKCVec_APIErrorZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = APIError_clone(&orig->data[i]); + } + return ret; } - -jboolean __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* o_conv = (LDKCResult_BuiltCommitmentTransactionDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_BuiltCommitmentTransactionDecodeErrorZ_is_ok(o_conv); - return ret_val; +static inline struct LDKThirtyTwoBytes CResult__u832APIErrorZ_get_ok(LDKCResult__u832APIErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ThirtyTwoBytes_clone(&*owner->contents.result); } - -void __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_BuiltCommitmentTransactionDecodeErrorZ _res_conv = *(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_BuiltCommitmentTransactionDecodeErrorZ_free(_res_conv); +int8_tArray __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_get_ok(uint32_t owner) { + LDKCResult__u832APIErrorZ* owner_conv = (LDKCResult__u832APIErrorZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, CResult__u832APIErrorZ_get_ok(owner_conv).data, 32); + return ret_arr; } -static inline uint64_t CResult_BuiltCommitmentTransactionDecodeErrorZ_clone_ptr(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ), "LDKCResult_BuiltCommitmentTransactionDecodeErrorZ"); - *ret_conv = CResult_BuiltCommitmentTransactionDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +static inline struct LDKAPIError CResult__u832APIErrorZ_get_err(LDKCResult__u832APIErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return APIError_clone(&*owner->contents.err); } -int64_t __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* arg_conv = (LDKCResult_BuiltCommitmentTransactionDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_BuiltCommitmentTransactionDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_get_err(uint32_t owner) { + LDKCResult__u832APIErrorZ* owner_conv = (LDKCResult__u832APIErrorZ*)(owner & ~1); + LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); + *ret_copy = CResult__u832APIErrorZ_get_err(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* orig_conv = (LDKCResult_BuiltCommitmentTransactionDecodeErrorZ*)(orig & ~1); - LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ), "LDKCResult_BuiltCommitmentTransactionDecodeErrorZ"); - *ret_conv = CResult_BuiltCommitmentTransactionDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_LDKPaymentSendFailure_ref_from_ptr(uint32_t ptr) { + LDKPaymentSendFailure *obj = (LDKPaymentSendFailure*)(ptr & ~1); + switch(obj->tag) { + case LDKPaymentSendFailure_ParameterError: { + uint64_t parameter_error_ref = ((uint64_t)&obj->parameter_error) | 1; + return 0 /* LDKPaymentSendFailure - ParameterError */; (void) parameter_error_ref; + } + case LDKPaymentSendFailure_PathParameterError: { + LDKCVec_CResult_NoneAPIErrorZZ path_parameter_error_var = obj->path_parameter_error; + uint32_tArray path_parameter_error_arr = NULL; + path_parameter_error_arr = init_uint32_tArray(path_parameter_error_var.datalen); + uint32_t *path_parameter_error_arr_ptr = (uint32_t*)(path_parameter_error_arr + 4); + for (size_t w = 0; w < path_parameter_error_var.datalen; w++) { + LDKCResult_NoneAPIErrorZ* path_parameter_error_conv_22_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); + *path_parameter_error_conv_22_conv = path_parameter_error_var.data[w]; + *path_parameter_error_conv_22_conv = CResult_NoneAPIErrorZ_clone(path_parameter_error_conv_22_conv); + path_parameter_error_arr_ptr[w] = (uint64_t)path_parameter_error_conv_22_conv; + } + + return 0 /* LDKPaymentSendFailure - PathParameterError */; (void) path_parameter_error_arr; + } + case LDKPaymentSendFailure_AllFailedRetrySafe: { + LDKCVec_APIErrorZ all_failed_retry_safe_var = obj->all_failed_retry_safe; + uint32_tArray all_failed_retry_safe_arr = NULL; + all_failed_retry_safe_arr = init_uint32_tArray(all_failed_retry_safe_var.datalen); + uint32_t *all_failed_retry_safe_arr_ptr = (uint32_t*)(all_failed_retry_safe_arr + 4); + for (size_t k = 0; k < all_failed_retry_safe_var.datalen; k++) { + uint64_t all_failed_retry_safe_conv_10_ref = ((uint64_t)&all_failed_retry_safe_var.data[k]) | 1; + all_failed_retry_safe_arr_ptr[k] = all_failed_retry_safe_conv_10_ref; + } + + return 0 /* LDKPaymentSendFailure - AllFailedRetrySafe */; (void) all_failed_retry_safe_arr; + } + case LDKPaymentSendFailure_PartialFailure: { + LDKCVec_CResult_NoneAPIErrorZZ results_var = obj->partial_failure.results; + uint32_tArray results_arr = NULL; + results_arr = init_uint32_tArray(results_var.datalen); + uint32_t *results_arr_ptr = (uint32_t*)(results_arr + 4); + for (size_t w = 0; w < results_var.datalen; w++) { + LDKCResult_NoneAPIErrorZ* results_conv_22_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); + *results_conv_22_conv = results_var.data[w]; + *results_conv_22_conv = CResult_NoneAPIErrorZ_clone(results_conv_22_conv); + results_arr_ptr[w] = (uint64_t)results_conv_22_conv; + } + + LDKRouteParameters failed_paths_retry_var = obj->partial_failure.failed_paths_retry; + uint64_t failed_paths_retry_ref = 0; + if ((uint64_t)failed_paths_retry_var.inner > 4096) { + CHECK((((uint64_t)failed_paths_retry_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&failed_paths_retry_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(failed_paths_retry_var); + failed_paths_retry_ref = (uint64_t)failed_paths_retry_var.inner & ~1; + } + int8_tArray payment_id_arr = init_int8_tArray(32); + memcpy(payment_id_arr->elems, obj->partial_failure.payment_id.data, 32); + return 0 /* LDKPaymentSendFailure - PartialFailure */; (void) results_arr; (void) failed_paths_retry_ref; (void) payment_id_arr; + } + default: abort(); + } } - -uint32_t __attribute__((visibility("default"))) TS_CResult_TrustedClosingTransactionNoneZ_ok(uint32_t o) { - LDKTrustedClosingTransaction o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - // Warning: we need a move here but no clone is available for LDKTrustedClosingTransaction - LDKCResult_TrustedClosingTransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TrustedClosingTransactionNoneZ), "LDKCResult_TrustedClosingTransactionNoneZ"); - *ret_conv = CResult_TrustedClosingTransactionNoneZ_ok(o_conv); - return (uint64_t)ret_conv; +static inline struct LDKThirtyTwoBytes CResult_PaymentIdPaymentSendFailureZ_get_ok(LDKCResult_PaymentIdPaymentSendFailureZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ThirtyTwoBytes_clone(&*owner->contents.result); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_TrustedClosingTransactionNoneZ_err() { - LDKCResult_TrustedClosingTransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TrustedClosingTransactionNoneZ), "LDKCResult_TrustedClosingTransactionNoneZ"); - *ret_conv = CResult_TrustedClosingTransactionNoneZ_err(); - return (uint64_t)ret_conv; +int8_tArray __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_get_ok(uint32_t owner) { + LDKCResult_PaymentIdPaymentSendFailureZ* owner_conv = (LDKCResult_PaymentIdPaymentSendFailureZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, CResult_PaymentIdPaymentSendFailureZ_get_ok(owner_conv).data, 32); + return ret_arr; } -jboolean __attribute__((visibility("default"))) TS_CResult_TrustedClosingTransactionNoneZ_is_ok(uint32_t o) { - LDKCResult_TrustedClosingTransactionNoneZ* o_conv = (LDKCResult_TrustedClosingTransactionNoneZ*)(o & ~1); - jboolean ret_val = CResult_TrustedClosingTransactionNoneZ_is_ok(o_conv); - return ret_val; +static inline struct LDKPaymentSendFailure CResult_PaymentIdPaymentSendFailureZ_get_err(LDKCResult_PaymentIdPaymentSendFailureZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return PaymentSendFailure_clone(&*owner->contents.err); } - -void __attribute__((visibility("default"))) TS_CResult_TrustedClosingTransactionNoneZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_TrustedClosingTransactionNoneZ _res_conv = *(LDKCResult_TrustedClosingTransactionNoneZ*)(_res_ptr); - FREE((void*)_res); - CResult_TrustedClosingTransactionNoneZ_free(_res_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_get_err(uint32_t owner) { + LDKCResult_PaymentIdPaymentSendFailureZ* owner_conv = (LDKCResult_PaymentIdPaymentSendFailureZ*)(owner & ~1); + LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); + *ret_copy = CResult_PaymentIdPaymentSendFailureZ_get_err(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_ok(uint32_t o) { - LDKCommitmentTransaction o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = CommitmentTransaction_clone(&o_conv); - LDKCResult_CommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentTransactionDecodeErrorZ), "LDKCResult_CommitmentTransactionDecodeErrorZ"); - *ret_conv = CResult_CommitmentTransactionDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +static inline void CResult_NonePaymentSendFailureZ_get_ok(LDKCResult_NonePaymentSendFailureZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_CommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentTransactionDecodeErrorZ), "LDKCResult_CommitmentTransactionDecodeErrorZ"); - *ret_conv = CResult_CommitmentTransactionDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_get_ok(uint32_t owner) { + LDKCResult_NonePaymentSendFailureZ* owner_conv = (LDKCResult_NonePaymentSendFailureZ*)(owner & ~1); + CResult_NonePaymentSendFailureZ_get_ok(owner_conv); } -jboolean __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_CommitmentTransactionDecodeErrorZ* o_conv = (LDKCResult_CommitmentTransactionDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_CommitmentTransactionDecodeErrorZ_is_ok(o_conv); - return ret_val; +static inline struct LDKPaymentSendFailure CResult_NonePaymentSendFailureZ_get_err(LDKCResult_NonePaymentSendFailureZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return PaymentSendFailure_clone(&*owner->contents.err); } - -void __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_CommitmentTransactionDecodeErrorZ _res_conv = *(LDKCResult_CommitmentTransactionDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_CommitmentTransactionDecodeErrorZ_free(_res_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_get_err(uint32_t owner) { + LDKCResult_NonePaymentSendFailureZ* owner_conv = (LDKCResult_NonePaymentSendFailureZ*)(owner & ~1); + LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); + *ret_copy = CResult_NonePaymentSendFailureZ_get_err(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -static inline uint64_t CResult_CommitmentTransactionDecodeErrorZ_clone_ptr(LDKCResult_CommitmentTransactionDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_CommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentTransactionDecodeErrorZ), "LDKCResult_CommitmentTransactionDecodeErrorZ"); - *ret_conv = CResult_CommitmentTransactionDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +static inline struct LDKThirtyTwoBytes C2Tuple_PaymentHashPaymentIdZ_get_a(LDKC2Tuple_PaymentHashPaymentIdZ *NONNULL_PTR owner){ + return ThirtyTwoBytes_clone(&owner->a); } -int64_t __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_CommitmentTransactionDecodeErrorZ* arg_conv = (LDKCResult_CommitmentTransactionDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_CommitmentTransactionDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentIdZ_get_a(uint32_t owner) { + LDKC2Tuple_PaymentHashPaymentIdZ* owner_conv = (LDKC2Tuple_PaymentHashPaymentIdZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, C2Tuple_PaymentHashPaymentIdZ_get_a(owner_conv).data, 32); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_CommitmentTransactionDecodeErrorZ* orig_conv = (LDKCResult_CommitmentTransactionDecodeErrorZ*)(orig & ~1); - LDKCResult_CommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentTransactionDecodeErrorZ), "LDKCResult_CommitmentTransactionDecodeErrorZ"); - *ret_conv = CResult_CommitmentTransactionDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +static inline struct LDKThirtyTwoBytes C2Tuple_PaymentHashPaymentIdZ_get_b(LDKC2Tuple_PaymentHashPaymentIdZ *NONNULL_PTR owner){ + return ThirtyTwoBytes_clone(&owner->b); +} +int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentIdZ_get_b(uint32_t owner) { + LDKC2Tuple_PaymentHashPaymentIdZ* owner_conv = (LDKC2Tuple_PaymentHashPaymentIdZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, C2Tuple_PaymentHashPaymentIdZ_get_b(owner_conv).data, 32); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CResult_TrustedCommitmentTransactionNoneZ_ok(uint32_t o) { - LDKTrustedCommitmentTransaction o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - // Warning: we need a move here but no clone is available for LDKTrustedCommitmentTransaction - LDKCResult_TrustedCommitmentTransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TrustedCommitmentTransactionNoneZ), "LDKCResult_TrustedCommitmentTransactionNoneZ"); - *ret_conv = CResult_TrustedCommitmentTransactionNoneZ_ok(o_conv); - return (uint64_t)ret_conv; +static inline struct LDKC2Tuple_PaymentHashPaymentIdZ CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_get_ok(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return C2Tuple_PaymentHashPaymentIdZ_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_get_ok(uint32_t owner) { + LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* owner_conv = (LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ*)(owner & ~1); + LDKC2Tuple_PaymentHashPaymentIdZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentIdZ), "LDKC2Tuple_PaymentHashPaymentIdZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_get_ok(owner_conv); + return ((uint64_t)ret_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_TrustedCommitmentTransactionNoneZ_err() { - LDKCResult_TrustedCommitmentTransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TrustedCommitmentTransactionNoneZ), "LDKCResult_TrustedCommitmentTransactionNoneZ"); - *ret_conv = CResult_TrustedCommitmentTransactionNoneZ_err(); - return (uint64_t)ret_conv; +static inline struct LDKPaymentSendFailure CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_get_err(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return PaymentSendFailure_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_get_err(uint32_t owner) { + LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* owner_conv = (LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ*)(owner & ~1); + LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); + *ret_copy = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_get_err(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_CResult_TrustedCommitmentTransactionNoneZ_is_ok(uint32_t o) { - LDKCResult_TrustedCommitmentTransactionNoneZ* o_conv = (LDKCResult_TrustedCommitmentTransactionNoneZ*)(o & ~1); - jboolean ret_val = CResult_TrustedCommitmentTransactionNoneZ_is_ok(o_conv); - return ret_val; +static inline struct LDKThirtyTwoBytes C2Tuple_PaymentHashPaymentSecretZ_get_a(LDKC2Tuple_PaymentHashPaymentSecretZ *NONNULL_PTR owner){ + return ThirtyTwoBytes_clone(&owner->a); +} +int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentSecretZ_get_a(uint32_t owner) { + LDKC2Tuple_PaymentHashPaymentSecretZ* owner_conv = (LDKC2Tuple_PaymentHashPaymentSecretZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, C2Tuple_PaymentHashPaymentSecretZ_get_a(owner_conv).data, 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_CResult_TrustedCommitmentTransactionNoneZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_TrustedCommitmentTransactionNoneZ _res_conv = *(LDKCResult_TrustedCommitmentTransactionNoneZ*)(_res_ptr); - FREE((void*)_res); - CResult_TrustedCommitmentTransactionNoneZ_free(_res_conv); +static inline struct LDKThirtyTwoBytes C2Tuple_PaymentHashPaymentSecretZ_get_b(LDKC2Tuple_PaymentHashPaymentSecretZ *NONNULL_PTR owner){ + return ThirtyTwoBytes_clone(&owner->b); +} +int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentSecretZ_get_b(uint32_t owner) { + LDKC2Tuple_PaymentHashPaymentSecretZ* owner_conv = (LDKC2Tuple_PaymentHashPaymentSecretZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, C2Tuple_PaymentHashPaymentSecretZ_get_b(owner_conv).data, 32); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_ok(ptrArray o) { - LDKCVec_SignatureZ o_constr; - o_constr.datalen = *((uint32_t*)o); - if (o_constr.datalen > 0) - o_constr.data = MALLOC(o_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); - else - o_constr.data = NULL; - int8_tArray* o_vals = (int8_tArray*)(o + 4); - for (size_t m = 0; m < o_constr.datalen; m++) { - int8_tArray o_conv_12 = o_vals[m]; - LDKSignature o_conv_12_ref; - CHECK(*((uint32_t*)o_conv_12) == 64); - memcpy(o_conv_12_ref.compact_form, (uint8_t*)(o_conv_12 + 4), 64); - o_constr.data[m] = o_conv_12_ref; - } - LDKCResult_CVec_SignatureZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_SignatureZNoneZ), "LDKCResult_CVec_SignatureZNoneZ"); - *ret_conv = CResult_CVec_SignatureZNoneZ_ok(o_constr); - return (uint64_t)ret_conv; +static inline struct LDKC2Tuple_PaymentHashPaymentSecretZ CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_get_ok(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return C2Tuple_PaymentHashPaymentSecretZ_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_get_ok(uint32_t owner) { + LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* owner_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ*)(owner & ~1); + LDKC2Tuple_PaymentHashPaymentSecretZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentSecretZ), "LDKC2Tuple_PaymentHashPaymentSecretZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_get_ok(owner_conv); + return ((uint64_t)ret_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_err() { - LDKCResult_CVec_SignatureZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_SignatureZNoneZ), "LDKCResult_CVec_SignatureZNoneZ"); - *ret_conv = CResult_CVec_SignatureZNoneZ_err(); - return (uint64_t)ret_conv; +static inline void CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_get_err(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; +} +void __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_get_err(uint32_t owner) { + LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* owner_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ*)(owner & ~1); + CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_get_err(owner_conv); } -jboolean __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_is_ok(uint32_t o) { - LDKCResult_CVec_SignatureZNoneZ* o_conv = (LDKCResult_CVec_SignatureZNoneZ*)(o & ~1); - jboolean ret_val = CResult_CVec_SignatureZNoneZ_is_ok(o_conv); - return ret_val; +static inline struct LDKC2Tuple_PaymentHashPaymentSecretZ CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_get_ok(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return C2Tuple_PaymentHashPaymentSecretZ_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_get_ok(uint32_t owner) { + LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* owner_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ*)(owner & ~1); + LDKC2Tuple_PaymentHashPaymentSecretZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentSecretZ), "LDKC2Tuple_PaymentHashPaymentSecretZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_get_ok(owner_conv); + return ((uint64_t)ret_conv); } -void __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_CVec_SignatureZNoneZ _res_conv = *(LDKCResult_CVec_SignatureZNoneZ*)(_res_ptr); - FREE((void*)_res); - CResult_CVec_SignatureZNoneZ_free(_res_conv); +static inline struct LDKAPIError CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_get_err(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return APIError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_get_err(uint32_t owner) { + LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* owner_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ*)(owner & ~1); + LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); + *ret_copy = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_get_err(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -static inline uint64_t CResult_CVec_SignatureZNoneZ_clone_ptr(LDKCResult_CVec_SignatureZNoneZ *NONNULL_PTR arg) { - LDKCResult_CVec_SignatureZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_SignatureZNoneZ), "LDKCResult_CVec_SignatureZNoneZ"); - *ret_conv = CResult_CVec_SignatureZNoneZ_clone(arg); - return (uint64_t)ret_conv; +static inline struct LDKThirtyTwoBytes CResult_PaymentSecretNoneZ_get_ok(LDKCResult_PaymentSecretNoneZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ThirtyTwoBytes_clone(&*owner->contents.result); } -int64_t __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_clone_ptr(uint32_t arg) { - LDKCResult_CVec_SignatureZNoneZ* arg_conv = (LDKCResult_CVec_SignatureZNoneZ*)(arg & ~1); - int64_t ret_val = CResult_CVec_SignatureZNoneZ_clone_ptr(arg_conv); - return ret_val; +int8_tArray __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_get_ok(uint32_t owner) { + LDKCResult_PaymentSecretNoneZ* owner_conv = (LDKCResult_PaymentSecretNoneZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, CResult_PaymentSecretNoneZ_get_ok(owner_conv).data, 32); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_clone(uint32_t orig) { - LDKCResult_CVec_SignatureZNoneZ* orig_conv = (LDKCResult_CVec_SignatureZNoneZ*)(orig & ~1); - LDKCResult_CVec_SignatureZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_SignatureZNoneZ), "LDKCResult_CVec_SignatureZNoneZ"); - *ret_conv = CResult_CVec_SignatureZNoneZ_clone(orig_conv); - return (uint64_t)ret_conv; +static inline void CResult_PaymentSecretNoneZ_get_err(LDKCResult_PaymentSecretNoneZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; +} +void __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_get_err(uint32_t owner) { + LDKCResult_PaymentSecretNoneZ* owner_conv = (LDKCResult_PaymentSecretNoneZ*)(owner & ~1); + CResult_PaymentSecretNoneZ_get_err(owner_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_ok(uint32_t o) { - LDKShutdownScript o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ShutdownScript_clone(&o_conv); - LDKCResult_ShutdownScriptDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptDecodeErrorZ), "LDKCResult_ShutdownScriptDecodeErrorZ"); - *ret_conv = CResult_ShutdownScriptDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +static inline struct LDKThirtyTwoBytes CResult_PaymentSecretAPIErrorZ_get_ok(LDKCResult_PaymentSecretAPIErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ThirtyTwoBytes_clone(&*owner->contents.result); +} +int8_tArray __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_get_ok(uint32_t owner) { + LDKCResult_PaymentSecretAPIErrorZ* owner_conv = (LDKCResult_PaymentSecretAPIErrorZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, CResult_PaymentSecretAPIErrorZ_get_ok(owner_conv).data, 32); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_ShutdownScriptDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptDecodeErrorZ), "LDKCResult_ShutdownScriptDecodeErrorZ"); - *ret_conv = CResult_ShutdownScriptDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +static inline struct LDKAPIError CResult_PaymentSecretAPIErrorZ_get_err(LDKCResult_PaymentSecretAPIErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return APIError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_get_err(uint32_t owner) { + LDKCResult_PaymentSecretAPIErrorZ* owner_conv = (LDKCResult_PaymentSecretAPIErrorZ*)(owner & ~1); + LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); + *ret_copy = CResult_PaymentSecretAPIErrorZ_get_err(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ShutdownScriptDecodeErrorZ* o_conv = (LDKCResult_ShutdownScriptDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ShutdownScriptDecodeErrorZ_is_ok(o_conv); - return ret_val; +static inline struct LDKThirtyTwoBytes CResult_PaymentPreimageAPIErrorZ_get_ok(LDKCResult_PaymentPreimageAPIErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ThirtyTwoBytes_clone(&*owner->contents.result); +} +int8_tArray __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_get_ok(uint32_t owner) { + LDKCResult_PaymentPreimageAPIErrorZ* owner_conv = (LDKCResult_PaymentPreimageAPIErrorZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, CResult_PaymentPreimageAPIErrorZ_get_ok(owner_conv).data, 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_ShutdownScriptDecodeErrorZ _res_conv = *(LDKCResult_ShutdownScriptDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_ShutdownScriptDecodeErrorZ_free(_res_conv); +static inline struct LDKAPIError CResult_PaymentPreimageAPIErrorZ_get_err(LDKCResult_PaymentPreimageAPIErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return APIError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_get_err(uint32_t owner) { + LDKCResult_PaymentPreimageAPIErrorZ* owner_conv = (LDKCResult_PaymentPreimageAPIErrorZ*)(owner & ~1); + LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); + *ret_copy = CResult_PaymentPreimageAPIErrorZ_get_err(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -static inline uint64_t CResult_ShutdownScriptDecodeErrorZ_clone_ptr(LDKCResult_ShutdownScriptDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ShutdownScriptDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptDecodeErrorZ), "LDKCResult_ShutdownScriptDecodeErrorZ"); - *ret_conv = CResult_ShutdownScriptDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +static inline LDKCVec_ChannelMonitorZ CVec_ChannelMonitorZ_clone(const LDKCVec_ChannelMonitorZ *orig) { + LDKCVec_ChannelMonitorZ ret = { .data = MALLOC(sizeof(LDKChannelMonitor) * orig->datalen, "LDKCVec_ChannelMonitorZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = ChannelMonitor_clone(&orig->data[i]); + } + return ret; } -int64_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ShutdownScriptDecodeErrorZ* arg_conv = (LDKCResult_ShutdownScriptDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ShutdownScriptDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +typedef struct LDKWatch_JCalls { + atomic_size_t refcnt; + uint32_t watch_channel_meth; + uint32_t update_channel_meth; + uint32_t release_pending_monitor_events_meth; +} LDKWatch_JCalls; +static void LDKWatch_JCalls_free(void* this_arg) { + LDKWatch_JCalls *j_calls = (LDKWatch_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->watch_channel_meth); + js_free_function_ptr(j_calls->update_channel_meth); + js_free_function_ptr(j_calls->release_pending_monitor_events_meth); + FREE(j_calls); + } +} +LDKCResult_NoneChannelMonitorUpdateErrZ watch_channel_LDKWatch_jcall(const void* this_arg, LDKOutPoint funding_txo, LDKChannelMonitor monitor) { + LDKWatch_JCalls *j_calls = (LDKWatch_JCalls*) this_arg; + LDKOutPoint funding_txo_var = funding_txo; + uint64_t funding_txo_ref = 0; + CHECK((((uint64_t)funding_txo_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&funding_txo_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_var); + funding_txo_ref = (uint64_t)funding_txo_var.inner; + if (funding_txo_var.is_owned) { + funding_txo_ref |= 1; + } + LDKChannelMonitor monitor_var = monitor; + uint64_t monitor_ref = 0; + CHECK((((uint64_t)monitor_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&monitor_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(monitor_var); + monitor_ref = (uint64_t)monitor_var.inner; + if (monitor_var.is_owned) { + monitor_ref |= 1; + } + uint32_t ret = js_invoke_function_2(j_calls->watch_channel_meth, (uint32_t)funding_txo_ref, (uint32_t)monitor_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_NoneChannelMonitorUpdateErrZ ret_conv = *(LDKCResult_NoneChannelMonitorUpdateErrZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; +} +LDKCResult_NoneChannelMonitorUpdateErrZ update_channel_LDKWatch_jcall(const void* this_arg, LDKOutPoint funding_txo, LDKChannelMonitorUpdate update) { + LDKWatch_JCalls *j_calls = (LDKWatch_JCalls*) this_arg; + LDKOutPoint funding_txo_var = funding_txo; + uint64_t funding_txo_ref = 0; + CHECK((((uint64_t)funding_txo_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&funding_txo_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_var); + funding_txo_ref = (uint64_t)funding_txo_var.inner; + if (funding_txo_var.is_owned) { + funding_txo_ref |= 1; + } + LDKChannelMonitorUpdate update_var = update; + uint64_t update_ref = 0; + CHECK((((uint64_t)update_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&update_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_var); + update_ref = (uint64_t)update_var.inner; + if (update_var.is_owned) { + update_ref |= 1; + } + uint32_t ret = js_invoke_function_2(j_calls->update_channel_meth, (uint32_t)funding_txo_ref, (uint32_t)update_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_NoneChannelMonitorUpdateErrZ ret_conv = *(LDKCResult_NoneChannelMonitorUpdateErrZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; +} +LDKCVec_MonitorEventZ release_pending_monitor_events_LDKWatch_jcall(const void* this_arg) { + LDKWatch_JCalls *j_calls = (LDKWatch_JCalls*) this_arg; + uint32_tArray ret = (uint32_tArray)js_invoke_function_0(j_calls->release_pending_monitor_events_meth); + LDKCVec_MonitorEventZ ret_constr; + ret_constr.datalen = ret->arr_len; + if (ret_constr.datalen > 0) + ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKMonitorEvent), "LDKCVec_MonitorEventZ Elements"); + else + ret_constr.data = NULL; + uint32_t* ret_vals = ret->elems; + for (size_t o = 0; o < ret_constr.datalen; o++) { + uint32_t ret_conv_14 = ret_vals[o]; + void* ret_conv_14_ptr = (void*)(((uint64_t)ret_conv_14) & ~1); + CHECK_ACCESS(ret_conv_14_ptr); + LDKMonitorEvent ret_conv_14_conv = *(LDKMonitorEvent*)(ret_conv_14_ptr); + FREE((void*)ret_conv_14); + ret_constr.data[o] = ret_conv_14_conv; + } + return ret_constr; +} +static void LDKWatch_JCalls_cloned(LDKWatch* new_obj) { + LDKWatch_JCalls *j_calls = (LDKWatch_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); +} +static inline LDKWatch LDKWatch_init (/*TODO: JS Object Reference */void* o) { + LDKWatch_JCalls *calls = MALLOC(sizeof(LDKWatch_JCalls), "LDKWatch_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o + + LDKWatch ret = { + .this_arg = (void*) calls, + .watch_channel = watch_channel_LDKWatch_jcall, + .update_channel = update_channel_LDKWatch_jcall, + .release_pending_monitor_events = release_pending_monitor_events_LDKWatch_jcall, + .free = LDKWatch_JCalls_free, + }; + return ret; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ShutdownScriptDecodeErrorZ* orig_conv = (LDKCResult_ShutdownScriptDecodeErrorZ*)(orig & ~1); - LDKCResult_ShutdownScriptDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptDecodeErrorZ), "LDKCResult_ShutdownScriptDecodeErrorZ"); - *ret_conv = CResult_ShutdownScriptDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +long __attribute__((visibility("default"))) TS_LDKWatch_new(/*TODO: JS Object Reference */void* o) { + LDKWatch *res_ptr = MALLOC(sizeof(LDKWatch), "LDKWatch"); + *res_ptr = LDKWatch_init(o); + return (long)res_ptr; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_ok(uint32_t o) { - LDKShutdownScript o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ShutdownScript_clone(&o_conv); - LDKCResult_ShutdownScriptInvalidShutdownScriptZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptInvalidShutdownScriptZ), "LDKCResult_ShutdownScriptInvalidShutdownScriptZ"); - *ret_conv = CResult_ShutdownScriptInvalidShutdownScriptZ_ok(o_conv); +uint32_t __attribute__((visibility("default"))) TS_Watch_watch_channel(uint32_t this_arg, uint32_t funding_txo, uint32_t monitor) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKWatch* this_arg_conv = (LDKWatch*)this_arg_ptr; + LDKOutPoint funding_txo_conv; + funding_txo_conv.inner = (void*)(funding_txo & (~1)); + funding_txo_conv.is_owned = (funding_txo & 1) || (funding_txo == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_conv); + funding_txo_conv = OutPoint_clone(&funding_txo_conv); + LDKChannelMonitor monitor_conv; + monitor_conv.inner = (void*)(monitor & (~1)); + monitor_conv.is_owned = (monitor & 1) || (monitor == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(monitor_conv); + monitor_conv = ChannelMonitor_clone(&monitor_conv); + LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); + *ret_conv = (this_arg_conv->watch_channel)(this_arg_conv->this_arg, funding_txo_conv, monitor_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_err(uint32_t e) { - LDKInvalidShutdownScript e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = InvalidShutdownScript_clone(&e_conv); - LDKCResult_ShutdownScriptInvalidShutdownScriptZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptInvalidShutdownScriptZ), "LDKCResult_ShutdownScriptInvalidShutdownScriptZ"); - *ret_conv = CResult_ShutdownScriptInvalidShutdownScriptZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_Watch_update_channel(uint32_t this_arg, uint32_t funding_txo, uint32_t update) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKWatch* this_arg_conv = (LDKWatch*)this_arg_ptr; + LDKOutPoint funding_txo_conv; + funding_txo_conv.inner = (void*)(funding_txo & (~1)); + funding_txo_conv.is_owned = (funding_txo & 1) || (funding_txo == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_conv); + funding_txo_conv = OutPoint_clone(&funding_txo_conv); + LDKChannelMonitorUpdate update_conv; + update_conv.inner = (void*)(update & (~1)); + update_conv.is_owned = (update & 1) || (update == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_conv); + update_conv = ChannelMonitorUpdate_clone(&update_conv); + LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); + *ret_conv = (this_arg_conv->update_channel)(this_arg_conv->this_arg, funding_txo_conv, update_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_is_ok(uint32_t o) { - LDKCResult_ShutdownScriptInvalidShutdownScriptZ* o_conv = (LDKCResult_ShutdownScriptInvalidShutdownScriptZ*)(o & ~1); - jboolean ret_val = CResult_ShutdownScriptInvalidShutdownScriptZ_is_ok(o_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_ShutdownScriptInvalidShutdownScriptZ _res_conv = *(LDKCResult_ShutdownScriptInvalidShutdownScriptZ*)(_res_ptr); - FREE((void*)_res); - CResult_ShutdownScriptInvalidShutdownScriptZ_free(_res_conv); +uint32_tArray __attribute__((visibility("default"))) TS_Watch_release_pending_monitor_events(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKWatch* this_arg_conv = (LDKWatch*)this_arg_ptr; + LDKCVec_MonitorEventZ ret_var = (this_arg_conv->release_pending_monitor_events)(this_arg_conv->this_arg); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t o = 0; o < ret_var.datalen; o++) { + LDKMonitorEvent *ret_conv_14_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); + *ret_conv_14_copy = ret_var.data[o]; + uint64_t ret_conv_14_ref = (uint64_t)ret_conv_14_copy; + ret_arr_ptr[o] = ret_conv_14_ref; + } + + FREE(ret_var.data); + return ret_arr; } -static inline uint64_t CResult_ShutdownScriptInvalidShutdownScriptZ_clone_ptr(LDKCResult_ShutdownScriptInvalidShutdownScriptZ *NONNULL_PTR arg) { - LDKCResult_ShutdownScriptInvalidShutdownScriptZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptInvalidShutdownScriptZ), "LDKCResult_ShutdownScriptInvalidShutdownScriptZ"); - *ret_conv = CResult_ShutdownScriptInvalidShutdownScriptZ_clone(arg); - return (uint64_t)ret_conv; +typedef struct LDKBroadcasterInterface_JCalls { + atomic_size_t refcnt; + uint32_t broadcast_transaction_meth; +} LDKBroadcasterInterface_JCalls; +static void LDKBroadcasterInterface_JCalls_free(void* this_arg) { + LDKBroadcasterInterface_JCalls *j_calls = (LDKBroadcasterInterface_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->broadcast_transaction_meth); + FREE(j_calls); + } } -int64_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_clone_ptr(uint32_t arg) { - LDKCResult_ShutdownScriptInvalidShutdownScriptZ* arg_conv = (LDKCResult_ShutdownScriptInvalidShutdownScriptZ*)(arg & ~1); - int64_t ret_val = CResult_ShutdownScriptInvalidShutdownScriptZ_clone_ptr(arg_conv); - return ret_val; +void broadcast_transaction_LDKBroadcasterInterface_jcall(const void* this_arg, LDKTransaction tx) { + LDKBroadcasterInterface_JCalls *j_calls = (LDKBroadcasterInterface_JCalls*) this_arg; + LDKTransaction tx_var = tx; + int8_tArray tx_arr = init_int8_tArray(tx_var.datalen); + memcpy(tx_arr->elems, tx_var.data, tx_var.datalen); + Transaction_free(tx_var); + js_invoke_function_1(j_calls->broadcast_transaction_meth, (uint32_t)tx_arr); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_clone(uint32_t orig) { - LDKCResult_ShutdownScriptInvalidShutdownScriptZ* orig_conv = (LDKCResult_ShutdownScriptInvalidShutdownScriptZ*)(orig & ~1); - LDKCResult_ShutdownScriptInvalidShutdownScriptZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptInvalidShutdownScriptZ), "LDKCResult_ShutdownScriptInvalidShutdownScriptZ"); - *ret_conv = CResult_ShutdownScriptInvalidShutdownScriptZ_clone(orig_conv); - return (uint64_t)ret_conv; +static void LDKBroadcasterInterface_JCalls_cloned(LDKBroadcasterInterface* new_obj) { + LDKBroadcasterInterface_JCalls *j_calls = (LDKBroadcasterInterface_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKBroadcasterInterface LDKBroadcasterInterface_init (/*TODO: JS Object Reference */void* o) { + LDKBroadcasterInterface_JCalls *calls = MALLOC(sizeof(LDKBroadcasterInterface_JCalls), "LDKBroadcasterInterface_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneErrorZ_ok() { - LDKCResult_NoneErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneErrorZ), "LDKCResult_NoneErrorZ"); - *ret_conv = CResult_NoneErrorZ_ok(); - return (uint64_t)ret_conv; + LDKBroadcasterInterface ret = { + .this_arg = (void*) calls, + .broadcast_transaction = broadcast_transaction_LDKBroadcasterInterface_jcall, + .free = LDKBroadcasterInterface_JCalls_free, + }; + return ret; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneErrorZ_err(uint32_t e) { - LDKIOError e_conv = LDKIOError_from_js(e); - LDKCResult_NoneErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneErrorZ), "LDKCResult_NoneErrorZ"); - *ret_conv = CResult_NoneErrorZ_err(e_conv); - return (uint64_t)ret_conv; +long __attribute__((visibility("default"))) TS_LDKBroadcasterInterface_new(/*TODO: JS Object Reference */void* o) { + LDKBroadcasterInterface *res_ptr = MALLOC(sizeof(LDKBroadcasterInterface), "LDKBroadcasterInterface"); + *res_ptr = LDKBroadcasterInterface_init(o); + return (long)res_ptr; } - -jboolean __attribute__((visibility("default"))) TS_CResult_NoneErrorZ_is_ok(uint32_t o) { - LDKCResult_NoneErrorZ* o_conv = (LDKCResult_NoneErrorZ*)(o & ~1); - jboolean ret_val = CResult_NoneErrorZ_is_ok(o_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_BroadcasterInterface_broadcast_transaction(uint32_t this_arg, int8_tArray tx) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKBroadcasterInterface* this_arg_conv = (LDKBroadcasterInterface*)this_arg_ptr; + LDKTransaction tx_ref; + tx_ref.datalen = tx->arr_len; + tx_ref.data = MALLOC(tx_ref.datalen, "LDKTransaction Bytes"); + memcpy(tx_ref.data, tx->elems, tx_ref.datalen); + tx_ref.data_is_owned = true; + (this_arg_conv->broadcast_transaction)(this_arg_conv->this_arg, tx_ref); } -void __attribute__((visibility("default"))) TS_CResult_NoneErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_NoneErrorZ _res_conv = *(LDKCResult_NoneErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_NoneErrorZ_free(_res_conv); +typedef struct LDKKeysInterface_JCalls { + atomic_size_t refcnt; + uint32_t get_node_secret_meth; + uint32_t get_destination_script_meth; + uint32_t get_shutdown_scriptpubkey_meth; + uint32_t get_channel_signer_meth; + uint32_t get_secure_random_bytes_meth; + uint32_t read_chan_signer_meth; + uint32_t sign_invoice_meth; + uint32_t get_inbound_payment_key_material_meth; +} LDKKeysInterface_JCalls; +static void LDKKeysInterface_JCalls_free(void* this_arg) { + LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->get_node_secret_meth); + js_free_function_ptr(j_calls->get_destination_script_meth); + js_free_function_ptr(j_calls->get_shutdown_scriptpubkey_meth); + js_free_function_ptr(j_calls->get_channel_signer_meth); + js_free_function_ptr(j_calls->get_secure_random_bytes_meth); + js_free_function_ptr(j_calls->read_chan_signer_meth); + js_free_function_ptr(j_calls->sign_invoice_meth); + js_free_function_ptr(j_calls->get_inbound_payment_key_material_meth); + FREE(j_calls); + } } - -static inline uint64_t CResult_NoneErrorZ_clone_ptr(LDKCResult_NoneErrorZ *NONNULL_PTR arg) { - LDKCResult_NoneErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneErrorZ), "LDKCResult_NoneErrorZ"); - *ret_conv = CResult_NoneErrorZ_clone(arg); - return (uint64_t)ret_conv; +LDKSecretKey get_node_secret_LDKKeysInterface_jcall(const void* this_arg) { + LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; + int8_tArray ret = (int8_tArray)js_invoke_function_0(j_calls->get_node_secret_meth); + LDKSecretKey ret_ref; + CHECK(ret->arr_len == 32); + memcpy(ret_ref.bytes, ret->elems, 32); + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_CResult_NoneErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_NoneErrorZ* arg_conv = (LDKCResult_NoneErrorZ*)(arg & ~1); - int64_t ret_val = CResult_NoneErrorZ_clone_ptr(arg_conv); - return ret_val; +LDKCVec_u8Z get_destination_script_LDKKeysInterface_jcall(const void* this_arg) { + LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; + int8_tArray ret = (int8_tArray)js_invoke_function_0(j_calls->get_destination_script_meth); + LDKCVec_u8Z ret_ref; + ret_ref.datalen = ret->arr_len; + ret_ref.data = MALLOC(ret_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(ret_ref.data, ret->elems, ret_ref.datalen); + return ret_ref; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneErrorZ_clone(uint32_t orig) { - LDKCResult_NoneErrorZ* orig_conv = (LDKCResult_NoneErrorZ*)(orig & ~1); - LDKCResult_NoneErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneErrorZ), "LDKCResult_NoneErrorZ"); - *ret_conv = CResult_NoneErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +LDKShutdownScript get_shutdown_scriptpubkey_LDKKeysInterface_jcall(const void* this_arg) { + LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; + uint32_t ret = js_invoke_function_0(j_calls->get_shutdown_scriptpubkey_meth); + LDKShutdownScript ret_conv; + ret_conv.inner = (void*)(ret & (~1)); + ret_conv.is_owned = (ret & 1) || (ret == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv); + return ret_conv; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_ok(uint32_t o) { - LDKRouteHop o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = RouteHop_clone(&o_conv); - LDKCResult_RouteHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHopDecodeErrorZ), "LDKCResult_RouteHopDecodeErrorZ"); - *ret_conv = CResult_RouteHopDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +LDKSign get_channel_signer_LDKKeysInterface_jcall(const void* this_arg, bool inbound, uint64_t channel_value_satoshis) { + LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; + uint32_t ret = js_invoke_function_2(j_calls->get_channel_signer_meth, (uint32_t)inbound, (uint32_t)channel_value_satoshis); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKSign ret_conv = *(LDKSign*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_RouteHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHopDecodeErrorZ), "LDKCResult_RouteHopDecodeErrorZ"); - *ret_conv = CResult_RouteHopDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +LDKThirtyTwoBytes get_secure_random_bytes_LDKKeysInterface_jcall(const void* this_arg) { + LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; + int8_tArray ret = (int8_tArray)js_invoke_function_0(j_calls->get_secure_random_bytes_meth); + LDKThirtyTwoBytes ret_ref; + CHECK(ret->arr_len == 32); + memcpy(ret_ref.data, ret->elems, 32); + return ret_ref; } - -jboolean __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_RouteHopDecodeErrorZ* o_conv = (LDKCResult_RouteHopDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_RouteHopDecodeErrorZ_is_ok(o_conv); - return ret_val; +LDKCResult_SignDecodeErrorZ read_chan_signer_LDKKeysInterface_jcall(const void* this_arg, LDKu8slice reader) { + LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; + LDKu8slice reader_var = reader; + int8_tArray reader_arr = init_int8_tArray(reader_var.datalen); + memcpy(reader_arr->elems, reader_var.data, reader_var.datalen); + uint32_t ret = js_invoke_function_1(j_calls->read_chan_signer_meth, (uint32_t)reader_arr); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_SignDecodeErrorZ ret_conv = *(LDKCResult_SignDecodeErrorZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } - -void __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_RouteHopDecodeErrorZ _res_conv = *(LDKCResult_RouteHopDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_RouteHopDecodeErrorZ_free(_res_conv); +LDKCResult_RecoverableSignatureNoneZ sign_invoice_LDKKeysInterface_jcall(const void* this_arg, LDKCVec_u8Z invoice_preimage) { + LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; + LDKCVec_u8Z invoice_preimage_var = invoice_preimage; + int8_tArray invoice_preimage_arr = init_int8_tArray(invoice_preimage_var.datalen); + memcpy(invoice_preimage_arr->elems, invoice_preimage_var.data, invoice_preimage_var.datalen); + CVec_u8Z_free(invoice_preimage_var); + uint32_t ret = js_invoke_function_1(j_calls->sign_invoice_meth, (uint32_t)invoice_preimage_arr); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_RecoverableSignatureNoneZ ret_conv = *(LDKCResult_RecoverableSignatureNoneZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } - -static inline uint64_t CResult_RouteHopDecodeErrorZ_clone_ptr(LDKCResult_RouteHopDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_RouteHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHopDecodeErrorZ), "LDKCResult_RouteHopDecodeErrorZ"); - *ret_conv = CResult_RouteHopDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +LDKThirtyTwoBytes get_inbound_payment_key_material_LDKKeysInterface_jcall(const void* this_arg) { + LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; + int8_tArray ret = (int8_tArray)js_invoke_function_0(j_calls->get_inbound_payment_key_material_meth); + LDKThirtyTwoBytes ret_ref; + CHECK(ret->arr_len == 32); + memcpy(ret_ref.data, ret->elems, 32); + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_RouteHopDecodeErrorZ* arg_conv = (LDKCResult_RouteHopDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_RouteHopDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +static void LDKKeysInterface_JCalls_cloned(LDKKeysInterface* new_obj) { + LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKKeysInterface LDKKeysInterface_init (/*TODO: JS Object Reference */void* o) { + LDKKeysInterface_JCalls *calls = MALLOC(sizeof(LDKKeysInterface_JCalls), "LDKKeysInterface_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_RouteHopDecodeErrorZ* orig_conv = (LDKCResult_RouteHopDecodeErrorZ*)(orig & ~1); - LDKCResult_RouteHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHopDecodeErrorZ), "LDKCResult_RouteHopDecodeErrorZ"); - *ret_conv = CResult_RouteHopDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; + LDKKeysInterface ret = { + .this_arg = (void*) calls, + .get_node_secret = get_node_secret_LDKKeysInterface_jcall, + .get_destination_script = get_destination_script_LDKKeysInterface_jcall, + .get_shutdown_scriptpubkey = get_shutdown_scriptpubkey_LDKKeysInterface_jcall, + .get_channel_signer = get_channel_signer_LDKKeysInterface_jcall, + .get_secure_random_bytes = get_secure_random_bytes_LDKKeysInterface_jcall, + .read_chan_signer = read_chan_signer_LDKKeysInterface_jcall, + .sign_invoice = sign_invoice_LDKKeysInterface_jcall, + .get_inbound_payment_key_material = get_inbound_payment_key_material_LDKKeysInterface_jcall, + .free = LDKKeysInterface_JCalls_free, + }; + return ret; } - -void __attribute__((visibility("default"))) TS_CVec_RouteHopZ_free(uint32_tArray _res) { - LDKCVec_RouteHopZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t k = 0; k < _res_constr.datalen; k++) { - uint32_t _res_conv_10 = _res_vals[k]; - LDKRouteHop _res_conv_10_conv; - _res_conv_10_conv.inner = (void*)(_res_conv_10 & (~1)); - _res_conv_10_conv.is_owned = (_res_conv_10 & 1) || (_res_conv_10 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_10_conv); - _res_constr.data[k] = _res_conv_10_conv; - } - CVec_RouteHopZ_free(_res_constr); +long __attribute__((visibility("default"))) TS_LDKKeysInterface_new(/*TODO: JS Object Reference */void* o) { + LDKKeysInterface *res_ptr = MALLOC(sizeof(LDKKeysInterface), "LDKKeysInterface"); + *res_ptr = LDKKeysInterface_init(o); + return (long)res_ptr; } - -void __attribute__((visibility("default"))) TS_CVec_CVec_RouteHopZZ_free(ptrArray _res) { - LDKCVec_CVec_RouteHopZZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKCVec_RouteHopZ), "LDKCVec_CVec_RouteHopZZ Elements"); - else - _res_constr.data = NULL; - uint32_tArray* _res_vals = (uint32_tArray*)(_res + 4); - for (size_t m = 0; m < _res_constr.datalen; m++) { - uint32_tArray _res_conv_12 = _res_vals[m]; - LDKCVec_RouteHopZ _res_conv_12_constr; - _res_conv_12_constr.datalen = *((uint32_t*)_res_conv_12); - if (_res_conv_12_constr.datalen > 0) - _res_conv_12_constr.data = MALLOC(_res_conv_12_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); - else - _res_conv_12_constr.data = NULL; - uint32_t* _res_conv_12_vals = (uint32_t*)(_res_conv_12 + 4); - for (size_t k = 0; k < _res_conv_12_constr.datalen; k++) { - uint32_t _res_conv_12_conv_10 = _res_conv_12_vals[k]; - LDKRouteHop _res_conv_12_conv_10_conv; - _res_conv_12_conv_10_conv.inner = (void*)(_res_conv_12_conv_10 & (~1)); - _res_conv_12_conv_10_conv.is_owned = (_res_conv_12_conv_10 & 1) || (_res_conv_12_conv_10 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_12_conv_10_conv); - _res_conv_12_constr.data[k] = _res_conv_12_conv_10_conv; - } - _res_constr.data[m] = _res_conv_12_constr; - } - CVec_CVec_RouteHopZZ_free(_res_constr); +int8_tArray __attribute__((visibility("default"))) TS_KeysInterface_get_node_secret(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, (this_arg_conv->get_node_secret)(this_arg_conv->this_arg).bytes, 32); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_ok(uint32_t o) { - LDKRoute o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = Route_clone(&o_conv); - LDKCResult_RouteDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteDecodeErrorZ), "LDKCResult_RouteDecodeErrorZ"); - *ret_conv = CResult_RouteDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +int8_tArray __attribute__((visibility("default"))) TS_KeysInterface_get_destination_script(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; + LDKCVec_u8Z ret_var = (this_arg_conv->get_destination_script)(this_arg_conv->this_arg); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_RouteDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteDecodeErrorZ), "LDKCResult_RouteDecodeErrorZ"); - *ret_conv = CResult_RouteDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_KeysInterface_get_shutdown_scriptpubkey(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; + LDKShutdownScript ret_var = (this_arg_conv->get_shutdown_scriptpubkey)(this_arg_conv->this_arg); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_RouteDecodeErrorZ* o_conv = (LDKCResult_RouteDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_RouteDecodeErrorZ_is_ok(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_KeysInterface_get_channel_signer(uint32_t this_arg, jboolean inbound, int64_t channel_value_satoshis) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; + LDKSign* ret_ret = MALLOC(sizeof(LDKSign), "LDKSign"); + *ret_ret = (this_arg_conv->get_channel_signer)(this_arg_conv->this_arg, inbound, channel_value_satoshis); + return (uint64_t)ret_ret; } -void __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_RouteDecodeErrorZ _res_conv = *(LDKCResult_RouteDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_RouteDecodeErrorZ_free(_res_conv); +int8_tArray __attribute__((visibility("default"))) TS_KeysInterface_get_secure_random_bytes(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, (this_arg_conv->get_secure_random_bytes)(this_arg_conv->this_arg).data, 32); + return ret_arr; } -static inline uint64_t CResult_RouteDecodeErrorZ_clone_ptr(LDKCResult_RouteDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_RouteDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteDecodeErrorZ), "LDKCResult_RouteDecodeErrorZ"); - *ret_conv = CResult_RouteDecodeErrorZ_clone(arg); +uint32_t __attribute__((visibility("default"))) TS_KeysInterface_read_chan_signer(uint32_t this_arg, int8_tArray reader) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; + LDKu8slice reader_ref; + reader_ref.datalen = reader->arr_len; + reader_ref.data = reader->elems; + LDKCResult_SignDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SignDecodeErrorZ), "LDKCResult_SignDecodeErrorZ"); + *ret_conv = (this_arg_conv->read_chan_signer)(this_arg_conv->this_arg, reader_ref); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_RouteDecodeErrorZ* arg_conv = (LDKCResult_RouteDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_RouteDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; -} -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_RouteDecodeErrorZ* orig_conv = (LDKCResult_RouteDecodeErrorZ*)(orig & ~1); - LDKCResult_RouteDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteDecodeErrorZ), "LDKCResult_RouteDecodeErrorZ"); - *ret_conv = CResult_RouteDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_KeysInterface_sign_invoice(uint32_t this_arg, int8_tArray invoice_preimage) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; + LDKCVec_u8Z invoice_preimage_ref; + invoice_preimage_ref.datalen = invoice_preimage->arr_len; + invoice_preimage_ref.data = MALLOC(invoice_preimage_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(invoice_preimage_ref.data, invoice_preimage->elems, invoice_preimage_ref.datalen); + LDKCResult_RecoverableSignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_RecoverableSignatureNoneZ), "LDKCResult_RecoverableSignatureNoneZ"); + *ret_conv = (this_arg_conv->sign_invoice)(this_arg_conv->this_arg, invoice_preimage_ref); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_ok(uint32_t o) { - LDKRouteParameters o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = RouteParameters_clone(&o_conv); - LDKCResult_RouteParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteParametersDecodeErrorZ), "LDKCResult_RouteParametersDecodeErrorZ"); - *ret_conv = CResult_RouteParametersDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +int8_tArray __attribute__((visibility("default"))) TS_KeysInterface_get_inbound_payment_key_material(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, (this_arg_conv->get_inbound_payment_key_material)(this_arg_conv->this_arg).data, 32); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_RouteParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteParametersDecodeErrorZ), "LDKCResult_RouteParametersDecodeErrorZ"); - *ret_conv = CResult_RouteParametersDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +typedef struct LDKFeeEstimator_JCalls { + atomic_size_t refcnt; + uint32_t get_est_sat_per_1000_weight_meth; +} LDKFeeEstimator_JCalls; +static void LDKFeeEstimator_JCalls_free(void* this_arg) { + LDKFeeEstimator_JCalls *j_calls = (LDKFeeEstimator_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->get_est_sat_per_1000_weight_meth); + FREE(j_calls); + } } - -jboolean __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_RouteParametersDecodeErrorZ* o_conv = (LDKCResult_RouteParametersDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_RouteParametersDecodeErrorZ_is_ok(o_conv); - return ret_val; +uint32_t get_est_sat_per_1000_weight_LDKFeeEstimator_jcall(const void* this_arg, LDKConfirmationTarget confirmation_target) { + LDKFeeEstimator_JCalls *j_calls = (LDKFeeEstimator_JCalls*) this_arg; + uint32_t confirmation_target_conv = LDKConfirmationTarget_to_js(confirmation_target); + return js_invoke_function_1(j_calls->get_est_sat_per_1000_weight_meth, (uint32_t)confirmation_target_conv); } - -void __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_RouteParametersDecodeErrorZ _res_conv = *(LDKCResult_RouteParametersDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_RouteParametersDecodeErrorZ_free(_res_conv); +static void LDKFeeEstimator_JCalls_cloned(LDKFeeEstimator* new_obj) { + LDKFeeEstimator_JCalls *j_calls = (LDKFeeEstimator_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKFeeEstimator LDKFeeEstimator_init (/*TODO: JS Object Reference */void* o) { + LDKFeeEstimator_JCalls *calls = MALLOC(sizeof(LDKFeeEstimator_JCalls), "LDKFeeEstimator_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -static inline uint64_t CResult_RouteParametersDecodeErrorZ_clone_ptr(LDKCResult_RouteParametersDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_RouteParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteParametersDecodeErrorZ), "LDKCResult_RouteParametersDecodeErrorZ"); - *ret_conv = CResult_RouteParametersDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; + LDKFeeEstimator ret = { + .this_arg = (void*) calls, + .get_est_sat_per_1000_weight = get_est_sat_per_1000_weight_LDKFeeEstimator_jcall, + .free = LDKFeeEstimator_JCalls_free, + }; + return ret; } -int64_t __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_RouteParametersDecodeErrorZ* arg_conv = (LDKCResult_RouteParametersDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_RouteParametersDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +long __attribute__((visibility("default"))) TS_LDKFeeEstimator_new(/*TODO: JS Object Reference */void* o) { + LDKFeeEstimator *res_ptr = MALLOC(sizeof(LDKFeeEstimator), "LDKFeeEstimator"); + *res_ptr = LDKFeeEstimator_init(o); + return (long)res_ptr; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_RouteParametersDecodeErrorZ* orig_conv = (LDKCResult_RouteParametersDecodeErrorZ*)(orig & ~1); - LDKCResult_RouteParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteParametersDecodeErrorZ), "LDKCResult_RouteParametersDecodeErrorZ"); - *ret_conv = CResult_RouteParametersDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +int32_t __attribute__((visibility("default"))) TS_FeeEstimator_get_est_sat_per_1000_weight(uint32_t this_arg, uint32_t confirmation_target) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKFeeEstimator* this_arg_conv = (LDKFeeEstimator*)this_arg_ptr; + LDKConfirmationTarget confirmation_target_conv = LDKConfirmationTarget_from_js(confirmation_target); + int32_t ret_val = (this_arg_conv->get_est_sat_per_1000_weight)(this_arg_conv->this_arg, confirmation_target_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_CVec_RouteHintZ_free(uint32_tArray _res) { - LDKCVec_RouteHintZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKRouteHint), "LDKCVec_RouteHintZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t l = 0; l < _res_constr.datalen; l++) { - uint32_t _res_conv_11 = _res_vals[l]; - LDKRouteHint _res_conv_11_conv; - _res_conv_11_conv.inner = (void*)(_res_conv_11 & (~1)); - _res_conv_11_conv.is_owned = (_res_conv_11 & 1) || (_res_conv_11 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_11_conv); - _res_constr.data[l] = _res_conv_11_conv; +typedef struct LDKLogger_JCalls { + atomic_size_t refcnt; + uint32_t log_meth; +} LDKLogger_JCalls; +static void LDKLogger_JCalls_free(void* this_arg) { + LDKLogger_JCalls *j_calls = (LDKLogger_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->log_meth); + FREE(j_calls); } - CVec_RouteHintZ_free(_res_constr); } - -uint32_t __attribute__((visibility("default"))) TS_COption_u64Z_some(int64_t o) { - LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *ret_copy = COption_u64Z_some(o); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void log_LDKLogger_jcall(const void* this_arg, const LDKRecord * record) { + LDKLogger_JCalls *j_calls = (LDKLogger_JCalls*) this_arg; + LDKRecord record_var = *record; + uint64_t record_ref = 0; + record_var = Record_clone(record); + CHECK((((uint64_t)record_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&record_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(record_var); + record_ref = (uint64_t)record_var.inner; + if (record_var.is_owned) { + record_ref |= 1; + } + js_invoke_function_1(j_calls->log_meth, (uint32_t)record_ref); } - -uint32_t __attribute__((visibility("default"))) TS_COption_u64Z_none() { - LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *ret_copy = COption_u64Z_none(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +static void LDKLogger_JCalls_cloned(LDKLogger* new_obj) { + LDKLogger_JCalls *j_calls = (LDKLogger_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKLogger LDKLogger_init (/*TODO: JS Object Reference */void* o) { + LDKLogger_JCalls *calls = MALLOC(sizeof(LDKLogger_JCalls), "LDKLogger_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -void __attribute__((visibility("default"))) TS_COption_u64Z_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCOption_u64Z _res_conv = *(LDKCOption_u64Z*)(_res_ptr); - FREE((void*)_res); - COption_u64Z_free(_res_conv); + LDKLogger ret = { + .this_arg = (void*) calls, + .log = log_LDKLogger_jcall, + .free = LDKLogger_JCalls_free, + }; + return ret; } - -static inline uint64_t COption_u64Z_clone_ptr(LDKCOption_u64Z *NONNULL_PTR arg) { - LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *ret_copy = COption_u64Z_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +long __attribute__((visibility("default"))) TS_LDKLogger_new(/*TODO: JS Object Reference */void* o) { + LDKLogger *res_ptr = MALLOC(sizeof(LDKLogger), "LDKLogger"); + *res_ptr = LDKLogger_init(o); + return (long)res_ptr; } -int64_t __attribute__((visibility("default"))) TS_COption_u64Z_clone_ptr(uint32_t arg) { - LDKCOption_u64Z* arg_conv = (LDKCOption_u64Z*)arg; - int64_t ret_val = COption_u64Z_clone_ptr(arg_conv); - return ret_val; +static inline struct LDKThirtyTwoBytes C2Tuple_BlockHashChannelManagerZ_get_a(LDKC2Tuple_BlockHashChannelManagerZ *NONNULL_PTR owner){ + return ThirtyTwoBytes_clone(&owner->a); } - -uint32_t __attribute__((visibility("default"))) TS_COption_u64Z_clone(uint32_t orig) { - LDKCOption_u64Z* orig_conv = (LDKCOption_u64Z*)orig; - LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *ret_copy = COption_u64Z_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelManagerZ_get_a(uint32_t owner) { + LDKC2Tuple_BlockHashChannelManagerZ* owner_conv = (LDKC2Tuple_BlockHashChannelManagerZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, C2Tuple_BlockHashChannelManagerZ_get_a(owner_conv).data, 32); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_ok(uint32_t o) { - LDKPayee o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = Payee_clone(&o_conv); - LDKCResult_PayeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeeDecodeErrorZ), "LDKCResult_PayeeDecodeErrorZ"); - *ret_conv = CResult_PayeeDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +static inline struct LDKChannelManager *C2Tuple_BlockHashChannelManagerZ_get_b(LDKC2Tuple_BlockHashChannelManagerZ *NONNULL_PTR owner){ + return &owner->b; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_PayeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeeDecodeErrorZ), "LDKCResult_PayeeDecodeErrorZ"); - *ret_conv = CResult_PayeeDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelManagerZ_get_b(uint32_t owner) { + LDKC2Tuple_BlockHashChannelManagerZ* owner_conv = (LDKC2Tuple_BlockHashChannelManagerZ*)(owner & ~1); + LDKChannelManager ret_var = *C2Tuple_BlockHashChannelManagerZ_get_b(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner & ~1; + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_PayeeDecodeErrorZ* o_conv = (LDKCResult_PayeeDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_PayeeDecodeErrorZ_is_ok(o_conv); - return ret_val; +static inline struct LDKC2Tuple_BlockHashChannelManagerZ *CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_ok(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return &*owner->contents.result; } - -void __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_PayeeDecodeErrorZ _res_conv = *(LDKCResult_PayeeDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_PayeeDecodeErrorZ_free(_res_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ* owner_conv = (LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ*)(owner & ~1); + uint64_t ret_ret = (uint64_t)CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_ok(owner_conv); + return ret_ret; } -static inline uint64_t CResult_PayeeDecodeErrorZ_clone_ptr(LDKCResult_PayeeDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_PayeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeeDecodeErrorZ), "LDKCResult_PayeeDecodeErrorZ"); - *ret_conv = CResult_PayeeDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_err(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -int64_t __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_PayeeDecodeErrorZ* arg_conv = (LDKCResult_PayeeDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_PayeeDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ* owner_conv = (LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_PayeeDecodeErrorZ* orig_conv = (LDKCResult_PayeeDecodeErrorZ*)(orig & ~1); - LDKCResult_PayeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeeDecodeErrorZ), "LDKCResult_PayeeDecodeErrorZ"); - *ret_conv = CResult_PayeeDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +typedef struct LDKMessageSendEventsProvider_JCalls { + atomic_size_t refcnt; + uint32_t get_and_clear_pending_msg_events_meth; +} LDKMessageSendEventsProvider_JCalls; +static void LDKMessageSendEventsProvider_JCalls_free(void* this_arg) { + LDKMessageSendEventsProvider_JCalls *j_calls = (LDKMessageSendEventsProvider_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->get_and_clear_pending_msg_events_meth); + FREE(j_calls); + } } - -void __attribute__((visibility("default"))) TS_CVec_RouteHintHopZ_free(uint32_tArray _res) { - LDKCVec_RouteHintHopZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKRouteHintHop), "LDKCVec_RouteHintHopZ Elements"); +LDKCVec_MessageSendEventZ get_and_clear_pending_msg_events_LDKMessageSendEventsProvider_jcall(const void* this_arg) { + LDKMessageSendEventsProvider_JCalls *j_calls = (LDKMessageSendEventsProvider_JCalls*) this_arg; + uint32_tArray ret = (uint32_tArray)js_invoke_function_0(j_calls->get_and_clear_pending_msg_events_meth); + LDKCVec_MessageSendEventZ ret_constr; + ret_constr.datalen = ret->arr_len; + if (ret_constr.datalen > 0) + ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKMessageSendEvent), "LDKCVec_MessageSendEventZ Elements"); else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t o = 0; o < _res_constr.datalen; o++) { - uint32_t _res_conv_14 = _res_vals[o]; - LDKRouteHintHop _res_conv_14_conv; - _res_conv_14_conv.inner = (void*)(_res_conv_14 & (~1)); - _res_conv_14_conv.is_owned = (_res_conv_14 & 1) || (_res_conv_14 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_14_conv); - _res_constr.data[o] = _res_conv_14_conv; + ret_constr.data = NULL; + uint32_t* ret_vals = ret->elems; + for (size_t s = 0; s < ret_constr.datalen; s++) { + uint32_t ret_conv_18 = ret_vals[s]; + void* ret_conv_18_ptr = (void*)(((uint64_t)ret_conv_18) & ~1); + CHECK_ACCESS(ret_conv_18_ptr); + LDKMessageSendEvent ret_conv_18_conv = *(LDKMessageSendEvent*)(ret_conv_18_ptr); + FREE((void*)ret_conv_18); + ret_constr.data[s] = ret_conv_18_conv; } - CVec_RouteHintHopZ_free(_res_constr); + return ret_constr; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_ok(uint32_t o) { - LDKRouteHint o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = RouteHint_clone(&o_conv); - LDKCResult_RouteHintDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintDecodeErrorZ), "LDKCResult_RouteHintDecodeErrorZ"); - *ret_conv = CResult_RouteHintDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +static void LDKMessageSendEventsProvider_JCalls_cloned(LDKMessageSendEventsProvider* new_obj) { + LDKMessageSendEventsProvider_JCalls *j_calls = (LDKMessageSendEventsProvider_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKMessageSendEventsProvider LDKMessageSendEventsProvider_init (/*TODO: JS Object Reference */void* o) { + LDKMessageSendEventsProvider_JCalls *calls = MALLOC(sizeof(LDKMessageSendEventsProvider_JCalls), "LDKMessageSendEventsProvider_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_RouteHintDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintDecodeErrorZ), "LDKCResult_RouteHintDecodeErrorZ"); - *ret_conv = CResult_RouteHintDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; + LDKMessageSendEventsProvider ret = { + .this_arg = (void*) calls, + .get_and_clear_pending_msg_events = get_and_clear_pending_msg_events_LDKMessageSendEventsProvider_jcall, + .free = LDKMessageSendEventsProvider_JCalls_free, + }; + return ret; } - -jboolean __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_RouteHintDecodeErrorZ* o_conv = (LDKCResult_RouteHintDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_RouteHintDecodeErrorZ_is_ok(o_conv); - return ret_val; +long __attribute__((visibility("default"))) TS_LDKMessageSendEventsProvider_new(/*TODO: JS Object Reference */void* o) { + LDKMessageSendEventsProvider *res_ptr = MALLOC(sizeof(LDKMessageSendEventsProvider), "LDKMessageSendEventsProvider"); + *res_ptr = LDKMessageSendEventsProvider_init(o); + return (long)res_ptr; +} +uint32_tArray __attribute__((visibility("default"))) TS_MessageSendEventsProvider_get_and_clear_pending_msg_events(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKMessageSendEventsProvider* this_arg_conv = (LDKMessageSendEventsProvider*)this_arg_ptr; + LDKCVec_MessageSendEventZ ret_var = (this_arg_conv->get_and_clear_pending_msg_events)(this_arg_conv->this_arg); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t s = 0; s < ret_var.datalen; s++) { + LDKMessageSendEvent *ret_conv_18_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_conv_18_copy = ret_var.data[s]; + uint64_t ret_conv_18_ref = (uint64_t)ret_conv_18_copy; + ret_arr_ptr[s] = ret_conv_18_ref; + } + + FREE(ret_var.data); + return ret_arr; } -void __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_RouteHintDecodeErrorZ _res_conv = *(LDKCResult_RouteHintDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_RouteHintDecodeErrorZ_free(_res_conv); +typedef struct LDKEventHandler_JCalls { + atomic_size_t refcnt; + uint32_t handle_event_meth; +} LDKEventHandler_JCalls; +static void LDKEventHandler_JCalls_free(void* this_arg) { + LDKEventHandler_JCalls *j_calls = (LDKEventHandler_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->handle_event_meth); + FREE(j_calls); + } } - -static inline uint64_t CResult_RouteHintDecodeErrorZ_clone_ptr(LDKCResult_RouteHintDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_RouteHintDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintDecodeErrorZ), "LDKCResult_RouteHintDecodeErrorZ"); - *ret_conv = CResult_RouteHintDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +void handle_event_LDKEventHandler_jcall(const void* this_arg, const LDKEvent * event) { + LDKEventHandler_JCalls *j_calls = (LDKEventHandler_JCalls*) this_arg; + LDKEvent *ret_event = MALLOC(sizeof(LDKEvent), "LDKEvent ret conversion"); + *ret_event = Event_clone(event); + js_invoke_function_1(j_calls->handle_event_meth, (uint32_t)(uint64_t)ret_event); } -int64_t __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_RouteHintDecodeErrorZ* arg_conv = (LDKCResult_RouteHintDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_RouteHintDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +static void LDKEventHandler_JCalls_cloned(LDKEventHandler* new_obj) { + LDKEventHandler_JCalls *j_calls = (LDKEventHandler_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKEventHandler LDKEventHandler_init (/*TODO: JS Object Reference */void* o) { + LDKEventHandler_JCalls *calls = MALLOC(sizeof(LDKEventHandler_JCalls), "LDKEventHandler_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_RouteHintDecodeErrorZ* orig_conv = (LDKCResult_RouteHintDecodeErrorZ*)(orig & ~1); - LDKCResult_RouteHintDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintDecodeErrorZ), "LDKCResult_RouteHintDecodeErrorZ"); - *ret_conv = CResult_RouteHintDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; + LDKEventHandler ret = { + .this_arg = (void*) calls, + .handle_event = handle_event_LDKEventHandler_jcall, + .free = LDKEventHandler_JCalls_free, + }; + return ret; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_ok(uint32_t o) { - LDKRouteHintHop o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = RouteHintHop_clone(&o_conv); - LDKCResult_RouteHintHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintHopDecodeErrorZ), "LDKCResult_RouteHintHopDecodeErrorZ"); - *ret_conv = CResult_RouteHintHopDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +long __attribute__((visibility("default"))) TS_LDKEventHandler_new(/*TODO: JS Object Reference */void* o) { + LDKEventHandler *res_ptr = MALLOC(sizeof(LDKEventHandler), "LDKEventHandler"); + *res_ptr = LDKEventHandler_init(o); + return (long)res_ptr; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_RouteHintHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintHopDecodeErrorZ), "LDKCResult_RouteHintHopDecodeErrorZ"); - *ret_conv = CResult_RouteHintHopDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_EventHandler_handle_event(uint32_t this_arg, uint32_t event) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKEventHandler* this_arg_conv = (LDKEventHandler*)this_arg_ptr; + LDKEvent* event_conv = (LDKEvent*)event; + (this_arg_conv->handle_event)(this_arg_conv->this_arg, event_conv); } -jboolean __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_RouteHintHopDecodeErrorZ* o_conv = (LDKCResult_RouteHintHopDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_RouteHintHopDecodeErrorZ_is_ok(o_conv); - return ret_val; +typedef struct LDKEventsProvider_JCalls { + atomic_size_t refcnt; + uint32_t process_pending_events_meth; +} LDKEventsProvider_JCalls; +static void LDKEventsProvider_JCalls_free(void* this_arg) { + LDKEventsProvider_JCalls *j_calls = (LDKEventsProvider_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->process_pending_events_meth); + FREE(j_calls); + } } - -void __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_RouteHintHopDecodeErrorZ _res_conv = *(LDKCResult_RouteHintHopDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_RouteHintHopDecodeErrorZ_free(_res_conv); +void process_pending_events_LDKEventsProvider_jcall(const void* this_arg, LDKEventHandler handler) { + LDKEventsProvider_JCalls *j_calls = (LDKEventsProvider_JCalls*) this_arg; + LDKEventHandler* handler_ret = MALLOC(sizeof(LDKEventHandler), "LDKEventHandler"); + *handler_ret = handler; + js_invoke_function_1(j_calls->process_pending_events_meth, (uint32_t)(uint64_t)handler_ret); +} +static void LDKEventsProvider_JCalls_cloned(LDKEventsProvider* new_obj) { + LDKEventsProvider_JCalls *j_calls = (LDKEventsProvider_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKEventsProvider LDKEventsProvider_init (/*TODO: JS Object Reference */void* o) { + LDKEventsProvider_JCalls *calls = MALLOC(sizeof(LDKEventsProvider_JCalls), "LDKEventsProvider_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -static inline uint64_t CResult_RouteHintHopDecodeErrorZ_clone_ptr(LDKCResult_RouteHintHopDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_RouteHintHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintHopDecodeErrorZ), "LDKCResult_RouteHintHopDecodeErrorZ"); - *ret_conv = CResult_RouteHintHopDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; + LDKEventsProvider ret = { + .this_arg = (void*) calls, + .process_pending_events = process_pending_events_LDKEventsProvider_jcall, + .free = LDKEventsProvider_JCalls_free, + }; + return ret; } -int64_t __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_RouteHintHopDecodeErrorZ* arg_conv = (LDKCResult_RouteHintHopDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_RouteHintHopDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +long __attribute__((visibility("default"))) TS_LDKEventsProvider_new(/*TODO: JS Object Reference */void* o) { + LDKEventsProvider *res_ptr = MALLOC(sizeof(LDKEventsProvider), "LDKEventsProvider"); + *res_ptr = LDKEventsProvider_init(o); + return (long)res_ptr; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_RouteHintHopDecodeErrorZ* orig_conv = (LDKCResult_RouteHintHopDecodeErrorZ*)(orig & ~1); - LDKCResult_RouteHintHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintHopDecodeErrorZ), "LDKCResult_RouteHintHopDecodeErrorZ"); - *ret_conv = CResult_RouteHintHopDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_EventsProvider_process_pending_events(uint32_t this_arg, uint32_t handler) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKEventsProvider* this_arg_conv = (LDKEventsProvider*)this_arg_ptr; + void* handler_ptr = (void*)(((uint64_t)handler) & ~1); + CHECK_ACCESS(handler_ptr); + LDKEventHandler handler_conv = *(LDKEventHandler*)(handler_ptr); + (this_arg_conv->process_pending_events)(this_arg_conv->this_arg, handler_conv); } -void __attribute__((visibility("default"))) TS_CVec_ChannelDetailsZ_free(uint32_tArray _res) { - LDKCVec_ChannelDetailsZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKChannelDetails), "LDKCVec_ChannelDetailsZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t q = 0; q < _res_constr.datalen; q++) { - uint32_t _res_conv_16 = _res_vals[q]; - LDKChannelDetails _res_conv_16_conv; - _res_conv_16_conv.inner = (void*)(_res_conv_16 & (~1)); - _res_conv_16_conv.is_owned = (_res_conv_16 & 1) || (_res_conv_16 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_16_conv); - _res_constr.data[q] = _res_conv_16_conv; +typedef struct LDKListen_JCalls { + atomic_size_t refcnt; + uint32_t block_connected_meth; + uint32_t block_disconnected_meth; +} LDKListen_JCalls; +static void LDKListen_JCalls_free(void* this_arg) { + LDKListen_JCalls *j_calls = (LDKListen_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->block_connected_meth); + js_free_function_ptr(j_calls->block_disconnected_meth); + FREE(j_calls); } - CVec_ChannelDetailsZ_free(_res_constr); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_ok(uint32_t o) { - LDKRoute o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = Route_clone(&o_conv); - LDKCResult_RouteLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteLightningErrorZ), "LDKCResult_RouteLightningErrorZ"); - *ret_conv = CResult_RouteLightningErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +void block_connected_LDKListen_jcall(const void* this_arg, LDKu8slice block, uint32_t height) { + LDKListen_JCalls *j_calls = (LDKListen_JCalls*) this_arg; + LDKu8slice block_var = block; + int8_tArray block_arr = init_int8_tArray(block_var.datalen); + memcpy(block_arr->elems, block_var.data, block_var.datalen); + js_invoke_function_2(j_calls->block_connected_meth, (uint32_t)block_arr, (uint32_t)height); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_err(uint32_t e) { - LDKLightningError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = LightningError_clone(&e_conv); - LDKCResult_RouteLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteLightningErrorZ), "LDKCResult_RouteLightningErrorZ"); - *ret_conv = CResult_RouteLightningErrorZ_err(e_conv); - return (uint64_t)ret_conv; +void block_disconnected_LDKListen_jcall(const void* this_arg, const uint8_t (* header)[80], uint32_t height) { + LDKListen_JCalls *j_calls = (LDKListen_JCalls*) this_arg; + int8_tArray header_arr = init_int8_tArray(80); + memcpy(header_arr->elems, *header, 80); + js_invoke_function_2(j_calls->block_disconnected_meth, (uint32_t)header_arr, (uint32_t)height); } - -jboolean __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_is_ok(uint32_t o) { - LDKCResult_RouteLightningErrorZ* o_conv = (LDKCResult_RouteLightningErrorZ*)(o & ~1); - jboolean ret_val = CResult_RouteLightningErrorZ_is_ok(o_conv); - return ret_val; +static void LDKListen_JCalls_cloned(LDKListen* new_obj) { + LDKListen_JCalls *j_calls = (LDKListen_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKListen LDKListen_init (/*TODO: JS Object Reference */void* o) { + LDKListen_JCalls *calls = MALLOC(sizeof(LDKListen_JCalls), "LDKListen_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -void __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_RouteLightningErrorZ _res_conv = *(LDKCResult_RouteLightningErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_RouteLightningErrorZ_free(_res_conv); + LDKListen ret = { + .this_arg = (void*) calls, + .block_connected = block_connected_LDKListen_jcall, + .block_disconnected = block_disconnected_LDKListen_jcall, + .free = LDKListen_JCalls_free, + }; + return ret; } - -static inline uint64_t CResult_RouteLightningErrorZ_clone_ptr(LDKCResult_RouteLightningErrorZ *NONNULL_PTR arg) { - LDKCResult_RouteLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteLightningErrorZ), "LDKCResult_RouteLightningErrorZ"); - *ret_conv = CResult_RouteLightningErrorZ_clone(arg); - return (uint64_t)ret_conv; +long __attribute__((visibility("default"))) TS_LDKListen_new(/*TODO: JS Object Reference */void* o) { + LDKListen *res_ptr = MALLOC(sizeof(LDKListen), "LDKListen"); + *res_ptr = LDKListen_init(o); + return (long)res_ptr; } -int64_t __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_RouteLightningErrorZ* arg_conv = (LDKCResult_RouteLightningErrorZ*)(arg & ~1); - int64_t ret_val = CResult_RouteLightningErrorZ_clone_ptr(arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_Listen_block_connected(uint32_t this_arg, int8_tArray block, int32_t height) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKListen* this_arg_conv = (LDKListen*)this_arg_ptr; + LDKu8slice block_ref; + block_ref.datalen = block->arr_len; + block_ref.data = block->elems; + (this_arg_conv->block_connected)(this_arg_conv->this_arg, block_ref, height); } -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_clone(uint32_t orig) { - LDKCResult_RouteLightningErrorZ* orig_conv = (LDKCResult_RouteLightningErrorZ*)(orig & ~1); - LDKCResult_RouteLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteLightningErrorZ), "LDKCResult_RouteLightningErrorZ"); - *ret_conv = CResult_RouteLightningErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_Listen_block_disconnected(uint32_t this_arg, int8_tArray header, int32_t height) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKListen* this_arg_conv = (LDKListen*)this_arg_ptr; + unsigned char header_arr[80]; + CHECK(header->arr_len == 80); + memcpy(header_arr, header->elems, 80); + unsigned char (*header_ref)[80] = &header_arr; + (this_arg_conv->block_disconnected)(this_arg_conv->this_arg, header_ref, height); } -uint32_t __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_ok(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKTxOut o_conv = *(LDKTxOut*)(o_ptr); - o_conv = TxOut_clone((LDKTxOut*)(((uint64_t)o) & ~1)); - LDKCResult_TxOutAccessErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxOutAccessErrorZ), "LDKCResult_TxOutAccessErrorZ"); - *ret_conv = CResult_TxOutAccessErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +typedef struct LDKConfirm_JCalls { + atomic_size_t refcnt; + uint32_t transactions_confirmed_meth; + uint32_t transaction_unconfirmed_meth; + uint32_t best_block_updated_meth; + uint32_t get_relevant_txids_meth; +} LDKConfirm_JCalls; +static void LDKConfirm_JCalls_free(void* this_arg) { + LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->transactions_confirmed_meth); + js_free_function_ptr(j_calls->transaction_unconfirmed_meth); + js_free_function_ptr(j_calls->best_block_updated_meth); + js_free_function_ptr(j_calls->get_relevant_txids_meth); + FREE(j_calls); + } } - -uint32_t __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_err(uint32_t e) { - LDKAccessError e_conv = LDKAccessError_from_js(e); - LDKCResult_TxOutAccessErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxOutAccessErrorZ), "LDKCResult_TxOutAccessErrorZ"); - *ret_conv = CResult_TxOutAccessErrorZ_err(e_conv); - return (uint64_t)ret_conv; +void transactions_confirmed_LDKConfirm_jcall(const void* this_arg, const uint8_t (* header)[80], LDKCVec_C2Tuple_usizeTransactionZZ txdata, uint32_t height) { + LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) this_arg; + int8_tArray header_arr = init_int8_tArray(80); + memcpy(header_arr->elems, *header, 80); + LDKCVec_C2Tuple_usizeTransactionZZ txdata_var = txdata; + uint32_tArray txdata_arr = NULL; + txdata_arr = init_uint32_tArray(txdata_var.datalen); + uint32_t *txdata_arr_ptr = (uint32_t*)(txdata_arr + 4); + for (size_t c = 0; c < txdata_var.datalen; c++) { + LDKC2Tuple_usizeTransactionZ* txdata_conv_28_conv = MALLOC(sizeof(LDKC2Tuple_usizeTransactionZ), "LDKC2Tuple_usizeTransactionZ"); + *txdata_conv_28_conv = txdata_var.data[c]; + txdata_arr_ptr[c] = ((uint64_t)txdata_conv_28_conv); + } + + FREE(txdata_var.data); + js_invoke_function_3(j_calls->transactions_confirmed_meth, (uint32_t)header_arr, (uint32_t)txdata_arr, (uint32_t)height); } - -jboolean __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_is_ok(uint32_t o) { - LDKCResult_TxOutAccessErrorZ* o_conv = (LDKCResult_TxOutAccessErrorZ*)(o & ~1); - jboolean ret_val = CResult_TxOutAccessErrorZ_is_ok(o_conv); - return ret_val; +void transaction_unconfirmed_LDKConfirm_jcall(const void* this_arg, const uint8_t (* txid)[32]) { + LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) this_arg; + int8_tArray txid_arr = init_int8_tArray(32); + memcpy(txid_arr->elems, *txid, 32); + js_invoke_function_1(j_calls->transaction_unconfirmed_meth, (uint32_t)txid_arr); } - -void __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_TxOutAccessErrorZ _res_conv = *(LDKCResult_TxOutAccessErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_TxOutAccessErrorZ_free(_res_conv); +void best_block_updated_LDKConfirm_jcall(const void* this_arg, const uint8_t (* header)[80], uint32_t height) { + LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) this_arg; + int8_tArray header_arr = init_int8_tArray(80); + memcpy(header_arr->elems, *header, 80); + js_invoke_function_2(j_calls->best_block_updated_meth, (uint32_t)header_arr, (uint32_t)height); } - -static inline uint64_t CResult_TxOutAccessErrorZ_clone_ptr(LDKCResult_TxOutAccessErrorZ *NONNULL_PTR arg) { - LDKCResult_TxOutAccessErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxOutAccessErrorZ), "LDKCResult_TxOutAccessErrorZ"); - *ret_conv = CResult_TxOutAccessErrorZ_clone(arg); - return (uint64_t)ret_conv; +LDKCVec_TxidZ get_relevant_txids_LDKConfirm_jcall(const void* this_arg) { + LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) this_arg; + ptrArray ret = (ptrArray)js_invoke_function_0(j_calls->get_relevant_txids_meth); + LDKCVec_TxidZ ret_constr; + ret_constr.datalen = ret->arr_len; + if (ret_constr.datalen > 0) + ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKThirtyTwoBytes), "LDKCVec_TxidZ Elements"); + else + ret_constr.data = NULL; + int8_tArray* ret_vals = (void*) ret->elems; + for (size_t m = 0; m < ret_constr.datalen; m++) { + int8_tArray ret_conv_12 = ret_vals[m]; + LDKThirtyTwoBytes ret_conv_12_ref; + CHECK(ret_conv_12->arr_len == 32); + memcpy(ret_conv_12_ref.data, ret_conv_12->elems, 32); + ret_constr.data[m] = ret_conv_12_ref; + } + return ret_constr; } -int64_t __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_TxOutAccessErrorZ* arg_conv = (LDKCResult_TxOutAccessErrorZ*)(arg & ~1); - int64_t ret_val = CResult_TxOutAccessErrorZ_clone_ptr(arg_conv); - return ret_val; +static void LDKConfirm_JCalls_cloned(LDKConfirm* new_obj) { + LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKConfirm LDKConfirm_init (/*TODO: JS Object Reference */void* o) { + LDKConfirm_JCalls *calls = MALLOC(sizeof(LDKConfirm_JCalls), "LDKConfirm_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -uint32_t __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_clone(uint32_t orig) { - LDKCResult_TxOutAccessErrorZ* orig_conv = (LDKCResult_TxOutAccessErrorZ*)(orig & ~1); - LDKCResult_TxOutAccessErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxOutAccessErrorZ), "LDKCResult_TxOutAccessErrorZ"); - *ret_conv = CResult_TxOutAccessErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; + LDKConfirm ret = { + .this_arg = (void*) calls, + .transactions_confirmed = transactions_confirmed_LDKConfirm_jcall, + .transaction_unconfirmed = transaction_unconfirmed_LDKConfirm_jcall, + .best_block_updated = best_block_updated_LDKConfirm_jcall, + .get_relevant_txids = get_relevant_txids_LDKConfirm_jcall, + .free = LDKConfirm_JCalls_free, + }; + return ret; } - -static inline uint64_t C2Tuple_usizeTransactionZ_clone_ptr(LDKC2Tuple_usizeTransactionZ *NONNULL_PTR arg) { - LDKC2Tuple_usizeTransactionZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_usizeTransactionZ), "LDKC2Tuple_usizeTransactionZ"); - *ret_conv = C2Tuple_usizeTransactionZ_clone(arg); - return ((uint64_t)ret_conv); +long __attribute__((visibility("default"))) TS_LDKConfirm_new(/*TODO: JS Object Reference */void* o) { + LDKConfirm *res_ptr = MALLOC(sizeof(LDKConfirm), "LDKConfirm"); + *res_ptr = LDKConfirm_init(o); + return (long)res_ptr; } -int64_t __attribute__((visibility("default"))) TS_C2Tuple_usizeTransactionZ_clone_ptr(uint32_t arg) { - LDKC2Tuple_usizeTransactionZ* arg_conv = (LDKC2Tuple_usizeTransactionZ*)(arg & ~1); - int64_t ret_val = C2Tuple_usizeTransactionZ_clone_ptr(arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_Confirm_transactions_confirmed(uint32_t this_arg, int8_tArray header, uint32_tArray txdata, int32_t height) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKConfirm* this_arg_conv = (LDKConfirm*)this_arg_ptr; + unsigned char header_arr[80]; + CHECK(header->arr_len == 80); + memcpy(header_arr, header->elems, 80); + unsigned char (*header_ref)[80] = &header_arr; + LDKCVec_C2Tuple_usizeTransactionZZ txdata_constr; + txdata_constr.datalen = txdata->arr_len; + if (txdata_constr.datalen > 0) + txdata_constr.data = MALLOC(txdata_constr.datalen * sizeof(LDKC2Tuple_usizeTransactionZ), "LDKCVec_C2Tuple_usizeTransactionZZ Elements"); + else + txdata_constr.data = NULL; + uint32_t* txdata_vals = txdata->elems; + for (size_t c = 0; c < txdata_constr.datalen; c++) { + uint32_t txdata_conv_28 = txdata_vals[c]; + void* txdata_conv_28_ptr = (void*)(((uint64_t)txdata_conv_28) & ~1); + CHECK_ACCESS(txdata_conv_28_ptr); + LDKC2Tuple_usizeTransactionZ txdata_conv_28_conv = *(LDKC2Tuple_usizeTransactionZ*)(txdata_conv_28_ptr); + txdata_conv_28_conv = C2Tuple_usizeTransactionZ_clone((LDKC2Tuple_usizeTransactionZ*)(((uint64_t)txdata_conv_28) & ~1)); + txdata_constr.data[c] = txdata_conv_28_conv; + } + (this_arg_conv->transactions_confirmed)(this_arg_conv->this_arg, header_ref, txdata_constr, height); } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_usizeTransactionZ_clone(uint32_t orig) { - LDKC2Tuple_usizeTransactionZ* orig_conv = (LDKC2Tuple_usizeTransactionZ*)(orig & ~1); - LDKC2Tuple_usizeTransactionZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_usizeTransactionZ), "LDKC2Tuple_usizeTransactionZ"); - *ret_conv = C2Tuple_usizeTransactionZ_clone(orig_conv); - return ((uint64_t)ret_conv); +void __attribute__((visibility("default"))) TS_Confirm_transaction_unconfirmed(uint32_t this_arg, int8_tArray txid) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKConfirm* this_arg_conv = (LDKConfirm*)this_arg_ptr; + unsigned char txid_arr[32]; + CHECK(txid->arr_len == 32); + memcpy(txid_arr, txid->elems, 32); + unsigned char (*txid_ref)[32] = &txid_arr; + (this_arg_conv->transaction_unconfirmed)(this_arg_conv->this_arg, txid_ref); } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_usizeTransactionZ_new(int64_t a, int8_tArray b) { - LDKTransaction b_ref; - b_ref.datalen = *((uint32_t*)b); - b_ref.data = MALLOC(b_ref.datalen, "LDKTransaction Bytes"); - memcpy(b_ref.data, (uint8_t*)(b + 4), b_ref.datalen); - b_ref.data_is_owned = true; - LDKC2Tuple_usizeTransactionZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_usizeTransactionZ), "LDKC2Tuple_usizeTransactionZ"); - *ret_conv = C2Tuple_usizeTransactionZ_new(a, b_ref); - return ((uint64_t)ret_conv); +void __attribute__((visibility("default"))) TS_Confirm_best_block_updated(uint32_t this_arg, int8_tArray header, int32_t height) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKConfirm* this_arg_conv = (LDKConfirm*)this_arg_ptr; + unsigned char header_arr[80]; + CHECK(header->arr_len == 80); + memcpy(header_arr, header->elems, 80); + unsigned char (*header_ref)[80] = &header_arr; + (this_arg_conv->best_block_updated)(this_arg_conv->this_arg, header_ref, height); } -void __attribute__((visibility("default"))) TS_C2Tuple_usizeTransactionZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKC2Tuple_usizeTransactionZ _res_conv = *(LDKC2Tuple_usizeTransactionZ*)(_res_ptr); - FREE((void*)_res); - C2Tuple_usizeTransactionZ_free(_res_conv); +ptrArray __attribute__((visibility("default"))) TS_Confirm_get_relevant_txids(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKConfirm* this_arg_conv = (LDKConfirm*)this_arg_ptr; + LDKCVec_TxidZ ret_var = (this_arg_conv->get_relevant_txids)(this_arg_conv->this_arg); + ptrArray ret_arr = NULL; + ret_arr = init_ptrArray(ret_var.datalen); + int8_tArray *ret_arr_ptr = (int8_tArray*)(ret_arr + 4); + for (size_t m = 0; m < ret_var.datalen; m++) { + int8_tArray ret_conv_12_arr = init_int8_tArray(32); + memcpy(ret_conv_12_arr->elems, ret_var.data[m].data, 32); + ret_arr_ptr[m] = ret_conv_12_arr; + } + + FREE(ret_var.data); + return ret_arr; } -void __attribute__((visibility("default"))) TS_CVec_C2Tuple_usizeTransactionZZ_free(uint32_tArray _res) { - LDKCVec_C2Tuple_usizeTransactionZZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_usizeTransactionZ), "LDKCVec_C2Tuple_usizeTransactionZZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t c = 0; c < _res_constr.datalen; c++) { - uint32_t _res_conv_28 = _res_vals[c]; - void* _res_conv_28_ptr = (void*)(((uint64_t)_res_conv_28) & ~1); - CHECK_ACCESS(_res_conv_28_ptr); - LDKC2Tuple_usizeTransactionZ _res_conv_28_conv = *(LDKC2Tuple_usizeTransactionZ*)(_res_conv_28_ptr); - FREE((void*)_res_conv_28); - _res_constr.data[c] = _res_conv_28_conv; +typedef struct LDKPersist_JCalls { + atomic_size_t refcnt; + uint32_t persist_new_channel_meth; + uint32_t update_persisted_channel_meth; +} LDKPersist_JCalls; +static void LDKPersist_JCalls_free(void* this_arg) { + LDKPersist_JCalls *j_calls = (LDKPersist_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->persist_new_channel_meth); + js_free_function_ptr(j_calls->update_persisted_channel_meth); + FREE(j_calls); + } +} +LDKCResult_NoneChannelMonitorUpdateErrZ persist_new_channel_LDKPersist_jcall(const void* this_arg, LDKOutPoint channel_id, const LDKChannelMonitor * data, LDKMonitorUpdateId update_id) { + LDKPersist_JCalls *j_calls = (LDKPersist_JCalls*) this_arg; + LDKOutPoint channel_id_var = channel_id; + uint64_t channel_id_ref = 0; + CHECK((((uint64_t)channel_id_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&channel_id_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_id_var); + channel_id_ref = (uint64_t)channel_id_var.inner; + if (channel_id_var.is_owned) { + channel_id_ref |= 1; + } + LDKChannelMonitor data_var = *data; + uint64_t data_ref = 0; + data_var = ChannelMonitor_clone(data); + CHECK((((uint64_t)data_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&data_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(data_var); + data_ref = (uint64_t)data_var.inner; + if (data_var.is_owned) { + data_ref |= 1; + } + LDKMonitorUpdateId update_id_var = update_id; + uint64_t update_id_ref = 0; + CHECK((((uint64_t)update_id_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&update_id_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_id_var); + update_id_ref = (uint64_t)update_id_var.inner; + if (update_id_var.is_owned) { + update_id_ref |= 1; + } + uint32_t ret = js_invoke_function_3(j_calls->persist_new_channel_meth, (uint32_t)channel_id_ref, (uint32_t)data_ref, (uint32_t)update_id_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_NoneChannelMonitorUpdateErrZ ret_conv = *(LDKCResult_NoneChannelMonitorUpdateErrZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; +} +LDKCResult_NoneChannelMonitorUpdateErrZ update_persisted_channel_LDKPersist_jcall(const void* this_arg, LDKOutPoint channel_id, const LDKChannelMonitorUpdate * update, const LDKChannelMonitor * data, LDKMonitorUpdateId update_id) { + LDKPersist_JCalls *j_calls = (LDKPersist_JCalls*) this_arg; + LDKOutPoint channel_id_var = channel_id; + uint64_t channel_id_ref = 0; + CHECK((((uint64_t)channel_id_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&channel_id_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_id_var); + channel_id_ref = (uint64_t)channel_id_var.inner; + if (channel_id_var.is_owned) { + channel_id_ref |= 1; + } + LDKChannelMonitorUpdate update_var = *update; + uint64_t update_ref = 0; + if ((uint64_t)update_var.inner > 4096) { + update_var = ChannelMonitorUpdate_clone(update); + CHECK((((uint64_t)update_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&update_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_var); + update_ref = (uint64_t)update_var.inner; + if (update_var.is_owned) { + update_ref |= 1; + } + } + LDKChannelMonitor data_var = *data; + uint64_t data_ref = 0; + data_var = ChannelMonitor_clone(data); + CHECK((((uint64_t)data_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&data_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(data_var); + data_ref = (uint64_t)data_var.inner; + if (data_var.is_owned) { + data_ref |= 1; + } + LDKMonitorUpdateId update_id_var = update_id; + uint64_t update_id_ref = 0; + CHECK((((uint64_t)update_id_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&update_id_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_id_var); + update_id_ref = (uint64_t)update_id_var.inner; + if (update_id_var.is_owned) { + update_id_ref |= 1; } - CVec_C2Tuple_usizeTransactionZZ_free(_res_constr); + uint32_t ret = js_invoke_function_4(j_calls->update_persisted_channel_meth, (uint32_t)channel_id_ref, (uint32_t)update_ref, (uint32_t)data_ref, (uint32_t)update_id_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_NoneChannelMonitorUpdateErrZ ret_conv = *(LDKCResult_NoneChannelMonitorUpdateErrZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } - -void __attribute__((visibility("default"))) TS_CVec_TxidZ_free(ptrArray _res) { - LDKCVec_TxidZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKThirtyTwoBytes), "LDKCVec_TxidZ Elements"); - else - _res_constr.data = NULL; - int8_tArray* _res_vals = (int8_tArray*)(_res + 4); - for (size_t m = 0; m < _res_constr.datalen; m++) { - int8_tArray _res_conv_12 = _res_vals[m]; - LDKThirtyTwoBytes _res_conv_12_ref; - CHECK(*((uint32_t*)_res_conv_12) == 32); - memcpy(_res_conv_12_ref.data, (uint8_t*)(_res_conv_12 + 4), 32); - _res_constr.data[m] = _res_conv_12_ref; - } - CVec_TxidZ_free(_res_constr); +static void LDKPersist_JCalls_cloned(LDKPersist* new_obj) { + LDKPersist_JCalls *j_calls = (LDKPersist_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKPersist LDKPersist_init (/*TODO: JS Object Reference */void* o) { + LDKPersist_JCalls *calls = MALLOC(sizeof(LDKPersist_JCalls), "LDKPersist_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_ok() { + LDKPersist ret = { + .this_arg = (void*) calls, + .persist_new_channel = persist_new_channel_LDKPersist_jcall, + .update_persisted_channel = update_persisted_channel_LDKPersist_jcall, + .free = LDKPersist_JCalls_free, + }; + return ret; +} +long __attribute__((visibility("default"))) TS_LDKPersist_new(/*TODO: JS Object Reference */void* o) { + LDKPersist *res_ptr = MALLOC(sizeof(LDKPersist), "LDKPersist"); + *res_ptr = LDKPersist_init(o); + return (long)res_ptr; +} +uint32_t __attribute__((visibility("default"))) TS_Persist_persist_new_channel(uint32_t this_arg, uint32_t channel_id, uint32_t data, uint32_t update_id) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKPersist* this_arg_conv = (LDKPersist*)this_arg_ptr; + LDKOutPoint channel_id_conv; + channel_id_conv.inner = (void*)(channel_id & (~1)); + channel_id_conv.is_owned = (channel_id & 1) || (channel_id == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_id_conv); + channel_id_conv = OutPoint_clone(&channel_id_conv); + LDKChannelMonitor data_conv; + data_conv.inner = (void*)(data & (~1)); + data_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(data_conv); + LDKMonitorUpdateId update_id_conv; + update_id_conv.inner = (void*)(update_id & (~1)); + update_id_conv.is_owned = (update_id & 1) || (update_id == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_id_conv); + update_id_conv = MonitorUpdateId_clone(&update_id_conv); LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); - *ret_conv = CResult_NoneChannelMonitorUpdateErrZ_ok(); + *ret_conv = (this_arg_conv->persist_new_channel)(this_arg_conv->this_arg, channel_id_conv, &data_conv, update_id_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_err(uint32_t e) { - LDKChannelMonitorUpdateErr e_conv = LDKChannelMonitorUpdateErr_from_js(e); +uint32_t __attribute__((visibility("default"))) TS_Persist_update_persisted_channel(uint32_t this_arg, uint32_t channel_id, uint32_t update, uint32_t data, uint32_t update_id) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKPersist* this_arg_conv = (LDKPersist*)this_arg_ptr; + LDKOutPoint channel_id_conv; + channel_id_conv.inner = (void*)(channel_id & (~1)); + channel_id_conv.is_owned = (channel_id & 1) || (channel_id == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_id_conv); + channel_id_conv = OutPoint_clone(&channel_id_conv); + LDKChannelMonitorUpdate update_conv; + update_conv.inner = (void*)(update & (~1)); + update_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_conv); + LDKChannelMonitor data_conv; + data_conv.inner = (void*)(data & (~1)); + data_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(data_conv); + LDKMonitorUpdateId update_id_conv; + update_id_conv.inner = (void*)(update_id & (~1)); + update_id_conv.is_owned = (update_id & 1) || (update_id == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_id_conv); + update_id_conv = MonitorUpdateId_clone(&update_id_conv); LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); - *ret_conv = CResult_NoneChannelMonitorUpdateErrZ_err(e_conv); + *ret_conv = (this_arg_conv->update_persisted_channel)(this_arg_conv->this_arg, channel_id_conv, &update_conv, &data_conv, update_id_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_is_ok(uint32_t o) { - LDKCResult_NoneChannelMonitorUpdateErrZ* o_conv = (LDKCResult_NoneChannelMonitorUpdateErrZ*)(o & ~1); - jboolean ret_val = CResult_NoneChannelMonitorUpdateErrZ_is_ok(o_conv); - return ret_val; +typedef struct LDKChannelMessageHandler_JCalls { + atomic_size_t refcnt; + LDKMessageSendEventsProvider_JCalls* MessageSendEventsProvider; + uint32_t handle_open_channel_meth; + uint32_t handle_accept_channel_meth; + uint32_t handle_funding_created_meth; + uint32_t handle_funding_signed_meth; + uint32_t handle_funding_locked_meth; + uint32_t handle_shutdown_meth; + uint32_t handle_closing_signed_meth; + uint32_t handle_update_add_htlc_meth; + uint32_t handle_update_fulfill_htlc_meth; + uint32_t handle_update_fail_htlc_meth; + uint32_t handle_update_fail_malformed_htlc_meth; + uint32_t handle_commitment_signed_meth; + uint32_t handle_revoke_and_ack_meth; + uint32_t handle_update_fee_meth; + uint32_t handle_announcement_signatures_meth; + uint32_t peer_disconnected_meth; + uint32_t peer_connected_meth; + uint32_t handle_channel_reestablish_meth; + uint32_t handle_channel_update_meth; + uint32_t handle_error_meth; +} LDKChannelMessageHandler_JCalls; +static void LDKChannelMessageHandler_JCalls_free(void* this_arg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->handle_open_channel_meth); + js_free_function_ptr(j_calls->handle_accept_channel_meth); + js_free_function_ptr(j_calls->handle_funding_created_meth); + js_free_function_ptr(j_calls->handle_funding_signed_meth); + js_free_function_ptr(j_calls->handle_funding_locked_meth); + js_free_function_ptr(j_calls->handle_shutdown_meth); + js_free_function_ptr(j_calls->handle_closing_signed_meth); + js_free_function_ptr(j_calls->handle_update_add_htlc_meth); + js_free_function_ptr(j_calls->handle_update_fulfill_htlc_meth); + js_free_function_ptr(j_calls->handle_update_fail_htlc_meth); + js_free_function_ptr(j_calls->handle_update_fail_malformed_htlc_meth); + js_free_function_ptr(j_calls->handle_commitment_signed_meth); + js_free_function_ptr(j_calls->handle_revoke_and_ack_meth); + js_free_function_ptr(j_calls->handle_update_fee_meth); + js_free_function_ptr(j_calls->handle_announcement_signatures_meth); + js_free_function_ptr(j_calls->peer_disconnected_meth); + js_free_function_ptr(j_calls->peer_connected_meth); + js_free_function_ptr(j_calls->handle_channel_reestablish_meth); + js_free_function_ptr(j_calls->handle_channel_update_meth); + js_free_function_ptr(j_calls->handle_error_meth); + FREE(j_calls); + } } - -void __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_NoneChannelMonitorUpdateErrZ _res_conv = *(LDKCResult_NoneChannelMonitorUpdateErrZ*)(_res_ptr); - FREE((void*)_res); - CResult_NoneChannelMonitorUpdateErrZ_free(_res_conv); +void handle_open_channel_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, LDKInitFeatures their_features, const LDKOpenChannel * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKInitFeatures their_features_var = their_features; + uint64_t their_features_ref = 0; + CHECK((((uint64_t)their_features_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&their_features_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(their_features_var); + their_features_ref = (uint64_t)their_features_var.inner; + if (their_features_var.is_owned) { + their_features_ref |= 1; + } + LDKOpenChannel msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = OpenChannel_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_3(j_calls->handle_open_channel_meth, (uint32_t)their_node_id_arr, (uint32_t)their_features_ref, (uint32_t)msg_ref); } - -static inline uint64_t CResult_NoneChannelMonitorUpdateErrZ_clone_ptr(LDKCResult_NoneChannelMonitorUpdateErrZ *NONNULL_PTR arg) { - LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); - *ret_conv = CResult_NoneChannelMonitorUpdateErrZ_clone(arg); - return (uint64_t)ret_conv; +void handle_accept_channel_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, LDKInitFeatures their_features, const LDKAcceptChannel * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKInitFeatures their_features_var = their_features; + uint64_t their_features_ref = 0; + CHECK((((uint64_t)their_features_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&their_features_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(their_features_var); + their_features_ref = (uint64_t)their_features_var.inner; + if (their_features_var.is_owned) { + their_features_ref |= 1; + } + LDKAcceptChannel msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = AcceptChannel_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_3(j_calls->handle_accept_channel_meth, (uint32_t)their_node_id_arr, (uint32_t)their_features_ref, (uint32_t)msg_ref); } -int64_t __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_clone_ptr(uint32_t arg) { - LDKCResult_NoneChannelMonitorUpdateErrZ* arg_conv = (LDKCResult_NoneChannelMonitorUpdateErrZ*)(arg & ~1); - int64_t ret_val = CResult_NoneChannelMonitorUpdateErrZ_clone_ptr(arg_conv); - return ret_val; +void handle_funding_created_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKFundingCreated * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKFundingCreated msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = FundingCreated_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_funding_created_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_clone(uint32_t orig) { - LDKCResult_NoneChannelMonitorUpdateErrZ* orig_conv = (LDKCResult_NoneChannelMonitorUpdateErrZ*)(orig & ~1); - LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); - *ret_conv = CResult_NoneChannelMonitorUpdateErrZ_clone(orig_conv); - return (uint64_t)ret_conv; +void handle_funding_signed_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKFundingSigned * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKFundingSigned msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = FundingSigned_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_funding_signed_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); +} +void handle_funding_locked_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKFundingLocked * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKFundingLocked msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = FundingLocked_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_funding_locked_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); +} +void handle_shutdown_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKInitFeatures * their_features, const LDKShutdown * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKInitFeatures their_features_var = *their_features; + uint64_t their_features_ref = 0; + their_features_var = InitFeatures_clone(their_features); + CHECK((((uint64_t)their_features_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&their_features_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(their_features_var); + their_features_ref = (uint64_t)their_features_var.inner; + if (their_features_var.is_owned) { + their_features_ref |= 1; + } + LDKShutdown msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = Shutdown_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_3(j_calls->handle_shutdown_meth, (uint32_t)their_node_id_arr, (uint32_t)their_features_ref, (uint32_t)msg_ref); +} +void handle_closing_signed_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKClosingSigned * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKClosingSigned msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = ClosingSigned_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_closing_signed_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } - -void __attribute__((visibility("default"))) TS_CVec_MonitorEventZ_free(uint32_tArray _res) { - LDKCVec_MonitorEventZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKMonitorEvent), "LDKCVec_MonitorEventZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t o = 0; o < _res_constr.datalen; o++) { - uint32_t _res_conv_14 = _res_vals[o]; - void* _res_conv_14_ptr = (void*)(((uint64_t)_res_conv_14) & ~1); - CHECK_ACCESS(_res_conv_14_ptr); - LDKMonitorEvent _res_conv_14_conv = *(LDKMonitorEvent*)(_res_conv_14_ptr); - FREE((void*)_res_conv_14); - _res_constr.data[o] = _res_conv_14_conv; +void handle_update_add_htlc_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateAddHTLC * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKUpdateAddHTLC msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = UpdateAddHTLC_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; } - CVec_MonitorEventZ_free(_res_constr); + js_invoke_function_2(j_calls->handle_update_add_htlc_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } - -uint32_t __attribute__((visibility("default"))) TS_COption_C2Tuple_usizeTransactionZZ_some(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKC2Tuple_usizeTransactionZ o_conv = *(LDKC2Tuple_usizeTransactionZ*)(o_ptr); - o_conv = C2Tuple_usizeTransactionZ_clone((LDKC2Tuple_usizeTransactionZ*)(((uint64_t)o) & ~1)); - LDKCOption_C2Tuple_usizeTransactionZZ *ret_copy = MALLOC(sizeof(LDKCOption_C2Tuple_usizeTransactionZZ), "LDKCOption_C2Tuple_usizeTransactionZZ"); - *ret_copy = COption_C2Tuple_usizeTransactionZZ_some(o_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void handle_update_fulfill_htlc_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateFulfillHTLC * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKUpdateFulfillHTLC msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = UpdateFulfillHTLC_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_update_fulfill_htlc_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } - -uint32_t __attribute__((visibility("default"))) TS_COption_C2Tuple_usizeTransactionZZ_none() { - LDKCOption_C2Tuple_usizeTransactionZZ *ret_copy = MALLOC(sizeof(LDKCOption_C2Tuple_usizeTransactionZZ), "LDKCOption_C2Tuple_usizeTransactionZZ"); - *ret_copy = COption_C2Tuple_usizeTransactionZZ_none(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void handle_update_fail_htlc_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateFailHTLC * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKUpdateFailHTLC msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = UpdateFailHTLC_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_update_fail_htlc_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } - -void __attribute__((visibility("default"))) TS_COption_C2Tuple_usizeTransactionZZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCOption_C2Tuple_usizeTransactionZZ _res_conv = *(LDKCOption_C2Tuple_usizeTransactionZZ*)(_res_ptr); - FREE((void*)_res); - COption_C2Tuple_usizeTransactionZZ_free(_res_conv); +void handle_update_fail_malformed_htlc_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateFailMalformedHTLC * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKUpdateFailMalformedHTLC msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = UpdateFailMalformedHTLC_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_update_fail_malformed_htlc_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } - -static inline uint64_t COption_C2Tuple_usizeTransactionZZ_clone_ptr(LDKCOption_C2Tuple_usizeTransactionZZ *NONNULL_PTR arg) { - LDKCOption_C2Tuple_usizeTransactionZZ *ret_copy = MALLOC(sizeof(LDKCOption_C2Tuple_usizeTransactionZZ), "LDKCOption_C2Tuple_usizeTransactionZZ"); - *ret_copy = COption_C2Tuple_usizeTransactionZZ_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void handle_commitment_signed_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKCommitmentSigned * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKCommitmentSigned msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = CommitmentSigned_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_commitment_signed_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } -int64_t __attribute__((visibility("default"))) TS_COption_C2Tuple_usizeTransactionZZ_clone_ptr(uint32_t arg) { - LDKCOption_C2Tuple_usizeTransactionZZ* arg_conv = (LDKCOption_C2Tuple_usizeTransactionZZ*)arg; - int64_t ret_val = COption_C2Tuple_usizeTransactionZZ_clone_ptr(arg_conv); - return ret_val; +void handle_revoke_and_ack_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKRevokeAndACK * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKRevokeAndACK msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = RevokeAndACK_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_revoke_and_ack_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } - -uint32_t __attribute__((visibility("default"))) TS_COption_C2Tuple_usizeTransactionZZ_clone(uint32_t orig) { - LDKCOption_C2Tuple_usizeTransactionZZ* orig_conv = (LDKCOption_C2Tuple_usizeTransactionZZ*)orig; - LDKCOption_C2Tuple_usizeTransactionZZ *ret_copy = MALLOC(sizeof(LDKCOption_C2Tuple_usizeTransactionZZ), "LDKCOption_C2Tuple_usizeTransactionZZ"); - *ret_copy = COption_C2Tuple_usizeTransactionZZ_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void handle_update_fee_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateFee * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKUpdateFee msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = UpdateFee_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_update_fee_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } - -uint32_t __attribute__((visibility("default"))) TS_COption_ClosureReasonZ_some(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKClosureReason o_conv = *(LDKClosureReason*)(o_ptr); - o_conv = ClosureReason_clone((LDKClosureReason*)(((uint64_t)o) & ~1)); - LDKCOption_ClosureReasonZ *ret_copy = MALLOC(sizeof(LDKCOption_ClosureReasonZ), "LDKCOption_ClosureReasonZ"); - *ret_copy = COption_ClosureReasonZ_some(o_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void handle_announcement_signatures_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKAnnouncementSignatures * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKAnnouncementSignatures msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = AnnouncementSignatures_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_announcement_signatures_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } - -uint32_t __attribute__((visibility("default"))) TS_COption_ClosureReasonZ_none() { - LDKCOption_ClosureReasonZ *ret_copy = MALLOC(sizeof(LDKCOption_ClosureReasonZ), "LDKCOption_ClosureReasonZ"); - *ret_copy = COption_ClosureReasonZ_none(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void peer_disconnected_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, bool no_connection_possible) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + js_invoke_function_2(j_calls->peer_disconnected_meth, (uint32_t)their_node_id_arr, (uint32_t)no_connection_possible); } - -void __attribute__((visibility("default"))) TS_COption_ClosureReasonZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCOption_ClosureReasonZ _res_conv = *(LDKCOption_ClosureReasonZ*)(_res_ptr); - FREE((void*)_res); - COption_ClosureReasonZ_free(_res_conv); +void peer_connected_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKInit * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKInit msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = Init_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->peer_connected_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } - -static inline uint64_t COption_ClosureReasonZ_clone_ptr(LDKCOption_ClosureReasonZ *NONNULL_PTR arg) { - LDKCOption_ClosureReasonZ *ret_copy = MALLOC(sizeof(LDKCOption_ClosureReasonZ), "LDKCOption_ClosureReasonZ"); - *ret_copy = COption_ClosureReasonZ_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void handle_channel_reestablish_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKChannelReestablish * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKChannelReestablish msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = ChannelReestablish_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_channel_reestablish_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } -int64_t __attribute__((visibility("default"))) TS_COption_ClosureReasonZ_clone_ptr(uint32_t arg) { - LDKCOption_ClosureReasonZ* arg_conv = (LDKCOption_ClosureReasonZ*)arg; - int64_t ret_val = COption_ClosureReasonZ_clone_ptr(arg_conv); - return ret_val; +void handle_channel_update_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKChannelUpdate * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKChannelUpdate msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = ChannelUpdate_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_channel_update_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } - -uint32_t __attribute__((visibility("default"))) TS_COption_ClosureReasonZ_clone(uint32_t orig) { - LDKCOption_ClosureReasonZ* orig_conv = (LDKCOption_ClosureReasonZ*)orig; - LDKCOption_ClosureReasonZ *ret_copy = MALLOC(sizeof(LDKCOption_ClosureReasonZ), "LDKCOption_ClosureReasonZ"); - *ret_copy = COption_ClosureReasonZ_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void handle_error_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKErrorMessage * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKErrorMessage msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = ErrorMessage_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_error_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_ok(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKCOption_ClosureReasonZ o_conv = *(LDKCOption_ClosureReasonZ*)(o_ptr); - o_conv = COption_ClosureReasonZ_clone((LDKCOption_ClosureReasonZ*)(((uint64_t)o) & ~1)); - LDKCResult_COption_ClosureReasonZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_ClosureReasonZDecodeErrorZ), "LDKCResult_COption_ClosureReasonZDecodeErrorZ"); - *ret_conv = CResult_COption_ClosureReasonZDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +static void LDKChannelMessageHandler_JCalls_cloned(LDKChannelMessageHandler* new_obj) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); + atomic_fetch_add_explicit(&j_calls->MessageSendEventsProvider->refcnt, 1, memory_order_release); } +static inline LDKChannelMessageHandler LDKChannelMessageHandler_init (/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */void* MessageSendEventsProvider) { + LDKChannelMessageHandler_JCalls *calls = MALLOC(sizeof(LDKChannelMessageHandler_JCalls), "LDKChannelMessageHandler_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -uint32_t __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_COption_ClosureReasonZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_ClosureReasonZDecodeErrorZ), "LDKCResult_COption_ClosureReasonZDecodeErrorZ"); - *ret_conv = CResult_COption_ClosureReasonZDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; + LDKChannelMessageHandler ret = { + .this_arg = (void*) calls, + .handle_open_channel = handle_open_channel_LDKChannelMessageHandler_jcall, + .handle_accept_channel = handle_accept_channel_LDKChannelMessageHandler_jcall, + .handle_funding_created = handle_funding_created_LDKChannelMessageHandler_jcall, + .handle_funding_signed = handle_funding_signed_LDKChannelMessageHandler_jcall, + .handle_funding_locked = handle_funding_locked_LDKChannelMessageHandler_jcall, + .handle_shutdown = handle_shutdown_LDKChannelMessageHandler_jcall, + .handle_closing_signed = handle_closing_signed_LDKChannelMessageHandler_jcall, + .handle_update_add_htlc = handle_update_add_htlc_LDKChannelMessageHandler_jcall, + .handle_update_fulfill_htlc = handle_update_fulfill_htlc_LDKChannelMessageHandler_jcall, + .handle_update_fail_htlc = handle_update_fail_htlc_LDKChannelMessageHandler_jcall, + .handle_update_fail_malformed_htlc = handle_update_fail_malformed_htlc_LDKChannelMessageHandler_jcall, + .handle_commitment_signed = handle_commitment_signed_LDKChannelMessageHandler_jcall, + .handle_revoke_and_ack = handle_revoke_and_ack_LDKChannelMessageHandler_jcall, + .handle_update_fee = handle_update_fee_LDKChannelMessageHandler_jcall, + .handle_announcement_signatures = handle_announcement_signatures_LDKChannelMessageHandler_jcall, + .peer_disconnected = peer_disconnected_LDKChannelMessageHandler_jcall, + .peer_connected = peer_connected_LDKChannelMessageHandler_jcall, + .handle_channel_reestablish = handle_channel_reestablish_LDKChannelMessageHandler_jcall, + .handle_channel_update = handle_channel_update_LDKChannelMessageHandler_jcall, + .handle_error = handle_error_LDKChannelMessageHandler_jcall, + .free = LDKChannelMessageHandler_JCalls_free, + .MessageSendEventsProvider = LDKMessageSendEventsProvider_init(MessageSendEventsProvider), + }; + calls->MessageSendEventsProvider = ret.MessageSendEventsProvider.this_arg; + return ret; } - -jboolean __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_COption_ClosureReasonZDecodeErrorZ* o_conv = (LDKCResult_COption_ClosureReasonZDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_COption_ClosureReasonZDecodeErrorZ_is_ok(o_conv); - return ret_val; +long __attribute__((visibility("default"))) TS_LDKChannelMessageHandler_new(/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */ void* MessageSendEventsProvider) { + LDKChannelMessageHandler *res_ptr = MALLOC(sizeof(LDKChannelMessageHandler), "LDKChannelMessageHandler"); + *res_ptr = LDKChannelMessageHandler_init(o, MessageSendEventsProvider); + return (long)res_ptr; } - -void __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_COption_ClosureReasonZDecodeErrorZ _res_conv = *(LDKCResult_COption_ClosureReasonZDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_COption_ClosureReasonZDecodeErrorZ_free(_res_conv); +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_open_channel(uint32_t this_arg, int8_tArray their_node_id, uint32_t their_features, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKInitFeatures their_features_conv; + their_features_conv.inner = (void*)(their_features & (~1)); + their_features_conv.is_owned = (their_features & 1) || (their_features == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(their_features_conv); + their_features_conv = InitFeatures_clone(&their_features_conv); + LDKOpenChannel msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_open_channel)(this_arg_conv->this_arg, their_node_id_ref, their_features_conv, &msg_conv); } -static inline uint64_t CResult_COption_ClosureReasonZDecodeErrorZ_clone_ptr(LDKCResult_COption_ClosureReasonZDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_COption_ClosureReasonZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_ClosureReasonZDecodeErrorZ), "LDKCResult_COption_ClosureReasonZDecodeErrorZ"); - *ret_conv = CResult_COption_ClosureReasonZDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_COption_ClosureReasonZDecodeErrorZ* arg_conv = (LDKCResult_COption_ClosureReasonZDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_COption_ClosureReasonZDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_accept_channel(uint32_t this_arg, int8_tArray their_node_id, uint32_t their_features, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKInitFeatures their_features_conv; + their_features_conv.inner = (void*)(their_features & (~1)); + their_features_conv.is_owned = (their_features & 1) || (their_features == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(their_features_conv); + their_features_conv = InitFeatures_clone(&their_features_conv); + LDKAcceptChannel msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_accept_channel)(this_arg_conv->this_arg, their_node_id_ref, their_features_conv, &msg_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_COption_ClosureReasonZDecodeErrorZ* orig_conv = (LDKCResult_COption_ClosureReasonZDecodeErrorZ*)(orig & ~1); - LDKCResult_COption_ClosureReasonZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_ClosureReasonZDecodeErrorZ), "LDKCResult_COption_ClosureReasonZDecodeErrorZ"); - *ret_conv = CResult_COption_ClosureReasonZDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_funding_created(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKFundingCreated msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_funding_created)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -uint32_t __attribute__((visibility("default"))) TS_COption_NetworkUpdateZ_some(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKNetworkUpdate o_conv = *(LDKNetworkUpdate*)(o_ptr); - o_conv = NetworkUpdate_clone((LDKNetworkUpdate*)(((uint64_t)o) & ~1)); - LDKCOption_NetworkUpdateZ *ret_copy = MALLOC(sizeof(LDKCOption_NetworkUpdateZ), "LDKCOption_NetworkUpdateZ"); - *ret_copy = COption_NetworkUpdateZ_some(o_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_funding_signed(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKFundingSigned msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_funding_signed)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -uint32_t __attribute__((visibility("default"))) TS_COption_NetworkUpdateZ_none() { - LDKCOption_NetworkUpdateZ *ret_copy = MALLOC(sizeof(LDKCOption_NetworkUpdateZ), "LDKCOption_NetworkUpdateZ"); - *ret_copy = COption_NetworkUpdateZ_none(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_funding_locked(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKFundingLocked msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_funding_locked)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -void __attribute__((visibility("default"))) TS_COption_NetworkUpdateZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCOption_NetworkUpdateZ _res_conv = *(LDKCOption_NetworkUpdateZ*)(_res_ptr); - FREE((void*)_res); - COption_NetworkUpdateZ_free(_res_conv); +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_shutdown(uint32_t this_arg, int8_tArray their_node_id, uint32_t their_features, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKInitFeatures their_features_conv; + their_features_conv.inner = (void*)(their_features & (~1)); + their_features_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(their_features_conv); + LDKShutdown msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_shutdown)(this_arg_conv->this_arg, their_node_id_ref, &their_features_conv, &msg_conv); } -static inline uint64_t COption_NetworkUpdateZ_clone_ptr(LDKCOption_NetworkUpdateZ *NONNULL_PTR arg) { - LDKCOption_NetworkUpdateZ *ret_copy = MALLOC(sizeof(LDKCOption_NetworkUpdateZ), "LDKCOption_NetworkUpdateZ"); - *ret_copy = COption_NetworkUpdateZ_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_closing_signed(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKClosingSigned msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_closing_signed)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -int64_t __attribute__((visibility("default"))) TS_COption_NetworkUpdateZ_clone_ptr(uint32_t arg) { - LDKCOption_NetworkUpdateZ* arg_conv = (LDKCOption_NetworkUpdateZ*)arg; - int64_t ret_val = COption_NetworkUpdateZ_clone_ptr(arg_conv); - return ret_val; + +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_update_add_htlc(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKUpdateAddHTLC msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_update_add_htlc)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -uint32_t __attribute__((visibility("default"))) TS_COption_NetworkUpdateZ_clone(uint32_t orig) { - LDKCOption_NetworkUpdateZ* orig_conv = (LDKCOption_NetworkUpdateZ*)orig; - LDKCOption_NetworkUpdateZ *ret_copy = MALLOC(sizeof(LDKCOption_NetworkUpdateZ), "LDKCOption_NetworkUpdateZ"); - *ret_copy = COption_NetworkUpdateZ_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_update_fulfill_htlc(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKUpdateFulfillHTLC msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_update_fulfill_htlc)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -void __attribute__((visibility("default"))) TS_CVec_SpendableOutputDescriptorZ_free(uint32_tArray _res) { - LDKCVec_SpendableOutputDescriptorZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKSpendableOutputDescriptor), "LDKCVec_SpendableOutputDescriptorZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t b = 0; b < _res_constr.datalen; b++) { - uint32_t _res_conv_27 = _res_vals[b]; - void* _res_conv_27_ptr = (void*)(((uint64_t)_res_conv_27) & ~1); - CHECK_ACCESS(_res_conv_27_ptr); - LDKSpendableOutputDescriptor _res_conv_27_conv = *(LDKSpendableOutputDescriptor*)(_res_conv_27_ptr); - FREE((void*)_res_conv_27); - _res_constr.data[b] = _res_conv_27_conv; - } - CVec_SpendableOutputDescriptorZ_free(_res_constr); +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_update_fail_htlc(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKUpdateFailHTLC msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_update_fail_htlc)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -uint32_t __attribute__((visibility("default"))) TS_COption_EventZ_some(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKEvent o_conv = *(LDKEvent*)(o_ptr); - o_conv = Event_clone((LDKEvent*)(((uint64_t)o) & ~1)); - LDKCOption_EventZ *ret_copy = MALLOC(sizeof(LDKCOption_EventZ), "LDKCOption_EventZ"); - *ret_copy = COption_EventZ_some(o_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_update_fail_malformed_htlc(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKUpdateFailMalformedHTLC msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_update_fail_malformed_htlc)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -uint32_t __attribute__((visibility("default"))) TS_COption_EventZ_none() { - LDKCOption_EventZ *ret_copy = MALLOC(sizeof(LDKCOption_EventZ), "LDKCOption_EventZ"); - *ret_copy = COption_EventZ_none(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_commitment_signed(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKCommitmentSigned msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_commitment_signed)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -void __attribute__((visibility("default"))) TS_COption_EventZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCOption_EventZ _res_conv = *(LDKCOption_EventZ*)(_res_ptr); - FREE((void*)_res); - COption_EventZ_free(_res_conv); +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_revoke_and_ack(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKRevokeAndACK msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_revoke_and_ack)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -static inline uint64_t COption_EventZ_clone_ptr(LDKCOption_EventZ *NONNULL_PTR arg) { - LDKCOption_EventZ *ret_copy = MALLOC(sizeof(LDKCOption_EventZ), "LDKCOption_EventZ"); - *ret_copy = COption_EventZ_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_update_fee(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKUpdateFee msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_update_fee)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -int64_t __attribute__((visibility("default"))) TS_COption_EventZ_clone_ptr(uint32_t arg) { - LDKCOption_EventZ* arg_conv = (LDKCOption_EventZ*)arg; - int64_t ret_val = COption_EventZ_clone_ptr(arg_conv); - return ret_val; + +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_announcement_signatures(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKAnnouncementSignatures msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_announcement_signatures)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -uint32_t __attribute__((visibility("default"))) TS_COption_EventZ_clone(uint32_t orig) { - LDKCOption_EventZ* orig_conv = (LDKCOption_EventZ*)orig; - LDKCOption_EventZ *ret_copy = MALLOC(sizeof(LDKCOption_EventZ), "LDKCOption_EventZ"); - *ret_copy = COption_EventZ_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_peer_disconnected(uint32_t this_arg, int8_tArray their_node_id, jboolean no_connection_possible) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + (this_arg_conv->peer_disconnected)(this_arg_conv->this_arg, their_node_id_ref, no_connection_possible); } -uint32_t __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_ok(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKCOption_EventZ o_conv = *(LDKCOption_EventZ*)(o_ptr); - o_conv = COption_EventZ_clone((LDKCOption_EventZ*)(((uint64_t)o) & ~1)); - LDKCResult_COption_EventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_EventZDecodeErrorZ), "LDKCResult_COption_EventZDecodeErrorZ"); - *ret_conv = CResult_COption_EventZDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_peer_connected(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKInit msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->peer_connected)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_COption_EventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_EventZDecodeErrorZ), "LDKCResult_COption_EventZDecodeErrorZ"); - *ret_conv = CResult_COption_EventZDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_channel_reestablish(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKChannelReestablish msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_channel_reestablish)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -jboolean __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_COption_EventZDecodeErrorZ* o_conv = (LDKCResult_COption_EventZDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_COption_EventZDecodeErrorZ_is_ok(o_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_channel_update(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKChannelUpdate msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_channel_update)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -void __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_COption_EventZDecodeErrorZ _res_conv = *(LDKCResult_COption_EventZDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_COption_EventZDecodeErrorZ_free(_res_conv); +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_error(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKErrorMessage msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_error)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -static inline uint64_t CResult_COption_EventZDecodeErrorZ_clone_ptr(LDKCResult_COption_EventZDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_COption_EventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_EventZDecodeErrorZ), "LDKCResult_COption_EventZDecodeErrorZ"); - *ret_conv = CResult_COption_EventZDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +typedef struct LDKRoutingMessageHandler_JCalls { + atomic_size_t refcnt; + LDKMessageSendEventsProvider_JCalls* MessageSendEventsProvider; + uint32_t handle_node_announcement_meth; + uint32_t handle_channel_announcement_meth; + uint32_t handle_channel_update_meth; + uint32_t get_next_channel_announcements_meth; + uint32_t get_next_node_announcements_meth; + uint32_t sync_routing_table_meth; + uint32_t handle_reply_channel_range_meth; + uint32_t handle_reply_short_channel_ids_end_meth; + uint32_t handle_query_channel_range_meth; + uint32_t handle_query_short_channel_ids_meth; +} LDKRoutingMessageHandler_JCalls; +static void LDKRoutingMessageHandler_JCalls_free(void* this_arg) { + LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->handle_node_announcement_meth); + js_free_function_ptr(j_calls->handle_channel_announcement_meth); + js_free_function_ptr(j_calls->handle_channel_update_meth); + js_free_function_ptr(j_calls->get_next_channel_announcements_meth); + js_free_function_ptr(j_calls->get_next_node_announcements_meth); + js_free_function_ptr(j_calls->sync_routing_table_meth); + js_free_function_ptr(j_calls->handle_reply_channel_range_meth); + js_free_function_ptr(j_calls->handle_reply_short_channel_ids_end_meth); + js_free_function_ptr(j_calls->handle_query_channel_range_meth); + js_free_function_ptr(j_calls->handle_query_short_channel_ids_meth); + FREE(j_calls); + } } -int64_t __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_COption_EventZDecodeErrorZ* arg_conv = (LDKCResult_COption_EventZDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_COption_EventZDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +LDKCResult_boolLightningErrorZ handle_node_announcement_LDKRoutingMessageHandler_jcall(const void* this_arg, const LDKNodeAnnouncement * msg) { + LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; + LDKNodeAnnouncement msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = NodeAnnouncement_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + uint32_t ret = js_invoke_function_1(j_calls->handle_node_announcement_meth, (uint32_t)msg_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_boolLightningErrorZ ret_conv = *(LDKCResult_boolLightningErrorZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_COption_EventZDecodeErrorZ* orig_conv = (LDKCResult_COption_EventZDecodeErrorZ*)(orig & ~1); - LDKCResult_COption_EventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_EventZDecodeErrorZ), "LDKCResult_COption_EventZDecodeErrorZ"); - *ret_conv = CResult_COption_EventZDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +LDKCResult_boolLightningErrorZ handle_channel_announcement_LDKRoutingMessageHandler_jcall(const void* this_arg, const LDKChannelAnnouncement * msg) { + LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; + LDKChannelAnnouncement msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = ChannelAnnouncement_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + uint32_t ret = js_invoke_function_1(j_calls->handle_channel_announcement_meth, (uint32_t)msg_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_boolLightningErrorZ ret_conv = *(LDKCResult_boolLightningErrorZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } - -void __attribute__((visibility("default"))) TS_CVec_MessageSendEventZ_free(uint32_tArray _res) { - LDKCVec_MessageSendEventZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKMessageSendEvent), "LDKCVec_MessageSendEventZ Elements"); +LDKCResult_boolLightningErrorZ handle_channel_update_LDKRoutingMessageHandler_jcall(const void* this_arg, const LDKChannelUpdate * msg) { + LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; + LDKChannelUpdate msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = ChannelUpdate_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + uint32_t ret = js_invoke_function_1(j_calls->handle_channel_update_meth, (uint32_t)msg_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_boolLightningErrorZ ret_conv = *(LDKCResult_boolLightningErrorZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; +} +LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ get_next_channel_announcements_LDKRoutingMessageHandler_jcall(const void* this_arg, uint64_t starting_point, uint8_t batch_amount) { + LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; + uint32_tArray ret = (uint32_tArray)js_invoke_function_2(j_calls->get_next_channel_announcements_meth, (uint32_t)starting_point, (uint32_t)batch_amount); + LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ ret_constr; + ret_constr.datalen = ret->arr_len; + if (ret_constr.datalen > 0) + ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ), "LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ Elements"); + else + ret_constr.data = NULL; + uint32_t* ret_vals = ret->elems; + for (size_t h = 0; h < ret_constr.datalen; h++) { + uint32_t ret_conv_59 = ret_vals[h]; + void* ret_conv_59_ptr = (void*)(((uint64_t)ret_conv_59) & ~1); + CHECK_ACCESS(ret_conv_59_ptr); + LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ ret_conv_59_conv = *(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(ret_conv_59_ptr); + FREE((void*)ret_conv_59); + ret_constr.data[h] = ret_conv_59_conv; + } + return ret_constr; +} +LDKCVec_NodeAnnouncementZ get_next_node_announcements_LDKRoutingMessageHandler_jcall(const void* this_arg, LDKPublicKey starting_point, uint8_t batch_amount) { + LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; + int8_tArray starting_point_arr = init_int8_tArray(33); + memcpy(starting_point_arr->elems, starting_point.compressed_form, 33); + uint32_tArray ret = (uint32_tArray)js_invoke_function_2(j_calls->get_next_node_announcements_meth, (uint32_t)starting_point_arr, (uint32_t)batch_amount); + LDKCVec_NodeAnnouncementZ ret_constr; + ret_constr.datalen = ret->arr_len; + if (ret_constr.datalen > 0) + ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKNodeAnnouncement), "LDKCVec_NodeAnnouncementZ Elements"); else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t s = 0; s < _res_constr.datalen; s++) { - uint32_t _res_conv_18 = _res_vals[s]; - void* _res_conv_18_ptr = (void*)(((uint64_t)_res_conv_18) & ~1); - CHECK_ACCESS(_res_conv_18_ptr); - LDKMessageSendEvent _res_conv_18_conv = *(LDKMessageSendEvent*)(_res_conv_18_ptr); - FREE((void*)_res_conv_18); - _res_constr.data[s] = _res_conv_18_conv; + ret_constr.data = NULL; + uint32_t* ret_vals = ret->elems; + for (size_t s = 0; s < ret_constr.datalen; s++) { + uint32_t ret_conv_18 = ret_vals[s]; + LDKNodeAnnouncement ret_conv_18_conv; + ret_conv_18_conv.inner = (void*)(ret_conv_18 & (~1)); + ret_conv_18_conv.is_owned = (ret_conv_18 & 1) || (ret_conv_18 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_18_conv); + ret_constr.data[s] = ret_conv_18_conv; } - CVec_MessageSendEventZ_free(_res_constr); + return ret_constr; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_ScoringParametersDecodeErrorZ_ok(uint32_t o) { - LDKScoringParameters o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - // Warning: we need a move here but no clone is available for LDKScoringParameters - LDKCResult_ScoringParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ScoringParametersDecodeErrorZ), "LDKCResult_ScoringParametersDecodeErrorZ"); - *ret_conv = CResult_ScoringParametersDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +void sync_routing_table_LDKRoutingMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKInit * init) { + LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKInit init_var = *init; + uint64_t init_ref = 0; + init_var = Init_clone(init); + CHECK((((uint64_t)init_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&init_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(init_var); + init_ref = (uint64_t)init_var.inner; + if (init_var.is_owned) { + init_ref |= 1; + } + js_invoke_function_2(j_calls->sync_routing_table_meth, (uint32_t)their_node_id_arr, (uint32_t)init_ref); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_ScoringParametersDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_ScoringParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ScoringParametersDecodeErrorZ), "LDKCResult_ScoringParametersDecodeErrorZ"); - *ret_conv = CResult_ScoringParametersDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +LDKCResult_NoneLightningErrorZ handle_reply_channel_range_LDKRoutingMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, LDKReplyChannelRange msg) { + LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKReplyChannelRange msg_var = msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + uint32_t ret = js_invoke_function_2(j_calls->handle_reply_channel_range_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } - -jboolean __attribute__((visibility("default"))) TS_CResult_ScoringParametersDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ScoringParametersDecodeErrorZ* o_conv = (LDKCResult_ScoringParametersDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ScoringParametersDecodeErrorZ_is_ok(o_conv); - return ret_val; +LDKCResult_NoneLightningErrorZ handle_reply_short_channel_ids_end_LDKRoutingMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, LDKReplyShortChannelIdsEnd msg) { + LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKReplyShortChannelIdsEnd msg_var = msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + uint32_t ret = js_invoke_function_2(j_calls->handle_reply_short_channel_ids_end_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } - -void __attribute__((visibility("default"))) TS_CResult_ScoringParametersDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_ScoringParametersDecodeErrorZ _res_conv = *(LDKCResult_ScoringParametersDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_ScoringParametersDecodeErrorZ_free(_res_conv); +LDKCResult_NoneLightningErrorZ handle_query_channel_range_LDKRoutingMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, LDKQueryChannelRange msg) { + LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKQueryChannelRange msg_var = msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + uint32_t ret = js_invoke_function_2(j_calls->handle_query_channel_range_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_ScorerDecodeErrorZ_ok(uint32_t o) { - LDKScorer o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - // Warning: we need a move here but no clone is available for LDKScorer - LDKCResult_ScorerDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ScorerDecodeErrorZ), "LDKCResult_ScorerDecodeErrorZ"); - *ret_conv = CResult_ScorerDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +LDKCResult_NoneLightningErrorZ handle_query_short_channel_ids_LDKRoutingMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, LDKQueryShortChannelIds msg) { + LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKQueryShortChannelIds msg_var = msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + uint32_t ret = js_invoke_function_2(j_calls->handle_query_short_channel_ids_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_ScorerDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_ScorerDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ScorerDecodeErrorZ), "LDKCResult_ScorerDecodeErrorZ"); - *ret_conv = CResult_ScorerDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +static void LDKRoutingMessageHandler_JCalls_cloned(LDKRoutingMessageHandler* new_obj) { + LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); + atomic_fetch_add_explicit(&j_calls->MessageSendEventsProvider->refcnt, 1, memory_order_release); } +static inline LDKRoutingMessageHandler LDKRoutingMessageHandler_init (/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */void* MessageSendEventsProvider) { + LDKRoutingMessageHandler_JCalls *calls = MALLOC(sizeof(LDKRoutingMessageHandler_JCalls), "LDKRoutingMessageHandler_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -jboolean __attribute__((visibility("default"))) TS_CResult_ScorerDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ScorerDecodeErrorZ* o_conv = (LDKCResult_ScorerDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ScorerDecodeErrorZ_is_ok(o_conv); - return ret_val; + LDKRoutingMessageHandler ret = { + .this_arg = (void*) calls, + .handle_node_announcement = handle_node_announcement_LDKRoutingMessageHandler_jcall, + .handle_channel_announcement = handle_channel_announcement_LDKRoutingMessageHandler_jcall, + .handle_channel_update = handle_channel_update_LDKRoutingMessageHandler_jcall, + .get_next_channel_announcements = get_next_channel_announcements_LDKRoutingMessageHandler_jcall, + .get_next_node_announcements = get_next_node_announcements_LDKRoutingMessageHandler_jcall, + .sync_routing_table = sync_routing_table_LDKRoutingMessageHandler_jcall, + .handle_reply_channel_range = handle_reply_channel_range_LDKRoutingMessageHandler_jcall, + .handle_reply_short_channel_ids_end = handle_reply_short_channel_ids_end_LDKRoutingMessageHandler_jcall, + .handle_query_channel_range = handle_query_channel_range_LDKRoutingMessageHandler_jcall, + .handle_query_short_channel_ids = handle_query_short_channel_ids_LDKRoutingMessageHandler_jcall, + .free = LDKRoutingMessageHandler_JCalls_free, + .MessageSendEventsProvider = LDKMessageSendEventsProvider_init(MessageSendEventsProvider), + }; + calls->MessageSendEventsProvider = ret.MessageSendEventsProvider.this_arg; + return ret; } - -void __attribute__((visibility("default"))) TS_CResult_ScorerDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_ScorerDecodeErrorZ _res_conv = *(LDKCResult_ScorerDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_ScorerDecodeErrorZ_free(_res_conv); +long __attribute__((visibility("default"))) TS_LDKRoutingMessageHandler_new(/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */ void* MessageSendEventsProvider) { + LDKRoutingMessageHandler *res_ptr = MALLOC(sizeof(LDKRoutingMessageHandler), "LDKRoutingMessageHandler"); + *res_ptr = LDKRoutingMessageHandler_init(o, MessageSendEventsProvider); + return (long)res_ptr; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_InitFeaturesDecodeErrorZ_ok(uint32_t o) { - LDKInitFeatures o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = InitFeatures_clone(&o_conv); - LDKCResult_InitFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitFeaturesDecodeErrorZ), "LDKCResult_InitFeaturesDecodeErrorZ"); - *ret_conv = CResult_InitFeaturesDecodeErrorZ_ok(o_conv); +uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_node_announcement(uint32_t this_arg, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; + LDKNodeAnnouncement msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); + *ret_conv = (this_arg_conv->handle_node_announcement)(this_arg_conv->this_arg, &msg_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InitFeaturesDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_InitFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitFeaturesDecodeErrorZ), "LDKCResult_InitFeaturesDecodeErrorZ"); - *ret_conv = CResult_InitFeaturesDecodeErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_channel_announcement(uint32_t this_arg, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; + LDKChannelAnnouncement msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); + *ret_conv = (this_arg_conv->handle_channel_announcement)(this_arg_conv->this_arg, &msg_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_InitFeaturesDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_InitFeaturesDecodeErrorZ* o_conv = (LDKCResult_InitFeaturesDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_InitFeaturesDecodeErrorZ_is_ok(o_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_CResult_InitFeaturesDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_InitFeaturesDecodeErrorZ _res_conv = *(LDKCResult_InitFeaturesDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_InitFeaturesDecodeErrorZ_free(_res_conv); +uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_channel_update(uint32_t this_arg, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; + LDKChannelUpdate msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); + *ret_conv = (this_arg_conv->handle_channel_update)(this_arg_conv->this_arg, &msg_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelFeaturesDecodeErrorZ_ok(uint32_t o) { - LDKChannelFeatures o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ChannelFeatures_clone(&o_conv); - LDKCResult_ChannelFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelFeaturesDecodeErrorZ), "LDKCResult_ChannelFeaturesDecodeErrorZ"); - *ret_conv = CResult_ChannelFeaturesDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +uint32_tArray __attribute__((visibility("default"))) TS_RoutingMessageHandler_get_next_channel_announcements(uint32_t this_arg, int64_t starting_point, int8_t batch_amount) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; + LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ ret_var = (this_arg_conv->get_next_channel_announcements)(this_arg_conv->this_arg, starting_point, batch_amount); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t h = 0; h < ret_var.datalen; h++) { + LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* ret_conv_59_conv = MALLOC(sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ), "LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ"); + *ret_conv_59_conv = ret_var.data[h]; + ret_arr_ptr[h] = ((uint64_t)ret_conv_59_conv); + } + + FREE(ret_var.data); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelFeaturesDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_ChannelFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelFeaturesDecodeErrorZ), "LDKCResult_ChannelFeaturesDecodeErrorZ"); - *ret_conv = CResult_ChannelFeaturesDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +uint32_tArray __attribute__((visibility("default"))) TS_RoutingMessageHandler_get_next_node_announcements(uint32_t this_arg, int8_tArray starting_point, int8_t batch_amount) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; + LDKPublicKey starting_point_ref; + CHECK(starting_point->arr_len == 33); + memcpy(starting_point_ref.compressed_form, starting_point->elems, 33); + LDKCVec_NodeAnnouncementZ ret_var = (this_arg_conv->get_next_node_announcements)(this_arg_conv->this_arg, starting_point_ref, batch_amount); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t s = 0; s < ret_var.datalen; s++) { + LDKNodeAnnouncement ret_conv_18_var = ret_var.data[s]; + uint64_t ret_conv_18_ref = 0; + CHECK((((uint64_t)ret_conv_18_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_conv_18_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_18_var); + ret_conv_18_ref = (uint64_t)ret_conv_18_var.inner; + if (ret_conv_18_var.is_owned) { + ret_conv_18_ref |= 1; + } + ret_arr_ptr[s] = ret_conv_18_ref; + } + + FREE(ret_var.data); + return ret_arr; } -jboolean __attribute__((visibility("default"))) TS_CResult_ChannelFeaturesDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ChannelFeaturesDecodeErrorZ* o_conv = (LDKCResult_ChannelFeaturesDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ChannelFeaturesDecodeErrorZ_is_ok(o_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_RoutingMessageHandler_sync_routing_table(uint32_t this_arg, int8_tArray their_node_id, uint32_t init) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKInit init_conv; + init_conv.inner = (void*)(init & (~1)); + init_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(init_conv); + (this_arg_conv->sync_routing_table)(this_arg_conv->this_arg, their_node_id_ref, &init_conv); } -void __attribute__((visibility("default"))) TS_CResult_ChannelFeaturesDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_ChannelFeaturesDecodeErrorZ _res_conv = *(LDKCResult_ChannelFeaturesDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_ChannelFeaturesDecodeErrorZ_free(_res_conv); +uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_reply_channel_range(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKReplyChannelRange msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = ReplyChannelRange_clone(&msg_conv); + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = (this_arg_conv->handle_reply_channel_range)(this_arg_conv->this_arg, their_node_id_ref, msg_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NodeFeaturesDecodeErrorZ_ok(uint32_t o) { - LDKNodeFeatures o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = NodeFeatures_clone(&o_conv); - LDKCResult_NodeFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeFeaturesDecodeErrorZ), "LDKCResult_NodeFeaturesDecodeErrorZ"); - *ret_conv = CResult_NodeFeaturesDecodeErrorZ_ok(o_conv); +uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_reply_short_channel_ids_end(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKReplyShortChannelIdsEnd msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = ReplyShortChannelIdsEnd_clone(&msg_conv); + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = (this_arg_conv->handle_reply_short_channel_ids_end)(this_arg_conv->this_arg, their_node_id_ref, msg_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NodeFeaturesDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_NodeFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeFeaturesDecodeErrorZ), "LDKCResult_NodeFeaturesDecodeErrorZ"); - *ret_conv = CResult_NodeFeaturesDecodeErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_query_channel_range(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKQueryChannelRange msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = QueryChannelRange_clone(&msg_conv); + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = (this_arg_conv->handle_query_channel_range)(this_arg_conv->this_arg, their_node_id_ref, msg_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_NodeFeaturesDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_NodeFeaturesDecodeErrorZ* o_conv = (LDKCResult_NodeFeaturesDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_NodeFeaturesDecodeErrorZ_is_ok(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_query_short_channel_ids(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKQueryShortChannelIds msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = QueryShortChannelIds_clone(&msg_conv); + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = (this_arg_conv->handle_query_short_channel_ids)(this_arg_conv->this_arg, their_node_id_ref, msg_conv); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_CResult_NodeFeaturesDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_NodeFeaturesDecodeErrorZ _res_conv = *(LDKCResult_NodeFeaturesDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_NodeFeaturesDecodeErrorZ_free(_res_conv); +typedef struct LDKCustomMessageReader_JCalls { + atomic_size_t refcnt; + uint32_t read_meth; +} LDKCustomMessageReader_JCalls; +static void LDKCustomMessageReader_JCalls_free(void* this_arg) { + LDKCustomMessageReader_JCalls *j_calls = (LDKCustomMessageReader_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->read_meth); + FREE(j_calls); + } } - -uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceFeaturesDecodeErrorZ_ok(uint32_t o) { - LDKInvoiceFeatures o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = InvoiceFeatures_clone(&o_conv); - LDKCResult_InvoiceFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceFeaturesDecodeErrorZ), "LDKCResult_InvoiceFeaturesDecodeErrorZ"); - *ret_conv = CResult_InvoiceFeaturesDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +LDKCResult_COption_TypeZDecodeErrorZ read_LDKCustomMessageReader_jcall(const void* this_arg, uint16_t message_type, LDKu8slice buffer) { + LDKCustomMessageReader_JCalls *j_calls = (LDKCustomMessageReader_JCalls*) this_arg; + LDKu8slice buffer_var = buffer; + int8_tArray buffer_arr = init_int8_tArray(buffer_var.datalen); + memcpy(buffer_arr->elems, buffer_var.data, buffer_var.datalen); + uint32_t ret = js_invoke_function_2(j_calls->read_meth, (uint32_t)message_type, (uint32_t)buffer_arr); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_COption_TypeZDecodeErrorZ ret_conv = *(LDKCResult_COption_TypeZDecodeErrorZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceFeaturesDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_InvoiceFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceFeaturesDecodeErrorZ), "LDKCResult_InvoiceFeaturesDecodeErrorZ"); - *ret_conv = CResult_InvoiceFeaturesDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +static void LDKCustomMessageReader_JCalls_cloned(LDKCustomMessageReader* new_obj) { + LDKCustomMessageReader_JCalls *j_calls = (LDKCustomMessageReader_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKCustomMessageReader LDKCustomMessageReader_init (/*TODO: JS Object Reference */void* o) { + LDKCustomMessageReader_JCalls *calls = MALLOC(sizeof(LDKCustomMessageReader_JCalls), "LDKCustomMessageReader_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -jboolean __attribute__((visibility("default"))) TS_CResult_InvoiceFeaturesDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_InvoiceFeaturesDecodeErrorZ* o_conv = (LDKCResult_InvoiceFeaturesDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_InvoiceFeaturesDecodeErrorZ_is_ok(o_conv); - return ret_val; + LDKCustomMessageReader ret = { + .this_arg = (void*) calls, + .read = read_LDKCustomMessageReader_jcall, + .free = LDKCustomMessageReader_JCalls_free, + }; + return ret; } - -void __attribute__((visibility("default"))) TS_CResult_InvoiceFeaturesDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_InvoiceFeaturesDecodeErrorZ _res_conv = *(LDKCResult_InvoiceFeaturesDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_InvoiceFeaturesDecodeErrorZ_free(_res_conv); +long __attribute__((visibility("default"))) TS_LDKCustomMessageReader_new(/*TODO: JS Object Reference */void* o) { + LDKCustomMessageReader *res_ptr = MALLOC(sizeof(LDKCustomMessageReader), "LDKCustomMessageReader"); + *res_ptr = LDKCustomMessageReader_init(o); + return (long)res_ptr; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTypeFeaturesDecodeErrorZ_ok(uint32_t o) { - LDKChannelTypeFeatures o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ChannelTypeFeatures_clone(&o_conv); - LDKCResult_ChannelTypeFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTypeFeaturesDecodeErrorZ), "LDKCResult_ChannelTypeFeaturesDecodeErrorZ"); - *ret_conv = CResult_ChannelTypeFeaturesDecodeErrorZ_ok(o_conv); +uint32_t __attribute__((visibility("default"))) TS_CustomMessageReader_read(uint32_t this_arg, int16_t message_type, int8_tArray buffer) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKCustomMessageReader* this_arg_conv = (LDKCustomMessageReader*)this_arg_ptr; + LDKu8slice buffer_ref; + buffer_ref.datalen = buffer->arr_len; + buffer_ref.data = buffer->elems; + LDKCResult_COption_TypeZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_TypeZDecodeErrorZ), "LDKCResult_COption_TypeZDecodeErrorZ"); + *ret_conv = (this_arg_conv->read)(this_arg_conv->this_arg, message_type, buffer_ref); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTypeFeaturesDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_ChannelTypeFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTypeFeaturesDecodeErrorZ), "LDKCResult_ChannelTypeFeaturesDecodeErrorZ"); - *ret_conv = CResult_ChannelTypeFeaturesDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +typedef struct LDKCustomMessageHandler_JCalls { + atomic_size_t refcnt; + LDKCustomMessageReader_JCalls* CustomMessageReader; + uint32_t handle_custom_message_meth; + uint32_t get_and_clear_pending_msg_meth; +} LDKCustomMessageHandler_JCalls; +static void LDKCustomMessageHandler_JCalls_free(void* this_arg) { + LDKCustomMessageHandler_JCalls *j_calls = (LDKCustomMessageHandler_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->handle_custom_message_meth); + js_free_function_ptr(j_calls->get_and_clear_pending_msg_meth); + FREE(j_calls); + } +} +LDKCResult_NoneLightningErrorZ handle_custom_message_LDKCustomMessageHandler_jcall(const void* this_arg, LDKType msg, LDKPublicKey sender_node_id) { + LDKCustomMessageHandler_JCalls *j_calls = (LDKCustomMessageHandler_JCalls*) this_arg; + LDKType* msg_ret = MALLOC(sizeof(LDKType), "LDKType"); + *msg_ret = msg; + int8_tArray sender_node_id_arr = init_int8_tArray(33); + memcpy(sender_node_id_arr->elems, sender_node_id.compressed_form, 33); + uint32_t ret = js_invoke_function_2(j_calls->handle_custom_message_meth, (uint32_t)(uint64_t)msg_ret, (uint32_t)sender_node_id_arr); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; +} +LDKCVec_C2Tuple_PublicKeyTypeZZ get_and_clear_pending_msg_LDKCustomMessageHandler_jcall(const void* this_arg) { + LDKCustomMessageHandler_JCalls *j_calls = (LDKCustomMessageHandler_JCalls*) this_arg; + uint32_tArray ret = (uint32_tArray)js_invoke_function_0(j_calls->get_and_clear_pending_msg_meth); + LDKCVec_C2Tuple_PublicKeyTypeZZ ret_constr; + ret_constr.datalen = ret->arr_len; + if (ret_constr.datalen > 0) + ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKC2Tuple_PublicKeyTypeZ), "LDKCVec_C2Tuple_PublicKeyTypeZZ Elements"); + else + ret_constr.data = NULL; + uint32_t* ret_vals = ret->elems; + for (size_t z = 0; z < ret_constr.datalen; z++) { + uint32_t ret_conv_25 = ret_vals[z]; + void* ret_conv_25_ptr = (void*)(((uint64_t)ret_conv_25) & ~1); + CHECK_ACCESS(ret_conv_25_ptr); + LDKC2Tuple_PublicKeyTypeZ ret_conv_25_conv = *(LDKC2Tuple_PublicKeyTypeZ*)(ret_conv_25_ptr); + FREE((void*)ret_conv_25); + ret_constr.data[z] = ret_conv_25_conv; + } + return ret_constr; } - -jboolean __attribute__((visibility("default"))) TS_CResult_ChannelTypeFeaturesDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ChannelTypeFeaturesDecodeErrorZ* o_conv = (LDKCResult_ChannelTypeFeaturesDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ChannelTypeFeaturesDecodeErrorZ_is_ok(o_conv); - return ret_val; +static void LDKCustomMessageHandler_JCalls_cloned(LDKCustomMessageHandler* new_obj) { + LDKCustomMessageHandler_JCalls *j_calls = (LDKCustomMessageHandler_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); + atomic_fetch_add_explicit(&j_calls->CustomMessageReader->refcnt, 1, memory_order_release); } +static inline LDKCustomMessageHandler LDKCustomMessageHandler_init (/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */void* CustomMessageReader) { + LDKCustomMessageHandler_JCalls *calls = MALLOC(sizeof(LDKCustomMessageHandler_JCalls), "LDKCustomMessageHandler_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -void __attribute__((visibility("default"))) TS_CResult_ChannelTypeFeaturesDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_ChannelTypeFeaturesDecodeErrorZ _res_conv = *(LDKCResult_ChannelTypeFeaturesDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_ChannelTypeFeaturesDecodeErrorZ_free(_res_conv); + LDKCustomMessageHandler ret = { + .this_arg = (void*) calls, + .handle_custom_message = handle_custom_message_LDKCustomMessageHandler_jcall, + .get_and_clear_pending_msg = get_and_clear_pending_msg_LDKCustomMessageHandler_jcall, + .free = LDKCustomMessageHandler_JCalls_free, + .CustomMessageReader = LDKCustomMessageReader_init(CustomMessageReader), + }; + calls->CustomMessageReader = ret.CustomMessageReader.this_arg; + return ret; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_ok(uint32_t o) { - LDKDelayedPaymentOutputDescriptor o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = DelayedPaymentOutputDescriptor_clone(&o_conv); - LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ"); - *ret_conv = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +long __attribute__((visibility("default"))) TS_LDKCustomMessageHandler_new(/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */ void* CustomMessageReader) { + LDKCustomMessageHandler *res_ptr = MALLOC(sizeof(LDKCustomMessageHandler), "LDKCustomMessageHandler"); + *res_ptr = LDKCustomMessageHandler_init(o, CustomMessageReader); + return (long)res_ptr; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ"); - *ret_conv = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CustomMessageHandler_handle_custom_message(uint32_t this_arg, uint32_t msg, int8_tArray sender_node_id) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKCustomMessageHandler* this_arg_conv = (LDKCustomMessageHandler*)this_arg_ptr; + void* msg_ptr = (void*)(((uint64_t)msg) & ~1); + CHECK_ACCESS(msg_ptr); + LDKType msg_conv = *(LDKType*)(msg_ptr); + LDKPublicKey sender_node_id_ref; + CHECK(sender_node_id->arr_len == 33); + memcpy(sender_node_id_ref.compressed_form, sender_node_id->elems, 33); + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = (this_arg_conv->handle_custom_message)(this_arg_conv->this_arg, msg_conv, sender_node_id_ref); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* o_conv = (LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_is_ok(o_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ _res_conv = *(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_free(_res_conv); +uint32_tArray __attribute__((visibility("default"))) TS_CustomMessageHandler_get_and_clear_pending_msg(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKCustomMessageHandler* this_arg_conv = (LDKCustomMessageHandler*)this_arg_ptr; + LDKCVec_C2Tuple_PublicKeyTypeZZ ret_var = (this_arg_conv->get_and_clear_pending_msg)(this_arg_conv->this_arg); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t z = 0; z < ret_var.datalen; z++) { + LDKC2Tuple_PublicKeyTypeZ* ret_conv_25_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyTypeZ), "LDKC2Tuple_PublicKeyTypeZ"); + *ret_conv_25_conv = ret_var.data[z]; + ret_arr_ptr[z] = ((uint64_t)ret_conv_25_conv); + } + + FREE(ret_var.data); + return ret_arr; } -static inline uint64_t CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone_ptr(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ"); - *ret_conv = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +typedef struct LDKSocketDescriptor_JCalls { + atomic_size_t refcnt; + uint32_t send_data_meth; + uint32_t disconnect_socket_meth; + uint32_t eq_meth; + uint32_t hash_meth; +} LDKSocketDescriptor_JCalls; +static void LDKSocketDescriptor_JCalls_free(void* this_arg) { + LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->send_data_meth); + js_free_function_ptr(j_calls->disconnect_socket_meth); + js_free_function_ptr(j_calls->eq_meth); + js_free_function_ptr(j_calls->hash_meth); + FREE(j_calls); + } } -int64_t __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* arg_conv = (LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +uintptr_t send_data_LDKSocketDescriptor_jcall(void* this_arg, LDKu8slice data, bool resume_read) { + LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) this_arg; + LDKu8slice data_var = data; + int8_tArray data_arr = init_int8_tArray(data_var.datalen); + memcpy(data_arr->elems, data_var.data, data_var.datalen); + return js_invoke_function_2(j_calls->send_data_meth, (uint32_t)data_arr, (uint32_t)resume_read); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* orig_conv = (LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ*)(orig & ~1); - LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ"); - *ret_conv = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +void disconnect_socket_LDKSocketDescriptor_jcall(void* this_arg) { + LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) this_arg; + js_invoke_function_0(j_calls->disconnect_socket_meth); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_ok(uint32_t o) { - LDKStaticPaymentOutputDescriptor o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = StaticPaymentOutputDescriptor_clone(&o_conv); - LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ"); - *ret_conv = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +bool eq_LDKSocketDescriptor_jcall(const void* this_arg, const LDKSocketDescriptor * other_arg) { + LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) this_arg; + LDKSocketDescriptor *other_arg_clone = MALLOC(sizeof(LDKSocketDescriptor), "LDKSocketDescriptor"); + *other_arg_clone = SocketDescriptor_clone(other_arg); + return js_invoke_function_1(j_calls->eq_meth, (uint32_t)(uint64_t)other_arg_clone); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ"); - *ret_conv = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +uint64_t hash_LDKSocketDescriptor_jcall(const void* this_arg) { + LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) this_arg; + return js_invoke_function_0(j_calls->hash_meth); } - -jboolean __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* o_conv = (LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_is_ok(o_conv); - return ret_val; +static void LDKSocketDescriptor_JCalls_cloned(LDKSocketDescriptor* new_obj) { + LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKSocketDescriptor LDKSocketDescriptor_init (/*TODO: JS Object Reference */void* o) { + LDKSocketDescriptor_JCalls *calls = MALLOC(sizeof(LDKSocketDescriptor_JCalls), "LDKSocketDescriptor_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -void __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ _res_conv = *(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_StaticPaymentOutputDescriptorDecodeErrorZ_free(_res_conv); + LDKSocketDescriptor ret = { + .this_arg = (void*) calls, + .send_data = send_data_LDKSocketDescriptor_jcall, + .disconnect_socket = disconnect_socket_LDKSocketDescriptor_jcall, + .eq = eq_LDKSocketDescriptor_jcall, + .hash = hash_LDKSocketDescriptor_jcall, + .cloned = LDKSocketDescriptor_JCalls_cloned, + .free = LDKSocketDescriptor_JCalls_free, + }; + return ret; } - -static inline uint64_t CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone_ptr(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ"); - *ret_conv = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +long __attribute__((visibility("default"))) TS_LDKSocketDescriptor_new(/*TODO: JS Object Reference */void* o) { + LDKSocketDescriptor *res_ptr = MALLOC(sizeof(LDKSocketDescriptor), "LDKSocketDescriptor"); + *res_ptr = LDKSocketDescriptor_init(o); + return (long)res_ptr; } -int64_t __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* arg_conv = (LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_SocketDescriptor_send_data(uint32_t this_arg, int8_tArray data, jboolean resume_read) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKSocketDescriptor* this_arg_conv = (LDKSocketDescriptor*)this_arg_ptr; + LDKu8slice data_ref; + data_ref.datalen = data->arr_len; + data_ref.data = data->elems; + int64_t ret_val = (this_arg_conv->send_data)(this_arg_conv->this_arg, data_ref, resume_read); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* orig_conv = (LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ*)(orig & ~1); - LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ"); - *ret_conv = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_SocketDescriptor_disconnect_socket(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKSocketDescriptor* this_arg_conv = (LDKSocketDescriptor*)this_arg_ptr; + (this_arg_conv->disconnect_socket)(this_arg_conv->this_arg); } -uint32_t __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_ok(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKSpendableOutputDescriptor o_conv = *(LDKSpendableOutputDescriptor*)(o_ptr); - o_conv = SpendableOutputDescriptor_clone((LDKSpendableOutputDescriptor*)(((uint64_t)o) & ~1)); - LDKCResult_SpendableOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpendableOutputDescriptorDecodeErrorZ), "LDKCResult_SpendableOutputDescriptorDecodeErrorZ"); - *ret_conv = CResult_SpendableOutputDescriptorDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +int64_t __attribute__((visibility("default"))) TS_SocketDescriptor_hash(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKSocketDescriptor* this_arg_conv = (LDKSocketDescriptor*)this_arg_ptr; + int64_t ret_val = (this_arg_conv->hash)(this_arg_conv->this_arg); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_SpendableOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpendableOutputDescriptorDecodeErrorZ), "LDKCResult_SpendableOutputDescriptorDecodeErrorZ"); - *ret_conv = CResult_SpendableOutputDescriptorDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +typedef struct LDKScore_JCalls { + atomic_size_t refcnt; + uint32_t channel_penalty_msat_meth; + uint32_t payment_path_failed_meth; + uint32_t payment_path_successful_meth; + uint32_t write_meth; +} LDKScore_JCalls; +static void LDKScore_JCalls_free(void* this_arg) { + LDKScore_JCalls *j_calls = (LDKScore_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->channel_penalty_msat_meth); + js_free_function_ptr(j_calls->payment_path_failed_meth); + js_free_function_ptr(j_calls->payment_path_successful_meth); + js_free_function_ptr(j_calls->write_meth); + FREE(j_calls); + } } - -jboolean __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_SpendableOutputDescriptorDecodeErrorZ* o_conv = (LDKCResult_SpendableOutputDescriptorDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_SpendableOutputDescriptorDecodeErrorZ_is_ok(o_conv); - return ret_val; +uint64_t channel_penalty_msat_LDKScore_jcall(const void* this_arg, uint64_t short_channel_id, uint64_t send_amt_msat, LDKCOption_u64Z channel_capacity_msat, const LDKNodeId * source, const LDKNodeId * target) { + LDKScore_JCalls *j_calls = (LDKScore_JCalls*) this_arg; + LDKCOption_u64Z *channel_capacity_msat_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); + *channel_capacity_msat_copy = channel_capacity_msat; + uint64_t channel_capacity_msat_ref = (uint64_t)channel_capacity_msat_copy; + LDKNodeId source_var = *source; + uint64_t source_ref = 0; + source_var = NodeId_clone(source); + CHECK((((uint64_t)source_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&source_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(source_var); + source_ref = (uint64_t)source_var.inner; + if (source_var.is_owned) { + source_ref |= 1; + } + LDKNodeId target_var = *target; + uint64_t target_ref = 0; + target_var = NodeId_clone(target); + CHECK((((uint64_t)target_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&target_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(target_var); + target_ref = (uint64_t)target_var.inner; + if (target_var.is_owned) { + target_ref |= 1; + } + return js_invoke_function_5(j_calls->channel_penalty_msat_meth, (uint32_t)short_channel_id, (uint32_t)send_amt_msat, (uint32_t)channel_capacity_msat_ref, (uint32_t)source_ref, (uint32_t)target_ref); } - -void __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_SpendableOutputDescriptorDecodeErrorZ _res_conv = *(LDKCResult_SpendableOutputDescriptorDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_SpendableOutputDescriptorDecodeErrorZ_free(_res_conv); +void payment_path_failed_LDKScore_jcall(void* this_arg, LDKCVec_RouteHopZ path, uint64_t short_channel_id) { + LDKScore_JCalls *j_calls = (LDKScore_JCalls*) this_arg; + LDKCVec_RouteHopZ path_var = path; + uint32_tArray path_arr = NULL; + path_arr = init_uint32_tArray(path_var.datalen); + uint32_t *path_arr_ptr = (uint32_t*)(path_arr + 4); + for (size_t k = 0; k < path_var.datalen; k++) { + LDKRouteHop path_conv_10_var = path_var.data[k]; + uint64_t path_conv_10_ref = 0; + CHECK((((uint64_t)path_conv_10_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&path_conv_10_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_var); + path_conv_10_ref = (uint64_t)path_conv_10_var.inner; + if (path_conv_10_var.is_owned) { + path_conv_10_ref |= 1; + } + path_arr_ptr[k] = path_conv_10_ref; + } + + FREE(path_var.data); + js_invoke_function_2(j_calls->payment_path_failed_meth, (uint32_t)path_arr, (uint32_t)short_channel_id); } - -static inline uint64_t CResult_SpendableOutputDescriptorDecodeErrorZ_clone_ptr(LDKCResult_SpendableOutputDescriptorDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_SpendableOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpendableOutputDescriptorDecodeErrorZ), "LDKCResult_SpendableOutputDescriptorDecodeErrorZ"); - *ret_conv = CResult_SpendableOutputDescriptorDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +void payment_path_successful_LDKScore_jcall(void* this_arg, LDKCVec_RouteHopZ path) { + LDKScore_JCalls *j_calls = (LDKScore_JCalls*) this_arg; + LDKCVec_RouteHopZ path_var = path; + uint32_tArray path_arr = NULL; + path_arr = init_uint32_tArray(path_var.datalen); + uint32_t *path_arr_ptr = (uint32_t*)(path_arr + 4); + for (size_t k = 0; k < path_var.datalen; k++) { + LDKRouteHop path_conv_10_var = path_var.data[k]; + uint64_t path_conv_10_ref = 0; + CHECK((((uint64_t)path_conv_10_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&path_conv_10_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_var); + path_conv_10_ref = (uint64_t)path_conv_10_var.inner; + if (path_conv_10_var.is_owned) { + path_conv_10_ref |= 1; + } + path_arr_ptr[k] = path_conv_10_ref; + } + + FREE(path_var.data); + js_invoke_function_1(j_calls->payment_path_successful_meth, (uint32_t)path_arr); } -int64_t __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_SpendableOutputDescriptorDecodeErrorZ* arg_conv = (LDKCResult_SpendableOutputDescriptorDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_SpendableOutputDescriptorDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +LDKCVec_u8Z write_LDKScore_jcall(const void* this_arg) { + LDKScore_JCalls *j_calls = (LDKScore_JCalls*) this_arg; + int8_tArray ret = (int8_tArray)js_invoke_function_0(j_calls->write_meth); + LDKCVec_u8Z ret_ref; + ret_ref.datalen = ret->arr_len; + ret_ref.data = MALLOC(ret_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(ret_ref.data, ret->elems, ret_ref.datalen); + return ret_ref; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_SpendableOutputDescriptorDecodeErrorZ* orig_conv = (LDKCResult_SpendableOutputDescriptorDecodeErrorZ*)(orig & ~1); - LDKCResult_SpendableOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpendableOutputDescriptorDecodeErrorZ), "LDKCResult_SpendableOutputDescriptorDecodeErrorZ"); - *ret_conv = CResult_SpendableOutputDescriptorDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +static void LDKScore_JCalls_cloned(LDKScore* new_obj) { + LDKScore_JCalls *j_calls = (LDKScore_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKScore LDKScore_init (/*TODO: JS Object Reference */void* o) { + LDKScore_JCalls *calls = MALLOC(sizeof(LDKScore_JCalls), "LDKScore_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_ok() { - LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); - *ret_conv = CResult_NoneNoneZ_ok(); - return (uint64_t)ret_conv; + LDKScore ret = { + .this_arg = (void*) calls, + .channel_penalty_msat = channel_penalty_msat_LDKScore_jcall, + .payment_path_failed = payment_path_failed_LDKScore_jcall, + .payment_path_successful = payment_path_successful_LDKScore_jcall, + .write = write_LDKScore_jcall, + .free = LDKScore_JCalls_free, + }; + return ret; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_err() { - LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); - *ret_conv = CResult_NoneNoneZ_err(); - return (uint64_t)ret_conv; +long __attribute__((visibility("default"))) TS_LDKScore_new(/*TODO: JS Object Reference */void* o) { + LDKScore *res_ptr = MALLOC(sizeof(LDKScore), "LDKScore"); + *res_ptr = LDKScore_init(o); + return (long)res_ptr; } - -jboolean __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_is_ok(uint32_t o) { - LDKCResult_NoneNoneZ* o_conv = (LDKCResult_NoneNoneZ*)(o & ~1); - jboolean ret_val = CResult_NoneNoneZ_is_ok(o_conv); +int64_t __attribute__((visibility("default"))) TS_Score_channel_penalty_msat(uint32_t this_arg, int64_t short_channel_id, int64_t send_amt_msat, uint32_t channel_capacity_msat, uint32_t source, uint32_t target) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKScore* this_arg_conv = (LDKScore*)this_arg_ptr; + void* channel_capacity_msat_ptr = (void*)(((uint64_t)channel_capacity_msat) & ~1); + CHECK_ACCESS(channel_capacity_msat_ptr); + LDKCOption_u64Z channel_capacity_msat_conv = *(LDKCOption_u64Z*)(channel_capacity_msat_ptr); + channel_capacity_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)channel_capacity_msat) & ~1)); + LDKNodeId source_conv; + source_conv.inner = (void*)(source & (~1)); + source_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(source_conv); + LDKNodeId target_conv; + target_conv.inner = (void*)(target & (~1)); + target_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(target_conv); + int64_t ret_val = (this_arg_conv->channel_penalty_msat)(this_arg_conv->this_arg, short_channel_id, send_amt_msat, channel_capacity_msat_conv, &source_conv, &target_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_NoneNoneZ _res_conv = *(LDKCResult_NoneNoneZ*)(_res_ptr); - FREE((void*)_res); - CResult_NoneNoneZ_free(_res_conv); +void __attribute__((visibility("default"))) TS_Score_payment_path_failed(uint32_t this_arg, uint32_tArray path, int64_t short_channel_id) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKScore* this_arg_conv = (LDKScore*)this_arg_ptr; + LDKCVec_RouteHopZ path_constr; + path_constr.datalen = path->arr_len; + if (path_constr.datalen > 0) + path_constr.data = MALLOC(path_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); + else + path_constr.data = NULL; + uint32_t* path_vals = path->elems; + for (size_t k = 0; k < path_constr.datalen; k++) { + uint32_t path_conv_10 = path_vals[k]; + LDKRouteHop path_conv_10_conv; + path_conv_10_conv.inner = (void*)(path_conv_10 & (~1)); + path_conv_10_conv.is_owned = (path_conv_10 & 1) || (path_conv_10 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_conv); + path_conv_10_conv = RouteHop_clone(&path_conv_10_conv); + path_constr.data[k] = path_conv_10_conv; + } + (this_arg_conv->payment_path_failed)(this_arg_conv->this_arg, path_constr, short_channel_id); } -static inline uint64_t CResult_NoneNoneZ_clone_ptr(LDKCResult_NoneNoneZ *NONNULL_PTR arg) { - LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); - *ret_conv = CResult_NoneNoneZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_clone_ptr(uint32_t arg) { - LDKCResult_NoneNoneZ* arg_conv = (LDKCResult_NoneNoneZ*)(arg & ~1); - int64_t ret_val = CResult_NoneNoneZ_clone_ptr(arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_Score_payment_path_successful(uint32_t this_arg, uint32_tArray path) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKScore* this_arg_conv = (LDKScore*)this_arg_ptr; + LDKCVec_RouteHopZ path_constr; + path_constr.datalen = path->arr_len; + if (path_constr.datalen > 0) + path_constr.data = MALLOC(path_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); + else + path_constr.data = NULL; + uint32_t* path_vals = path->elems; + for (size_t k = 0; k < path_constr.datalen; k++) { + uint32_t path_conv_10 = path_vals[k]; + LDKRouteHop path_conv_10_conv; + path_conv_10_conv.inner = (void*)(path_conv_10 & (~1)); + path_conv_10_conv.is_owned = (path_conv_10 & 1) || (path_conv_10 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_conv); + path_conv_10_conv = RouteHop_clone(&path_conv_10_conv); + path_constr.data[k] = path_conv_10_conv; + } + (this_arg_conv->payment_path_successful)(this_arg_conv->this_arg, path_constr); } -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_clone(uint32_t orig) { - LDKCResult_NoneNoneZ* orig_conv = (LDKCResult_NoneNoneZ*)(orig & ~1); - LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); - *ret_conv = CResult_NoneNoneZ_clone(orig_conv); - return (uint64_t)ret_conv; +int8_tArray __attribute__((visibility("default"))) TS_Score_write(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKScore* this_arg_conv = (LDKScore*)this_arg_ptr; + LDKCVec_u8Z ret_var = (this_arg_conv->write)(this_arg_conv->this_arg); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -static inline uint64_t C2Tuple_SignatureCVec_SignatureZZ_clone_ptr(LDKC2Tuple_SignatureCVec_SignatureZZ *NONNULL_PTR arg) { - LDKC2Tuple_SignatureCVec_SignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_SignatureCVec_SignatureZZ), "LDKC2Tuple_SignatureCVec_SignatureZZ"); - *ret_conv = C2Tuple_SignatureCVec_SignatureZZ_clone(arg); - return ((uint64_t)ret_conv); +typedef struct LDKLockableScore_JCalls { + atomic_size_t refcnt; + uint32_t lock_meth; +} LDKLockableScore_JCalls; +static void LDKLockableScore_JCalls_free(void* this_arg) { + LDKLockableScore_JCalls *j_calls = (LDKLockableScore_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->lock_meth); + FREE(j_calls); + } } -int64_t __attribute__((visibility("default"))) TS_C2Tuple_SignatureCVec_SignatureZZ_clone_ptr(uint32_t arg) { - LDKC2Tuple_SignatureCVec_SignatureZZ* arg_conv = (LDKC2Tuple_SignatureCVec_SignatureZZ*)(arg & ~1); - int64_t ret_val = C2Tuple_SignatureCVec_SignatureZZ_clone_ptr(arg_conv); - return ret_val; +LDKScore lock_LDKLockableScore_jcall(const void* this_arg) { + LDKLockableScore_JCalls *j_calls = (LDKLockableScore_JCalls*) this_arg; + uint32_t ret = js_invoke_function_0(j_calls->lock_meth); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKScore ret_conv = *(LDKScore*)(ret_ptr);// Warning: we may need a move here but no clone is available for LDKScore + + return ret_conv; } - -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_SignatureCVec_SignatureZZ_clone(uint32_t orig) { - LDKC2Tuple_SignatureCVec_SignatureZZ* orig_conv = (LDKC2Tuple_SignatureCVec_SignatureZZ*)(orig & ~1); - LDKC2Tuple_SignatureCVec_SignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_SignatureCVec_SignatureZZ), "LDKC2Tuple_SignatureCVec_SignatureZZ"); - *ret_conv = C2Tuple_SignatureCVec_SignatureZZ_clone(orig_conv); - return ((uint64_t)ret_conv); +static void LDKLockableScore_JCalls_cloned(LDKLockableScore* new_obj) { + LDKLockableScore_JCalls *j_calls = (LDKLockableScore_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } - -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_SignatureCVec_SignatureZZ_new(int8_tArray a, ptrArray b) { - LDKSignature a_ref; - CHECK(*((uint32_t*)a) == 64); - memcpy(a_ref.compact_form, (uint8_t*)(a + 4), 64); - LDKCVec_SignatureZ b_constr; - b_constr.datalen = *((uint32_t*)b); - if (b_constr.datalen > 0) - b_constr.data = MALLOC(b_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); - else - b_constr.data = NULL; - int8_tArray* b_vals = (int8_tArray*)(b + 4); - for (size_t m = 0; m < b_constr.datalen; m++) { - int8_tArray b_conv_12 = b_vals[m]; - LDKSignature b_conv_12_ref; - CHECK(*((uint32_t*)b_conv_12) == 64); - memcpy(b_conv_12_ref.compact_form, (uint8_t*)(b_conv_12 + 4), 64); - b_constr.data[m] = b_conv_12_ref; - } - LDKC2Tuple_SignatureCVec_SignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_SignatureCVec_SignatureZZ), "LDKC2Tuple_SignatureCVec_SignatureZZ"); - *ret_conv = C2Tuple_SignatureCVec_SignatureZZ_new(a_ref, b_constr); - return ((uint64_t)ret_conv); +static inline LDKLockableScore LDKLockableScore_init (/*TODO: JS Object Reference */void* o) { + LDKLockableScore_JCalls *calls = MALLOC(sizeof(LDKLockableScore_JCalls), "LDKLockableScore_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o + + LDKLockableScore ret = { + .this_arg = (void*) calls, + .lock = lock_LDKLockableScore_jcall, + .free = LDKLockableScore_JCalls_free, + }; + return ret; +} +long __attribute__((visibility("default"))) TS_LDKLockableScore_new(/*TODO: JS Object Reference */void* o) { + LDKLockableScore *res_ptr = MALLOC(sizeof(LDKLockableScore), "LDKLockableScore"); + *res_ptr = LDKLockableScore_init(o); + return (long)res_ptr; +} +uint32_t __attribute__((visibility("default"))) TS_LockableScore_lock(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKLockableScore* this_arg_conv = (LDKLockableScore*)this_arg_ptr; + LDKScore* ret_ret = MALLOC(sizeof(LDKScore), "LDKScore"); + *ret_ret = (this_arg_conv->lock)(this_arg_conv->this_arg); + return (uint64_t)ret_ret; } -void __attribute__((visibility("default"))) TS_C2Tuple_SignatureCVec_SignatureZZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKC2Tuple_SignatureCVec_SignatureZZ _res_conv = *(LDKC2Tuple_SignatureCVec_SignatureZZ*)(_res_ptr); - FREE((void*)_res); - C2Tuple_SignatureCVec_SignatureZZ_free(_res_conv); +jstring __attribute__((visibility("default"))) TS__ldk_get_compiled_version() { + LDKStr ret_str = _ldk_get_compiled_version(); + jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); + Str_free(ret_str); + return ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_ok(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKC2Tuple_SignatureCVec_SignatureZZ o_conv = *(LDKC2Tuple_SignatureCVec_SignatureZZ*)(o_ptr); - o_conv = C2Tuple_SignatureCVec_SignatureZZ_clone((LDKC2Tuple_SignatureCVec_SignatureZZ*)(((uint64_t)o) & ~1)); - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ), "LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ"); - *ret_conv = CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_ok(o_conv); - return (uint64_t)ret_conv; +jstring __attribute__((visibility("default"))) TS__ldk_c_bindings_get_compiled_version() { + LDKStr ret_str = _ldk_c_bindings_get_compiled_version(); + jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); + Str_free(ret_str); + return ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_err() { - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ), "LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ"); - *ret_conv = CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_err(); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_Transaction_free(int8_tArray _res) { + LDKTransaction _res_ref; + _res_ref.datalen = _res->arr_len; + _res_ref.data = MALLOC(_res_ref.datalen, "LDKTransaction Bytes"); + memcpy(_res_ref.data, _res->elems, _res_ref.datalen); + _res_ref.data_is_owned = true; + Transaction_free(_res_ref); } -jboolean __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_is_ok(uint32_t o) { - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* o_conv = (LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(o & ~1); - jboolean ret_val = CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_is_ok(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_TxOut_new(int8_tArray script_pubkey, int64_t value) { + LDKCVec_u8Z script_pubkey_ref; + script_pubkey_ref.datalen = script_pubkey->arr_len; + script_pubkey_ref.data = MALLOC(script_pubkey_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(script_pubkey_ref.data, script_pubkey->elems, script_pubkey_ref.datalen); + LDKTxOut* ret_ref = MALLOC(sizeof(LDKTxOut), "LDKTxOut"); + *ret_ref = TxOut_new(script_pubkey_ref, value); + return (uint64_t)ret_ref; } -void __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_TxOut_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ _res_conv = *(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(_res_ptr); + LDKTxOut _res_conv = *(LDKTxOut*)(_res_ptr); FREE((void*)_res); - CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_free(_res_conv); + TxOut_free(_res_conv); } -static inline uint64_t CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone_ptr(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ *NONNULL_PTR arg) { - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ), "LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ"); - *ret_conv = CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone(arg); - return (uint64_t)ret_conv; +static inline uint64_t TxOut_clone_ptr(LDKTxOut *NONNULL_PTR arg) { + LDKTxOut* ret_ref = MALLOC(sizeof(LDKTxOut), "LDKTxOut"); + *ret_ref = TxOut_clone(arg); + return (uint64_t)ret_ref; } -int64_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone_ptr(uint32_t arg) { - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* arg_conv = (LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(arg & ~1); - int64_t ret_val = CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_TxOut_clone_ptr(uint32_t arg) { + LDKTxOut* arg_conv = (LDKTxOut*)(arg & ~1); + int64_t ret_val = TxOut_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone(uint32_t orig) { - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* orig_conv = (LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(orig & ~1); - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ), "LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ"); - *ret_conv = CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone(orig_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_TxOut_clone(uint32_t orig) { + LDKTxOut* orig_conv = (LDKTxOut*)(orig & ~1); + LDKTxOut* ret_ref = MALLOC(sizeof(LDKTxOut), "LDKTxOut"); + *ret_ref = TxOut_clone(orig_conv); + return (uint64_t)ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_ok(int8_tArray o) { - LDKSignature o_ref; - CHECK(*((uint32_t*)o) == 64); - memcpy(o_ref.compact_form, (uint8_t*)(o + 4), 64); - LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); - *ret_conv = CResult_SignatureNoneZ_ok(o_ref); +void __attribute__((visibility("default"))) TS_Str_free(jstring _res) { + LDKStr dummy = { .chars = NULL, .len = 0, .chars_is_owned = false }; + Str_free(dummy); +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_ok(uint32_t o) { + LDKChannelConfig o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = ChannelConfig_clone(&o_conv); + LDKCResult_ChannelConfigDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelConfigDecodeErrorZ), "LDKCResult_ChannelConfigDecodeErrorZ"); + *ret_conv = CResult_ChannelConfigDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_err() { - LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); - *ret_conv = CResult_SignatureNoneZ_err(); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_ChannelConfigDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelConfigDecodeErrorZ), "LDKCResult_ChannelConfigDecodeErrorZ"); + *ret_conv = CResult_ChannelConfigDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_is_ok(uint32_t o) { - LDKCResult_SignatureNoneZ* o_conv = (LDKCResult_SignatureNoneZ*)(o & ~1); - jboolean ret_val = CResult_SignatureNoneZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ChannelConfigDecodeErrorZ* o_conv = (LDKCResult_ChannelConfigDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ChannelConfigDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_SignatureNoneZ _res_conv = *(LDKCResult_SignatureNoneZ*)(_res_ptr); + LDKCResult_ChannelConfigDecodeErrorZ _res_conv = *(LDKCResult_ChannelConfigDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_SignatureNoneZ_free(_res_conv); + CResult_ChannelConfigDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_SignatureNoneZ_clone_ptr(LDKCResult_SignatureNoneZ *NONNULL_PTR arg) { - LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); - *ret_conv = CResult_SignatureNoneZ_clone(arg); +static inline uint64_t CResult_ChannelConfigDecodeErrorZ_clone_ptr(LDKCResult_ChannelConfigDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ChannelConfigDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelConfigDecodeErrorZ), "LDKCResult_ChannelConfigDecodeErrorZ"); + *ret_conv = CResult_ChannelConfigDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_clone_ptr(uint32_t arg) { - LDKCResult_SignatureNoneZ* arg_conv = (LDKCResult_SignatureNoneZ*)(arg & ~1); - int64_t ret_val = CResult_SignatureNoneZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ChannelConfigDecodeErrorZ* arg_conv = (LDKCResult_ChannelConfigDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ChannelConfigDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_clone(uint32_t orig) { - LDKCResult_SignatureNoneZ* orig_conv = (LDKCResult_SignatureNoneZ*)(orig & ~1); - LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); - *ret_conv = CResult_SignatureNoneZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ChannelConfigDecodeErrorZ* orig_conv = (LDKCResult_ChannelConfigDecodeErrorZ*)(orig & ~1); + LDKCResult_ChannelConfigDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelConfigDecodeErrorZ), "LDKCResult_ChannelConfigDecodeErrorZ"); + *ret_conv = CResult_ChannelConfigDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_ok(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKSign o_conv = *(LDKSign*)(o_ptr); - LDKCResult_SignDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SignDecodeErrorZ), "LDKCResult_SignDecodeErrorZ"); - *ret_conv = CResult_SignDecodeErrorZ_ok(o_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_ok(uint32_t o) { + LDKOutPoint o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = OutPoint_clone(&o_conv); + LDKCResult_OutPointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OutPointDecodeErrorZ), "LDKCResult_OutPointDecodeErrorZ"); + *ret_conv = CResult_OutPointDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_SignDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SignDecodeErrorZ), "LDKCResult_SignDecodeErrorZ"); - *ret_conv = CResult_SignDecodeErrorZ_err(e_conv); + LDKCResult_OutPointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OutPointDecodeErrorZ), "LDKCResult_OutPointDecodeErrorZ"); + *ret_conv = CResult_OutPointDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_SignDecodeErrorZ* o_conv = (LDKCResult_SignDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_SignDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_OutPointDecodeErrorZ* o_conv = (LDKCResult_OutPointDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_OutPointDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_SignDecodeErrorZ _res_conv = *(LDKCResult_SignDecodeErrorZ*)(_res_ptr); + LDKCResult_OutPointDecodeErrorZ _res_conv = *(LDKCResult_OutPointDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_SignDecodeErrorZ_free(_res_conv); + CResult_OutPointDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_SignDecodeErrorZ_clone_ptr(LDKCResult_SignDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_SignDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SignDecodeErrorZ), "LDKCResult_SignDecodeErrorZ"); - *ret_conv = CResult_SignDecodeErrorZ_clone(arg); +static inline uint64_t CResult_OutPointDecodeErrorZ_clone_ptr(LDKCResult_OutPointDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_OutPointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OutPointDecodeErrorZ), "LDKCResult_OutPointDecodeErrorZ"); + *ret_conv = CResult_OutPointDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_SignDecodeErrorZ* arg_conv = (LDKCResult_SignDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_SignDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_OutPointDecodeErrorZ* arg_conv = (LDKCResult_OutPointDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_OutPointDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_SignDecodeErrorZ* orig_conv = (LDKCResult_SignDecodeErrorZ*)(orig & ~1); - LDKCResult_SignDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SignDecodeErrorZ), "LDKCResult_SignDecodeErrorZ"); - *ret_conv = CResult_SignDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_OutPointDecodeErrorZ* orig_conv = (LDKCResult_OutPointDecodeErrorZ*)(orig & ~1); + LDKCResult_OutPointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OutPointDecodeErrorZ), "LDKCResult_OutPointDecodeErrorZ"); + *ret_conv = CResult_OutPointDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_CVec_u8Z_free(int8_tArray _res) { - LDKCVec_u8Z _res_ref; - _res_ref.datalen = *((uint32_t*)_res); - _res_ref.data = MALLOC(_res_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(_res_ref.data, (uint8_t*)(_res + 4), _res_ref.datalen); - CVec_u8Z_free(_res_ref); +uint32_t __attribute__((visibility("default"))) TS_CResult_SecretKeyErrorZ_ok(int8_tArray o) { + LDKSecretKey o_ref; + CHECK(o->arr_len == 32); + memcpy(o_ref.bytes, o->elems, 32); + LDKCResult_SecretKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SecretKeyErrorZ), "LDKCResult_SecretKeyErrorZ"); + *ret_conv = CResult_SecretKeyErrorZ_ok(o_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_ok(int8_tArray arg) { - LDKRecoverableSignature arg_ref; - CHECK(*((uint32_t*)arg) == 68); - memcpy(arg_ref.serialized_form, (uint8_t*)(arg + 4), 68); - LDKCResult_RecoverableSignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_RecoverableSignatureNoneZ), "LDKCResult_RecoverableSignatureNoneZ"); - *ret_conv = CResult_RecoverableSignatureNoneZ_ok(arg_ref); +uint32_t __attribute__((visibility("default"))) TS_CResult_SecretKeyErrorZ_err(uint32_t e) { + LDKSecp256k1Error e_conv = LDKSecp256k1Error_from_js(e); + LDKCResult_SecretKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SecretKeyErrorZ), "LDKCResult_SecretKeyErrorZ"); + *ret_conv = CResult_SecretKeyErrorZ_err(e_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_err() { - LDKCResult_RecoverableSignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_RecoverableSignatureNoneZ), "LDKCResult_RecoverableSignatureNoneZ"); - *ret_conv = CResult_RecoverableSignatureNoneZ_err(); +jboolean __attribute__((visibility("default"))) TS_CResult_SecretKeyErrorZ_is_ok(uint32_t o) { + LDKCResult_SecretKeyErrorZ* o_conv = (LDKCResult_SecretKeyErrorZ*)(o & ~1); + jboolean ret_val = CResult_SecretKeyErrorZ_is_ok(o_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_CResult_SecretKeyErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_SecretKeyErrorZ _res_conv = *(LDKCResult_SecretKeyErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_SecretKeyErrorZ_free(_res_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_ok(int8_tArray o) { + LDKPublicKey o_ref; + CHECK(o->arr_len == 33); + memcpy(o_ref.compressed_form, o->elems, 33); + LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); + *ret_conv = CResult_PublicKeyErrorZ_ok(o_ref); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_is_ok(uint32_t o) { - LDKCResult_RecoverableSignatureNoneZ* o_conv = (LDKCResult_RecoverableSignatureNoneZ*)(o & ~1); - jboolean ret_val = CResult_RecoverableSignatureNoneZ_is_ok(o_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_err(uint32_t e) { + LDKSecp256k1Error e_conv = LDKSecp256k1Error_from_js(e); + LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); + *ret_conv = CResult_PublicKeyErrorZ_err(e_conv); + return (uint64_t)ret_conv; +} + +jboolean __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_is_ok(uint32_t o) { + LDKCResult_PublicKeyErrorZ* o_conv = (LDKCResult_PublicKeyErrorZ*)(o & ~1); + jboolean ret_val = CResult_PublicKeyErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_RecoverableSignatureNoneZ _res_conv = *(LDKCResult_RecoverableSignatureNoneZ*)(_res_ptr); + LDKCResult_PublicKeyErrorZ _res_conv = *(LDKCResult_PublicKeyErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_RecoverableSignatureNoneZ_free(_res_conv); + CResult_PublicKeyErrorZ_free(_res_conv); } -static inline uint64_t CResult_RecoverableSignatureNoneZ_clone_ptr(LDKCResult_RecoverableSignatureNoneZ *NONNULL_PTR arg) { - LDKCResult_RecoverableSignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_RecoverableSignatureNoneZ), "LDKCResult_RecoverableSignatureNoneZ"); - *ret_conv = CResult_RecoverableSignatureNoneZ_clone(arg); +static inline uint64_t CResult_PublicKeyErrorZ_clone_ptr(LDKCResult_PublicKeyErrorZ *NONNULL_PTR arg) { + LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); + *ret_conv = CResult_PublicKeyErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_clone_ptr(uint32_t arg) { - LDKCResult_RecoverableSignatureNoneZ* arg_conv = (LDKCResult_RecoverableSignatureNoneZ*)(arg & ~1); - int64_t ret_val = CResult_RecoverableSignatureNoneZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_PublicKeyErrorZ* arg_conv = (LDKCResult_PublicKeyErrorZ*)(arg & ~1); + int64_t ret_val = CResult_PublicKeyErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_clone(uint32_t orig) { - LDKCResult_RecoverableSignatureNoneZ* orig_conv = (LDKCResult_RecoverableSignatureNoneZ*)(orig & ~1); - LDKCResult_RecoverableSignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_RecoverableSignatureNoneZ), "LDKCResult_RecoverableSignatureNoneZ"); - *ret_conv = CResult_RecoverableSignatureNoneZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_clone(uint32_t orig) { + LDKCResult_PublicKeyErrorZ* orig_conv = (LDKCResult_PublicKeyErrorZ*)(orig & ~1); + LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); + *ret_conv = CResult_PublicKeyErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_CVec_CVec_u8ZZ_free(ptrArray _res) { - LDKCVec_CVec_u8ZZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKCVec_u8Z), "LDKCVec_CVec_u8ZZ Elements"); - else - _res_constr.data = NULL; - int8_tArray* _res_vals = (int8_tArray*)(_res + 4); - for (size_t m = 0; m < _res_constr.datalen; m++) { - int8_tArray _res_conv_12 = _res_vals[m]; - LDKCVec_u8Z _res_conv_12_ref; - _res_conv_12_ref.datalen = *((uint32_t*)_res_conv_12); - _res_conv_12_ref.data = MALLOC(_res_conv_12_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(_res_conv_12_ref.data, (uint8_t*)(_res_conv_12 + 4), _res_conv_12_ref.datalen); - _res_constr.data[m] = _res_conv_12_ref; - } - CVec_CVec_u8ZZ_free(_res_constr); -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_ok(ptrArray o) { - LDKCVec_CVec_u8ZZ o_constr; - o_constr.datalen = *((uint32_t*)o); - if (o_constr.datalen > 0) - o_constr.data = MALLOC(o_constr.datalen * sizeof(LDKCVec_u8Z), "LDKCVec_CVec_u8ZZ Elements"); - else - o_constr.data = NULL; - int8_tArray* o_vals = (int8_tArray*)(o + 4); - for (size_t m = 0; m < o_constr.datalen; m++) { - int8_tArray o_conv_12 = o_vals[m]; - LDKCVec_u8Z o_conv_12_ref; - o_conv_12_ref.datalen = *((uint32_t*)o_conv_12); - o_conv_12_ref.data = MALLOC(o_conv_12_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(o_conv_12_ref.data, (uint8_t*)(o_conv_12 + 4), o_conv_12_ref.datalen); - o_constr.data[m] = o_conv_12_ref; - } - LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ"); - *ret_conv = CResult_CVec_CVec_u8ZZNoneZ_ok(o_constr); +uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_ok(uint32_t o) { + LDKTxCreationKeys o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = TxCreationKeys_clone(&o_conv); + LDKCResult_TxCreationKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysDecodeErrorZ), "LDKCResult_TxCreationKeysDecodeErrorZ"); + *ret_conv = CResult_TxCreationKeysDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_err() { - LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ"); - *ret_conv = CResult_CVec_CVec_u8ZZNoneZ_err(); +uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_TxCreationKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysDecodeErrorZ), "LDKCResult_TxCreationKeysDecodeErrorZ"); + *ret_conv = CResult_TxCreationKeysDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_is_ok(uint32_t o) { - LDKCResult_CVec_CVec_u8ZZNoneZ* o_conv = (LDKCResult_CVec_CVec_u8ZZNoneZ*)(o & ~1); - jboolean ret_val = CResult_CVec_CVec_u8ZZNoneZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_TxCreationKeysDecodeErrorZ* o_conv = (LDKCResult_TxCreationKeysDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_TxCreationKeysDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_CVec_CVec_u8ZZNoneZ _res_conv = *(LDKCResult_CVec_CVec_u8ZZNoneZ*)(_res_ptr); + LDKCResult_TxCreationKeysDecodeErrorZ _res_conv = *(LDKCResult_TxCreationKeysDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_CVec_CVec_u8ZZNoneZ_free(_res_conv); + CResult_TxCreationKeysDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR arg) { - LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ"); - *ret_conv = CResult_CVec_CVec_u8ZZNoneZ_clone(arg); +static inline uint64_t CResult_TxCreationKeysDecodeErrorZ_clone_ptr(LDKCResult_TxCreationKeysDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_TxCreationKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysDecodeErrorZ), "LDKCResult_TxCreationKeysDecodeErrorZ"); + *ret_conv = CResult_TxCreationKeysDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(uint32_t arg) { - LDKCResult_CVec_CVec_u8ZZNoneZ* arg_conv = (LDKCResult_CVec_CVec_u8ZZNoneZ*)(arg & ~1); - int64_t ret_val = CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_TxCreationKeysDecodeErrorZ* arg_conv = (LDKCResult_TxCreationKeysDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_TxCreationKeysDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_clone(uint32_t orig) { - LDKCResult_CVec_CVec_u8ZZNoneZ* orig_conv = (LDKCResult_CVec_CVec_u8ZZNoneZ*)(orig & ~1); - LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ"); - *ret_conv = CResult_CVec_CVec_u8ZZNoneZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_TxCreationKeysDecodeErrorZ* orig_conv = (LDKCResult_TxCreationKeysDecodeErrorZ*)(orig & ~1); + LDKCResult_TxCreationKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysDecodeErrorZ), "LDKCResult_TxCreationKeysDecodeErrorZ"); + *ret_conv = CResult_TxCreationKeysDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_ok(uint32_t o) { - LDKInMemorySigner o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_ok(uint32_t o) { + LDKChannelPublicKeys o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = InMemorySigner_clone(&o_conv); - LDKCResult_InMemorySignerDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InMemorySignerDecodeErrorZ), "LDKCResult_InMemorySignerDecodeErrorZ"); - *ret_conv = CResult_InMemorySignerDecodeErrorZ_ok(o_conv); + o_conv = ChannelPublicKeys_clone(&o_conv); + LDKCResult_ChannelPublicKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelPublicKeysDecodeErrorZ), "LDKCResult_ChannelPublicKeysDecodeErrorZ"); + *ret_conv = CResult_ChannelPublicKeysDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_InMemorySignerDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InMemorySignerDecodeErrorZ), "LDKCResult_InMemorySignerDecodeErrorZ"); - *ret_conv = CResult_InMemorySignerDecodeErrorZ_err(e_conv); + LDKCResult_ChannelPublicKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelPublicKeysDecodeErrorZ), "LDKCResult_ChannelPublicKeysDecodeErrorZ"); + *ret_conv = CResult_ChannelPublicKeysDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_InMemorySignerDecodeErrorZ* o_conv = (LDKCResult_InMemorySignerDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_InMemorySignerDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ChannelPublicKeysDecodeErrorZ* o_conv = (LDKCResult_ChannelPublicKeysDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ChannelPublicKeysDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_InMemorySignerDecodeErrorZ _res_conv = *(LDKCResult_InMemorySignerDecodeErrorZ*)(_res_ptr); + LDKCResult_ChannelPublicKeysDecodeErrorZ _res_conv = *(LDKCResult_ChannelPublicKeysDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_InMemorySignerDecodeErrorZ_free(_res_conv); + CResult_ChannelPublicKeysDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_InMemorySignerDecodeErrorZ_clone_ptr(LDKCResult_InMemorySignerDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_InMemorySignerDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InMemorySignerDecodeErrorZ), "LDKCResult_InMemorySignerDecodeErrorZ"); - *ret_conv = CResult_InMemorySignerDecodeErrorZ_clone(arg); +static inline uint64_t CResult_ChannelPublicKeysDecodeErrorZ_clone_ptr(LDKCResult_ChannelPublicKeysDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ChannelPublicKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelPublicKeysDecodeErrorZ), "LDKCResult_ChannelPublicKeysDecodeErrorZ"); + *ret_conv = CResult_ChannelPublicKeysDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_InMemorySignerDecodeErrorZ* arg_conv = (LDKCResult_InMemorySignerDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_InMemorySignerDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ChannelPublicKeysDecodeErrorZ* arg_conv = (LDKCResult_ChannelPublicKeysDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ChannelPublicKeysDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_InMemorySignerDecodeErrorZ* orig_conv = (LDKCResult_InMemorySignerDecodeErrorZ*)(orig & ~1); - LDKCResult_InMemorySignerDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InMemorySignerDecodeErrorZ), "LDKCResult_InMemorySignerDecodeErrorZ"); - *ret_conv = CResult_InMemorySignerDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ChannelPublicKeysDecodeErrorZ* orig_conv = (LDKCResult_ChannelPublicKeysDecodeErrorZ*)(orig & ~1); + LDKCResult_ChannelPublicKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelPublicKeysDecodeErrorZ), "LDKCResult_ChannelPublicKeysDecodeErrorZ"); + *ret_conv = CResult_ChannelPublicKeysDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_CVec_TxOutZ_free(uint32_tArray _res) { - LDKCVec_TxOutZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKTxOut), "LDKCVec_TxOutZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t h = 0; h < _res_constr.datalen; h++) { - uint32_t _res_conv_7 = _res_vals[h]; - void* _res_conv_7_ptr = (void*)(((uint64_t)_res_conv_7) & ~1); - CHECK_ACCESS(_res_conv_7_ptr); - LDKTxOut _res_conv_7_conv = *(LDKTxOut*)(_res_conv_7_ptr); - FREE((void*)_res_conv_7); - _res_constr.data[h] = _res_conv_7_conv; - } - CVec_TxOutZ_free(_res_constr); -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_ok(int8_tArray o) { - LDKTransaction o_ref; - o_ref.datalen = *((uint32_t*)o); - o_ref.data = MALLOC(o_ref.datalen, "LDKTransaction Bytes"); - memcpy(o_ref.data, (uint8_t*)(o + 4), o_ref.datalen); - o_ref.data_is_owned = true; - LDKCResult_TransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TransactionNoneZ), "LDKCResult_TransactionNoneZ"); - *ret_conv = CResult_TransactionNoneZ_ok(o_ref); +uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_ok(uint32_t o) { + LDKTxCreationKeys o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = TxCreationKeys_clone(&o_conv); + LDKCResult_TxCreationKeysErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysErrorZ), "LDKCResult_TxCreationKeysErrorZ"); + *ret_conv = CResult_TxCreationKeysErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_err() { - LDKCResult_TransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TransactionNoneZ), "LDKCResult_TransactionNoneZ"); - *ret_conv = CResult_TransactionNoneZ_err(); +uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_err(uint32_t e) { + LDKSecp256k1Error e_conv = LDKSecp256k1Error_from_js(e); + LDKCResult_TxCreationKeysErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysErrorZ), "LDKCResult_TxCreationKeysErrorZ"); + *ret_conv = CResult_TxCreationKeysErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_is_ok(uint32_t o) { - LDKCResult_TransactionNoneZ* o_conv = (LDKCResult_TransactionNoneZ*)(o & ~1); - jboolean ret_val = CResult_TransactionNoneZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_is_ok(uint32_t o) { + LDKCResult_TxCreationKeysErrorZ* o_conv = (LDKCResult_TxCreationKeysErrorZ*)(o & ~1); + jboolean ret_val = CResult_TxCreationKeysErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_TransactionNoneZ _res_conv = *(LDKCResult_TransactionNoneZ*)(_res_ptr); + LDKCResult_TxCreationKeysErrorZ _res_conv = *(LDKCResult_TxCreationKeysErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_TransactionNoneZ_free(_res_conv); + CResult_TxCreationKeysErrorZ_free(_res_conv); } -static inline uint64_t CResult_TransactionNoneZ_clone_ptr(LDKCResult_TransactionNoneZ *NONNULL_PTR arg) { - LDKCResult_TransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TransactionNoneZ), "LDKCResult_TransactionNoneZ"); - *ret_conv = CResult_TransactionNoneZ_clone(arg); +static inline uint64_t CResult_TxCreationKeysErrorZ_clone_ptr(LDKCResult_TxCreationKeysErrorZ *NONNULL_PTR arg) { + LDKCResult_TxCreationKeysErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysErrorZ), "LDKCResult_TxCreationKeysErrorZ"); + *ret_conv = CResult_TxCreationKeysErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_clone_ptr(uint32_t arg) { - LDKCResult_TransactionNoneZ* arg_conv = (LDKCResult_TransactionNoneZ*)(arg & ~1); - int64_t ret_val = CResult_TransactionNoneZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_TxCreationKeysErrorZ* arg_conv = (LDKCResult_TxCreationKeysErrorZ*)(arg & ~1); + int64_t ret_val = CResult_TxCreationKeysErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_clone(uint32_t orig) { - LDKCResult_TransactionNoneZ* orig_conv = (LDKCResult_TransactionNoneZ*)(orig & ~1); - LDKCResult_TransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TransactionNoneZ), "LDKCResult_TransactionNoneZ"); - *ret_conv = CResult_TransactionNoneZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_clone(uint32_t orig) { + LDKCResult_TxCreationKeysErrorZ* orig_conv = (LDKCResult_TxCreationKeysErrorZ*)(orig & ~1); + LDKCResult_TxCreationKeysErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysErrorZ), "LDKCResult_TxCreationKeysErrorZ"); + *ret_conv = CResult_TxCreationKeysErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -static inline uint64_t C2Tuple_BlockHashChannelMonitorZ_clone_ptr(LDKC2Tuple_BlockHashChannelMonitorZ *NONNULL_PTR arg) { - LDKC2Tuple_BlockHashChannelMonitorZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlockHashChannelMonitorZ), "LDKC2Tuple_BlockHashChannelMonitorZ"); - *ret_conv = C2Tuple_BlockHashChannelMonitorZ_clone(arg); - return ((uint64_t)ret_conv); -} -int64_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_clone_ptr(uint32_t arg) { - LDKC2Tuple_BlockHashChannelMonitorZ* arg_conv = (LDKC2Tuple_BlockHashChannelMonitorZ*)(arg & ~1); - int64_t ret_val = C2Tuple_BlockHashChannelMonitorZ_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_clone(uint32_t orig) { - LDKC2Tuple_BlockHashChannelMonitorZ* orig_conv = (LDKC2Tuple_BlockHashChannelMonitorZ*)(orig & ~1); - LDKC2Tuple_BlockHashChannelMonitorZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlockHashChannelMonitorZ), "LDKC2Tuple_BlockHashChannelMonitorZ"); - *ret_conv = C2Tuple_BlockHashChannelMonitorZ_clone(orig_conv); - return ((uint64_t)ret_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_new(int8_tArray a, uint32_t b) { - LDKThirtyTwoBytes a_ref; - CHECK(*((uint32_t*)a) == 32); - memcpy(a_ref.data, (uint8_t*)(a + 4), 32); - LDKChannelMonitor b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = (b & 1) || (b == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - b_conv = ChannelMonitor_clone(&b_conv); - LDKC2Tuple_BlockHashChannelMonitorZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlockHashChannelMonitorZ), "LDKC2Tuple_BlockHashChannelMonitorZ"); - *ret_conv = C2Tuple_BlockHashChannelMonitorZ_new(a_ref, b_conv); - return ((uint64_t)ret_conv); +uint32_t __attribute__((visibility("default"))) TS_COption_u32Z_some(int32_t o) { + LDKCOption_u32Z *ret_copy = MALLOC(sizeof(LDKCOption_u32Z), "LDKCOption_u32Z"); + *ret_copy = COption_u32Z_some(o); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_free(uint32_t _res) { +uint32_t __attribute__((visibility("default"))) TS_COption_u32Z_none() { + LDKCOption_u32Z *ret_copy = MALLOC(sizeof(LDKCOption_u32Z), "LDKCOption_u32Z"); + *ret_copy = COption_u32Z_none(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +void __attribute__((visibility("default"))) TS_COption_u32Z_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKC2Tuple_BlockHashChannelMonitorZ _res_conv = *(LDKC2Tuple_BlockHashChannelMonitorZ*)(_res_ptr); + LDKCOption_u32Z _res_conv = *(LDKCOption_u32Z*)(_res_ptr); FREE((void*)_res); - C2Tuple_BlockHashChannelMonitorZ_free(_res_conv); + COption_u32Z_free(_res_conv); } -void __attribute__((visibility("default"))) TS_CVec_C2Tuple_BlockHashChannelMonitorZZ_free(uint32_tArray _res) { - LDKCVec_C2Tuple_BlockHashChannelMonitorZZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_BlockHashChannelMonitorZ), "LDKCVec_C2Tuple_BlockHashChannelMonitorZZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t j = 0; j < _res_constr.datalen; j++) { - uint32_t _res_conv_35 = _res_vals[j]; - void* _res_conv_35_ptr = (void*)(((uint64_t)_res_conv_35) & ~1); - CHECK_ACCESS(_res_conv_35_ptr); - LDKC2Tuple_BlockHashChannelMonitorZ _res_conv_35_conv = *(LDKC2Tuple_BlockHashChannelMonitorZ*)(_res_conv_35_ptr); - FREE((void*)_res_conv_35); - _res_constr.data[j] = _res_conv_35_conv; - } - CVec_C2Tuple_BlockHashChannelMonitorZZ_free(_res_constr); +static inline uint64_t COption_u32Z_clone_ptr(LDKCOption_u32Z *NONNULL_PTR arg) { + LDKCOption_u32Z *ret_copy = MALLOC(sizeof(LDKCOption_u32Z), "LDKCOption_u32Z"); + *ret_copy = COption_u32Z_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_COption_u32Z_clone_ptr(uint32_t arg) { + LDKCOption_u32Z* arg_conv = (LDKCOption_u32Z*)arg; + int64_t ret_val = COption_u32Z_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_ok(uint32_tArray o) { - LDKCVec_C2Tuple_BlockHashChannelMonitorZZ o_constr; - o_constr.datalen = *((uint32_t*)o); - if (o_constr.datalen > 0) - o_constr.data = MALLOC(o_constr.datalen * sizeof(LDKC2Tuple_BlockHashChannelMonitorZ), "LDKCVec_C2Tuple_BlockHashChannelMonitorZZ Elements"); - else - o_constr.data = NULL; - uint32_t* o_vals = (uint32_t*)(o + 4); - for (size_t j = 0; j < o_constr.datalen; j++) { - uint32_t o_conv_35 = o_vals[j]; - void* o_conv_35_ptr = (void*)(((uint64_t)o_conv_35) & ~1); - CHECK_ACCESS(o_conv_35_ptr); - LDKC2Tuple_BlockHashChannelMonitorZ o_conv_35_conv = *(LDKC2Tuple_BlockHashChannelMonitorZ*)(o_conv_35_ptr); - o_conv_35_conv = C2Tuple_BlockHashChannelMonitorZ_clone((LDKC2Tuple_BlockHashChannelMonitorZ*)(((uint64_t)o_conv_35) & ~1)); - o_constr.data[j] = o_conv_35_conv; - } - LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ), "LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ"); - *ret_conv = CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_ok(o_constr); +uint32_t __attribute__((visibility("default"))) TS_COption_u32Z_clone(uint32_t orig) { + LDKCOption_u32Z* orig_conv = (LDKCOption_u32Z*)orig; + LDKCOption_u32Z *ret_copy = MALLOC(sizeof(LDKCOption_u32Z), "LDKCOption_u32Z"); + *ret_copy = COption_u32Z_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_ok(uint32_t o) { + LDKHTLCOutputInCommitment o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = HTLCOutputInCommitment_clone(&o_conv); + LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ), "LDKCResult_HTLCOutputInCommitmentDecodeErrorZ"); + *ret_conv = CResult_HTLCOutputInCommitmentDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_err(uint32_t e) { - LDKIOError e_conv = LDKIOError_from_js(e); - LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ), "LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ"); - *ret_conv = CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ), "LDKCResult_HTLCOutputInCommitmentDecodeErrorZ"); + *ret_conv = CResult_HTLCOutputInCommitmentDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_is_ok(uint32_t o) { - LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ* o_conv = (LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ*)(o & ~1); - jboolean ret_val = CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* o_conv = (LDKCResult_HTLCOutputInCommitmentDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_HTLCOutputInCommitmentDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ _res_conv = *(LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ*)(_res_ptr); + LDKCResult_HTLCOutputInCommitmentDecodeErrorZ _res_conv = *(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_free(_res_conv); + CResult_HTLCOutputInCommitmentDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_clone_ptr(LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ *NONNULL_PTR arg) { - LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ), "LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ"); - *ret_conv = CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_clone(arg); +static inline uint64_t CResult_HTLCOutputInCommitmentDecodeErrorZ_clone_ptr(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ), "LDKCResult_HTLCOutputInCommitmentDecodeErrorZ"); + *ret_conv = CResult_HTLCOutputInCommitmentDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ* arg_conv = (LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ*)(arg & ~1); - int64_t ret_val = CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* arg_conv = (LDKCResult_HTLCOutputInCommitmentDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_HTLCOutputInCommitmentDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_clone(uint32_t orig) { - LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ* orig_conv = (LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ*)(orig & ~1); - LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ), "LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ"); - *ret_conv = CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* orig_conv = (LDKCResult_HTLCOutputInCommitmentDecodeErrorZ*)(orig & ~1); + LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ), "LDKCResult_HTLCOutputInCommitmentDecodeErrorZ"); + *ret_conv = CResult_HTLCOutputInCommitmentDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_COption_u16Z_some(int16_t o) { - LDKCOption_u16Z *ret_copy = MALLOC(sizeof(LDKCOption_u16Z), "LDKCOption_u16Z"); - *ret_copy = COption_u16Z_some(o); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_COption_NoneZ_some() { + uint32_t ret_conv = LDKCOption_NoneZ_to_js(COption_NoneZ_some()); + return ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_COption_u16Z_none() { - LDKCOption_u16Z *ret_copy = MALLOC(sizeof(LDKCOption_u16Z), "LDKCOption_u16Z"); - *ret_copy = COption_u16Z_none(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_COption_NoneZ_none() { + uint32_t ret_conv = LDKCOption_NoneZ_to_js(COption_NoneZ_none()); + return ret_conv; } -void __attribute__((visibility("default"))) TS_COption_u16Z_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_COption_NoneZ_free(uint32_t _res) { + LDKCOption_NoneZ _res_conv = LDKCOption_NoneZ_from_js(_res); + COption_NoneZ_free(_res_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_ok(uint32_t o) { + LDKCounterpartyChannelTransactionParameters o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = CounterpartyChannelTransactionParameters_clone(&o_conv); + LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ), "LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ"); + *ret_conv = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_ok(o_conv); + return (uint64_t)ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ), "LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ"); + *ret_conv = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_err(e_conv); + return (uint64_t)ret_conv; +} + +jboolean __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* o_conv = (LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_is_ok(o_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCOption_u16Z _res_conv = *(LDKCOption_u16Z*)(_res_ptr); + LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ _res_conv = *(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - COption_u16Z_free(_res_conv); + CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_free(_res_conv); } -static inline uint64_t COption_u16Z_clone_ptr(LDKCOption_u16Z *NONNULL_PTR arg) { - LDKCOption_u16Z *ret_copy = MALLOC(sizeof(LDKCOption_u16Z), "LDKCOption_u16Z"); - *ret_copy = COption_u16Z_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +static inline uint64_t CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone_ptr(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ), "LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ"); + *ret_conv = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone(arg); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_COption_u16Z_clone_ptr(uint32_t arg) { - LDKCOption_u16Z* arg_conv = (LDKCOption_u16Z*)arg; - int64_t ret_val = COption_u16Z_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* arg_conv = (LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_COption_u16Z_clone(uint32_t orig) { - LDKCOption_u16Z* orig_conv = (LDKCOption_u16Z*)orig; - LDKCOption_u16Z *ret_copy = MALLOC(sizeof(LDKCOption_u16Z), "LDKCOption_u16Z"); - *ret_copy = COption_u16Z_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* orig_conv = (LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ*)(orig & ~1); + LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ), "LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ"); + *ret_conv = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_ok() { - LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); - *ret_conv = CResult_NoneAPIErrorZ_ok(); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_ok(uint32_t o) { + LDKChannelTransactionParameters o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = ChannelTransactionParameters_clone(&o_conv); + LDKCResult_ChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTransactionParametersDecodeErrorZ), "LDKCResult_ChannelTransactionParametersDecodeErrorZ"); + *ret_conv = CResult_ChannelTransactionParametersDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_err(uint32_t e) { - void* e_ptr = (void*)(((uint64_t)e) & ~1); - CHECK_ACCESS(e_ptr); - LDKAPIError e_conv = *(LDKAPIError*)(e_ptr); - e_conv = APIError_clone((LDKAPIError*)(((uint64_t)e) & ~1)); - LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); - *ret_conv = CResult_NoneAPIErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_ChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTransactionParametersDecodeErrorZ), "LDKCResult_ChannelTransactionParametersDecodeErrorZ"); + *ret_conv = CResult_ChannelTransactionParametersDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_is_ok(uint32_t o) { - LDKCResult_NoneAPIErrorZ* o_conv = (LDKCResult_NoneAPIErrorZ*)(o & ~1); - jboolean ret_val = CResult_NoneAPIErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ChannelTransactionParametersDecodeErrorZ* o_conv = (LDKCResult_ChannelTransactionParametersDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ChannelTransactionParametersDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_NoneAPIErrorZ _res_conv = *(LDKCResult_NoneAPIErrorZ*)(_res_ptr); + LDKCResult_ChannelTransactionParametersDecodeErrorZ _res_conv = *(LDKCResult_ChannelTransactionParametersDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_NoneAPIErrorZ_free(_res_conv); + CResult_ChannelTransactionParametersDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_NoneAPIErrorZ_clone_ptr(LDKCResult_NoneAPIErrorZ *NONNULL_PTR arg) { - LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); - *ret_conv = CResult_NoneAPIErrorZ_clone(arg); +static inline uint64_t CResult_ChannelTransactionParametersDecodeErrorZ_clone_ptr(LDKCResult_ChannelTransactionParametersDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTransactionParametersDecodeErrorZ), "LDKCResult_ChannelTransactionParametersDecodeErrorZ"); + *ret_conv = CResult_ChannelTransactionParametersDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_NoneAPIErrorZ* arg_conv = (LDKCResult_NoneAPIErrorZ*)(arg & ~1); - int64_t ret_val = CResult_NoneAPIErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ChannelTransactionParametersDecodeErrorZ* arg_conv = (LDKCResult_ChannelTransactionParametersDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ChannelTransactionParametersDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_clone(uint32_t orig) { - LDKCResult_NoneAPIErrorZ* orig_conv = (LDKCResult_NoneAPIErrorZ*)(orig & ~1); - LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); - *ret_conv = CResult_NoneAPIErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ChannelTransactionParametersDecodeErrorZ* orig_conv = (LDKCResult_ChannelTransactionParametersDecodeErrorZ*)(orig & ~1); + LDKCResult_ChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTransactionParametersDecodeErrorZ), "LDKCResult_ChannelTransactionParametersDecodeErrorZ"); + *ret_conv = CResult_ChannelTransactionParametersDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_CVec_CResult_NoneAPIErrorZZ_free(uint32_tArray _res) { - LDKCVec_CResult_NoneAPIErrorZZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKCResult_NoneAPIErrorZ), "LDKCVec_CResult_NoneAPIErrorZZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t w = 0; w < _res_constr.datalen; w++) { - uint32_t _res_conv_22 = _res_vals[w]; - void* _res_conv_22_ptr = (void*)(((uint64_t)_res_conv_22) & ~1); - CHECK_ACCESS(_res_conv_22_ptr); - LDKCResult_NoneAPIErrorZ _res_conv_22_conv = *(LDKCResult_NoneAPIErrorZ*)(_res_conv_22_ptr); - FREE((void*)_res_conv_22); - _res_constr.data[w] = _res_conv_22_conv; - } - CVec_CResult_NoneAPIErrorZZ_free(_res_constr); -} - -void __attribute__((visibility("default"))) TS_CVec_APIErrorZ_free(uint32_tArray _res) { - LDKCVec_APIErrorZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); +void __attribute__((visibility("default"))) TS_CVec_SignatureZ_free(ptrArray _res) { + LDKCVec_SignatureZ _res_constr; + _res_constr.datalen = _res->arr_len; if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKAPIError), "LDKCVec_APIErrorZ Elements"); + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); else _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t k = 0; k < _res_constr.datalen; k++) { - uint32_t _res_conv_10 = _res_vals[k]; - void* _res_conv_10_ptr = (void*)(((uint64_t)_res_conv_10) & ~1); - CHECK_ACCESS(_res_conv_10_ptr); - LDKAPIError _res_conv_10_conv = *(LDKAPIError*)(_res_conv_10_ptr); - FREE((void*)_res_conv_10); - _res_constr.data[k] = _res_conv_10_conv; + int8_tArray* _res_vals = (void*) _res->elems; + for (size_t m = 0; m < _res_constr.datalen; m++) { + int8_tArray _res_conv_12 = _res_vals[m]; + LDKSignature _res_conv_12_ref; + CHECK(_res_conv_12->arr_len == 64); + memcpy(_res_conv_12_ref.compact_form, _res_conv_12->elems, 64); + _res_constr.data[m] = _res_conv_12_ref; } - CVec_APIErrorZ_free(_res_constr); + CVec_SignatureZ_free(_res_constr); } - -uint32_t __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_ok(int8_tArray o) { - LDKThirtyTwoBytes o_ref; - CHECK(*((uint32_t*)o) == 32); - memcpy(o_ref.data, (uint8_t*)(o + 4), 32); - LDKCResult__u832APIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult__u832APIErrorZ), "LDKCResult__u832APIErrorZ"); - *ret_conv = CResult__u832APIErrorZ_ok(o_ref); + +uint32_t __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_ok(uint32_t o) { + LDKHolderCommitmentTransaction o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = HolderCommitmentTransaction_clone(&o_conv); + LDKCResult_HolderCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HolderCommitmentTransactionDecodeErrorZ), "LDKCResult_HolderCommitmentTransactionDecodeErrorZ"); + *ret_conv = CResult_HolderCommitmentTransactionDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_err(uint32_t e) { - void* e_ptr = (void*)(((uint64_t)e) & ~1); - CHECK_ACCESS(e_ptr); - LDKAPIError e_conv = *(LDKAPIError*)(e_ptr); - e_conv = APIError_clone((LDKAPIError*)(((uint64_t)e) & ~1)); - LDKCResult__u832APIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult__u832APIErrorZ), "LDKCResult__u832APIErrorZ"); - *ret_conv = CResult__u832APIErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_HolderCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HolderCommitmentTransactionDecodeErrorZ), "LDKCResult_HolderCommitmentTransactionDecodeErrorZ"); + *ret_conv = CResult_HolderCommitmentTransactionDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_is_ok(uint32_t o) { - LDKCResult__u832APIErrorZ* o_conv = (LDKCResult__u832APIErrorZ*)(o & ~1); - jboolean ret_val = CResult__u832APIErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_HolderCommitmentTransactionDecodeErrorZ* o_conv = (LDKCResult_HolderCommitmentTransactionDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_HolderCommitmentTransactionDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult__u832APIErrorZ _res_conv = *(LDKCResult__u832APIErrorZ*)(_res_ptr); + LDKCResult_HolderCommitmentTransactionDecodeErrorZ _res_conv = *(LDKCResult_HolderCommitmentTransactionDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult__u832APIErrorZ_free(_res_conv); + CResult_HolderCommitmentTransactionDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult__u832APIErrorZ_clone_ptr(LDKCResult__u832APIErrorZ *NONNULL_PTR arg) { - LDKCResult__u832APIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult__u832APIErrorZ), "LDKCResult__u832APIErrorZ"); - *ret_conv = CResult__u832APIErrorZ_clone(arg); +static inline uint64_t CResult_HolderCommitmentTransactionDecodeErrorZ_clone_ptr(LDKCResult_HolderCommitmentTransactionDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_HolderCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HolderCommitmentTransactionDecodeErrorZ), "LDKCResult_HolderCommitmentTransactionDecodeErrorZ"); + *ret_conv = CResult_HolderCommitmentTransactionDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_clone_ptr(uint32_t arg) { - LDKCResult__u832APIErrorZ* arg_conv = (LDKCResult__u832APIErrorZ*)(arg & ~1); - int64_t ret_val = CResult__u832APIErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_HolderCommitmentTransactionDecodeErrorZ* arg_conv = (LDKCResult_HolderCommitmentTransactionDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_HolderCommitmentTransactionDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_clone(uint32_t orig) { - LDKCResult__u832APIErrorZ* orig_conv = (LDKCResult__u832APIErrorZ*)(orig & ~1); - LDKCResult__u832APIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult__u832APIErrorZ), "LDKCResult__u832APIErrorZ"); - *ret_conv = CResult__u832APIErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_HolderCommitmentTransactionDecodeErrorZ* orig_conv = (LDKCResult_HolderCommitmentTransactionDecodeErrorZ*)(orig & ~1); + LDKCResult_HolderCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HolderCommitmentTransactionDecodeErrorZ), "LDKCResult_HolderCommitmentTransactionDecodeErrorZ"); + *ret_conv = CResult_HolderCommitmentTransactionDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_ok(int8_tArray o) { - LDKThirtyTwoBytes o_ref; - CHECK(*((uint32_t*)o) == 32); - memcpy(o_ref.data, (uint8_t*)(o + 4), 32); - LDKCResult_PaymentIdPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentSendFailureZ), "LDKCResult_PaymentIdPaymentSendFailureZ"); - *ret_conv = CResult_PaymentIdPaymentSendFailureZ_ok(o_ref); +uint32_t __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_ok(uint32_t o) { + LDKBuiltCommitmentTransaction o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = BuiltCommitmentTransaction_clone(&o_conv); + LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ), "LDKCResult_BuiltCommitmentTransactionDecodeErrorZ"); + *ret_conv = CResult_BuiltCommitmentTransactionDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_err(uint32_t e) { - void* e_ptr = (void*)(((uint64_t)e) & ~1); - CHECK_ACCESS(e_ptr); - LDKPaymentSendFailure e_conv = *(LDKPaymentSendFailure*)(e_ptr); - e_conv = PaymentSendFailure_clone((LDKPaymentSendFailure*)(((uint64_t)e) & ~1)); - LDKCResult_PaymentIdPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentSendFailureZ), "LDKCResult_PaymentIdPaymentSendFailureZ"); - *ret_conv = CResult_PaymentIdPaymentSendFailureZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ), "LDKCResult_BuiltCommitmentTransactionDecodeErrorZ"); + *ret_conv = CResult_BuiltCommitmentTransactionDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_is_ok(uint32_t o) { - LDKCResult_PaymentIdPaymentSendFailureZ* o_conv = (LDKCResult_PaymentIdPaymentSendFailureZ*)(o & ~1); - jboolean ret_val = CResult_PaymentIdPaymentSendFailureZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* o_conv = (LDKCResult_BuiltCommitmentTransactionDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_BuiltCommitmentTransactionDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_PaymentIdPaymentSendFailureZ _res_conv = *(LDKCResult_PaymentIdPaymentSendFailureZ*)(_res_ptr); + LDKCResult_BuiltCommitmentTransactionDecodeErrorZ _res_conv = *(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_PaymentIdPaymentSendFailureZ_free(_res_conv); + CResult_BuiltCommitmentTransactionDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_PaymentIdPaymentSendFailureZ_clone_ptr(LDKCResult_PaymentIdPaymentSendFailureZ *NONNULL_PTR arg) { - LDKCResult_PaymentIdPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentSendFailureZ), "LDKCResult_PaymentIdPaymentSendFailureZ"); - *ret_conv = CResult_PaymentIdPaymentSendFailureZ_clone(arg); +static inline uint64_t CResult_BuiltCommitmentTransactionDecodeErrorZ_clone_ptr(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ), "LDKCResult_BuiltCommitmentTransactionDecodeErrorZ"); + *ret_conv = CResult_BuiltCommitmentTransactionDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_clone_ptr(uint32_t arg) { - LDKCResult_PaymentIdPaymentSendFailureZ* arg_conv = (LDKCResult_PaymentIdPaymentSendFailureZ*)(arg & ~1); - int64_t ret_val = CResult_PaymentIdPaymentSendFailureZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* arg_conv = (LDKCResult_BuiltCommitmentTransactionDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_BuiltCommitmentTransactionDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_clone(uint32_t orig) { - LDKCResult_PaymentIdPaymentSendFailureZ* orig_conv = (LDKCResult_PaymentIdPaymentSendFailureZ*)(orig & ~1); - LDKCResult_PaymentIdPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentSendFailureZ), "LDKCResult_PaymentIdPaymentSendFailureZ"); - *ret_conv = CResult_PaymentIdPaymentSendFailureZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* orig_conv = (LDKCResult_BuiltCommitmentTransactionDecodeErrorZ*)(orig & ~1); + LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ), "LDKCResult_BuiltCommitmentTransactionDecodeErrorZ"); + *ret_conv = CResult_BuiltCommitmentTransactionDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_ok() { - LDKCResult_NonePaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentSendFailureZ), "LDKCResult_NonePaymentSendFailureZ"); - *ret_conv = CResult_NonePaymentSendFailureZ_ok(); +uint32_t __attribute__((visibility("default"))) TS_CResult_TrustedClosingTransactionNoneZ_ok(uint32_t o) { + LDKTrustedClosingTransaction o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + // Warning: we need a move here but no clone is available for LDKTrustedClosingTransaction + LDKCResult_TrustedClosingTransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TrustedClosingTransactionNoneZ), "LDKCResult_TrustedClosingTransactionNoneZ"); + *ret_conv = CResult_TrustedClosingTransactionNoneZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_err(uint32_t e) { - void* e_ptr = (void*)(((uint64_t)e) & ~1); - CHECK_ACCESS(e_ptr); - LDKPaymentSendFailure e_conv = *(LDKPaymentSendFailure*)(e_ptr); - e_conv = PaymentSendFailure_clone((LDKPaymentSendFailure*)(((uint64_t)e) & ~1)); - LDKCResult_NonePaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentSendFailureZ), "LDKCResult_NonePaymentSendFailureZ"); - *ret_conv = CResult_NonePaymentSendFailureZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_TrustedClosingTransactionNoneZ_err() { + LDKCResult_TrustedClosingTransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TrustedClosingTransactionNoneZ), "LDKCResult_TrustedClosingTransactionNoneZ"); + *ret_conv = CResult_TrustedClosingTransactionNoneZ_err(); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_is_ok(uint32_t o) { - LDKCResult_NonePaymentSendFailureZ* o_conv = (LDKCResult_NonePaymentSendFailureZ*)(o & ~1); - jboolean ret_val = CResult_NonePaymentSendFailureZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_TrustedClosingTransactionNoneZ_is_ok(uint32_t o) { + LDKCResult_TrustedClosingTransactionNoneZ* o_conv = (LDKCResult_TrustedClosingTransactionNoneZ*)(o & ~1); + jboolean ret_val = CResult_TrustedClosingTransactionNoneZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_TrustedClosingTransactionNoneZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_NonePaymentSendFailureZ _res_conv = *(LDKCResult_NonePaymentSendFailureZ*)(_res_ptr); + LDKCResult_TrustedClosingTransactionNoneZ _res_conv = *(LDKCResult_TrustedClosingTransactionNoneZ*)(_res_ptr); FREE((void*)_res); - CResult_NonePaymentSendFailureZ_free(_res_conv); + CResult_TrustedClosingTransactionNoneZ_free(_res_conv); } -static inline uint64_t CResult_NonePaymentSendFailureZ_clone_ptr(LDKCResult_NonePaymentSendFailureZ *NONNULL_PTR arg) { - LDKCResult_NonePaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentSendFailureZ), "LDKCResult_NonePaymentSendFailureZ"); - *ret_conv = CResult_NonePaymentSendFailureZ_clone(arg); +uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_ok(uint32_t o) { + LDKCommitmentTransaction o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = CommitmentTransaction_clone(&o_conv); + LDKCResult_CommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentTransactionDecodeErrorZ), "LDKCResult_CommitmentTransactionDecodeErrorZ"); + *ret_conv = CResult_CommitmentTransactionDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_clone_ptr(uint32_t arg) { - LDKCResult_NonePaymentSendFailureZ* arg_conv = (LDKCResult_NonePaymentSendFailureZ*)(arg & ~1); - int64_t ret_val = CResult_NonePaymentSendFailureZ_clone_ptr(arg_conv); + +uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_CommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentTransactionDecodeErrorZ), "LDKCResult_CommitmentTransactionDecodeErrorZ"); + *ret_conv = CResult_CommitmentTransactionDecodeErrorZ_err(e_conv); + return (uint64_t)ret_conv; +} + +jboolean __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_CommitmentTransactionDecodeErrorZ* o_conv = (LDKCResult_CommitmentTransactionDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_CommitmentTransactionDecodeErrorZ_is_ok(o_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_clone(uint32_t orig) { - LDKCResult_NonePaymentSendFailureZ* orig_conv = (LDKCResult_NonePaymentSendFailureZ*)(orig & ~1); - LDKCResult_NonePaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentSendFailureZ), "LDKCResult_NonePaymentSendFailureZ"); - *ret_conv = CResult_NonePaymentSendFailureZ_clone(orig_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_CommitmentTransactionDecodeErrorZ _res_conv = *(LDKCResult_CommitmentTransactionDecodeErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_CommitmentTransactionDecodeErrorZ_free(_res_conv); } -static inline uint64_t C2Tuple_PaymentHashPaymentIdZ_clone_ptr(LDKC2Tuple_PaymentHashPaymentIdZ *NONNULL_PTR arg) { - LDKC2Tuple_PaymentHashPaymentIdZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentIdZ), "LDKC2Tuple_PaymentHashPaymentIdZ"); - *ret_conv = C2Tuple_PaymentHashPaymentIdZ_clone(arg); - return ((uint64_t)ret_conv); +static inline uint64_t CResult_CommitmentTransactionDecodeErrorZ_clone_ptr(LDKCResult_CommitmentTransactionDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_CommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentTransactionDecodeErrorZ), "LDKCResult_CommitmentTransactionDecodeErrorZ"); + *ret_conv = CResult_CommitmentTransactionDecodeErrorZ_clone(arg); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentIdZ_clone_ptr(uint32_t arg) { - LDKC2Tuple_PaymentHashPaymentIdZ* arg_conv = (LDKC2Tuple_PaymentHashPaymentIdZ*)(arg & ~1); - int64_t ret_val = C2Tuple_PaymentHashPaymentIdZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_CommitmentTransactionDecodeErrorZ* arg_conv = (LDKCResult_CommitmentTransactionDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_CommitmentTransactionDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentIdZ_clone(uint32_t orig) { - LDKC2Tuple_PaymentHashPaymentIdZ* orig_conv = (LDKC2Tuple_PaymentHashPaymentIdZ*)(orig & ~1); - LDKC2Tuple_PaymentHashPaymentIdZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentIdZ), "LDKC2Tuple_PaymentHashPaymentIdZ"); - *ret_conv = C2Tuple_PaymentHashPaymentIdZ_clone(orig_conv); - return ((uint64_t)ret_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_CommitmentTransactionDecodeErrorZ* orig_conv = (LDKCResult_CommitmentTransactionDecodeErrorZ*)(orig & ~1); + LDKCResult_CommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentTransactionDecodeErrorZ), "LDKCResult_CommitmentTransactionDecodeErrorZ"); + *ret_conv = CResult_CommitmentTransactionDecodeErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentIdZ_new(int8_tArray a, int8_tArray b) { - LDKThirtyTwoBytes a_ref; - CHECK(*((uint32_t*)a) == 32); - memcpy(a_ref.data, (uint8_t*)(a + 4), 32); - LDKThirtyTwoBytes b_ref; - CHECK(*((uint32_t*)b) == 32); - memcpy(b_ref.data, (uint8_t*)(b + 4), 32); - LDKC2Tuple_PaymentHashPaymentIdZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentIdZ), "LDKC2Tuple_PaymentHashPaymentIdZ"); - *ret_conv = C2Tuple_PaymentHashPaymentIdZ_new(a_ref, b_ref); - return ((uint64_t)ret_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_TrustedCommitmentTransactionNoneZ_ok(uint32_t o) { + LDKTrustedCommitmentTransaction o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + // Warning: we need a move here but no clone is available for LDKTrustedCommitmentTransaction + LDKCResult_TrustedCommitmentTransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TrustedCommitmentTransactionNoneZ), "LDKCResult_TrustedCommitmentTransactionNoneZ"); + *ret_conv = CResult_TrustedCommitmentTransactionNoneZ_ok(o_conv); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentIdZ_free(uint32_t _res) { +uint32_t __attribute__((visibility("default"))) TS_CResult_TrustedCommitmentTransactionNoneZ_err() { + LDKCResult_TrustedCommitmentTransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TrustedCommitmentTransactionNoneZ), "LDKCResult_TrustedCommitmentTransactionNoneZ"); + *ret_conv = CResult_TrustedCommitmentTransactionNoneZ_err(); + return (uint64_t)ret_conv; +} + +jboolean __attribute__((visibility("default"))) TS_CResult_TrustedCommitmentTransactionNoneZ_is_ok(uint32_t o) { + LDKCResult_TrustedCommitmentTransactionNoneZ* o_conv = (LDKCResult_TrustedCommitmentTransactionNoneZ*)(o & ~1); + jboolean ret_val = CResult_TrustedCommitmentTransactionNoneZ_is_ok(o_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_CResult_TrustedCommitmentTransactionNoneZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKC2Tuple_PaymentHashPaymentIdZ _res_conv = *(LDKC2Tuple_PaymentHashPaymentIdZ*)(_res_ptr); + LDKCResult_TrustedCommitmentTransactionNoneZ _res_conv = *(LDKCResult_TrustedCommitmentTransactionNoneZ*)(_res_ptr); FREE((void*)_res); - C2Tuple_PaymentHashPaymentIdZ_free(_res_conv); + CResult_TrustedCommitmentTransactionNoneZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_ok(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKC2Tuple_PaymentHashPaymentIdZ o_conv = *(LDKC2Tuple_PaymentHashPaymentIdZ*)(o_ptr); - o_conv = C2Tuple_PaymentHashPaymentIdZ_clone((LDKC2Tuple_PaymentHashPaymentIdZ*)(((uint64_t)o) & ~1)); - LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ), "LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ"); - *ret_conv = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_ok(o_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_ok(ptrArray o) { + LDKCVec_SignatureZ o_constr; + o_constr.datalen = o->arr_len; + if (o_constr.datalen > 0) + o_constr.data = MALLOC(o_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); + else + o_constr.data = NULL; + int8_tArray* o_vals = (void*) o->elems; + for (size_t m = 0; m < o_constr.datalen; m++) { + int8_tArray o_conv_12 = o_vals[m]; + LDKSignature o_conv_12_ref; + CHECK(o_conv_12->arr_len == 64); + memcpy(o_conv_12_ref.compact_form, o_conv_12->elems, 64); + o_constr.data[m] = o_conv_12_ref; + } + LDKCResult_CVec_SignatureZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_SignatureZNoneZ), "LDKCResult_CVec_SignatureZNoneZ"); + *ret_conv = CResult_CVec_SignatureZNoneZ_ok(o_constr); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_err(uint32_t e) { - void* e_ptr = (void*)(((uint64_t)e) & ~1); - CHECK_ACCESS(e_ptr); - LDKPaymentSendFailure e_conv = *(LDKPaymentSendFailure*)(e_ptr); - e_conv = PaymentSendFailure_clone((LDKPaymentSendFailure*)(((uint64_t)e) & ~1)); - LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ), "LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ"); - *ret_conv = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_err() { + LDKCResult_CVec_SignatureZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_SignatureZNoneZ), "LDKCResult_CVec_SignatureZNoneZ"); + *ret_conv = CResult_CVec_SignatureZNoneZ_err(); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_is_ok(uint32_t o) { - LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* o_conv = (LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ*)(o & ~1); - jboolean ret_val = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_is_ok(uint32_t o) { + LDKCResult_CVec_SignatureZNoneZ* o_conv = (LDKCResult_CVec_SignatureZNoneZ*)(o & ~1); + jboolean ret_val = CResult_CVec_SignatureZNoneZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ _res_conv = *(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ*)(_res_ptr); + LDKCResult_CVec_SignatureZNoneZ _res_conv = *(LDKCResult_CVec_SignatureZNoneZ*)(_res_ptr); FREE((void*)_res); - CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_free(_res_conv); + CResult_CVec_SignatureZNoneZ_free(_res_conv); } -static inline uint64_t CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone_ptr(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ *NONNULL_PTR arg) { - LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ), "LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ"); - *ret_conv = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone(arg); +static inline uint64_t CResult_CVec_SignatureZNoneZ_clone_ptr(LDKCResult_CVec_SignatureZNoneZ *NONNULL_PTR arg) { + LDKCResult_CVec_SignatureZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_SignatureZNoneZ), "LDKCResult_CVec_SignatureZNoneZ"); + *ret_conv = CResult_CVec_SignatureZNoneZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone_ptr(uint32_t arg) { - LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* arg_conv = (LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ*)(arg & ~1); - int64_t ret_val = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_clone_ptr(uint32_t arg) { + LDKCResult_CVec_SignatureZNoneZ* arg_conv = (LDKCResult_CVec_SignatureZNoneZ*)(arg & ~1); + int64_t ret_val = CResult_CVec_SignatureZNoneZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone(uint32_t orig) { - LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* orig_conv = (LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ*)(orig & ~1); - LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ), "LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ"); - *ret_conv = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_clone(uint32_t orig) { + LDKCResult_CVec_SignatureZNoneZ* orig_conv = (LDKCResult_CVec_SignatureZNoneZ*)(orig & ~1); + LDKCResult_CVec_SignatureZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_SignatureZNoneZ), "LDKCResult_CVec_SignatureZNoneZ"); + *ret_conv = CResult_CVec_SignatureZNoneZ_clone(orig_conv); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_CVec_NetAddressZ_free(uint32_tArray _res) { - LDKCVec_NetAddressZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKNetAddress), "LDKCVec_NetAddressZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t m = 0; m < _res_constr.datalen; m++) { - uint32_t _res_conv_12 = _res_vals[m]; - void* _res_conv_12_ptr = (void*)(((uint64_t)_res_conv_12) & ~1); - CHECK_ACCESS(_res_conv_12_ptr); - LDKNetAddress _res_conv_12_conv = *(LDKNetAddress*)(_res_conv_12_ptr); - FREE((void*)_res_conv_12); - _res_constr.data[m] = _res_conv_12_conv; - } - CVec_NetAddressZ_free(_res_constr); -} - -static inline uint64_t C2Tuple_PaymentHashPaymentSecretZ_clone_ptr(LDKC2Tuple_PaymentHashPaymentSecretZ *NONNULL_PTR arg) { - LDKC2Tuple_PaymentHashPaymentSecretZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentSecretZ), "LDKC2Tuple_PaymentHashPaymentSecretZ"); - *ret_conv = C2Tuple_PaymentHashPaymentSecretZ_clone(arg); - return ((uint64_t)ret_conv); -} -int64_t __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentSecretZ_clone_ptr(uint32_t arg) { - LDKC2Tuple_PaymentHashPaymentSecretZ* arg_conv = (LDKC2Tuple_PaymentHashPaymentSecretZ*)(arg & ~1); - int64_t ret_val = C2Tuple_PaymentHashPaymentSecretZ_clone_ptr(arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_ok(uint32_t o) { + LDKShutdownScript o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = ShutdownScript_clone(&o_conv); + LDKCResult_ShutdownScriptDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptDecodeErrorZ), "LDKCResult_ShutdownScriptDecodeErrorZ"); + *ret_conv = CResult_ShutdownScriptDecodeErrorZ_ok(o_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentSecretZ_clone(uint32_t orig) { - LDKC2Tuple_PaymentHashPaymentSecretZ* orig_conv = (LDKC2Tuple_PaymentHashPaymentSecretZ*)(orig & ~1); - LDKC2Tuple_PaymentHashPaymentSecretZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentSecretZ), "LDKC2Tuple_PaymentHashPaymentSecretZ"); - *ret_conv = C2Tuple_PaymentHashPaymentSecretZ_clone(orig_conv); - return ((uint64_t)ret_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_ShutdownScriptDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptDecodeErrorZ), "LDKCResult_ShutdownScriptDecodeErrorZ"); + *ret_conv = CResult_ShutdownScriptDecodeErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentSecretZ_new(int8_tArray a, int8_tArray b) { - LDKThirtyTwoBytes a_ref; - CHECK(*((uint32_t*)a) == 32); - memcpy(a_ref.data, (uint8_t*)(a + 4), 32); - LDKThirtyTwoBytes b_ref; - CHECK(*((uint32_t*)b) == 32); - memcpy(b_ref.data, (uint8_t*)(b + 4), 32); - LDKC2Tuple_PaymentHashPaymentSecretZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentSecretZ), "LDKC2Tuple_PaymentHashPaymentSecretZ"); - *ret_conv = C2Tuple_PaymentHashPaymentSecretZ_new(a_ref, b_ref); - return ((uint64_t)ret_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ShutdownScriptDecodeErrorZ* o_conv = (LDKCResult_ShutdownScriptDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ShutdownScriptDecodeErrorZ_is_ok(o_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentSecretZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKC2Tuple_PaymentHashPaymentSecretZ _res_conv = *(LDKC2Tuple_PaymentHashPaymentSecretZ*)(_res_ptr); + LDKCResult_ShutdownScriptDecodeErrorZ _res_conv = *(LDKCResult_ShutdownScriptDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - C2Tuple_PaymentHashPaymentSecretZ_free(_res_conv); + CResult_ShutdownScriptDecodeErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_ok(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKC2Tuple_PaymentHashPaymentSecretZ o_conv = *(LDKC2Tuple_PaymentHashPaymentSecretZ*)(o_ptr); - o_conv = C2Tuple_PaymentHashPaymentSecretZ_clone((LDKC2Tuple_PaymentHashPaymentSecretZ*)(((uint64_t)o) & ~1)); - LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ"); - *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_ok(o_conv); +static inline uint64_t CResult_ShutdownScriptDecodeErrorZ_clone_ptr(LDKCResult_ShutdownScriptDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ShutdownScriptDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptDecodeErrorZ), "LDKCResult_ShutdownScriptDecodeErrorZ"); + *ret_conv = CResult_ShutdownScriptDecodeErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ShutdownScriptDecodeErrorZ* arg_conv = (LDKCResult_ShutdownScriptDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ShutdownScriptDecodeErrorZ_clone_ptr(arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ShutdownScriptDecodeErrorZ* orig_conv = (LDKCResult_ShutdownScriptDecodeErrorZ*)(orig & ~1); + LDKCResult_ShutdownScriptDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptDecodeErrorZ), "LDKCResult_ShutdownScriptDecodeErrorZ"); + *ret_conv = CResult_ShutdownScriptDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_err() { - LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ"); - *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_err(); +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_ok(uint32_t o) { + LDKShutdownScript o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = ShutdownScript_clone(&o_conv); + LDKCResult_ShutdownScriptInvalidShutdownScriptZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptInvalidShutdownScriptZ), "LDKCResult_ShutdownScriptInvalidShutdownScriptZ"); + *ret_conv = CResult_ShutdownScriptInvalidShutdownScriptZ_ok(o_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_is_ok(uint32_t o) { - LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* o_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ*)(o & ~1); - jboolean ret_val = CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_is_ok(o_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_err(uint32_t e) { + LDKInvalidShutdownScript e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = InvalidShutdownScript_clone(&e_conv); + LDKCResult_ShutdownScriptInvalidShutdownScriptZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptInvalidShutdownScriptZ), "LDKCResult_ShutdownScriptInvalidShutdownScriptZ"); + *ret_conv = CResult_ShutdownScriptInvalidShutdownScriptZ_err(e_conv); + return (uint64_t)ret_conv; +} + +jboolean __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_is_ok(uint32_t o) { + LDKCResult_ShutdownScriptInvalidShutdownScriptZ* o_conv = (LDKCResult_ShutdownScriptInvalidShutdownScriptZ*)(o & ~1); + jboolean ret_val = CResult_ShutdownScriptInvalidShutdownScriptZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ _res_conv = *(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ*)(_res_ptr); + LDKCResult_ShutdownScriptInvalidShutdownScriptZ _res_conv = *(LDKCResult_ShutdownScriptInvalidShutdownScriptZ*)(_res_ptr); FREE((void*)_res); - CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_free(_res_conv); + CResult_ShutdownScriptInvalidShutdownScriptZ_free(_res_conv); } -static inline uint64_t CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone_ptr(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ *NONNULL_PTR arg) { - LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ"); - *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone(arg); +static inline uint64_t CResult_ShutdownScriptInvalidShutdownScriptZ_clone_ptr(LDKCResult_ShutdownScriptInvalidShutdownScriptZ *NONNULL_PTR arg) { + LDKCResult_ShutdownScriptInvalidShutdownScriptZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptInvalidShutdownScriptZ), "LDKCResult_ShutdownScriptInvalidShutdownScriptZ"); + *ret_conv = CResult_ShutdownScriptInvalidShutdownScriptZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone_ptr(uint32_t arg) { - LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* arg_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ*)(arg & ~1); - int64_t ret_val = CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_clone_ptr(uint32_t arg) { + LDKCResult_ShutdownScriptInvalidShutdownScriptZ* arg_conv = (LDKCResult_ShutdownScriptInvalidShutdownScriptZ*)(arg & ~1); + int64_t ret_val = CResult_ShutdownScriptInvalidShutdownScriptZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone(uint32_t orig) { - LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* orig_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ*)(orig & ~1); - LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ"); - *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_clone(uint32_t orig) { + LDKCResult_ShutdownScriptInvalidShutdownScriptZ* orig_conv = (LDKCResult_ShutdownScriptInvalidShutdownScriptZ*)(orig & ~1); + LDKCResult_ShutdownScriptInvalidShutdownScriptZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptInvalidShutdownScriptZ), "LDKCResult_ShutdownScriptInvalidShutdownScriptZ"); + *ret_conv = CResult_ShutdownScriptInvalidShutdownScriptZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_ok(uint32_t o) { +uint32_t __attribute__((visibility("default"))) TS_COption_TypeZ_some(uint32_t o) { void* o_ptr = (void*)(((uint64_t)o) & ~1); CHECK_ACCESS(o_ptr); - LDKC2Tuple_PaymentHashPaymentSecretZ o_conv = *(LDKC2Tuple_PaymentHashPaymentSecretZ*)(o_ptr); - o_conv = C2Tuple_PaymentHashPaymentSecretZ_clone((LDKC2Tuple_PaymentHashPaymentSecretZ*)(((uint64_t)o) & ~1)); - LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ"); - *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_ok(o_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_err(uint32_t e) { - void* e_ptr = (void*)(((uint64_t)e) & ~1); - CHECK_ACCESS(e_ptr); - LDKAPIError e_conv = *(LDKAPIError*)(e_ptr); - e_conv = APIError_clone((LDKAPIError*)(((uint64_t)e) & ~1)); - LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ"); - *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_err(e_conv); - return (uint64_t)ret_conv; + LDKType o_conv = *(LDKType*)(o_ptr); + LDKCOption_TypeZ *ret_copy = MALLOC(sizeof(LDKCOption_TypeZ), "LDKCOption_TypeZ"); + *ret_copy = COption_TypeZ_some(o_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_is_ok(uint32_t o) { - LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* o_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ*)(o & ~1); - jboolean ret_val = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_is_ok(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_COption_TypeZ_none() { + LDKCOption_TypeZ *ret_copy = MALLOC(sizeof(LDKCOption_TypeZ), "LDKCOption_TypeZ"); + *ret_copy = COption_TypeZ_none(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_COption_TypeZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ _res_conv = *(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ*)(_res_ptr); + LDKCOption_TypeZ _res_conv = *(LDKCOption_TypeZ*)(_res_ptr); FREE((void*)_res); - CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_free(_res_conv); + COption_TypeZ_free(_res_conv); } -static inline uint64_t CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone_ptr(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ *NONNULL_PTR arg) { - LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ"); - *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone(arg); - return (uint64_t)ret_conv; +static inline uint64_t COption_TypeZ_clone_ptr(LDKCOption_TypeZ *NONNULL_PTR arg) { + LDKCOption_TypeZ *ret_copy = MALLOC(sizeof(LDKCOption_TypeZ), "LDKCOption_TypeZ"); + *ret_copy = COption_TypeZ_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* arg_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ*)(arg & ~1); - int64_t ret_val = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_COption_TypeZ_clone_ptr(uint32_t arg) { + LDKCOption_TypeZ* arg_conv = (LDKCOption_TypeZ*)arg; + int64_t ret_val = COption_TypeZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone(uint32_t orig) { - LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* orig_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ*)(orig & ~1); - LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ"); - *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_COption_TypeZ_clone(uint32_t orig) { + LDKCOption_TypeZ* orig_conv = (LDKCOption_TypeZ*)orig; + LDKCOption_TypeZ *ret_copy = MALLOC(sizeof(LDKCOption_TypeZ), "LDKCOption_TypeZ"); + *ret_copy = COption_TypeZ_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_ok(int8_tArray o) { - LDKThirtyTwoBytes o_ref; - CHECK(*((uint32_t*)o) == 32); - memcpy(o_ref.data, (uint8_t*)(o + 4), 32); - LDKCResult_PaymentSecretNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretNoneZ), "LDKCResult_PaymentSecretNoneZ"); - *ret_conv = CResult_PaymentSecretNoneZ_ok(o_ref); +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKCOption_TypeZ o_conv = *(LDKCOption_TypeZ*)(o_ptr); + o_conv = COption_TypeZ_clone((LDKCOption_TypeZ*)(((uint64_t)o) & ~1)); + LDKCResult_COption_TypeZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_TypeZDecodeErrorZ), "LDKCResult_COption_TypeZDecodeErrorZ"); + *ret_conv = CResult_COption_TypeZDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_err() { - LDKCResult_PaymentSecretNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretNoneZ), "LDKCResult_PaymentSecretNoneZ"); - *ret_conv = CResult_PaymentSecretNoneZ_err(); +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_COption_TypeZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_TypeZDecodeErrorZ), "LDKCResult_COption_TypeZDecodeErrorZ"); + *ret_conv = CResult_COption_TypeZDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_is_ok(uint32_t o) { - LDKCResult_PaymentSecretNoneZ* o_conv = (LDKCResult_PaymentSecretNoneZ*)(o & ~1); - jboolean ret_val = CResult_PaymentSecretNoneZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_COption_TypeZDecodeErrorZ* o_conv = (LDKCResult_COption_TypeZDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_COption_TypeZDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_PaymentSecretNoneZ _res_conv = *(LDKCResult_PaymentSecretNoneZ*)(_res_ptr); + LDKCResult_COption_TypeZDecodeErrorZ _res_conv = *(LDKCResult_COption_TypeZDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_PaymentSecretNoneZ_free(_res_conv); + CResult_COption_TypeZDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_PaymentSecretNoneZ_clone_ptr(LDKCResult_PaymentSecretNoneZ *NONNULL_PTR arg) { - LDKCResult_PaymentSecretNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretNoneZ), "LDKCResult_PaymentSecretNoneZ"); - *ret_conv = CResult_PaymentSecretNoneZ_clone(arg); +static inline uint64_t CResult_COption_TypeZDecodeErrorZ_clone_ptr(LDKCResult_COption_TypeZDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_COption_TypeZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_TypeZDecodeErrorZ), "LDKCResult_COption_TypeZDecodeErrorZ"); + *ret_conv = CResult_COption_TypeZDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_clone_ptr(uint32_t arg) { - LDKCResult_PaymentSecretNoneZ* arg_conv = (LDKCResult_PaymentSecretNoneZ*)(arg & ~1); - int64_t ret_val = CResult_PaymentSecretNoneZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_COption_TypeZDecodeErrorZ* arg_conv = (LDKCResult_COption_TypeZDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_COption_TypeZDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_clone(uint32_t orig) { - LDKCResult_PaymentSecretNoneZ* orig_conv = (LDKCResult_PaymentSecretNoneZ*)(orig & ~1); - LDKCResult_PaymentSecretNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretNoneZ), "LDKCResult_PaymentSecretNoneZ"); - *ret_conv = CResult_PaymentSecretNoneZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_COption_TypeZDecodeErrorZ* orig_conv = (LDKCResult_COption_TypeZDecodeErrorZ*)(orig & ~1); + LDKCResult_COption_TypeZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_TypeZDecodeErrorZ), "LDKCResult_COption_TypeZDecodeErrorZ"); + *ret_conv = CResult_COption_TypeZDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_ok(int8_tArray o) { - LDKThirtyTwoBytes o_ref; - CHECK(*((uint32_t*)o) == 32); - memcpy(o_ref.data, (uint8_t*)(o + 4), 32); - LDKCResult_PaymentSecretAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretAPIErrorZ), "LDKCResult_PaymentSecretAPIErrorZ"); - *ret_conv = CResult_PaymentSecretAPIErrorZ_ok(o_ref); +uint32_t __attribute__((visibility("default"))) TS_CResult_StringErrorZ_ok(jstring o) { + LDKStr o_conv = str_ref_to_owned_c(o); + LDKCResult_StringErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StringErrorZ), "LDKCResult_StringErrorZ"); + *ret_conv = CResult_StringErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_err(uint32_t e) { - void* e_ptr = (void*)(((uint64_t)e) & ~1); - CHECK_ACCESS(e_ptr); - LDKAPIError e_conv = *(LDKAPIError*)(e_ptr); - e_conv = APIError_clone((LDKAPIError*)(((uint64_t)e) & ~1)); - LDKCResult_PaymentSecretAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretAPIErrorZ), "LDKCResult_PaymentSecretAPIErrorZ"); - *ret_conv = CResult_PaymentSecretAPIErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_StringErrorZ_err(uint32_t e) { + LDKSecp256k1Error e_conv = LDKSecp256k1Error_from_js(e); + LDKCResult_StringErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StringErrorZ), "LDKCResult_StringErrorZ"); + *ret_conv = CResult_StringErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_is_ok(uint32_t o) { - LDKCResult_PaymentSecretAPIErrorZ* o_conv = (LDKCResult_PaymentSecretAPIErrorZ*)(o & ~1); - jboolean ret_val = CResult_PaymentSecretAPIErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_StringErrorZ_is_ok(uint32_t o) { + LDKCResult_StringErrorZ* o_conv = (LDKCResult_StringErrorZ*)(o & ~1); + jboolean ret_val = CResult_StringErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_StringErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_PaymentSecretAPIErrorZ _res_conv = *(LDKCResult_PaymentSecretAPIErrorZ*)(_res_ptr); + LDKCResult_StringErrorZ _res_conv = *(LDKCResult_StringErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_PaymentSecretAPIErrorZ_free(_res_conv); -} - -static inline uint64_t CResult_PaymentSecretAPIErrorZ_clone_ptr(LDKCResult_PaymentSecretAPIErrorZ *NONNULL_PTR arg) { - LDKCResult_PaymentSecretAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretAPIErrorZ), "LDKCResult_PaymentSecretAPIErrorZ"); - *ret_conv = CResult_PaymentSecretAPIErrorZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_PaymentSecretAPIErrorZ* arg_conv = (LDKCResult_PaymentSecretAPIErrorZ*)(arg & ~1); - int64_t ret_val = CResult_PaymentSecretAPIErrorZ_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_clone(uint32_t orig) { - LDKCResult_PaymentSecretAPIErrorZ* orig_conv = (LDKCResult_PaymentSecretAPIErrorZ*)(orig & ~1); - LDKCResult_PaymentSecretAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretAPIErrorZ), "LDKCResult_PaymentSecretAPIErrorZ"); - *ret_conv = CResult_PaymentSecretAPIErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; + CResult_StringErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_ok(int8_tArray o) { - LDKThirtyTwoBytes o_ref; - CHECK(*((uint32_t*)o) == 32); - memcpy(o_ref.data, (uint8_t*)(o + 4), 32); - LDKCResult_PaymentPreimageAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentPreimageAPIErrorZ), "LDKCResult_PaymentPreimageAPIErrorZ"); - *ret_conv = CResult_PaymentPreimageAPIErrorZ_ok(o_ref); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_ok(uint32_t o) { + LDKChannelMonitorUpdate o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = ChannelMonitorUpdate_clone(&o_conv); + LDKCResult_ChannelMonitorUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelMonitorUpdateDecodeErrorZ), "LDKCResult_ChannelMonitorUpdateDecodeErrorZ"); + *ret_conv = CResult_ChannelMonitorUpdateDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_err(uint32_t e) { - void* e_ptr = (void*)(((uint64_t)e) & ~1); - CHECK_ACCESS(e_ptr); - LDKAPIError e_conv = *(LDKAPIError*)(e_ptr); - e_conv = APIError_clone((LDKAPIError*)(((uint64_t)e) & ~1)); - LDKCResult_PaymentPreimageAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentPreimageAPIErrorZ), "LDKCResult_PaymentPreimageAPIErrorZ"); - *ret_conv = CResult_PaymentPreimageAPIErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_ChannelMonitorUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelMonitorUpdateDecodeErrorZ), "LDKCResult_ChannelMonitorUpdateDecodeErrorZ"); + *ret_conv = CResult_ChannelMonitorUpdateDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_is_ok(uint32_t o) { - LDKCResult_PaymentPreimageAPIErrorZ* o_conv = (LDKCResult_PaymentPreimageAPIErrorZ*)(o & ~1); - jboolean ret_val = CResult_PaymentPreimageAPIErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ChannelMonitorUpdateDecodeErrorZ* o_conv = (LDKCResult_ChannelMonitorUpdateDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ChannelMonitorUpdateDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_PaymentPreimageAPIErrorZ _res_conv = *(LDKCResult_PaymentPreimageAPIErrorZ*)(_res_ptr); + LDKCResult_ChannelMonitorUpdateDecodeErrorZ _res_conv = *(LDKCResult_ChannelMonitorUpdateDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_PaymentPreimageAPIErrorZ_free(_res_conv); + CResult_ChannelMonitorUpdateDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_PaymentPreimageAPIErrorZ_clone_ptr(LDKCResult_PaymentPreimageAPIErrorZ *NONNULL_PTR arg) { - LDKCResult_PaymentPreimageAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentPreimageAPIErrorZ), "LDKCResult_PaymentPreimageAPIErrorZ"); - *ret_conv = CResult_PaymentPreimageAPIErrorZ_clone(arg); +static inline uint64_t CResult_ChannelMonitorUpdateDecodeErrorZ_clone_ptr(LDKCResult_ChannelMonitorUpdateDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ChannelMonitorUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelMonitorUpdateDecodeErrorZ), "LDKCResult_ChannelMonitorUpdateDecodeErrorZ"); + *ret_conv = CResult_ChannelMonitorUpdateDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_PaymentPreimageAPIErrorZ* arg_conv = (LDKCResult_PaymentPreimageAPIErrorZ*)(arg & ~1); - int64_t ret_val = CResult_PaymentPreimageAPIErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ChannelMonitorUpdateDecodeErrorZ* arg_conv = (LDKCResult_ChannelMonitorUpdateDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ChannelMonitorUpdateDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_clone(uint32_t orig) { - LDKCResult_PaymentPreimageAPIErrorZ* orig_conv = (LDKCResult_PaymentPreimageAPIErrorZ*)(orig & ~1); - LDKCResult_PaymentPreimageAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentPreimageAPIErrorZ), "LDKCResult_PaymentPreimageAPIErrorZ"); - *ret_conv = CResult_PaymentPreimageAPIErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ChannelMonitorUpdateDecodeErrorZ* orig_conv = (LDKCResult_ChannelMonitorUpdateDecodeErrorZ*)(orig & ~1); + LDKCResult_ChannelMonitorUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelMonitorUpdateDecodeErrorZ), "LDKCResult_ChannelMonitorUpdateDecodeErrorZ"); + *ret_conv = CResult_ChannelMonitorUpdateDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_CVec_ChannelMonitorZ_free(uint32_tArray _res) { - LDKCVec_ChannelMonitorZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKChannelMonitor), "LDKCVec_ChannelMonitorZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t q = 0; q < _res_constr.datalen; q++) { - uint32_t _res_conv_16 = _res_vals[q]; - LDKChannelMonitor _res_conv_16_conv; - _res_conv_16_conv.inner = (void*)(_res_conv_16 & (~1)); - _res_conv_16_conv.is_owned = (_res_conv_16 & 1) || (_res_conv_16 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_16_conv); - _res_constr.data[q] = _res_conv_16_conv; - } - CVec_ChannelMonitorZ_free(_res_constr); +uint32_t __attribute__((visibility("default"))) TS_COption_MonitorEventZ_some(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKMonitorEvent o_conv = *(LDKMonitorEvent*)(o_ptr); + o_conv = MonitorEvent_clone((LDKMonitorEvent*)(((uint64_t)o) & ~1)); + LDKCOption_MonitorEventZ *ret_copy = MALLOC(sizeof(LDKCOption_MonitorEventZ), "LDKCOption_MonitorEventZ"); + *ret_copy = COption_MonitorEventZ_some(o_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelManagerZ_new(int8_tArray a, uint32_t b) { - LDKThirtyTwoBytes a_ref; - CHECK(*((uint32_t*)a) == 32); - memcpy(a_ref.data, (uint8_t*)(a + 4), 32); - LDKChannelManager b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = (b & 1) || (b == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - // Warning: we need a move here but no clone is available for LDKChannelManager - LDKC2Tuple_BlockHashChannelManagerZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlockHashChannelManagerZ), "LDKC2Tuple_BlockHashChannelManagerZ"); - *ret_conv = C2Tuple_BlockHashChannelManagerZ_new(a_ref, b_conv); - return ((uint64_t)ret_conv); +uint32_t __attribute__((visibility("default"))) TS_COption_MonitorEventZ_none() { + LDKCOption_MonitorEventZ *ret_copy = MALLOC(sizeof(LDKCOption_MonitorEventZ), "LDKCOption_MonitorEventZ"); + *ret_copy = COption_MonitorEventZ_none(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelManagerZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_COption_MonitorEventZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKC2Tuple_BlockHashChannelManagerZ _res_conv = *(LDKC2Tuple_BlockHashChannelManagerZ*)(_res_ptr); + LDKCOption_MonitorEventZ _res_conv = *(LDKCOption_MonitorEventZ*)(_res_ptr); FREE((void*)_res); - C2Tuple_BlockHashChannelManagerZ_free(_res_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_ok(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKC2Tuple_BlockHashChannelManagerZ o_conv = *(LDKC2Tuple_BlockHashChannelManagerZ*)(o_ptr); - // Warning: we may need a move here but no clone is available for LDKC2Tuple_BlockHashChannelManagerZ - LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ"); - *ret_conv = CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; + COption_MonitorEventZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ"); - *ret_conv = CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +static inline uint64_t COption_MonitorEventZ_clone_ptr(LDKCOption_MonitorEventZ *NONNULL_PTR arg) { + LDKCOption_MonitorEventZ *ret_copy = MALLOC(sizeof(LDKCOption_MonitorEventZ), "LDKCOption_MonitorEventZ"); + *ret_copy = COption_MonitorEventZ_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } - -jboolean __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ* o_conv = (LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_is_ok(o_conv); +int64_t __attribute__((visibility("default"))) TS_COption_MonitorEventZ_clone_ptr(uint32_t arg) { + LDKCOption_MonitorEventZ* arg_conv = (LDKCOption_MonitorEventZ*)arg; + int64_t ret_val = COption_MonitorEventZ_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ _res_conv = *(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_free(_res_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_ok(uint32_t o) { - LDKChannelConfig o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ChannelConfig_clone(&o_conv); - LDKCResult_ChannelConfigDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelConfigDecodeErrorZ), "LDKCResult_ChannelConfigDecodeErrorZ"); - *ret_conv = CResult_ChannelConfigDecodeErrorZ_ok(o_conv); +uint32_t __attribute__((visibility("default"))) TS_COption_MonitorEventZ_clone(uint32_t orig) { + LDKCOption_MonitorEventZ* orig_conv = (LDKCOption_MonitorEventZ*)orig; + LDKCOption_MonitorEventZ *ret_copy = MALLOC(sizeof(LDKCOption_MonitorEventZ), "LDKCOption_MonitorEventZ"); + *ret_copy = COption_MonitorEventZ_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKCOption_MonitorEventZ o_conv = *(LDKCOption_MonitorEventZ*)(o_ptr); + o_conv = COption_MonitorEventZ_clone((LDKCOption_MonitorEventZ*)(((uint64_t)o) & ~1)); + LDKCResult_COption_MonitorEventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_MonitorEventZDecodeErrorZ), "LDKCResult_COption_MonitorEventZDecodeErrorZ"); + *ret_conv = CResult_COption_MonitorEventZDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_ChannelConfigDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelConfigDecodeErrorZ), "LDKCResult_ChannelConfigDecodeErrorZ"); - *ret_conv = CResult_ChannelConfigDecodeErrorZ_err(e_conv); + LDKCResult_COption_MonitorEventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_MonitorEventZDecodeErrorZ), "LDKCResult_COption_MonitorEventZDecodeErrorZ"); + *ret_conv = CResult_COption_MonitorEventZDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ChannelConfigDecodeErrorZ* o_conv = (LDKCResult_ChannelConfigDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ChannelConfigDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_COption_MonitorEventZDecodeErrorZ* o_conv = (LDKCResult_COption_MonitorEventZDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_COption_MonitorEventZDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_ChannelConfigDecodeErrorZ _res_conv = *(LDKCResult_ChannelConfigDecodeErrorZ*)(_res_ptr); + LDKCResult_COption_MonitorEventZDecodeErrorZ _res_conv = *(LDKCResult_COption_MonitorEventZDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_ChannelConfigDecodeErrorZ_free(_res_conv); + CResult_COption_MonitorEventZDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_ChannelConfigDecodeErrorZ_clone_ptr(LDKCResult_ChannelConfigDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ChannelConfigDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelConfigDecodeErrorZ), "LDKCResult_ChannelConfigDecodeErrorZ"); - *ret_conv = CResult_ChannelConfigDecodeErrorZ_clone(arg); +static inline uint64_t CResult_COption_MonitorEventZDecodeErrorZ_clone_ptr(LDKCResult_COption_MonitorEventZDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_COption_MonitorEventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_MonitorEventZDecodeErrorZ), "LDKCResult_COption_MonitorEventZDecodeErrorZ"); + *ret_conv = CResult_COption_MonitorEventZDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ChannelConfigDecodeErrorZ* arg_conv = (LDKCResult_ChannelConfigDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ChannelConfigDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_COption_MonitorEventZDecodeErrorZ* arg_conv = (LDKCResult_COption_MonitorEventZDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_COption_MonitorEventZDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ChannelConfigDecodeErrorZ* orig_conv = (LDKCResult_ChannelConfigDecodeErrorZ*)(orig & ~1); - LDKCResult_ChannelConfigDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelConfigDecodeErrorZ), "LDKCResult_ChannelConfigDecodeErrorZ"); - *ret_conv = CResult_ChannelConfigDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_COption_MonitorEventZDecodeErrorZ* orig_conv = (LDKCResult_COption_MonitorEventZDecodeErrorZ*)(orig & ~1); + LDKCResult_COption_MonitorEventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_MonitorEventZDecodeErrorZ), "LDKCResult_COption_MonitorEventZDecodeErrorZ"); + *ret_conv = CResult_COption_MonitorEventZDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_ok(uint32_t o) { - LDKOutPoint o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_ok(uint32_t o) { + LDKHTLCUpdate o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = OutPoint_clone(&o_conv); - LDKCResult_OutPointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OutPointDecodeErrorZ), "LDKCResult_OutPointDecodeErrorZ"); - *ret_conv = CResult_OutPointDecodeErrorZ_ok(o_conv); + o_conv = HTLCUpdate_clone(&o_conv); + LDKCResult_HTLCUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCUpdateDecodeErrorZ), "LDKCResult_HTLCUpdateDecodeErrorZ"); + *ret_conv = CResult_HTLCUpdateDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_OutPointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OutPointDecodeErrorZ), "LDKCResult_OutPointDecodeErrorZ"); - *ret_conv = CResult_OutPointDecodeErrorZ_err(e_conv); + LDKCResult_HTLCUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCUpdateDecodeErrorZ), "LDKCResult_HTLCUpdateDecodeErrorZ"); + *ret_conv = CResult_HTLCUpdateDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_OutPointDecodeErrorZ* o_conv = (LDKCResult_OutPointDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_OutPointDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_HTLCUpdateDecodeErrorZ* o_conv = (LDKCResult_HTLCUpdateDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_HTLCUpdateDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_OutPointDecodeErrorZ _res_conv = *(LDKCResult_OutPointDecodeErrorZ*)(_res_ptr); + LDKCResult_HTLCUpdateDecodeErrorZ _res_conv = *(LDKCResult_HTLCUpdateDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_OutPointDecodeErrorZ_free(_res_conv); + CResult_HTLCUpdateDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_OutPointDecodeErrorZ_clone_ptr(LDKCResult_OutPointDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_OutPointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OutPointDecodeErrorZ), "LDKCResult_OutPointDecodeErrorZ"); - *ret_conv = CResult_OutPointDecodeErrorZ_clone(arg); +static inline uint64_t CResult_HTLCUpdateDecodeErrorZ_clone_ptr(LDKCResult_HTLCUpdateDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_HTLCUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCUpdateDecodeErrorZ), "LDKCResult_HTLCUpdateDecodeErrorZ"); + *ret_conv = CResult_HTLCUpdateDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_OutPointDecodeErrorZ* arg_conv = (LDKCResult_OutPointDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_OutPointDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_HTLCUpdateDecodeErrorZ* arg_conv = (LDKCResult_HTLCUpdateDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_HTLCUpdateDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_OutPointDecodeErrorZ* orig_conv = (LDKCResult_OutPointDecodeErrorZ*)(orig & ~1); - LDKCResult_OutPointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OutPointDecodeErrorZ), "LDKCResult_OutPointDecodeErrorZ"); - *ret_conv = CResult_OutPointDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_HTLCUpdateDecodeErrorZ* orig_conv = (LDKCResult_HTLCUpdateDecodeErrorZ*)(orig & ~1); + LDKCResult_HTLCUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCUpdateDecodeErrorZ), "LDKCResult_HTLCUpdateDecodeErrorZ"); + *ret_conv = CResult_HTLCUpdateDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_COption_TypeZ_some(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKType o_conv = *(LDKType*)(o_ptr); - LDKCOption_TypeZ *ret_copy = MALLOC(sizeof(LDKCOption_TypeZ), "LDKCOption_TypeZ"); - *ret_copy = COption_TypeZ_some(o_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_ok() { + LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); + *ret_conv = CResult_NoneNoneZ_ok(); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_COption_TypeZ_none() { - LDKCOption_TypeZ *ret_copy = MALLOC(sizeof(LDKCOption_TypeZ), "LDKCOption_TypeZ"); - *ret_copy = COption_TypeZ_none(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_err() { + LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); + *ret_conv = CResult_NoneNoneZ_err(); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_COption_TypeZ_free(uint32_t _res) { +jboolean __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_is_ok(uint32_t o) { + LDKCResult_NoneNoneZ* o_conv = (LDKCResult_NoneNoneZ*)(o & ~1); + jboolean ret_val = CResult_NoneNoneZ_is_ok(o_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCOption_TypeZ _res_conv = *(LDKCOption_TypeZ*)(_res_ptr); + LDKCResult_NoneNoneZ _res_conv = *(LDKCResult_NoneNoneZ*)(_res_ptr); FREE((void*)_res); - COption_TypeZ_free(_res_conv); + CResult_NoneNoneZ_free(_res_conv); } -static inline uint64_t COption_TypeZ_clone_ptr(LDKCOption_TypeZ *NONNULL_PTR arg) { - LDKCOption_TypeZ *ret_copy = MALLOC(sizeof(LDKCOption_TypeZ), "LDKCOption_TypeZ"); - *ret_copy = COption_TypeZ_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +static inline uint64_t CResult_NoneNoneZ_clone_ptr(LDKCResult_NoneNoneZ *NONNULL_PTR arg) { + LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); + *ret_conv = CResult_NoneNoneZ_clone(arg); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_COption_TypeZ_clone_ptr(uint32_t arg) { - LDKCOption_TypeZ* arg_conv = (LDKCOption_TypeZ*)arg; - int64_t ret_val = COption_TypeZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_clone_ptr(uint32_t arg) { + LDKCResult_NoneNoneZ* arg_conv = (LDKCResult_NoneNoneZ*)(arg & ~1); + int64_t ret_val = CResult_NoneNoneZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_COption_TypeZ_clone(uint32_t orig) { - LDKCOption_TypeZ* orig_conv = (LDKCOption_TypeZ*)orig; - LDKCOption_TypeZ *ret_copy = MALLOC(sizeof(LDKCOption_TypeZ), "LDKCOption_TypeZ"); - *ret_copy = COption_TypeZ_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_ok(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKCOption_TypeZ o_conv = *(LDKCOption_TypeZ*)(o_ptr); - o_conv = COption_TypeZ_clone((LDKCOption_TypeZ*)(((uint64_t)o) & ~1)); - LDKCResult_COption_TypeZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_TypeZDecodeErrorZ), "LDKCResult_COption_TypeZDecodeErrorZ"); - *ret_conv = CResult_COption_TypeZDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_COption_TypeZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_TypeZDecodeErrorZ), "LDKCResult_COption_TypeZDecodeErrorZ"); - *ret_conv = CResult_COption_TypeZDecodeErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_clone(uint32_t orig) { + LDKCResult_NoneNoneZ* orig_conv = (LDKCResult_NoneNoneZ*)(orig & ~1); + LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); + *ret_conv = CResult_NoneNoneZ_clone(orig_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_COption_TypeZDecodeErrorZ* o_conv = (LDKCResult_COption_TypeZDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_COption_TypeZDecodeErrorZ_is_ok(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_OutPointScriptZ_new(uint32_t a, int8_tArray b) { + LDKOutPoint a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = (a & 1) || (a == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + a_conv = OutPoint_clone(&a_conv); + LDKCVec_u8Z b_ref; + b_ref.datalen = b->arr_len; + b_ref.data = MALLOC(b_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(b_ref.data, b->elems, b_ref.datalen); + LDKC2Tuple_OutPointScriptZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_OutPointScriptZ), "LDKC2Tuple_OutPointScriptZ"); + *ret_conv = C2Tuple_OutPointScriptZ_new(a_conv, b_ref); + return ((uint64_t)ret_conv); } -void __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_C2Tuple_OutPointScriptZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_COption_TypeZDecodeErrorZ _res_conv = *(LDKCResult_COption_TypeZDecodeErrorZ*)(_res_ptr); + LDKC2Tuple_OutPointScriptZ _res_conv = *(LDKC2Tuple_OutPointScriptZ*)(_res_ptr); FREE((void*)_res); - CResult_COption_TypeZDecodeErrorZ_free(_res_conv); -} - -static inline uint64_t CResult_COption_TypeZDecodeErrorZ_clone_ptr(LDKCResult_COption_TypeZDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_COption_TypeZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_TypeZDecodeErrorZ), "LDKCResult_COption_TypeZDecodeErrorZ"); - *ret_conv = CResult_COption_TypeZDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_COption_TypeZDecodeErrorZ* arg_conv = (LDKCResult_COption_TypeZDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_COption_TypeZDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; + C2Tuple_OutPointScriptZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_COption_TypeZDecodeErrorZ* orig_conv = (LDKCResult_COption_TypeZDecodeErrorZ*)(orig & ~1); - LDKCResult_COption_TypeZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_TypeZDecodeErrorZ), "LDKCResult_COption_TypeZDecodeErrorZ"); - *ret_conv = CResult_COption_TypeZDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_u32ScriptZ_new(int32_t a, int8_tArray b) { + LDKCVec_u8Z b_ref; + b_ref.datalen = b->arr_len; + b_ref.data = MALLOC(b_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(b_ref.data, b->elems, b_ref.datalen); + LDKC2Tuple_u32ScriptZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_u32ScriptZ), "LDKC2Tuple_u32ScriptZ"); + *ret_conv = C2Tuple_u32ScriptZ_new(a, b_ref); + return ((uint64_t)ret_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentErrorZ_ok(int8_tArray o) { - LDKThirtyTwoBytes o_ref; - CHECK(*((uint32_t*)o) == 32); - memcpy(o_ref.data, (uint8_t*)(o + 4), 32); - LDKCResult_PaymentIdPaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentErrorZ), "LDKCResult_PaymentIdPaymentErrorZ"); - *ret_conv = CResult_PaymentIdPaymentErrorZ_ok(o_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_C2Tuple_u32ScriptZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKC2Tuple_u32ScriptZ _res_conv = *(LDKC2Tuple_u32ScriptZ*)(_res_ptr); + FREE((void*)_res); + C2Tuple_u32ScriptZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentErrorZ_err(uint32_t e) { - void* e_ptr = (void*)(((uint64_t)e) & ~1); - CHECK_ACCESS(e_ptr); - LDKPaymentError e_conv = *(LDKPaymentError*)(e_ptr); - e_conv = PaymentError_clone((LDKPaymentError*)(((uint64_t)e) & ~1)); - LDKCResult_PaymentIdPaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentErrorZ), "LDKCResult_PaymentIdPaymentErrorZ"); - *ret_conv = CResult_PaymentIdPaymentErrorZ_err(e_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_CVec_C2Tuple_u32ScriptZZ_free(uint32_tArray _res) { + LDKCVec_C2Tuple_u32ScriptZZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_u32ScriptZ), "LDKCVec_C2Tuple_u32ScriptZZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t v = 0; v < _res_constr.datalen; v++) { + uint32_t _res_conv_21 = _res_vals[v]; + void* _res_conv_21_ptr = (void*)(((uint64_t)_res_conv_21) & ~1); + CHECK_ACCESS(_res_conv_21_ptr); + LDKC2Tuple_u32ScriptZ _res_conv_21_conv = *(LDKC2Tuple_u32ScriptZ*)(_res_conv_21_ptr); + FREE((void*)_res_conv_21); + _res_constr.data[v] = _res_conv_21_conv; + } + CVec_C2Tuple_u32ScriptZZ_free(_res_constr); } -jboolean __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentErrorZ_is_ok(uint32_t o) { - LDKCResult_PaymentIdPaymentErrorZ* o_conv = (LDKCResult_PaymentIdPaymentErrorZ*)(o & ~1); - jboolean ret_val = CResult_PaymentIdPaymentErrorZ_is_ok(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_new(int8_tArray a, uint32_tArray b) { + LDKThirtyTwoBytes a_ref; + CHECK(a->arr_len == 32); + memcpy(a_ref.data, a->elems, 32); + LDKCVec_C2Tuple_u32ScriptZZ b_constr; + b_constr.datalen = b->arr_len; + if (b_constr.datalen > 0) + b_constr.data = MALLOC(b_constr.datalen * sizeof(LDKC2Tuple_u32ScriptZ), "LDKCVec_C2Tuple_u32ScriptZZ Elements"); + else + b_constr.data = NULL; + uint32_t* b_vals = b->elems; + for (size_t v = 0; v < b_constr.datalen; v++) { + uint32_t b_conv_21 = b_vals[v]; + void* b_conv_21_ptr = (void*)(((uint64_t)b_conv_21) & ~1); + CHECK_ACCESS(b_conv_21_ptr); + LDKC2Tuple_u32ScriptZ b_conv_21_conv = *(LDKC2Tuple_u32ScriptZ*)(b_conv_21_ptr); + // Warning: we may need a move here but no clone is available for LDKC2Tuple_u32ScriptZ + b_constr.data[v] = b_conv_21_conv; + } + LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ"); + *ret_conv = C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_new(a_ref, b_constr); + return ((uint64_t)ret_conv); } -void __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_PaymentIdPaymentErrorZ _res_conv = *(LDKCResult_PaymentIdPaymentErrorZ*)(_res_ptr); + LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ _res_conv = *(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ*)(_res_ptr); FREE((void*)_res); - CResult_PaymentIdPaymentErrorZ_free(_res_conv); + C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_free(_res_conv); } -static inline uint64_t CResult_PaymentIdPaymentErrorZ_clone_ptr(LDKCResult_PaymentIdPaymentErrorZ *NONNULL_PTR arg) { - LDKCResult_PaymentIdPaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentErrorZ), "LDKCResult_PaymentIdPaymentErrorZ"); - *ret_conv = CResult_PaymentIdPaymentErrorZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_PaymentIdPaymentErrorZ* arg_conv = (LDKCResult_PaymentIdPaymentErrorZ*)(arg & ~1); - int64_t ret_val = CResult_PaymentIdPaymentErrorZ_clone_ptr(arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ_free(uint32_tArray _res) { + LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ), "LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t o = 0; o < _res_constr.datalen; o++) { + uint32_t _res_conv_40 = _res_vals[o]; + void* _res_conv_40_ptr = (void*)(((uint64_t)_res_conv_40) & ~1); + CHECK_ACCESS(_res_conv_40_ptr); + LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ _res_conv_40_conv = *(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ*)(_res_conv_40_ptr); + FREE((void*)_res_conv_40); + _res_constr.data[o] = _res_conv_40_conv; + } + CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ_free(_res_constr); } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentErrorZ_clone(uint32_t orig) { - LDKCResult_PaymentIdPaymentErrorZ* orig_conv = (LDKCResult_PaymentIdPaymentErrorZ*)(orig & ~1); - LDKCResult_PaymentIdPaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentErrorZ), "LDKCResult_PaymentIdPaymentErrorZ"); - *ret_conv = CResult_PaymentIdPaymentErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_CVec_MonitorEventZ_free(uint32_tArray _res) { + LDKCVec_MonitorEventZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKMonitorEvent), "LDKCVec_MonitorEventZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t o = 0; o < _res_constr.datalen; o++) { + uint32_t _res_conv_14 = _res_vals[o]; + void* _res_conv_14_ptr = (void*)(((uint64_t)_res_conv_14) & ~1); + CHECK_ACCESS(_res_conv_14_ptr); + LDKMonitorEvent _res_conv_14_conv = *(LDKMonitorEvent*)(_res_conv_14_ptr); + FREE((void*)_res_conv_14); + _res_constr.data[o] = _res_conv_14_conv; + } + CVec_MonitorEventZ_free(_res_constr); } -uint32_t __attribute__((visibility("default"))) TS_CResult_SiPrefixNoneZ_ok(uint32_t o) { - LDKSiPrefix o_conv = LDKSiPrefix_from_js(o); - LDKCResult_SiPrefixNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SiPrefixNoneZ), "LDKCResult_SiPrefixNoneZ"); - *ret_conv = CResult_SiPrefixNoneZ_ok(o_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_CVec_EventZ_free(uint32_tArray _res) { + LDKCVec_EventZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKEvent), "LDKCVec_EventZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t h = 0; h < _res_constr.datalen; h++) { + uint32_t _res_conv_7 = _res_vals[h]; + void* _res_conv_7_ptr = (void*)(((uint64_t)_res_conv_7) & ~1); + CHECK_ACCESS(_res_conv_7_ptr); + LDKEvent _res_conv_7_conv = *(LDKEvent*)(_res_conv_7_ptr); + FREE((void*)_res_conv_7); + _res_constr.data[h] = _res_conv_7_conv; + } + CVec_EventZ_free(_res_constr); } -uint32_t __attribute__((visibility("default"))) TS_CResult_SiPrefixNoneZ_err() { - LDKCResult_SiPrefixNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SiPrefixNoneZ), "LDKCResult_SiPrefixNoneZ"); - *ret_conv = CResult_SiPrefixNoneZ_err(); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_CVec_TransactionZ_free(ptrArray _res) { + LDKCVec_TransactionZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKTransaction), "LDKCVec_TransactionZ Elements"); + else + _res_constr.data = NULL; + int8_tArray* _res_vals = (void*) _res->elems; + for (size_t m = 0; m < _res_constr.datalen; m++) { + int8_tArray _res_conv_12 = _res_vals[m]; + LDKTransaction _res_conv_12_ref; + _res_conv_12_ref.datalen = _res_conv_12->arr_len; + _res_conv_12_ref.data = MALLOC(_res_conv_12_ref.datalen, "LDKTransaction Bytes"); + memcpy(_res_conv_12_ref.data, _res_conv_12->elems, _res_conv_12_ref.datalen); + _res_conv_12_ref.data_is_owned = true; + _res_constr.data[m] = _res_conv_12_ref; + } + CVec_TransactionZ_free(_res_constr); } -jboolean __attribute__((visibility("default"))) TS_CResult_SiPrefixNoneZ_is_ok(uint32_t o) { - LDKCResult_SiPrefixNoneZ* o_conv = (LDKCResult_SiPrefixNoneZ*)(o & ~1); - jboolean ret_val = CResult_SiPrefixNoneZ_is_ok(o_conv); +static inline uint64_t C2Tuple_usizeTransactionZ_clone_ptr(LDKC2Tuple_usizeTransactionZ *NONNULL_PTR arg) { + LDKC2Tuple_usizeTransactionZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_usizeTransactionZ), "LDKC2Tuple_usizeTransactionZ"); + *ret_conv = C2Tuple_usizeTransactionZ_clone(arg); + return ((uint64_t)ret_conv); +} +int64_t __attribute__((visibility("default"))) TS_C2Tuple_usizeTransactionZ_clone_ptr(uint32_t arg) { + LDKC2Tuple_usizeTransactionZ* arg_conv = (LDKC2Tuple_usizeTransactionZ*)(arg & ~1); + int64_t ret_val = C2Tuple_usizeTransactionZ_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_SiPrefixNoneZ_free(uint32_t _res) { +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_usizeTransactionZ_clone(uint32_t orig) { + LDKC2Tuple_usizeTransactionZ* orig_conv = (LDKC2Tuple_usizeTransactionZ*)(orig & ~1); + LDKC2Tuple_usizeTransactionZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_usizeTransactionZ), "LDKC2Tuple_usizeTransactionZ"); + *ret_conv = C2Tuple_usizeTransactionZ_clone(orig_conv); + return ((uint64_t)ret_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_usizeTransactionZ_new(int64_t a, int8_tArray b) { + LDKTransaction b_ref; + b_ref.datalen = b->arr_len; + b_ref.data = MALLOC(b_ref.datalen, "LDKTransaction Bytes"); + memcpy(b_ref.data, b->elems, b_ref.datalen); + b_ref.data_is_owned = true; + LDKC2Tuple_usizeTransactionZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_usizeTransactionZ), "LDKC2Tuple_usizeTransactionZ"); + *ret_conv = C2Tuple_usizeTransactionZ_new(a, b_ref); + return ((uint64_t)ret_conv); +} + +void __attribute__((visibility("default"))) TS_C2Tuple_usizeTransactionZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_SiPrefixNoneZ _res_conv = *(LDKCResult_SiPrefixNoneZ*)(_res_ptr); + LDKC2Tuple_usizeTransactionZ _res_conv = *(LDKC2Tuple_usizeTransactionZ*)(_res_ptr); FREE((void*)_res); - CResult_SiPrefixNoneZ_free(_res_conv); + C2Tuple_usizeTransactionZ_free(_res_conv); } -static inline uint64_t CResult_SiPrefixNoneZ_clone_ptr(LDKCResult_SiPrefixNoneZ *NONNULL_PTR arg) { - LDKCResult_SiPrefixNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SiPrefixNoneZ), "LDKCResult_SiPrefixNoneZ"); - *ret_conv = CResult_SiPrefixNoneZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_SiPrefixNoneZ_clone_ptr(uint32_t arg) { - LDKCResult_SiPrefixNoneZ* arg_conv = (LDKCResult_SiPrefixNoneZ*)(arg & ~1); - int64_t ret_val = CResult_SiPrefixNoneZ_clone_ptr(arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_CVec_C2Tuple_usizeTransactionZZ_free(uint32_tArray _res) { + LDKCVec_C2Tuple_usizeTransactionZZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_usizeTransactionZ), "LDKCVec_C2Tuple_usizeTransactionZZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t c = 0; c < _res_constr.datalen; c++) { + uint32_t _res_conv_28 = _res_vals[c]; + void* _res_conv_28_ptr = (void*)(((uint64_t)_res_conv_28) & ~1); + CHECK_ACCESS(_res_conv_28_ptr); + LDKC2Tuple_usizeTransactionZ _res_conv_28_conv = *(LDKC2Tuple_usizeTransactionZ*)(_res_conv_28_ptr); + FREE((void*)_res_conv_28); + _res_constr.data[c] = _res_conv_28_conv; + } + CVec_C2Tuple_usizeTransactionZZ_free(_res_constr); } -uint32_t __attribute__((visibility("default"))) TS_CResult_SiPrefixNoneZ_clone(uint32_t orig) { - LDKCResult_SiPrefixNoneZ* orig_conv = (LDKCResult_SiPrefixNoneZ*)(orig & ~1); - LDKCResult_SiPrefixNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SiPrefixNoneZ), "LDKCResult_SiPrefixNoneZ"); - *ret_conv = CResult_SiPrefixNoneZ_clone(orig_conv); - return (uint64_t)ret_conv; +static inline uint64_t C2Tuple_u32TxOutZ_clone_ptr(LDKC2Tuple_u32TxOutZ *NONNULL_PTR arg) { + LDKC2Tuple_u32TxOutZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_u32TxOutZ), "LDKC2Tuple_u32TxOutZ"); + *ret_conv = C2Tuple_u32TxOutZ_clone(arg); + return ((uint64_t)ret_conv); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceNoneZ_ok(uint32_t o) { - LDKInvoice o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = Invoice_clone(&o_conv); - LDKCResult_InvoiceNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceNoneZ), "LDKCResult_InvoiceNoneZ"); - *ret_conv = CResult_InvoiceNoneZ_ok(o_conv); - return (uint64_t)ret_conv; +int64_t __attribute__((visibility("default"))) TS_C2Tuple_u32TxOutZ_clone_ptr(uint32_t arg) { + LDKC2Tuple_u32TxOutZ* arg_conv = (LDKC2Tuple_u32TxOutZ*)(arg & ~1); + int64_t ret_val = C2Tuple_u32TxOutZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceNoneZ_err() { - LDKCResult_InvoiceNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceNoneZ), "LDKCResult_InvoiceNoneZ"); - *ret_conv = CResult_InvoiceNoneZ_err(); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_u32TxOutZ_clone(uint32_t orig) { + LDKC2Tuple_u32TxOutZ* orig_conv = (LDKC2Tuple_u32TxOutZ*)(orig & ~1); + LDKC2Tuple_u32TxOutZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_u32TxOutZ), "LDKC2Tuple_u32TxOutZ"); + *ret_conv = C2Tuple_u32TxOutZ_clone(orig_conv); + return ((uint64_t)ret_conv); } -jboolean __attribute__((visibility("default"))) TS_CResult_InvoiceNoneZ_is_ok(uint32_t o) { - LDKCResult_InvoiceNoneZ* o_conv = (LDKCResult_InvoiceNoneZ*)(o & ~1); - jboolean ret_val = CResult_InvoiceNoneZ_is_ok(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_u32TxOutZ_new(int32_t a, uint32_t b) { + void* b_ptr = (void*)(((uint64_t)b) & ~1); + CHECK_ACCESS(b_ptr); + LDKTxOut b_conv = *(LDKTxOut*)(b_ptr); + b_conv = TxOut_clone((LDKTxOut*)(((uint64_t)b) & ~1)); + LDKC2Tuple_u32TxOutZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_u32TxOutZ), "LDKC2Tuple_u32TxOutZ"); + *ret_conv = C2Tuple_u32TxOutZ_new(a, b_conv); + return ((uint64_t)ret_conv); } -void __attribute__((visibility("default"))) TS_CResult_InvoiceNoneZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_C2Tuple_u32TxOutZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_InvoiceNoneZ _res_conv = *(LDKCResult_InvoiceNoneZ*)(_res_ptr); + LDKC2Tuple_u32TxOutZ _res_conv = *(LDKC2Tuple_u32TxOutZ*)(_res_ptr); FREE((void*)_res); - CResult_InvoiceNoneZ_free(_res_conv); + C2Tuple_u32TxOutZ_free(_res_conv); } -static inline uint64_t CResult_InvoiceNoneZ_clone_ptr(LDKCResult_InvoiceNoneZ *NONNULL_PTR arg) { - LDKCResult_InvoiceNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceNoneZ), "LDKCResult_InvoiceNoneZ"); - *ret_conv = CResult_InvoiceNoneZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_InvoiceNoneZ_clone_ptr(uint32_t arg) { - LDKCResult_InvoiceNoneZ* arg_conv = (LDKCResult_InvoiceNoneZ*)(arg & ~1); - int64_t ret_val = CResult_InvoiceNoneZ_clone_ptr(arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_CVec_C2Tuple_u32TxOutZZ_free(uint32_tArray _res) { + LDKCVec_C2Tuple_u32TxOutZZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_u32TxOutZ), "LDKCVec_C2Tuple_u32TxOutZZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t u = 0; u < _res_constr.datalen; u++) { + uint32_t _res_conv_20 = _res_vals[u]; + void* _res_conv_20_ptr = (void*)(((uint64_t)_res_conv_20) & ~1); + CHECK_ACCESS(_res_conv_20_ptr); + LDKC2Tuple_u32TxOutZ _res_conv_20_conv = *(LDKC2Tuple_u32TxOutZ*)(_res_conv_20_ptr); + FREE((void*)_res_conv_20); + _res_constr.data[u] = _res_conv_20_conv; + } + CVec_C2Tuple_u32TxOutZZ_free(_res_constr); } -uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceNoneZ_clone(uint32_t orig) { - LDKCResult_InvoiceNoneZ* orig_conv = (LDKCResult_InvoiceNoneZ*)(orig & ~1); - LDKCResult_InvoiceNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceNoneZ), "LDKCResult_InvoiceNoneZ"); - *ret_conv = CResult_InvoiceNoneZ_clone(orig_conv); - return (uint64_t)ret_conv; +static inline uint64_t C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone_ptr(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ *NONNULL_PTR arg) { + LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ"); + *ret_conv = C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(arg); + return ((uint64_t)ret_conv); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_SignedRawInvoiceNoneZ_ok(uint32_t o) { - LDKSignedRawInvoice o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = SignedRawInvoice_clone(&o_conv); - LDKCResult_SignedRawInvoiceNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignedRawInvoiceNoneZ), "LDKCResult_SignedRawInvoiceNoneZ"); - *ret_conv = CResult_SignedRawInvoiceNoneZ_ok(o_conv); - return (uint64_t)ret_conv; +int64_t __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone_ptr(uint32_t arg) { + LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* arg_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ*)(arg & ~1); + int64_t ret_val = C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_SignedRawInvoiceNoneZ_err() { - LDKCResult_SignedRawInvoiceNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignedRawInvoiceNoneZ), "LDKCResult_SignedRawInvoiceNoneZ"); - *ret_conv = CResult_SignedRawInvoiceNoneZ_err(); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(uint32_t orig) { + LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* orig_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ*)(orig & ~1); + LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ"); + *ret_conv = C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(orig_conv); + return ((uint64_t)ret_conv); } -jboolean __attribute__((visibility("default"))) TS_CResult_SignedRawInvoiceNoneZ_is_ok(uint32_t o) { - LDKCResult_SignedRawInvoiceNoneZ* o_conv = (LDKCResult_SignedRawInvoiceNoneZ*)(o & ~1); - jboolean ret_val = CResult_SignedRawInvoiceNoneZ_is_ok(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_new(int8_tArray a, uint32_tArray b) { + LDKThirtyTwoBytes a_ref; + CHECK(a->arr_len == 32); + memcpy(a_ref.data, a->elems, 32); + LDKCVec_C2Tuple_u32TxOutZZ b_constr; + b_constr.datalen = b->arr_len; + if (b_constr.datalen > 0) + b_constr.data = MALLOC(b_constr.datalen * sizeof(LDKC2Tuple_u32TxOutZ), "LDKCVec_C2Tuple_u32TxOutZZ Elements"); + else + b_constr.data = NULL; + uint32_t* b_vals = b->elems; + for (size_t u = 0; u < b_constr.datalen; u++) { + uint32_t b_conv_20 = b_vals[u]; + void* b_conv_20_ptr = (void*)(((uint64_t)b_conv_20) & ~1); + CHECK_ACCESS(b_conv_20_ptr); + LDKC2Tuple_u32TxOutZ b_conv_20_conv = *(LDKC2Tuple_u32TxOutZ*)(b_conv_20_ptr); + b_conv_20_conv = C2Tuple_u32TxOutZ_clone((LDKC2Tuple_u32TxOutZ*)(((uint64_t)b_conv_20) & ~1)); + b_constr.data[u] = b_conv_20_conv; + } + LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ"); + *ret_conv = C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_new(a_ref, b_constr); + return ((uint64_t)ret_conv); } -void __attribute__((visibility("default"))) TS_CResult_SignedRawInvoiceNoneZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_SignedRawInvoiceNoneZ _res_conv = *(LDKCResult_SignedRawInvoiceNoneZ*)(_res_ptr); + LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ _res_conv = *(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ*)(_res_ptr); FREE((void*)_res); - CResult_SignedRawInvoiceNoneZ_free(_res_conv); + C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_free(_res_conv); } -static inline uint64_t CResult_SignedRawInvoiceNoneZ_clone_ptr(LDKCResult_SignedRawInvoiceNoneZ *NONNULL_PTR arg) { - LDKCResult_SignedRawInvoiceNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignedRawInvoiceNoneZ), "LDKCResult_SignedRawInvoiceNoneZ"); - *ret_conv = CResult_SignedRawInvoiceNoneZ_clone(arg); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_CVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ_free(uint32_tArray _res) { + LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t n = 0; n < _res_constr.datalen; n++) { + uint32_t _res_conv_39 = _res_vals[n]; + void* _res_conv_39_ptr = (void*)(((uint64_t)_res_conv_39) & ~1); + CHECK_ACCESS(_res_conv_39_ptr); + LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ _res_conv_39_conv = *(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ*)(_res_conv_39_ptr); + FREE((void*)_res_conv_39); + _res_constr.data[n] = _res_conv_39_conv; + } + CVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ_free(_res_constr); } -int64_t __attribute__((visibility("default"))) TS_CResult_SignedRawInvoiceNoneZ_clone_ptr(uint32_t arg) { - LDKCResult_SignedRawInvoiceNoneZ* arg_conv = (LDKCResult_SignedRawInvoiceNoneZ*)(arg & ~1); - int64_t ret_val = CResult_SignedRawInvoiceNoneZ_clone_ptr(arg_conv); - return ret_val; + +void __attribute__((visibility("default"))) TS_CVec_TxidZ_free(ptrArray _res) { + LDKCVec_TxidZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKThirtyTwoBytes), "LDKCVec_TxidZ Elements"); + else + _res_constr.data = NULL; + int8_tArray* _res_vals = (void*) _res->elems; + for (size_t m = 0; m < _res_constr.datalen; m++) { + int8_tArray _res_conv_12 = _res_vals[m]; + LDKThirtyTwoBytes _res_conv_12_ref; + CHECK(_res_conv_12->arr_len == 32); + memcpy(_res_conv_12_ref.data, _res_conv_12->elems, 32); + _res_constr.data[m] = _res_conv_12_ref; + } + CVec_TxidZ_free(_res_constr); } -uint32_t __attribute__((visibility("default"))) TS_CResult_SignedRawInvoiceNoneZ_clone(uint32_t orig) { - LDKCResult_SignedRawInvoiceNoneZ* orig_conv = (LDKCResult_SignedRawInvoiceNoneZ*)(orig & ~1); - LDKCResult_SignedRawInvoiceNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignedRawInvoiceNoneZ), "LDKCResult_SignedRawInvoiceNoneZ"); - *ret_conv = CResult_SignedRawInvoiceNoneZ_clone(orig_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_CVec_BalanceZ_free(uint32_tArray _res) { + LDKCVec_BalanceZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKBalance), "LDKCVec_BalanceZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t j = 0; j < _res_constr.datalen; j++) { + uint32_t _res_conv_9 = _res_vals[j]; + void* _res_conv_9_ptr = (void*)(((uint64_t)_res_conv_9) & ~1); + CHECK_ACCESS(_res_conv_9_ptr); + LDKBalance _res_conv_9_conv = *(LDKBalance*)(_res_conv_9_ptr); + FREE((void*)_res_conv_9); + _res_constr.data[j] = _res_conv_9_conv; + } + CVec_BalanceZ_free(_res_constr); } -static inline uint64_t C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone_ptr(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ *NONNULL_PTR arg) { - LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ), "LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ"); - *ret_conv = C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone(arg); +static inline uint64_t C2Tuple_BlockHashChannelMonitorZ_clone_ptr(LDKC2Tuple_BlockHashChannelMonitorZ *NONNULL_PTR arg) { + LDKC2Tuple_BlockHashChannelMonitorZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlockHashChannelMonitorZ), "LDKC2Tuple_BlockHashChannelMonitorZ"); + *ret_conv = C2Tuple_BlockHashChannelMonitorZ_clone(arg); return ((uint64_t)ret_conv); } -int64_t __attribute__((visibility("default"))) TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone_ptr(uint32_t arg) { - LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ* arg_conv = (LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ*)(arg & ~1); - int64_t ret_val = C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_clone_ptr(uint32_t arg) { + LDKC2Tuple_BlockHashChannelMonitorZ* arg_conv = (LDKC2Tuple_BlockHashChannelMonitorZ*)(arg & ~1); + int64_t ret_val = C2Tuple_BlockHashChannelMonitorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone(uint32_t orig) { - LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ* orig_conv = (LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ*)(orig & ~1); - LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ), "LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ"); - *ret_conv = C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_clone(uint32_t orig) { + LDKC2Tuple_BlockHashChannelMonitorZ* orig_conv = (LDKC2Tuple_BlockHashChannelMonitorZ*)(orig & ~1); + LDKC2Tuple_BlockHashChannelMonitorZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlockHashChannelMonitorZ), "LDKC2Tuple_BlockHashChannelMonitorZ"); + *ret_conv = C2Tuple_BlockHashChannelMonitorZ_clone(orig_conv); return ((uint64_t)ret_conv); } -uint32_t __attribute__((visibility("default"))) TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_new(uint32_t a, int8_tArray b, uint32_t c) { - LDKRawInvoice a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = (a & 1) || (a == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - a_conv = RawInvoice_clone(&a_conv); - LDKThirtyTwoBytes b_ref; - CHECK(*((uint32_t*)b) == 32); - memcpy(b_ref.data, (uint8_t*)(b + 4), 32); - LDKInvoiceSignature c_conv; - c_conv.inner = (void*)(c & (~1)); - c_conv.is_owned = (c & 1) || (c == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(c_conv); - c_conv = InvoiceSignature_clone(&c_conv); - LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ), "LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ"); - *ret_conv = C3Tuple_RawInvoice_u832InvoiceSignatureZ_new(a_conv, b_ref, c_conv); +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_new(int8_tArray a, uint32_t b) { + LDKThirtyTwoBytes a_ref; + CHECK(a->arr_len == 32); + memcpy(a_ref.data, a->elems, 32); + LDKChannelMonitor b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = (b & 1) || (b == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + b_conv = ChannelMonitor_clone(&b_conv); + LDKC2Tuple_BlockHashChannelMonitorZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlockHashChannelMonitorZ), "LDKC2Tuple_BlockHashChannelMonitorZ"); + *ret_conv = C2Tuple_BlockHashChannelMonitorZ_new(a_ref, b_conv); return ((uint64_t)ret_conv); } -void __attribute__((visibility("default"))) TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ _res_conv = *(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ*)(_res_ptr); + LDKC2Tuple_BlockHashChannelMonitorZ _res_conv = *(LDKC2Tuple_BlockHashChannelMonitorZ*)(_res_ptr); FREE((void*)_res); - C3Tuple_RawInvoice_u832InvoiceSignatureZ_free(_res_conv); + C2Tuple_BlockHashChannelMonitorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_PayeePubKeyErrorZ_ok(uint32_t o) { - LDKPayeePubKey o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = PayeePubKey_clone(&o_conv); - LDKCResult_PayeePubKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeePubKeyErrorZ), "LDKCResult_PayeePubKeyErrorZ"); - *ret_conv = CResult_PayeePubKeyErrorZ_ok(o_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKC2Tuple_BlockHashChannelMonitorZ o_conv = *(LDKC2Tuple_BlockHashChannelMonitorZ*)(o_ptr); + o_conv = C2Tuple_BlockHashChannelMonitorZ_clone((LDKC2Tuple_BlockHashChannelMonitorZ*)(((uint64_t)o) & ~1)); + LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ"); + *ret_conv = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PayeePubKeyErrorZ_err(uint32_t e) { - LDKSecp256k1Error e_conv = LDKSecp256k1Error_from_js(e); - LDKCResult_PayeePubKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeePubKeyErrorZ), "LDKCResult_PayeePubKeyErrorZ"); - *ret_conv = CResult_PayeePubKeyErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ"); + *ret_conv = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_PayeePubKeyErrorZ_is_ok(uint32_t o) { - LDKCResult_PayeePubKeyErrorZ* o_conv = (LDKCResult_PayeePubKeyErrorZ*)(o & ~1); - jboolean ret_val = CResult_PayeePubKeyErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* o_conv = (LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_PayeePubKeyErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_PayeePubKeyErrorZ _res_conv = *(LDKCResult_PayeePubKeyErrorZ*)(_res_ptr); + LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ _res_conv = *(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_PayeePubKeyErrorZ_free(_res_conv); + CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_PayeePubKeyErrorZ_clone_ptr(LDKCResult_PayeePubKeyErrorZ *NONNULL_PTR arg) { - LDKCResult_PayeePubKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeePubKeyErrorZ), "LDKCResult_PayeePubKeyErrorZ"); - *ret_conv = CResult_PayeePubKeyErrorZ_clone(arg); +static inline uint64_t CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone_ptr(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ"); + *ret_conv = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_PayeePubKeyErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_PayeePubKeyErrorZ* arg_conv = (LDKCResult_PayeePubKeyErrorZ*)(arg & ~1); - int64_t ret_val = CResult_PayeePubKeyErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* arg_conv = (LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PayeePubKeyErrorZ_clone(uint32_t orig) { - LDKCResult_PayeePubKeyErrorZ* orig_conv = (LDKCResult_PayeePubKeyErrorZ*)(orig & ~1); - LDKCResult_PayeePubKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeePubKeyErrorZ), "LDKCResult_PayeePubKeyErrorZ"); - *ret_conv = CResult_PayeePubKeyErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* orig_conv = (LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ*)(orig & ~1); + LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ"); + *ret_conv = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_CVec_PrivateRouteZ_free(uint32_tArray _res) { - LDKCVec_PrivateRouteZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKPrivateRoute), "LDKCVec_PrivateRouteZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t o = 0; o < _res_constr.datalen; o++) { - uint32_t _res_conv_14 = _res_vals[o]; - LDKPrivateRoute _res_conv_14_conv; - _res_conv_14_conv.inner = (void*)(_res_conv_14 & (~1)); - _res_conv_14_conv.is_owned = (_res_conv_14 & 1) || (_res_conv_14 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_14_conv); - _res_constr.data[o] = _res_conv_14_conv; - } - CVec_PrivateRouteZ_free(_res_constr); -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_PositiveTimestampCreationErrorZ_ok(uint32_t o) { - LDKPositiveTimestamp o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_ok(uint32_t o) { + LDKRouteHop o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = PositiveTimestamp_clone(&o_conv); - LDKCResult_PositiveTimestampCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PositiveTimestampCreationErrorZ), "LDKCResult_PositiveTimestampCreationErrorZ"); - *ret_conv = CResult_PositiveTimestampCreationErrorZ_ok(o_conv); + o_conv = RouteHop_clone(&o_conv); + LDKCResult_RouteHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHopDecodeErrorZ), "LDKCResult_RouteHopDecodeErrorZ"); + *ret_conv = CResult_RouteHopDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PositiveTimestampCreationErrorZ_err(uint32_t e) { - LDKCreationError e_conv = LDKCreationError_from_js(e); - LDKCResult_PositiveTimestampCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PositiveTimestampCreationErrorZ), "LDKCResult_PositiveTimestampCreationErrorZ"); - *ret_conv = CResult_PositiveTimestampCreationErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_RouteHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHopDecodeErrorZ), "LDKCResult_RouteHopDecodeErrorZ"); + *ret_conv = CResult_RouteHopDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_PositiveTimestampCreationErrorZ_is_ok(uint32_t o) { - LDKCResult_PositiveTimestampCreationErrorZ* o_conv = (LDKCResult_PositiveTimestampCreationErrorZ*)(o & ~1); - jboolean ret_val = CResult_PositiveTimestampCreationErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_RouteHopDecodeErrorZ* o_conv = (LDKCResult_RouteHopDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_RouteHopDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_PositiveTimestampCreationErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_PositiveTimestampCreationErrorZ _res_conv = *(LDKCResult_PositiveTimestampCreationErrorZ*)(_res_ptr); + LDKCResult_RouteHopDecodeErrorZ _res_conv = *(LDKCResult_RouteHopDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_PositiveTimestampCreationErrorZ_free(_res_conv); + CResult_RouteHopDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_PositiveTimestampCreationErrorZ_clone_ptr(LDKCResult_PositiveTimestampCreationErrorZ *NONNULL_PTR arg) { - LDKCResult_PositiveTimestampCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PositiveTimestampCreationErrorZ), "LDKCResult_PositiveTimestampCreationErrorZ"); - *ret_conv = CResult_PositiveTimestampCreationErrorZ_clone(arg); +static inline uint64_t CResult_RouteHopDecodeErrorZ_clone_ptr(LDKCResult_RouteHopDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_RouteHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHopDecodeErrorZ), "LDKCResult_RouteHopDecodeErrorZ"); + *ret_conv = CResult_RouteHopDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_PositiveTimestampCreationErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_PositiveTimestampCreationErrorZ* arg_conv = (LDKCResult_PositiveTimestampCreationErrorZ*)(arg & ~1); - int64_t ret_val = CResult_PositiveTimestampCreationErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_RouteHopDecodeErrorZ* arg_conv = (LDKCResult_RouteHopDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_RouteHopDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PositiveTimestampCreationErrorZ_clone(uint32_t orig) { - LDKCResult_PositiveTimestampCreationErrorZ* orig_conv = (LDKCResult_PositiveTimestampCreationErrorZ*)(orig & ~1); - LDKCResult_PositiveTimestampCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PositiveTimestampCreationErrorZ), "LDKCResult_PositiveTimestampCreationErrorZ"); - *ret_conv = CResult_PositiveTimestampCreationErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_RouteHopDecodeErrorZ* orig_conv = (LDKCResult_RouteHopDecodeErrorZ*)(orig & ~1); + LDKCResult_RouteHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHopDecodeErrorZ), "LDKCResult_RouteHopDecodeErrorZ"); + *ret_conv = CResult_RouteHopDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneSemanticErrorZ_ok() { - LDKCResult_NoneSemanticErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneSemanticErrorZ), "LDKCResult_NoneSemanticErrorZ"); - *ret_conv = CResult_NoneSemanticErrorZ_ok(); +void __attribute__((visibility("default"))) TS_CVec_RouteHopZ_free(uint32_tArray _res) { + LDKCVec_RouteHopZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t k = 0; k < _res_constr.datalen; k++) { + uint32_t _res_conv_10 = _res_vals[k]; + LDKRouteHop _res_conv_10_conv; + _res_conv_10_conv.inner = (void*)(_res_conv_10 & (~1)); + _res_conv_10_conv.is_owned = (_res_conv_10 & 1) || (_res_conv_10 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_10_conv); + _res_constr.data[k] = _res_conv_10_conv; + } + CVec_RouteHopZ_free(_res_constr); +} + +void __attribute__((visibility("default"))) TS_CVec_CVec_RouteHopZZ_free(ptrArray _res) { + LDKCVec_CVec_RouteHopZZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKCVec_RouteHopZ), "LDKCVec_CVec_RouteHopZZ Elements"); + else + _res_constr.data = NULL; + uint32_tArray* _res_vals = (void*) _res->elems; + for (size_t m = 0; m < _res_constr.datalen; m++) { + uint32_tArray _res_conv_12 = _res_vals[m]; + LDKCVec_RouteHopZ _res_conv_12_constr; + _res_conv_12_constr.datalen = _res_conv_12->arr_len; + if (_res_conv_12_constr.datalen > 0) + _res_conv_12_constr.data = MALLOC(_res_conv_12_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); + else + _res_conv_12_constr.data = NULL; + uint32_t* _res_conv_12_vals = _res_conv_12->elems; + for (size_t k = 0; k < _res_conv_12_constr.datalen; k++) { + uint32_t _res_conv_12_conv_10 = _res_conv_12_vals[k]; + LDKRouteHop _res_conv_12_conv_10_conv; + _res_conv_12_conv_10_conv.inner = (void*)(_res_conv_12_conv_10 & (~1)); + _res_conv_12_conv_10_conv.is_owned = (_res_conv_12_conv_10 & 1) || (_res_conv_12_conv_10 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_12_conv_10_conv); + _res_conv_12_constr.data[k] = _res_conv_12_conv_10_conv; + } + _res_constr.data[m] = _res_conv_12_constr; + } + CVec_CVec_RouteHopZZ_free(_res_constr); +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_ok(uint32_t o) { + LDKRoute o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = Route_clone(&o_conv); + LDKCResult_RouteDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteDecodeErrorZ), "LDKCResult_RouteDecodeErrorZ"); + *ret_conv = CResult_RouteDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneSemanticErrorZ_err(uint32_t e) { - LDKSemanticError e_conv = LDKSemanticError_from_js(e); - LDKCResult_NoneSemanticErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneSemanticErrorZ), "LDKCResult_NoneSemanticErrorZ"); - *ret_conv = CResult_NoneSemanticErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_RouteDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteDecodeErrorZ), "LDKCResult_RouteDecodeErrorZ"); + *ret_conv = CResult_RouteDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_NoneSemanticErrorZ_is_ok(uint32_t o) { - LDKCResult_NoneSemanticErrorZ* o_conv = (LDKCResult_NoneSemanticErrorZ*)(o & ~1); - jboolean ret_val = CResult_NoneSemanticErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_RouteDecodeErrorZ* o_conv = (LDKCResult_RouteDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_RouteDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_NoneSemanticErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_NoneSemanticErrorZ _res_conv = *(LDKCResult_NoneSemanticErrorZ*)(_res_ptr); + LDKCResult_RouteDecodeErrorZ _res_conv = *(LDKCResult_RouteDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_NoneSemanticErrorZ_free(_res_conv); + CResult_RouteDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_NoneSemanticErrorZ_clone_ptr(LDKCResult_NoneSemanticErrorZ *NONNULL_PTR arg) { - LDKCResult_NoneSemanticErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneSemanticErrorZ), "LDKCResult_NoneSemanticErrorZ"); - *ret_conv = CResult_NoneSemanticErrorZ_clone(arg); +static inline uint64_t CResult_RouteDecodeErrorZ_clone_ptr(LDKCResult_RouteDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_RouteDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteDecodeErrorZ), "LDKCResult_RouteDecodeErrorZ"); + *ret_conv = CResult_RouteDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_NoneSemanticErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_NoneSemanticErrorZ* arg_conv = (LDKCResult_NoneSemanticErrorZ*)(arg & ~1); - int64_t ret_val = CResult_NoneSemanticErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_RouteDecodeErrorZ* arg_conv = (LDKCResult_RouteDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_RouteDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneSemanticErrorZ_clone(uint32_t orig) { - LDKCResult_NoneSemanticErrorZ* orig_conv = (LDKCResult_NoneSemanticErrorZ*)(orig & ~1); - LDKCResult_NoneSemanticErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneSemanticErrorZ), "LDKCResult_NoneSemanticErrorZ"); - *ret_conv = CResult_NoneSemanticErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_RouteDecodeErrorZ* orig_conv = (LDKCResult_RouteDecodeErrorZ*)(orig & ~1); + LDKCResult_RouteDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteDecodeErrorZ), "LDKCResult_RouteDecodeErrorZ"); + *ret_conv = CResult_RouteDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceSemanticErrorZ_ok(uint32_t o) { - LDKInvoice o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_ok(uint32_t o) { + LDKRouteParameters o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = Invoice_clone(&o_conv); - LDKCResult_InvoiceSemanticErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceSemanticErrorZ), "LDKCResult_InvoiceSemanticErrorZ"); - *ret_conv = CResult_InvoiceSemanticErrorZ_ok(o_conv); + o_conv = RouteParameters_clone(&o_conv); + LDKCResult_RouteParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteParametersDecodeErrorZ), "LDKCResult_RouteParametersDecodeErrorZ"); + *ret_conv = CResult_RouteParametersDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceSemanticErrorZ_err(uint32_t e) { - LDKSemanticError e_conv = LDKSemanticError_from_js(e); - LDKCResult_InvoiceSemanticErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceSemanticErrorZ), "LDKCResult_InvoiceSemanticErrorZ"); - *ret_conv = CResult_InvoiceSemanticErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_RouteParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteParametersDecodeErrorZ), "LDKCResult_RouteParametersDecodeErrorZ"); + *ret_conv = CResult_RouteParametersDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_InvoiceSemanticErrorZ_is_ok(uint32_t o) { - LDKCResult_InvoiceSemanticErrorZ* o_conv = (LDKCResult_InvoiceSemanticErrorZ*)(o & ~1); - jboolean ret_val = CResult_InvoiceSemanticErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_RouteParametersDecodeErrorZ* o_conv = (LDKCResult_RouteParametersDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_RouteParametersDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_InvoiceSemanticErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_InvoiceSemanticErrorZ _res_conv = *(LDKCResult_InvoiceSemanticErrorZ*)(_res_ptr); + LDKCResult_RouteParametersDecodeErrorZ _res_conv = *(LDKCResult_RouteParametersDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_InvoiceSemanticErrorZ_free(_res_conv); + CResult_RouteParametersDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_InvoiceSemanticErrorZ_clone_ptr(LDKCResult_InvoiceSemanticErrorZ *NONNULL_PTR arg) { - LDKCResult_InvoiceSemanticErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceSemanticErrorZ), "LDKCResult_InvoiceSemanticErrorZ"); - *ret_conv = CResult_InvoiceSemanticErrorZ_clone(arg); +static inline uint64_t CResult_RouteParametersDecodeErrorZ_clone_ptr(LDKCResult_RouteParametersDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_RouteParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteParametersDecodeErrorZ), "LDKCResult_RouteParametersDecodeErrorZ"); + *ret_conv = CResult_RouteParametersDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_InvoiceSemanticErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_InvoiceSemanticErrorZ* arg_conv = (LDKCResult_InvoiceSemanticErrorZ*)(arg & ~1); - int64_t ret_val = CResult_InvoiceSemanticErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_RouteParametersDecodeErrorZ* arg_conv = (LDKCResult_RouteParametersDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_RouteParametersDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceSemanticErrorZ_clone(uint32_t orig) { - LDKCResult_InvoiceSemanticErrorZ* orig_conv = (LDKCResult_InvoiceSemanticErrorZ*)(orig & ~1); - LDKCResult_InvoiceSemanticErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceSemanticErrorZ), "LDKCResult_InvoiceSemanticErrorZ"); - *ret_conv = CResult_InvoiceSemanticErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_RouteParametersDecodeErrorZ* orig_conv = (LDKCResult_RouteParametersDecodeErrorZ*)(orig & ~1); + LDKCResult_RouteParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteParametersDecodeErrorZ), "LDKCResult_RouteParametersDecodeErrorZ"); + *ret_conv = CResult_RouteParametersDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_DescriptionCreationErrorZ_ok(uint32_t o) { - LDKDescription o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = Description_clone(&o_conv); - LDKCResult_DescriptionCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DescriptionCreationErrorZ), "LDKCResult_DescriptionCreationErrorZ"); - *ret_conv = CResult_DescriptionCreationErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_CVec_RouteHintZ_free(uint32_tArray _res) { + LDKCVec_RouteHintZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKRouteHint), "LDKCVec_RouteHintZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t l = 0; l < _res_constr.datalen; l++) { + uint32_t _res_conv_11 = _res_vals[l]; + LDKRouteHint _res_conv_11_conv; + _res_conv_11_conv.inner = (void*)(_res_conv_11 & (~1)); + _res_conv_11_conv.is_owned = (_res_conv_11 & 1) || (_res_conv_11 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_11_conv); + _res_constr.data[l] = _res_conv_11_conv; + } + CVec_RouteHintZ_free(_res_constr); } -uint32_t __attribute__((visibility("default"))) TS_CResult_DescriptionCreationErrorZ_err(uint32_t e) { - LDKCreationError e_conv = LDKCreationError_from_js(e); - LDKCResult_DescriptionCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DescriptionCreationErrorZ), "LDKCResult_DescriptionCreationErrorZ"); - *ret_conv = CResult_DescriptionCreationErrorZ_err(e_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_COption_u64Z_some(int64_t o) { + LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); + *ret_copy = COption_u64Z_some(o); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_CResult_DescriptionCreationErrorZ_is_ok(uint32_t o) { - LDKCResult_DescriptionCreationErrorZ* o_conv = (LDKCResult_DescriptionCreationErrorZ*)(o & ~1); - jboolean ret_val = CResult_DescriptionCreationErrorZ_is_ok(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_COption_u64Z_none() { + LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); + *ret_copy = COption_u64Z_none(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_CResult_DescriptionCreationErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_COption_u64Z_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_DescriptionCreationErrorZ _res_conv = *(LDKCResult_DescriptionCreationErrorZ*)(_res_ptr); + LDKCOption_u64Z _res_conv = *(LDKCOption_u64Z*)(_res_ptr); FREE((void*)_res); - CResult_DescriptionCreationErrorZ_free(_res_conv); + COption_u64Z_free(_res_conv); } -static inline uint64_t CResult_DescriptionCreationErrorZ_clone_ptr(LDKCResult_DescriptionCreationErrorZ *NONNULL_PTR arg) { - LDKCResult_DescriptionCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DescriptionCreationErrorZ), "LDKCResult_DescriptionCreationErrorZ"); - *ret_conv = CResult_DescriptionCreationErrorZ_clone(arg); - return (uint64_t)ret_conv; +static inline uint64_t COption_u64Z_clone_ptr(LDKCOption_u64Z *NONNULL_PTR arg) { + LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); + *ret_copy = COption_u64Z_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_CResult_DescriptionCreationErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_DescriptionCreationErrorZ* arg_conv = (LDKCResult_DescriptionCreationErrorZ*)(arg & ~1); - int64_t ret_val = CResult_DescriptionCreationErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_COption_u64Z_clone_ptr(uint32_t arg) { + LDKCOption_u64Z* arg_conv = (LDKCOption_u64Z*)arg; + int64_t ret_val = COption_u64Z_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_DescriptionCreationErrorZ_clone(uint32_t orig) { - LDKCResult_DescriptionCreationErrorZ* orig_conv = (LDKCResult_DescriptionCreationErrorZ*)(orig & ~1); - LDKCResult_DescriptionCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DescriptionCreationErrorZ), "LDKCResult_DescriptionCreationErrorZ"); - *ret_conv = CResult_DescriptionCreationErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_COption_u64Z_clone(uint32_t orig) { + LDKCOption_u64Z* orig_conv = (LDKCOption_u64Z*)orig; + LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); + *ret_copy = COption_u64Z_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ExpiryTimeCreationErrorZ_ok(uint32_t o) { - LDKExpiryTime o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_ok(uint32_t o) { + LDKPayee o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ExpiryTime_clone(&o_conv); - LDKCResult_ExpiryTimeCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ExpiryTimeCreationErrorZ), "LDKCResult_ExpiryTimeCreationErrorZ"); - *ret_conv = CResult_ExpiryTimeCreationErrorZ_ok(o_conv); + o_conv = Payee_clone(&o_conv); + LDKCResult_PayeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeeDecodeErrorZ), "LDKCResult_PayeeDecodeErrorZ"); + *ret_conv = CResult_PayeeDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ExpiryTimeCreationErrorZ_err(uint32_t e) { - LDKCreationError e_conv = LDKCreationError_from_js(e); - LDKCResult_ExpiryTimeCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ExpiryTimeCreationErrorZ), "LDKCResult_ExpiryTimeCreationErrorZ"); - *ret_conv = CResult_ExpiryTimeCreationErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_PayeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeeDecodeErrorZ), "LDKCResult_PayeeDecodeErrorZ"); + *ret_conv = CResult_PayeeDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_ExpiryTimeCreationErrorZ_is_ok(uint32_t o) { - LDKCResult_ExpiryTimeCreationErrorZ* o_conv = (LDKCResult_ExpiryTimeCreationErrorZ*)(o & ~1); - jboolean ret_val = CResult_ExpiryTimeCreationErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_PayeeDecodeErrorZ* o_conv = (LDKCResult_PayeeDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_PayeeDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_ExpiryTimeCreationErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_ExpiryTimeCreationErrorZ _res_conv = *(LDKCResult_ExpiryTimeCreationErrorZ*)(_res_ptr); + LDKCResult_PayeeDecodeErrorZ _res_conv = *(LDKCResult_PayeeDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_ExpiryTimeCreationErrorZ_free(_res_conv); + CResult_PayeeDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_ExpiryTimeCreationErrorZ_clone_ptr(LDKCResult_ExpiryTimeCreationErrorZ *NONNULL_PTR arg) { - LDKCResult_ExpiryTimeCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ExpiryTimeCreationErrorZ), "LDKCResult_ExpiryTimeCreationErrorZ"); - *ret_conv = CResult_ExpiryTimeCreationErrorZ_clone(arg); +static inline uint64_t CResult_PayeeDecodeErrorZ_clone_ptr(LDKCResult_PayeeDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_PayeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeeDecodeErrorZ), "LDKCResult_PayeeDecodeErrorZ"); + *ret_conv = CResult_PayeeDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_ExpiryTimeCreationErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ExpiryTimeCreationErrorZ* arg_conv = (LDKCResult_ExpiryTimeCreationErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ExpiryTimeCreationErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_PayeeDecodeErrorZ* arg_conv = (LDKCResult_PayeeDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_PayeeDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ExpiryTimeCreationErrorZ_clone(uint32_t orig) { - LDKCResult_ExpiryTimeCreationErrorZ* orig_conv = (LDKCResult_ExpiryTimeCreationErrorZ*)(orig & ~1); - LDKCResult_ExpiryTimeCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ExpiryTimeCreationErrorZ), "LDKCResult_ExpiryTimeCreationErrorZ"); - *ret_conv = CResult_ExpiryTimeCreationErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_PayeeDecodeErrorZ* orig_conv = (LDKCResult_PayeeDecodeErrorZ*)(orig & ~1); + LDKCResult_PayeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeeDecodeErrorZ), "LDKCResult_PayeeDecodeErrorZ"); + *ret_conv = CResult_PayeeDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PrivateRouteCreationErrorZ_ok(uint32_t o) { - LDKPrivateRoute o_conv; +void __attribute__((visibility("default"))) TS_CVec_RouteHintHopZ_free(uint32_tArray _res) { + LDKCVec_RouteHintHopZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKRouteHintHop), "LDKCVec_RouteHintHopZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t o = 0; o < _res_constr.datalen; o++) { + uint32_t _res_conv_14 = _res_vals[o]; + LDKRouteHintHop _res_conv_14_conv; + _res_conv_14_conv.inner = (void*)(_res_conv_14 & (~1)); + _res_conv_14_conv.is_owned = (_res_conv_14 & 1) || (_res_conv_14 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_14_conv); + _res_constr.data[o] = _res_conv_14_conv; + } + CVec_RouteHintHopZ_free(_res_constr); +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_ok(uint32_t o) { + LDKRouteHint o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = PrivateRoute_clone(&o_conv); - LDKCResult_PrivateRouteCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PrivateRouteCreationErrorZ), "LDKCResult_PrivateRouteCreationErrorZ"); - *ret_conv = CResult_PrivateRouteCreationErrorZ_ok(o_conv); + o_conv = RouteHint_clone(&o_conv); + LDKCResult_RouteHintDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintDecodeErrorZ), "LDKCResult_RouteHintDecodeErrorZ"); + *ret_conv = CResult_RouteHintDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PrivateRouteCreationErrorZ_err(uint32_t e) { - LDKCreationError e_conv = LDKCreationError_from_js(e); - LDKCResult_PrivateRouteCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PrivateRouteCreationErrorZ), "LDKCResult_PrivateRouteCreationErrorZ"); - *ret_conv = CResult_PrivateRouteCreationErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_RouteHintDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintDecodeErrorZ), "LDKCResult_RouteHintDecodeErrorZ"); + *ret_conv = CResult_RouteHintDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_PrivateRouteCreationErrorZ_is_ok(uint32_t o) { - LDKCResult_PrivateRouteCreationErrorZ* o_conv = (LDKCResult_PrivateRouteCreationErrorZ*)(o & ~1); - jboolean ret_val = CResult_PrivateRouteCreationErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_RouteHintDecodeErrorZ* o_conv = (LDKCResult_RouteHintDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_RouteHintDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_PrivateRouteCreationErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_PrivateRouteCreationErrorZ _res_conv = *(LDKCResult_PrivateRouteCreationErrorZ*)(_res_ptr); + LDKCResult_RouteHintDecodeErrorZ _res_conv = *(LDKCResult_RouteHintDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_PrivateRouteCreationErrorZ_free(_res_conv); + CResult_RouteHintDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_PrivateRouteCreationErrorZ_clone_ptr(LDKCResult_PrivateRouteCreationErrorZ *NONNULL_PTR arg) { - LDKCResult_PrivateRouteCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PrivateRouteCreationErrorZ), "LDKCResult_PrivateRouteCreationErrorZ"); - *ret_conv = CResult_PrivateRouteCreationErrorZ_clone(arg); +static inline uint64_t CResult_RouteHintDecodeErrorZ_clone_ptr(LDKCResult_RouteHintDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_RouteHintDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintDecodeErrorZ), "LDKCResult_RouteHintDecodeErrorZ"); + *ret_conv = CResult_RouteHintDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_PrivateRouteCreationErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_PrivateRouteCreationErrorZ* arg_conv = (LDKCResult_PrivateRouteCreationErrorZ*)(arg & ~1); - int64_t ret_val = CResult_PrivateRouteCreationErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_RouteHintDecodeErrorZ* arg_conv = (LDKCResult_RouteHintDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_RouteHintDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PrivateRouteCreationErrorZ_clone(uint32_t orig) { - LDKCResult_PrivateRouteCreationErrorZ* orig_conv = (LDKCResult_PrivateRouteCreationErrorZ*)(orig & ~1); - LDKCResult_PrivateRouteCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PrivateRouteCreationErrorZ), "LDKCResult_PrivateRouteCreationErrorZ"); - *ret_conv = CResult_PrivateRouteCreationErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_StringErrorZ_ok(jstring o) { - LDKStr o_conv = str_ref_to_owned_c(o); - LDKCResult_StringErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StringErrorZ), "LDKCResult_StringErrorZ"); - *ret_conv = CResult_StringErrorZ_ok(o_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_StringErrorZ_err(uint32_t e) { - LDKSecp256k1Error e_conv = LDKSecp256k1Error_from_js(e); - LDKCResult_StringErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StringErrorZ), "LDKCResult_StringErrorZ"); - *ret_conv = CResult_StringErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_RouteHintDecodeErrorZ* orig_conv = (LDKCResult_RouteHintDecodeErrorZ*)(orig & ~1); + LDKCResult_RouteHintDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintDecodeErrorZ), "LDKCResult_RouteHintDecodeErrorZ"); + *ret_conv = CResult_RouteHintDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_StringErrorZ_is_ok(uint32_t o) { - LDKCResult_StringErrorZ* o_conv = (LDKCResult_StringErrorZ*)(o & ~1); - jboolean ret_val = CResult_StringErrorZ_is_ok(o_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_CResult_StringErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_StringErrorZ _res_conv = *(LDKCResult_StringErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_StringErrorZ_free(_res_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_ok(uint32_t o) { - LDKChannelMonitorUpdate o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_ok(uint32_t o) { + LDKRouteHintHop o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ChannelMonitorUpdate_clone(&o_conv); - LDKCResult_ChannelMonitorUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelMonitorUpdateDecodeErrorZ), "LDKCResult_ChannelMonitorUpdateDecodeErrorZ"); - *ret_conv = CResult_ChannelMonitorUpdateDecodeErrorZ_ok(o_conv); + o_conv = RouteHintHop_clone(&o_conv); + LDKCResult_RouteHintHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintHopDecodeErrorZ), "LDKCResult_RouteHintHopDecodeErrorZ"); + *ret_conv = CResult_RouteHintHopDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_ChannelMonitorUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelMonitorUpdateDecodeErrorZ), "LDKCResult_ChannelMonitorUpdateDecodeErrorZ"); - *ret_conv = CResult_ChannelMonitorUpdateDecodeErrorZ_err(e_conv); + LDKCResult_RouteHintHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintHopDecodeErrorZ), "LDKCResult_RouteHintHopDecodeErrorZ"); + *ret_conv = CResult_RouteHintHopDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ChannelMonitorUpdateDecodeErrorZ* o_conv = (LDKCResult_ChannelMonitorUpdateDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ChannelMonitorUpdateDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_RouteHintHopDecodeErrorZ* o_conv = (LDKCResult_RouteHintHopDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_RouteHintHopDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_ChannelMonitorUpdateDecodeErrorZ _res_conv = *(LDKCResult_ChannelMonitorUpdateDecodeErrorZ*)(_res_ptr); + LDKCResult_RouteHintHopDecodeErrorZ _res_conv = *(LDKCResult_RouteHintHopDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_ChannelMonitorUpdateDecodeErrorZ_free(_res_conv); + CResult_RouteHintHopDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_ChannelMonitorUpdateDecodeErrorZ_clone_ptr(LDKCResult_ChannelMonitorUpdateDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ChannelMonitorUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelMonitorUpdateDecodeErrorZ), "LDKCResult_ChannelMonitorUpdateDecodeErrorZ"); - *ret_conv = CResult_ChannelMonitorUpdateDecodeErrorZ_clone(arg); +static inline uint64_t CResult_RouteHintHopDecodeErrorZ_clone_ptr(LDKCResult_RouteHintHopDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_RouteHintHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintHopDecodeErrorZ), "LDKCResult_RouteHintHopDecodeErrorZ"); + *ret_conv = CResult_RouteHintHopDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ChannelMonitorUpdateDecodeErrorZ* arg_conv = (LDKCResult_ChannelMonitorUpdateDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ChannelMonitorUpdateDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_RouteHintHopDecodeErrorZ* arg_conv = (LDKCResult_RouteHintHopDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_RouteHintHopDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ChannelMonitorUpdateDecodeErrorZ* orig_conv = (LDKCResult_ChannelMonitorUpdateDecodeErrorZ*)(orig & ~1); - LDKCResult_ChannelMonitorUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelMonitorUpdateDecodeErrorZ), "LDKCResult_ChannelMonitorUpdateDecodeErrorZ"); - *ret_conv = CResult_ChannelMonitorUpdateDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_RouteHintHopDecodeErrorZ* orig_conv = (LDKCResult_RouteHintHopDecodeErrorZ*)(orig & ~1); + LDKCResult_RouteHintHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintHopDecodeErrorZ), "LDKCResult_RouteHintHopDecodeErrorZ"); + *ret_conv = CResult_RouteHintHopDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_COption_MonitorEventZ_some(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKMonitorEvent o_conv = *(LDKMonitorEvent*)(o_ptr); - o_conv = MonitorEvent_clone((LDKMonitorEvent*)(((uint64_t)o) & ~1)); - LDKCOption_MonitorEventZ *ret_copy = MALLOC(sizeof(LDKCOption_MonitorEventZ), "LDKCOption_MonitorEventZ"); - *ret_copy = COption_MonitorEventZ_some(o_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_COption_MonitorEventZ_none() { - LDKCOption_MonitorEventZ *ret_copy = MALLOC(sizeof(LDKCOption_MonitorEventZ), "LDKCOption_MonitorEventZ"); - *ret_copy = COption_MonitorEventZ_none(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -void __attribute__((visibility("default"))) TS_COption_MonitorEventZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCOption_MonitorEventZ _res_conv = *(LDKCOption_MonitorEventZ*)(_res_ptr); - FREE((void*)_res); - COption_MonitorEventZ_free(_res_conv); -} - -static inline uint64_t COption_MonitorEventZ_clone_ptr(LDKCOption_MonitorEventZ *NONNULL_PTR arg) { - LDKCOption_MonitorEventZ *ret_copy = MALLOC(sizeof(LDKCOption_MonitorEventZ), "LDKCOption_MonitorEventZ"); - *ret_copy = COption_MonitorEventZ_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_COption_MonitorEventZ_clone_ptr(uint32_t arg) { - LDKCOption_MonitorEventZ* arg_conv = (LDKCOption_MonitorEventZ*)arg; - int64_t ret_val = COption_MonitorEventZ_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_COption_MonitorEventZ_clone(uint32_t orig) { - LDKCOption_MonitorEventZ* orig_conv = (LDKCOption_MonitorEventZ*)orig; - LDKCOption_MonitorEventZ *ret_copy = MALLOC(sizeof(LDKCOption_MonitorEventZ), "LDKCOption_MonitorEventZ"); - *ret_copy = COption_MonitorEventZ_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_CVec_ChannelDetailsZ_free(uint32_tArray _res) { + LDKCVec_ChannelDetailsZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKChannelDetails), "LDKCVec_ChannelDetailsZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t q = 0; q < _res_constr.datalen; q++) { + uint32_t _res_conv_16 = _res_vals[q]; + LDKChannelDetails _res_conv_16_conv; + _res_conv_16_conv.inner = (void*)(_res_conv_16 & (~1)); + _res_conv_16_conv.is_owned = (_res_conv_16 & 1) || (_res_conv_16 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_16_conv); + _res_constr.data[q] = _res_conv_16_conv; + } + CVec_ChannelDetailsZ_free(_res_constr); } -uint32_t __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_ok(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKCOption_MonitorEventZ o_conv = *(LDKCOption_MonitorEventZ*)(o_ptr); - o_conv = COption_MonitorEventZ_clone((LDKCOption_MonitorEventZ*)(((uint64_t)o) & ~1)); - LDKCResult_COption_MonitorEventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_MonitorEventZDecodeErrorZ), "LDKCResult_COption_MonitorEventZDecodeErrorZ"); - *ret_conv = CResult_COption_MonitorEventZDecodeErrorZ_ok(o_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_ok(uint32_t o) { + LDKRoute o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = Route_clone(&o_conv); + LDKCResult_RouteLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteLightningErrorZ), "LDKCResult_RouteLightningErrorZ"); + *ret_conv = CResult_RouteLightningErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_err(uint32_t e) { + LDKLightningError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_COption_MonitorEventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_MonitorEventZDecodeErrorZ), "LDKCResult_COption_MonitorEventZDecodeErrorZ"); - *ret_conv = CResult_COption_MonitorEventZDecodeErrorZ_err(e_conv); + e_conv = LightningError_clone(&e_conv); + LDKCResult_RouteLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteLightningErrorZ), "LDKCResult_RouteLightningErrorZ"); + *ret_conv = CResult_RouteLightningErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_COption_MonitorEventZDecodeErrorZ* o_conv = (LDKCResult_COption_MonitorEventZDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_COption_MonitorEventZDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_is_ok(uint32_t o) { + LDKCResult_RouteLightningErrorZ* o_conv = (LDKCResult_RouteLightningErrorZ*)(o & ~1); + jboolean ret_val = CResult_RouteLightningErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_COption_MonitorEventZDecodeErrorZ _res_conv = *(LDKCResult_COption_MonitorEventZDecodeErrorZ*)(_res_ptr); + LDKCResult_RouteLightningErrorZ _res_conv = *(LDKCResult_RouteLightningErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_COption_MonitorEventZDecodeErrorZ_free(_res_conv); + CResult_RouteLightningErrorZ_free(_res_conv); } -static inline uint64_t CResult_COption_MonitorEventZDecodeErrorZ_clone_ptr(LDKCResult_COption_MonitorEventZDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_COption_MonitorEventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_MonitorEventZDecodeErrorZ), "LDKCResult_COption_MonitorEventZDecodeErrorZ"); - *ret_conv = CResult_COption_MonitorEventZDecodeErrorZ_clone(arg); +static inline uint64_t CResult_RouteLightningErrorZ_clone_ptr(LDKCResult_RouteLightningErrorZ *NONNULL_PTR arg) { + LDKCResult_RouteLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteLightningErrorZ), "LDKCResult_RouteLightningErrorZ"); + *ret_conv = CResult_RouteLightningErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_COption_MonitorEventZDecodeErrorZ* arg_conv = (LDKCResult_COption_MonitorEventZDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_COption_MonitorEventZDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_RouteLightningErrorZ* arg_conv = (LDKCResult_RouteLightningErrorZ*)(arg & ~1); + int64_t ret_val = CResult_RouteLightningErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_COption_MonitorEventZDecodeErrorZ* orig_conv = (LDKCResult_COption_MonitorEventZDecodeErrorZ*)(orig & ~1); - LDKCResult_COption_MonitorEventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_MonitorEventZDecodeErrorZ), "LDKCResult_COption_MonitorEventZDecodeErrorZ"); - *ret_conv = CResult_COption_MonitorEventZDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_clone(uint32_t orig) { + LDKCResult_RouteLightningErrorZ* orig_conv = (LDKCResult_RouteLightningErrorZ*)(orig & ~1); + LDKCResult_RouteLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteLightningErrorZ), "LDKCResult_RouteLightningErrorZ"); + *ret_conv = CResult_RouteLightningErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_ok(uint32_t o) { - LDKHTLCUpdate o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = HTLCUpdate_clone(&o_conv); - LDKCResult_HTLCUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCUpdateDecodeErrorZ), "LDKCResult_HTLCUpdateDecodeErrorZ"); - *ret_conv = CResult_HTLCUpdateDecodeErrorZ_ok(o_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_ok() { + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = CResult_NoneLightningErrorZ_ok(); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_err(uint32_t e) { + LDKLightningError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_HTLCUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCUpdateDecodeErrorZ), "LDKCResult_HTLCUpdateDecodeErrorZ"); - *ret_conv = CResult_HTLCUpdateDecodeErrorZ_err(e_conv); + e_conv = LightningError_clone(&e_conv); + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = CResult_NoneLightningErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_HTLCUpdateDecodeErrorZ* o_conv = (LDKCResult_HTLCUpdateDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_HTLCUpdateDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_is_ok(uint32_t o) { + LDKCResult_NoneLightningErrorZ* o_conv = (LDKCResult_NoneLightningErrorZ*)(o & ~1); + jboolean ret_val = CResult_NoneLightningErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_HTLCUpdateDecodeErrorZ _res_conv = *(LDKCResult_HTLCUpdateDecodeErrorZ*)(_res_ptr); + LDKCResult_NoneLightningErrorZ _res_conv = *(LDKCResult_NoneLightningErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_HTLCUpdateDecodeErrorZ_free(_res_conv); + CResult_NoneLightningErrorZ_free(_res_conv); } -static inline uint64_t CResult_HTLCUpdateDecodeErrorZ_clone_ptr(LDKCResult_HTLCUpdateDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_HTLCUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCUpdateDecodeErrorZ), "LDKCResult_HTLCUpdateDecodeErrorZ"); - *ret_conv = CResult_HTLCUpdateDecodeErrorZ_clone(arg); +static inline uint64_t CResult_NoneLightningErrorZ_clone_ptr(LDKCResult_NoneLightningErrorZ *NONNULL_PTR arg) { + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = CResult_NoneLightningErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_HTLCUpdateDecodeErrorZ* arg_conv = (LDKCResult_HTLCUpdateDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_HTLCUpdateDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_NoneLightningErrorZ* arg_conv = (LDKCResult_NoneLightningErrorZ*)(arg & ~1); + int64_t ret_val = CResult_NoneLightningErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_HTLCUpdateDecodeErrorZ* orig_conv = (LDKCResult_HTLCUpdateDecodeErrorZ*)(orig & ~1); - LDKCResult_HTLCUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCUpdateDecodeErrorZ), "LDKCResult_HTLCUpdateDecodeErrorZ"); - *ret_conv = CResult_HTLCUpdateDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_clone(uint32_t orig) { + LDKCResult_NoneLightningErrorZ* orig_conv = (LDKCResult_NoneLightningErrorZ*)(orig & ~1); + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = CResult_NoneLightningErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -static inline uint64_t C2Tuple_OutPointScriptZ_clone_ptr(LDKC2Tuple_OutPointScriptZ *NONNULL_PTR arg) { - LDKC2Tuple_OutPointScriptZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_OutPointScriptZ), "LDKC2Tuple_OutPointScriptZ"); - *ret_conv = C2Tuple_OutPointScriptZ_clone(arg); +static inline uint64_t C2Tuple_PublicKeyTypeZ_clone_ptr(LDKC2Tuple_PublicKeyTypeZ *NONNULL_PTR arg) { + LDKC2Tuple_PublicKeyTypeZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyTypeZ), "LDKC2Tuple_PublicKeyTypeZ"); + *ret_conv = C2Tuple_PublicKeyTypeZ_clone(arg); return ((uint64_t)ret_conv); } -int64_t __attribute__((visibility("default"))) TS_C2Tuple_OutPointScriptZ_clone_ptr(uint32_t arg) { - LDKC2Tuple_OutPointScriptZ* arg_conv = (LDKC2Tuple_OutPointScriptZ*)(arg & ~1); - int64_t ret_val = C2Tuple_OutPointScriptZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_C2Tuple_PublicKeyTypeZ_clone_ptr(uint32_t arg) { + LDKC2Tuple_PublicKeyTypeZ* arg_conv = (LDKC2Tuple_PublicKeyTypeZ*)(arg & ~1); + int64_t ret_val = C2Tuple_PublicKeyTypeZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_OutPointScriptZ_clone(uint32_t orig) { - LDKC2Tuple_OutPointScriptZ* orig_conv = (LDKC2Tuple_OutPointScriptZ*)(orig & ~1); - LDKC2Tuple_OutPointScriptZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_OutPointScriptZ), "LDKC2Tuple_OutPointScriptZ"); - *ret_conv = C2Tuple_OutPointScriptZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PublicKeyTypeZ_clone(uint32_t orig) { + LDKC2Tuple_PublicKeyTypeZ* orig_conv = (LDKC2Tuple_PublicKeyTypeZ*)(orig & ~1); + LDKC2Tuple_PublicKeyTypeZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyTypeZ), "LDKC2Tuple_PublicKeyTypeZ"); + *ret_conv = C2Tuple_PublicKeyTypeZ_clone(orig_conv); return ((uint64_t)ret_conv); } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_OutPointScriptZ_new(uint32_t a, int8_tArray b) { - LDKOutPoint a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = (a & 1) || (a == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - a_conv = OutPoint_clone(&a_conv); - LDKCVec_u8Z b_ref; - b_ref.datalen = *((uint32_t*)b); - b_ref.data = MALLOC(b_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(b_ref.data, (uint8_t*)(b + 4), b_ref.datalen); - LDKC2Tuple_OutPointScriptZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_OutPointScriptZ), "LDKC2Tuple_OutPointScriptZ"); - *ret_conv = C2Tuple_OutPointScriptZ_new(a_conv, b_ref); +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PublicKeyTypeZ_new(int8_tArray a, uint32_t b) { + LDKPublicKey a_ref; + CHECK(a->arr_len == 33); + memcpy(a_ref.compressed_form, a->elems, 33); + void* b_ptr = (void*)(((uint64_t)b) & ~1); + CHECK_ACCESS(b_ptr); + LDKType b_conv = *(LDKType*)(b_ptr); + LDKC2Tuple_PublicKeyTypeZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyTypeZ), "LDKC2Tuple_PublicKeyTypeZ"); + *ret_conv = C2Tuple_PublicKeyTypeZ_new(a_ref, b_conv); return ((uint64_t)ret_conv); } -void __attribute__((visibility("default"))) TS_C2Tuple_OutPointScriptZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_C2Tuple_PublicKeyTypeZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKC2Tuple_OutPointScriptZ _res_conv = *(LDKC2Tuple_OutPointScriptZ*)(_res_ptr); + LDKC2Tuple_PublicKeyTypeZ _res_conv = *(LDKC2Tuple_PublicKeyTypeZ*)(_res_ptr); FREE((void*)_res); - C2Tuple_OutPointScriptZ_free(_res_conv); + C2Tuple_PublicKeyTypeZ_free(_res_conv); } -static inline uint64_t C2Tuple_u32ScriptZ_clone_ptr(LDKC2Tuple_u32ScriptZ *NONNULL_PTR arg) { - LDKC2Tuple_u32ScriptZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_u32ScriptZ), "LDKC2Tuple_u32ScriptZ"); - *ret_conv = C2Tuple_u32ScriptZ_clone(arg); - return ((uint64_t)ret_conv); +void __attribute__((visibility("default"))) TS_CVec_C2Tuple_PublicKeyTypeZZ_free(uint32_tArray _res) { + LDKCVec_C2Tuple_PublicKeyTypeZZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_PublicKeyTypeZ), "LDKCVec_C2Tuple_PublicKeyTypeZZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t z = 0; z < _res_constr.datalen; z++) { + uint32_t _res_conv_25 = _res_vals[z]; + void* _res_conv_25_ptr = (void*)(((uint64_t)_res_conv_25) & ~1); + CHECK_ACCESS(_res_conv_25_ptr); + LDKC2Tuple_PublicKeyTypeZ _res_conv_25_conv = *(LDKC2Tuple_PublicKeyTypeZ*)(_res_conv_25_ptr); + FREE((void*)_res_conv_25); + _res_constr.data[z] = _res_conv_25_conv; + } + CVec_C2Tuple_PublicKeyTypeZZ_free(_res_constr); } -int64_t __attribute__((visibility("default"))) TS_C2Tuple_u32ScriptZ_clone_ptr(uint32_t arg) { - LDKC2Tuple_u32ScriptZ* arg_conv = (LDKC2Tuple_u32ScriptZ*)(arg & ~1); - int64_t ret_val = C2Tuple_u32ScriptZ_clone_ptr(arg_conv); - return ret_val; + +void __attribute__((visibility("default"))) TS_CVec_MessageSendEventZ_free(uint32_tArray _res) { + LDKCVec_MessageSendEventZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKMessageSendEvent), "LDKCVec_MessageSendEventZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t s = 0; s < _res_constr.datalen; s++) { + uint32_t _res_conv_18 = _res_vals[s]; + void* _res_conv_18_ptr = (void*)(((uint64_t)_res_conv_18) & ~1); + CHECK_ACCESS(_res_conv_18_ptr); + LDKMessageSendEvent _res_conv_18_conv = *(LDKMessageSendEvent*)(_res_conv_18_ptr); + FREE((void*)_res_conv_18); + _res_constr.data[s] = _res_conv_18_conv; + } + CVec_MessageSendEventZ_free(_res_constr); } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_u32ScriptZ_clone(uint32_t orig) { - LDKC2Tuple_u32ScriptZ* orig_conv = (LDKC2Tuple_u32ScriptZ*)(orig & ~1); - LDKC2Tuple_u32ScriptZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_u32ScriptZ), "LDKC2Tuple_u32ScriptZ"); - *ret_conv = C2Tuple_u32ScriptZ_clone(orig_conv); - return ((uint64_t)ret_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_ok(jboolean o) { + LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); + *ret_conv = CResult_boolLightningErrorZ_ok(o); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_u32ScriptZ_new(int32_t a, int8_tArray b) { - LDKCVec_u8Z b_ref; - b_ref.datalen = *((uint32_t*)b); - b_ref.data = MALLOC(b_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(b_ref.data, (uint8_t*)(b + 4), b_ref.datalen); - LDKC2Tuple_u32ScriptZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_u32ScriptZ), "LDKC2Tuple_u32ScriptZ"); - *ret_conv = C2Tuple_u32ScriptZ_new(a, b_ref); - return ((uint64_t)ret_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_err(uint32_t e) { + LDKLightningError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = LightningError_clone(&e_conv); + LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); + *ret_conv = CResult_boolLightningErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_C2Tuple_u32ScriptZ_free(uint32_t _res) { +jboolean __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_is_ok(uint32_t o) { + LDKCResult_boolLightningErrorZ* o_conv = (LDKCResult_boolLightningErrorZ*)(o & ~1); + jboolean ret_val = CResult_boolLightningErrorZ_is_ok(o_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKC2Tuple_u32ScriptZ _res_conv = *(LDKC2Tuple_u32ScriptZ*)(_res_ptr); + LDKCResult_boolLightningErrorZ _res_conv = *(LDKCResult_boolLightningErrorZ*)(_res_ptr); FREE((void*)_res); - C2Tuple_u32ScriptZ_free(_res_conv); + CResult_boolLightningErrorZ_free(_res_conv); } -void __attribute__((visibility("default"))) TS_CVec_C2Tuple_u32ScriptZZ_free(uint32_tArray _res) { - LDKCVec_C2Tuple_u32ScriptZZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_u32ScriptZ), "LDKCVec_C2Tuple_u32ScriptZZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t v = 0; v < _res_constr.datalen; v++) { - uint32_t _res_conv_21 = _res_vals[v]; - void* _res_conv_21_ptr = (void*)(((uint64_t)_res_conv_21) & ~1); - CHECK_ACCESS(_res_conv_21_ptr); - LDKC2Tuple_u32ScriptZ _res_conv_21_conv = *(LDKC2Tuple_u32ScriptZ*)(_res_conv_21_ptr); - FREE((void*)_res_conv_21); - _res_constr.data[v] = _res_conv_21_conv; - } - CVec_C2Tuple_u32ScriptZZ_free(_res_constr); +static inline uint64_t CResult_boolLightningErrorZ_clone_ptr(LDKCResult_boolLightningErrorZ *NONNULL_PTR arg) { + LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); + *ret_conv = CResult_boolLightningErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_boolLightningErrorZ* arg_conv = (LDKCResult_boolLightningErrorZ*)(arg & ~1); + int64_t ret_val = CResult_boolLightningErrorZ_clone_ptr(arg_conv); + return ret_val; } -static inline uint64_t C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone_ptr(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ *NONNULL_PTR arg) { - LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ"); - *ret_conv = C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone(arg); +uint32_t __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_clone(uint32_t orig) { + LDKCResult_boolLightningErrorZ* orig_conv = (LDKCResult_boolLightningErrorZ*)(orig & ~1); + LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); + *ret_conv = CResult_boolLightningErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; +} + +static inline uint64_t C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone_ptr(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ *NONNULL_PTR arg) { + LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ), "LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ"); + *ret_conv = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone(arg); return ((uint64_t)ret_conv); } -int64_t __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone_ptr(uint32_t arg) { - LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* arg_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ*)(arg & ~1); - int64_t ret_val = C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone_ptr(uint32_t arg) { + LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* arg_conv = (LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(arg & ~1); + int64_t ret_val = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone(uint32_t orig) { - LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* orig_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ*)(orig & ~1); - LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ"); - *ret_conv = C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone(uint32_t orig) { + LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* orig_conv = (LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(orig & ~1); + LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ), "LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ"); + *ret_conv = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone(orig_conv); return ((uint64_t)ret_conv); } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_new(int8_tArray a, uint32_tArray b) { - LDKThirtyTwoBytes a_ref; - CHECK(*((uint32_t*)a) == 32); - memcpy(a_ref.data, (uint8_t*)(a + 4), 32); - LDKCVec_C2Tuple_u32ScriptZZ b_constr; - b_constr.datalen = *((uint32_t*)b); - if (b_constr.datalen > 0) - b_constr.data = MALLOC(b_constr.datalen * sizeof(LDKC2Tuple_u32ScriptZ), "LDKCVec_C2Tuple_u32ScriptZZ Elements"); - else - b_constr.data = NULL; - uint32_t* b_vals = (uint32_t*)(b + 4); - for (size_t v = 0; v < b_constr.datalen; v++) { - uint32_t b_conv_21 = b_vals[v]; - void* b_conv_21_ptr = (void*)(((uint64_t)b_conv_21) & ~1); - CHECK_ACCESS(b_conv_21_ptr); - LDKC2Tuple_u32ScriptZ b_conv_21_conv = *(LDKC2Tuple_u32ScriptZ*)(b_conv_21_ptr); - b_conv_21_conv = C2Tuple_u32ScriptZ_clone((LDKC2Tuple_u32ScriptZ*)(((uint64_t)b_conv_21) & ~1)); - b_constr.data[v] = b_conv_21_conv; - } - LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ"); - *ret_conv = C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_new(a_ref, b_constr); +uint32_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_new(uint32_t a, uint32_t b, uint32_t c) { + LDKChannelAnnouncement a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = (a & 1) || (a == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + a_conv = ChannelAnnouncement_clone(&a_conv); + LDKChannelUpdate b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = (b & 1) || (b == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + b_conv = ChannelUpdate_clone(&b_conv); + LDKChannelUpdate c_conv; + c_conv.inner = (void*)(c & (~1)); + c_conv.is_owned = (c & 1) || (c == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(c_conv); + c_conv = ChannelUpdate_clone(&c_conv); + LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ), "LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ"); + *ret_conv = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_new(a_conv, b_conv, c_conv); return ((uint64_t)ret_conv); } -void __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ _res_conv = *(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ*)(_res_ptr); + LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ _res_conv = *(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(_res_ptr); FREE((void*)_res); - C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_free(_res_conv); + C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_free(_res_conv); } -void __attribute__((visibility("default"))) TS_CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ_free(uint32_tArray _res) { - LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); +void __attribute__((visibility("default"))) TS_CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_free(uint32_tArray _res) { + LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ _res_constr; + _res_constr.datalen = _res->arr_len; if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ), "LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ Elements"); + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ), "LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ Elements"); else _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t o = 0; o < _res_constr.datalen; o++) { - uint32_t _res_conv_40 = _res_vals[o]; - void* _res_conv_40_ptr = (void*)(((uint64_t)_res_conv_40) & ~1); - CHECK_ACCESS(_res_conv_40_ptr); - LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ _res_conv_40_conv = *(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ*)(_res_conv_40_ptr); - FREE((void*)_res_conv_40); - _res_constr.data[o] = _res_conv_40_conv; + uint32_t* _res_vals = _res->elems; + for (size_t h = 0; h < _res_constr.datalen; h++) { + uint32_t _res_conv_59 = _res_vals[h]; + void* _res_conv_59_ptr = (void*)(((uint64_t)_res_conv_59) & ~1); + CHECK_ACCESS(_res_conv_59_ptr); + LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ _res_conv_59_conv = *(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(_res_conv_59_ptr); + FREE((void*)_res_conv_59); + _res_constr.data[h] = _res_conv_59_conv; } - CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ_free(_res_constr); + CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_free(_res_constr); } -void __attribute__((visibility("default"))) TS_CVec_EventZ_free(uint32_tArray _res) { - LDKCVec_EventZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); +void __attribute__((visibility("default"))) TS_CVec_NodeAnnouncementZ_free(uint32_tArray _res) { + LDKCVec_NodeAnnouncementZ _res_constr; + _res_constr.datalen = _res->arr_len; if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKEvent), "LDKCVec_EventZ Elements"); + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKNodeAnnouncement), "LDKCVec_NodeAnnouncementZ Elements"); else _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t h = 0; h < _res_constr.datalen; h++) { - uint32_t _res_conv_7 = _res_vals[h]; - void* _res_conv_7_ptr = (void*)(((uint64_t)_res_conv_7) & ~1); - CHECK_ACCESS(_res_conv_7_ptr); - LDKEvent _res_conv_7_conv = *(LDKEvent*)(_res_conv_7_ptr); - FREE((void*)_res_conv_7); - _res_constr.data[h] = _res_conv_7_conv; + uint32_t* _res_vals = _res->elems; + for (size_t s = 0; s < _res_constr.datalen; s++) { + uint32_t _res_conv_18 = _res_vals[s]; + LDKNodeAnnouncement _res_conv_18_conv; + _res_conv_18_conv.inner = (void*)(_res_conv_18 & (~1)); + _res_conv_18_conv.is_owned = (_res_conv_18 & 1) || (_res_conv_18 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_18_conv); + _res_constr.data[s] = _res_conv_18_conv; } - CVec_EventZ_free(_res_constr); + CVec_NodeAnnouncementZ_free(_res_constr); } -void __attribute__((visibility("default"))) TS_CVec_TransactionZ_free(ptrArray _res) { - LDKCVec_TransactionZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); +void __attribute__((visibility("default"))) TS_CVec_PublicKeyZ_free(ptrArray _res) { + LDKCVec_PublicKeyZ _res_constr; + _res_constr.datalen = _res->arr_len; if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKTransaction), "LDKCVec_TransactionZ Elements"); + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKPublicKey), "LDKCVec_PublicKeyZ Elements"); else _res_constr.data = NULL; - int8_tArray* _res_vals = (int8_tArray*)(_res + 4); + int8_tArray* _res_vals = (void*) _res->elems; for (size_t m = 0; m < _res_constr.datalen; m++) { int8_tArray _res_conv_12 = _res_vals[m]; - LDKTransaction _res_conv_12_ref; - _res_conv_12_ref.datalen = *((uint32_t*)_res_conv_12); - _res_conv_12_ref.data = MALLOC(_res_conv_12_ref.datalen, "LDKTransaction Bytes"); - memcpy(_res_conv_12_ref.data, (uint8_t*)(_res_conv_12 + 4), _res_conv_12_ref.datalen); - _res_conv_12_ref.data_is_owned = true; + LDKPublicKey _res_conv_12_ref; + CHECK(_res_conv_12->arr_len == 33); + memcpy(_res_conv_12_ref.compressed_form, _res_conv_12->elems, 33); _res_constr.data[m] = _res_conv_12_ref; } - CVec_TransactionZ_free(_res_constr); + CVec_PublicKeyZ_free(_res_constr); } -static inline uint64_t C2Tuple_u32TxOutZ_clone_ptr(LDKC2Tuple_u32TxOutZ *NONNULL_PTR arg) { - LDKC2Tuple_u32TxOutZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_u32TxOutZ), "LDKC2Tuple_u32TxOutZ"); - *ret_conv = C2Tuple_u32TxOutZ_clone(arg); - return ((uint64_t)ret_conv); +void __attribute__((visibility("default"))) TS_CVec_u8Z_free(int8_tArray _res) { + LDKCVec_u8Z _res_ref; + _res_ref.datalen = _res->arr_len; + _res_ref.data = MALLOC(_res_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(_res_ref.data, _res->elems, _res_ref.datalen); + CVec_u8Z_free(_res_ref); } -int64_t __attribute__((visibility("default"))) TS_C2Tuple_u32TxOutZ_clone_ptr(uint32_t arg) { - LDKC2Tuple_u32TxOutZ* arg_conv = (LDKC2Tuple_u32TxOutZ*)(arg & ~1); - int64_t ret_val = C2Tuple_u32TxOutZ_clone_ptr(arg_conv); - return ret_val; + +uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_ok(int8_tArray o) { + LDKCVec_u8Z o_ref; + o_ref.datalen = o->arr_len; + o_ref.data = MALLOC(o_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(o_ref.data, o->elems, o_ref.datalen); + LDKCResult_CVec_u8ZPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_u8ZPeerHandleErrorZ), "LDKCResult_CVec_u8ZPeerHandleErrorZ"); + *ret_conv = CResult_CVec_u8ZPeerHandleErrorZ_ok(o_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_u32TxOutZ_clone(uint32_t orig) { - LDKC2Tuple_u32TxOutZ* orig_conv = (LDKC2Tuple_u32TxOutZ*)(orig & ~1); - LDKC2Tuple_u32TxOutZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_u32TxOutZ), "LDKC2Tuple_u32TxOutZ"); - *ret_conv = C2Tuple_u32TxOutZ_clone(orig_conv); - return ((uint64_t)ret_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_err(uint32_t e) { + LDKPeerHandleError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = PeerHandleError_clone(&e_conv); + LDKCResult_CVec_u8ZPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_u8ZPeerHandleErrorZ), "LDKCResult_CVec_u8ZPeerHandleErrorZ"); + *ret_conv = CResult_CVec_u8ZPeerHandleErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_u32TxOutZ_new(int32_t a, uint32_t b) { - void* b_ptr = (void*)(((uint64_t)b) & ~1); - CHECK_ACCESS(b_ptr); - LDKTxOut b_conv = *(LDKTxOut*)(b_ptr); - b_conv = TxOut_clone((LDKTxOut*)(((uint64_t)b) & ~1)); - LDKC2Tuple_u32TxOutZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_u32TxOutZ), "LDKC2Tuple_u32TxOutZ"); - *ret_conv = C2Tuple_u32TxOutZ_new(a, b_conv); - return ((uint64_t)ret_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_is_ok(uint32_t o) { + LDKCResult_CVec_u8ZPeerHandleErrorZ* o_conv = (LDKCResult_CVec_u8ZPeerHandleErrorZ*)(o & ~1); + jboolean ret_val = CResult_CVec_u8ZPeerHandleErrorZ_is_ok(o_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_C2Tuple_u32TxOutZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKC2Tuple_u32TxOutZ _res_conv = *(LDKC2Tuple_u32TxOutZ*)(_res_ptr); + LDKCResult_CVec_u8ZPeerHandleErrorZ _res_conv = *(LDKCResult_CVec_u8ZPeerHandleErrorZ*)(_res_ptr); FREE((void*)_res); - C2Tuple_u32TxOutZ_free(_res_conv); + CResult_CVec_u8ZPeerHandleErrorZ_free(_res_conv); } -void __attribute__((visibility("default"))) TS_CVec_C2Tuple_u32TxOutZZ_free(uint32_tArray _res) { - LDKCVec_C2Tuple_u32TxOutZZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_u32TxOutZ), "LDKCVec_C2Tuple_u32TxOutZZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t u = 0; u < _res_constr.datalen; u++) { - uint32_t _res_conv_20 = _res_vals[u]; - void* _res_conv_20_ptr = (void*)(((uint64_t)_res_conv_20) & ~1); - CHECK_ACCESS(_res_conv_20_ptr); - LDKC2Tuple_u32TxOutZ _res_conv_20_conv = *(LDKC2Tuple_u32TxOutZ*)(_res_conv_20_ptr); - FREE((void*)_res_conv_20); - _res_constr.data[u] = _res_conv_20_conv; - } - CVec_C2Tuple_u32TxOutZZ_free(_res_constr); +static inline uint64_t CResult_CVec_u8ZPeerHandleErrorZ_clone_ptr(LDKCResult_CVec_u8ZPeerHandleErrorZ *NONNULL_PTR arg) { + LDKCResult_CVec_u8ZPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_u8ZPeerHandleErrorZ), "LDKCResult_CVec_u8ZPeerHandleErrorZ"); + *ret_conv = CResult_CVec_u8ZPeerHandleErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_CVec_u8ZPeerHandleErrorZ* arg_conv = (LDKCResult_CVec_u8ZPeerHandleErrorZ*)(arg & ~1); + int64_t ret_val = CResult_CVec_u8ZPeerHandleErrorZ_clone_ptr(arg_conv); + return ret_val; } -static inline uint64_t C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone_ptr(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ *NONNULL_PTR arg) { - LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ"); - *ret_conv = C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(arg); - return ((uint64_t)ret_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_clone(uint32_t orig) { + LDKCResult_CVec_u8ZPeerHandleErrorZ* orig_conv = (LDKCResult_CVec_u8ZPeerHandleErrorZ*)(orig & ~1); + LDKCResult_CVec_u8ZPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_u8ZPeerHandleErrorZ), "LDKCResult_CVec_u8ZPeerHandleErrorZ"); + *ret_conv = CResult_CVec_u8ZPeerHandleErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone_ptr(uint32_t arg) { - LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* arg_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ*)(arg & ~1); - int64_t ret_val = C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone_ptr(arg_conv); - return ret_val; + +uint32_t __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_ok() { + LDKCResult_NonePeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePeerHandleErrorZ), "LDKCResult_NonePeerHandleErrorZ"); + *ret_conv = CResult_NonePeerHandleErrorZ_ok(); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(uint32_t orig) { - LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* orig_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ*)(orig & ~1); - LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ"); - *ret_conv = C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(orig_conv); - return ((uint64_t)ret_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_err(uint32_t e) { + LDKPeerHandleError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = PeerHandleError_clone(&e_conv); + LDKCResult_NonePeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePeerHandleErrorZ), "LDKCResult_NonePeerHandleErrorZ"); + *ret_conv = CResult_NonePeerHandleErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_new(int8_tArray a, uint32_tArray b) { - LDKThirtyTwoBytes a_ref; - CHECK(*((uint32_t*)a) == 32); - memcpy(a_ref.data, (uint8_t*)(a + 4), 32); - LDKCVec_C2Tuple_u32TxOutZZ b_constr; - b_constr.datalen = *((uint32_t*)b); - if (b_constr.datalen > 0) - b_constr.data = MALLOC(b_constr.datalen * sizeof(LDKC2Tuple_u32TxOutZ), "LDKCVec_C2Tuple_u32TxOutZZ Elements"); - else - b_constr.data = NULL; - uint32_t* b_vals = (uint32_t*)(b + 4); - for (size_t u = 0; u < b_constr.datalen; u++) { - uint32_t b_conv_20 = b_vals[u]; - void* b_conv_20_ptr = (void*)(((uint64_t)b_conv_20) & ~1); - CHECK_ACCESS(b_conv_20_ptr); - LDKC2Tuple_u32TxOutZ b_conv_20_conv = *(LDKC2Tuple_u32TxOutZ*)(b_conv_20_ptr); - b_conv_20_conv = C2Tuple_u32TxOutZ_clone((LDKC2Tuple_u32TxOutZ*)(((uint64_t)b_conv_20) & ~1)); - b_constr.data[u] = b_conv_20_conv; - } - LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ"); - *ret_conv = C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_new(a_ref, b_constr); - return ((uint64_t)ret_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_is_ok(uint32_t o) { + LDKCResult_NonePeerHandleErrorZ* o_conv = (LDKCResult_NonePeerHandleErrorZ*)(o & ~1); + jboolean ret_val = CResult_NonePeerHandleErrorZ_is_ok(o_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ _res_conv = *(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ*)(_res_ptr); + LDKCResult_NonePeerHandleErrorZ _res_conv = *(LDKCResult_NonePeerHandleErrorZ*)(_res_ptr); FREE((void*)_res); - C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_free(_res_conv); + CResult_NonePeerHandleErrorZ_free(_res_conv); } -void __attribute__((visibility("default"))) TS_CVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ_free(uint32_tArray _res) { - LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t n = 0; n < _res_constr.datalen; n++) { - uint32_t _res_conv_39 = _res_vals[n]; - void* _res_conv_39_ptr = (void*)(((uint64_t)_res_conv_39) & ~1); - CHECK_ACCESS(_res_conv_39_ptr); - LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ _res_conv_39_conv = *(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ*)(_res_conv_39_ptr); - FREE((void*)_res_conv_39); - _res_constr.data[n] = _res_conv_39_conv; - } - CVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ_free(_res_constr); +static inline uint64_t CResult_NonePeerHandleErrorZ_clone_ptr(LDKCResult_NonePeerHandleErrorZ *NONNULL_PTR arg) { + LDKCResult_NonePeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePeerHandleErrorZ), "LDKCResult_NonePeerHandleErrorZ"); + *ret_conv = CResult_NonePeerHandleErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_NonePeerHandleErrorZ* arg_conv = (LDKCResult_NonePeerHandleErrorZ*)(arg & ~1); + int64_t ret_val = CResult_NonePeerHandleErrorZ_clone_ptr(arg_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_CVec_BalanceZ_free(uint32_tArray _res) { - LDKCVec_BalanceZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKBalance), "LDKCVec_BalanceZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t j = 0; j < _res_constr.datalen; j++) { - uint32_t _res_conv_9 = _res_vals[j]; - void* _res_conv_9_ptr = (void*)(((uint64_t)_res_conv_9) & ~1); - CHECK_ACCESS(_res_conv_9_ptr); - LDKBalance _res_conv_9_conv = *(LDKBalance*)(_res_conv_9_ptr); - FREE((void*)_res_conv_9); - _res_constr.data[j] = _res_conv_9_conv; - } - CVec_BalanceZ_free(_res_constr); +uint32_t __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_clone(uint32_t orig) { + LDKCResult_NonePeerHandleErrorZ* orig_conv = (LDKCResult_NonePeerHandleErrorZ*)(orig & ~1); + LDKCResult_NonePeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePeerHandleErrorZ), "LDKCResult_NonePeerHandleErrorZ"); + *ret_conv = CResult_NonePeerHandleErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_ok(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKC2Tuple_BlockHashChannelMonitorZ o_conv = *(LDKC2Tuple_BlockHashChannelMonitorZ*)(o_ptr); - o_conv = C2Tuple_BlockHashChannelMonitorZ_clone((LDKC2Tuple_BlockHashChannelMonitorZ*)(((uint64_t)o) & ~1)); - LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ"); - *ret_conv = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_ok(o_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_ok(jboolean o) { + LDKCResult_boolPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolPeerHandleErrorZ), "LDKCResult_boolPeerHandleErrorZ"); + *ret_conv = CResult_boolPeerHandleErrorZ_ok(o); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_err(uint32_t e) { + LDKPeerHandleError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ"); - *ret_conv = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_err(e_conv); + e_conv = PeerHandleError_clone(&e_conv); + LDKCResult_boolPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolPeerHandleErrorZ), "LDKCResult_boolPeerHandleErrorZ"); + *ret_conv = CResult_boolPeerHandleErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* o_conv = (LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_is_ok(uint32_t o) { + LDKCResult_boolPeerHandleErrorZ* o_conv = (LDKCResult_boolPeerHandleErrorZ*)(o & ~1); + jboolean ret_val = CResult_boolPeerHandleErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ _res_conv = *(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ*)(_res_ptr); + LDKCResult_boolPeerHandleErrorZ _res_conv = *(LDKCResult_boolPeerHandleErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_free(_res_conv); + CResult_boolPeerHandleErrorZ_free(_res_conv); } -static inline uint64_t CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone_ptr(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ"); - *ret_conv = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone(arg); +static inline uint64_t CResult_boolPeerHandleErrorZ_clone_ptr(LDKCResult_boolPeerHandleErrorZ *NONNULL_PTR arg) { + LDKCResult_boolPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolPeerHandleErrorZ), "LDKCResult_boolPeerHandleErrorZ"); + *ret_conv = CResult_boolPeerHandleErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* arg_conv = (LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_boolPeerHandleErrorZ* arg_conv = (LDKCResult_boolPeerHandleErrorZ*)(arg & ~1); + int64_t ret_val = CResult_boolPeerHandleErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* orig_conv = (LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ*)(orig & ~1); - LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ"); - *ret_conv = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_clone(uint32_t orig) { + LDKCResult_boolPeerHandleErrorZ* orig_conv = (LDKCResult_boolPeerHandleErrorZ*)(orig & ~1); + LDKCResult_boolPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolPeerHandleErrorZ), "LDKCResult_boolPeerHandleErrorZ"); + *ret_conv = CResult_boolPeerHandleErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_ok() { - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = CResult_NoneLightningErrorZ_ok(); +uint32_t __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKTxOut o_conv = *(LDKTxOut*)(o_ptr); + o_conv = TxOut_clone((LDKTxOut*)(((uint64_t)o) & ~1)); + LDKCResult_TxOutAccessErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxOutAccessErrorZ), "LDKCResult_TxOutAccessErrorZ"); + *ret_conv = CResult_TxOutAccessErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_err(uint32_t e) { - LDKLightningError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = LightningError_clone(&e_conv); - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = CResult_NoneLightningErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_err(uint32_t e) { + LDKAccessError e_conv = LDKAccessError_from_js(e); + LDKCResult_TxOutAccessErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxOutAccessErrorZ), "LDKCResult_TxOutAccessErrorZ"); + *ret_conv = CResult_TxOutAccessErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_is_ok(uint32_t o) { - LDKCResult_NoneLightningErrorZ* o_conv = (LDKCResult_NoneLightningErrorZ*)(o & ~1); - jboolean ret_val = CResult_NoneLightningErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_is_ok(uint32_t o) { + LDKCResult_TxOutAccessErrorZ* o_conv = (LDKCResult_TxOutAccessErrorZ*)(o & ~1); + jboolean ret_val = CResult_TxOutAccessErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_NoneLightningErrorZ _res_conv = *(LDKCResult_NoneLightningErrorZ*)(_res_ptr); + LDKCResult_TxOutAccessErrorZ _res_conv = *(LDKCResult_TxOutAccessErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_NoneLightningErrorZ_free(_res_conv); + CResult_TxOutAccessErrorZ_free(_res_conv); } -static inline uint64_t CResult_NoneLightningErrorZ_clone_ptr(LDKCResult_NoneLightningErrorZ *NONNULL_PTR arg) { - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = CResult_NoneLightningErrorZ_clone(arg); +static inline uint64_t CResult_TxOutAccessErrorZ_clone_ptr(LDKCResult_TxOutAccessErrorZ *NONNULL_PTR arg) { + LDKCResult_TxOutAccessErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxOutAccessErrorZ), "LDKCResult_TxOutAccessErrorZ"); + *ret_conv = CResult_TxOutAccessErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_NoneLightningErrorZ* arg_conv = (LDKCResult_NoneLightningErrorZ*)(arg & ~1); - int64_t ret_val = CResult_NoneLightningErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_TxOutAccessErrorZ* arg_conv = (LDKCResult_TxOutAccessErrorZ*)(arg & ~1); + int64_t ret_val = CResult_TxOutAccessErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_clone(uint32_t orig) { - LDKCResult_NoneLightningErrorZ* orig_conv = (LDKCResult_NoneLightningErrorZ*)(orig & ~1); - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = CResult_NoneLightningErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_clone(uint32_t orig) { + LDKCResult_TxOutAccessErrorZ* orig_conv = (LDKCResult_TxOutAccessErrorZ*)(orig & ~1); + LDKCResult_TxOutAccessErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxOutAccessErrorZ), "LDKCResult_TxOutAccessErrorZ"); + *ret_conv = CResult_TxOutAccessErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -static inline uint64_t C2Tuple_PublicKeyTypeZ_clone_ptr(LDKC2Tuple_PublicKeyTypeZ *NONNULL_PTR arg) { - LDKC2Tuple_PublicKeyTypeZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyTypeZ), "LDKC2Tuple_PublicKeyTypeZ"); - *ret_conv = C2Tuple_PublicKeyTypeZ_clone(arg); - return ((uint64_t)ret_conv); -} -int64_t __attribute__((visibility("default"))) TS_C2Tuple_PublicKeyTypeZ_clone_ptr(uint32_t arg) { - LDKC2Tuple_PublicKeyTypeZ* arg_conv = (LDKC2Tuple_PublicKeyTypeZ*)(arg & ~1); - int64_t ret_val = C2Tuple_PublicKeyTypeZ_clone_ptr(arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_ok() { + LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); + *ret_conv = CResult_NoneChannelMonitorUpdateErrZ_ok(); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PublicKeyTypeZ_clone(uint32_t orig) { - LDKC2Tuple_PublicKeyTypeZ* orig_conv = (LDKC2Tuple_PublicKeyTypeZ*)(orig & ~1); - LDKC2Tuple_PublicKeyTypeZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyTypeZ), "LDKC2Tuple_PublicKeyTypeZ"); - *ret_conv = C2Tuple_PublicKeyTypeZ_clone(orig_conv); - return ((uint64_t)ret_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_err(uint32_t e) { + LDKChannelMonitorUpdateErr e_conv = LDKChannelMonitorUpdateErr_from_js(e); + LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); + *ret_conv = CResult_NoneChannelMonitorUpdateErrZ_err(e_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PublicKeyTypeZ_new(int8_tArray a, uint32_t b) { - LDKPublicKey a_ref; - CHECK(*((uint32_t*)a) == 33); - memcpy(a_ref.compressed_form, (uint8_t*)(a + 4), 33); - void* b_ptr = (void*)(((uint64_t)b) & ~1); - CHECK_ACCESS(b_ptr); - LDKType b_conv = *(LDKType*)(b_ptr); - LDKC2Tuple_PublicKeyTypeZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyTypeZ), "LDKC2Tuple_PublicKeyTypeZ"); - *ret_conv = C2Tuple_PublicKeyTypeZ_new(a_ref, b_conv); - return ((uint64_t)ret_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_is_ok(uint32_t o) { + LDKCResult_NoneChannelMonitorUpdateErrZ* o_conv = (LDKCResult_NoneChannelMonitorUpdateErrZ*)(o & ~1); + jboolean ret_val = CResult_NoneChannelMonitorUpdateErrZ_is_ok(o_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_C2Tuple_PublicKeyTypeZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKC2Tuple_PublicKeyTypeZ _res_conv = *(LDKC2Tuple_PublicKeyTypeZ*)(_res_ptr); + LDKCResult_NoneChannelMonitorUpdateErrZ _res_conv = *(LDKCResult_NoneChannelMonitorUpdateErrZ*)(_res_ptr); FREE((void*)_res); - C2Tuple_PublicKeyTypeZ_free(_res_conv); + CResult_NoneChannelMonitorUpdateErrZ_free(_res_conv); } -void __attribute__((visibility("default"))) TS_CVec_C2Tuple_PublicKeyTypeZZ_free(uint32_tArray _res) { - LDKCVec_C2Tuple_PublicKeyTypeZZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_PublicKeyTypeZ), "LDKCVec_C2Tuple_PublicKeyTypeZZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t z = 0; z < _res_constr.datalen; z++) { - uint32_t _res_conv_25 = _res_vals[z]; - void* _res_conv_25_ptr = (void*)(((uint64_t)_res_conv_25) & ~1); - CHECK_ACCESS(_res_conv_25_ptr); - LDKC2Tuple_PublicKeyTypeZ _res_conv_25_conv = *(LDKC2Tuple_PublicKeyTypeZ*)(_res_conv_25_ptr); - FREE((void*)_res_conv_25); - _res_constr.data[z] = _res_conv_25_conv; - } - CVec_C2Tuple_PublicKeyTypeZZ_free(_res_constr); +static inline uint64_t CResult_NoneChannelMonitorUpdateErrZ_clone_ptr(LDKCResult_NoneChannelMonitorUpdateErrZ *NONNULL_PTR arg) { + LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); + *ret_conv = CResult_NoneChannelMonitorUpdateErrZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_clone_ptr(uint32_t arg) { + LDKCResult_NoneChannelMonitorUpdateErrZ* arg_conv = (LDKCResult_NoneChannelMonitorUpdateErrZ*)(arg & ~1); + int64_t ret_val = CResult_NoneChannelMonitorUpdateErrZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_ok(jboolean o) { - LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); - *ret_conv = CResult_boolLightningErrorZ_ok(o); +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_clone(uint32_t orig) { + LDKCResult_NoneChannelMonitorUpdateErrZ* orig_conv = (LDKCResult_NoneChannelMonitorUpdateErrZ*)(orig & ~1); + LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); + *ret_conv = CResult_NoneChannelMonitorUpdateErrZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_err(uint32_t e) { - LDKLightningError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = LightningError_clone(&e_conv); - LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); - *ret_conv = CResult_boolLightningErrorZ_err(e_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_COption_C2Tuple_usizeTransactionZZ_some(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKC2Tuple_usizeTransactionZ o_conv = *(LDKC2Tuple_usizeTransactionZ*)(o_ptr); + o_conv = C2Tuple_usizeTransactionZ_clone((LDKC2Tuple_usizeTransactionZ*)(((uint64_t)o) & ~1)); + LDKCOption_C2Tuple_usizeTransactionZZ *ret_copy = MALLOC(sizeof(LDKCOption_C2Tuple_usizeTransactionZZ), "LDKCOption_C2Tuple_usizeTransactionZZ"); + *ret_copy = COption_C2Tuple_usizeTransactionZZ_some(o_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_is_ok(uint32_t o) { - LDKCResult_boolLightningErrorZ* o_conv = (LDKCResult_boolLightningErrorZ*)(o & ~1); - jboolean ret_val = CResult_boolLightningErrorZ_is_ok(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_COption_C2Tuple_usizeTransactionZZ_none() { + LDKCOption_C2Tuple_usizeTransactionZZ *ret_copy = MALLOC(sizeof(LDKCOption_C2Tuple_usizeTransactionZZ), "LDKCOption_C2Tuple_usizeTransactionZZ"); + *ret_copy = COption_C2Tuple_usizeTransactionZZ_none(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_COption_C2Tuple_usizeTransactionZZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_boolLightningErrorZ _res_conv = *(LDKCResult_boolLightningErrorZ*)(_res_ptr); + LDKCOption_C2Tuple_usizeTransactionZZ _res_conv = *(LDKCOption_C2Tuple_usizeTransactionZZ*)(_res_ptr); FREE((void*)_res); - CResult_boolLightningErrorZ_free(_res_conv); -} - -static inline uint64_t CResult_boolLightningErrorZ_clone_ptr(LDKCResult_boolLightningErrorZ *NONNULL_PTR arg) { - LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); - *ret_conv = CResult_boolLightningErrorZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_boolLightningErrorZ* arg_conv = (LDKCResult_boolLightningErrorZ*)(arg & ~1); - int64_t ret_val = CResult_boolLightningErrorZ_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_clone(uint32_t orig) { - LDKCResult_boolLightningErrorZ* orig_conv = (LDKCResult_boolLightningErrorZ*)(orig & ~1); - LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); - *ret_conv = CResult_boolLightningErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; + COption_C2Tuple_usizeTransactionZZ_free(_res_conv); } -static inline uint64_t C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone_ptr(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ *NONNULL_PTR arg) { - LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ), "LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ"); - *ret_conv = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone(arg); - return ((uint64_t)ret_conv); +static inline uint64_t COption_C2Tuple_usizeTransactionZZ_clone_ptr(LDKCOption_C2Tuple_usizeTransactionZZ *NONNULL_PTR arg) { + LDKCOption_C2Tuple_usizeTransactionZZ *ret_copy = MALLOC(sizeof(LDKCOption_C2Tuple_usizeTransactionZZ), "LDKCOption_C2Tuple_usizeTransactionZZ"); + *ret_copy = COption_C2Tuple_usizeTransactionZZ_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone_ptr(uint32_t arg) { - LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* arg_conv = (LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(arg & ~1); - int64_t ret_val = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_COption_C2Tuple_usizeTransactionZZ_clone_ptr(uint32_t arg) { + LDKCOption_C2Tuple_usizeTransactionZZ* arg_conv = (LDKCOption_C2Tuple_usizeTransactionZZ*)arg; + int64_t ret_val = COption_C2Tuple_usizeTransactionZZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone(uint32_t orig) { - LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* orig_conv = (LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(orig & ~1); - LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ), "LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ"); - *ret_conv = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone(orig_conv); - return ((uint64_t)ret_conv); +uint32_t __attribute__((visibility("default"))) TS_COption_C2Tuple_usizeTransactionZZ_clone(uint32_t orig) { + LDKCOption_C2Tuple_usizeTransactionZZ* orig_conv = (LDKCOption_C2Tuple_usizeTransactionZZ*)orig; + LDKCOption_C2Tuple_usizeTransactionZZ *ret_copy = MALLOC(sizeof(LDKCOption_C2Tuple_usizeTransactionZZ), "LDKCOption_C2Tuple_usizeTransactionZZ"); + *ret_copy = COption_C2Tuple_usizeTransactionZZ_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_new(uint32_t a, uint32_t b, uint32_t c) { - LDKChannelAnnouncement a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = (a & 1) || (a == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - a_conv = ChannelAnnouncement_clone(&a_conv); - LDKChannelUpdate b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = (b & 1) || (b == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - b_conv = ChannelUpdate_clone(&b_conv); - LDKChannelUpdate c_conv; - c_conv.inner = (void*)(c & (~1)); - c_conv.is_owned = (c & 1) || (c == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(c_conv); - c_conv = ChannelUpdate_clone(&c_conv); - LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ), "LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ"); - *ret_conv = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_new(a_conv, b_conv, c_conv); - return ((uint64_t)ret_conv); +uint32_t __attribute__((visibility("default"))) TS_COption_ClosureReasonZ_some(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKClosureReason o_conv = *(LDKClosureReason*)(o_ptr); + o_conv = ClosureReason_clone((LDKClosureReason*)(((uint64_t)o) & ~1)); + LDKCOption_ClosureReasonZ *ret_copy = MALLOC(sizeof(LDKCOption_ClosureReasonZ), "LDKCOption_ClosureReasonZ"); + *ret_copy = COption_ClosureReasonZ_some(o_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_free(uint32_t _res) { +uint32_t __attribute__((visibility("default"))) TS_COption_ClosureReasonZ_none() { + LDKCOption_ClosureReasonZ *ret_copy = MALLOC(sizeof(LDKCOption_ClosureReasonZ), "LDKCOption_ClosureReasonZ"); + *ret_copy = COption_ClosureReasonZ_none(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +void __attribute__((visibility("default"))) TS_COption_ClosureReasonZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ _res_conv = *(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(_res_ptr); + LDKCOption_ClosureReasonZ _res_conv = *(LDKCOption_ClosureReasonZ*)(_res_ptr); FREE((void*)_res); - C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_free(_res_conv); + COption_ClosureReasonZ_free(_res_conv); } -void __attribute__((visibility("default"))) TS_CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_free(uint32_tArray _res) { - LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ), "LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t h = 0; h < _res_constr.datalen; h++) { - uint32_t _res_conv_59 = _res_vals[h]; - void* _res_conv_59_ptr = (void*)(((uint64_t)_res_conv_59) & ~1); - CHECK_ACCESS(_res_conv_59_ptr); - LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ _res_conv_59_conv = *(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(_res_conv_59_ptr); - FREE((void*)_res_conv_59); - _res_constr.data[h] = _res_conv_59_conv; - } - CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_free(_res_constr); +static inline uint64_t COption_ClosureReasonZ_clone_ptr(LDKCOption_ClosureReasonZ *NONNULL_PTR arg) { + LDKCOption_ClosureReasonZ *ret_copy = MALLOC(sizeof(LDKCOption_ClosureReasonZ), "LDKCOption_ClosureReasonZ"); + *ret_copy = COption_ClosureReasonZ_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } - -void __attribute__((visibility("default"))) TS_CVec_NodeAnnouncementZ_free(uint32_tArray _res) { - LDKCVec_NodeAnnouncementZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKNodeAnnouncement), "LDKCVec_NodeAnnouncementZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t s = 0; s < _res_constr.datalen; s++) { - uint32_t _res_conv_18 = _res_vals[s]; - LDKNodeAnnouncement _res_conv_18_conv; - _res_conv_18_conv.inner = (void*)(_res_conv_18 & (~1)); - _res_conv_18_conv.is_owned = (_res_conv_18 & 1) || (_res_conv_18 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_18_conv); - _res_constr.data[s] = _res_conv_18_conv; - } - CVec_NodeAnnouncementZ_free(_res_constr); +int64_t __attribute__((visibility("default"))) TS_COption_ClosureReasonZ_clone_ptr(uint32_t arg) { + LDKCOption_ClosureReasonZ* arg_conv = (LDKCOption_ClosureReasonZ*)arg; + int64_t ret_val = COption_ClosureReasonZ_clone_ptr(arg_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_CVec_PublicKeyZ_free(ptrArray _res) { - LDKCVec_PublicKeyZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKPublicKey), "LDKCVec_PublicKeyZ Elements"); - else - _res_constr.data = NULL; - int8_tArray* _res_vals = (int8_tArray*)(_res + 4); - for (size_t m = 0; m < _res_constr.datalen; m++) { - int8_tArray _res_conv_12 = _res_vals[m]; - LDKPublicKey _res_conv_12_ref; - CHECK(*((uint32_t*)_res_conv_12) == 33); - memcpy(_res_conv_12_ref.compressed_form, (uint8_t*)(_res_conv_12 + 4), 33); - _res_constr.data[m] = _res_conv_12_ref; - } - CVec_PublicKeyZ_free(_res_constr); +uint32_t __attribute__((visibility("default"))) TS_COption_ClosureReasonZ_clone(uint32_t orig) { + LDKCOption_ClosureReasonZ* orig_conv = (LDKCOption_ClosureReasonZ*)orig; + LDKCOption_ClosureReasonZ *ret_copy = MALLOC(sizeof(LDKCOption_ClosureReasonZ), "LDKCOption_ClosureReasonZ"); + *ret_copy = COption_ClosureReasonZ_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_ok(int8_tArray o) { - LDKCVec_u8Z o_ref; - o_ref.datalen = *((uint32_t*)o); - o_ref.data = MALLOC(o_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(o_ref.data, (uint8_t*)(o + 4), o_ref.datalen); - LDKCResult_CVec_u8ZPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_u8ZPeerHandleErrorZ), "LDKCResult_CVec_u8ZPeerHandleErrorZ"); - *ret_conv = CResult_CVec_u8ZPeerHandleErrorZ_ok(o_ref); +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKCOption_ClosureReasonZ o_conv = *(LDKCOption_ClosureReasonZ*)(o_ptr); + o_conv = COption_ClosureReasonZ_clone((LDKCOption_ClosureReasonZ*)(((uint64_t)o) & ~1)); + LDKCResult_COption_ClosureReasonZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_ClosureReasonZDecodeErrorZ), "LDKCResult_COption_ClosureReasonZDecodeErrorZ"); + *ret_conv = CResult_COption_ClosureReasonZDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_err(uint32_t e) { - LDKPeerHandleError e_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = PeerHandleError_clone(&e_conv); - LDKCResult_CVec_u8ZPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_u8ZPeerHandleErrorZ), "LDKCResult_CVec_u8ZPeerHandleErrorZ"); - *ret_conv = CResult_CVec_u8ZPeerHandleErrorZ_err(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_COption_ClosureReasonZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_ClosureReasonZDecodeErrorZ), "LDKCResult_COption_ClosureReasonZDecodeErrorZ"); + *ret_conv = CResult_COption_ClosureReasonZDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_is_ok(uint32_t o) { - LDKCResult_CVec_u8ZPeerHandleErrorZ* o_conv = (LDKCResult_CVec_u8ZPeerHandleErrorZ*)(o & ~1); - jboolean ret_val = CResult_CVec_u8ZPeerHandleErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_COption_ClosureReasonZDecodeErrorZ* o_conv = (LDKCResult_COption_ClosureReasonZDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_COption_ClosureReasonZDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_CVec_u8ZPeerHandleErrorZ _res_conv = *(LDKCResult_CVec_u8ZPeerHandleErrorZ*)(_res_ptr); + LDKCResult_COption_ClosureReasonZDecodeErrorZ _res_conv = *(LDKCResult_COption_ClosureReasonZDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_CVec_u8ZPeerHandleErrorZ_free(_res_conv); + CResult_COption_ClosureReasonZDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_CVec_u8ZPeerHandleErrorZ_clone_ptr(LDKCResult_CVec_u8ZPeerHandleErrorZ *NONNULL_PTR arg) { - LDKCResult_CVec_u8ZPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_u8ZPeerHandleErrorZ), "LDKCResult_CVec_u8ZPeerHandleErrorZ"); - *ret_conv = CResult_CVec_u8ZPeerHandleErrorZ_clone(arg); +static inline uint64_t CResult_COption_ClosureReasonZDecodeErrorZ_clone_ptr(LDKCResult_COption_ClosureReasonZDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_COption_ClosureReasonZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_ClosureReasonZDecodeErrorZ), "LDKCResult_COption_ClosureReasonZDecodeErrorZ"); + *ret_conv = CResult_COption_ClosureReasonZDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_CVec_u8ZPeerHandleErrorZ* arg_conv = (LDKCResult_CVec_u8ZPeerHandleErrorZ*)(arg & ~1); - int64_t ret_val = CResult_CVec_u8ZPeerHandleErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_COption_ClosureReasonZDecodeErrorZ* arg_conv = (LDKCResult_COption_ClosureReasonZDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_COption_ClosureReasonZDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_clone(uint32_t orig) { - LDKCResult_CVec_u8ZPeerHandleErrorZ* orig_conv = (LDKCResult_CVec_u8ZPeerHandleErrorZ*)(orig & ~1); - LDKCResult_CVec_u8ZPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_u8ZPeerHandleErrorZ), "LDKCResult_CVec_u8ZPeerHandleErrorZ"); - *ret_conv = CResult_CVec_u8ZPeerHandleErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_COption_ClosureReasonZDecodeErrorZ* orig_conv = (LDKCResult_COption_ClosureReasonZDecodeErrorZ*)(orig & ~1); + LDKCResult_COption_ClosureReasonZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_ClosureReasonZDecodeErrorZ), "LDKCResult_COption_ClosureReasonZDecodeErrorZ"); + *ret_conv = CResult_COption_ClosureReasonZDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_ok() { - LDKCResult_NonePeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePeerHandleErrorZ), "LDKCResult_NonePeerHandleErrorZ"); - *ret_conv = CResult_NonePeerHandleErrorZ_ok(); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_COption_NetworkUpdateZ_some(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKNetworkUpdate o_conv = *(LDKNetworkUpdate*)(o_ptr); + o_conv = NetworkUpdate_clone((LDKNetworkUpdate*)(((uint64_t)o) & ~1)); + LDKCOption_NetworkUpdateZ *ret_copy = MALLOC(sizeof(LDKCOption_NetworkUpdateZ), "LDKCOption_NetworkUpdateZ"); + *ret_copy = COption_NetworkUpdateZ_some(o_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_err(uint32_t e) { - LDKPeerHandleError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = PeerHandleError_clone(&e_conv); - LDKCResult_NonePeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePeerHandleErrorZ), "LDKCResult_NonePeerHandleErrorZ"); - *ret_conv = CResult_NonePeerHandleErrorZ_err(e_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_COption_NetworkUpdateZ_none() { + LDKCOption_NetworkUpdateZ *ret_copy = MALLOC(sizeof(LDKCOption_NetworkUpdateZ), "LDKCOption_NetworkUpdateZ"); + *ret_copy = COption_NetworkUpdateZ_none(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_is_ok(uint32_t o) { - LDKCResult_NonePeerHandleErrorZ* o_conv = (LDKCResult_NonePeerHandleErrorZ*)(o & ~1); - jboolean ret_val = CResult_NonePeerHandleErrorZ_is_ok(o_conv); +void __attribute__((visibility("default"))) TS_COption_NetworkUpdateZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCOption_NetworkUpdateZ _res_conv = *(LDKCOption_NetworkUpdateZ*)(_res_ptr); + FREE((void*)_res); + COption_NetworkUpdateZ_free(_res_conv); +} + +static inline uint64_t COption_NetworkUpdateZ_clone_ptr(LDKCOption_NetworkUpdateZ *NONNULL_PTR arg) { + LDKCOption_NetworkUpdateZ *ret_copy = MALLOC(sizeof(LDKCOption_NetworkUpdateZ), "LDKCOption_NetworkUpdateZ"); + *ret_copy = COption_NetworkUpdateZ_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_COption_NetworkUpdateZ_clone_ptr(uint32_t arg) { + LDKCOption_NetworkUpdateZ* arg_conv = (LDKCOption_NetworkUpdateZ*)arg; + int64_t ret_val = COption_NetworkUpdateZ_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_free(uint32_t _res) { +uint32_t __attribute__((visibility("default"))) TS_COption_NetworkUpdateZ_clone(uint32_t orig) { + LDKCOption_NetworkUpdateZ* orig_conv = (LDKCOption_NetworkUpdateZ*)orig; + LDKCOption_NetworkUpdateZ *ret_copy = MALLOC(sizeof(LDKCOption_NetworkUpdateZ), "LDKCOption_NetworkUpdateZ"); + *ret_copy = COption_NetworkUpdateZ_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +void __attribute__((visibility("default"))) TS_CVec_SpendableOutputDescriptorZ_free(uint32_tArray _res) { + LDKCVec_SpendableOutputDescriptorZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKSpendableOutputDescriptor), "LDKCVec_SpendableOutputDescriptorZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t b = 0; b < _res_constr.datalen; b++) { + uint32_t _res_conv_27 = _res_vals[b]; + void* _res_conv_27_ptr = (void*)(((uint64_t)_res_conv_27) & ~1); + CHECK_ACCESS(_res_conv_27_ptr); + LDKSpendableOutputDescriptor _res_conv_27_conv = *(LDKSpendableOutputDescriptor*)(_res_conv_27_ptr); + FREE((void*)_res_conv_27); + _res_constr.data[b] = _res_conv_27_conv; + } + CVec_SpendableOutputDescriptorZ_free(_res_constr); +} + +uint32_t __attribute__((visibility("default"))) TS_COption_EventZ_some(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKEvent o_conv = *(LDKEvent*)(o_ptr); + o_conv = Event_clone((LDKEvent*)(((uint64_t)o) & ~1)); + LDKCOption_EventZ *ret_copy = MALLOC(sizeof(LDKCOption_EventZ), "LDKCOption_EventZ"); + *ret_copy = COption_EventZ_some(o_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_COption_EventZ_none() { + LDKCOption_EventZ *ret_copy = MALLOC(sizeof(LDKCOption_EventZ), "LDKCOption_EventZ"); + *ret_copy = COption_EventZ_none(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +void __attribute__((visibility("default"))) TS_COption_EventZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_NonePeerHandleErrorZ _res_conv = *(LDKCResult_NonePeerHandleErrorZ*)(_res_ptr); + LDKCOption_EventZ _res_conv = *(LDKCOption_EventZ*)(_res_ptr); FREE((void*)_res); - CResult_NonePeerHandleErrorZ_free(_res_conv); + COption_EventZ_free(_res_conv); } -static inline uint64_t CResult_NonePeerHandleErrorZ_clone_ptr(LDKCResult_NonePeerHandleErrorZ *NONNULL_PTR arg) { - LDKCResult_NonePeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePeerHandleErrorZ), "LDKCResult_NonePeerHandleErrorZ"); - *ret_conv = CResult_NonePeerHandleErrorZ_clone(arg); - return (uint64_t)ret_conv; +static inline uint64_t COption_EventZ_clone_ptr(LDKCOption_EventZ *NONNULL_PTR arg) { + LDKCOption_EventZ *ret_copy = MALLOC(sizeof(LDKCOption_EventZ), "LDKCOption_EventZ"); + *ret_copy = COption_EventZ_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_NonePeerHandleErrorZ* arg_conv = (LDKCResult_NonePeerHandleErrorZ*)(arg & ~1); - int64_t ret_val = CResult_NonePeerHandleErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_COption_EventZ_clone_ptr(uint32_t arg) { + LDKCOption_EventZ* arg_conv = (LDKCOption_EventZ*)arg; + int64_t ret_val = COption_EventZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_clone(uint32_t orig) { - LDKCResult_NonePeerHandleErrorZ* orig_conv = (LDKCResult_NonePeerHandleErrorZ*)(orig & ~1); - LDKCResult_NonePeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePeerHandleErrorZ), "LDKCResult_NonePeerHandleErrorZ"); - *ret_conv = CResult_NonePeerHandleErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_COption_EventZ_clone(uint32_t orig) { + LDKCOption_EventZ* orig_conv = (LDKCOption_EventZ*)orig; + LDKCOption_EventZ *ret_copy = MALLOC(sizeof(LDKCOption_EventZ), "LDKCOption_EventZ"); + *ret_copy = COption_EventZ_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_ok(jboolean o) { - LDKCResult_boolPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolPeerHandleErrorZ), "LDKCResult_boolPeerHandleErrorZ"); - *ret_conv = CResult_boolPeerHandleErrorZ_ok(o); +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKCOption_EventZ o_conv = *(LDKCOption_EventZ*)(o_ptr); + o_conv = COption_EventZ_clone((LDKCOption_EventZ*)(((uint64_t)o) & ~1)); + LDKCResult_COption_EventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_EventZDecodeErrorZ), "LDKCResult_COption_EventZDecodeErrorZ"); + *ret_conv = CResult_COption_EventZDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_err(uint32_t e) { - LDKPeerHandleError e_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = PeerHandleError_clone(&e_conv); - LDKCResult_boolPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolPeerHandleErrorZ), "LDKCResult_boolPeerHandleErrorZ"); - *ret_conv = CResult_boolPeerHandleErrorZ_err(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_COption_EventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_EventZDecodeErrorZ), "LDKCResult_COption_EventZDecodeErrorZ"); + *ret_conv = CResult_COption_EventZDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_is_ok(uint32_t o) { - LDKCResult_boolPeerHandleErrorZ* o_conv = (LDKCResult_boolPeerHandleErrorZ*)(o & ~1); - jboolean ret_val = CResult_boolPeerHandleErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_COption_EventZDecodeErrorZ* o_conv = (LDKCResult_COption_EventZDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_COption_EventZDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_boolPeerHandleErrorZ _res_conv = *(LDKCResult_boolPeerHandleErrorZ*)(_res_ptr); + LDKCResult_COption_EventZDecodeErrorZ _res_conv = *(LDKCResult_COption_EventZDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_boolPeerHandleErrorZ_free(_res_conv); + CResult_COption_EventZDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_boolPeerHandleErrorZ_clone_ptr(LDKCResult_boolPeerHandleErrorZ *NONNULL_PTR arg) { - LDKCResult_boolPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolPeerHandleErrorZ), "LDKCResult_boolPeerHandleErrorZ"); - *ret_conv = CResult_boolPeerHandleErrorZ_clone(arg); +static inline uint64_t CResult_COption_EventZDecodeErrorZ_clone_ptr(LDKCResult_COption_EventZDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_COption_EventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_EventZDecodeErrorZ), "LDKCResult_COption_EventZDecodeErrorZ"); + *ret_conv = CResult_COption_EventZDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_boolPeerHandleErrorZ* arg_conv = (LDKCResult_boolPeerHandleErrorZ*)(arg & ~1); - int64_t ret_val = CResult_boolPeerHandleErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_COption_EventZDecodeErrorZ* arg_conv = (LDKCResult_COption_EventZDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_COption_EventZDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_clone(uint32_t orig) { - LDKCResult_boolPeerHandleErrorZ* orig_conv = (LDKCResult_boolPeerHandleErrorZ*)(orig & ~1); - LDKCResult_boolPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolPeerHandleErrorZ), "LDKCResult_boolPeerHandleErrorZ"); - *ret_conv = CResult_boolPeerHandleErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_COption_EventZDecodeErrorZ* orig_conv = (LDKCResult_COption_EventZDecodeErrorZ*)(orig & ~1); + LDKCResult_COption_EventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_EventZDecodeErrorZ), "LDKCResult_COption_EventZDecodeErrorZ"); + *ret_conv = CResult_COption_EventZDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } @@ -14209,6 +12220,25 @@ uint32_t __attribute__((visibility("default"))) TS_CResult_RoutingFeesDecodeErr return (uint64_t)ret_conv; } +void __attribute__((visibility("default"))) TS_CVec_NetAddressZ_free(uint32_tArray _res) { + LDKCVec_NetAddressZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKNetAddress), "LDKCVec_NetAddressZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t m = 0; m < _res_constr.datalen; m++) { + uint32_t _res_conv_12 = _res_vals[m]; + void* _res_conv_12_ptr = (void*)(((uint64_t)_res_conv_12) & ~1); + CHECK_ACCESS(_res_conv_12_ptr); + LDKNetAddress _res_conv_12_conv = *(LDKNetAddress*)(_res_conv_12_ptr); + FREE((void*)_res_conv_12); + _res_constr.data[m] = _res_conv_12_conv; + } + CVec_NetAddressZ_free(_res_constr); +} + uint32_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementInfoDecodeErrorZ_ok(uint32_t o) { LDKNodeAnnouncementInfo o_conv; o_conv.inner = (void*)(o & (~1)); @@ -14266,12 +12296,12 @@ uint32_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementInfo void __attribute__((visibility("default"))) TS_CVec_u64Z_free(int64_tArray _res) { LDKCVec_u64Z _res_constr; - _res_constr.datalen = *((uint32_t*)_res); + _res_constr.datalen = _res->arr_len; if (_res_constr.datalen > 0) _res_constr.data = MALLOC(_res_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements"); else _res_constr.data = NULL; - int64_t* _res_vals = (int64_t*)(_res + 4); + int64_t* _res_vals = _res->elems; for (size_t i = 0; i < _res_constr.datalen; i++) { int64_t _res_conv_8 = _res_vals[i]; _res_constr.data[i] = _res_conv_8; @@ -14391,12 +12421,12 @@ uint32_t __attribute__((visibility("default"))) TS_CResult_NetworkGraphDecodeEr uint32_t __attribute__((visibility("default"))) TS_COption_CVec_NetAddressZZ_some(uint32_tArray o) { LDKCVec_NetAddressZ o_constr; - o_constr.datalen = *((uint32_t*)o); + o_constr.datalen = o->arr_len; if (o_constr.datalen > 0) o_constr.data = MALLOC(o_constr.datalen * sizeof(LDKNetAddress), "LDKCVec_NetAddressZ Elements"); else o_constr.data = NULL; - uint32_t* o_vals = (uint32_t*)(o + 4); + uint32_t* o_vals = o->elems; for (size_t m = 0; m < o_constr.datalen; m++) { uint32_t o_conv_12 = o_vals[m]; void* o_conv_12_ptr = (void*)(((uint64_t)o_conv_12) & ~1); @@ -14436,5183 +12466,4607 @@ uint64_t ret_ref = (uint64_t)ret_copy; int64_t __attribute__((visibility("default"))) TS_COption_CVec_NetAddressZZ_clone_ptr(uint32_t arg) { LDKCOption_CVec_NetAddressZZ* arg_conv = (LDKCOption_CVec_NetAddressZZ*)arg; int64_t ret_val = COption_CVec_NetAddressZZ_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_COption_CVec_NetAddressZZ_clone(uint32_t orig) { - LDKCOption_CVec_NetAddressZZ* orig_conv = (LDKCOption_CVec_NetAddressZZ*)orig; - LDKCOption_CVec_NetAddressZZ *ret_copy = MALLOC(sizeof(LDKCOption_CVec_NetAddressZZ), "LDKCOption_CVec_NetAddressZZ"); - *ret_copy = COption_CVec_NetAddressZZ_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_ok(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKNetAddress o_conv = *(LDKNetAddress*)(o_ptr); - o_conv = NetAddress_clone((LDKNetAddress*)(((uint64_t)o) & ~1)); - LDKCResult_NetAddressDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NetAddressDecodeErrorZ), "LDKCResult_NetAddressDecodeErrorZ"); - *ret_conv = CResult_NetAddressDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_NetAddressDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NetAddressDecodeErrorZ), "LDKCResult_NetAddressDecodeErrorZ"); - *ret_conv = CResult_NetAddressDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; -} - -jboolean __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_NetAddressDecodeErrorZ* o_conv = (LDKCResult_NetAddressDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_NetAddressDecodeErrorZ_is_ok(o_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_NetAddressDecodeErrorZ _res_conv = *(LDKCResult_NetAddressDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_NetAddressDecodeErrorZ_free(_res_conv); -} - -static inline uint64_t CResult_NetAddressDecodeErrorZ_clone_ptr(LDKCResult_NetAddressDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_NetAddressDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NetAddressDecodeErrorZ), "LDKCResult_NetAddressDecodeErrorZ"); - *ret_conv = CResult_NetAddressDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_NetAddressDecodeErrorZ* arg_conv = (LDKCResult_NetAddressDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_NetAddressDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_NetAddressDecodeErrorZ* orig_conv = (LDKCResult_NetAddressDecodeErrorZ*)(orig & ~1); - LDKCResult_NetAddressDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NetAddressDecodeErrorZ), "LDKCResult_NetAddressDecodeErrorZ"); - *ret_conv = CResult_NetAddressDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; -} - -void __attribute__((visibility("default"))) TS_CVec_UpdateAddHTLCZ_free(uint32_tArray _res) { - LDKCVec_UpdateAddHTLCZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKUpdateAddHTLC), "LDKCVec_UpdateAddHTLCZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t p = 0; p < _res_constr.datalen; p++) { - uint32_t _res_conv_15 = _res_vals[p]; - LDKUpdateAddHTLC _res_conv_15_conv; - _res_conv_15_conv.inner = (void*)(_res_conv_15 & (~1)); - _res_conv_15_conv.is_owned = (_res_conv_15 & 1) || (_res_conv_15 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_15_conv); - _res_constr.data[p] = _res_conv_15_conv; - } - CVec_UpdateAddHTLCZ_free(_res_constr); -} - -void __attribute__((visibility("default"))) TS_CVec_UpdateFulfillHTLCZ_free(uint32_tArray _res) { - LDKCVec_UpdateFulfillHTLCZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKUpdateFulfillHTLC), "LDKCVec_UpdateFulfillHTLCZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t t = 0; t < _res_constr.datalen; t++) { - uint32_t _res_conv_19 = _res_vals[t]; - LDKUpdateFulfillHTLC _res_conv_19_conv; - _res_conv_19_conv.inner = (void*)(_res_conv_19 & (~1)); - _res_conv_19_conv.is_owned = (_res_conv_19 & 1) || (_res_conv_19 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_19_conv); - _res_constr.data[t] = _res_conv_19_conv; - } - CVec_UpdateFulfillHTLCZ_free(_res_constr); -} - -void __attribute__((visibility("default"))) TS_CVec_UpdateFailHTLCZ_free(uint32_tArray _res) { - LDKCVec_UpdateFailHTLCZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKUpdateFailHTLC), "LDKCVec_UpdateFailHTLCZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t q = 0; q < _res_constr.datalen; q++) { - uint32_t _res_conv_16 = _res_vals[q]; - LDKUpdateFailHTLC _res_conv_16_conv; - _res_conv_16_conv.inner = (void*)(_res_conv_16 & (~1)); - _res_conv_16_conv.is_owned = (_res_conv_16 & 1) || (_res_conv_16 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_16_conv); - _res_constr.data[q] = _res_conv_16_conv; - } - CVec_UpdateFailHTLCZ_free(_res_constr); -} - -void __attribute__((visibility("default"))) TS_CVec_UpdateFailMalformedHTLCZ_free(uint32_tArray _res) { - LDKCVec_UpdateFailMalformedHTLCZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKUpdateFailMalformedHTLC), "LDKCVec_UpdateFailMalformedHTLCZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t z = 0; z < _res_constr.datalen; z++) { - uint32_t _res_conv_25 = _res_vals[z]; - LDKUpdateFailMalformedHTLC _res_conv_25_conv; - _res_conv_25_conv.inner = (void*)(_res_conv_25 & (~1)); - _res_conv_25_conv.is_owned = (_res_conv_25 & 1) || (_res_conv_25 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_25_conv); - _res_constr.data[z] = _res_conv_25_conv; - } - CVec_UpdateFailMalformedHTLCZ_free(_res_constr); -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_ok(uint32_t o) { - LDKAcceptChannel o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = AcceptChannel_clone(&o_conv); - LDKCResult_AcceptChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AcceptChannelDecodeErrorZ), "LDKCResult_AcceptChannelDecodeErrorZ"); - *ret_conv = CResult_AcceptChannelDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_AcceptChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AcceptChannelDecodeErrorZ), "LDKCResult_AcceptChannelDecodeErrorZ"); - *ret_conv = CResult_AcceptChannelDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; -} - -jboolean __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_AcceptChannelDecodeErrorZ* o_conv = (LDKCResult_AcceptChannelDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_AcceptChannelDecodeErrorZ_is_ok(o_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_AcceptChannelDecodeErrorZ _res_conv = *(LDKCResult_AcceptChannelDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_AcceptChannelDecodeErrorZ_free(_res_conv); -} - -static inline uint64_t CResult_AcceptChannelDecodeErrorZ_clone_ptr(LDKCResult_AcceptChannelDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_AcceptChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AcceptChannelDecodeErrorZ), "LDKCResult_AcceptChannelDecodeErrorZ"); - *ret_conv = CResult_AcceptChannelDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_AcceptChannelDecodeErrorZ* arg_conv = (LDKCResult_AcceptChannelDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_AcceptChannelDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_AcceptChannelDecodeErrorZ* orig_conv = (LDKCResult_AcceptChannelDecodeErrorZ*)(orig & ~1); - LDKCResult_AcceptChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AcceptChannelDecodeErrorZ), "LDKCResult_AcceptChannelDecodeErrorZ"); - *ret_conv = CResult_AcceptChannelDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_ok(uint32_t o) { - LDKAnnouncementSignatures o_conv; +uint32_t __attribute__((visibility("default"))) TS_COption_CVec_NetAddressZZ_clone(uint32_t orig) { + LDKCOption_CVec_NetAddressZZ* orig_conv = (LDKCOption_CVec_NetAddressZZ*)orig; + LDKCOption_CVec_NetAddressZZ *ret_copy = MALLOC(sizeof(LDKCOption_CVec_NetAddressZZ), "LDKCOption_CVec_NetAddressZZ"); + *ret_copy = COption_CVec_NetAddressZZ_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_ScoringParametersDecodeErrorZ_ok(uint32_t o) { + LDKScoringParameters o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = AnnouncementSignatures_clone(&o_conv); - LDKCResult_AnnouncementSignaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AnnouncementSignaturesDecodeErrorZ), "LDKCResult_AnnouncementSignaturesDecodeErrorZ"); - *ret_conv = CResult_AnnouncementSignaturesDecodeErrorZ_ok(o_conv); + // Warning: we need a move here but no clone is available for LDKScoringParameters + LDKCResult_ScoringParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ScoringParametersDecodeErrorZ), "LDKCResult_ScoringParametersDecodeErrorZ"); + *ret_conv = CResult_ScoringParametersDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_ScoringParametersDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_AnnouncementSignaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AnnouncementSignaturesDecodeErrorZ), "LDKCResult_AnnouncementSignaturesDecodeErrorZ"); - *ret_conv = CResult_AnnouncementSignaturesDecodeErrorZ_err(e_conv); + LDKCResult_ScoringParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ScoringParametersDecodeErrorZ), "LDKCResult_ScoringParametersDecodeErrorZ"); + *ret_conv = CResult_ScoringParametersDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_AnnouncementSignaturesDecodeErrorZ* o_conv = (LDKCResult_AnnouncementSignaturesDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_AnnouncementSignaturesDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ScoringParametersDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ScoringParametersDecodeErrorZ* o_conv = (LDKCResult_ScoringParametersDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ScoringParametersDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ScoringParametersDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_AnnouncementSignaturesDecodeErrorZ _res_conv = *(LDKCResult_AnnouncementSignaturesDecodeErrorZ*)(_res_ptr); + LDKCResult_ScoringParametersDecodeErrorZ _res_conv = *(LDKCResult_ScoringParametersDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_AnnouncementSignaturesDecodeErrorZ_free(_res_conv); -} - -static inline uint64_t CResult_AnnouncementSignaturesDecodeErrorZ_clone_ptr(LDKCResult_AnnouncementSignaturesDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_AnnouncementSignaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AnnouncementSignaturesDecodeErrorZ), "LDKCResult_AnnouncementSignaturesDecodeErrorZ"); - *ret_conv = CResult_AnnouncementSignaturesDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_AnnouncementSignaturesDecodeErrorZ* arg_conv = (LDKCResult_AnnouncementSignaturesDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_AnnouncementSignaturesDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_AnnouncementSignaturesDecodeErrorZ* orig_conv = (LDKCResult_AnnouncementSignaturesDecodeErrorZ*)(orig & ~1); - LDKCResult_AnnouncementSignaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AnnouncementSignaturesDecodeErrorZ), "LDKCResult_AnnouncementSignaturesDecodeErrorZ"); - *ret_conv = CResult_AnnouncementSignaturesDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; + CResult_ScoringParametersDecodeErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_ok(uint32_t o) { - LDKChannelReestablish o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_InitFeaturesDecodeErrorZ_ok(uint32_t o) { + LDKInitFeatures o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ChannelReestablish_clone(&o_conv); - LDKCResult_ChannelReestablishDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelReestablishDecodeErrorZ), "LDKCResult_ChannelReestablishDecodeErrorZ"); - *ret_conv = CResult_ChannelReestablishDecodeErrorZ_ok(o_conv); + o_conv = InitFeatures_clone(&o_conv); + LDKCResult_InitFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitFeaturesDecodeErrorZ), "LDKCResult_InitFeaturesDecodeErrorZ"); + *ret_conv = CResult_InitFeaturesDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_InitFeaturesDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_ChannelReestablishDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelReestablishDecodeErrorZ), "LDKCResult_ChannelReestablishDecodeErrorZ"); - *ret_conv = CResult_ChannelReestablishDecodeErrorZ_err(e_conv); + LDKCResult_InitFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitFeaturesDecodeErrorZ), "LDKCResult_InitFeaturesDecodeErrorZ"); + *ret_conv = CResult_InitFeaturesDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ChannelReestablishDecodeErrorZ* o_conv = (LDKCResult_ChannelReestablishDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ChannelReestablishDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_InitFeaturesDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_InitFeaturesDecodeErrorZ* o_conv = (LDKCResult_InitFeaturesDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_InitFeaturesDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_InitFeaturesDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_ChannelReestablishDecodeErrorZ _res_conv = *(LDKCResult_ChannelReestablishDecodeErrorZ*)(_res_ptr); + LDKCResult_InitFeaturesDecodeErrorZ _res_conv = *(LDKCResult_InitFeaturesDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_ChannelReestablishDecodeErrorZ_free(_res_conv); -} - -static inline uint64_t CResult_ChannelReestablishDecodeErrorZ_clone_ptr(LDKCResult_ChannelReestablishDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ChannelReestablishDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelReestablishDecodeErrorZ), "LDKCResult_ChannelReestablishDecodeErrorZ"); - *ret_conv = CResult_ChannelReestablishDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ChannelReestablishDecodeErrorZ* arg_conv = (LDKCResult_ChannelReestablishDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ChannelReestablishDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ChannelReestablishDecodeErrorZ* orig_conv = (LDKCResult_ChannelReestablishDecodeErrorZ*)(orig & ~1); - LDKCResult_ChannelReestablishDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelReestablishDecodeErrorZ), "LDKCResult_ChannelReestablishDecodeErrorZ"); - *ret_conv = CResult_ChannelReestablishDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; + CResult_InitFeaturesDecodeErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_ok(uint32_t o) { - LDKClosingSigned o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelFeaturesDecodeErrorZ_ok(uint32_t o) { + LDKChannelFeatures o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ClosingSigned_clone(&o_conv); - LDKCResult_ClosingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedDecodeErrorZ), "LDKCResult_ClosingSignedDecodeErrorZ"); - *ret_conv = CResult_ClosingSignedDecodeErrorZ_ok(o_conv); + o_conv = ChannelFeatures_clone(&o_conv); + LDKCResult_ChannelFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelFeaturesDecodeErrorZ), "LDKCResult_ChannelFeaturesDecodeErrorZ"); + *ret_conv = CResult_ChannelFeaturesDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelFeaturesDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_ClosingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedDecodeErrorZ), "LDKCResult_ClosingSignedDecodeErrorZ"); - *ret_conv = CResult_ClosingSignedDecodeErrorZ_err(e_conv); + LDKCResult_ChannelFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelFeaturesDecodeErrorZ), "LDKCResult_ChannelFeaturesDecodeErrorZ"); + *ret_conv = CResult_ChannelFeaturesDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ClosingSignedDecodeErrorZ* o_conv = (LDKCResult_ClosingSignedDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ClosingSignedDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ChannelFeaturesDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ChannelFeaturesDecodeErrorZ* o_conv = (LDKCResult_ChannelFeaturesDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ChannelFeaturesDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ChannelFeaturesDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_ClosingSignedDecodeErrorZ _res_conv = *(LDKCResult_ClosingSignedDecodeErrorZ*)(_res_ptr); + LDKCResult_ChannelFeaturesDecodeErrorZ _res_conv = *(LDKCResult_ChannelFeaturesDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_ClosingSignedDecodeErrorZ_free(_res_conv); -} - -static inline uint64_t CResult_ClosingSignedDecodeErrorZ_clone_ptr(LDKCResult_ClosingSignedDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ClosingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedDecodeErrorZ), "LDKCResult_ClosingSignedDecodeErrorZ"); - *ret_conv = CResult_ClosingSignedDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ClosingSignedDecodeErrorZ* arg_conv = (LDKCResult_ClosingSignedDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ClosingSignedDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ClosingSignedDecodeErrorZ* orig_conv = (LDKCResult_ClosingSignedDecodeErrorZ*)(orig & ~1); - LDKCResult_ClosingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedDecodeErrorZ), "LDKCResult_ClosingSignedDecodeErrorZ"); - *ret_conv = CResult_ClosingSignedDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; + CResult_ChannelFeaturesDecodeErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_ok(uint32_t o) { - LDKClosingSignedFeeRange o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeFeaturesDecodeErrorZ_ok(uint32_t o) { + LDKNodeFeatures o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ClosingSignedFeeRange_clone(&o_conv); - LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ), "LDKCResult_ClosingSignedFeeRangeDecodeErrorZ"); - *ret_conv = CResult_ClosingSignedFeeRangeDecodeErrorZ_ok(o_conv); + o_conv = NodeFeatures_clone(&o_conv); + LDKCResult_NodeFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeFeaturesDecodeErrorZ), "LDKCResult_NodeFeaturesDecodeErrorZ"); + *ret_conv = CResult_NodeFeaturesDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeFeaturesDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ), "LDKCResult_ClosingSignedFeeRangeDecodeErrorZ"); - *ret_conv = CResult_ClosingSignedFeeRangeDecodeErrorZ_err(e_conv); + LDKCResult_NodeFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeFeaturesDecodeErrorZ), "LDKCResult_NodeFeaturesDecodeErrorZ"); + *ret_conv = CResult_NodeFeaturesDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* o_conv = (LDKCResult_ClosingSignedFeeRangeDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ClosingSignedFeeRangeDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_NodeFeaturesDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_NodeFeaturesDecodeErrorZ* o_conv = (LDKCResult_NodeFeaturesDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_NodeFeaturesDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_NodeFeaturesDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_ClosingSignedFeeRangeDecodeErrorZ _res_conv = *(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ*)(_res_ptr); + LDKCResult_NodeFeaturesDecodeErrorZ _res_conv = *(LDKCResult_NodeFeaturesDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_ClosingSignedFeeRangeDecodeErrorZ_free(_res_conv); -} - -static inline uint64_t CResult_ClosingSignedFeeRangeDecodeErrorZ_clone_ptr(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ), "LDKCResult_ClosingSignedFeeRangeDecodeErrorZ"); - *ret_conv = CResult_ClosingSignedFeeRangeDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* arg_conv = (LDKCResult_ClosingSignedFeeRangeDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ClosingSignedFeeRangeDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* orig_conv = (LDKCResult_ClosingSignedFeeRangeDecodeErrorZ*)(orig & ~1); - LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ), "LDKCResult_ClosingSignedFeeRangeDecodeErrorZ"); - *ret_conv = CResult_ClosingSignedFeeRangeDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; + CResult_NodeFeaturesDecodeErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_ok(uint32_t o) { - LDKCommitmentSigned o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceFeaturesDecodeErrorZ_ok(uint32_t o) { + LDKInvoiceFeatures o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = CommitmentSigned_clone(&o_conv); - LDKCResult_CommitmentSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentSignedDecodeErrorZ), "LDKCResult_CommitmentSignedDecodeErrorZ"); - *ret_conv = CResult_CommitmentSignedDecodeErrorZ_ok(o_conv); + o_conv = InvoiceFeatures_clone(&o_conv); + LDKCResult_InvoiceFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceFeaturesDecodeErrorZ), "LDKCResult_InvoiceFeaturesDecodeErrorZ"); + *ret_conv = CResult_InvoiceFeaturesDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceFeaturesDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_CommitmentSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentSignedDecodeErrorZ), "LDKCResult_CommitmentSignedDecodeErrorZ"); - *ret_conv = CResult_CommitmentSignedDecodeErrorZ_err(e_conv); + LDKCResult_InvoiceFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceFeaturesDecodeErrorZ), "LDKCResult_InvoiceFeaturesDecodeErrorZ"); + *ret_conv = CResult_InvoiceFeaturesDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_CommitmentSignedDecodeErrorZ* o_conv = (LDKCResult_CommitmentSignedDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_CommitmentSignedDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_InvoiceFeaturesDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_InvoiceFeaturesDecodeErrorZ* o_conv = (LDKCResult_InvoiceFeaturesDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_InvoiceFeaturesDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_InvoiceFeaturesDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_CommitmentSignedDecodeErrorZ _res_conv = *(LDKCResult_CommitmentSignedDecodeErrorZ*)(_res_ptr); + LDKCResult_InvoiceFeaturesDecodeErrorZ _res_conv = *(LDKCResult_InvoiceFeaturesDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_CommitmentSignedDecodeErrorZ_free(_res_conv); + CResult_InvoiceFeaturesDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_CommitmentSignedDecodeErrorZ_clone_ptr(LDKCResult_CommitmentSignedDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_CommitmentSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentSignedDecodeErrorZ), "LDKCResult_CommitmentSignedDecodeErrorZ"); - *ret_conv = CResult_CommitmentSignedDecodeErrorZ_clone(arg); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTypeFeaturesDecodeErrorZ_ok(uint32_t o) { + LDKChannelTypeFeatures o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = ChannelTypeFeatures_clone(&o_conv); + LDKCResult_ChannelTypeFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTypeFeaturesDecodeErrorZ), "LDKCResult_ChannelTypeFeaturesDecodeErrorZ"); + *ret_conv = CResult_ChannelTypeFeaturesDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_CommitmentSignedDecodeErrorZ* arg_conv = (LDKCResult_CommitmentSignedDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_CommitmentSignedDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; -} -uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_CommitmentSignedDecodeErrorZ* orig_conv = (LDKCResult_CommitmentSignedDecodeErrorZ*)(orig & ~1); - LDKCResult_CommitmentSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentSignedDecodeErrorZ), "LDKCResult_CommitmentSignedDecodeErrorZ"); - *ret_conv = CResult_CommitmentSignedDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTypeFeaturesDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_ChannelTypeFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTypeFeaturesDecodeErrorZ), "LDKCResult_ChannelTypeFeaturesDecodeErrorZ"); + *ret_conv = CResult_ChannelTypeFeaturesDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_ok(uint32_t o) { - LDKFundingCreated o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = FundingCreated_clone(&o_conv); - LDKCResult_FundingCreatedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingCreatedDecodeErrorZ), "LDKCResult_FundingCreatedDecodeErrorZ"); - *ret_conv = CResult_FundingCreatedDecodeErrorZ_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ChannelTypeFeaturesDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ChannelTypeFeaturesDecodeErrorZ* o_conv = (LDKCResult_ChannelTypeFeaturesDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ChannelTypeFeaturesDecodeErrorZ_is_ok(o_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_CResult_ChannelTypeFeaturesDecodeErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_ChannelTypeFeaturesDecodeErrorZ _res_conv = *(LDKCResult_ChannelTypeFeaturesDecodeErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_ChannelTypeFeaturesDecodeErrorZ_free(_res_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKNetAddress o_conv = *(LDKNetAddress*)(o_ptr); + o_conv = NetAddress_clone((LDKNetAddress*)(((uint64_t)o) & ~1)); + LDKCResult_NetAddressDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NetAddressDecodeErrorZ), "LDKCResult_NetAddressDecodeErrorZ"); + *ret_conv = CResult_NetAddressDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_FundingCreatedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingCreatedDecodeErrorZ), "LDKCResult_FundingCreatedDecodeErrorZ"); - *ret_conv = CResult_FundingCreatedDecodeErrorZ_err(e_conv); + LDKCResult_NetAddressDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NetAddressDecodeErrorZ), "LDKCResult_NetAddressDecodeErrorZ"); + *ret_conv = CResult_NetAddressDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_FundingCreatedDecodeErrorZ* o_conv = (LDKCResult_FundingCreatedDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_FundingCreatedDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_NetAddressDecodeErrorZ* o_conv = (LDKCResult_NetAddressDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_NetAddressDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_FundingCreatedDecodeErrorZ _res_conv = *(LDKCResult_FundingCreatedDecodeErrorZ*)(_res_ptr); + LDKCResult_NetAddressDecodeErrorZ _res_conv = *(LDKCResult_NetAddressDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_FundingCreatedDecodeErrorZ_free(_res_conv); + CResult_NetAddressDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_FundingCreatedDecodeErrorZ_clone_ptr(LDKCResult_FundingCreatedDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_FundingCreatedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingCreatedDecodeErrorZ), "LDKCResult_FundingCreatedDecodeErrorZ"); - *ret_conv = CResult_FundingCreatedDecodeErrorZ_clone(arg); +static inline uint64_t CResult_NetAddressDecodeErrorZ_clone_ptr(LDKCResult_NetAddressDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_NetAddressDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NetAddressDecodeErrorZ), "LDKCResult_NetAddressDecodeErrorZ"); + *ret_conv = CResult_NetAddressDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_FundingCreatedDecodeErrorZ* arg_conv = (LDKCResult_FundingCreatedDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_FundingCreatedDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_NetAddressDecodeErrorZ* arg_conv = (LDKCResult_NetAddressDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_NetAddressDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_FundingCreatedDecodeErrorZ* orig_conv = (LDKCResult_FundingCreatedDecodeErrorZ*)(orig & ~1); - LDKCResult_FundingCreatedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingCreatedDecodeErrorZ), "LDKCResult_FundingCreatedDecodeErrorZ"); - *ret_conv = CResult_FundingCreatedDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_NetAddressDecodeErrorZ* orig_conv = (LDKCResult_NetAddressDecodeErrorZ*)(orig & ~1); + LDKCResult_NetAddressDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NetAddressDecodeErrorZ), "LDKCResult_NetAddressDecodeErrorZ"); + *ret_conv = CResult_NetAddressDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_ok(uint32_t o) { - LDKFundingSigned o_conv; +void __attribute__((visibility("default"))) TS_CVec_UpdateAddHTLCZ_free(uint32_tArray _res) { + LDKCVec_UpdateAddHTLCZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKUpdateAddHTLC), "LDKCVec_UpdateAddHTLCZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t p = 0; p < _res_constr.datalen; p++) { + uint32_t _res_conv_15 = _res_vals[p]; + LDKUpdateAddHTLC _res_conv_15_conv; + _res_conv_15_conv.inner = (void*)(_res_conv_15 & (~1)); + _res_conv_15_conv.is_owned = (_res_conv_15 & 1) || (_res_conv_15 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_15_conv); + _res_constr.data[p] = _res_conv_15_conv; + } + CVec_UpdateAddHTLCZ_free(_res_constr); +} + +void __attribute__((visibility("default"))) TS_CVec_UpdateFulfillHTLCZ_free(uint32_tArray _res) { + LDKCVec_UpdateFulfillHTLCZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKUpdateFulfillHTLC), "LDKCVec_UpdateFulfillHTLCZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t t = 0; t < _res_constr.datalen; t++) { + uint32_t _res_conv_19 = _res_vals[t]; + LDKUpdateFulfillHTLC _res_conv_19_conv; + _res_conv_19_conv.inner = (void*)(_res_conv_19 & (~1)); + _res_conv_19_conv.is_owned = (_res_conv_19 & 1) || (_res_conv_19 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_19_conv); + _res_constr.data[t] = _res_conv_19_conv; + } + CVec_UpdateFulfillHTLCZ_free(_res_constr); +} + +void __attribute__((visibility("default"))) TS_CVec_UpdateFailHTLCZ_free(uint32_tArray _res) { + LDKCVec_UpdateFailHTLCZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKUpdateFailHTLC), "LDKCVec_UpdateFailHTLCZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t q = 0; q < _res_constr.datalen; q++) { + uint32_t _res_conv_16 = _res_vals[q]; + LDKUpdateFailHTLC _res_conv_16_conv; + _res_conv_16_conv.inner = (void*)(_res_conv_16 & (~1)); + _res_conv_16_conv.is_owned = (_res_conv_16 & 1) || (_res_conv_16 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_16_conv); + _res_constr.data[q] = _res_conv_16_conv; + } + CVec_UpdateFailHTLCZ_free(_res_constr); +} + +void __attribute__((visibility("default"))) TS_CVec_UpdateFailMalformedHTLCZ_free(uint32_tArray _res) { + LDKCVec_UpdateFailMalformedHTLCZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKUpdateFailMalformedHTLC), "LDKCVec_UpdateFailMalformedHTLCZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t z = 0; z < _res_constr.datalen; z++) { + uint32_t _res_conv_25 = _res_vals[z]; + LDKUpdateFailMalformedHTLC _res_conv_25_conv; + _res_conv_25_conv.inner = (void*)(_res_conv_25 & (~1)); + _res_conv_25_conv.is_owned = (_res_conv_25 & 1) || (_res_conv_25 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_25_conv); + _res_constr.data[z] = _res_conv_25_conv; + } + CVec_UpdateFailMalformedHTLCZ_free(_res_constr); +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_ok(uint32_t o) { + LDKAcceptChannel o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = FundingSigned_clone(&o_conv); - LDKCResult_FundingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingSignedDecodeErrorZ), "LDKCResult_FundingSignedDecodeErrorZ"); - *ret_conv = CResult_FundingSignedDecodeErrorZ_ok(o_conv); + o_conv = AcceptChannel_clone(&o_conv); + LDKCResult_AcceptChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AcceptChannelDecodeErrorZ), "LDKCResult_AcceptChannelDecodeErrorZ"); + *ret_conv = CResult_AcceptChannelDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_FundingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingSignedDecodeErrorZ), "LDKCResult_FundingSignedDecodeErrorZ"); - *ret_conv = CResult_FundingSignedDecodeErrorZ_err(e_conv); + LDKCResult_AcceptChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AcceptChannelDecodeErrorZ), "LDKCResult_AcceptChannelDecodeErrorZ"); + *ret_conv = CResult_AcceptChannelDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_FundingSignedDecodeErrorZ* o_conv = (LDKCResult_FundingSignedDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_FundingSignedDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_AcceptChannelDecodeErrorZ* o_conv = (LDKCResult_AcceptChannelDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_AcceptChannelDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_FundingSignedDecodeErrorZ _res_conv = *(LDKCResult_FundingSignedDecodeErrorZ*)(_res_ptr); + LDKCResult_AcceptChannelDecodeErrorZ _res_conv = *(LDKCResult_AcceptChannelDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_FundingSignedDecodeErrorZ_free(_res_conv); + CResult_AcceptChannelDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_FundingSignedDecodeErrorZ_clone_ptr(LDKCResult_FundingSignedDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_FundingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingSignedDecodeErrorZ), "LDKCResult_FundingSignedDecodeErrorZ"); - *ret_conv = CResult_FundingSignedDecodeErrorZ_clone(arg); +static inline uint64_t CResult_AcceptChannelDecodeErrorZ_clone_ptr(LDKCResult_AcceptChannelDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_AcceptChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AcceptChannelDecodeErrorZ), "LDKCResult_AcceptChannelDecodeErrorZ"); + *ret_conv = CResult_AcceptChannelDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_FundingSignedDecodeErrorZ* arg_conv = (LDKCResult_FundingSignedDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_FundingSignedDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_AcceptChannelDecodeErrorZ* arg_conv = (LDKCResult_AcceptChannelDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_AcceptChannelDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_FundingSignedDecodeErrorZ* orig_conv = (LDKCResult_FundingSignedDecodeErrorZ*)(orig & ~1); - LDKCResult_FundingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingSignedDecodeErrorZ), "LDKCResult_FundingSignedDecodeErrorZ"); - *ret_conv = CResult_FundingSignedDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_AcceptChannelDecodeErrorZ* orig_conv = (LDKCResult_AcceptChannelDecodeErrorZ*)(orig & ~1); + LDKCResult_AcceptChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AcceptChannelDecodeErrorZ), "LDKCResult_AcceptChannelDecodeErrorZ"); + *ret_conv = CResult_AcceptChannelDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_ok(uint32_t o) { - LDKFundingLocked o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_ok(uint32_t o) { + LDKAnnouncementSignatures o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = FundingLocked_clone(&o_conv); - LDKCResult_FundingLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingLockedDecodeErrorZ), "LDKCResult_FundingLockedDecodeErrorZ"); - *ret_conv = CResult_FundingLockedDecodeErrorZ_ok(o_conv); + o_conv = AnnouncementSignatures_clone(&o_conv); + LDKCResult_AnnouncementSignaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AnnouncementSignaturesDecodeErrorZ), "LDKCResult_AnnouncementSignaturesDecodeErrorZ"); + *ret_conv = CResult_AnnouncementSignaturesDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_FundingLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingLockedDecodeErrorZ), "LDKCResult_FundingLockedDecodeErrorZ"); - *ret_conv = CResult_FundingLockedDecodeErrorZ_err(e_conv); + LDKCResult_AnnouncementSignaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AnnouncementSignaturesDecodeErrorZ), "LDKCResult_AnnouncementSignaturesDecodeErrorZ"); + *ret_conv = CResult_AnnouncementSignaturesDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_FundingLockedDecodeErrorZ* o_conv = (LDKCResult_FundingLockedDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_FundingLockedDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_AnnouncementSignaturesDecodeErrorZ* o_conv = (LDKCResult_AnnouncementSignaturesDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_AnnouncementSignaturesDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_FundingLockedDecodeErrorZ _res_conv = *(LDKCResult_FundingLockedDecodeErrorZ*)(_res_ptr); + LDKCResult_AnnouncementSignaturesDecodeErrorZ _res_conv = *(LDKCResult_AnnouncementSignaturesDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_FundingLockedDecodeErrorZ_free(_res_conv); + CResult_AnnouncementSignaturesDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_FundingLockedDecodeErrorZ_clone_ptr(LDKCResult_FundingLockedDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_FundingLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingLockedDecodeErrorZ), "LDKCResult_FundingLockedDecodeErrorZ"); - *ret_conv = CResult_FundingLockedDecodeErrorZ_clone(arg); +static inline uint64_t CResult_AnnouncementSignaturesDecodeErrorZ_clone_ptr(LDKCResult_AnnouncementSignaturesDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_AnnouncementSignaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AnnouncementSignaturesDecodeErrorZ), "LDKCResult_AnnouncementSignaturesDecodeErrorZ"); + *ret_conv = CResult_AnnouncementSignaturesDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_FundingLockedDecodeErrorZ* arg_conv = (LDKCResult_FundingLockedDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_FundingLockedDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_AnnouncementSignaturesDecodeErrorZ* arg_conv = (LDKCResult_AnnouncementSignaturesDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_AnnouncementSignaturesDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_FundingLockedDecodeErrorZ* orig_conv = (LDKCResult_FundingLockedDecodeErrorZ*)(orig & ~1); - LDKCResult_FundingLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingLockedDecodeErrorZ), "LDKCResult_FundingLockedDecodeErrorZ"); - *ret_conv = CResult_FundingLockedDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_AnnouncementSignaturesDecodeErrorZ* orig_conv = (LDKCResult_AnnouncementSignaturesDecodeErrorZ*)(orig & ~1); + LDKCResult_AnnouncementSignaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AnnouncementSignaturesDecodeErrorZ), "LDKCResult_AnnouncementSignaturesDecodeErrorZ"); + *ret_conv = CResult_AnnouncementSignaturesDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_ok(uint32_t o) { - LDKInit o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_ok(uint32_t o) { + LDKChannelReestablish o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = Init_clone(&o_conv); - LDKCResult_InitDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitDecodeErrorZ), "LDKCResult_InitDecodeErrorZ"); - *ret_conv = CResult_InitDecodeErrorZ_ok(o_conv); + o_conv = ChannelReestablish_clone(&o_conv); + LDKCResult_ChannelReestablishDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelReestablishDecodeErrorZ), "LDKCResult_ChannelReestablishDecodeErrorZ"); + *ret_conv = CResult_ChannelReestablishDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_InitDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitDecodeErrorZ), "LDKCResult_InitDecodeErrorZ"); - *ret_conv = CResult_InitDecodeErrorZ_err(e_conv); + LDKCResult_ChannelReestablishDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelReestablishDecodeErrorZ), "LDKCResult_ChannelReestablishDecodeErrorZ"); + *ret_conv = CResult_ChannelReestablishDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_InitDecodeErrorZ* o_conv = (LDKCResult_InitDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_InitDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ChannelReestablishDecodeErrorZ* o_conv = (LDKCResult_ChannelReestablishDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ChannelReestablishDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_InitDecodeErrorZ _res_conv = *(LDKCResult_InitDecodeErrorZ*)(_res_ptr); + LDKCResult_ChannelReestablishDecodeErrorZ _res_conv = *(LDKCResult_ChannelReestablishDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_InitDecodeErrorZ_free(_res_conv); + CResult_ChannelReestablishDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_InitDecodeErrorZ_clone_ptr(LDKCResult_InitDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_InitDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitDecodeErrorZ), "LDKCResult_InitDecodeErrorZ"); - *ret_conv = CResult_InitDecodeErrorZ_clone(arg); +static inline uint64_t CResult_ChannelReestablishDecodeErrorZ_clone_ptr(LDKCResult_ChannelReestablishDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ChannelReestablishDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelReestablishDecodeErrorZ), "LDKCResult_ChannelReestablishDecodeErrorZ"); + *ret_conv = CResult_ChannelReestablishDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_InitDecodeErrorZ* arg_conv = (LDKCResult_InitDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_InitDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ChannelReestablishDecodeErrorZ* arg_conv = (LDKCResult_ChannelReestablishDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ChannelReestablishDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_InitDecodeErrorZ* orig_conv = (LDKCResult_InitDecodeErrorZ*)(orig & ~1); - LDKCResult_InitDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitDecodeErrorZ), "LDKCResult_InitDecodeErrorZ"); - *ret_conv = CResult_InitDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ChannelReestablishDecodeErrorZ* orig_conv = (LDKCResult_ChannelReestablishDecodeErrorZ*)(orig & ~1); + LDKCResult_ChannelReestablishDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelReestablishDecodeErrorZ), "LDKCResult_ChannelReestablishDecodeErrorZ"); + *ret_conv = CResult_ChannelReestablishDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_ok(uint32_t o) { - LDKOpenChannel o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_ok(uint32_t o) { + LDKClosingSigned o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = OpenChannel_clone(&o_conv); - LDKCResult_OpenChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OpenChannelDecodeErrorZ), "LDKCResult_OpenChannelDecodeErrorZ"); - *ret_conv = CResult_OpenChannelDecodeErrorZ_ok(o_conv); + o_conv = ClosingSigned_clone(&o_conv); + LDKCResult_ClosingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedDecodeErrorZ), "LDKCResult_ClosingSignedDecodeErrorZ"); + *ret_conv = CResult_ClosingSignedDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_OpenChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OpenChannelDecodeErrorZ), "LDKCResult_OpenChannelDecodeErrorZ"); - *ret_conv = CResult_OpenChannelDecodeErrorZ_err(e_conv); + LDKCResult_ClosingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedDecodeErrorZ), "LDKCResult_ClosingSignedDecodeErrorZ"); + *ret_conv = CResult_ClosingSignedDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_OpenChannelDecodeErrorZ* o_conv = (LDKCResult_OpenChannelDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_OpenChannelDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ClosingSignedDecodeErrorZ* o_conv = (LDKCResult_ClosingSignedDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ClosingSignedDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_OpenChannelDecodeErrorZ _res_conv = *(LDKCResult_OpenChannelDecodeErrorZ*)(_res_ptr); + LDKCResult_ClosingSignedDecodeErrorZ _res_conv = *(LDKCResult_ClosingSignedDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_OpenChannelDecodeErrorZ_free(_res_conv); + CResult_ClosingSignedDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_OpenChannelDecodeErrorZ_clone_ptr(LDKCResult_OpenChannelDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_OpenChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OpenChannelDecodeErrorZ), "LDKCResult_OpenChannelDecodeErrorZ"); - *ret_conv = CResult_OpenChannelDecodeErrorZ_clone(arg); +static inline uint64_t CResult_ClosingSignedDecodeErrorZ_clone_ptr(LDKCResult_ClosingSignedDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ClosingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedDecodeErrorZ), "LDKCResult_ClosingSignedDecodeErrorZ"); + *ret_conv = CResult_ClosingSignedDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_OpenChannelDecodeErrorZ* arg_conv = (LDKCResult_OpenChannelDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_OpenChannelDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ClosingSignedDecodeErrorZ* arg_conv = (LDKCResult_ClosingSignedDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ClosingSignedDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_OpenChannelDecodeErrorZ* orig_conv = (LDKCResult_OpenChannelDecodeErrorZ*)(orig & ~1); - LDKCResult_OpenChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OpenChannelDecodeErrorZ), "LDKCResult_OpenChannelDecodeErrorZ"); - *ret_conv = CResult_OpenChannelDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ClosingSignedDecodeErrorZ* orig_conv = (LDKCResult_ClosingSignedDecodeErrorZ*)(orig & ~1); + LDKCResult_ClosingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedDecodeErrorZ), "LDKCResult_ClosingSignedDecodeErrorZ"); + *ret_conv = CResult_ClosingSignedDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_ok(uint32_t o) { - LDKRevokeAndACK o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_ok(uint32_t o) { + LDKClosingSignedFeeRange o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = RevokeAndACK_clone(&o_conv); - LDKCResult_RevokeAndACKDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevokeAndACKDecodeErrorZ), "LDKCResult_RevokeAndACKDecodeErrorZ"); - *ret_conv = CResult_RevokeAndACKDecodeErrorZ_ok(o_conv); + o_conv = ClosingSignedFeeRange_clone(&o_conv); + LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ), "LDKCResult_ClosingSignedFeeRangeDecodeErrorZ"); + *ret_conv = CResult_ClosingSignedFeeRangeDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_RevokeAndACKDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevokeAndACKDecodeErrorZ), "LDKCResult_RevokeAndACKDecodeErrorZ"); - *ret_conv = CResult_RevokeAndACKDecodeErrorZ_err(e_conv); + LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ), "LDKCResult_ClosingSignedFeeRangeDecodeErrorZ"); + *ret_conv = CResult_ClosingSignedFeeRangeDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_RevokeAndACKDecodeErrorZ* o_conv = (LDKCResult_RevokeAndACKDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_RevokeAndACKDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* o_conv = (LDKCResult_ClosingSignedFeeRangeDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ClosingSignedFeeRangeDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_RevokeAndACKDecodeErrorZ _res_conv = *(LDKCResult_RevokeAndACKDecodeErrorZ*)(_res_ptr); + LDKCResult_ClosingSignedFeeRangeDecodeErrorZ _res_conv = *(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_RevokeAndACKDecodeErrorZ_free(_res_conv); + CResult_ClosingSignedFeeRangeDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_RevokeAndACKDecodeErrorZ_clone_ptr(LDKCResult_RevokeAndACKDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_RevokeAndACKDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevokeAndACKDecodeErrorZ), "LDKCResult_RevokeAndACKDecodeErrorZ"); - *ret_conv = CResult_RevokeAndACKDecodeErrorZ_clone(arg); +static inline uint64_t CResult_ClosingSignedFeeRangeDecodeErrorZ_clone_ptr(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ), "LDKCResult_ClosingSignedFeeRangeDecodeErrorZ"); + *ret_conv = CResult_ClosingSignedFeeRangeDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_RevokeAndACKDecodeErrorZ* arg_conv = (LDKCResult_RevokeAndACKDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_RevokeAndACKDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* arg_conv = (LDKCResult_ClosingSignedFeeRangeDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ClosingSignedFeeRangeDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_RevokeAndACKDecodeErrorZ* orig_conv = (LDKCResult_RevokeAndACKDecodeErrorZ*)(orig & ~1); - LDKCResult_RevokeAndACKDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevokeAndACKDecodeErrorZ), "LDKCResult_RevokeAndACKDecodeErrorZ"); - *ret_conv = CResult_RevokeAndACKDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* orig_conv = (LDKCResult_ClosingSignedFeeRangeDecodeErrorZ*)(orig & ~1); + LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ), "LDKCResult_ClosingSignedFeeRangeDecodeErrorZ"); + *ret_conv = CResult_ClosingSignedFeeRangeDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_ok(uint32_t o) { - LDKShutdown o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_ok(uint32_t o) { + LDKCommitmentSigned o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = Shutdown_clone(&o_conv); - LDKCResult_ShutdownDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownDecodeErrorZ), "LDKCResult_ShutdownDecodeErrorZ"); - *ret_conv = CResult_ShutdownDecodeErrorZ_ok(o_conv); + o_conv = CommitmentSigned_clone(&o_conv); + LDKCResult_CommitmentSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentSignedDecodeErrorZ), "LDKCResult_CommitmentSignedDecodeErrorZ"); + *ret_conv = CResult_CommitmentSignedDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_ShutdownDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownDecodeErrorZ), "LDKCResult_ShutdownDecodeErrorZ"); - *ret_conv = CResult_ShutdownDecodeErrorZ_err(e_conv); + LDKCResult_CommitmentSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentSignedDecodeErrorZ), "LDKCResult_CommitmentSignedDecodeErrorZ"); + *ret_conv = CResult_CommitmentSignedDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ShutdownDecodeErrorZ* o_conv = (LDKCResult_ShutdownDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ShutdownDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_CommitmentSignedDecodeErrorZ* o_conv = (LDKCResult_CommitmentSignedDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_CommitmentSignedDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_ShutdownDecodeErrorZ _res_conv = *(LDKCResult_ShutdownDecodeErrorZ*)(_res_ptr); + LDKCResult_CommitmentSignedDecodeErrorZ _res_conv = *(LDKCResult_CommitmentSignedDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_ShutdownDecodeErrorZ_free(_res_conv); + CResult_CommitmentSignedDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_ShutdownDecodeErrorZ_clone_ptr(LDKCResult_ShutdownDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ShutdownDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownDecodeErrorZ), "LDKCResult_ShutdownDecodeErrorZ"); - *ret_conv = CResult_ShutdownDecodeErrorZ_clone(arg); +static inline uint64_t CResult_CommitmentSignedDecodeErrorZ_clone_ptr(LDKCResult_CommitmentSignedDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_CommitmentSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentSignedDecodeErrorZ), "LDKCResult_CommitmentSignedDecodeErrorZ"); + *ret_conv = CResult_CommitmentSignedDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ShutdownDecodeErrorZ* arg_conv = (LDKCResult_ShutdownDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ShutdownDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_CommitmentSignedDecodeErrorZ* arg_conv = (LDKCResult_CommitmentSignedDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_CommitmentSignedDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ShutdownDecodeErrorZ* orig_conv = (LDKCResult_ShutdownDecodeErrorZ*)(orig & ~1); - LDKCResult_ShutdownDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownDecodeErrorZ), "LDKCResult_ShutdownDecodeErrorZ"); - *ret_conv = CResult_ShutdownDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_CommitmentSignedDecodeErrorZ* orig_conv = (LDKCResult_CommitmentSignedDecodeErrorZ*)(orig & ~1); + LDKCResult_CommitmentSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentSignedDecodeErrorZ), "LDKCResult_CommitmentSignedDecodeErrorZ"); + *ret_conv = CResult_CommitmentSignedDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_ok(uint32_t o) { - LDKUpdateFailHTLC o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_ok(uint32_t o) { + LDKFundingCreated o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = UpdateFailHTLC_clone(&o_conv); - LDKCResult_UpdateFailHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailHTLCDecodeErrorZ), "LDKCResult_UpdateFailHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateFailHTLCDecodeErrorZ_ok(o_conv); + o_conv = FundingCreated_clone(&o_conv); + LDKCResult_FundingCreatedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingCreatedDecodeErrorZ), "LDKCResult_FundingCreatedDecodeErrorZ"); + *ret_conv = CResult_FundingCreatedDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_UpdateFailHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailHTLCDecodeErrorZ), "LDKCResult_UpdateFailHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateFailHTLCDecodeErrorZ_err(e_conv); + LDKCResult_FundingCreatedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingCreatedDecodeErrorZ), "LDKCResult_FundingCreatedDecodeErrorZ"); + *ret_conv = CResult_FundingCreatedDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_UpdateFailHTLCDecodeErrorZ* o_conv = (LDKCResult_UpdateFailHTLCDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_UpdateFailHTLCDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_FundingCreatedDecodeErrorZ* o_conv = (LDKCResult_FundingCreatedDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_FundingCreatedDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_UpdateFailHTLCDecodeErrorZ _res_conv = *(LDKCResult_UpdateFailHTLCDecodeErrorZ*)(_res_ptr); + LDKCResult_FundingCreatedDecodeErrorZ _res_conv = *(LDKCResult_FundingCreatedDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_UpdateFailHTLCDecodeErrorZ_free(_res_conv); + CResult_FundingCreatedDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_UpdateFailHTLCDecodeErrorZ_clone_ptr(LDKCResult_UpdateFailHTLCDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_UpdateFailHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailHTLCDecodeErrorZ), "LDKCResult_UpdateFailHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateFailHTLCDecodeErrorZ_clone(arg); +static inline uint64_t CResult_FundingCreatedDecodeErrorZ_clone_ptr(LDKCResult_FundingCreatedDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_FundingCreatedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingCreatedDecodeErrorZ), "LDKCResult_FundingCreatedDecodeErrorZ"); + *ret_conv = CResult_FundingCreatedDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_UpdateFailHTLCDecodeErrorZ* arg_conv = (LDKCResult_UpdateFailHTLCDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_UpdateFailHTLCDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_FundingCreatedDecodeErrorZ* arg_conv = (LDKCResult_FundingCreatedDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_FundingCreatedDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_UpdateFailHTLCDecodeErrorZ* orig_conv = (LDKCResult_UpdateFailHTLCDecodeErrorZ*)(orig & ~1); - LDKCResult_UpdateFailHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailHTLCDecodeErrorZ), "LDKCResult_UpdateFailHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateFailHTLCDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_FundingCreatedDecodeErrorZ* orig_conv = (LDKCResult_FundingCreatedDecodeErrorZ*)(orig & ~1); + LDKCResult_FundingCreatedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingCreatedDecodeErrorZ), "LDKCResult_FundingCreatedDecodeErrorZ"); + *ret_conv = CResult_FundingCreatedDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_ok(uint32_t o) { - LDKUpdateFailMalformedHTLC o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_ok(uint32_t o) { + LDKFundingSigned o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = UpdateFailMalformedHTLC_clone(&o_conv); - LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ), "LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateFailMalformedHTLCDecodeErrorZ_ok(o_conv); + o_conv = FundingSigned_clone(&o_conv); + LDKCResult_FundingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingSignedDecodeErrorZ), "LDKCResult_FundingSignedDecodeErrorZ"); + *ret_conv = CResult_FundingSignedDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ), "LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateFailMalformedHTLCDecodeErrorZ_err(e_conv); + LDKCResult_FundingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingSignedDecodeErrorZ), "LDKCResult_FundingSignedDecodeErrorZ"); + *ret_conv = CResult_FundingSignedDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* o_conv = (LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_UpdateFailMalformedHTLCDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_FundingSignedDecodeErrorZ* o_conv = (LDKCResult_FundingSignedDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_FundingSignedDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ _res_conv = *(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ*)(_res_ptr); + LDKCResult_FundingSignedDecodeErrorZ _res_conv = *(LDKCResult_FundingSignedDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_UpdateFailMalformedHTLCDecodeErrorZ_free(_res_conv); + CResult_FundingSignedDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone_ptr(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ), "LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone(arg); +static inline uint64_t CResult_FundingSignedDecodeErrorZ_clone_ptr(LDKCResult_FundingSignedDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_FundingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingSignedDecodeErrorZ), "LDKCResult_FundingSignedDecodeErrorZ"); + *ret_conv = CResult_FundingSignedDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* arg_conv = (LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_FundingSignedDecodeErrorZ* arg_conv = (LDKCResult_FundingSignedDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_FundingSignedDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* orig_conv = (LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ*)(orig & ~1); - LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ), "LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_FundingSignedDecodeErrorZ* orig_conv = (LDKCResult_FundingSignedDecodeErrorZ*)(orig & ~1); + LDKCResult_FundingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingSignedDecodeErrorZ), "LDKCResult_FundingSignedDecodeErrorZ"); + *ret_conv = CResult_FundingSignedDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_ok(uint32_t o) { - LDKUpdateFee o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_ok(uint32_t o) { + LDKFundingLocked o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = UpdateFee_clone(&o_conv); - LDKCResult_UpdateFeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFeeDecodeErrorZ), "LDKCResult_UpdateFeeDecodeErrorZ"); - *ret_conv = CResult_UpdateFeeDecodeErrorZ_ok(o_conv); + o_conv = FundingLocked_clone(&o_conv); + LDKCResult_FundingLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingLockedDecodeErrorZ), "LDKCResult_FundingLockedDecodeErrorZ"); + *ret_conv = CResult_FundingLockedDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_UpdateFeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFeeDecodeErrorZ), "LDKCResult_UpdateFeeDecodeErrorZ"); - *ret_conv = CResult_UpdateFeeDecodeErrorZ_err(e_conv); + LDKCResult_FundingLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingLockedDecodeErrorZ), "LDKCResult_FundingLockedDecodeErrorZ"); + *ret_conv = CResult_FundingLockedDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_UpdateFeeDecodeErrorZ* o_conv = (LDKCResult_UpdateFeeDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_UpdateFeeDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_FundingLockedDecodeErrorZ* o_conv = (LDKCResult_FundingLockedDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_FundingLockedDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_UpdateFeeDecodeErrorZ _res_conv = *(LDKCResult_UpdateFeeDecodeErrorZ*)(_res_ptr); + LDKCResult_FundingLockedDecodeErrorZ _res_conv = *(LDKCResult_FundingLockedDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_UpdateFeeDecodeErrorZ_free(_res_conv); + CResult_FundingLockedDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_UpdateFeeDecodeErrorZ_clone_ptr(LDKCResult_UpdateFeeDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_UpdateFeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFeeDecodeErrorZ), "LDKCResult_UpdateFeeDecodeErrorZ"); - *ret_conv = CResult_UpdateFeeDecodeErrorZ_clone(arg); +static inline uint64_t CResult_FundingLockedDecodeErrorZ_clone_ptr(LDKCResult_FundingLockedDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_FundingLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingLockedDecodeErrorZ), "LDKCResult_FundingLockedDecodeErrorZ"); + *ret_conv = CResult_FundingLockedDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_UpdateFeeDecodeErrorZ* arg_conv = (LDKCResult_UpdateFeeDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_UpdateFeeDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_FundingLockedDecodeErrorZ* arg_conv = (LDKCResult_FundingLockedDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_FundingLockedDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_UpdateFeeDecodeErrorZ* orig_conv = (LDKCResult_UpdateFeeDecodeErrorZ*)(orig & ~1); - LDKCResult_UpdateFeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFeeDecodeErrorZ), "LDKCResult_UpdateFeeDecodeErrorZ"); - *ret_conv = CResult_UpdateFeeDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_FundingLockedDecodeErrorZ* orig_conv = (LDKCResult_FundingLockedDecodeErrorZ*)(orig & ~1); + LDKCResult_FundingLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingLockedDecodeErrorZ), "LDKCResult_FundingLockedDecodeErrorZ"); + *ret_conv = CResult_FundingLockedDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_ok(uint32_t o) { - LDKUpdateFulfillHTLC o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_ok(uint32_t o) { + LDKInit o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = UpdateFulfillHTLC_clone(&o_conv); - LDKCResult_UpdateFulfillHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFulfillHTLCDecodeErrorZ), "LDKCResult_UpdateFulfillHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateFulfillHTLCDecodeErrorZ_ok(o_conv); + o_conv = Init_clone(&o_conv); + LDKCResult_InitDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitDecodeErrorZ), "LDKCResult_InitDecodeErrorZ"); + *ret_conv = CResult_InitDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_UpdateFulfillHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFulfillHTLCDecodeErrorZ), "LDKCResult_UpdateFulfillHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateFulfillHTLCDecodeErrorZ_err(e_conv); + LDKCResult_InitDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitDecodeErrorZ), "LDKCResult_InitDecodeErrorZ"); + *ret_conv = CResult_InitDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_UpdateFulfillHTLCDecodeErrorZ* o_conv = (LDKCResult_UpdateFulfillHTLCDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_UpdateFulfillHTLCDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_InitDecodeErrorZ* o_conv = (LDKCResult_InitDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_InitDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_UpdateFulfillHTLCDecodeErrorZ _res_conv = *(LDKCResult_UpdateFulfillHTLCDecodeErrorZ*)(_res_ptr); + LDKCResult_InitDecodeErrorZ _res_conv = *(LDKCResult_InitDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_UpdateFulfillHTLCDecodeErrorZ_free(_res_conv); + CResult_InitDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_UpdateFulfillHTLCDecodeErrorZ_clone_ptr(LDKCResult_UpdateFulfillHTLCDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_UpdateFulfillHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFulfillHTLCDecodeErrorZ), "LDKCResult_UpdateFulfillHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateFulfillHTLCDecodeErrorZ_clone(arg); +static inline uint64_t CResult_InitDecodeErrorZ_clone_ptr(LDKCResult_InitDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_InitDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitDecodeErrorZ), "LDKCResult_InitDecodeErrorZ"); + *ret_conv = CResult_InitDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_UpdateFulfillHTLCDecodeErrorZ* arg_conv = (LDKCResult_UpdateFulfillHTLCDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_UpdateFulfillHTLCDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_InitDecodeErrorZ* arg_conv = (LDKCResult_InitDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_InitDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_UpdateFulfillHTLCDecodeErrorZ* orig_conv = (LDKCResult_UpdateFulfillHTLCDecodeErrorZ*)(orig & ~1); - LDKCResult_UpdateFulfillHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFulfillHTLCDecodeErrorZ), "LDKCResult_UpdateFulfillHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateFulfillHTLCDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_InitDecodeErrorZ* orig_conv = (LDKCResult_InitDecodeErrorZ*)(orig & ~1); + LDKCResult_InitDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitDecodeErrorZ), "LDKCResult_InitDecodeErrorZ"); + *ret_conv = CResult_InitDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_ok(uint32_t o) { - LDKUpdateAddHTLC o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_ok(uint32_t o) { + LDKOpenChannel o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = UpdateAddHTLC_clone(&o_conv); - LDKCResult_UpdateAddHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateAddHTLCDecodeErrorZ), "LDKCResult_UpdateAddHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateAddHTLCDecodeErrorZ_ok(o_conv); + o_conv = OpenChannel_clone(&o_conv); + LDKCResult_OpenChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OpenChannelDecodeErrorZ), "LDKCResult_OpenChannelDecodeErrorZ"); + *ret_conv = CResult_OpenChannelDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_UpdateAddHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateAddHTLCDecodeErrorZ), "LDKCResult_UpdateAddHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateAddHTLCDecodeErrorZ_err(e_conv); + LDKCResult_OpenChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OpenChannelDecodeErrorZ), "LDKCResult_OpenChannelDecodeErrorZ"); + *ret_conv = CResult_OpenChannelDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_UpdateAddHTLCDecodeErrorZ* o_conv = (LDKCResult_UpdateAddHTLCDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_UpdateAddHTLCDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_OpenChannelDecodeErrorZ* o_conv = (LDKCResult_OpenChannelDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_OpenChannelDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_UpdateAddHTLCDecodeErrorZ _res_conv = *(LDKCResult_UpdateAddHTLCDecodeErrorZ*)(_res_ptr); + LDKCResult_OpenChannelDecodeErrorZ _res_conv = *(LDKCResult_OpenChannelDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_UpdateAddHTLCDecodeErrorZ_free(_res_conv); + CResult_OpenChannelDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_UpdateAddHTLCDecodeErrorZ_clone_ptr(LDKCResult_UpdateAddHTLCDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_UpdateAddHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateAddHTLCDecodeErrorZ), "LDKCResult_UpdateAddHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateAddHTLCDecodeErrorZ_clone(arg); +static inline uint64_t CResult_OpenChannelDecodeErrorZ_clone_ptr(LDKCResult_OpenChannelDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_OpenChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OpenChannelDecodeErrorZ), "LDKCResult_OpenChannelDecodeErrorZ"); + *ret_conv = CResult_OpenChannelDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_UpdateAddHTLCDecodeErrorZ* arg_conv = (LDKCResult_UpdateAddHTLCDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_UpdateAddHTLCDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_OpenChannelDecodeErrorZ* arg_conv = (LDKCResult_OpenChannelDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_OpenChannelDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_UpdateAddHTLCDecodeErrorZ* orig_conv = (LDKCResult_UpdateAddHTLCDecodeErrorZ*)(orig & ~1); - LDKCResult_UpdateAddHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateAddHTLCDecodeErrorZ), "LDKCResult_UpdateAddHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateAddHTLCDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_OpenChannelDecodeErrorZ* orig_conv = (LDKCResult_OpenChannelDecodeErrorZ*)(orig & ~1); + LDKCResult_OpenChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OpenChannelDecodeErrorZ), "LDKCResult_OpenChannelDecodeErrorZ"); + *ret_conv = CResult_OpenChannelDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_ok(uint32_t o) { - LDKPing o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_ok(uint32_t o) { + LDKRevokeAndACK o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = Ping_clone(&o_conv); - LDKCResult_PingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PingDecodeErrorZ), "LDKCResult_PingDecodeErrorZ"); - *ret_conv = CResult_PingDecodeErrorZ_ok(o_conv); + o_conv = RevokeAndACK_clone(&o_conv); + LDKCResult_RevokeAndACKDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevokeAndACKDecodeErrorZ), "LDKCResult_RevokeAndACKDecodeErrorZ"); + *ret_conv = CResult_RevokeAndACKDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_PingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PingDecodeErrorZ), "LDKCResult_PingDecodeErrorZ"); - *ret_conv = CResult_PingDecodeErrorZ_err(e_conv); + LDKCResult_RevokeAndACKDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevokeAndACKDecodeErrorZ), "LDKCResult_RevokeAndACKDecodeErrorZ"); + *ret_conv = CResult_RevokeAndACKDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_PingDecodeErrorZ* o_conv = (LDKCResult_PingDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_PingDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_RevokeAndACKDecodeErrorZ* o_conv = (LDKCResult_RevokeAndACKDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_RevokeAndACKDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_PingDecodeErrorZ _res_conv = *(LDKCResult_PingDecodeErrorZ*)(_res_ptr); + LDKCResult_RevokeAndACKDecodeErrorZ _res_conv = *(LDKCResult_RevokeAndACKDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_PingDecodeErrorZ_free(_res_conv); + CResult_RevokeAndACKDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_PingDecodeErrorZ_clone_ptr(LDKCResult_PingDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_PingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PingDecodeErrorZ), "LDKCResult_PingDecodeErrorZ"); - *ret_conv = CResult_PingDecodeErrorZ_clone(arg); +static inline uint64_t CResult_RevokeAndACKDecodeErrorZ_clone_ptr(LDKCResult_RevokeAndACKDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_RevokeAndACKDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevokeAndACKDecodeErrorZ), "LDKCResult_RevokeAndACKDecodeErrorZ"); + *ret_conv = CResult_RevokeAndACKDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_PingDecodeErrorZ* arg_conv = (LDKCResult_PingDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_PingDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_RevokeAndACKDecodeErrorZ* arg_conv = (LDKCResult_RevokeAndACKDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_RevokeAndACKDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_PingDecodeErrorZ* orig_conv = (LDKCResult_PingDecodeErrorZ*)(orig & ~1); - LDKCResult_PingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PingDecodeErrorZ), "LDKCResult_PingDecodeErrorZ"); - *ret_conv = CResult_PingDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_RevokeAndACKDecodeErrorZ* orig_conv = (LDKCResult_RevokeAndACKDecodeErrorZ*)(orig & ~1); + LDKCResult_RevokeAndACKDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevokeAndACKDecodeErrorZ), "LDKCResult_RevokeAndACKDecodeErrorZ"); + *ret_conv = CResult_RevokeAndACKDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_ok(uint32_t o) { - LDKPong o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_ok(uint32_t o) { + LDKShutdown o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = Pong_clone(&o_conv); - LDKCResult_PongDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PongDecodeErrorZ), "LDKCResult_PongDecodeErrorZ"); - *ret_conv = CResult_PongDecodeErrorZ_ok(o_conv); + o_conv = Shutdown_clone(&o_conv); + LDKCResult_ShutdownDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownDecodeErrorZ), "LDKCResult_ShutdownDecodeErrorZ"); + *ret_conv = CResult_ShutdownDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_PongDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PongDecodeErrorZ), "LDKCResult_PongDecodeErrorZ"); - *ret_conv = CResult_PongDecodeErrorZ_err(e_conv); + LDKCResult_ShutdownDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownDecodeErrorZ), "LDKCResult_ShutdownDecodeErrorZ"); + *ret_conv = CResult_ShutdownDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_PongDecodeErrorZ* o_conv = (LDKCResult_PongDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_PongDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ShutdownDecodeErrorZ* o_conv = (LDKCResult_ShutdownDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ShutdownDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_PongDecodeErrorZ _res_conv = *(LDKCResult_PongDecodeErrorZ*)(_res_ptr); + LDKCResult_ShutdownDecodeErrorZ _res_conv = *(LDKCResult_ShutdownDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_PongDecodeErrorZ_free(_res_conv); + CResult_ShutdownDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_PongDecodeErrorZ_clone_ptr(LDKCResult_PongDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_PongDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PongDecodeErrorZ), "LDKCResult_PongDecodeErrorZ"); - *ret_conv = CResult_PongDecodeErrorZ_clone(arg); +static inline uint64_t CResult_ShutdownDecodeErrorZ_clone_ptr(LDKCResult_ShutdownDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ShutdownDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownDecodeErrorZ), "LDKCResult_ShutdownDecodeErrorZ"); + *ret_conv = CResult_ShutdownDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_PongDecodeErrorZ* arg_conv = (LDKCResult_PongDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_PongDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ShutdownDecodeErrorZ* arg_conv = (LDKCResult_ShutdownDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ShutdownDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_PongDecodeErrorZ* orig_conv = (LDKCResult_PongDecodeErrorZ*)(orig & ~1); - LDKCResult_PongDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PongDecodeErrorZ), "LDKCResult_PongDecodeErrorZ"); - *ret_conv = CResult_PongDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ShutdownDecodeErrorZ* orig_conv = (LDKCResult_ShutdownDecodeErrorZ*)(orig & ~1); + LDKCResult_ShutdownDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownDecodeErrorZ), "LDKCResult_ShutdownDecodeErrorZ"); + *ret_conv = CResult_ShutdownDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_ok(uint32_t o) { - LDKUnsignedChannelAnnouncement o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_ok(uint32_t o) { + LDKUpdateFailHTLC o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = UnsignedChannelAnnouncement_clone(&o_conv); - LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ), "LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ"); - *ret_conv = CResult_UnsignedChannelAnnouncementDecodeErrorZ_ok(o_conv); + o_conv = UpdateFailHTLC_clone(&o_conv); + LDKCResult_UpdateFailHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailHTLCDecodeErrorZ), "LDKCResult_UpdateFailHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateFailHTLCDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ), "LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ"); - *ret_conv = CResult_UnsignedChannelAnnouncementDecodeErrorZ_err(e_conv); + LDKCResult_UpdateFailHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailHTLCDecodeErrorZ), "LDKCResult_UpdateFailHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateFailHTLCDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* o_conv = (LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_UnsignedChannelAnnouncementDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_UpdateFailHTLCDecodeErrorZ* o_conv = (LDKCResult_UpdateFailHTLCDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_UpdateFailHTLCDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ _res_conv = *(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ*)(_res_ptr); + LDKCResult_UpdateFailHTLCDecodeErrorZ _res_conv = *(LDKCResult_UpdateFailHTLCDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_UnsignedChannelAnnouncementDecodeErrorZ_free(_res_conv); + CResult_UpdateFailHTLCDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone_ptr(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ), "LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ"); - *ret_conv = CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone(arg); +static inline uint64_t CResult_UpdateFailHTLCDecodeErrorZ_clone_ptr(LDKCResult_UpdateFailHTLCDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_UpdateFailHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailHTLCDecodeErrorZ), "LDKCResult_UpdateFailHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateFailHTLCDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* arg_conv = (LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_UpdateFailHTLCDecodeErrorZ* arg_conv = (LDKCResult_UpdateFailHTLCDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_UpdateFailHTLCDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* orig_conv = (LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ*)(orig & ~1); - LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ), "LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ"); - *ret_conv = CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_UpdateFailHTLCDecodeErrorZ* orig_conv = (LDKCResult_UpdateFailHTLCDecodeErrorZ*)(orig & ~1); + LDKCResult_UpdateFailHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailHTLCDecodeErrorZ), "LDKCResult_UpdateFailHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateFailHTLCDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_ok(uint32_t o) { - LDKChannelAnnouncement o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_ok(uint32_t o) { + LDKUpdateFailMalformedHTLC o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ChannelAnnouncement_clone(&o_conv); - LDKCResult_ChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelAnnouncementDecodeErrorZ), "LDKCResult_ChannelAnnouncementDecodeErrorZ"); - *ret_conv = CResult_ChannelAnnouncementDecodeErrorZ_ok(o_conv); + o_conv = UpdateFailMalformedHTLC_clone(&o_conv); + LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ), "LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateFailMalformedHTLCDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_ChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelAnnouncementDecodeErrorZ), "LDKCResult_ChannelAnnouncementDecodeErrorZ"); - *ret_conv = CResult_ChannelAnnouncementDecodeErrorZ_err(e_conv); + LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ), "LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateFailMalformedHTLCDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ChannelAnnouncementDecodeErrorZ* o_conv = (LDKCResult_ChannelAnnouncementDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ChannelAnnouncementDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* o_conv = (LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_UpdateFailMalformedHTLCDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_ChannelAnnouncementDecodeErrorZ _res_conv = *(LDKCResult_ChannelAnnouncementDecodeErrorZ*)(_res_ptr); + LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ _res_conv = *(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_ChannelAnnouncementDecodeErrorZ_free(_res_conv); + CResult_UpdateFailMalformedHTLCDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_ChannelAnnouncementDecodeErrorZ_clone_ptr(LDKCResult_ChannelAnnouncementDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelAnnouncementDecodeErrorZ), "LDKCResult_ChannelAnnouncementDecodeErrorZ"); - *ret_conv = CResult_ChannelAnnouncementDecodeErrorZ_clone(arg); +static inline uint64_t CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone_ptr(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ), "LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ChannelAnnouncementDecodeErrorZ* arg_conv = (LDKCResult_ChannelAnnouncementDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ChannelAnnouncementDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* arg_conv = (LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ChannelAnnouncementDecodeErrorZ* orig_conv = (LDKCResult_ChannelAnnouncementDecodeErrorZ*)(orig & ~1); - LDKCResult_ChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelAnnouncementDecodeErrorZ), "LDKCResult_ChannelAnnouncementDecodeErrorZ"); - *ret_conv = CResult_ChannelAnnouncementDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* orig_conv = (LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ*)(orig & ~1); + LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ), "LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_ok(uint32_t o) { - LDKUnsignedChannelUpdate o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_ok(uint32_t o) { + LDKUpdateFee o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = UnsignedChannelUpdate_clone(&o_conv); - LDKCResult_UnsignedChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelUpdateDecodeErrorZ), "LDKCResult_UnsignedChannelUpdateDecodeErrorZ"); - *ret_conv = CResult_UnsignedChannelUpdateDecodeErrorZ_ok(o_conv); + o_conv = UpdateFee_clone(&o_conv); + LDKCResult_UpdateFeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFeeDecodeErrorZ), "LDKCResult_UpdateFeeDecodeErrorZ"); + *ret_conv = CResult_UpdateFeeDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_UnsignedChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelUpdateDecodeErrorZ), "LDKCResult_UnsignedChannelUpdateDecodeErrorZ"); - *ret_conv = CResult_UnsignedChannelUpdateDecodeErrorZ_err(e_conv); + LDKCResult_UpdateFeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFeeDecodeErrorZ), "LDKCResult_UpdateFeeDecodeErrorZ"); + *ret_conv = CResult_UpdateFeeDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_UnsignedChannelUpdateDecodeErrorZ* o_conv = (LDKCResult_UnsignedChannelUpdateDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_UnsignedChannelUpdateDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_UpdateFeeDecodeErrorZ* o_conv = (LDKCResult_UpdateFeeDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_UpdateFeeDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_UnsignedChannelUpdateDecodeErrorZ _res_conv = *(LDKCResult_UnsignedChannelUpdateDecodeErrorZ*)(_res_ptr); + LDKCResult_UpdateFeeDecodeErrorZ _res_conv = *(LDKCResult_UpdateFeeDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_UnsignedChannelUpdateDecodeErrorZ_free(_res_conv); + CResult_UpdateFeeDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_UnsignedChannelUpdateDecodeErrorZ_clone_ptr(LDKCResult_UnsignedChannelUpdateDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_UnsignedChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelUpdateDecodeErrorZ), "LDKCResult_UnsignedChannelUpdateDecodeErrorZ"); - *ret_conv = CResult_UnsignedChannelUpdateDecodeErrorZ_clone(arg); +static inline uint64_t CResult_UpdateFeeDecodeErrorZ_clone_ptr(LDKCResult_UpdateFeeDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_UpdateFeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFeeDecodeErrorZ), "LDKCResult_UpdateFeeDecodeErrorZ"); + *ret_conv = CResult_UpdateFeeDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_UnsignedChannelUpdateDecodeErrorZ* arg_conv = (LDKCResult_UnsignedChannelUpdateDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_UnsignedChannelUpdateDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_UpdateFeeDecodeErrorZ* arg_conv = (LDKCResult_UpdateFeeDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_UpdateFeeDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_UnsignedChannelUpdateDecodeErrorZ* orig_conv = (LDKCResult_UnsignedChannelUpdateDecodeErrorZ*)(orig & ~1); - LDKCResult_UnsignedChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelUpdateDecodeErrorZ), "LDKCResult_UnsignedChannelUpdateDecodeErrorZ"); - *ret_conv = CResult_UnsignedChannelUpdateDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_UpdateFeeDecodeErrorZ* orig_conv = (LDKCResult_UpdateFeeDecodeErrorZ*)(orig & ~1); + LDKCResult_UpdateFeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFeeDecodeErrorZ), "LDKCResult_UpdateFeeDecodeErrorZ"); + *ret_conv = CResult_UpdateFeeDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_ok(uint32_t o) { - LDKChannelUpdate o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_ok(uint32_t o) { + LDKUpdateFulfillHTLC o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ChannelUpdate_clone(&o_conv); - LDKCResult_ChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelUpdateDecodeErrorZ), "LDKCResult_ChannelUpdateDecodeErrorZ"); - *ret_conv = CResult_ChannelUpdateDecodeErrorZ_ok(o_conv); + o_conv = UpdateFulfillHTLC_clone(&o_conv); + LDKCResult_UpdateFulfillHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFulfillHTLCDecodeErrorZ), "LDKCResult_UpdateFulfillHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateFulfillHTLCDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_ChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelUpdateDecodeErrorZ), "LDKCResult_ChannelUpdateDecodeErrorZ"); - *ret_conv = CResult_ChannelUpdateDecodeErrorZ_err(e_conv); + LDKCResult_UpdateFulfillHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFulfillHTLCDecodeErrorZ), "LDKCResult_UpdateFulfillHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateFulfillHTLCDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ChannelUpdateDecodeErrorZ* o_conv = (LDKCResult_ChannelUpdateDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ChannelUpdateDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_UpdateFulfillHTLCDecodeErrorZ* o_conv = (LDKCResult_UpdateFulfillHTLCDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_UpdateFulfillHTLCDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_ChannelUpdateDecodeErrorZ _res_conv = *(LDKCResult_ChannelUpdateDecodeErrorZ*)(_res_ptr); + LDKCResult_UpdateFulfillHTLCDecodeErrorZ _res_conv = *(LDKCResult_UpdateFulfillHTLCDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_ChannelUpdateDecodeErrorZ_free(_res_conv); + CResult_UpdateFulfillHTLCDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_ChannelUpdateDecodeErrorZ_clone_ptr(LDKCResult_ChannelUpdateDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelUpdateDecodeErrorZ), "LDKCResult_ChannelUpdateDecodeErrorZ"); - *ret_conv = CResult_ChannelUpdateDecodeErrorZ_clone(arg); +static inline uint64_t CResult_UpdateFulfillHTLCDecodeErrorZ_clone_ptr(LDKCResult_UpdateFulfillHTLCDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_UpdateFulfillHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFulfillHTLCDecodeErrorZ), "LDKCResult_UpdateFulfillHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateFulfillHTLCDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ChannelUpdateDecodeErrorZ* arg_conv = (LDKCResult_ChannelUpdateDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ChannelUpdateDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_UpdateFulfillHTLCDecodeErrorZ* arg_conv = (LDKCResult_UpdateFulfillHTLCDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_UpdateFulfillHTLCDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ChannelUpdateDecodeErrorZ* orig_conv = (LDKCResult_ChannelUpdateDecodeErrorZ*)(orig & ~1); - LDKCResult_ChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelUpdateDecodeErrorZ), "LDKCResult_ChannelUpdateDecodeErrorZ"); - *ret_conv = CResult_ChannelUpdateDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_UpdateFulfillHTLCDecodeErrorZ* orig_conv = (LDKCResult_UpdateFulfillHTLCDecodeErrorZ*)(orig & ~1); + LDKCResult_UpdateFulfillHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFulfillHTLCDecodeErrorZ), "LDKCResult_UpdateFulfillHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateFulfillHTLCDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_ok(uint32_t o) { - LDKErrorMessage o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_ok(uint32_t o) { + LDKUpdateAddHTLC o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ErrorMessage_clone(&o_conv); - LDKCResult_ErrorMessageDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ErrorMessageDecodeErrorZ), "LDKCResult_ErrorMessageDecodeErrorZ"); - *ret_conv = CResult_ErrorMessageDecodeErrorZ_ok(o_conv); + o_conv = UpdateAddHTLC_clone(&o_conv); + LDKCResult_UpdateAddHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateAddHTLCDecodeErrorZ), "LDKCResult_UpdateAddHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateAddHTLCDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_ErrorMessageDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ErrorMessageDecodeErrorZ), "LDKCResult_ErrorMessageDecodeErrorZ"); - *ret_conv = CResult_ErrorMessageDecodeErrorZ_err(e_conv); + LDKCResult_UpdateAddHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateAddHTLCDecodeErrorZ), "LDKCResult_UpdateAddHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateAddHTLCDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ErrorMessageDecodeErrorZ* o_conv = (LDKCResult_ErrorMessageDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ErrorMessageDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_UpdateAddHTLCDecodeErrorZ* o_conv = (LDKCResult_UpdateAddHTLCDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_UpdateAddHTLCDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_ErrorMessageDecodeErrorZ _res_conv = *(LDKCResult_ErrorMessageDecodeErrorZ*)(_res_ptr); + LDKCResult_UpdateAddHTLCDecodeErrorZ _res_conv = *(LDKCResult_UpdateAddHTLCDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_ErrorMessageDecodeErrorZ_free(_res_conv); + CResult_UpdateAddHTLCDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_ErrorMessageDecodeErrorZ_clone_ptr(LDKCResult_ErrorMessageDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ErrorMessageDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ErrorMessageDecodeErrorZ), "LDKCResult_ErrorMessageDecodeErrorZ"); - *ret_conv = CResult_ErrorMessageDecodeErrorZ_clone(arg); +static inline uint64_t CResult_UpdateAddHTLCDecodeErrorZ_clone_ptr(LDKCResult_UpdateAddHTLCDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_UpdateAddHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateAddHTLCDecodeErrorZ), "LDKCResult_UpdateAddHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateAddHTLCDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ErrorMessageDecodeErrorZ* arg_conv = (LDKCResult_ErrorMessageDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ErrorMessageDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_UpdateAddHTLCDecodeErrorZ* arg_conv = (LDKCResult_UpdateAddHTLCDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_UpdateAddHTLCDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ErrorMessageDecodeErrorZ* orig_conv = (LDKCResult_ErrorMessageDecodeErrorZ*)(orig & ~1); - LDKCResult_ErrorMessageDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ErrorMessageDecodeErrorZ), "LDKCResult_ErrorMessageDecodeErrorZ"); - *ret_conv = CResult_ErrorMessageDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_UpdateAddHTLCDecodeErrorZ* orig_conv = (LDKCResult_UpdateAddHTLCDecodeErrorZ*)(orig & ~1); + LDKCResult_UpdateAddHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateAddHTLCDecodeErrorZ), "LDKCResult_UpdateAddHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateAddHTLCDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_ok(uint32_t o) { - LDKUnsignedNodeAnnouncement o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_ok(uint32_t o) { + LDKPing o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = UnsignedNodeAnnouncement_clone(&o_conv); - LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ), "LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ"); - *ret_conv = CResult_UnsignedNodeAnnouncementDecodeErrorZ_ok(o_conv); + o_conv = Ping_clone(&o_conv); + LDKCResult_PingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PingDecodeErrorZ), "LDKCResult_PingDecodeErrorZ"); + *ret_conv = CResult_PingDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ), "LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ"); - *ret_conv = CResult_UnsignedNodeAnnouncementDecodeErrorZ_err(e_conv); + LDKCResult_PingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PingDecodeErrorZ), "LDKCResult_PingDecodeErrorZ"); + *ret_conv = CResult_PingDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* o_conv = (LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_UnsignedNodeAnnouncementDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_PingDecodeErrorZ* o_conv = (LDKCResult_PingDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_PingDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ _res_conv = *(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ*)(_res_ptr); + LDKCResult_PingDecodeErrorZ _res_conv = *(LDKCResult_PingDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_UnsignedNodeAnnouncementDecodeErrorZ_free(_res_conv); + CResult_PingDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone_ptr(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ), "LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ"); - *ret_conv = CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone(arg); +static inline uint64_t CResult_PingDecodeErrorZ_clone_ptr(LDKCResult_PingDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_PingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PingDecodeErrorZ), "LDKCResult_PingDecodeErrorZ"); + *ret_conv = CResult_PingDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* arg_conv = (LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_PingDecodeErrorZ* arg_conv = (LDKCResult_PingDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_PingDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* orig_conv = (LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ*)(orig & ~1); - LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ), "LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ"); - *ret_conv = CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_PingDecodeErrorZ* orig_conv = (LDKCResult_PingDecodeErrorZ*)(orig & ~1); + LDKCResult_PingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PingDecodeErrorZ), "LDKCResult_PingDecodeErrorZ"); + *ret_conv = CResult_PingDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_ok(uint32_t o) { - LDKNodeAnnouncement o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_ok(uint32_t o) { + LDKPong o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = NodeAnnouncement_clone(&o_conv); - LDKCResult_NodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeAnnouncementDecodeErrorZ), "LDKCResult_NodeAnnouncementDecodeErrorZ"); - *ret_conv = CResult_NodeAnnouncementDecodeErrorZ_ok(o_conv); + o_conv = Pong_clone(&o_conv); + LDKCResult_PongDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PongDecodeErrorZ), "LDKCResult_PongDecodeErrorZ"); + *ret_conv = CResult_PongDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_NodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeAnnouncementDecodeErrorZ), "LDKCResult_NodeAnnouncementDecodeErrorZ"); - *ret_conv = CResult_NodeAnnouncementDecodeErrorZ_err(e_conv); + LDKCResult_PongDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PongDecodeErrorZ), "LDKCResult_PongDecodeErrorZ"); + *ret_conv = CResult_PongDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_NodeAnnouncementDecodeErrorZ* o_conv = (LDKCResult_NodeAnnouncementDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_NodeAnnouncementDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_PongDecodeErrorZ* o_conv = (LDKCResult_PongDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_PongDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_NodeAnnouncementDecodeErrorZ _res_conv = *(LDKCResult_NodeAnnouncementDecodeErrorZ*)(_res_ptr); + LDKCResult_PongDecodeErrorZ _res_conv = *(LDKCResult_PongDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_NodeAnnouncementDecodeErrorZ_free(_res_conv); + CResult_PongDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_NodeAnnouncementDecodeErrorZ_clone_ptr(LDKCResult_NodeAnnouncementDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_NodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeAnnouncementDecodeErrorZ), "LDKCResult_NodeAnnouncementDecodeErrorZ"); - *ret_conv = CResult_NodeAnnouncementDecodeErrorZ_clone(arg); +static inline uint64_t CResult_PongDecodeErrorZ_clone_ptr(LDKCResult_PongDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_PongDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PongDecodeErrorZ), "LDKCResult_PongDecodeErrorZ"); + *ret_conv = CResult_PongDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_NodeAnnouncementDecodeErrorZ* arg_conv = (LDKCResult_NodeAnnouncementDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_NodeAnnouncementDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_PongDecodeErrorZ* arg_conv = (LDKCResult_PongDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_PongDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_NodeAnnouncementDecodeErrorZ* orig_conv = (LDKCResult_NodeAnnouncementDecodeErrorZ*)(orig & ~1); - LDKCResult_NodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeAnnouncementDecodeErrorZ), "LDKCResult_NodeAnnouncementDecodeErrorZ"); - *ret_conv = CResult_NodeAnnouncementDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_PongDecodeErrorZ* orig_conv = (LDKCResult_PongDecodeErrorZ*)(orig & ~1); + LDKCResult_PongDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PongDecodeErrorZ), "LDKCResult_PongDecodeErrorZ"); + *ret_conv = CResult_PongDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_ok(uint32_t o) { - LDKQueryShortChannelIds o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_ok(uint32_t o) { + LDKUnsignedChannelAnnouncement o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = QueryShortChannelIds_clone(&o_conv); - LDKCResult_QueryShortChannelIdsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryShortChannelIdsDecodeErrorZ), "LDKCResult_QueryShortChannelIdsDecodeErrorZ"); - *ret_conv = CResult_QueryShortChannelIdsDecodeErrorZ_ok(o_conv); + o_conv = UnsignedChannelAnnouncement_clone(&o_conv); + LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ), "LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ"); + *ret_conv = CResult_UnsignedChannelAnnouncementDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_QueryShortChannelIdsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryShortChannelIdsDecodeErrorZ), "LDKCResult_QueryShortChannelIdsDecodeErrorZ"); - *ret_conv = CResult_QueryShortChannelIdsDecodeErrorZ_err(e_conv); + LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ), "LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ"); + *ret_conv = CResult_UnsignedChannelAnnouncementDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_QueryShortChannelIdsDecodeErrorZ* o_conv = (LDKCResult_QueryShortChannelIdsDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_QueryShortChannelIdsDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* o_conv = (LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_UnsignedChannelAnnouncementDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_QueryShortChannelIdsDecodeErrorZ _res_conv = *(LDKCResult_QueryShortChannelIdsDecodeErrorZ*)(_res_ptr); + LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ _res_conv = *(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_QueryShortChannelIdsDecodeErrorZ_free(_res_conv); + CResult_UnsignedChannelAnnouncementDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_QueryShortChannelIdsDecodeErrorZ_clone_ptr(LDKCResult_QueryShortChannelIdsDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_QueryShortChannelIdsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryShortChannelIdsDecodeErrorZ), "LDKCResult_QueryShortChannelIdsDecodeErrorZ"); - *ret_conv = CResult_QueryShortChannelIdsDecodeErrorZ_clone(arg); +static inline uint64_t CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone_ptr(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ), "LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ"); + *ret_conv = CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_QueryShortChannelIdsDecodeErrorZ* arg_conv = (LDKCResult_QueryShortChannelIdsDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_QueryShortChannelIdsDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* arg_conv = (LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_QueryShortChannelIdsDecodeErrorZ* orig_conv = (LDKCResult_QueryShortChannelIdsDecodeErrorZ*)(orig & ~1); - LDKCResult_QueryShortChannelIdsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryShortChannelIdsDecodeErrorZ), "LDKCResult_QueryShortChannelIdsDecodeErrorZ"); - *ret_conv = CResult_QueryShortChannelIdsDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* orig_conv = (LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ*)(orig & ~1); + LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ), "LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ"); + *ret_conv = CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_ok(uint32_t o) { - LDKReplyShortChannelIdsEnd o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_ok(uint32_t o) { + LDKChannelAnnouncement o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ReplyShortChannelIdsEnd_clone(&o_conv); - LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ), "LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ"); - *ret_conv = CResult_ReplyShortChannelIdsEndDecodeErrorZ_ok(o_conv); + o_conv = ChannelAnnouncement_clone(&o_conv); + LDKCResult_ChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelAnnouncementDecodeErrorZ), "LDKCResult_ChannelAnnouncementDecodeErrorZ"); + *ret_conv = CResult_ChannelAnnouncementDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ), "LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ"); - *ret_conv = CResult_ReplyShortChannelIdsEndDecodeErrorZ_err(e_conv); + LDKCResult_ChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelAnnouncementDecodeErrorZ), "LDKCResult_ChannelAnnouncementDecodeErrorZ"); + *ret_conv = CResult_ChannelAnnouncementDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* o_conv = (LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ReplyShortChannelIdsEndDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ChannelAnnouncementDecodeErrorZ* o_conv = (LDKCResult_ChannelAnnouncementDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ChannelAnnouncementDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ _res_conv = *(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ*)(_res_ptr); + LDKCResult_ChannelAnnouncementDecodeErrorZ _res_conv = *(LDKCResult_ChannelAnnouncementDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_ReplyShortChannelIdsEndDecodeErrorZ_free(_res_conv); + CResult_ChannelAnnouncementDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone_ptr(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ), "LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ"); - *ret_conv = CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone(arg); +static inline uint64_t CResult_ChannelAnnouncementDecodeErrorZ_clone_ptr(LDKCResult_ChannelAnnouncementDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelAnnouncementDecodeErrorZ), "LDKCResult_ChannelAnnouncementDecodeErrorZ"); + *ret_conv = CResult_ChannelAnnouncementDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* arg_conv = (LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ChannelAnnouncementDecodeErrorZ* arg_conv = (LDKCResult_ChannelAnnouncementDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ChannelAnnouncementDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* orig_conv = (LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ*)(orig & ~1); - LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ), "LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ"); - *ret_conv = CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ChannelAnnouncementDecodeErrorZ* orig_conv = (LDKCResult_ChannelAnnouncementDecodeErrorZ*)(orig & ~1); + LDKCResult_ChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelAnnouncementDecodeErrorZ), "LDKCResult_ChannelAnnouncementDecodeErrorZ"); + *ret_conv = CResult_ChannelAnnouncementDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_ok(uint32_t o) { - LDKQueryChannelRange o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_ok(uint32_t o) { + LDKUnsignedChannelUpdate o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = QueryChannelRange_clone(&o_conv); - LDKCResult_QueryChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryChannelRangeDecodeErrorZ), "LDKCResult_QueryChannelRangeDecodeErrorZ"); - *ret_conv = CResult_QueryChannelRangeDecodeErrorZ_ok(o_conv); + o_conv = UnsignedChannelUpdate_clone(&o_conv); + LDKCResult_UnsignedChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelUpdateDecodeErrorZ), "LDKCResult_UnsignedChannelUpdateDecodeErrorZ"); + *ret_conv = CResult_UnsignedChannelUpdateDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_QueryChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryChannelRangeDecodeErrorZ), "LDKCResult_QueryChannelRangeDecodeErrorZ"); - *ret_conv = CResult_QueryChannelRangeDecodeErrorZ_err(e_conv); + LDKCResult_UnsignedChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelUpdateDecodeErrorZ), "LDKCResult_UnsignedChannelUpdateDecodeErrorZ"); + *ret_conv = CResult_UnsignedChannelUpdateDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_QueryChannelRangeDecodeErrorZ* o_conv = (LDKCResult_QueryChannelRangeDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_QueryChannelRangeDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_UnsignedChannelUpdateDecodeErrorZ* o_conv = (LDKCResult_UnsignedChannelUpdateDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_UnsignedChannelUpdateDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_QueryChannelRangeDecodeErrorZ _res_conv = *(LDKCResult_QueryChannelRangeDecodeErrorZ*)(_res_ptr); + LDKCResult_UnsignedChannelUpdateDecodeErrorZ _res_conv = *(LDKCResult_UnsignedChannelUpdateDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_QueryChannelRangeDecodeErrorZ_free(_res_conv); + CResult_UnsignedChannelUpdateDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_QueryChannelRangeDecodeErrorZ_clone_ptr(LDKCResult_QueryChannelRangeDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_QueryChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryChannelRangeDecodeErrorZ), "LDKCResult_QueryChannelRangeDecodeErrorZ"); - *ret_conv = CResult_QueryChannelRangeDecodeErrorZ_clone(arg); +static inline uint64_t CResult_UnsignedChannelUpdateDecodeErrorZ_clone_ptr(LDKCResult_UnsignedChannelUpdateDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_UnsignedChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelUpdateDecodeErrorZ), "LDKCResult_UnsignedChannelUpdateDecodeErrorZ"); + *ret_conv = CResult_UnsignedChannelUpdateDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_QueryChannelRangeDecodeErrorZ* arg_conv = (LDKCResult_QueryChannelRangeDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_QueryChannelRangeDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_UnsignedChannelUpdateDecodeErrorZ* arg_conv = (LDKCResult_UnsignedChannelUpdateDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_UnsignedChannelUpdateDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_QueryChannelRangeDecodeErrorZ* orig_conv = (LDKCResult_QueryChannelRangeDecodeErrorZ*)(orig & ~1); - LDKCResult_QueryChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryChannelRangeDecodeErrorZ), "LDKCResult_QueryChannelRangeDecodeErrorZ"); - *ret_conv = CResult_QueryChannelRangeDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_UnsignedChannelUpdateDecodeErrorZ* orig_conv = (LDKCResult_UnsignedChannelUpdateDecodeErrorZ*)(orig & ~1); + LDKCResult_UnsignedChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelUpdateDecodeErrorZ), "LDKCResult_UnsignedChannelUpdateDecodeErrorZ"); + *ret_conv = CResult_UnsignedChannelUpdateDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_ok(uint32_t o) { - LDKReplyChannelRange o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_ok(uint32_t o) { + LDKChannelUpdate o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ReplyChannelRange_clone(&o_conv); - LDKCResult_ReplyChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyChannelRangeDecodeErrorZ), "LDKCResult_ReplyChannelRangeDecodeErrorZ"); - *ret_conv = CResult_ReplyChannelRangeDecodeErrorZ_ok(o_conv); + o_conv = ChannelUpdate_clone(&o_conv); + LDKCResult_ChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelUpdateDecodeErrorZ), "LDKCResult_ChannelUpdateDecodeErrorZ"); + *ret_conv = CResult_ChannelUpdateDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_ReplyChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyChannelRangeDecodeErrorZ), "LDKCResult_ReplyChannelRangeDecodeErrorZ"); - *ret_conv = CResult_ReplyChannelRangeDecodeErrorZ_err(e_conv); + LDKCResult_ChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelUpdateDecodeErrorZ), "LDKCResult_ChannelUpdateDecodeErrorZ"); + *ret_conv = CResult_ChannelUpdateDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ReplyChannelRangeDecodeErrorZ* o_conv = (LDKCResult_ReplyChannelRangeDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ReplyChannelRangeDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ChannelUpdateDecodeErrorZ* o_conv = (LDKCResult_ChannelUpdateDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ChannelUpdateDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_ReplyChannelRangeDecodeErrorZ _res_conv = *(LDKCResult_ReplyChannelRangeDecodeErrorZ*)(_res_ptr); + LDKCResult_ChannelUpdateDecodeErrorZ _res_conv = *(LDKCResult_ChannelUpdateDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_ReplyChannelRangeDecodeErrorZ_free(_res_conv); + CResult_ChannelUpdateDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_ReplyChannelRangeDecodeErrorZ_clone_ptr(LDKCResult_ReplyChannelRangeDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ReplyChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyChannelRangeDecodeErrorZ), "LDKCResult_ReplyChannelRangeDecodeErrorZ"); - *ret_conv = CResult_ReplyChannelRangeDecodeErrorZ_clone(arg); +static inline uint64_t CResult_ChannelUpdateDecodeErrorZ_clone_ptr(LDKCResult_ChannelUpdateDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelUpdateDecodeErrorZ), "LDKCResult_ChannelUpdateDecodeErrorZ"); + *ret_conv = CResult_ChannelUpdateDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ReplyChannelRangeDecodeErrorZ* arg_conv = (LDKCResult_ReplyChannelRangeDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ReplyChannelRangeDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ReplyChannelRangeDecodeErrorZ* orig_conv = (LDKCResult_ReplyChannelRangeDecodeErrorZ*)(orig & ~1); - LDKCResult_ReplyChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyChannelRangeDecodeErrorZ), "LDKCResult_ReplyChannelRangeDecodeErrorZ"); - *ret_conv = CResult_ReplyChannelRangeDecodeErrorZ_clone(orig_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ChannelUpdateDecodeErrorZ* arg_conv = (LDKCResult_ChannelUpdateDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ChannelUpdateDecodeErrorZ_clone_ptr(arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ChannelUpdateDecodeErrorZ* orig_conv = (LDKCResult_ChannelUpdateDecodeErrorZ*)(orig & ~1); + LDKCResult_ChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelUpdateDecodeErrorZ), "LDKCResult_ChannelUpdateDecodeErrorZ"); + *ret_conv = CResult_ChannelUpdateDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_ok(uint32_t o) { - LDKGossipTimestampFilter o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_ok(uint32_t o) { + LDKErrorMessage o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = GossipTimestampFilter_clone(&o_conv); - LDKCResult_GossipTimestampFilterDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_GossipTimestampFilterDecodeErrorZ), "LDKCResult_GossipTimestampFilterDecodeErrorZ"); - *ret_conv = CResult_GossipTimestampFilterDecodeErrorZ_ok(o_conv); + o_conv = ErrorMessage_clone(&o_conv); + LDKCResult_ErrorMessageDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ErrorMessageDecodeErrorZ), "LDKCResult_ErrorMessageDecodeErrorZ"); + *ret_conv = CResult_ErrorMessageDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_GossipTimestampFilterDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_GossipTimestampFilterDecodeErrorZ), "LDKCResult_GossipTimestampFilterDecodeErrorZ"); - *ret_conv = CResult_GossipTimestampFilterDecodeErrorZ_err(e_conv); + LDKCResult_ErrorMessageDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ErrorMessageDecodeErrorZ), "LDKCResult_ErrorMessageDecodeErrorZ"); + *ret_conv = CResult_ErrorMessageDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_GossipTimestampFilterDecodeErrorZ* o_conv = (LDKCResult_GossipTimestampFilterDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_GossipTimestampFilterDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ErrorMessageDecodeErrorZ* o_conv = (LDKCResult_ErrorMessageDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ErrorMessageDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_GossipTimestampFilterDecodeErrorZ _res_conv = *(LDKCResult_GossipTimestampFilterDecodeErrorZ*)(_res_ptr); + LDKCResult_ErrorMessageDecodeErrorZ _res_conv = *(LDKCResult_ErrorMessageDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_GossipTimestampFilterDecodeErrorZ_free(_res_conv); + CResult_ErrorMessageDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_GossipTimestampFilterDecodeErrorZ_clone_ptr(LDKCResult_GossipTimestampFilterDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_GossipTimestampFilterDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_GossipTimestampFilterDecodeErrorZ), "LDKCResult_GossipTimestampFilterDecodeErrorZ"); - *ret_conv = CResult_GossipTimestampFilterDecodeErrorZ_clone(arg); +static inline uint64_t CResult_ErrorMessageDecodeErrorZ_clone_ptr(LDKCResult_ErrorMessageDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ErrorMessageDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ErrorMessageDecodeErrorZ), "LDKCResult_ErrorMessageDecodeErrorZ"); + *ret_conv = CResult_ErrorMessageDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_GossipTimestampFilterDecodeErrorZ* arg_conv = (LDKCResult_GossipTimestampFilterDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_GossipTimestampFilterDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ErrorMessageDecodeErrorZ* arg_conv = (LDKCResult_ErrorMessageDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ErrorMessageDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_GossipTimestampFilterDecodeErrorZ* orig_conv = (LDKCResult_GossipTimestampFilterDecodeErrorZ*)(orig & ~1); - LDKCResult_GossipTimestampFilterDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_GossipTimestampFilterDecodeErrorZ), "LDKCResult_GossipTimestampFilterDecodeErrorZ"); - *ret_conv = CResult_GossipTimestampFilterDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ErrorMessageDecodeErrorZ* orig_conv = (LDKCResult_ErrorMessageDecodeErrorZ*)(orig & ~1); + LDKCResult_ErrorMessageDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ErrorMessageDecodeErrorZ), "LDKCResult_ErrorMessageDecodeErrorZ"); + *ret_conv = CResult_ErrorMessageDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceSignOrCreationErrorZ_ok(uint32_t o) { - LDKInvoice o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_ok(uint32_t o) { + LDKUnsignedNodeAnnouncement o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = Invoice_clone(&o_conv); - LDKCResult_InvoiceSignOrCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceSignOrCreationErrorZ), "LDKCResult_InvoiceSignOrCreationErrorZ"); - *ret_conv = CResult_InvoiceSignOrCreationErrorZ_ok(o_conv); + o_conv = UnsignedNodeAnnouncement_clone(&o_conv); + LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ), "LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ"); + *ret_conv = CResult_UnsignedNodeAnnouncementDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceSignOrCreationErrorZ_err(uint32_t e) { - void* e_ptr = (void*)(((uint64_t)e) & ~1); - CHECK_ACCESS(e_ptr); - LDKSignOrCreationError e_conv = *(LDKSignOrCreationError*)(e_ptr); - e_conv = SignOrCreationError_clone((LDKSignOrCreationError*)(((uint64_t)e) & ~1)); - LDKCResult_InvoiceSignOrCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceSignOrCreationErrorZ), "LDKCResult_InvoiceSignOrCreationErrorZ"); - *ret_conv = CResult_InvoiceSignOrCreationErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ), "LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ"); + *ret_conv = CResult_UnsignedNodeAnnouncementDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_InvoiceSignOrCreationErrorZ_is_ok(uint32_t o) { - LDKCResult_InvoiceSignOrCreationErrorZ* o_conv = (LDKCResult_InvoiceSignOrCreationErrorZ*)(o & ~1); - jboolean ret_val = CResult_InvoiceSignOrCreationErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* o_conv = (LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_UnsignedNodeAnnouncementDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_InvoiceSignOrCreationErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_InvoiceSignOrCreationErrorZ _res_conv = *(LDKCResult_InvoiceSignOrCreationErrorZ*)(_res_ptr); + LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ _res_conv = *(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_InvoiceSignOrCreationErrorZ_free(_res_conv); + CResult_UnsignedNodeAnnouncementDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_InvoiceSignOrCreationErrorZ_clone_ptr(LDKCResult_InvoiceSignOrCreationErrorZ *NONNULL_PTR arg) { - LDKCResult_InvoiceSignOrCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceSignOrCreationErrorZ), "LDKCResult_InvoiceSignOrCreationErrorZ"); - *ret_conv = CResult_InvoiceSignOrCreationErrorZ_clone(arg); +static inline uint64_t CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone_ptr(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ), "LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ"); + *ret_conv = CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_InvoiceSignOrCreationErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_InvoiceSignOrCreationErrorZ* arg_conv = (LDKCResult_InvoiceSignOrCreationErrorZ*)(arg & ~1); - int64_t ret_val = CResult_InvoiceSignOrCreationErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* arg_conv = (LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceSignOrCreationErrorZ_clone(uint32_t orig) { - LDKCResult_InvoiceSignOrCreationErrorZ* orig_conv = (LDKCResult_InvoiceSignOrCreationErrorZ*)(orig & ~1); - LDKCResult_InvoiceSignOrCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceSignOrCreationErrorZ), "LDKCResult_InvoiceSignOrCreationErrorZ"); - *ret_conv = CResult_InvoiceSignOrCreationErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* orig_conv = (LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ*)(orig & ~1); + LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ), "LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ"); + *ret_conv = CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_COption_FilterZ_some(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKFilter o_conv = *(LDKFilter*)(o_ptr); - LDKCOption_FilterZ *ret_copy = MALLOC(sizeof(LDKCOption_FilterZ), "LDKCOption_FilterZ"); - *ret_copy = COption_FilterZ_some(o_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_COption_FilterZ_none() { - LDKCOption_FilterZ *ret_copy = MALLOC(sizeof(LDKCOption_FilterZ), "LDKCOption_FilterZ"); - *ret_copy = COption_FilterZ_none(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -void __attribute__((visibility("default"))) TS_COption_FilterZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCOption_FilterZ _res_conv = *(LDKCOption_FilterZ*)(_res_ptr); - FREE((void*)_res); - COption_FilterZ_free(_res_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_LockedChannelMonitorNoneZ_ok(uint32_t o) { - LDKLockedChannelMonitor o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_ok(uint32_t o) { + LDKNodeAnnouncement o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - // Warning: we need a move here but no clone is available for LDKLockedChannelMonitor - LDKCResult_LockedChannelMonitorNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_LockedChannelMonitorNoneZ), "LDKCResult_LockedChannelMonitorNoneZ"); - *ret_conv = CResult_LockedChannelMonitorNoneZ_ok(o_conv); + o_conv = NodeAnnouncement_clone(&o_conv); + LDKCResult_NodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeAnnouncementDecodeErrorZ), "LDKCResult_NodeAnnouncementDecodeErrorZ"); + *ret_conv = CResult_NodeAnnouncementDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_LockedChannelMonitorNoneZ_err() { - LDKCResult_LockedChannelMonitorNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_LockedChannelMonitorNoneZ), "LDKCResult_LockedChannelMonitorNoneZ"); - *ret_conv = CResult_LockedChannelMonitorNoneZ_err(); +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_NodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeAnnouncementDecodeErrorZ), "LDKCResult_NodeAnnouncementDecodeErrorZ"); + *ret_conv = CResult_NodeAnnouncementDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_LockedChannelMonitorNoneZ_is_ok(uint32_t o) { - LDKCResult_LockedChannelMonitorNoneZ* o_conv = (LDKCResult_LockedChannelMonitorNoneZ*)(o & ~1); - jboolean ret_val = CResult_LockedChannelMonitorNoneZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_NodeAnnouncementDecodeErrorZ* o_conv = (LDKCResult_NodeAnnouncementDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_NodeAnnouncementDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_LockedChannelMonitorNoneZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_LockedChannelMonitorNoneZ _res_conv = *(LDKCResult_LockedChannelMonitorNoneZ*)(_res_ptr); + LDKCResult_NodeAnnouncementDecodeErrorZ _res_conv = *(LDKCResult_NodeAnnouncementDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_LockedChannelMonitorNoneZ_free(_res_conv); -} - -void __attribute__((visibility("default"))) TS_CVec_OutPointZ_free(uint32_tArray _res) { - LDKCVec_OutPointZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKOutPoint), "LDKCVec_OutPointZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t k = 0; k < _res_constr.datalen; k++) { - uint32_t _res_conv_10 = _res_vals[k]; - LDKOutPoint _res_conv_10_conv; - _res_conv_10_conv.inner = (void*)(_res_conv_10 & (~1)); - _res_conv_10_conv.is_owned = (_res_conv_10 & 1) || (_res_conv_10 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_10_conv); - _res_constr.data[k] = _res_conv_10_conv; - } - CVec_OutPointZ_free(_res_constr); -} - -void __attribute__((visibility("default"))) TS_PaymentPurpose_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKPaymentPurpose this_ptr_conv = *(LDKPaymentPurpose*)(this_ptr_ptr); - FREE((void*)this_ptr); - PaymentPurpose_free(this_ptr_conv); + CResult_NodeAnnouncementDecodeErrorZ_free(_res_conv); } -static inline uint64_t PaymentPurpose_clone_ptr(LDKPaymentPurpose *NONNULL_PTR arg) { - LDKPaymentPurpose *ret_copy = MALLOC(sizeof(LDKPaymentPurpose), "LDKPaymentPurpose"); - *ret_copy = PaymentPurpose_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +static inline uint64_t CResult_NodeAnnouncementDecodeErrorZ_clone_ptr(LDKCResult_NodeAnnouncementDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_NodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeAnnouncementDecodeErrorZ), "LDKCResult_NodeAnnouncementDecodeErrorZ"); + *ret_conv = CResult_NodeAnnouncementDecodeErrorZ_clone(arg); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_PaymentPurpose_clone_ptr(uint32_t arg) { - LDKPaymentPurpose* arg_conv = (LDKPaymentPurpose*)arg; - int64_t ret_val = PaymentPurpose_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_NodeAnnouncementDecodeErrorZ* arg_conv = (LDKCResult_NodeAnnouncementDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_NodeAnnouncementDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_PaymentPurpose_clone(uint32_t orig) { - LDKPaymentPurpose* orig_conv = (LDKPaymentPurpose*)orig; - LDKPaymentPurpose *ret_copy = MALLOC(sizeof(LDKPaymentPurpose), "LDKPaymentPurpose"); - *ret_copy = PaymentPurpose_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_PaymentPurpose_invoice_payment(int8_tArray payment_preimage, int8_tArray payment_secret) { - LDKThirtyTwoBytes payment_preimage_ref; - CHECK(*((uint32_t*)payment_preimage) == 32); - memcpy(payment_preimage_ref.data, (uint8_t*)(payment_preimage + 4), 32); - LDKThirtyTwoBytes payment_secret_ref; - CHECK(*((uint32_t*)payment_secret) == 32); - memcpy(payment_secret_ref.data, (uint8_t*)(payment_secret + 4), 32); - LDKPaymentPurpose *ret_copy = MALLOC(sizeof(LDKPaymentPurpose), "LDKPaymentPurpose"); - *ret_copy = PaymentPurpose_invoice_payment(payment_preimage_ref, payment_secret_ref); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_PaymentPurpose_spontaneous_payment(int8_tArray a) { - LDKThirtyTwoBytes a_ref; - CHECK(*((uint32_t*)a) == 32); - memcpy(a_ref.data, (uint8_t*)(a + 4), 32); - LDKPaymentPurpose *ret_copy = MALLOC(sizeof(LDKPaymentPurpose), "LDKPaymentPurpose"); - *ret_copy = PaymentPurpose_spontaneous_payment(a_ref); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -void __attribute__((visibility("default"))) TS_ClosureReason_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKClosureReason this_ptr_conv = *(LDKClosureReason*)(this_ptr_ptr); - FREE((void*)this_ptr); - ClosureReason_free(this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_NodeAnnouncementDecodeErrorZ* orig_conv = (LDKCResult_NodeAnnouncementDecodeErrorZ*)(orig & ~1); + LDKCResult_NodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeAnnouncementDecodeErrorZ), "LDKCResult_NodeAnnouncementDecodeErrorZ"); + *ret_conv = CResult_NodeAnnouncementDecodeErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -static inline uint64_t ClosureReason_clone_ptr(LDKClosureReason *NONNULL_PTR arg) { - LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); - *ret_copy = ClosureReason_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_ClosureReason_clone_ptr(uint32_t arg) { - LDKClosureReason* arg_conv = (LDKClosureReason*)arg; - int64_t ret_val = ClosureReason_clone_ptr(arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_ok(uint32_t o) { + LDKQueryShortChannelIds o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = QueryShortChannelIds_clone(&o_conv); + LDKCResult_QueryShortChannelIdsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryShortChannelIdsDecodeErrorZ), "LDKCResult_QueryShortChannelIdsDecodeErrorZ"); + *ret_conv = CResult_QueryShortChannelIdsDecodeErrorZ_ok(o_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ClosureReason_clone(uint32_t orig) { - LDKClosureReason* orig_conv = (LDKClosureReason*)orig; - LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); - *ret_copy = ClosureReason_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_QueryShortChannelIdsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryShortChannelIdsDecodeErrorZ), "LDKCResult_QueryShortChannelIdsDecodeErrorZ"); + *ret_conv = CResult_QueryShortChannelIdsDecodeErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ClosureReason_counterparty_force_closed(jstring peer_msg) { - LDKStr peer_msg_conv = str_ref_to_owned_c(peer_msg); - LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); - *ret_copy = ClosureReason_counterparty_force_closed(peer_msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +jboolean __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_QueryShortChannelIdsDecodeErrorZ* o_conv = (LDKCResult_QueryShortChannelIdsDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_QueryShortChannelIdsDecodeErrorZ_is_ok(o_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ClosureReason_holder_force_closed() { - LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); - *ret_copy = ClosureReason_holder_force_closed(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_QueryShortChannelIdsDecodeErrorZ _res_conv = *(LDKCResult_QueryShortChannelIdsDecodeErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_QueryShortChannelIdsDecodeErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_ClosureReason_cooperative_closure() { - LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); - *ret_copy = ClosureReason_cooperative_closure(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +static inline uint64_t CResult_QueryShortChannelIdsDecodeErrorZ_clone_ptr(LDKCResult_QueryShortChannelIdsDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_QueryShortChannelIdsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryShortChannelIdsDecodeErrorZ), "LDKCResult_QueryShortChannelIdsDecodeErrorZ"); + *ret_conv = CResult_QueryShortChannelIdsDecodeErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_QueryShortChannelIdsDecodeErrorZ* arg_conv = (LDKCResult_QueryShortChannelIdsDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_QueryShortChannelIdsDecodeErrorZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ClosureReason_commitment_tx_confirmed() { - LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); - *ret_copy = ClosureReason_commitment_tx_confirmed(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_QueryShortChannelIdsDecodeErrorZ* orig_conv = (LDKCResult_QueryShortChannelIdsDecodeErrorZ*)(orig & ~1); + LDKCResult_QueryShortChannelIdsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryShortChannelIdsDecodeErrorZ), "LDKCResult_QueryShortChannelIdsDecodeErrorZ"); + *ret_conv = CResult_QueryShortChannelIdsDecodeErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ClosureReason_funding_timed_out() { - LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); - *ret_copy = ClosureReason_funding_timed_out(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_ok(uint32_t o) { + LDKReplyShortChannelIdsEnd o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = ReplyShortChannelIdsEnd_clone(&o_conv); + LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ), "LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ"); + *ret_conv = CResult_ReplyShortChannelIdsEndDecodeErrorZ_ok(o_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ClosureReason_processing_error(jstring err) { - LDKStr err_conv = str_ref_to_owned_c(err); - LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); - *ret_copy = ClosureReason_processing_error(err_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ), "LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ"); + *ret_conv = CResult_ReplyShortChannelIdsEndDecodeErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ClosureReason_disconnected_peer() { - LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); - *ret_copy = ClosureReason_disconnected_peer(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +jboolean __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* o_conv = (LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ReplyShortChannelIdsEndDecodeErrorZ_is_ok(o_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ClosureReason_outdated_channel_manager() { - LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); - *ret_copy = ClosureReason_outdated_channel_manager(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ _res_conv = *(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_ReplyShortChannelIdsEndDecodeErrorZ_free(_res_conv); } -int8_tArray __attribute__((visibility("default"))) TS_ClosureReason_write(uint32_t obj) { - LDKClosureReason* obj_conv = (LDKClosureReason*)obj; - LDKCVec_u8Z ret_var = ClosureReason_write(obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +static inline uint64_t CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone_ptr(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ), "LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ"); + *ret_conv = CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* arg_conv = (LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ClosureReason_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_COption_ClosureReasonZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_ClosureReasonZDecodeErrorZ), "LDKCResult_COption_ClosureReasonZDecodeErrorZ"); - *ret_conv = ClosureReason_read(ser_ref); +uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* orig_conv = (LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ*)(orig & ~1); + LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ), "LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ"); + *ret_conv = CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_Event_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKEvent this_ptr_conv = *(LDKEvent*)(this_ptr_ptr); - FREE((void*)this_ptr); - Event_free(this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_ok(uint32_t o) { + LDKQueryChannelRange o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = QueryChannelRange_clone(&o_conv); + LDKCResult_QueryChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryChannelRangeDecodeErrorZ), "LDKCResult_QueryChannelRangeDecodeErrorZ"); + *ret_conv = CResult_QueryChannelRangeDecodeErrorZ_ok(o_conv); + return (uint64_t)ret_conv; } -static inline uint64_t Event_clone_ptr(LDKEvent *NONNULL_PTR arg) { - LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_copy = Event_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_QueryChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryChannelRangeDecodeErrorZ), "LDKCResult_QueryChannelRangeDecodeErrorZ"); + *ret_conv = CResult_QueryChannelRangeDecodeErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_Event_clone_ptr(uint32_t arg) { - LDKEvent* arg_conv = (LDKEvent*)arg; - int64_t ret_val = Event_clone_ptr(arg_conv); + +jboolean __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_QueryChannelRangeDecodeErrorZ* o_conv = (LDKCResult_QueryChannelRangeDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_QueryChannelRangeDecodeErrorZ_is_ok(o_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Event_clone(uint32_t orig) { - LDKEvent* orig_conv = (LDKEvent*)orig; - LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_copy = Event_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_QueryChannelRangeDecodeErrorZ _res_conv = *(LDKCResult_QueryChannelRangeDecodeErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_QueryChannelRangeDecodeErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_Event_funding_generation_ready(int8_tArray temporary_channel_id, int64_t channel_value_satoshis, int8_tArray output_script, int64_t user_channel_id) { - LDKThirtyTwoBytes temporary_channel_id_ref; - CHECK(*((uint32_t*)temporary_channel_id) == 32); - memcpy(temporary_channel_id_ref.data, (uint8_t*)(temporary_channel_id + 4), 32); - LDKCVec_u8Z output_script_ref; - output_script_ref.datalen = *((uint32_t*)output_script); - output_script_ref.data = MALLOC(output_script_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(output_script_ref.data, (uint8_t*)(output_script + 4), output_script_ref.datalen); - LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_copy = Event_funding_generation_ready(temporary_channel_id_ref, channel_value_satoshis, output_script_ref, user_channel_id); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +static inline uint64_t CResult_QueryChannelRangeDecodeErrorZ_clone_ptr(LDKCResult_QueryChannelRangeDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_QueryChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryChannelRangeDecodeErrorZ), "LDKCResult_QueryChannelRangeDecodeErrorZ"); + *ret_conv = CResult_QueryChannelRangeDecodeErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_QueryChannelRangeDecodeErrorZ* arg_conv = (LDKCResult_QueryChannelRangeDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_QueryChannelRangeDecodeErrorZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Event_payment_received(int8_tArray payment_hash, int64_t amt, uint32_t purpose) { - LDKThirtyTwoBytes payment_hash_ref; - CHECK(*((uint32_t*)payment_hash) == 32); - memcpy(payment_hash_ref.data, (uint8_t*)(payment_hash + 4), 32); - void* purpose_ptr = (void*)(((uint64_t)purpose) & ~1); - CHECK_ACCESS(purpose_ptr); - LDKPaymentPurpose purpose_conv = *(LDKPaymentPurpose*)(purpose_ptr); - purpose_conv = PaymentPurpose_clone((LDKPaymentPurpose*)(((uint64_t)purpose) & ~1)); - LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_copy = Event_payment_received(payment_hash_ref, amt, purpose_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_QueryChannelRangeDecodeErrorZ* orig_conv = (LDKCResult_QueryChannelRangeDecodeErrorZ*)(orig & ~1); + LDKCResult_QueryChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryChannelRangeDecodeErrorZ), "LDKCResult_QueryChannelRangeDecodeErrorZ"); + *ret_conv = CResult_QueryChannelRangeDecodeErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Event_payment_sent(int8_tArray payment_id, int8_tArray payment_preimage, int8_tArray payment_hash, uint32_t fee_paid_msat) { - LDKThirtyTwoBytes payment_id_ref; - CHECK(*((uint32_t*)payment_id) == 32); - memcpy(payment_id_ref.data, (uint8_t*)(payment_id + 4), 32); - LDKThirtyTwoBytes payment_preimage_ref; - CHECK(*((uint32_t*)payment_preimage) == 32); - memcpy(payment_preimage_ref.data, (uint8_t*)(payment_preimage + 4), 32); - LDKThirtyTwoBytes payment_hash_ref; - CHECK(*((uint32_t*)payment_hash) == 32); - memcpy(payment_hash_ref.data, (uint8_t*)(payment_hash + 4), 32); - void* fee_paid_msat_ptr = (void*)(((uint64_t)fee_paid_msat) & ~1); - CHECK_ACCESS(fee_paid_msat_ptr); - LDKCOption_u64Z fee_paid_msat_conv = *(LDKCOption_u64Z*)(fee_paid_msat_ptr); - fee_paid_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)fee_paid_msat) & ~1)); - LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_copy = Event_payment_sent(payment_id_ref, payment_preimage_ref, payment_hash_ref, fee_paid_msat_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_ok(uint32_t o) { + LDKReplyChannelRange o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = ReplyChannelRange_clone(&o_conv); + LDKCResult_ReplyChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyChannelRangeDecodeErrorZ), "LDKCResult_ReplyChannelRangeDecodeErrorZ"); + *ret_conv = CResult_ReplyChannelRangeDecodeErrorZ_ok(o_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Event_payment_path_failed(int8_tArray payment_id, int8_tArray payment_hash, jboolean rejected_by_dest, uint32_t network_update, jboolean all_paths_failed, uint32_tArray path, uint32_t short_channel_id, uint32_t retry) { - LDKThirtyTwoBytes payment_id_ref; - CHECK(*((uint32_t*)payment_id) == 32); - memcpy(payment_id_ref.data, (uint8_t*)(payment_id + 4), 32); - LDKThirtyTwoBytes payment_hash_ref; - CHECK(*((uint32_t*)payment_hash) == 32); - memcpy(payment_hash_ref.data, (uint8_t*)(payment_hash + 4), 32); - void* network_update_ptr = (void*)(((uint64_t)network_update) & ~1); - CHECK_ACCESS(network_update_ptr); - LDKCOption_NetworkUpdateZ network_update_conv = *(LDKCOption_NetworkUpdateZ*)(network_update_ptr); - network_update_conv = COption_NetworkUpdateZ_clone((LDKCOption_NetworkUpdateZ*)(((uint64_t)network_update) & ~1)); - LDKCVec_RouteHopZ path_constr; - path_constr.datalen = *((uint32_t*)path); - if (path_constr.datalen > 0) - path_constr.data = MALLOC(path_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); - else - path_constr.data = NULL; - uint32_t* path_vals = (uint32_t*)(path + 4); - for (size_t k = 0; k < path_constr.datalen; k++) { - uint32_t path_conv_10 = path_vals[k]; - LDKRouteHop path_conv_10_conv; - path_conv_10_conv.inner = (void*)(path_conv_10 & (~1)); - path_conv_10_conv.is_owned = (path_conv_10 & 1) || (path_conv_10 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_conv); - path_conv_10_conv = RouteHop_clone(&path_conv_10_conv); - path_constr.data[k] = path_conv_10_conv; - } - void* short_channel_id_ptr = (void*)(((uint64_t)short_channel_id) & ~1); - CHECK_ACCESS(short_channel_id_ptr); - LDKCOption_u64Z short_channel_id_conv = *(LDKCOption_u64Z*)(short_channel_id_ptr); - short_channel_id_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)short_channel_id) & ~1)); - LDKRouteParameters retry_conv; - retry_conv.inner = (void*)(retry & (~1)); - retry_conv.is_owned = (retry & 1) || (retry == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(retry_conv); - retry_conv = RouteParameters_clone(&retry_conv); - LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_copy = Event_payment_path_failed(payment_id_ref, payment_hash_ref, rejected_by_dest, network_update_conv, all_paths_failed, path_constr, short_channel_id_conv, retry_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_ReplyChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyChannelRangeDecodeErrorZ), "LDKCResult_ReplyChannelRangeDecodeErrorZ"); + *ret_conv = CResult_ReplyChannelRangeDecodeErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Event_payment_failed(int8_tArray payment_id, int8_tArray payment_hash) { - LDKThirtyTwoBytes payment_id_ref; - CHECK(*((uint32_t*)payment_id) == 32); - memcpy(payment_id_ref.data, (uint8_t*)(payment_id + 4), 32); - LDKThirtyTwoBytes payment_hash_ref; - CHECK(*((uint32_t*)payment_hash) == 32); - memcpy(payment_hash_ref.data, (uint8_t*)(payment_hash + 4), 32); - LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_copy = Event_payment_failed(payment_id_ref, payment_hash_ref); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +jboolean __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ReplyChannelRangeDecodeErrorZ* o_conv = (LDKCResult_ReplyChannelRangeDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ReplyChannelRangeDecodeErrorZ_is_ok(o_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Event_pending_htlcs_forwardable(int64_t time_forwardable) { - LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_copy = Event_pending_htlcs_forwardable(time_forwardable); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_ReplyChannelRangeDecodeErrorZ _res_conv = *(LDKCResult_ReplyChannelRangeDecodeErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_ReplyChannelRangeDecodeErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_Event_spendable_outputs(uint32_tArray outputs) { - LDKCVec_SpendableOutputDescriptorZ outputs_constr; - outputs_constr.datalen = *((uint32_t*)outputs); - if (outputs_constr.datalen > 0) - outputs_constr.data = MALLOC(outputs_constr.datalen * sizeof(LDKSpendableOutputDescriptor), "LDKCVec_SpendableOutputDescriptorZ Elements"); - else - outputs_constr.data = NULL; - uint32_t* outputs_vals = (uint32_t*)(outputs + 4); - for (size_t b = 0; b < outputs_constr.datalen; b++) { - uint32_t outputs_conv_27 = outputs_vals[b]; - void* outputs_conv_27_ptr = (void*)(((uint64_t)outputs_conv_27) & ~1); - CHECK_ACCESS(outputs_conv_27_ptr); - LDKSpendableOutputDescriptor outputs_conv_27_conv = *(LDKSpendableOutputDescriptor*)(outputs_conv_27_ptr); - outputs_conv_27_conv = SpendableOutputDescriptor_clone((LDKSpendableOutputDescriptor*)(((uint64_t)outputs_conv_27) & ~1)); - outputs_constr.data[b] = outputs_conv_27_conv; - } - LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_copy = Event_spendable_outputs(outputs_constr); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +static inline uint64_t CResult_ReplyChannelRangeDecodeErrorZ_clone_ptr(LDKCResult_ReplyChannelRangeDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ReplyChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyChannelRangeDecodeErrorZ), "LDKCResult_ReplyChannelRangeDecodeErrorZ"); + *ret_conv = CResult_ReplyChannelRangeDecodeErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ReplyChannelRangeDecodeErrorZ* arg_conv = (LDKCResult_ReplyChannelRangeDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ReplyChannelRangeDecodeErrorZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Event_payment_forwarded(uint32_t fee_earned_msat, jboolean claim_from_onchain_tx) { - void* fee_earned_msat_ptr = (void*)(((uint64_t)fee_earned_msat) & ~1); - CHECK_ACCESS(fee_earned_msat_ptr); - LDKCOption_u64Z fee_earned_msat_conv = *(LDKCOption_u64Z*)(fee_earned_msat_ptr); - fee_earned_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)fee_earned_msat) & ~1)); - LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_copy = Event_payment_forwarded(fee_earned_msat_conv, claim_from_onchain_tx); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ReplyChannelRangeDecodeErrorZ* orig_conv = (LDKCResult_ReplyChannelRangeDecodeErrorZ*)(orig & ~1); + LDKCResult_ReplyChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyChannelRangeDecodeErrorZ), "LDKCResult_ReplyChannelRangeDecodeErrorZ"); + *ret_conv = CResult_ReplyChannelRangeDecodeErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Event_channel_closed(int8_tArray channel_id, int64_t user_channel_id, uint32_t reason) { - LDKThirtyTwoBytes channel_id_ref; - CHECK(*((uint32_t*)channel_id) == 32); - memcpy(channel_id_ref.data, (uint8_t*)(channel_id + 4), 32); - void* reason_ptr = (void*)(((uint64_t)reason) & ~1); - CHECK_ACCESS(reason_ptr); - LDKClosureReason reason_conv = *(LDKClosureReason*)(reason_ptr); - reason_conv = ClosureReason_clone((LDKClosureReason*)(((uint64_t)reason) & ~1)); - LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_copy = Event_channel_closed(channel_id_ref, user_channel_id, reason_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_ok(uint32_t o) { + LDKGossipTimestampFilter o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = GossipTimestampFilter_clone(&o_conv); + LDKCResult_GossipTimestampFilterDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_GossipTimestampFilterDecodeErrorZ), "LDKCResult_GossipTimestampFilterDecodeErrorZ"); + *ret_conv = CResult_GossipTimestampFilterDecodeErrorZ_ok(o_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Event_discard_funding(int8_tArray channel_id, int8_tArray transaction) { - LDKThirtyTwoBytes channel_id_ref; - CHECK(*((uint32_t*)channel_id) == 32); - memcpy(channel_id_ref.data, (uint8_t*)(channel_id + 4), 32); - LDKTransaction transaction_ref; - transaction_ref.datalen = *((uint32_t*)transaction); - transaction_ref.data = MALLOC(transaction_ref.datalen, "LDKTransaction Bytes"); - memcpy(transaction_ref.data, (uint8_t*)(transaction + 4), transaction_ref.datalen); - transaction_ref.data_is_owned = true; - LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_copy = Event_discard_funding(channel_id_ref, transaction_ref); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_GossipTimestampFilterDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_GossipTimestampFilterDecodeErrorZ), "LDKCResult_GossipTimestampFilterDecodeErrorZ"); + *ret_conv = CResult_GossipTimestampFilterDecodeErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Event_payment_path_successful(int8_tArray payment_id, int8_tArray payment_hash, uint32_tArray path) { - LDKThirtyTwoBytes payment_id_ref; - CHECK(*((uint32_t*)payment_id) == 32); - memcpy(payment_id_ref.data, (uint8_t*)(payment_id + 4), 32); - LDKThirtyTwoBytes payment_hash_ref; - CHECK(*((uint32_t*)payment_hash) == 32); - memcpy(payment_hash_ref.data, (uint8_t*)(payment_hash + 4), 32); - LDKCVec_RouteHopZ path_constr; - path_constr.datalen = *((uint32_t*)path); - if (path_constr.datalen > 0) - path_constr.data = MALLOC(path_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); - else - path_constr.data = NULL; - uint32_t* path_vals = (uint32_t*)(path + 4); - for (size_t k = 0; k < path_constr.datalen; k++) { - uint32_t path_conv_10 = path_vals[k]; - LDKRouteHop path_conv_10_conv; - path_conv_10_conv.inner = (void*)(path_conv_10 & (~1)); - path_conv_10_conv.is_owned = (path_conv_10 & 1) || (path_conv_10 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_conv); - path_conv_10_conv = RouteHop_clone(&path_conv_10_conv); - path_constr.data[k] = path_conv_10_conv; - } - LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_copy = Event_payment_path_successful(payment_id_ref, payment_hash_ref, path_constr); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +jboolean __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_GossipTimestampFilterDecodeErrorZ* o_conv = (LDKCResult_GossipTimestampFilterDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_GossipTimestampFilterDecodeErrorZ_is_ok(o_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_Event_write(uint32_t obj) { - LDKEvent* obj_conv = (LDKEvent*)obj; - LDKCVec_u8Z ret_var = Event_write(obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +void __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_GossipTimestampFilterDecodeErrorZ _res_conv = *(LDKCResult_GossipTimestampFilterDecodeErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_GossipTimestampFilterDecodeErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_Event_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_COption_EventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_EventZDecodeErrorZ), "LDKCResult_COption_EventZDecodeErrorZ"); - *ret_conv = Event_read(ser_ref); +static inline uint64_t CResult_GossipTimestampFilterDecodeErrorZ_clone_ptr(LDKCResult_GossipTimestampFilterDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_GossipTimestampFilterDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_GossipTimestampFilterDecodeErrorZ), "LDKCResult_GossipTimestampFilterDecodeErrorZ"); + *ret_conv = CResult_GossipTimestampFilterDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } - -void __attribute__((visibility("default"))) TS_MessageSendEvent_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKMessageSendEvent this_ptr_conv = *(LDKMessageSendEvent*)(this_ptr_ptr); - FREE((void*)this_ptr); - MessageSendEvent_free(this_ptr_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_GossipTimestampFilterDecodeErrorZ* arg_conv = (LDKCResult_GossipTimestampFilterDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_GossipTimestampFilterDecodeErrorZ_clone_ptr(arg_conv); + return ret_val; } -static inline uint64_t MessageSendEvent_clone_ptr(LDKMessageSendEvent *NONNULL_PTR arg) { - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_GossipTimestampFilterDecodeErrorZ* orig_conv = (LDKCResult_GossipTimestampFilterDecodeErrorZ*)(orig & ~1); + LDKCResult_GossipTimestampFilterDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_GossipTimestampFilterDecodeErrorZ), "LDKCResult_GossipTimestampFilterDecodeErrorZ"); + *ret_conv = CResult_GossipTimestampFilterDecodeErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_MessageSendEvent_clone_ptr(uint32_t arg) { - LDKMessageSendEvent* arg_conv = (LDKMessageSendEvent*)arg; - int64_t ret_val = MessageSendEvent_clone_ptr(arg_conv); - return ret_val; + +uint32_t __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_ok(uint32_t o) { + LDKDelayedPaymentOutputDescriptor o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = DelayedPaymentOutputDescriptor_clone(&o_conv); + LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ"); + *ret_conv = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_ok(o_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_clone(uint32_t orig) { - LDKMessageSendEvent* orig_conv = (LDKMessageSendEvent*)orig; - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ"); + *ret_conv = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_accept_channel(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKAcceptChannel msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = AcceptChannel_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_accept_channel(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +jboolean __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* o_conv = (LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_is_ok(o_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_open_channel(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKOpenChannel msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = OpenChannel_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_open_channel(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ _res_conv = *(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_funding_created(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKFundingCreated msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = FundingCreated_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_funding_created(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +static inline uint64_t CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone_ptr(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ"); + *ret_conv = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* arg_conv = (LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_funding_signed(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKFundingSigned msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = FundingSigned_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_funding_signed(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* orig_conv = (LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ*)(orig & ~1); + LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ"); + *ret_conv = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_funding_locked(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKFundingLocked msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = FundingLocked_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_funding_locked(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_ok(uint32_t o) { + LDKStaticPaymentOutputDescriptor o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = StaticPaymentOutputDescriptor_clone(&o_conv); + LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ"); + *ret_conv = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_ok(o_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_announcement_signatures(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKAnnouncementSignatures msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = AnnouncementSignatures_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_announcement_signatures(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ"); + *ret_conv = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_update_htlcs(int8_tArray node_id, uint32_t updates) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKCommitmentUpdate updates_conv; - updates_conv.inner = (void*)(updates & (~1)); - updates_conv.is_owned = (updates & 1) || (updates == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(updates_conv); - updates_conv = CommitmentUpdate_clone(&updates_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_update_htlcs(node_id_ref, updates_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +jboolean __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* o_conv = (LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_is_ok(o_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_revoke_and_ack(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKRevokeAndACK msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = RevokeAndACK_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_revoke_and_ack(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ _res_conv = *(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_StaticPaymentOutputDescriptorDecodeErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_closing_signed(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKClosingSigned msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = ClosingSigned_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_closing_signed(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +static inline uint64_t CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone_ptr(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ"); + *ret_conv = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* arg_conv = (LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_shutdown(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKShutdown msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = Shutdown_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_shutdown(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* orig_conv = (LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ*)(orig & ~1); + LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ"); + *ret_conv = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_channel_reestablish(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKChannelReestablish msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = ChannelReestablish_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_channel_reestablish(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKSpendableOutputDescriptor o_conv = *(LDKSpendableOutputDescriptor*)(o_ptr); + o_conv = SpendableOutputDescriptor_clone((LDKSpendableOutputDescriptor*)(((uint64_t)o) & ~1)); + LDKCResult_SpendableOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpendableOutputDescriptorDecodeErrorZ), "LDKCResult_SpendableOutputDescriptorDecodeErrorZ"); + *ret_conv = CResult_SpendableOutputDescriptorDecodeErrorZ_ok(o_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_broadcast_channel_announcement(uint32_t msg, uint32_t update_msg) { - LDKChannelAnnouncement msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = ChannelAnnouncement_clone(&msg_conv); - LDKChannelUpdate update_msg_conv; - update_msg_conv.inner = (void*)(update_msg & (~1)); - update_msg_conv.is_owned = (update_msg & 1) || (update_msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_msg_conv); - update_msg_conv = ChannelUpdate_clone(&update_msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_broadcast_channel_announcement(msg_conv, update_msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_SpendableOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpendableOutputDescriptorDecodeErrorZ), "LDKCResult_SpendableOutputDescriptorDecodeErrorZ"); + *ret_conv = CResult_SpendableOutputDescriptorDecodeErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_broadcast_node_announcement(uint32_t msg) { - LDKNodeAnnouncement msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = NodeAnnouncement_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_broadcast_node_announcement(msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +jboolean __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_SpendableOutputDescriptorDecodeErrorZ* o_conv = (LDKCResult_SpendableOutputDescriptorDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_SpendableOutputDescriptorDecodeErrorZ_is_ok(o_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_broadcast_channel_update(uint32_t msg) { - LDKChannelUpdate msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = ChannelUpdate_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_broadcast_channel_update(msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_SpendableOutputDescriptorDecodeErrorZ _res_conv = *(LDKCResult_SpendableOutputDescriptorDecodeErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_SpendableOutputDescriptorDecodeErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_channel_update(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKChannelUpdate msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = ChannelUpdate_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_channel_update(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +static inline uint64_t CResult_SpendableOutputDescriptorDecodeErrorZ_clone_ptr(LDKCResult_SpendableOutputDescriptorDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_SpendableOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpendableOutputDescriptorDecodeErrorZ), "LDKCResult_SpendableOutputDescriptorDecodeErrorZ"); + *ret_conv = CResult_SpendableOutputDescriptorDecodeErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_SpendableOutputDescriptorDecodeErrorZ* arg_conv = (LDKCResult_SpendableOutputDescriptorDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_SpendableOutputDescriptorDecodeErrorZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_handle_error(int8_tArray node_id, uint32_t action) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - void* action_ptr = (void*)(((uint64_t)action) & ~1); - CHECK_ACCESS(action_ptr); - LDKErrorAction action_conv = *(LDKErrorAction*)(action_ptr); - action_conv = ErrorAction_clone((LDKErrorAction*)(((uint64_t)action) & ~1)); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_handle_error(node_id_ref, action_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_SpendableOutputDescriptorDecodeErrorZ* orig_conv = (LDKCResult_SpendableOutputDescriptorDecodeErrorZ*)(orig & ~1); + LDKCResult_SpendableOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpendableOutputDescriptorDecodeErrorZ), "LDKCResult_SpendableOutputDescriptorDecodeErrorZ"); + *ret_conv = CResult_SpendableOutputDescriptorDecodeErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_channel_range_query(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKQueryChannelRange msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = QueryChannelRange_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_channel_range_query(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +static inline uint64_t C2Tuple_SignatureCVec_SignatureZZ_clone_ptr(LDKC2Tuple_SignatureCVec_SignatureZZ *NONNULL_PTR arg) { + LDKC2Tuple_SignatureCVec_SignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_SignatureCVec_SignatureZZ), "LDKC2Tuple_SignatureCVec_SignatureZZ"); + *ret_conv = C2Tuple_SignatureCVec_SignatureZZ_clone(arg); + return ((uint64_t)ret_conv); +} +int64_t __attribute__((visibility("default"))) TS_C2Tuple_SignatureCVec_SignatureZZ_clone_ptr(uint32_t arg) { + LDKC2Tuple_SignatureCVec_SignatureZZ* arg_conv = (LDKC2Tuple_SignatureCVec_SignatureZZ*)(arg & ~1); + int64_t ret_val = C2Tuple_SignatureCVec_SignatureZZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_short_ids_query(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKQueryShortChannelIds msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = QueryShortChannelIds_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_short_ids_query(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_SignatureCVec_SignatureZZ_clone(uint32_t orig) { + LDKC2Tuple_SignatureCVec_SignatureZZ* orig_conv = (LDKC2Tuple_SignatureCVec_SignatureZZ*)(orig & ~1); + LDKC2Tuple_SignatureCVec_SignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_SignatureCVec_SignatureZZ), "LDKC2Tuple_SignatureCVec_SignatureZZ"); + *ret_conv = C2Tuple_SignatureCVec_SignatureZZ_clone(orig_conv); + return ((uint64_t)ret_conv); } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_reply_channel_range(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKReplyChannelRange msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = ReplyChannelRange_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_reply_channel_range(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_SignatureCVec_SignatureZZ_new(int8_tArray a, ptrArray b) { + LDKSignature a_ref; + CHECK(a->arr_len == 64); + memcpy(a_ref.compact_form, a->elems, 64); + LDKCVec_SignatureZ b_constr; + b_constr.datalen = b->arr_len; + if (b_constr.datalen > 0) + b_constr.data = MALLOC(b_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); + else + b_constr.data = NULL; + int8_tArray* b_vals = (void*) b->elems; + for (size_t m = 0; m < b_constr.datalen; m++) { + int8_tArray b_conv_12 = b_vals[m]; + LDKSignature b_conv_12_ref; + CHECK(b_conv_12->arr_len == 64); + memcpy(b_conv_12_ref.compact_form, b_conv_12->elems, 64); + b_constr.data[m] = b_conv_12_ref; + } + LDKC2Tuple_SignatureCVec_SignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_SignatureCVec_SignatureZZ), "LDKC2Tuple_SignatureCVec_SignatureZZ"); + *ret_conv = C2Tuple_SignatureCVec_SignatureZZ_new(a_ref, b_constr); + return ((uint64_t)ret_conv); } -void __attribute__((visibility("default"))) TS_MessageSendEventsProvider_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKMessageSendEventsProvider this_ptr_conv = *(LDKMessageSendEventsProvider*)(this_ptr_ptr); - FREE((void*)this_ptr); - MessageSendEventsProvider_free(this_ptr_conv); +void __attribute__((visibility("default"))) TS_C2Tuple_SignatureCVec_SignatureZZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKC2Tuple_SignatureCVec_SignatureZZ _res_conv = *(LDKC2Tuple_SignatureCVec_SignatureZZ*)(_res_ptr); + FREE((void*)_res); + C2Tuple_SignatureCVec_SignatureZZ_free(_res_conv); } -void __attribute__((visibility("default"))) TS_EventsProvider_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKEventsProvider this_ptr_conv = *(LDKEventsProvider*)(this_ptr_ptr); - FREE((void*)this_ptr); - EventsProvider_free(this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKC2Tuple_SignatureCVec_SignatureZZ o_conv = *(LDKC2Tuple_SignatureCVec_SignatureZZ*)(o_ptr); + o_conv = C2Tuple_SignatureCVec_SignatureZZ_clone((LDKC2Tuple_SignatureCVec_SignatureZZ*)(((uint64_t)o) & ~1)); + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ), "LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ"); + *ret_conv = CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_ok(o_conv); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_EventHandler_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKEventHandler this_ptr_conv = *(LDKEventHandler*)(this_ptr_ptr); - FREE((void*)this_ptr); - EventHandler_free(this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_err() { + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ), "LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ"); + *ret_conv = CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_err(); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_APIError_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKAPIError this_ptr_conv = *(LDKAPIError*)(this_ptr_ptr); - FREE((void*)this_ptr); - APIError_free(this_ptr_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_is_ok(uint32_t o) { + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* o_conv = (LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(o & ~1); + jboolean ret_val = CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_is_ok(o_conv); + return ret_val; } -static inline uint64_t APIError_clone_ptr(LDKAPIError *NONNULL_PTR arg) { - LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); - *ret_copy = APIError_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ _res_conv = *(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(_res_ptr); + FREE((void*)_res); + CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_free(_res_conv); } -int64_t __attribute__((visibility("default"))) TS_APIError_clone_ptr(uint32_t arg) { - LDKAPIError* arg_conv = (LDKAPIError*)arg; - int64_t ret_val = APIError_clone_ptr(arg_conv); + +static inline uint64_t CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone_ptr(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ *NONNULL_PTR arg) { + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ), "LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ"); + *ret_conv = CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone_ptr(uint32_t arg) { + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* arg_conv = (LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(arg & ~1); + int64_t ret_val = CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_APIError_clone(uint32_t orig) { - LDKAPIError* orig_conv = (LDKAPIError*)orig; - LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); - *ret_copy = APIError_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone(uint32_t orig) { + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* orig_conv = (LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(orig & ~1); + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ), "LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ"); + *ret_conv = CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_APIError_apimisuse_error(jstring err) { - LDKStr err_conv = str_ref_to_owned_c(err); - LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); - *ret_copy = APIError_apimisuse_error(err_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_ok(int8_tArray o) { + LDKSignature o_ref; + CHECK(o->arr_len == 64); + memcpy(o_ref.compact_form, o->elems, 64); + LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); + *ret_conv = CResult_SignatureNoneZ_ok(o_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_APIError_fee_rate_too_high(jstring err, int32_t feerate) { - LDKStr err_conv = str_ref_to_owned_c(err); - LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); - *ret_copy = APIError_fee_rate_too_high(err_conv, feerate); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_err() { + LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); + *ret_conv = CResult_SignatureNoneZ_err(); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_APIError_route_error(jstring err) { - LDKStr err_conv = str_ref_to_owned_c(err); - LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); - *ret_copy = APIError_route_error(err_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +jboolean __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_is_ok(uint32_t o) { + LDKCResult_SignatureNoneZ* o_conv = (LDKCResult_SignatureNoneZ*)(o & ~1); + jboolean ret_val = CResult_SignatureNoneZ_is_ok(o_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_APIError_channel_unavailable(jstring err) { - LDKStr err_conv = str_ref_to_owned_c(err); - LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); - *ret_copy = APIError_channel_unavailable(err_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_SignatureNoneZ _res_conv = *(LDKCResult_SignatureNoneZ*)(_res_ptr); + FREE((void*)_res); + CResult_SignatureNoneZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_APIError_monitor_update_failed() { - LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); - *ret_copy = APIError_monitor_update_failed(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +static inline uint64_t CResult_SignatureNoneZ_clone_ptr(LDKCResult_SignatureNoneZ *NONNULL_PTR arg) { + LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); + *ret_conv = CResult_SignatureNoneZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_clone_ptr(uint32_t arg) { + LDKCResult_SignatureNoneZ* arg_conv = (LDKCResult_SignatureNoneZ*)(arg & ~1); + int64_t ret_val = CResult_SignatureNoneZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_APIError_incompatible_shutdown_script(uint32_t script) { - LDKShutdownScript script_conv; - script_conv.inner = (void*)(script & (~1)); - script_conv.is_owned = (script & 1) || (script == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(script_conv); - script_conv = ShutdownScript_clone(&script_conv); - LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); - *ret_copy = APIError_incompatible_shutdown_script(script_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_clone(uint32_t orig) { + LDKCResult_SignatureNoneZ* orig_conv = (LDKCResult_SignatureNoneZ*)(orig & ~1); + LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); + *ret_conv = CResult_SignatureNoneZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_sign(int8_tArray msg, int8_tArray sk) { - LDKu8slice msg_ref; - msg_ref.datalen = *((uint32_t*)msg); - msg_ref.data = (int8_t*)(msg + 4); - unsigned char sk_arr[32]; - CHECK(*((uint32_t*)sk) == 32); - memcpy(sk_arr, (uint8_t*)(sk + 4), 32); - unsigned char (*sk_ref)[32] = &sk_arr; - LDKCResult_StringErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StringErrorZ), "LDKCResult_StringErrorZ"); - *ret_conv = sign(msg_ref, sk_ref); +uint32_t __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKSign o_conv = *(LDKSign*)(o_ptr); + LDKCResult_SignDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SignDecodeErrorZ), "LDKCResult_SignDecodeErrorZ"); + *ret_conv = CResult_SignDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_recover_pk(int8_tArray msg, jstring sig) { - LDKu8slice msg_ref; - msg_ref.datalen = *((uint32_t*)msg); - msg_ref.data = (int8_t*)(msg + 4); - LDKStr sig_conv = str_ref_to_owned_c(sig); - LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); - *ret_conv = recover_pk(msg_ref, sig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_SignDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SignDecodeErrorZ), "LDKCResult_SignDecodeErrorZ"); + *ret_conv = CResult_SignDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_verify(int8_tArray msg, jstring sig, int8_tArray pk) { - LDKu8slice msg_ref; - msg_ref.datalen = *((uint32_t*)msg); - msg_ref.data = (int8_t*)(msg + 4); - LDKStr sig_conv = str_ref_to_owned_c(sig); - LDKPublicKey pk_ref; - CHECK(*((uint32_t*)pk) == 33); - memcpy(pk_ref.compressed_form, (uint8_t*)(pk + 4), 33); - jboolean ret_val = verify(msg_ref, sig_conv, pk_ref); +jboolean __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_SignDecodeErrorZ* o_conv = (LDKCResult_SignDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_SignDecodeErrorZ_is_ok(o_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Level_clone(uint32_t orig) { - LDKLevel* orig_conv = (LDKLevel*)(orig & ~1); - uint32_t ret_conv = LDKLevel_to_js(Level_clone(orig_conv)); - return ret_conv; +void __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_SignDecodeErrorZ _res_conv = *(LDKCResult_SignDecodeErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_SignDecodeErrorZ_free(_res_conv); +} + +static inline uint64_t CResult_SignDecodeErrorZ_clone_ptr(LDKCResult_SignDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_SignDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SignDecodeErrorZ), "LDKCResult_SignDecodeErrorZ"); + *ret_conv = CResult_SignDecodeErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_SignDecodeErrorZ* arg_conv = (LDKCResult_SignDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_SignDecodeErrorZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Level_gossip() { - uint32_t ret_conv = LDKLevel_to_js(Level_gossip()); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_SignDecodeErrorZ* orig_conv = (LDKCResult_SignDecodeErrorZ*)(orig & ~1); + LDKCResult_SignDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SignDecodeErrorZ), "LDKCResult_SignDecodeErrorZ"); + *ret_conv = CResult_SignDecodeErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Level_trace() { - uint32_t ret_conv = LDKLevel_to_js(Level_trace()); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_ok(int8_tArray arg) { + LDKRecoverableSignature arg_ref; + CHECK(arg->arr_len == 68); + memcpy(arg_ref.serialized_form, arg->elems, 68); + LDKCResult_RecoverableSignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_RecoverableSignatureNoneZ), "LDKCResult_RecoverableSignatureNoneZ"); + *ret_conv = CResult_RecoverableSignatureNoneZ_ok(arg_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Level_debug() { - uint32_t ret_conv = LDKLevel_to_js(Level_debug()); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_err() { + LDKCResult_RecoverableSignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_RecoverableSignatureNoneZ), "LDKCResult_RecoverableSignatureNoneZ"); + *ret_conv = CResult_RecoverableSignatureNoneZ_err(); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Level_info() { - uint32_t ret_conv = LDKLevel_to_js(Level_info()); - return ret_conv; +jboolean __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_is_ok(uint32_t o) { + LDKCResult_RecoverableSignatureNoneZ* o_conv = (LDKCResult_RecoverableSignatureNoneZ*)(o & ~1); + jboolean ret_val = CResult_RecoverableSignatureNoneZ_is_ok(o_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Level_warn() { - uint32_t ret_conv = LDKLevel_to_js(Level_warn()); - return ret_conv; +void __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_RecoverableSignatureNoneZ _res_conv = *(LDKCResult_RecoverableSignatureNoneZ*)(_res_ptr); + FREE((void*)_res); + CResult_RecoverableSignatureNoneZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_Level_error() { - uint32_t ret_conv = LDKLevel_to_js(Level_error()); - return ret_conv; +static inline uint64_t CResult_RecoverableSignatureNoneZ_clone_ptr(LDKCResult_RecoverableSignatureNoneZ *NONNULL_PTR arg) { + LDKCResult_RecoverableSignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_RecoverableSignatureNoneZ), "LDKCResult_RecoverableSignatureNoneZ"); + *ret_conv = CResult_RecoverableSignatureNoneZ_clone(arg); + return (uint64_t)ret_conv; } - -jboolean __attribute__((visibility("default"))) TS_Level_eq(uint32_t a, uint32_t b) { - LDKLevel* a_conv = (LDKLevel*)(a & ~1); - LDKLevel* b_conv = (LDKLevel*)(b & ~1); - jboolean ret_val = Level_eq(a_conv, b_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_clone_ptr(uint32_t arg) { + LDKCResult_RecoverableSignatureNoneZ* arg_conv = (LDKCResult_RecoverableSignatureNoneZ*)(arg & ~1); + int64_t ret_val = CResult_RecoverableSignatureNoneZ_clone_ptr(arg_conv); return ret_val; } -int64_t __attribute__((visibility("default"))) TS_Level_hash(uint32_t o) { - LDKLevel* o_conv = (LDKLevel*)(o & ~1); - int64_t ret_val = Level_hash(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_clone(uint32_t orig) { + LDKCResult_RecoverableSignatureNoneZ* orig_conv = (LDKCResult_RecoverableSignatureNoneZ*)(orig & ~1); + LDKCResult_RecoverableSignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_RecoverableSignatureNoneZ), "LDKCResult_RecoverableSignatureNoneZ"); + *ret_conv = CResult_RecoverableSignatureNoneZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Level_max() { - uint32_t ret_conv = LDKLevel_to_js(Level_max()); - return ret_conv; +void __attribute__((visibility("default"))) TS_CVec_CVec_u8ZZ_free(ptrArray _res) { + LDKCVec_CVec_u8ZZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKCVec_u8Z), "LDKCVec_CVec_u8ZZ Elements"); + else + _res_constr.data = NULL; + int8_tArray* _res_vals = (void*) _res->elems; + for (size_t m = 0; m < _res_constr.datalen; m++) { + int8_tArray _res_conv_12 = _res_vals[m]; + LDKCVec_u8Z _res_conv_12_ref; + _res_conv_12_ref.datalen = _res_conv_12->arr_len; + _res_conv_12_ref.data = MALLOC(_res_conv_12_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(_res_conv_12_ref.data, _res_conv_12->elems, _res_conv_12_ref.datalen); + _res_constr.data[m] = _res_conv_12_ref; + } + CVec_CVec_u8ZZ_free(_res_constr); } -void __attribute__((visibility("default"))) TS_Record_free(uint32_t this_obj) { - LDKRecord this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - Record_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_ok(ptrArray o) { + LDKCVec_CVec_u8ZZ o_constr; + o_constr.datalen = o->arr_len; + if (o_constr.datalen > 0) + o_constr.data = MALLOC(o_constr.datalen * sizeof(LDKCVec_u8Z), "LDKCVec_CVec_u8ZZ Elements"); + else + o_constr.data = NULL; + int8_tArray* o_vals = (void*) o->elems; + for (size_t m = 0; m < o_constr.datalen; m++) { + int8_tArray o_conv_12 = o_vals[m]; + LDKCVec_u8Z o_conv_12_ref; + o_conv_12_ref.datalen = o_conv_12->arr_len; + o_conv_12_ref.data = MALLOC(o_conv_12_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(o_conv_12_ref.data, o_conv_12->elems, o_conv_12_ref.datalen); + o_constr.data[m] = o_conv_12_ref; + } + LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ"); + *ret_conv = CResult_CVec_CVec_u8ZZNoneZ_ok(o_constr); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Record_get_level(uint32_t this_ptr) { - LDKRecord this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - uint32_t ret_conv = LDKLevel_to_js(Record_get_level(&this_ptr_conv)); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_err() { + LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ"); + *ret_conv = CResult_CVec_CVec_u8ZZNoneZ_err(); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_Record_set_level(uint32_t this_ptr, uint32_t val) { - LDKRecord this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKLevel val_conv = LDKLevel_from_js(val); - Record_set_level(&this_ptr_conv, val_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_is_ok(uint32_t o) { + LDKCResult_CVec_CVec_u8ZZNoneZ* o_conv = (LDKCResult_CVec_CVec_u8ZZNoneZ*)(o & ~1); + jboolean ret_val = CResult_CVec_CVec_u8ZZNoneZ_is_ok(o_conv); + return ret_val; } -jstring __attribute__((visibility("default"))) TS_Record_get_args(uint32_t this_ptr) { - LDKRecord this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKStr ret_str = Record_get_args(&this_ptr_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; +void __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_CVec_CVec_u8ZZNoneZ _res_conv = *(LDKCResult_CVec_CVec_u8ZZNoneZ*)(_res_ptr); + FREE((void*)_res); + CResult_CVec_CVec_u8ZZNoneZ_free(_res_conv); } -void __attribute__((visibility("default"))) TS_Record_set_args(uint32_t this_ptr, jstring val) { - LDKRecord this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKStr val_conv = str_ref_to_owned_c(val); - Record_set_args(&this_ptr_conv, val_conv); +static inline uint64_t CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR arg) { + LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ"); + *ret_conv = CResult_CVec_CVec_u8ZZNoneZ_clone(arg); + return (uint64_t)ret_conv; } - -jstring __attribute__((visibility("default"))) TS_Record_get_module_path(uint32_t this_ptr) { - LDKRecord this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKStr ret_str = Record_get_module_path(&this_ptr_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; +int64_t __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(uint32_t arg) { + LDKCResult_CVec_CVec_u8ZZNoneZ* arg_conv = (LDKCResult_CVec_CVec_u8ZZNoneZ*)(arg & ~1); + int64_t ret_val = CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(arg_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_Record_set_module_path(uint32_t this_ptr, jstring val) { - LDKRecord this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKStr val_conv = str_ref_to_owned_c(val); - Record_set_module_path(&this_ptr_conv, val_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_clone(uint32_t orig) { + LDKCResult_CVec_CVec_u8ZZNoneZ* orig_conv = (LDKCResult_CVec_CVec_u8ZZNoneZ*)(orig & ~1); + LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ"); + *ret_conv = CResult_CVec_CVec_u8ZZNoneZ_clone(orig_conv); + return (uint64_t)ret_conv; } -jstring __attribute__((visibility("default"))) TS_Record_get_file(uint32_t this_ptr) { - LDKRecord this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKStr ret_str = Record_get_file(&this_ptr_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_ok(uint32_t o) { + LDKInMemorySigner o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = InMemorySigner_clone(&o_conv); + LDKCResult_InMemorySignerDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InMemorySignerDecodeErrorZ), "LDKCResult_InMemorySignerDecodeErrorZ"); + *ret_conv = CResult_InMemorySignerDecodeErrorZ_ok(o_conv); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_Record_set_file(uint32_t this_ptr, jstring val) { - LDKRecord this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKStr val_conv = str_ref_to_owned_c(val); - Record_set_file(&this_ptr_conv, val_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_InMemorySignerDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InMemorySignerDecodeErrorZ), "LDKCResult_InMemorySignerDecodeErrorZ"); + *ret_conv = CResult_InMemorySignerDecodeErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -int32_t __attribute__((visibility("default"))) TS_Record_get_line(uint32_t this_ptr) { - LDKRecord this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = Record_get_line(&this_ptr_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_InMemorySignerDecodeErrorZ* o_conv = (LDKCResult_InMemorySignerDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_InMemorySignerDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_Record_set_line(uint32_t this_ptr, int32_t val) { - LDKRecord this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - Record_set_line(&this_ptr_conv, val); +void __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_InMemorySignerDecodeErrorZ _res_conv = *(LDKCResult_InMemorySignerDecodeErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_InMemorySignerDecodeErrorZ_free(_res_conv); } -static inline uint64_t Record_clone_ptr(LDKRecord *NONNULL_PTR arg) { - LDKRecord ret_var = Record_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; +static inline uint64_t CResult_InMemorySignerDecodeErrorZ_clone_ptr(LDKCResult_InMemorySignerDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_InMemorySignerDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InMemorySignerDecodeErrorZ), "LDKCResult_InMemorySignerDecodeErrorZ"); + *ret_conv = CResult_InMemorySignerDecodeErrorZ_clone(arg); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_Record_clone_ptr(uint32_t arg) { - LDKRecord arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = Record_clone_ptr(&arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_InMemorySignerDecodeErrorZ* arg_conv = (LDKCResult_InMemorySignerDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_InMemorySignerDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Record_clone(uint32_t orig) { - LDKRecord orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKRecord ret_var = Record_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_InMemorySignerDecodeErrorZ* orig_conv = (LDKCResult_InMemorySignerDecodeErrorZ*)(orig & ~1); + LDKCResult_InMemorySignerDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InMemorySignerDecodeErrorZ), "LDKCResult_InMemorySignerDecodeErrorZ"); + *ret_conv = CResult_InMemorySignerDecodeErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_CVec_TxOutZ_free(uint32_tArray _res) { + LDKCVec_TxOutZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKTxOut), "LDKCVec_TxOutZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t h = 0; h < _res_constr.datalen; h++) { + uint32_t _res_conv_7 = _res_vals[h]; + void* _res_conv_7_ptr = (void*)(((uint64_t)_res_conv_7) & ~1); + CHECK_ACCESS(_res_conv_7_ptr); + LDKTxOut _res_conv_7_conv = *(LDKTxOut*)(_res_conv_7_ptr); + FREE((void*)_res_conv_7); + _res_constr.data[h] = _res_conv_7_conv; } - return ret_ref; + CVec_TxOutZ_free(_res_constr); } -void __attribute__((visibility("default"))) TS_Logger_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKLogger this_ptr_conv = *(LDKLogger*)(this_ptr_ptr); - FREE((void*)this_ptr); - Logger_free(this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_ok(int8_tArray o) { + LDKTransaction o_ref; + o_ref.datalen = o->arr_len; + o_ref.data = MALLOC(o_ref.datalen, "LDKTransaction Bytes"); + memcpy(o_ref.data, o->elems, o_ref.datalen); + o_ref.data_is_owned = true; + LDKCResult_TransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TransactionNoneZ), "LDKCResult_TransactionNoneZ"); + *ret_conv = CResult_TransactionNoneZ_ok(o_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_free(uint32_t this_obj) { - LDKChannelHandshakeConfig this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelHandshakeConfig_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_err() { + LDKCResult_TransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TransactionNoneZ), "LDKCResult_TransactionNoneZ"); + *ret_conv = CResult_TransactionNoneZ_err(); + return (uint64_t)ret_conv; } -int32_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_get_minimum_depth(uint32_t this_ptr) { - LDKChannelHandshakeConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = ChannelHandshakeConfig_get_minimum_depth(&this_ptr_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_is_ok(uint32_t o) { + LDKCResult_TransactionNoneZ* o_conv = (LDKCResult_TransactionNoneZ*)(o & ~1); + jboolean ret_val = CResult_TransactionNoneZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_set_minimum_depth(uint32_t this_ptr, int32_t val) { - LDKChannelHandshakeConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelHandshakeConfig_set_minimum_depth(&this_ptr_conv, val); +void __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_TransactionNoneZ _res_conv = *(LDKCResult_TransactionNoneZ*)(_res_ptr); + FREE((void*)_res); + CResult_TransactionNoneZ_free(_res_conv); } -int16_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_get_our_to_self_delay(uint32_t this_ptr) { - LDKChannelHandshakeConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = ChannelHandshakeConfig_get_our_to_self_delay(&this_ptr_conv); +static inline uint64_t CResult_TransactionNoneZ_clone_ptr(LDKCResult_TransactionNoneZ *NONNULL_PTR arg) { + LDKCResult_TransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TransactionNoneZ), "LDKCResult_TransactionNoneZ"); + *ret_conv = CResult_TransactionNoneZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_clone_ptr(uint32_t arg) { + LDKCResult_TransactionNoneZ* arg_conv = (LDKCResult_TransactionNoneZ*)(arg & ~1); + int64_t ret_val = CResult_TransactionNoneZ_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_set_our_to_self_delay(uint32_t this_ptr, int16_t val) { - LDKChannelHandshakeConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelHandshakeConfig_set_our_to_self_delay(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_clone(uint32_t orig) { + LDKCResult_TransactionNoneZ* orig_conv = (LDKCResult_TransactionNoneZ*)(orig & ~1); + LDKCResult_TransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TransactionNoneZ), "LDKCResult_TransactionNoneZ"); + *ret_conv = CResult_TransactionNoneZ_clone(orig_conv); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_get_our_htlc_minimum_msat(uint32_t this_ptr) { - LDKChannelHandshakeConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelHandshakeConfig_get_our_htlc_minimum_msat(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_COption_FilterZ_some(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKFilter o_conv = *(LDKFilter*)(o_ptr); + LDKCOption_FilterZ *ret_copy = MALLOC(sizeof(LDKCOption_FilterZ), "LDKCOption_FilterZ"); + *ret_copy = COption_FilterZ_some(o_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_set_our_htlc_minimum_msat(uint32_t this_ptr, int64_t val) { - LDKChannelHandshakeConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelHandshakeConfig_set_our_htlc_minimum_msat(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_COption_FilterZ_none() { + LDKCOption_FilterZ *ret_copy = MALLOC(sizeof(LDKCOption_FilterZ), "LDKCOption_FilterZ"); + *ret_copy = COption_FilterZ_none(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_new(int32_t minimum_depth_arg, int16_t our_to_self_delay_arg, int64_t our_htlc_minimum_msat_arg) { - LDKChannelHandshakeConfig ret_var = ChannelHandshakeConfig_new(minimum_depth_arg, our_to_self_delay_arg, our_htlc_minimum_msat_arg); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_COption_FilterZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCOption_FilterZ _res_conv = *(LDKCOption_FilterZ*)(_res_ptr); + FREE((void*)_res); + COption_FilterZ_free(_res_conv); } -static inline uint64_t ChannelHandshakeConfig_clone_ptr(LDKChannelHandshakeConfig *NONNULL_PTR arg) { - LDKChannelHandshakeConfig ret_var = ChannelHandshakeConfig_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_CResult_LockedChannelMonitorNoneZ_ok(uint32_t o) { + LDKLockedChannelMonitor o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + // Warning: we need a move here but no clone is available for LDKLockedChannelMonitor + LDKCResult_LockedChannelMonitorNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_LockedChannelMonitorNoneZ), "LDKCResult_LockedChannelMonitorNoneZ"); + *ret_conv = CResult_LockedChannelMonitorNoneZ_ok(o_conv); + return (uint64_t)ret_conv; } - return ret_ref; + +uint32_t __attribute__((visibility("default"))) TS_CResult_LockedChannelMonitorNoneZ_err() { + LDKCResult_LockedChannelMonitorNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_LockedChannelMonitorNoneZ), "LDKCResult_LockedChannelMonitorNoneZ"); + *ret_conv = CResult_LockedChannelMonitorNoneZ_err(); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_clone_ptr(uint32_t arg) { - LDKChannelHandshakeConfig arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelHandshakeConfig_clone_ptr(&arg_conv); + +jboolean __attribute__((visibility("default"))) TS_CResult_LockedChannelMonitorNoneZ_is_ok(uint32_t o) { + LDKCResult_LockedChannelMonitorNoneZ* o_conv = (LDKCResult_LockedChannelMonitorNoneZ*)(o & ~1); + jboolean ret_val = CResult_LockedChannelMonitorNoneZ_is_ok(o_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_clone(uint32_t orig) { - LDKChannelHandshakeConfig orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelHandshakeConfig ret_var = ChannelHandshakeConfig_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_CResult_LockedChannelMonitorNoneZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_LockedChannelMonitorNoneZ _res_conv = *(LDKCResult_LockedChannelMonitorNoneZ*)(_res_ptr); + FREE((void*)_res); + CResult_LockedChannelMonitorNoneZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_default() { - LDKChannelHandshakeConfig ret_var = ChannelHandshakeConfig_default(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; +void __attribute__((visibility("default"))) TS_CVec_OutPointZ_free(uint32_tArray _res) { + LDKCVec_OutPointZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKOutPoint), "LDKCVec_OutPointZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t k = 0; k < _res_constr.datalen; k++) { + uint32_t _res_conv_10 = _res_vals[k]; + LDKOutPoint _res_conv_10_conv; + _res_conv_10_conv.inner = (void*)(_res_conv_10 & (~1)); + _res_conv_10_conv.is_owned = (_res_conv_10 & 1) || (_res_conv_10 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_10_conv); + _res_constr.data[k] = _res_conv_10_conv; } - return ret_ref; + CVec_OutPointZ_free(_res_constr); } -void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_free(uint32_t this_obj) { - LDKChannelHandshakeLimits this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelHandshakeLimits_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_ok() { + LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); + *ret_conv = CResult_NoneAPIErrorZ_ok(); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_min_funding_satoshis(uint32_t this_ptr) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelHandshakeLimits_get_min_funding_satoshis(&this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_err(uint32_t e) { + void* e_ptr = (void*)(((uint64_t)e) & ~1); + CHECK_ACCESS(e_ptr); + LDKAPIError e_conv = *(LDKAPIError*)(e_ptr); + e_conv = APIError_clone((LDKAPIError*)(((uint64_t)e) & ~1)); + LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); + *ret_conv = CResult_NoneAPIErrorZ_err(e_conv); + return (uint64_t)ret_conv; +} + +jboolean __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_is_ok(uint32_t o) { + LDKCResult_NoneAPIErrorZ* o_conv = (LDKCResult_NoneAPIErrorZ*)(o & ~1); + jboolean ret_val = CResult_NoneAPIErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_min_funding_satoshis(uint32_t this_ptr, int64_t val) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelHandshakeLimits_set_min_funding_satoshis(&this_ptr_conv, val); +void __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_NoneAPIErrorZ _res_conv = *(LDKCResult_NoneAPIErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_NoneAPIErrorZ_free(_res_conv); } -int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_max_htlc_minimum_msat(uint32_t this_ptr) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelHandshakeLimits_get_max_htlc_minimum_msat(&this_ptr_conv); +static inline uint64_t CResult_NoneAPIErrorZ_clone_ptr(LDKCResult_NoneAPIErrorZ *NONNULL_PTR arg) { + LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); + *ret_conv = CResult_NoneAPIErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_NoneAPIErrorZ* arg_conv = (LDKCResult_NoneAPIErrorZ*)(arg & ~1); + int64_t ret_val = CResult_NoneAPIErrorZ_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_max_htlc_minimum_msat(uint32_t this_ptr, int64_t val) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelHandshakeLimits_set_max_htlc_minimum_msat(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_clone(uint32_t orig) { + LDKCResult_NoneAPIErrorZ* orig_conv = (LDKCResult_NoneAPIErrorZ*)(orig & ~1); + LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); + *ret_conv = CResult_NoneAPIErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_min_max_htlc_value_in_flight_msat(uint32_t this_ptr) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelHandshakeLimits_get_min_max_htlc_value_in_flight_msat(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_COption_u16Z_some(int16_t o) { + LDKCOption_u16Z *ret_copy = MALLOC(sizeof(LDKCOption_u16Z), "LDKCOption_u16Z"); + *ret_copy = COption_u16Z_some(o); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_min_max_htlc_value_in_flight_msat(uint32_t this_ptr, int64_t val) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelHandshakeLimits_set_min_max_htlc_value_in_flight_msat(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_COption_u16Z_none() { + LDKCOption_u16Z *ret_copy = MALLOC(sizeof(LDKCOption_u16Z), "LDKCOption_u16Z"); + *ret_copy = COption_u16Z_none(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_max_channel_reserve_satoshis(uint32_t this_ptr) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelHandshakeLimits_get_max_channel_reserve_satoshis(&this_ptr_conv); +void __attribute__((visibility("default"))) TS_COption_u16Z_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCOption_u16Z _res_conv = *(LDKCOption_u16Z*)(_res_ptr); + FREE((void*)_res); + COption_u16Z_free(_res_conv); +} + +static inline uint64_t COption_u16Z_clone_ptr(LDKCOption_u16Z *NONNULL_PTR arg) { + LDKCOption_u16Z *ret_copy = MALLOC(sizeof(LDKCOption_u16Z), "LDKCOption_u16Z"); + *ret_copy = COption_u16Z_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_COption_u16Z_clone_ptr(uint32_t arg) { + LDKCOption_u16Z* arg_conv = (LDKCOption_u16Z*)arg; + int64_t ret_val = COption_u16Z_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_max_channel_reserve_satoshis(uint32_t this_ptr, int64_t val) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelHandshakeLimits_set_max_channel_reserve_satoshis(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_COption_u16Z_clone(uint32_t orig) { + LDKCOption_u16Z* orig_conv = (LDKCOption_u16Z*)orig; + LDKCOption_u16Z *ret_copy = MALLOC(sizeof(LDKCOption_u16Z), "LDKCOption_u16Z"); + *ret_copy = COption_u16Z_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -int16_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_min_max_accepted_htlcs(uint32_t this_ptr) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = ChannelHandshakeLimits_get_min_max_accepted_htlcs(&this_ptr_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_CVec_CResult_NoneAPIErrorZZ_free(uint32_tArray _res) { + LDKCVec_CResult_NoneAPIErrorZZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKCResult_NoneAPIErrorZ), "LDKCVec_CResult_NoneAPIErrorZZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t w = 0; w < _res_constr.datalen; w++) { + uint32_t _res_conv_22 = _res_vals[w]; + void* _res_conv_22_ptr = (void*)(((uint64_t)_res_conv_22) & ~1); + CHECK_ACCESS(_res_conv_22_ptr); + LDKCResult_NoneAPIErrorZ _res_conv_22_conv = *(LDKCResult_NoneAPIErrorZ*)(_res_conv_22_ptr); + FREE((void*)_res_conv_22); + _res_constr.data[w] = _res_conv_22_conv; + } + CVec_CResult_NoneAPIErrorZZ_free(_res_constr); } -void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_min_max_accepted_htlcs(uint32_t this_ptr, int16_t val) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelHandshakeLimits_set_min_max_accepted_htlcs(&this_ptr_conv, val); +void __attribute__((visibility("default"))) TS_CVec_APIErrorZ_free(uint32_tArray _res) { + LDKCVec_APIErrorZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKAPIError), "LDKCVec_APIErrorZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t k = 0; k < _res_constr.datalen; k++) { + uint32_t _res_conv_10 = _res_vals[k]; + void* _res_conv_10_ptr = (void*)(((uint64_t)_res_conv_10) & ~1); + CHECK_ACCESS(_res_conv_10_ptr); + LDKAPIError _res_conv_10_conv = *(LDKAPIError*)(_res_conv_10_ptr); + FREE((void*)_res_conv_10); + _res_constr.data[k] = _res_conv_10_conv; + } + CVec_APIErrorZ_free(_res_constr); } -int32_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_max_minimum_depth(uint32_t this_ptr) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = ChannelHandshakeLimits_get_max_minimum_depth(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_ok(int8_tArray o) { + LDKThirtyTwoBytes o_ref; + CHECK(o->arr_len == 32); + memcpy(o_ref.data, o->elems, 32); + LDKCResult__u832APIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult__u832APIErrorZ), "LDKCResult__u832APIErrorZ"); + *ret_conv = CResult__u832APIErrorZ_ok(o_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_max_minimum_depth(uint32_t this_ptr, int32_t val) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelHandshakeLimits_set_max_minimum_depth(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_err(uint32_t e) { + void* e_ptr = (void*)(((uint64_t)e) & ~1); + CHECK_ACCESS(e_ptr); + LDKAPIError e_conv = *(LDKAPIError*)(e_ptr); + e_conv = APIError_clone((LDKAPIError*)(((uint64_t)e) & ~1)); + LDKCResult__u832APIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult__u832APIErrorZ), "LDKCResult__u832APIErrorZ"); + *ret_conv = CResult__u832APIErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_force_announced_channel_preference(uint32_t this_ptr) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = ChannelHandshakeLimits_get_force_announced_channel_preference(&this_ptr_conv); +jboolean __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_is_ok(uint32_t o) { + LDKCResult__u832APIErrorZ* o_conv = (LDKCResult__u832APIErrorZ*)(o & ~1); + jboolean ret_val = CResult__u832APIErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_force_announced_channel_preference(uint32_t this_ptr, jboolean val) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelHandshakeLimits_set_force_announced_channel_preference(&this_ptr_conv, val); +void __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult__u832APIErrorZ _res_conv = *(LDKCResult__u832APIErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult__u832APIErrorZ_free(_res_conv); } -int16_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_their_to_self_delay(uint32_t this_ptr) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = ChannelHandshakeLimits_get_their_to_self_delay(&this_ptr_conv); +static inline uint64_t CResult__u832APIErrorZ_clone_ptr(LDKCResult__u832APIErrorZ *NONNULL_PTR arg) { + LDKCResult__u832APIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult__u832APIErrorZ), "LDKCResult__u832APIErrorZ"); + *ret_conv = CResult__u832APIErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_clone_ptr(uint32_t arg) { + LDKCResult__u832APIErrorZ* arg_conv = (LDKCResult__u832APIErrorZ*)(arg & ~1); + int64_t ret_val = CResult__u832APIErrorZ_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_their_to_self_delay(uint32_t this_ptr, int16_t val) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelHandshakeLimits_set_their_to_self_delay(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_clone(uint32_t orig) { + LDKCResult__u832APIErrorZ* orig_conv = (LDKCResult__u832APIErrorZ*)(orig & ~1); + LDKCResult__u832APIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult__u832APIErrorZ), "LDKCResult__u832APIErrorZ"); + *ret_conv = CResult__u832APIErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_new(int64_t min_funding_satoshis_arg, int64_t max_htlc_minimum_msat_arg, int64_t min_max_htlc_value_in_flight_msat_arg, int64_t max_channel_reserve_satoshis_arg, int16_t min_max_accepted_htlcs_arg, int32_t max_minimum_depth_arg, jboolean force_announced_channel_preference_arg, int16_t their_to_self_delay_arg) { - LDKChannelHandshakeLimits ret_var = ChannelHandshakeLimits_new(min_funding_satoshis_arg, max_htlc_minimum_msat_arg, min_max_htlc_value_in_flight_msat_arg, max_channel_reserve_satoshis_arg, min_max_accepted_htlcs_arg, max_minimum_depth_arg, force_announced_channel_preference_arg, their_to_self_delay_arg); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_ok(int8_tArray o) { + LDKThirtyTwoBytes o_ref; + CHECK(o->arr_len == 32); + memcpy(o_ref.data, o->elems, 32); + LDKCResult_PaymentIdPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentSendFailureZ), "LDKCResult_PaymentIdPaymentSendFailureZ"); + *ret_conv = CResult_PaymentIdPaymentSendFailureZ_ok(o_ref); + return (uint64_t)ret_conv; } -static inline uint64_t ChannelHandshakeLimits_clone_ptr(LDKChannelHandshakeLimits *NONNULL_PTR arg) { - LDKChannelHandshakeLimits ret_var = ChannelHandshakeLimits_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_err(uint32_t e) { + void* e_ptr = (void*)(((uint64_t)e) & ~1); + CHECK_ACCESS(e_ptr); + LDKPaymentSendFailure e_conv = *(LDKPaymentSendFailure*)(e_ptr); + e_conv = PaymentSendFailure_clone((LDKPaymentSendFailure*)(((uint64_t)e) & ~1)); + LDKCResult_PaymentIdPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentSendFailureZ), "LDKCResult_PaymentIdPaymentSendFailureZ"); + *ret_conv = CResult_PaymentIdPaymentSendFailureZ_err(e_conv); + return (uint64_t)ret_conv; +} + +jboolean __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_is_ok(uint32_t o) { + LDKCResult_PaymentIdPaymentSendFailureZ* o_conv = (LDKCResult_PaymentIdPaymentSendFailureZ*)(o & ~1); + jboolean ret_val = CResult_PaymentIdPaymentSendFailureZ_is_ok(o_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_PaymentIdPaymentSendFailureZ _res_conv = *(LDKCResult_PaymentIdPaymentSendFailureZ*)(_res_ptr); + FREE((void*)_res); + CResult_PaymentIdPaymentSendFailureZ_free(_res_conv); } - return ret_ref; + +static inline uint64_t CResult_PaymentIdPaymentSendFailureZ_clone_ptr(LDKCResult_PaymentIdPaymentSendFailureZ *NONNULL_PTR arg) { + LDKCResult_PaymentIdPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentSendFailureZ), "LDKCResult_PaymentIdPaymentSendFailureZ"); + *ret_conv = CResult_PaymentIdPaymentSendFailureZ_clone(arg); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_clone_ptr(uint32_t arg) { - LDKChannelHandshakeLimits arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelHandshakeLimits_clone_ptr(&arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_clone_ptr(uint32_t arg) { + LDKCResult_PaymentIdPaymentSendFailureZ* arg_conv = (LDKCResult_PaymentIdPaymentSendFailureZ*)(arg & ~1); + int64_t ret_val = CResult_PaymentIdPaymentSendFailureZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_clone(uint32_t orig) { - LDKChannelHandshakeLimits orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelHandshakeLimits ret_var = ChannelHandshakeLimits_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_clone(uint32_t orig) { + LDKCResult_PaymentIdPaymentSendFailureZ* orig_conv = (LDKCResult_PaymentIdPaymentSendFailureZ*)(orig & ~1); + LDKCResult_PaymentIdPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentSendFailureZ), "LDKCResult_PaymentIdPaymentSendFailureZ"); + *ret_conv = CResult_PaymentIdPaymentSendFailureZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_default() { - LDKChannelHandshakeLimits ret_var = ChannelHandshakeLimits_default(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_ok() { + LDKCResult_NonePaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentSendFailureZ), "LDKCResult_NonePaymentSendFailureZ"); + *ret_conv = CResult_NonePaymentSendFailureZ_ok(); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_ChannelConfig_free(uint32_t this_obj) { - LDKChannelConfig this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelConfig_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_err(uint32_t e) { + void* e_ptr = (void*)(((uint64_t)e) & ~1); + CHECK_ACCESS(e_ptr); + LDKPaymentSendFailure e_conv = *(LDKPaymentSendFailure*)(e_ptr); + e_conv = PaymentSendFailure_clone((LDKPaymentSendFailure*)(((uint64_t)e) & ~1)); + LDKCResult_NonePaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentSendFailureZ), "LDKCResult_NonePaymentSendFailureZ"); + *ret_conv = CResult_NonePaymentSendFailureZ_err(e_conv); + return (uint64_t)ret_conv; } -int32_t __attribute__((visibility("default"))) TS_ChannelConfig_get_forwarding_fee_proportional_millionths(uint32_t this_ptr) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = ChannelConfig_get_forwarding_fee_proportional_millionths(&this_ptr_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_is_ok(uint32_t o) { + LDKCResult_NonePaymentSendFailureZ* o_conv = (LDKCResult_NonePaymentSendFailureZ*)(o & ~1); + jboolean ret_val = CResult_NonePaymentSendFailureZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelConfig_set_forwarding_fee_proportional_millionths(uint32_t this_ptr, int32_t val) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelConfig_set_forwarding_fee_proportional_millionths(&this_ptr_conv, val); +void __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_NonePaymentSendFailureZ _res_conv = *(LDKCResult_NonePaymentSendFailureZ*)(_res_ptr); + FREE((void*)_res); + CResult_NonePaymentSendFailureZ_free(_res_conv); } -int32_t __attribute__((visibility("default"))) TS_ChannelConfig_get_forwarding_fee_base_msat(uint32_t this_ptr) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = ChannelConfig_get_forwarding_fee_base_msat(&this_ptr_conv); +static inline uint64_t CResult_NonePaymentSendFailureZ_clone_ptr(LDKCResult_NonePaymentSendFailureZ *NONNULL_PTR arg) { + LDKCResult_NonePaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentSendFailureZ), "LDKCResult_NonePaymentSendFailureZ"); + *ret_conv = CResult_NonePaymentSendFailureZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_clone_ptr(uint32_t arg) { + LDKCResult_NonePaymentSendFailureZ* arg_conv = (LDKCResult_NonePaymentSendFailureZ*)(arg & ~1); + int64_t ret_val = CResult_NonePaymentSendFailureZ_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelConfig_set_forwarding_fee_base_msat(uint32_t this_ptr, int32_t val) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelConfig_set_forwarding_fee_base_msat(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_clone(uint32_t orig) { + LDKCResult_NonePaymentSendFailureZ* orig_conv = (LDKCResult_NonePaymentSendFailureZ*)(orig & ~1); + LDKCResult_NonePaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentSendFailureZ), "LDKCResult_NonePaymentSendFailureZ"); + *ret_conv = CResult_NonePaymentSendFailureZ_clone(orig_conv); + return (uint64_t)ret_conv; } -int16_t __attribute__((visibility("default"))) TS_ChannelConfig_get_cltv_expiry_delta(uint32_t this_ptr) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = ChannelConfig_get_cltv_expiry_delta(&this_ptr_conv); +static inline uint64_t C2Tuple_PaymentHashPaymentIdZ_clone_ptr(LDKC2Tuple_PaymentHashPaymentIdZ *NONNULL_PTR arg) { + LDKC2Tuple_PaymentHashPaymentIdZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentIdZ), "LDKC2Tuple_PaymentHashPaymentIdZ"); + *ret_conv = C2Tuple_PaymentHashPaymentIdZ_clone(arg); + return ((uint64_t)ret_conv); +} +int64_t __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentIdZ_clone_ptr(uint32_t arg) { + LDKC2Tuple_PaymentHashPaymentIdZ* arg_conv = (LDKC2Tuple_PaymentHashPaymentIdZ*)(arg & ~1); + int64_t ret_val = C2Tuple_PaymentHashPaymentIdZ_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelConfig_set_cltv_expiry_delta(uint32_t this_ptr, int16_t val) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelConfig_set_cltv_expiry_delta(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentIdZ_clone(uint32_t orig) { + LDKC2Tuple_PaymentHashPaymentIdZ* orig_conv = (LDKC2Tuple_PaymentHashPaymentIdZ*)(orig & ~1); + LDKC2Tuple_PaymentHashPaymentIdZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentIdZ), "LDKC2Tuple_PaymentHashPaymentIdZ"); + *ret_conv = C2Tuple_PaymentHashPaymentIdZ_clone(orig_conv); + return ((uint64_t)ret_conv); } -jboolean __attribute__((visibility("default"))) TS_ChannelConfig_get_announced_channel(uint32_t this_ptr) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = ChannelConfig_get_announced_channel(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentIdZ_new(int8_tArray a, int8_tArray b) { + LDKThirtyTwoBytes a_ref; + CHECK(a->arr_len == 32); + memcpy(a_ref.data, a->elems, 32); + LDKThirtyTwoBytes b_ref; + CHECK(b->arr_len == 32); + memcpy(b_ref.data, b->elems, 32); + LDKC2Tuple_PaymentHashPaymentIdZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentIdZ), "LDKC2Tuple_PaymentHashPaymentIdZ"); + *ret_conv = C2Tuple_PaymentHashPaymentIdZ_new(a_ref, b_ref); + return ((uint64_t)ret_conv); } -void __attribute__((visibility("default"))) TS_ChannelConfig_set_announced_channel(uint32_t this_ptr, jboolean val) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelConfig_set_announced_channel(&this_ptr_conv, val); +void __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentIdZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKC2Tuple_PaymentHashPaymentIdZ _res_conv = *(LDKC2Tuple_PaymentHashPaymentIdZ*)(_res_ptr); + FREE((void*)_res); + C2Tuple_PaymentHashPaymentIdZ_free(_res_conv); } -jboolean __attribute__((visibility("default"))) TS_ChannelConfig_get_commit_upfront_shutdown_pubkey(uint32_t this_ptr) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = ChannelConfig_get_commit_upfront_shutdown_pubkey(&this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKC2Tuple_PaymentHashPaymentIdZ o_conv = *(LDKC2Tuple_PaymentHashPaymentIdZ*)(o_ptr); + o_conv = C2Tuple_PaymentHashPaymentIdZ_clone((LDKC2Tuple_PaymentHashPaymentIdZ*)(((uint64_t)o) & ~1)); + LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ), "LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_ok(o_conv); + return (uint64_t)ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_err(uint32_t e) { + void* e_ptr = (void*)(((uint64_t)e) & ~1); + CHECK_ACCESS(e_ptr); + LDKPaymentSendFailure e_conv = *(LDKPaymentSendFailure*)(e_ptr); + e_conv = PaymentSendFailure_clone((LDKPaymentSendFailure*)(((uint64_t)e) & ~1)); + LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ), "LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_err(e_conv); + return (uint64_t)ret_conv; +} + +jboolean __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_is_ok(uint32_t o) { + LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* o_conv = (LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ*)(o & ~1); + jboolean ret_val = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelConfig_set_commit_upfront_shutdown_pubkey(uint32_t this_ptr, jboolean val) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelConfig_set_commit_upfront_shutdown_pubkey(&this_ptr_conv, val); +void __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ _res_conv = *(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ*)(_res_ptr); + FREE((void*)_res); + CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_free(_res_conv); } -int64_t __attribute__((visibility("default"))) TS_ChannelConfig_get_max_dust_htlc_exposure_msat(uint32_t this_ptr) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelConfig_get_max_dust_htlc_exposure_msat(&this_ptr_conv); +static inline uint64_t CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone_ptr(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ *NONNULL_PTR arg) { + LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ), "LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone_ptr(uint32_t arg) { + LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* arg_conv = (LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ*)(arg & ~1); + int64_t ret_val = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelConfig_set_max_dust_htlc_exposure_msat(uint32_t this_ptr, int64_t val) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelConfig_set_max_dust_htlc_exposure_msat(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone(uint32_t orig) { + LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* orig_conv = (LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ*)(orig & ~1); + LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ), "LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone(orig_conv); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_ChannelConfig_get_force_close_avoidance_max_fee_satoshis(uint32_t this_ptr) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelConfig_get_force_close_avoidance_max_fee_satoshis(&this_ptr_conv); +static inline uint64_t C2Tuple_PaymentHashPaymentSecretZ_clone_ptr(LDKC2Tuple_PaymentHashPaymentSecretZ *NONNULL_PTR arg) { + LDKC2Tuple_PaymentHashPaymentSecretZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentSecretZ), "LDKC2Tuple_PaymentHashPaymentSecretZ"); + *ret_conv = C2Tuple_PaymentHashPaymentSecretZ_clone(arg); + return ((uint64_t)ret_conv); +} +int64_t __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentSecretZ_clone_ptr(uint32_t arg) { + LDKC2Tuple_PaymentHashPaymentSecretZ* arg_conv = (LDKC2Tuple_PaymentHashPaymentSecretZ*)(arg & ~1); + int64_t ret_val = C2Tuple_PaymentHashPaymentSecretZ_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelConfig_set_force_close_avoidance_max_fee_satoshis(uint32_t this_ptr, int64_t val) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelConfig_set_force_close_avoidance_max_fee_satoshis(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentSecretZ_clone(uint32_t orig) { + LDKC2Tuple_PaymentHashPaymentSecretZ* orig_conv = (LDKC2Tuple_PaymentHashPaymentSecretZ*)(orig & ~1); + LDKC2Tuple_PaymentHashPaymentSecretZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentSecretZ), "LDKC2Tuple_PaymentHashPaymentSecretZ"); + *ret_conv = C2Tuple_PaymentHashPaymentSecretZ_clone(orig_conv); + return ((uint64_t)ret_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentSecretZ_new(int8_tArray a, int8_tArray b) { + LDKThirtyTwoBytes a_ref; + CHECK(a->arr_len == 32); + memcpy(a_ref.data, a->elems, 32); + LDKThirtyTwoBytes b_ref; + CHECK(b->arr_len == 32); + memcpy(b_ref.data, b->elems, 32); + LDKC2Tuple_PaymentHashPaymentSecretZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentSecretZ), "LDKC2Tuple_PaymentHashPaymentSecretZ"); + *ret_conv = C2Tuple_PaymentHashPaymentSecretZ_new(a_ref, b_ref); + return ((uint64_t)ret_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChannelConfig_new(int32_t forwarding_fee_proportional_millionths_arg, int32_t forwarding_fee_base_msat_arg, int16_t cltv_expiry_delta_arg, jboolean announced_channel_arg, jboolean commit_upfront_shutdown_pubkey_arg, int64_t max_dust_htlc_exposure_msat_arg, int64_t force_close_avoidance_max_fee_satoshis_arg) { - LDKChannelConfig ret_var = ChannelConfig_new(forwarding_fee_proportional_millionths_arg, forwarding_fee_base_msat_arg, cltv_expiry_delta_arg, announced_channel_arg, commit_upfront_shutdown_pubkey_arg, max_dust_htlc_exposure_msat_arg, force_close_avoidance_max_fee_satoshis_arg); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentSecretZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKC2Tuple_PaymentHashPaymentSecretZ _res_conv = *(LDKC2Tuple_PaymentHashPaymentSecretZ*)(_res_ptr); + FREE((void*)_res); + C2Tuple_PaymentHashPaymentSecretZ_free(_res_conv); } -static inline uint64_t ChannelConfig_clone_ptr(LDKChannelConfig *NONNULL_PTR arg) { - LDKChannelConfig ret_var = ChannelConfig_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKC2Tuple_PaymentHashPaymentSecretZ o_conv = *(LDKC2Tuple_PaymentHashPaymentSecretZ*)(o_ptr); + o_conv = C2Tuple_PaymentHashPaymentSecretZ_clone((LDKC2Tuple_PaymentHashPaymentSecretZ*)(((uint64_t)o) & ~1)); + LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_ok(o_conv); + return (uint64_t)ret_conv; } - return ret_ref; + +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_err() { + LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_err(); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_ChannelConfig_clone_ptr(uint32_t arg) { - LDKChannelConfig arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelConfig_clone_ptr(&arg_conv); + +jboolean __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_is_ok(uint32_t o) { + LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* o_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ*)(o & ~1); + jboolean ret_val = CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_is_ok(o_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelConfig_clone(uint32_t orig) { - LDKChannelConfig orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelConfig ret_var = ChannelConfig_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ _res_conv = *(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ*)(_res_ptr); + FREE((void*)_res); + CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChannelConfig_default() { - LDKChannelConfig ret_var = ChannelConfig_default(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +static inline uint64_t CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone_ptr(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ *NONNULL_PTR arg) { + LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone_ptr(uint32_t arg) { + LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* arg_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ*)(arg & ~1); + int64_t ret_val = CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone_ptr(arg_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_ChannelConfig_write(uint32_t obj) { - LDKChannelConfig obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ChannelConfig_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone(uint32_t orig) { + LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* orig_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ*)(orig & ~1); + LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ChannelConfig_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ChannelConfigDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelConfigDecodeErrorZ), "LDKCResult_ChannelConfigDecodeErrorZ"); - *ret_conv = ChannelConfig_read(ser_ref); +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKC2Tuple_PaymentHashPaymentSecretZ o_conv = *(LDKC2Tuple_PaymentHashPaymentSecretZ*)(o_ptr); + o_conv = C2Tuple_PaymentHashPaymentSecretZ_clone((LDKC2Tuple_PaymentHashPaymentSecretZ*)(((uint64_t)o) & ~1)); + LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_UserConfig_free(uint32_t this_obj) { - LDKUserConfig this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - UserConfig_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_err(uint32_t e) { + void* e_ptr = (void*)(((uint64_t)e) & ~1); + CHECK_ACCESS(e_ptr); + LDKAPIError e_conv = *(LDKAPIError*)(e_ptr); + e_conv = APIError_clone((LDKAPIError*)(((uint64_t)e) & ~1)); + LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_UserConfig_get_own_channel_config(uint32_t this_ptr) { - LDKUserConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelHandshakeConfig ret_var = UserConfig_get_own_channel_config(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +jboolean __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_is_ok(uint32_t o) { + LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* o_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ*)(o & ~1); + jboolean ret_val = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_is_ok(o_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_UserConfig_set_own_channel_config(uint32_t this_ptr, uint32_t val) { - LDKUserConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelHandshakeConfig val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = ChannelHandshakeConfig_clone(&val_conv); - UserConfig_set_own_channel_config(&this_ptr_conv, val_conv); +void __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ _res_conv = *(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_UserConfig_get_peer_channel_config_limits(uint32_t this_ptr) { - LDKUserConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelHandshakeLimits ret_var = UserConfig_get_peer_channel_config_limits(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +static inline uint64_t CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone_ptr(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ *NONNULL_PTR arg) { + LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* arg_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ*)(arg & ~1); + int64_t ret_val = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone_ptr(arg_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_UserConfig_set_peer_channel_config_limits(uint32_t this_ptr, uint32_t val) { - LDKUserConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelHandshakeLimits val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = ChannelHandshakeLimits_clone(&val_conv); - UserConfig_set_peer_channel_config_limits(&this_ptr_conv, val_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone(uint32_t orig) { + LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* orig_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ*)(orig & ~1); + LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_UserConfig_get_channel_options(uint32_t this_ptr) { - LDKUserConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelConfig ret_var = UserConfig_get_channel_options(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_ok(int8_tArray o) { + LDKThirtyTwoBytes o_ref; + CHECK(o->arr_len == 32); + memcpy(o_ref.data, o->elems, 32); + LDKCResult_PaymentSecretNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretNoneZ), "LDKCResult_PaymentSecretNoneZ"); + *ret_conv = CResult_PaymentSecretNoneZ_ok(o_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_UserConfig_set_channel_options(uint32_t this_ptr, uint32_t val) { - LDKUserConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelConfig val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = ChannelConfig_clone(&val_conv); - UserConfig_set_channel_options(&this_ptr_conv, val_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_err() { + LDKCResult_PaymentSecretNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretNoneZ), "LDKCResult_PaymentSecretNoneZ"); + *ret_conv = CResult_PaymentSecretNoneZ_err(); + return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_UserConfig_get_accept_forwards_to_priv_channels(uint32_t this_ptr) { - LDKUserConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = UserConfig_get_accept_forwards_to_priv_channels(&this_ptr_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_is_ok(uint32_t o) { + LDKCResult_PaymentSecretNoneZ* o_conv = (LDKCResult_PaymentSecretNoneZ*)(o & ~1); + jboolean ret_val = CResult_PaymentSecretNoneZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_UserConfig_set_accept_forwards_to_priv_channels(uint32_t this_ptr, jboolean val) { - LDKUserConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UserConfig_set_accept_forwards_to_priv_channels(&this_ptr_conv, val); +void __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_PaymentSecretNoneZ _res_conv = *(LDKCResult_PaymentSecretNoneZ*)(_res_ptr); + FREE((void*)_res); + CResult_PaymentSecretNoneZ_free(_res_conv); } -jboolean __attribute__((visibility("default"))) TS_UserConfig_get_accept_inbound_channels(uint32_t this_ptr) { - LDKUserConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = UserConfig_get_accept_inbound_channels(&this_ptr_conv); +static inline uint64_t CResult_PaymentSecretNoneZ_clone_ptr(LDKCResult_PaymentSecretNoneZ *NONNULL_PTR arg) { + LDKCResult_PaymentSecretNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretNoneZ), "LDKCResult_PaymentSecretNoneZ"); + *ret_conv = CResult_PaymentSecretNoneZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_clone_ptr(uint32_t arg) { + LDKCResult_PaymentSecretNoneZ* arg_conv = (LDKCResult_PaymentSecretNoneZ*)(arg & ~1); + int64_t ret_val = CResult_PaymentSecretNoneZ_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_UserConfig_set_accept_inbound_channels(uint32_t this_ptr, jboolean val) { - LDKUserConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UserConfig_set_accept_inbound_channels(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_clone(uint32_t orig) { + LDKCResult_PaymentSecretNoneZ* orig_conv = (LDKCResult_PaymentSecretNoneZ*)(orig & ~1); + LDKCResult_PaymentSecretNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretNoneZ), "LDKCResult_PaymentSecretNoneZ"); + *ret_conv = CResult_PaymentSecretNoneZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_UserConfig_new(uint32_t own_channel_config_arg, uint32_t peer_channel_config_limits_arg, uint32_t channel_options_arg, jboolean accept_forwards_to_priv_channels_arg, jboolean accept_inbound_channels_arg) { - LDKChannelHandshakeConfig own_channel_config_arg_conv; - own_channel_config_arg_conv.inner = (void*)(own_channel_config_arg & (~1)); - own_channel_config_arg_conv.is_owned = (own_channel_config_arg & 1) || (own_channel_config_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(own_channel_config_arg_conv); - own_channel_config_arg_conv = ChannelHandshakeConfig_clone(&own_channel_config_arg_conv); - LDKChannelHandshakeLimits peer_channel_config_limits_arg_conv; - peer_channel_config_limits_arg_conv.inner = (void*)(peer_channel_config_limits_arg & (~1)); - peer_channel_config_limits_arg_conv.is_owned = (peer_channel_config_limits_arg & 1) || (peer_channel_config_limits_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(peer_channel_config_limits_arg_conv); - peer_channel_config_limits_arg_conv = ChannelHandshakeLimits_clone(&peer_channel_config_limits_arg_conv); - LDKChannelConfig channel_options_arg_conv; - channel_options_arg_conv.inner = (void*)(channel_options_arg & (~1)); - channel_options_arg_conv.is_owned = (channel_options_arg & 1) || (channel_options_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_options_arg_conv); - channel_options_arg_conv = ChannelConfig_clone(&channel_options_arg_conv); - LDKUserConfig ret_var = UserConfig_new(own_channel_config_arg_conv, peer_channel_config_limits_arg_conv, channel_options_arg_conv, accept_forwards_to_priv_channels_arg, accept_inbound_channels_arg); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_ok(int8_tArray o) { + LDKThirtyTwoBytes o_ref; + CHECK(o->arr_len == 32); + memcpy(o_ref.data, o->elems, 32); + LDKCResult_PaymentSecretAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretAPIErrorZ), "LDKCResult_PaymentSecretAPIErrorZ"); + *ret_conv = CResult_PaymentSecretAPIErrorZ_ok(o_ref); + return (uint64_t)ret_conv; } -static inline uint64_t UserConfig_clone_ptr(LDKUserConfig *NONNULL_PTR arg) { - LDKUserConfig ret_var = UserConfig_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_err(uint32_t e) { + void* e_ptr = (void*)(((uint64_t)e) & ~1); + CHECK_ACCESS(e_ptr); + LDKAPIError e_conv = *(LDKAPIError*)(e_ptr); + e_conv = APIError_clone((LDKAPIError*)(((uint64_t)e) & ~1)); + LDKCResult_PaymentSecretAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretAPIErrorZ), "LDKCResult_PaymentSecretAPIErrorZ"); + *ret_conv = CResult_PaymentSecretAPIErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_UserConfig_clone_ptr(uint32_t arg) { - LDKUserConfig arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = UserConfig_clone_ptr(&arg_conv); + +jboolean __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_is_ok(uint32_t o) { + LDKCResult_PaymentSecretAPIErrorZ* o_conv = (LDKCResult_PaymentSecretAPIErrorZ*)(o & ~1); + jboolean ret_val = CResult_PaymentSecretAPIErrorZ_is_ok(o_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_UserConfig_clone(uint32_t orig) { - LDKUserConfig orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKUserConfig ret_var = UserConfig_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_PaymentSecretAPIErrorZ _res_conv = *(LDKCResult_PaymentSecretAPIErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_PaymentSecretAPIErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_UserConfig_default() { - LDKUserConfig ret_var = UserConfig_default(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +static inline uint64_t CResult_PaymentSecretAPIErrorZ_clone_ptr(LDKCResult_PaymentSecretAPIErrorZ *NONNULL_PTR arg) { + LDKCResult_PaymentSecretAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretAPIErrorZ), "LDKCResult_PaymentSecretAPIErrorZ"); + *ret_conv = CResult_PaymentSecretAPIErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_PaymentSecretAPIErrorZ* arg_conv = (LDKCResult_PaymentSecretAPIErrorZ*)(arg & ~1); + int64_t ret_val = CResult_PaymentSecretAPIErrorZ_clone_ptr(arg_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_BestBlock_free(uint32_t this_obj) { - LDKBestBlock this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - BestBlock_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_clone(uint32_t orig) { + LDKCResult_PaymentSecretAPIErrorZ* orig_conv = (LDKCResult_PaymentSecretAPIErrorZ*)(orig & ~1); + LDKCResult_PaymentSecretAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretAPIErrorZ), "LDKCResult_PaymentSecretAPIErrorZ"); + *ret_conv = CResult_PaymentSecretAPIErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -static inline uint64_t BestBlock_clone_ptr(LDKBestBlock *NONNULL_PTR arg) { - LDKBestBlock ret_var = BestBlock_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_ok(int8_tArray o) { + LDKThirtyTwoBytes o_ref; + CHECK(o->arr_len == 32); + memcpy(o_ref.data, o->elems, 32); + LDKCResult_PaymentPreimageAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentPreimageAPIErrorZ), "LDKCResult_PaymentPreimageAPIErrorZ"); + *ret_conv = CResult_PaymentPreimageAPIErrorZ_ok(o_ref); + return (uint64_t)ret_conv; } - return ret_ref; + +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_err(uint32_t e) { + void* e_ptr = (void*)(((uint64_t)e) & ~1); + CHECK_ACCESS(e_ptr); + LDKAPIError e_conv = *(LDKAPIError*)(e_ptr); + e_conv = APIError_clone((LDKAPIError*)(((uint64_t)e) & ~1)); + LDKCResult_PaymentPreimageAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentPreimageAPIErrorZ), "LDKCResult_PaymentPreimageAPIErrorZ"); + *ret_conv = CResult_PaymentPreimageAPIErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_BestBlock_clone_ptr(uint32_t arg) { - LDKBestBlock arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = BestBlock_clone_ptr(&arg_conv); + +jboolean __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_is_ok(uint32_t o) { + LDKCResult_PaymentPreimageAPIErrorZ* o_conv = (LDKCResult_PaymentPreimageAPIErrorZ*)(o & ~1); + jboolean ret_val = CResult_PaymentPreimageAPIErrorZ_is_ok(o_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_BestBlock_clone(uint32_t orig) { - LDKBestBlock orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKBestBlock ret_var = BestBlock_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_PaymentPreimageAPIErrorZ _res_conv = *(LDKCResult_PaymentPreimageAPIErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_PaymentPreimageAPIErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_BestBlock_from_genesis(uint32_t network) { - LDKNetwork network_conv = LDKNetwork_from_js(network); - LDKBestBlock ret_var = BestBlock_from_genesis(network_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +static inline uint64_t CResult_PaymentPreimageAPIErrorZ_clone_ptr(LDKCResult_PaymentPreimageAPIErrorZ *NONNULL_PTR arg) { + LDKCResult_PaymentPreimageAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentPreimageAPIErrorZ), "LDKCResult_PaymentPreimageAPIErrorZ"); + *ret_conv = CResult_PaymentPreimageAPIErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_PaymentPreimageAPIErrorZ* arg_conv = (LDKCResult_PaymentPreimageAPIErrorZ*)(arg & ~1); + int64_t ret_val = CResult_PaymentPreimageAPIErrorZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_BestBlock_new(int8_tArray block_hash, int32_t height) { - LDKThirtyTwoBytes block_hash_ref; - CHECK(*((uint32_t*)block_hash) == 32); - memcpy(block_hash_ref.data, (uint8_t*)(block_hash + 4), 32); - LDKBestBlock ret_var = BestBlock_new(block_hash_ref, height); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_clone(uint32_t orig) { + LDKCResult_PaymentPreimageAPIErrorZ* orig_conv = (LDKCResult_PaymentPreimageAPIErrorZ*)(orig & ~1); + LDKCResult_PaymentPreimageAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentPreimageAPIErrorZ), "LDKCResult_PaymentPreimageAPIErrorZ"); + *ret_conv = CResult_PaymentPreimageAPIErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_CVec_ChannelMonitorZ_free(uint32_tArray _res) { + LDKCVec_ChannelMonitorZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKChannelMonitor), "LDKCVec_ChannelMonitorZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t q = 0; q < _res_constr.datalen; q++) { + uint32_t _res_conv_16 = _res_vals[q]; + LDKChannelMonitor _res_conv_16_conv; + _res_conv_16_conv.inner = (void*)(_res_conv_16 & (~1)); + _res_conv_16_conv.is_owned = (_res_conv_16 & 1) || (_res_conv_16 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_16_conv); + _res_constr.data[q] = _res_conv_16_conv; } - return ret_ref; + CVec_ChannelMonitorZ_free(_res_constr); } -int8_tArray __attribute__((visibility("default"))) TS_BestBlock_block_hash(uint32_t this_arg) { - LDKBestBlock this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), BestBlock_block_hash(&this_arg_conv).data, 32); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelManagerZ_new(int8_tArray a, uint32_t b) { + LDKThirtyTwoBytes a_ref; + CHECK(a->arr_len == 32); + memcpy(a_ref.data, a->elems, 32); + LDKChannelManager b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = (b & 1) || (b == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + // Warning: we need a move here but no clone is available for LDKChannelManager + LDKC2Tuple_BlockHashChannelManagerZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlockHashChannelManagerZ), "LDKC2Tuple_BlockHashChannelManagerZ"); + *ret_conv = C2Tuple_BlockHashChannelManagerZ_new(a_ref, b_conv); + return ((uint64_t)ret_conv); } -int32_t __attribute__((visibility("default"))) TS_BestBlock_height(uint32_t this_arg) { - LDKBestBlock this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int32_t ret_val = BestBlock_height(&this_arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelManagerZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKC2Tuple_BlockHashChannelManagerZ _res_conv = *(LDKC2Tuple_BlockHashChannelManagerZ*)(_res_ptr); + FREE((void*)_res); + C2Tuple_BlockHashChannelManagerZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_AccessError_clone(uint32_t orig) { - LDKAccessError* orig_conv = (LDKAccessError*)(orig & ~1); - uint32_t ret_conv = LDKAccessError_to_js(AccessError_clone(orig_conv)); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKC2Tuple_BlockHashChannelManagerZ o_conv = *(LDKC2Tuple_BlockHashChannelManagerZ*)(o_ptr); + // Warning: we may need a move here but no clone is available for LDKC2Tuple_BlockHashChannelManagerZ + LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ"); + *ret_conv = CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_ok(o_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_AccessError_unknown_chain() { - uint32_t ret_conv = LDKAccessError_to_js(AccessError_unknown_chain()); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ"); + *ret_conv = CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_AccessError_unknown_tx() { - uint32_t ret_conv = LDKAccessError_to_js(AccessError_unknown_tx()); - return ret_conv; +jboolean __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ* o_conv = (LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_is_ok(o_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_Access_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKAccess this_ptr_conv = *(LDKAccess*)(this_ptr_ptr); - FREE((void*)this_ptr); - Access_free(this_ptr_conv); +void __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ _res_conv = *(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_free(_res_conv); } -void __attribute__((visibility("default"))) TS_Listen_free(uint32_t this_ptr) { +void __attribute__((visibility("default"))) TS_PaymentPurpose_free(uint32_t this_ptr) { if ((this_ptr & 1) != 0) return; void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); CHECK_ACCESS(this_ptr_ptr); - LDKListen this_ptr_conv = *(LDKListen*)(this_ptr_ptr); + LDKPaymentPurpose this_ptr_conv = *(LDKPaymentPurpose*)(this_ptr_ptr); FREE((void*)this_ptr); - Listen_free(this_ptr_conv); + PaymentPurpose_free(this_ptr_conv); } -void __attribute__((visibility("default"))) TS_Confirm_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKConfirm this_ptr_conv = *(LDKConfirm*)(this_ptr_ptr); - FREE((void*)this_ptr); - Confirm_free(this_ptr_conv); +static inline uint64_t PaymentPurpose_clone_ptr(LDKPaymentPurpose *NONNULL_PTR arg) { + LDKPaymentPurpose *ret_copy = MALLOC(sizeof(LDKPaymentPurpose), "LDKPaymentPurpose"); + *ret_copy = PaymentPurpose_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } - -uint32_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdateErr_clone(uint32_t orig) { - LDKChannelMonitorUpdateErr* orig_conv = (LDKChannelMonitorUpdateErr*)(orig & ~1); - uint32_t ret_conv = LDKChannelMonitorUpdateErr_to_js(ChannelMonitorUpdateErr_clone(orig_conv)); - return ret_conv; +int64_t __attribute__((visibility("default"))) TS_PaymentPurpose_clone_ptr(uint32_t arg) { + LDKPaymentPurpose* arg_conv = (LDKPaymentPurpose*)arg; + int64_t ret_val = PaymentPurpose_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdateErr_temporary_failure() { - uint32_t ret_conv = LDKChannelMonitorUpdateErr_to_js(ChannelMonitorUpdateErr_temporary_failure()); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_PaymentPurpose_clone(uint32_t orig) { + LDKPaymentPurpose* orig_conv = (LDKPaymentPurpose*)orig; + LDKPaymentPurpose *ret_copy = MALLOC(sizeof(LDKPaymentPurpose), "LDKPaymentPurpose"); + *ret_copy = PaymentPurpose_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdateErr_permanent_failure() { - uint32_t ret_conv = LDKChannelMonitorUpdateErr_to_js(ChannelMonitorUpdateErr_permanent_failure()); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_PaymentPurpose_invoice_payment(int8_tArray payment_preimage, int8_tArray payment_secret) { + LDKThirtyTwoBytes payment_preimage_ref; + CHECK(payment_preimage->arr_len == 32); + memcpy(payment_preimage_ref.data, payment_preimage->elems, 32); + LDKThirtyTwoBytes payment_secret_ref; + CHECK(payment_secret->arr_len == 32); + memcpy(payment_secret_ref.data, payment_secret->elems, 32); + LDKPaymentPurpose *ret_copy = MALLOC(sizeof(LDKPaymentPurpose), "LDKPaymentPurpose"); + *ret_copy = PaymentPurpose_invoice_payment(payment_preimage_ref, payment_secret_ref); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_Watch_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKWatch this_ptr_conv = *(LDKWatch*)(this_ptr_ptr); - FREE((void*)this_ptr); - Watch_free(this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_PaymentPurpose_spontaneous_payment(int8_tArray a) { + LDKThirtyTwoBytes a_ref; + CHECK(a->arr_len == 32); + memcpy(a_ref.data, a->elems, 32); + LDKPaymentPurpose *ret_copy = MALLOC(sizeof(LDKPaymentPurpose), "LDKPaymentPurpose"); + *ret_copy = PaymentPurpose_spontaneous_payment(a_ref); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_Filter_free(uint32_t this_ptr) { +void __attribute__((visibility("default"))) TS_ClosureReason_free(uint32_t this_ptr) { if ((this_ptr & 1) != 0) return; void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); CHECK_ACCESS(this_ptr_ptr); - LDKFilter this_ptr_conv = *(LDKFilter*)(this_ptr_ptr); + LDKClosureReason this_ptr_conv = *(LDKClosureReason*)(this_ptr_ptr); FREE((void*)this_ptr); - Filter_free(this_ptr_conv); -} - -void __attribute__((visibility("default"))) TS_WatchedOutput_free(uint32_t this_obj) { - LDKWatchedOutput this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - WatchedOutput_free(this_obj_conv); -} - -int8_tArray __attribute__((visibility("default"))) TS_WatchedOutput_get_block_hash(uint32_t this_ptr) { - LDKWatchedOutput this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), WatchedOutput_get_block_hash(&this_ptr_conv).data, 32); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_WatchedOutput_set_block_hash(uint32_t this_ptr, int8_tArray val) { - LDKWatchedOutput this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - WatchedOutput_set_block_hash(&this_ptr_conv, val_ref); + ClosureReason_free(this_ptr_conv); } -uint32_t __attribute__((visibility("default"))) TS_WatchedOutput_get_outpoint(uint32_t this_ptr) { - LDKWatchedOutput this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKOutPoint ret_var = WatchedOutput_get_outpoint(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } +static inline uint64_t ClosureReason_clone_ptr(LDKClosureReason *NONNULL_PTR arg) { + LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); + *ret_copy = ClosureReason_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } - -void __attribute__((visibility("default"))) TS_WatchedOutput_set_outpoint(uint32_t this_ptr, uint32_t val) { - LDKWatchedOutput this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKOutPoint val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = OutPoint_clone(&val_conv); - WatchedOutput_set_outpoint(&this_ptr_conv, val_conv); -} - -int8_tArray __attribute__((visibility("default"))) TS_WatchedOutput_get_script_pubkey(uint32_t this_ptr) { - LDKWatchedOutput this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKu8slice ret_var = WatchedOutput_get_script_pubkey(&this_ptr_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - return ret_arr; +int64_t __attribute__((visibility("default"))) TS_ClosureReason_clone_ptr(uint32_t arg) { + LDKClosureReason* arg_conv = (LDKClosureReason*)arg; + int64_t ret_val = ClosureReason_clone_ptr(arg_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_WatchedOutput_set_script_pubkey(uint32_t this_ptr, int8_tArray val) { - LDKWatchedOutput this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_u8Z val_ref; - val_ref.datalen = *((uint32_t*)val); - val_ref.data = MALLOC(val_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(val_ref.data, (uint8_t*)(val + 4), val_ref.datalen); - WatchedOutput_set_script_pubkey(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_ClosureReason_clone(uint32_t orig) { + LDKClosureReason* orig_conv = (LDKClosureReason*)orig; + LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); + *ret_copy = ClosureReason_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_WatchedOutput_new(int8_tArray block_hash_arg, uint32_t outpoint_arg, int8_tArray script_pubkey_arg) { - LDKThirtyTwoBytes block_hash_arg_ref; - CHECK(*((uint32_t*)block_hash_arg) == 32); - memcpy(block_hash_arg_ref.data, (uint8_t*)(block_hash_arg + 4), 32); - LDKOutPoint outpoint_arg_conv; - outpoint_arg_conv.inner = (void*)(outpoint_arg & (~1)); - outpoint_arg_conv.is_owned = (outpoint_arg & 1) || (outpoint_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(outpoint_arg_conv); - outpoint_arg_conv = OutPoint_clone(&outpoint_arg_conv); - LDKCVec_u8Z script_pubkey_arg_ref; - script_pubkey_arg_ref.datalen = *((uint32_t*)script_pubkey_arg); - script_pubkey_arg_ref.data = MALLOC(script_pubkey_arg_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(script_pubkey_arg_ref.data, (uint8_t*)(script_pubkey_arg + 4), script_pubkey_arg_ref.datalen); - LDKWatchedOutput ret_var = WatchedOutput_new(block_hash_arg_ref, outpoint_arg_conv, script_pubkey_arg_ref); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } +uint32_t __attribute__((visibility("default"))) TS_ClosureReason_counterparty_force_closed(jstring peer_msg) { + LDKStr peer_msg_conv = str_ref_to_owned_c(peer_msg); + LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); + *ret_copy = ClosureReason_counterparty_force_closed(peer_msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -static inline uint64_t WatchedOutput_clone_ptr(LDKWatchedOutput *NONNULL_PTR arg) { - LDKWatchedOutput ret_var = WatchedOutput_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} +uint32_t __attribute__((visibility("default"))) TS_ClosureReason_holder_force_closed() { + LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); + *ret_copy = ClosureReason_holder_force_closed(); + uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_WatchedOutput_clone_ptr(uint32_t arg) { - LDKWatchedOutput arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = WatchedOutput_clone_ptr(&arg_conv); - return ret_val; -} -uint32_t __attribute__((visibility("default"))) TS_WatchedOutput_clone(uint32_t orig) { - LDKWatchedOutput orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKWatchedOutput ret_var = WatchedOutput_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } +uint32_t __attribute__((visibility("default"))) TS_ClosureReason_cooperative_closure() { + LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); + *ret_copy = ClosureReason_cooperative_closure(); + uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_WatchedOutput_hash(uint32_t o) { - LDKWatchedOutput o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = WatchedOutput_hash(&o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_ClosureReason_commitment_tx_confirmed() { + LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); + *ret_copy = ClosureReason_commitment_tx_confirmed(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_BroadcasterInterface_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKBroadcasterInterface this_ptr_conv = *(LDKBroadcasterInterface*)(this_ptr_ptr); - FREE((void*)this_ptr); - BroadcasterInterface_free(this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_ClosureReason_funding_timed_out() { + LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); + *ret_copy = ClosureReason_funding_timed_out(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ConfirmationTarget_clone(uint32_t orig) { - LDKConfirmationTarget* orig_conv = (LDKConfirmationTarget*)(orig & ~1); - uint32_t ret_conv = LDKConfirmationTarget_to_js(ConfirmationTarget_clone(orig_conv)); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_ClosureReason_processing_error(jstring err) { + LDKStr err_conv = str_ref_to_owned_c(err); + LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); + *ret_copy = ClosureReason_processing_error(err_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ConfirmationTarget_background() { - uint32_t ret_conv = LDKConfirmationTarget_to_js(ConfirmationTarget_background()); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_ClosureReason_disconnected_peer() { + LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); + *ret_copy = ClosureReason_disconnected_peer(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ConfirmationTarget_normal() { - uint32_t ret_conv = LDKConfirmationTarget_to_js(ConfirmationTarget_normal()); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_ClosureReason_outdated_channel_manager() { + LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); + *ret_copy = ClosureReason_outdated_channel_manager(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ConfirmationTarget_high_priority() { - uint32_t ret_conv = LDKConfirmationTarget_to_js(ConfirmationTarget_high_priority()); - return ret_conv; +int8_tArray __attribute__((visibility("default"))) TS_ClosureReason_write(uint32_t obj) { + LDKClosureReason* obj_conv = (LDKClosureReason*)obj; + LDKCVec_u8Z ret_var = ClosureReason_write(obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -jboolean __attribute__((visibility("default"))) TS_ConfirmationTarget_eq(uint32_t a, uint32_t b) { - LDKConfirmationTarget* a_conv = (LDKConfirmationTarget*)(a & ~1); - LDKConfirmationTarget* b_conv = (LDKConfirmationTarget*)(b & ~1); - jboolean ret_val = ConfirmationTarget_eq(a_conv, b_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_ClosureReason_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_COption_ClosureReasonZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_ClosureReasonZDecodeErrorZ), "LDKCResult_COption_ClosureReasonZDecodeErrorZ"); + *ret_conv = ClosureReason_read(ser_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_FeeEstimator_free(uint32_t this_ptr) { +void __attribute__((visibility("default"))) TS_Event_free(uint32_t this_ptr) { if ((this_ptr & 1) != 0) return; void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); CHECK_ACCESS(this_ptr_ptr); - LDKFeeEstimator this_ptr_conv = *(LDKFeeEstimator*)(this_ptr_ptr); + LDKEvent this_ptr_conv = *(LDKEvent*)(this_ptr_ptr); FREE((void*)this_ptr); - FeeEstimator_free(this_ptr_conv); -} - -void __attribute__((visibility("default"))) TS_MonitorUpdateId_free(uint32_t this_obj) { - LDKMonitorUpdateId this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - MonitorUpdateId_free(this_obj_conv); + Event_free(this_ptr_conv); } -static inline uint64_t MonitorUpdateId_clone_ptr(LDKMonitorUpdateId *NONNULL_PTR arg) { - LDKMonitorUpdateId ret_var = MonitorUpdateId_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} +static inline uint64_t Event_clone_ptr(LDKEvent *NONNULL_PTR arg) { + LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_copy = Event_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_MonitorUpdateId_clone_ptr(uint32_t arg) { - LDKMonitorUpdateId arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = MonitorUpdateId_clone_ptr(&arg_conv); +int64_t __attribute__((visibility("default"))) TS_Event_clone_ptr(uint32_t arg) { + LDKEvent* arg_conv = (LDKEvent*)arg; + int64_t ret_val = Event_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_MonitorUpdateId_clone(uint32_t orig) { - LDKMonitorUpdateId orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKMonitorUpdateId ret_var = MonitorUpdateId_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } +uint32_t __attribute__((visibility("default"))) TS_Event_clone(uint32_t orig) { + LDKEvent* orig_conv = (LDKEvent*)orig; + LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_copy = Event_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_MonitorUpdateId_hash(uint32_t o) { - LDKMonitorUpdateId o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = MonitorUpdateId_hash(&o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_Event_funding_generation_ready(int8_tArray temporary_channel_id, int64_t channel_value_satoshis, int8_tArray output_script, int64_t user_channel_id) { + LDKThirtyTwoBytes temporary_channel_id_ref; + CHECK(temporary_channel_id->arr_len == 32); + memcpy(temporary_channel_id_ref.data, temporary_channel_id->elems, 32); + LDKCVec_u8Z output_script_ref; + output_script_ref.datalen = output_script->arr_len; + output_script_ref.data = MALLOC(output_script_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(output_script_ref.data, output_script->elems, output_script_ref.datalen); + LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_copy = Event_funding_generation_ready(temporary_channel_id_ref, channel_value_satoshis, output_script_ref, user_channel_id); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_MonitorUpdateId_eq(uint32_t a, uint32_t b) { - LDKMonitorUpdateId a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKMonitorUpdateId b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = MonitorUpdateId_eq(&a_conv, &b_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_Event_payment_received(int8_tArray payment_hash, int64_t amt, uint32_t purpose) { + LDKThirtyTwoBytes payment_hash_ref; + CHECK(payment_hash->arr_len == 32); + memcpy(payment_hash_ref.data, payment_hash->elems, 32); + void* purpose_ptr = (void*)(((uint64_t)purpose) & ~1); + CHECK_ACCESS(purpose_ptr); + LDKPaymentPurpose purpose_conv = *(LDKPaymentPurpose*)(purpose_ptr); + purpose_conv = PaymentPurpose_clone((LDKPaymentPurpose*)(((uint64_t)purpose) & ~1)); + LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_copy = Event_payment_received(payment_hash_ref, amt, purpose_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_Persist_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKPersist this_ptr_conv = *(LDKPersist*)(this_ptr_ptr); - FREE((void*)this_ptr); - Persist_free(this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_Event_payment_sent(int8_tArray payment_id, int8_tArray payment_preimage, int8_tArray payment_hash, uint32_t fee_paid_msat) { + LDKThirtyTwoBytes payment_id_ref; + CHECK(payment_id->arr_len == 32); + memcpy(payment_id_ref.data, payment_id->elems, 32); + LDKThirtyTwoBytes payment_preimage_ref; + CHECK(payment_preimage->arr_len == 32); + memcpy(payment_preimage_ref.data, payment_preimage->elems, 32); + LDKThirtyTwoBytes payment_hash_ref; + CHECK(payment_hash->arr_len == 32); + memcpy(payment_hash_ref.data, payment_hash->elems, 32); + void* fee_paid_msat_ptr = (void*)(((uint64_t)fee_paid_msat) & ~1); + CHECK_ACCESS(fee_paid_msat_ptr); + LDKCOption_u64Z fee_paid_msat_conv = *(LDKCOption_u64Z*)(fee_paid_msat_ptr); + fee_paid_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)fee_paid_msat) & ~1)); + LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_copy = Event_payment_sent(payment_id_ref, payment_preimage_ref, payment_hash_ref, fee_paid_msat_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_Event_payment_path_failed(int8_tArray payment_id, int8_tArray payment_hash, jboolean rejected_by_dest, uint32_t network_update, jboolean all_paths_failed, uint32_tArray path, uint32_t short_channel_id, uint32_t retry) { + LDKThirtyTwoBytes payment_id_ref; + CHECK(payment_id->arr_len == 32); + memcpy(payment_id_ref.data, payment_id->elems, 32); + LDKThirtyTwoBytes payment_hash_ref; + CHECK(payment_hash->arr_len == 32); + memcpy(payment_hash_ref.data, payment_hash->elems, 32); + void* network_update_ptr = (void*)(((uint64_t)network_update) & ~1); + CHECK_ACCESS(network_update_ptr); + LDKCOption_NetworkUpdateZ network_update_conv = *(LDKCOption_NetworkUpdateZ*)(network_update_ptr); + network_update_conv = COption_NetworkUpdateZ_clone((LDKCOption_NetworkUpdateZ*)(((uint64_t)network_update) & ~1)); + LDKCVec_RouteHopZ path_constr; + path_constr.datalen = path->arr_len; + if (path_constr.datalen > 0) + path_constr.data = MALLOC(path_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); + else + path_constr.data = NULL; + uint32_t* path_vals = path->elems; + for (size_t k = 0; k < path_constr.datalen; k++) { + uint32_t path_conv_10 = path_vals[k]; + LDKRouteHop path_conv_10_conv; + path_conv_10_conv.inner = (void*)(path_conv_10 & (~1)); + path_conv_10_conv.is_owned = (path_conv_10 & 1) || (path_conv_10 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_conv); + path_conv_10_conv = RouteHop_clone(&path_conv_10_conv); + path_constr.data[k] = path_conv_10_conv; + } + void* short_channel_id_ptr = (void*)(((uint64_t)short_channel_id) & ~1); + CHECK_ACCESS(short_channel_id_ptr); + LDKCOption_u64Z short_channel_id_conv = *(LDKCOption_u64Z*)(short_channel_id_ptr); + short_channel_id_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)short_channel_id) & ~1)); + LDKRouteParameters retry_conv; + retry_conv.inner = (void*)(retry & (~1)); + retry_conv.is_owned = (retry & 1) || (retry == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(retry_conv); + retry_conv = RouteParameters_clone(&retry_conv); + LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_copy = Event_payment_path_failed(payment_id_ref, payment_hash_ref, rejected_by_dest, network_update_conv, all_paths_failed, path_constr, short_channel_id_conv, retry_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_LockedChannelMonitor_free(uint32_t this_obj) { - LDKLockedChannelMonitor this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - LockedChannelMonitor_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_Event_payment_failed(int8_tArray payment_id, int8_tArray payment_hash) { + LDKThirtyTwoBytes payment_id_ref; + CHECK(payment_id->arr_len == 32); + memcpy(payment_id_ref.data, payment_id->elems, 32); + LDKThirtyTwoBytes payment_hash_ref; + CHECK(payment_hash->arr_len == 32); + memcpy(payment_hash_ref.data, payment_hash->elems, 32); + LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_copy = Event_payment_failed(payment_id_ref, payment_hash_ref); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChainMonitor_free(uint32_t this_obj) { - LDKChainMonitor this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChainMonitor_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_Event_pending_htlcs_forwardable(int64_t time_forwardable) { + LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_copy = Event_pending_htlcs_forwardable(time_forwardable); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_new(uint32_t chain_source, uint32_t broadcaster, uint32_t logger, uint32_t feeest, uint32_t persister) { - void* chain_source_ptr = (void*)(((uint64_t)chain_source) & ~1); - CHECK_ACCESS(chain_source_ptr); - LDKCOption_FilterZ chain_source_conv = *(LDKCOption_FilterZ*)(chain_source_ptr); - // Warning: we may need a move here but no clone is available for LDKCOption_FilterZ - if (chain_source_conv.tag == LDKCOption_FilterZ_Some) { - // Manually implement clone for Java trait instances - } - void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); - CHECK_ACCESS(broadcaster_ptr); - LDKBroadcasterInterface broadcaster_conv = *(LDKBroadcasterInterface*)(broadcaster_ptr); - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - void* feeest_ptr = (void*)(((uint64_t)feeest) & ~1); - CHECK_ACCESS(feeest_ptr); - LDKFeeEstimator feeest_conv = *(LDKFeeEstimator*)(feeest_ptr); - void* persister_ptr = (void*)(((uint64_t)persister) & ~1); - CHECK_ACCESS(persister_ptr); - LDKPersist persister_conv = *(LDKPersist*)(persister_ptr); - LDKChainMonitor ret_var = ChainMonitor_new(chain_source_conv, broadcaster_conv, logger_conv, feeest_conv, persister_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_Event_spendable_outputs(uint32_tArray outputs) { + LDKCVec_SpendableOutputDescriptorZ outputs_constr; + outputs_constr.datalen = outputs->arr_len; + if (outputs_constr.datalen > 0) + outputs_constr.data = MALLOC(outputs_constr.datalen * sizeof(LDKSpendableOutputDescriptor), "LDKCVec_SpendableOutputDescriptorZ Elements"); + else + outputs_constr.data = NULL; + uint32_t* outputs_vals = outputs->elems; + for (size_t b = 0; b < outputs_constr.datalen; b++) { + uint32_t outputs_conv_27 = outputs_vals[b]; + void* outputs_conv_27_ptr = (void*)(((uint64_t)outputs_conv_27) & ~1); + CHECK_ACCESS(outputs_conv_27_ptr); + LDKSpendableOutputDescriptor outputs_conv_27_conv = *(LDKSpendableOutputDescriptor*)(outputs_conv_27_ptr); + outputs_conv_27_conv = SpendableOutputDescriptor_clone((LDKSpendableOutputDescriptor*)(((uint64_t)outputs_conv_27) & ~1)); + outputs_constr.data[b] = outputs_conv_27_conv; } + LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_copy = Event_spendable_outputs(outputs_constr); + uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -uint32_tArray __attribute__((visibility("default"))) TS_ChainMonitor_get_claimable_balances(uint32_t this_arg, uint32_tArray ignored_channels) { - LDKChainMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_ChannelDetailsZ ignored_channels_constr; - ignored_channels_constr.datalen = *((uint32_t*)ignored_channels); - if (ignored_channels_constr.datalen > 0) - ignored_channels_constr.data = MALLOC(ignored_channels_constr.datalen * sizeof(LDKChannelDetails), "LDKCVec_ChannelDetailsZ Elements"); - else - ignored_channels_constr.data = NULL; - uint32_t* ignored_channels_vals = (uint32_t*)(ignored_channels + 4); - for (size_t q = 0; q < ignored_channels_constr.datalen; q++) { - uint32_t ignored_channels_conv_16 = ignored_channels_vals[q]; - LDKChannelDetails ignored_channels_conv_16_conv; - ignored_channels_conv_16_conv.inner = (void*)(ignored_channels_conv_16 & (~1)); - ignored_channels_conv_16_conv.is_owned = (ignored_channels_conv_16 & 1) || (ignored_channels_conv_16 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(ignored_channels_conv_16_conv); - ignored_channels_conv_16_conv = ChannelDetails_clone(&ignored_channels_conv_16_conv); - ignored_channels_constr.data[q] = ignored_channels_conv_16_conv; - } - LDKCVec_BalanceZ ret_var = ChainMonitor_get_claimable_balances(&this_arg_conv, ignored_channels_constr); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t j = 0; j < ret_var.datalen; j++) { - LDKBalance *ret_conv_9_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); - *ret_conv_9_copy = ret_var.data[j]; - uint64_t ret_conv_9_ref = (uint64_t)ret_conv_9_copy; - ret_arr_ptr[j] = ret_conv_9_ref; - } - - FREE(ret_var.data); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_Event_payment_forwarded(uint32_t fee_earned_msat, jboolean claim_from_onchain_tx) { + void* fee_earned_msat_ptr = (void*)(((uint64_t)fee_earned_msat) & ~1); + CHECK_ACCESS(fee_earned_msat_ptr); + LDKCOption_u64Z fee_earned_msat_conv = *(LDKCOption_u64Z*)(fee_earned_msat_ptr); + fee_earned_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)fee_earned_msat) & ~1)); + LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_copy = Event_payment_forwarded(fee_earned_msat_conv, claim_from_onchain_tx); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_get_monitor(uint32_t this_arg, uint32_t funding_txo) { - LDKChainMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKOutPoint funding_txo_conv; - funding_txo_conv.inner = (void*)(funding_txo & (~1)); - funding_txo_conv.is_owned = (funding_txo & 1) || (funding_txo == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_conv); - funding_txo_conv = OutPoint_clone(&funding_txo_conv); - LDKCResult_LockedChannelMonitorNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_LockedChannelMonitorNoneZ), "LDKCResult_LockedChannelMonitorNoneZ"); - *ret_conv = ChainMonitor_get_monitor(&this_arg_conv, funding_txo_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_Event_channel_closed(int8_tArray channel_id, int64_t user_channel_id, uint32_t reason) { + LDKThirtyTwoBytes channel_id_ref; + CHECK(channel_id->arr_len == 32); + memcpy(channel_id_ref.data, channel_id->elems, 32); + void* reason_ptr = (void*)(((uint64_t)reason) & ~1); + CHECK_ACCESS(reason_ptr); + LDKClosureReason reason_conv = *(LDKClosureReason*)(reason_ptr); + reason_conv = ClosureReason_clone((LDKClosureReason*)(((uint64_t)reason) & ~1)); + LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_copy = Event_channel_closed(channel_id_ref, user_channel_id, reason_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_tArray __attribute__((visibility("default"))) TS_ChainMonitor_list_monitors(uint32_t this_arg) { - LDKChainMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_OutPointZ ret_var = ChainMonitor_list_monitors(&this_arg_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t k = 0; k < ret_var.datalen; k++) { - LDKOutPoint ret_conv_10_var = ret_var.data[k]; - uint64_t ret_conv_10_ref = 0; - CHECK((((uint64_t)ret_conv_10_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_10_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_10_var); - ret_conv_10_ref = (uint64_t)ret_conv_10_var.inner; - if (ret_conv_10_var.is_owned) { - ret_conv_10_ref |= 1; - } - ret_arr_ptr[k] = ret_conv_10_ref; - } - - FREE(ret_var.data); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_Event_discard_funding(int8_tArray channel_id, int8_tArray transaction) { + LDKThirtyTwoBytes channel_id_ref; + CHECK(channel_id->arr_len == 32); + memcpy(channel_id_ref.data, channel_id->elems, 32); + LDKTransaction transaction_ref; + transaction_ref.datalen = transaction->arr_len; + transaction_ref.data = MALLOC(transaction_ref.datalen, "LDKTransaction Bytes"); + memcpy(transaction_ref.data, transaction->elems, transaction_ref.datalen); + transaction_ref.data_is_owned = true; + LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_copy = Event_discard_funding(channel_id_ref, transaction_ref); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_channel_monitor_updated(uint32_t this_arg, uint32_t funding_txo, uint32_t completed_update_id) { - LDKChainMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKOutPoint funding_txo_conv; - funding_txo_conv.inner = (void*)(funding_txo & (~1)); - funding_txo_conv.is_owned = (funding_txo & 1) || (funding_txo == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_conv); - funding_txo_conv = OutPoint_clone(&funding_txo_conv); - LDKMonitorUpdateId completed_update_id_conv; - completed_update_id_conv.inner = (void*)(completed_update_id & (~1)); - completed_update_id_conv.is_owned = (completed_update_id & 1) || (completed_update_id == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(completed_update_id_conv); - completed_update_id_conv = MonitorUpdateId_clone(&completed_update_id_conv); - LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); - *ret_conv = ChainMonitor_channel_monitor_updated(&this_arg_conv, funding_txo_conv, completed_update_id_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_Event_payment_path_successful(int8_tArray payment_id, int8_tArray payment_hash, uint32_tArray path) { + LDKThirtyTwoBytes payment_id_ref; + CHECK(payment_id->arr_len == 32); + memcpy(payment_id_ref.data, payment_id->elems, 32); + LDKThirtyTwoBytes payment_hash_ref; + CHECK(payment_hash->arr_len == 32); + memcpy(payment_hash_ref.data, payment_hash->elems, 32); + LDKCVec_RouteHopZ path_constr; + path_constr.datalen = path->arr_len; + if (path_constr.datalen > 0) + path_constr.data = MALLOC(path_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); + else + path_constr.data = NULL; + uint32_t* path_vals = path->elems; + for (size_t k = 0; k < path_constr.datalen; k++) { + uint32_t path_conv_10 = path_vals[k]; + LDKRouteHop path_conv_10_conv; + path_conv_10_conv.inner = (void*)(path_conv_10 & (~1)); + path_conv_10_conv.is_owned = (path_conv_10 & 1) || (path_conv_10 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_conv); + path_conv_10_conv = RouteHop_clone(&path_conv_10_conv); + path_constr.data[k] = path_conv_10_conv; + } + LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_copy = Event_payment_path_successful(payment_id_ref, payment_hash_ref, path_constr); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_as_Listen(uint32_t this_arg) { - LDKChainMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKListen* ret_ret = MALLOC(sizeof(LDKListen), "LDKListen"); - *ret_ret = ChainMonitor_as_Listen(&this_arg_conv); - return (uint64_t)ret_ret; +int8_tArray __attribute__((visibility("default"))) TS_Event_write(uint32_t obj) { + LDKEvent* obj_conv = (LDKEvent*)obj; + LDKCVec_u8Z ret_var = Event_write(obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_as_Confirm(uint32_t this_arg) { - LDKChainMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKConfirm* ret_ret = MALLOC(sizeof(LDKConfirm), "LDKConfirm"); - *ret_ret = ChainMonitor_as_Confirm(&this_arg_conv); - return (uint64_t)ret_ret; +uint32_t __attribute__((visibility("default"))) TS_Event_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_COption_EventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_EventZDecodeErrorZ), "LDKCResult_COption_EventZDecodeErrorZ"); + *ret_conv = Event_read(ser_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_as_Watch(uint32_t this_arg) { - LDKChainMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKWatch* ret_ret = MALLOC(sizeof(LDKWatch), "LDKWatch"); - *ret_ret = ChainMonitor_as_Watch(&this_arg_conv); - return (uint64_t)ret_ret; +void __attribute__((visibility("default"))) TS_MessageSendEvent_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKMessageSendEvent this_ptr_conv = *(LDKMessageSendEvent*)(this_ptr_ptr); + FREE((void*)this_ptr); + MessageSendEvent_free(this_ptr_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_as_EventsProvider(uint32_t this_arg) { - LDKChainMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKEventsProvider* ret_ret = MALLOC(sizeof(LDKEventsProvider), "LDKEventsProvider"); - *ret_ret = ChainMonitor_as_EventsProvider(&this_arg_conv); - return (uint64_t)ret_ret; +static inline uint64_t MessageSendEvent_clone_ptr(LDKMessageSendEvent *NONNULL_PTR arg) { + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_MessageSendEvent_clone_ptr(uint32_t arg) { + LDKMessageSendEvent* arg_conv = (LDKMessageSendEvent*)arg; + int64_t ret_val = MessageSendEvent_clone_ptr(arg_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_free(uint32_t this_obj) { - LDKChannelMonitorUpdate this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelMonitorUpdate_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_clone(uint32_t orig) { + LDKMessageSendEvent* orig_conv = (LDKMessageSendEvent*)orig; + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_get_update_id(uint32_t this_ptr) { - LDKChannelMonitorUpdate this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelMonitorUpdate_get_update_id(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_accept_channel(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKAcceptChannel msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = AcceptChannel_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_accept_channel(node_id_ref, msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_set_update_id(uint32_t this_ptr, int64_t val) { - LDKChannelMonitorUpdate this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelMonitorUpdate_set_update_id(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_open_channel(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKOpenChannel msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = OpenChannel_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_open_channel(node_id_ref, msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -static inline uint64_t ChannelMonitorUpdate_clone_ptr(LDKChannelMonitorUpdate *NONNULL_PTR arg) { - LDKChannelMonitorUpdate ret_var = ChannelMonitorUpdate_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_funding_created(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKFundingCreated msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = FundingCreated_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_funding_created(node_id_ref, msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } + +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_funding_signed(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKFundingSigned msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = FundingSigned_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_funding_signed(node_id_ref, msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_clone_ptr(uint32_t arg) { - LDKChannelMonitorUpdate arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelMonitorUpdate_clone_ptr(&arg_conv); - return ret_val; + +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_funding_locked(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKFundingLocked msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = FundingLocked_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_funding_locked(node_id_ref, msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_clone(uint32_t orig) { - LDKChannelMonitorUpdate orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelMonitorUpdate ret_var = ChannelMonitorUpdate_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_announcement_signatures(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKAnnouncementSignatures msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = AnnouncementSignatures_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_announcement_signatures(node_id_ref, msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_write(uint32_t obj) { - LDKChannelMonitorUpdate obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ChannelMonitorUpdate_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_update_htlcs(int8_tArray node_id, uint32_t updates) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKCommitmentUpdate updates_conv; + updates_conv.inner = (void*)(updates & (~1)); + updates_conv.is_owned = (updates & 1) || (updates == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(updates_conv); + updates_conv = CommitmentUpdate_clone(&updates_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_update_htlcs(node_id_ref, updates_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ChannelMonitorUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelMonitorUpdateDecodeErrorZ), "LDKCResult_ChannelMonitorUpdateDecodeErrorZ"); - *ret_conv = ChannelMonitorUpdate_read(ser_ref); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_revoke_and_ack(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKRevokeAndACK msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = RevokeAndACK_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_revoke_and_ack(node_id_ref, msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_MonitorEvent_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKMonitorEvent this_ptr_conv = *(LDKMonitorEvent*)(this_ptr_ptr); - FREE((void*)this_ptr); - MonitorEvent_free(this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_closing_signed(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKClosingSigned msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = ClosingSigned_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_closing_signed(node_id_ref, msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -static inline uint64_t MonitorEvent_clone_ptr(LDKMonitorEvent *NONNULL_PTR arg) { - LDKMonitorEvent *ret_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); - *ret_copy = MonitorEvent_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_shutdown(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKShutdown msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = Shutdown_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_shutdown(node_id_ref, msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_MonitorEvent_clone_ptr(uint32_t arg) { - LDKMonitorEvent* arg_conv = (LDKMonitorEvent*)arg; - int64_t ret_val = MonitorEvent_clone_ptr(arg_conv); - return ret_val; + +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_channel_reestablish(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKChannelReestablish msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = ChannelReestablish_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_channel_reestablish(node_id_ref, msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_MonitorEvent_clone(uint32_t orig) { - LDKMonitorEvent* orig_conv = (LDKMonitorEvent*)orig; - LDKMonitorEvent *ret_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); - *ret_copy = MonitorEvent_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_broadcast_channel_announcement(uint32_t msg, uint32_t update_msg) { + LDKChannelAnnouncement msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = ChannelAnnouncement_clone(&msg_conv); + LDKChannelUpdate update_msg_conv; + update_msg_conv.inner = (void*)(update_msg & (~1)); + update_msg_conv.is_owned = (update_msg & 1) || (update_msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_msg_conv); + update_msg_conv = ChannelUpdate_clone(&update_msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_broadcast_channel_announcement(msg_conv, update_msg_conv); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_MonitorEvent_htlcevent(uint32_t a) { - LDKHTLCUpdate a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = (a & 1) || (a == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - a_conv = HTLCUpdate_clone(&a_conv); - LDKMonitorEvent *ret_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); - *ret_copy = MonitorEvent_htlcevent(a_conv); +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_broadcast_node_announcement(uint32_t msg) { + LDKNodeAnnouncement msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = NodeAnnouncement_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_broadcast_node_announcement(msg_conv); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_MonitorEvent_commitment_tx_confirmed(uint32_t a) { - LDKOutPoint a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = (a & 1) || (a == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - a_conv = OutPoint_clone(&a_conv); - LDKMonitorEvent *ret_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); - *ret_copy = MonitorEvent_commitment_tx_confirmed(a_conv); +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_broadcast_channel_update(uint32_t msg) { + LDKChannelUpdate msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = ChannelUpdate_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_broadcast_channel_update(msg_conv); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_MonitorEvent_update_completed(uint32_t funding_txo, int64_t monitor_update_id) { - LDKOutPoint funding_txo_conv; - funding_txo_conv.inner = (void*)(funding_txo & (~1)); - funding_txo_conv.is_owned = (funding_txo & 1) || (funding_txo == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_conv); - funding_txo_conv = OutPoint_clone(&funding_txo_conv); - LDKMonitorEvent *ret_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); - *ret_copy = MonitorEvent_update_completed(funding_txo_conv, monitor_update_id); +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_channel_update(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKChannelUpdate msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = ChannelUpdate_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_channel_update(node_id_ref, msg_conv); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_MonitorEvent_update_failed(uint32_t a) { - LDKOutPoint a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = (a & 1) || (a == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - a_conv = OutPoint_clone(&a_conv); - LDKMonitorEvent *ret_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); - *ret_copy = MonitorEvent_update_failed(a_conv); +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_handle_error(int8_tArray node_id, uint32_t action) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + void* action_ptr = (void*)(((uint64_t)action) & ~1); + CHECK_ACCESS(action_ptr); + LDKErrorAction action_conv = *(LDKErrorAction*)(action_ptr); + action_conv = ErrorAction_clone((LDKErrorAction*)(((uint64_t)action) & ~1)); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_handle_error(node_id_ref, action_conv); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_MonitorEvent_write(uint32_t obj) { - LDKMonitorEvent* obj_conv = (LDKMonitorEvent*)obj; - LDKCVec_u8Z ret_var = MonitorEvent_write(obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_MonitorEvent_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_COption_MonitorEventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_MonitorEventZDecodeErrorZ), "LDKCResult_COption_MonitorEventZDecodeErrorZ"); - *ret_conv = MonitorEvent_read(ser_ref); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_channel_range_query(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKQueryChannelRange msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = QueryChannelRange_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_channel_range_query(node_id_ref, msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_HTLCUpdate_free(uint32_t this_obj) { - LDKHTLCUpdate this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - HTLCUpdate_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_short_ids_query(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKQueryShortChannelIds msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = QueryShortChannelIds_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_short_ids_query(node_id_ref, msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -static inline uint64_t HTLCUpdate_clone_ptr(LDKHTLCUpdate *NONNULL_PTR arg) { - LDKHTLCUpdate ret_var = HTLCUpdate_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_reply_channel_range(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKReplyChannelRange msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = ReplyChannelRange_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_reply_channel_range(node_id_ref, msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_HTLCUpdate_clone_ptr(uint32_t arg) { - LDKHTLCUpdate arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = HTLCUpdate_clone_ptr(&arg_conv); - return ret_val; -} -uint32_t __attribute__((visibility("default"))) TS_HTLCUpdate_clone(uint32_t orig) { - LDKHTLCUpdate orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKHTLCUpdate ret_var = HTLCUpdate_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_MessageSendEventsProvider_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKMessageSendEventsProvider this_ptr_conv = *(LDKMessageSendEventsProvider*)(this_ptr_ptr); + FREE((void*)this_ptr); + MessageSendEventsProvider_free(this_ptr_conv); } -int8_tArray __attribute__((visibility("default"))) TS_HTLCUpdate_write(uint32_t obj) { - LDKHTLCUpdate obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = HTLCUpdate_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +void __attribute__((visibility("default"))) TS_EventsProvider_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKEventsProvider this_ptr_conv = *(LDKEventsProvider*)(this_ptr_ptr); + FREE((void*)this_ptr); + EventsProvider_free(this_ptr_conv); } -uint32_t __attribute__((visibility("default"))) TS_HTLCUpdate_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_HTLCUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCUpdateDecodeErrorZ), "LDKCResult_HTLCUpdateDecodeErrorZ"); - *ret_conv = HTLCUpdate_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_EventHandler_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKEventHandler this_ptr_conv = *(LDKEventHandler*)(this_ptr_ptr); + FREE((void*)this_ptr); + EventHandler_free(this_ptr_conv); } -void __attribute__((visibility("default"))) TS_Balance_free(uint32_t this_ptr) { +void __attribute__((visibility("default"))) TS_APIError_free(uint32_t this_ptr) { if ((this_ptr & 1) != 0) return; void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); CHECK_ACCESS(this_ptr_ptr); - LDKBalance this_ptr_conv = *(LDKBalance*)(this_ptr_ptr); + LDKAPIError this_ptr_conv = *(LDKAPIError*)(this_ptr_ptr); FREE((void*)this_ptr); - Balance_free(this_ptr_conv); + APIError_free(this_ptr_conv); } -static inline uint64_t Balance_clone_ptr(LDKBalance *NONNULL_PTR arg) { - LDKBalance *ret_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); - *ret_copy = Balance_clone(arg); +static inline uint64_t APIError_clone_ptr(LDKAPIError *NONNULL_PTR arg) { + LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); + *ret_copy = APIError_clone(arg); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_Balance_clone_ptr(uint32_t arg) { - LDKBalance* arg_conv = (LDKBalance*)arg; - int64_t ret_val = Balance_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_APIError_clone_ptr(uint32_t arg) { + LDKAPIError* arg_conv = (LDKAPIError*)arg; + int64_t ret_val = APIError_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Balance_clone(uint32_t orig) { - LDKBalance* orig_conv = (LDKBalance*)orig; - LDKBalance *ret_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); - *ret_copy = Balance_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_APIError_clone(uint32_t orig) { + LDKAPIError* orig_conv = (LDKAPIError*)orig; + LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); + *ret_copy = APIError_clone(orig_conv); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_Balance_claimable_on_channel_close(int64_t claimable_amount_satoshis) { - LDKBalance *ret_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); - *ret_copy = Balance_claimable_on_channel_close(claimable_amount_satoshis); +uint32_t __attribute__((visibility("default"))) TS_APIError_apimisuse_error(jstring err) { + LDKStr err_conv = str_ref_to_owned_c(err); + LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); + *ret_copy = APIError_apimisuse_error(err_conv); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_Balance_claimable_awaiting_confirmations(int64_t claimable_amount_satoshis, int32_t confirmation_height) { - LDKBalance *ret_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); - *ret_copy = Balance_claimable_awaiting_confirmations(claimable_amount_satoshis, confirmation_height); +uint32_t __attribute__((visibility("default"))) TS_APIError_fee_rate_too_high(jstring err, int32_t feerate) { + LDKStr err_conv = str_ref_to_owned_c(err); + LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); + *ret_copy = APIError_fee_rate_too_high(err_conv, feerate); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_Balance_contentious_claimable(int64_t claimable_amount_satoshis, int32_t timeout_height) { - LDKBalance *ret_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); - *ret_copy = Balance_contentious_claimable(claimable_amount_satoshis, timeout_height); +uint32_t __attribute__((visibility("default"))) TS_APIError_route_error(jstring err) { + LDKStr err_conv = str_ref_to_owned_c(err); + LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); + *ret_copy = APIError_route_error(err_conv); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_Balance_maybe_claimable_htlcawaiting_timeout(int64_t claimable_amount_satoshis, int32_t claimable_height) { - LDKBalance *ret_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); - *ret_copy = Balance_maybe_claimable_htlcawaiting_timeout(claimable_amount_satoshis, claimable_height); +uint32_t __attribute__((visibility("default"))) TS_APIError_channel_unavailable(jstring err) { + LDKStr err_conv = str_ref_to_owned_c(err); + LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); + *ret_copy = APIError_channel_unavailable(err_conv); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_Balance_eq(uint32_t a, uint32_t b) { - LDKBalance* a_conv = (LDKBalance*)a; - LDKBalance* b_conv = (LDKBalance*)b; - jboolean ret_val = Balance_eq(a_conv, b_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_APIError_monitor_update_failed() { + LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); + *ret_copy = APIError_monitor_update_failed(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMonitor_free(uint32_t this_obj) { - LDKChannelMonitor this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelMonitor_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_APIError_incompatible_shutdown_script(uint32_t script) { + LDKShutdownScript script_conv; + script_conv.inner = (void*)(script & (~1)); + script_conv.is_owned = (script & 1) || (script == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(script_conv); + script_conv = ShutdownScript_clone(&script_conv); + LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); + *ret_copy = APIError_incompatible_shutdown_script(script_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_sign(int8_tArray msg, int8_tArray sk) { + LDKu8slice msg_ref; + msg_ref.datalen = msg->arr_len; + msg_ref.data = msg->elems; + unsigned char sk_arr[32]; + CHECK(sk->arr_len == 32); + memcpy(sk_arr, sk->elems, 32); + unsigned char (*sk_ref)[32] = &sk_arr; + LDKCResult_StringErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StringErrorZ), "LDKCResult_StringErrorZ"); + *ret_conv = sign(msg_ref, sk_ref); + return (uint64_t)ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_recover_pk(int8_tArray msg, jstring sig) { + LDKu8slice msg_ref; + msg_ref.datalen = msg->arr_len; + msg_ref.data = msg->elems; + LDKStr sig_conv = str_ref_to_owned_c(sig); + LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); + *ret_conv = recover_pk(msg_ref, sig_conv); + return (uint64_t)ret_conv; +} + +jboolean __attribute__((visibility("default"))) TS_verify(int8_tArray msg, jstring sig, int8_tArray pk) { + LDKu8slice msg_ref; + msg_ref.datalen = msg->arr_len; + msg_ref.data = msg->elems; + LDKStr sig_conv = str_ref_to_owned_c(sig); + LDKPublicKey pk_ref; + CHECK(pk->arr_len == 33); + memcpy(pk_ref.compressed_form, pk->elems, 33); + jboolean ret_val = verify(msg_ref, sig_conv, pk_ref); + return ret_val; } -static inline uint64_t ChannelMonitor_clone_ptr(LDKChannelMonitor *NONNULL_PTR arg) { - LDKChannelMonitor ret_var = ChannelMonitor_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_Level_clone(uint32_t orig) { + LDKLevel* orig_conv = (LDKLevel*)(orig & ~1); + uint32_t ret_conv = LDKLevel_to_js(Level_clone(orig_conv)); + return ret_conv; } - return ret_ref; + +uint32_t __attribute__((visibility("default"))) TS_Level_gossip() { + uint32_t ret_conv = LDKLevel_to_js(Level_gossip()); + return ret_conv; } -int64_t __attribute__((visibility("default"))) TS_ChannelMonitor_clone_ptr(uint32_t arg) { - LDKChannelMonitor arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelMonitor_clone_ptr(&arg_conv); - return ret_val; + +uint32_t __attribute__((visibility("default"))) TS_Level_trace() { + uint32_t ret_conv = LDKLevel_to_js(Level_trace()); + return ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ChannelMonitor_clone(uint32_t orig) { - LDKChannelMonitor orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelMonitor ret_var = ChannelMonitor_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_Level_debug() { + uint32_t ret_conv = LDKLevel_to_js(Level_debug()); + return ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_write(uint32_t obj) { - LDKChannelMonitor obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ChannelMonitor_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_Level_info() { + uint32_t ret_conv = LDKLevel_to_js(Level_info()); + return ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ChannelMonitor_update_monitor(uint32_t this_arg, uint32_t updates, uint32_t broadcaster, uint32_t fee_estimator, uint32_t logger) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKChannelMonitorUpdate updates_conv; - updates_conv.inner = (void*)(updates & (~1)); - updates_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(updates_conv); - void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); - if (!(broadcaster & 1)) { CHECK_ACCESS(broadcaster_ptr); } - LDKBroadcasterInterface* broadcaster_conv = (LDKBroadcasterInterface*)broadcaster_ptr; - void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); - if (!(fee_estimator & 1)) { CHECK_ACCESS(fee_estimator_ptr); } - LDKFeeEstimator* fee_estimator_conv = (LDKFeeEstimator*)fee_estimator_ptr; - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - if (!(logger & 1)) { CHECK_ACCESS(logger_ptr); } - LDKLogger* logger_conv = (LDKLogger*)logger_ptr; - LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); - *ret_conv = ChannelMonitor_update_monitor(&this_arg_conv, &updates_conv, broadcaster_conv, fee_estimator_conv, logger_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_Level_warn() { + uint32_t ret_conv = LDKLevel_to_js(Level_warn()); + return ret_conv; } -int64_t __attribute__((visibility("default"))) TS_ChannelMonitor_get_latest_update_id(uint32_t this_arg) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = ChannelMonitor_get_latest_update_id(&this_arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_Level_error() { + uint32_t ret_conv = LDKLevel_to_js(Level_error()); + return ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ChannelMonitor_get_funding_txo(uint32_t this_arg) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKC2Tuple_OutPointScriptZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_OutPointScriptZ), "LDKC2Tuple_OutPointScriptZ"); - *ret_conv = ChannelMonitor_get_funding_txo(&this_arg_conv); - return ((uint64_t)ret_conv); +jboolean __attribute__((visibility("default"))) TS_Level_eq(uint32_t a, uint32_t b) { + LDKLevel* a_conv = (LDKLevel*)(a & ~1); + LDKLevel* b_conv = (LDKLevel*)(b & ~1); + jboolean ret_val = Level_eq(a_conv, b_conv); + return ret_val; } -uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_get_outputs_to_watch(uint32_t this_arg) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ ret_var = ChannelMonitor_get_outputs_to_watch(&this_arg_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t o = 0; o < ret_var.datalen; o++) { - LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* ret_conv_40_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ"); - *ret_conv_40_conv = ret_var.data[o]; - ret_arr_ptr[o] = ((uint64_t)ret_conv_40_conv); - } - - FREE(ret_var.data); - return ret_arr; +int64_t __attribute__((visibility("default"))) TS_Level_hash(uint32_t o) { + LDKLevel* o_conv = (LDKLevel*)(o & ~1); + int64_t ret_val = Level_hash(o_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelMonitor_load_outputs_to_watch(uint32_t this_arg, uint32_t filter) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - void* filter_ptr = (void*)(((uint64_t)filter) & ~1); - if (!(filter & 1)) { CHECK_ACCESS(filter_ptr); } - LDKFilter* filter_conv = (LDKFilter*)filter_ptr; - ChannelMonitor_load_outputs_to_watch(&this_arg_conv, filter_conv); +uint32_t __attribute__((visibility("default"))) TS_Level_max() { + uint32_t ret_conv = LDKLevel_to_js(Level_max()); + return ret_conv; } -uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_get_and_clear_pending_monitor_events(uint32_t this_arg) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_MonitorEventZ ret_var = ChannelMonitor_get_and_clear_pending_monitor_events(&this_arg_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t o = 0; o < ret_var.datalen; o++) { - LDKMonitorEvent *ret_conv_14_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); - *ret_conv_14_copy = ret_var.data[o]; - uint64_t ret_conv_14_ref = (uint64_t)ret_conv_14_copy; - ret_arr_ptr[o] = ret_conv_14_ref; - } - - FREE(ret_var.data); - return ret_arr; +void __attribute__((visibility("default"))) TS_Record_free(uint32_t this_obj) { + LDKRecord this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + Record_free(this_obj_conv); } -uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_get_and_clear_pending_events(uint32_t this_arg) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_EventZ ret_var = ChannelMonitor_get_and_clear_pending_events(&this_arg_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t h = 0; h < ret_var.datalen; h++) { - LDKEvent *ret_conv_7_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_conv_7_copy = ret_var.data[h]; - uint64_t ret_conv_7_ref = (uint64_t)ret_conv_7_copy; - ret_arr_ptr[h] = ret_conv_7_ref; - } - - FREE(ret_var.data); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_Record_get_level(uint32_t this_ptr) { + LDKRecord this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + uint32_t ret_conv = LDKLevel_to_js(Record_get_level(&this_ptr_conv)); + return ret_conv; } -ptrArray __attribute__((visibility("default"))) TS_ChannelMonitor_get_latest_holder_commitment_txn(uint32_t this_arg, uint32_t logger) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - if (!(logger & 1)) { CHECK_ACCESS(logger_ptr); } - LDKLogger* logger_conv = (LDKLogger*)logger_ptr; - LDKCVec_TransactionZ ret_var = ChannelMonitor_get_latest_holder_commitment_txn(&this_arg_conv, logger_conv); - ptrArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native ptrArray Bytes"); - int8_tArray *ret_arr_ptr = (int8_tArray*)(ret_arr + 4); - for (size_t m = 0; m < ret_var.datalen; m++) { - LDKTransaction ret_conv_12_var = ret_var.data[m]; - int8_tArray ret_conv_12_arr = init_arr(ret_conv_12_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_conv_12_arr + 4), ret_conv_12_var.data, ret_conv_12_var.datalen); - Transaction_free(ret_conv_12_var); - ret_arr_ptr[m] = ret_conv_12_arr; - } - - FREE(ret_var.data); - return ret_arr; +void __attribute__((visibility("default"))) TS_Record_set_level(uint32_t this_ptr, uint32_t val) { + LDKRecord this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKLevel val_conv = LDKLevel_from_js(val); + Record_set_level(&this_ptr_conv, val_conv); } -uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_block_connected(uint32_t this_arg, int8_tArray header, uint32_tArray txdata, int32_t height, uint32_t broadcaster, uint32_t fee_estimator, uint32_t logger) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char header_arr[80]; - CHECK(*((uint32_t*)header) == 80); - memcpy(header_arr, (uint8_t*)(header + 4), 80); - unsigned char (*header_ref)[80] = &header_arr; - LDKCVec_C2Tuple_usizeTransactionZZ txdata_constr; - txdata_constr.datalen = *((uint32_t*)txdata); - if (txdata_constr.datalen > 0) - txdata_constr.data = MALLOC(txdata_constr.datalen * sizeof(LDKC2Tuple_usizeTransactionZ), "LDKCVec_C2Tuple_usizeTransactionZZ Elements"); - else - txdata_constr.data = NULL; - uint32_t* txdata_vals = (uint32_t*)(txdata + 4); - for (size_t c = 0; c < txdata_constr.datalen; c++) { - uint32_t txdata_conv_28 = txdata_vals[c]; - void* txdata_conv_28_ptr = (void*)(((uint64_t)txdata_conv_28) & ~1); - CHECK_ACCESS(txdata_conv_28_ptr); - LDKC2Tuple_usizeTransactionZ txdata_conv_28_conv = *(LDKC2Tuple_usizeTransactionZ*)(txdata_conv_28_ptr); - txdata_conv_28_conv = C2Tuple_usizeTransactionZ_clone((LDKC2Tuple_usizeTransactionZ*)(((uint64_t)txdata_conv_28) & ~1)); - txdata_constr.data[c] = txdata_conv_28_conv; - } - void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); - CHECK_ACCESS(broadcaster_ptr); - LDKBroadcasterInterface broadcaster_conv = *(LDKBroadcasterInterface*)(broadcaster_ptr); - void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); - CHECK_ACCESS(fee_estimator_ptr); - LDKFeeEstimator fee_estimator_conv = *(LDKFeeEstimator*)(fee_estimator_ptr); - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ ret_var = ChannelMonitor_block_connected(&this_arg_conv, header_ref, txdata_constr, height, broadcaster_conv, fee_estimator_conv, logger_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t n = 0; n < ret_var.datalen; n++) { - LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* ret_conv_39_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ"); - *ret_conv_39_conv = ret_var.data[n]; - ret_arr_ptr[n] = ((uint64_t)ret_conv_39_conv); - } - - FREE(ret_var.data); - return ret_arr; +jstring __attribute__((visibility("default"))) TS_Record_get_args(uint32_t this_ptr) { + LDKRecord this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKStr ret_str = Record_get_args(&this_ptr_conv); + jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); + Str_free(ret_str); + return ret_conv; } -void __attribute__((visibility("default"))) TS_ChannelMonitor_block_disconnected(uint32_t this_arg, int8_tArray header, int32_t height, uint32_t broadcaster, uint32_t fee_estimator, uint32_t logger) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char header_arr[80]; - CHECK(*((uint32_t*)header) == 80); - memcpy(header_arr, (uint8_t*)(header + 4), 80); - unsigned char (*header_ref)[80] = &header_arr; - void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); - CHECK_ACCESS(broadcaster_ptr); - LDKBroadcasterInterface broadcaster_conv = *(LDKBroadcasterInterface*)(broadcaster_ptr); - void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); - CHECK_ACCESS(fee_estimator_ptr); - LDKFeeEstimator fee_estimator_conv = *(LDKFeeEstimator*)(fee_estimator_ptr); - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - ChannelMonitor_block_disconnected(&this_arg_conv, header_ref, height, broadcaster_conv, fee_estimator_conv, logger_conv); +void __attribute__((visibility("default"))) TS_Record_set_args(uint32_t this_ptr, jstring val) { + LDKRecord this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKStr val_conv = str_ref_to_owned_c(val); + Record_set_args(&this_ptr_conv, val_conv); } -uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_transactions_confirmed(uint32_t this_arg, int8_tArray header, uint32_tArray txdata, int32_t height, uint32_t broadcaster, uint32_t fee_estimator, uint32_t logger) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char header_arr[80]; - CHECK(*((uint32_t*)header) == 80); - memcpy(header_arr, (uint8_t*)(header + 4), 80); - unsigned char (*header_ref)[80] = &header_arr; - LDKCVec_C2Tuple_usizeTransactionZZ txdata_constr; - txdata_constr.datalen = *((uint32_t*)txdata); - if (txdata_constr.datalen > 0) - txdata_constr.data = MALLOC(txdata_constr.datalen * sizeof(LDKC2Tuple_usizeTransactionZ), "LDKCVec_C2Tuple_usizeTransactionZZ Elements"); - else - txdata_constr.data = NULL; - uint32_t* txdata_vals = (uint32_t*)(txdata + 4); - for (size_t c = 0; c < txdata_constr.datalen; c++) { - uint32_t txdata_conv_28 = txdata_vals[c]; - void* txdata_conv_28_ptr = (void*)(((uint64_t)txdata_conv_28) & ~1); - CHECK_ACCESS(txdata_conv_28_ptr); - LDKC2Tuple_usizeTransactionZ txdata_conv_28_conv = *(LDKC2Tuple_usizeTransactionZ*)(txdata_conv_28_ptr); - txdata_conv_28_conv = C2Tuple_usizeTransactionZ_clone((LDKC2Tuple_usizeTransactionZ*)(((uint64_t)txdata_conv_28) & ~1)); - txdata_constr.data[c] = txdata_conv_28_conv; - } - void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); - CHECK_ACCESS(broadcaster_ptr); - LDKBroadcasterInterface broadcaster_conv = *(LDKBroadcasterInterface*)(broadcaster_ptr); - void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); - CHECK_ACCESS(fee_estimator_ptr); - LDKFeeEstimator fee_estimator_conv = *(LDKFeeEstimator*)(fee_estimator_ptr); - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ ret_var = ChannelMonitor_transactions_confirmed(&this_arg_conv, header_ref, txdata_constr, height, broadcaster_conv, fee_estimator_conv, logger_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t n = 0; n < ret_var.datalen; n++) { - LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* ret_conv_39_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ"); - *ret_conv_39_conv = ret_var.data[n]; - ret_arr_ptr[n] = ((uint64_t)ret_conv_39_conv); - } - - FREE(ret_var.data); - return ret_arr; +jstring __attribute__((visibility("default"))) TS_Record_get_module_path(uint32_t this_ptr) { + LDKRecord this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKStr ret_str = Record_get_module_path(&this_ptr_conv); + jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); + Str_free(ret_str); + return ret_conv; } -void __attribute__((visibility("default"))) TS_ChannelMonitor_transaction_unconfirmed(uint32_t this_arg, int8_tArray txid, uint32_t broadcaster, uint32_t fee_estimator, uint32_t logger) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char txid_arr[32]; - CHECK(*((uint32_t*)txid) == 32); - memcpy(txid_arr, (uint8_t*)(txid + 4), 32); - unsigned char (*txid_ref)[32] = &txid_arr; - void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); - CHECK_ACCESS(broadcaster_ptr); - LDKBroadcasterInterface broadcaster_conv = *(LDKBroadcasterInterface*)(broadcaster_ptr); - void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); - CHECK_ACCESS(fee_estimator_ptr); - LDKFeeEstimator fee_estimator_conv = *(LDKFeeEstimator*)(fee_estimator_ptr); - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - ChannelMonitor_transaction_unconfirmed(&this_arg_conv, txid_ref, broadcaster_conv, fee_estimator_conv, logger_conv); +void __attribute__((visibility("default"))) TS_Record_set_module_path(uint32_t this_ptr, jstring val) { + LDKRecord this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKStr val_conv = str_ref_to_owned_c(val); + Record_set_module_path(&this_ptr_conv, val_conv); } -uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_best_block_updated(uint32_t this_arg, int8_tArray header, int32_t height, uint32_t broadcaster, uint32_t fee_estimator, uint32_t logger) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char header_arr[80]; - CHECK(*((uint32_t*)header) == 80); - memcpy(header_arr, (uint8_t*)(header + 4), 80); - unsigned char (*header_ref)[80] = &header_arr; - void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); - CHECK_ACCESS(broadcaster_ptr); - LDKBroadcasterInterface broadcaster_conv = *(LDKBroadcasterInterface*)(broadcaster_ptr); - void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); - CHECK_ACCESS(fee_estimator_ptr); - LDKFeeEstimator fee_estimator_conv = *(LDKFeeEstimator*)(fee_estimator_ptr); - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ ret_var = ChannelMonitor_best_block_updated(&this_arg_conv, header_ref, height, broadcaster_conv, fee_estimator_conv, logger_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t n = 0; n < ret_var.datalen; n++) { - LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* ret_conv_39_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ"); - *ret_conv_39_conv = ret_var.data[n]; - ret_arr_ptr[n] = ((uint64_t)ret_conv_39_conv); - } - - FREE(ret_var.data); - return ret_arr; +jstring __attribute__((visibility("default"))) TS_Record_get_file(uint32_t this_ptr) { + LDKRecord this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKStr ret_str = Record_get_file(&this_ptr_conv); + jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); + Str_free(ret_str); + return ret_conv; } -ptrArray __attribute__((visibility("default"))) TS_ChannelMonitor_get_relevant_txids(uint32_t this_arg) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_TxidZ ret_var = ChannelMonitor_get_relevant_txids(&this_arg_conv); - ptrArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native ptrArray Bytes"); - int8_tArray *ret_arr_ptr = (int8_tArray*)(ret_arr + 4); - for (size_t m = 0; m < ret_var.datalen; m++) { - int8_tArray ret_conv_12_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_conv_12_arr + 4), ret_var.data[m].data, 32); - ret_arr_ptr[m] = ret_conv_12_arr; - } - - FREE(ret_var.data); - return ret_arr; +void __attribute__((visibility("default"))) TS_Record_set_file(uint32_t this_ptr, jstring val) { + LDKRecord this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKStr val_conv = str_ref_to_owned_c(val); + Record_set_file(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChannelMonitor_current_best_block(uint32_t this_arg) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKBestBlock ret_var = ChannelMonitor_current_best_block(&this_arg_conv); +int32_t __attribute__((visibility("default"))) TS_Record_get_line(uint32_t this_ptr) { + LDKRecord this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = Record_get_line(&this_ptr_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_Record_set_line(uint32_t this_ptr, int32_t val) { + LDKRecord this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + Record_set_line(&this_ptr_conv, val); +} + +static inline uint64_t Record_clone_ptr(LDKRecord *NONNULL_PTR arg) { + LDKRecord ret_var = Record_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_Record_clone_ptr(uint32_t arg) { + LDKRecord arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = Record_clone_ptr(&arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_Record_clone(uint32_t orig) { + LDKRecord orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKRecord ret_var = Record_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -19624,89 +17078,76 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelMonitor_current_best_ return ret_ref; } -uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_get_claimable_balances(uint32_t this_arg) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_BalanceZ ret_var = ChannelMonitor_get_claimable_balances(&this_arg_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t j = 0; j < ret_var.datalen; j++) { - LDKBalance *ret_conv_9_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); - *ret_conv_9_copy = ret_var.data[j]; - uint64_t ret_conv_9_ref = (uint64_t)ret_conv_9_copy; - ret_arr_ptr[j] = ret_conv_9_ref; - } - - FREE(ret_var.data); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_read(int8_tArray ser, uint32_t arg) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - void* arg_ptr = (void*)(((uint64_t)arg) & ~1); - if (!(arg & 1)) { CHECK_ACCESS(arg_ptr); } - LDKKeysInterface* arg_conv = (LDKKeysInterface*)arg_ptr; - LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ"); - *ret_conv = C2Tuple_BlockHashChannelMonitorZ_read(ser_ref, arg_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_Logger_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKLogger this_ptr_conv = *(LDKLogger*)(this_ptr_ptr); + FREE((void*)this_ptr); + Logger_free(this_ptr_conv); } -void __attribute__((visibility("default"))) TS_OutPoint_free(uint32_t this_obj) { - LDKOutPoint this_obj_conv; +void __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_free(uint32_t this_obj) { + LDKChannelHandshakeConfig this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - OutPoint_free(this_obj_conv); + ChannelHandshakeConfig_free(this_obj_conv); +} + +int32_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_get_minimum_depth(uint32_t this_ptr) { + LDKChannelHandshakeConfig this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = ChannelHandshakeConfig_get_minimum_depth(&this_ptr_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_OutPoint_get_txid(uint32_t this_ptr) { - LDKOutPoint this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_set_minimum_depth(uint32_t this_ptr, int32_t val) { + LDKChannelHandshakeConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *OutPoint_get_txid(&this_ptr_conv), 32); - return ret_arr; + ChannelHandshakeConfig_set_minimum_depth(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_OutPoint_set_txid(uint32_t this_ptr, int8_tArray val) { - LDKOutPoint this_ptr_conv; +int16_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_get_our_to_self_delay(uint32_t this_ptr) { + LDKChannelHandshakeConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - OutPoint_set_txid(&this_ptr_conv, val_ref); + int16_t ret_val = ChannelHandshakeConfig_get_our_to_self_delay(&this_ptr_conv); + return ret_val; } -int16_t __attribute__((visibility("default"))) TS_OutPoint_get_index(uint32_t this_ptr) { - LDKOutPoint this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_set_our_to_self_delay(uint32_t this_ptr, int16_t val) { + LDKChannelHandshakeConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = OutPoint_get_index(&this_ptr_conv); + ChannelHandshakeConfig_set_our_to_self_delay(&this_ptr_conv, val); +} + +int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_get_our_htlc_minimum_msat(uint32_t this_ptr) { + LDKChannelHandshakeConfig this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = ChannelHandshakeConfig_get_our_htlc_minimum_msat(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_OutPoint_set_index(uint32_t this_ptr, int16_t val) { - LDKOutPoint this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_set_our_htlc_minimum_msat(uint32_t this_ptr, int64_t val) { + LDKChannelHandshakeConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - OutPoint_set_index(&this_ptr_conv, val); + ChannelHandshakeConfig_set_our_htlc_minimum_msat(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_OutPoint_new(int8_tArray txid_arg, int16_t index_arg) { - LDKThirtyTwoBytes txid_arg_ref; - CHECK(*((uint32_t*)txid_arg) == 32); - memcpy(txid_arg_ref.data, (uint8_t*)(txid_arg + 4), 32); - LDKOutPoint ret_var = OutPoint_new(txid_arg_ref, index_arg); +uint32_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_new(int32_t minimum_depth_arg, int16_t our_to_self_delay_arg, int64_t our_htlc_minimum_msat_arg) { + LDKChannelHandshakeConfig ret_var = ChannelHandshakeConfig_new(minimum_depth_arg, our_to_self_delay_arg, our_htlc_minimum_msat_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -19718,8 +17159,8 @@ uint32_t __attribute__((visibility("default"))) TS_OutPoint_new(int8_tArray txi return ret_ref; } -static inline uint64_t OutPoint_clone_ptr(LDKOutPoint *NONNULL_PTR arg) { - LDKOutPoint ret_var = OutPoint_clone(arg); +static inline uint64_t ChannelHandshakeConfig_clone_ptr(LDKChannelHandshakeConfig *NONNULL_PTR arg) { + LDKChannelHandshakeConfig ret_var = ChannelHandshakeConfig_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -19730,21 +17171,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_OutPoint_clone_ptr(uint32_t arg) { - LDKOutPoint arg_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_clone_ptr(uint32_t arg) { + LDKChannelHandshakeConfig arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = OutPoint_clone_ptr(&arg_conv); + int64_t ret_val = ChannelHandshakeConfig_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_OutPoint_clone(uint32_t orig) { - LDKOutPoint orig_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_clone(uint32_t orig) { + LDKChannelHandshakeConfig orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKOutPoint ret_var = OutPoint_clone(&orig_conv); + LDKChannelHandshakeConfig ret_var = ChannelHandshakeConfig_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -19756,73 +17197,216 @@ uint32_t __attribute__((visibility("default"))) TS_OutPoint_clone(uint32_t orig return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_OutPoint_eq(uint32_t a, uint32_t b) { - LDKOutPoint a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKOutPoint b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = OutPoint_eq(&a_conv, &b_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_default() { + LDKChannelHandshakeConfig ret_var = ChannelHandshakeConfig_default(); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_free(uint32_t this_obj) { + LDKChannelHandshakeLimits this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + ChannelHandshakeLimits_free(this_obj_conv); +} + +int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_min_funding_satoshis(uint32_t this_ptr) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = ChannelHandshakeLimits_get_min_funding_satoshis(&this_ptr_conv); return ret_val; } -int64_t __attribute__((visibility("default"))) TS_OutPoint_hash(uint32_t o) { - LDKOutPoint o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = OutPoint_hash(&o_conv); +void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_min_funding_satoshis(uint32_t this_ptr, int64_t val) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ChannelHandshakeLimits_set_min_funding_satoshis(&this_ptr_conv, val); +} + +int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_max_htlc_minimum_msat(uint32_t this_ptr) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = ChannelHandshakeLimits_get_max_htlc_minimum_msat(&this_ptr_conv); return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_OutPoint_to_channel_id(uint32_t this_arg) { - LDKOutPoint this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), OutPoint_to_channel_id(&this_arg_conv).data, 32); - return ret_arr; +void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_max_htlc_minimum_msat(uint32_t this_ptr, int64_t val) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ChannelHandshakeLimits_set_max_htlc_minimum_msat(&this_ptr_conv, val); } -int8_tArray __attribute__((visibility("default"))) TS_OutPoint_write(uint32_t obj) { - LDKOutPoint obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = OutPoint_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_min_max_htlc_value_in_flight_msat(uint32_t this_ptr) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = ChannelHandshakeLimits_get_min_max_htlc_value_in_flight_msat(&this_ptr_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_min_max_htlc_value_in_flight_msat(uint32_t this_ptr, int64_t val) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ChannelHandshakeLimits_set_min_max_htlc_value_in_flight_msat(&this_ptr_conv, val); +} + +int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_max_channel_reserve_satoshis(uint32_t this_ptr) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = ChannelHandshakeLimits_get_max_channel_reserve_satoshis(&this_ptr_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_max_channel_reserve_satoshis(uint32_t this_ptr, int64_t val) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ChannelHandshakeLimits_set_max_channel_reserve_satoshis(&this_ptr_conv, val); +} + +int16_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_min_max_accepted_htlcs(uint32_t this_ptr) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int16_t ret_val = ChannelHandshakeLimits_get_min_max_accepted_htlcs(&this_ptr_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_min_max_accepted_htlcs(uint32_t this_ptr, int16_t val) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ChannelHandshakeLimits_set_min_max_accepted_htlcs(&this_ptr_conv, val); +} + +int32_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_max_minimum_depth(uint32_t this_ptr) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = ChannelHandshakeLimits_get_max_minimum_depth(&this_ptr_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_max_minimum_depth(uint32_t this_ptr, int32_t val) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ChannelHandshakeLimits_set_max_minimum_depth(&this_ptr_conv, val); +} + +jboolean __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_force_announced_channel_preference(uint32_t this_ptr) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + jboolean ret_val = ChannelHandshakeLimits_get_force_announced_channel_preference(&this_ptr_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_force_announced_channel_preference(uint32_t this_ptr, jboolean val) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ChannelHandshakeLimits_set_force_announced_channel_preference(&this_ptr_conv, val); +} + +int16_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_their_to_self_delay(uint32_t this_ptr) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int16_t ret_val = ChannelHandshakeLimits_get_their_to_self_delay(&this_ptr_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_their_to_self_delay(uint32_t this_ptr, int16_t val) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ChannelHandshakeLimits_set_their_to_self_delay(&this_ptr_conv, val); +} + +uint32_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_new(int64_t min_funding_satoshis_arg, int64_t max_htlc_minimum_msat_arg, int64_t min_max_htlc_value_in_flight_msat_arg, int64_t max_channel_reserve_satoshis_arg, int16_t min_max_accepted_htlcs_arg, int32_t max_minimum_depth_arg, jboolean force_announced_channel_preference_arg, int16_t their_to_self_delay_arg) { + LDKChannelHandshakeLimits ret_var = ChannelHandshakeLimits_new(min_funding_satoshis_arg, max_htlc_minimum_msat_arg, min_max_htlc_value_in_flight_msat_arg, max_channel_reserve_satoshis_arg, min_max_accepted_htlcs_arg, max_minimum_depth_arg, force_announced_channel_preference_arg, their_to_self_delay_arg); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +static inline uint64_t ChannelHandshakeLimits_clone_ptr(LDKChannelHandshakeLimits *NONNULL_PTR arg) { + LDKChannelHandshakeLimits ret_var = ChannelHandshakeLimits_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -uint32_t __attribute__((visibility("default"))) TS_OutPoint_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_OutPointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OutPointDecodeErrorZ), "LDKCResult_OutPointDecodeErrorZ"); - *ret_conv = OutPoint_read(ser_ref); - return (uint64_t)ret_conv; + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_clone_ptr(uint32_t arg) { + LDKChannelHandshakeLimits arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ChannelHandshakeLimits_clone_ptr(&arg_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_free(uint32_t this_obj) { - LDKDelayedPaymentOutputDescriptor this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - DelayedPaymentOutputDescriptor_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_clone(uint32_t orig) { + LDKChannelHandshakeLimits orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKChannelHandshakeLimits ret_var = ChannelHandshakeLimits_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_get_outpoint(uint32_t this_ptr) { - LDKDelayedPaymentOutputDescriptor this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKOutPoint ret_var = DelayedPaymentOutputDescriptor_get_outpoint(&this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_default() { + LDKChannelHandshakeLimits ret_var = ChannelHandshakeLimits_default(); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -19834,148 +17418,135 @@ uint32_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescript return ret_ref; } -void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_outpoint(uint32_t this_ptr, uint32_t val) { - LDKDelayedPaymentOutputDescriptor this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelConfig_free(uint32_t this_obj) { + LDKChannelConfig this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + ChannelConfig_free(this_obj_conv); +} + +int32_t __attribute__((visibility("default"))) TS_ChannelConfig_get_forwarding_fee_proportional_millionths(uint32_t this_ptr) { + LDKChannelConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKOutPoint val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = OutPoint_clone(&val_conv); - DelayedPaymentOutputDescriptor_set_outpoint(&this_ptr_conv, val_conv); + int32_t ret_val = ChannelConfig_get_forwarding_fee_proportional_millionths(&this_ptr_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_get_per_commitment_point(uint32_t this_ptr) { - LDKDelayedPaymentOutputDescriptor this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelConfig_set_forwarding_fee_proportional_millionths(uint32_t this_ptr, int32_t val) { + LDKChannelConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), DelayedPaymentOutputDescriptor_get_per_commitment_point(&this_ptr_conv).compressed_form, 33); - return ret_arr; + ChannelConfig_set_forwarding_fee_proportional_millionths(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_per_commitment_point(uint32_t this_ptr, int8_tArray val) { - LDKDelayedPaymentOutputDescriptor this_ptr_conv; +int32_t __attribute__((visibility("default"))) TS_ChannelConfig_get_forwarding_fee_base_msat(uint32_t this_ptr) { + LDKChannelConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - DelayedPaymentOutputDescriptor_set_per_commitment_point(&this_ptr_conv, val_ref); + int32_t ret_val = ChannelConfig_get_forwarding_fee_base_msat(&this_ptr_conv); + return ret_val; } -int16_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_get_to_self_delay(uint32_t this_ptr) { - LDKDelayedPaymentOutputDescriptor this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelConfig_set_forwarding_fee_base_msat(uint32_t this_ptr, int32_t val) { + LDKChannelConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = DelayedPaymentOutputDescriptor_get_to_self_delay(&this_ptr_conv); + ChannelConfig_set_forwarding_fee_base_msat(&this_ptr_conv, val); +} + +int16_t __attribute__((visibility("default"))) TS_ChannelConfig_get_cltv_expiry_delta(uint32_t this_ptr) { + LDKChannelConfig this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int16_t ret_val = ChannelConfig_get_cltv_expiry_delta(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_to_self_delay(uint32_t this_ptr, int16_t val) { - LDKDelayedPaymentOutputDescriptor this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelConfig_set_cltv_expiry_delta(uint32_t this_ptr, int16_t val) { + LDKChannelConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - DelayedPaymentOutputDescriptor_set_to_self_delay(&this_ptr_conv, val); + ChannelConfig_set_cltv_expiry_delta(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_output(uint32_t this_ptr, uint32_t val) { - LDKDelayedPaymentOutputDescriptor this_ptr_conv; +jboolean __attribute__((visibility("default"))) TS_ChannelConfig_get_announced_channel(uint32_t this_ptr) { + LDKChannelConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKTxOut val_conv = *(LDKTxOut*)(val_ptr); - val_conv = TxOut_clone((LDKTxOut*)(((uint64_t)val) & ~1)); - DelayedPaymentOutputDescriptor_set_output(&this_ptr_conv, val_conv); + jboolean ret_val = ChannelConfig_get_announced_channel(&this_ptr_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_get_revocation_pubkey(uint32_t this_ptr) { - LDKDelayedPaymentOutputDescriptor this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelConfig_set_announced_channel(uint32_t this_ptr, jboolean val) { + LDKChannelConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), DelayedPaymentOutputDescriptor_get_revocation_pubkey(&this_ptr_conv).compressed_form, 33); - return ret_arr; + ChannelConfig_set_announced_channel(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_revocation_pubkey(uint32_t this_ptr, int8_tArray val) { - LDKDelayedPaymentOutputDescriptor this_ptr_conv; +jboolean __attribute__((visibility("default"))) TS_ChannelConfig_get_commit_upfront_shutdown_pubkey(uint32_t this_ptr) { + LDKChannelConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - DelayedPaymentOutputDescriptor_set_revocation_pubkey(&this_ptr_conv, val_ref); + jboolean ret_val = ChannelConfig_get_commit_upfront_shutdown_pubkey(&this_ptr_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_get_channel_keys_id(uint32_t this_ptr) { - LDKDelayedPaymentOutputDescriptor this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelConfig_set_commit_upfront_shutdown_pubkey(uint32_t this_ptr, jboolean val) { + LDKChannelConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *DelayedPaymentOutputDescriptor_get_channel_keys_id(&this_ptr_conv), 32); - return ret_arr; + ChannelConfig_set_commit_upfront_shutdown_pubkey(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_channel_keys_id(uint32_t this_ptr, int8_tArray val) { - LDKDelayedPaymentOutputDescriptor this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelConfig_get_max_dust_htlc_exposure_msat(uint32_t this_ptr) { + LDKChannelConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - DelayedPaymentOutputDescriptor_set_channel_keys_id(&this_ptr_conv, val_ref); + int64_t ret_val = ChannelConfig_get_max_dust_htlc_exposure_msat(&this_ptr_conv); + return ret_val; } -int64_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_get_channel_value_satoshis(uint32_t this_ptr) { - LDKDelayedPaymentOutputDescriptor this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelConfig_set_max_dust_htlc_exposure_msat(uint32_t this_ptr, int64_t val) { + LDKChannelConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = DelayedPaymentOutputDescriptor_get_channel_value_satoshis(&this_ptr_conv); + ChannelConfig_set_max_dust_htlc_exposure_msat(&this_ptr_conv, val); +} + +int64_t __attribute__((visibility("default"))) TS_ChannelConfig_get_force_close_avoidance_max_fee_satoshis(uint32_t this_ptr) { + LDKChannelConfig this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = ChannelConfig_get_force_close_avoidance_max_fee_satoshis(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_channel_value_satoshis(uint32_t this_ptr, int64_t val) { - LDKDelayedPaymentOutputDescriptor this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelConfig_set_force_close_avoidance_max_fee_satoshis(uint32_t this_ptr, int64_t val) { + LDKChannelConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - DelayedPaymentOutputDescriptor_set_channel_value_satoshis(&this_ptr_conv, val); + ChannelConfig_set_force_close_avoidance_max_fee_satoshis(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_new(uint32_t outpoint_arg, int8_tArray per_commitment_point_arg, int16_t to_self_delay_arg, uint32_t output_arg, int8_tArray revocation_pubkey_arg, int8_tArray channel_keys_id_arg, int64_t channel_value_satoshis_arg) { - LDKOutPoint outpoint_arg_conv; - outpoint_arg_conv.inner = (void*)(outpoint_arg & (~1)); - outpoint_arg_conv.is_owned = (outpoint_arg & 1) || (outpoint_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(outpoint_arg_conv); - outpoint_arg_conv = OutPoint_clone(&outpoint_arg_conv); - LDKPublicKey per_commitment_point_arg_ref; - CHECK(*((uint32_t*)per_commitment_point_arg) == 33); - memcpy(per_commitment_point_arg_ref.compressed_form, (uint8_t*)(per_commitment_point_arg + 4), 33); - void* output_arg_ptr = (void*)(((uint64_t)output_arg) & ~1); - CHECK_ACCESS(output_arg_ptr); - LDKTxOut output_arg_conv = *(LDKTxOut*)(output_arg_ptr); - output_arg_conv = TxOut_clone((LDKTxOut*)(((uint64_t)output_arg) & ~1)); - LDKPublicKey revocation_pubkey_arg_ref; - CHECK(*((uint32_t*)revocation_pubkey_arg) == 33); - memcpy(revocation_pubkey_arg_ref.compressed_form, (uint8_t*)(revocation_pubkey_arg + 4), 33); - LDKThirtyTwoBytes channel_keys_id_arg_ref; - CHECK(*((uint32_t*)channel_keys_id_arg) == 32); - memcpy(channel_keys_id_arg_ref.data, (uint8_t*)(channel_keys_id_arg + 4), 32); - LDKDelayedPaymentOutputDescriptor ret_var = DelayedPaymentOutputDescriptor_new(outpoint_arg_conv, per_commitment_point_arg_ref, to_self_delay_arg, output_arg_conv, revocation_pubkey_arg_ref, channel_keys_id_arg_ref, channel_value_satoshis_arg); +uint32_t __attribute__((visibility("default"))) TS_ChannelConfig_new(int32_t forwarding_fee_proportional_millionths_arg, int32_t forwarding_fee_base_msat_arg, int16_t cltv_expiry_delta_arg, jboolean announced_channel_arg, jboolean commit_upfront_shutdown_pubkey_arg, int64_t max_dust_htlc_exposure_msat_arg, int64_t force_close_avoidance_max_fee_satoshis_arg) { + LDKChannelConfig ret_var = ChannelConfig_new(forwarding_fee_proportional_millionths_arg, forwarding_fee_base_msat_arg, cltv_expiry_delta_arg, announced_channel_arg, commit_upfront_shutdown_pubkey_arg, max_dust_htlc_exposure_msat_arg, force_close_avoidance_max_fee_satoshis_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -19987,8 +17558,8 @@ uint32_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescript return ret_ref; } -static inline uint64_t DelayedPaymentOutputDescriptor_clone_ptr(LDKDelayedPaymentOutputDescriptor *NONNULL_PTR arg) { - LDKDelayedPaymentOutputDescriptor ret_var = DelayedPaymentOutputDescriptor_clone(arg); +static inline uint64_t ChannelConfig_clone_ptr(LDKChannelConfig *NONNULL_PTR arg) { + LDKChannelConfig ret_var = ChannelConfig_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -19999,21 +17570,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_clone_ptr(uint32_t arg) { - LDKDelayedPaymentOutputDescriptor arg_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelConfig_clone_ptr(uint32_t arg) { + LDKChannelConfig arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = DelayedPaymentOutputDescriptor_clone_ptr(&arg_conv); + int64_t ret_val = ChannelConfig_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_clone(uint32_t orig) { - LDKDelayedPaymentOutputDescriptor orig_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelConfig_clone(uint32_t orig) { + LDKChannelConfig orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKDelayedPaymentOutputDescriptor ret_var = DelayedPaymentOutputDescriptor_clone(&orig_conv); + LDKChannelConfig ret_var = ChannelConfig_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -20025,41 +17596,84 @@ uint32_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescript return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_write(uint32_t obj) { - LDKDelayedPaymentOutputDescriptor obj_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelConfig_default() { + LDKChannelConfig ret_var = ChannelConfig_default(); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +int8_tArray __attribute__((visibility("default"))) TS_ChannelConfig_write(uint32_t obj) { + LDKChannelConfig obj_conv; obj_conv.inner = (void*)(obj & (~1)); obj_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = DelayedPaymentOutputDescriptor_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + LDKCVec_u8Z ret_var = ChannelConfig_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_read(int8_tArray ser) { +uint32_t __attribute__((visibility("default"))) TS_ChannelConfig_read(int8_tArray ser) { LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ"); - *ret_conv = DelayedPaymentOutputDescriptor_read(ser_ref); + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ChannelConfigDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelConfigDecodeErrorZ), "LDKCResult_ChannelConfigDecodeErrorZ"); + *ret_conv = ChannelConfig_read(ser_ref); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_free(uint32_t this_obj) { - LDKStaticPaymentOutputDescriptor this_obj_conv; +void __attribute__((visibility("default"))) TS_UserConfig_free(uint32_t this_obj) { + LDKUserConfig this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - StaticPaymentOutputDescriptor_free(this_obj_conv); + UserConfig_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_get_outpoint(uint32_t this_ptr) { - LDKStaticPaymentOutputDescriptor this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_UserConfig_get_own_channel_config(uint32_t this_ptr) { + LDKUserConfig this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelHandshakeConfig ret_var = UserConfig_get_own_channel_config(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +void __attribute__((visibility("default"))) TS_UserConfig_set_own_channel_config(uint32_t this_ptr, uint32_t val) { + LDKUserConfig this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelHandshakeConfig val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = ChannelHandshakeConfig_clone(&val_conv); + UserConfig_set_own_channel_config(&this_ptr_conv, val_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_UserConfig_get_peer_channel_config_limits(uint32_t this_ptr) { + LDKUserConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKOutPoint ret_var = StaticPaymentOutputDescriptor_get_outpoint(&this_ptr_conv); + LDKChannelHandshakeLimits ret_var = UserConfig_get_peer_channel_config_limits(&this_ptr_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -20071,83 +17685,100 @@ uint32_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescripto return ret_ref; } -void __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_set_outpoint(uint32_t this_ptr, uint32_t val) { - LDKStaticPaymentOutputDescriptor this_ptr_conv; +void __attribute__((visibility("default"))) TS_UserConfig_set_peer_channel_config_limits(uint32_t this_ptr, uint32_t val) { + LDKUserConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKOutPoint val_conv; + LDKChannelHandshakeLimits val_conv; val_conv.inner = (void*)(val & (~1)); val_conv.is_owned = (val & 1) || (val == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = OutPoint_clone(&val_conv); - StaticPaymentOutputDescriptor_set_outpoint(&this_ptr_conv, val_conv); + val_conv = ChannelHandshakeLimits_clone(&val_conv); + UserConfig_set_peer_channel_config_limits(&this_ptr_conv, val_conv); } -void __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_set_output(uint32_t this_ptr, uint32_t val) { - LDKStaticPaymentOutputDescriptor this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_UserConfig_get_channel_options(uint32_t this_ptr) { + LDKUserConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKTxOut val_conv = *(LDKTxOut*)(val_ptr); - val_conv = TxOut_clone((LDKTxOut*)(((uint64_t)val) & ~1)); - StaticPaymentOutputDescriptor_set_output(&this_ptr_conv, val_conv); + LDKChannelConfig ret_var = UserConfig_get_channel_options(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_get_channel_keys_id(uint32_t this_ptr) { - LDKStaticPaymentOutputDescriptor this_ptr_conv; +void __attribute__((visibility("default"))) TS_UserConfig_set_channel_options(uint32_t this_ptr, uint32_t val) { + LDKUserConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *StaticPaymentOutputDescriptor_get_channel_keys_id(&this_ptr_conv), 32); - return ret_arr; + LDKChannelConfig val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = ChannelConfig_clone(&val_conv); + UserConfig_set_channel_options(&this_ptr_conv, val_conv); } -void __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_set_channel_keys_id(uint32_t this_ptr, int8_tArray val) { - LDKStaticPaymentOutputDescriptor this_ptr_conv; +jboolean __attribute__((visibility("default"))) TS_UserConfig_get_accept_forwards_to_priv_channels(uint32_t this_ptr) { + LDKUserConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - StaticPaymentOutputDescriptor_set_channel_keys_id(&this_ptr_conv, val_ref); + jboolean ret_val = UserConfig_get_accept_forwards_to_priv_channels(&this_ptr_conv); + return ret_val; } -int64_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_get_channel_value_satoshis(uint32_t this_ptr) { - LDKStaticPaymentOutputDescriptor this_ptr_conv; +void __attribute__((visibility("default"))) TS_UserConfig_set_accept_forwards_to_priv_channels(uint32_t this_ptr, jboolean val) { + LDKUserConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = StaticPaymentOutputDescriptor_get_channel_value_satoshis(&this_ptr_conv); + UserConfig_set_accept_forwards_to_priv_channels(&this_ptr_conv, val); +} + +jboolean __attribute__((visibility("default"))) TS_UserConfig_get_accept_inbound_channels(uint32_t this_ptr) { + LDKUserConfig this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + jboolean ret_val = UserConfig_get_accept_inbound_channels(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_set_channel_value_satoshis(uint32_t this_ptr, int64_t val) { - LDKStaticPaymentOutputDescriptor this_ptr_conv; +void __attribute__((visibility("default"))) TS_UserConfig_set_accept_inbound_channels(uint32_t this_ptr, jboolean val) { + LDKUserConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - StaticPaymentOutputDescriptor_set_channel_value_satoshis(&this_ptr_conv, val); + UserConfig_set_accept_inbound_channels(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_new(uint32_t outpoint_arg, uint32_t output_arg, int8_tArray channel_keys_id_arg, int64_t channel_value_satoshis_arg) { - LDKOutPoint outpoint_arg_conv; - outpoint_arg_conv.inner = (void*)(outpoint_arg & (~1)); - outpoint_arg_conv.is_owned = (outpoint_arg & 1) || (outpoint_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(outpoint_arg_conv); - outpoint_arg_conv = OutPoint_clone(&outpoint_arg_conv); - void* output_arg_ptr = (void*)(((uint64_t)output_arg) & ~1); - CHECK_ACCESS(output_arg_ptr); - LDKTxOut output_arg_conv = *(LDKTxOut*)(output_arg_ptr); - output_arg_conv = TxOut_clone((LDKTxOut*)(((uint64_t)output_arg) & ~1)); - LDKThirtyTwoBytes channel_keys_id_arg_ref; - CHECK(*((uint32_t*)channel_keys_id_arg) == 32); - memcpy(channel_keys_id_arg_ref.data, (uint8_t*)(channel_keys_id_arg + 4), 32); - LDKStaticPaymentOutputDescriptor ret_var = StaticPaymentOutputDescriptor_new(outpoint_arg_conv, output_arg_conv, channel_keys_id_arg_ref, channel_value_satoshis_arg); +uint32_t __attribute__((visibility("default"))) TS_UserConfig_new(uint32_t own_channel_config_arg, uint32_t peer_channel_config_limits_arg, uint32_t channel_options_arg, jboolean accept_forwards_to_priv_channels_arg, jboolean accept_inbound_channels_arg) { + LDKChannelHandshakeConfig own_channel_config_arg_conv; + own_channel_config_arg_conv.inner = (void*)(own_channel_config_arg & (~1)); + own_channel_config_arg_conv.is_owned = (own_channel_config_arg & 1) || (own_channel_config_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(own_channel_config_arg_conv); + own_channel_config_arg_conv = ChannelHandshakeConfig_clone(&own_channel_config_arg_conv); + LDKChannelHandshakeLimits peer_channel_config_limits_arg_conv; + peer_channel_config_limits_arg_conv.inner = (void*)(peer_channel_config_limits_arg & (~1)); + peer_channel_config_limits_arg_conv.is_owned = (peer_channel_config_limits_arg & 1) || (peer_channel_config_limits_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(peer_channel_config_limits_arg_conv); + peer_channel_config_limits_arg_conv = ChannelHandshakeLimits_clone(&peer_channel_config_limits_arg_conv); + LDKChannelConfig channel_options_arg_conv; + channel_options_arg_conv.inner = (void*)(channel_options_arg & (~1)); + channel_options_arg_conv.is_owned = (channel_options_arg & 1) || (channel_options_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_options_arg_conv); + channel_options_arg_conv = ChannelConfig_clone(&channel_options_arg_conv); + LDKUserConfig ret_var = UserConfig_new(own_channel_config_arg_conv, peer_channel_config_limits_arg_conv, channel_options_arg_conv, accept_forwards_to_priv_channels_arg, accept_inbound_channels_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -20159,8 +17790,8 @@ uint32_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescripto return ret_ref; } -static inline uint64_t StaticPaymentOutputDescriptor_clone_ptr(LDKStaticPaymentOutputDescriptor *NONNULL_PTR arg) { - LDKStaticPaymentOutputDescriptor ret_var = StaticPaymentOutputDescriptor_clone(arg); +static inline uint64_t UserConfig_clone_ptr(LDKUserConfig *NONNULL_PTR arg) { + LDKUserConfig ret_var = UserConfig_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -20171,21 +17802,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_clone_ptr(uint32_t arg) { - LDKStaticPaymentOutputDescriptor arg_conv; +int64_t __attribute__((visibility("default"))) TS_UserConfig_clone_ptr(uint32_t arg) { + LDKUserConfig arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = StaticPaymentOutputDescriptor_clone_ptr(&arg_conv); + int64_t ret_val = UserConfig_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_clone(uint32_t orig) { - LDKStaticPaymentOutputDescriptor orig_conv; +uint32_t __attribute__((visibility("default"))) TS_UserConfig_clone(uint32_t orig) { + LDKUserConfig orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKStaticPaymentOutputDescriptor ret_var = StaticPaymentOutputDescriptor_clone(&orig_conv); + LDKUserConfig ret_var = UserConfig_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -20197,299 +17828,401 @@ uint32_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescripto return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_write(uint32_t obj) { - LDKStaticPaymentOutputDescriptor obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = StaticPaymentOutputDescriptor_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_UserConfig_default() { + LDKUserConfig ret_var = UserConfig_default(); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ"); - *ret_conv = StaticPaymentOutputDescriptor_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_BestBlock_free(uint32_t this_obj) { + LDKBestBlock this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + BestBlock_free(this_obj_conv); } -void __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKSpendableOutputDescriptor this_ptr_conv = *(LDKSpendableOutputDescriptor*)(this_ptr_ptr); - FREE((void*)this_ptr); - SpendableOutputDescriptor_free(this_ptr_conv); +static inline uint64_t BestBlock_clone_ptr(LDKBestBlock *NONNULL_PTR arg) { + LDKBestBlock ret_var = BestBlock_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -static inline uint64_t SpendableOutputDescriptor_clone_ptr(LDKSpendableOutputDescriptor *NONNULL_PTR arg) { - LDKSpendableOutputDescriptor *ret_copy = MALLOC(sizeof(LDKSpendableOutputDescriptor), "LDKSpendableOutputDescriptor"); - *ret_copy = SpendableOutputDescriptor_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_clone_ptr(uint32_t arg) { - LDKSpendableOutputDescriptor* arg_conv = (LDKSpendableOutputDescriptor*)arg; - int64_t ret_val = SpendableOutputDescriptor_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_BestBlock_clone_ptr(uint32_t arg) { + LDKBestBlock arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = BestBlock_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_clone(uint32_t orig) { - LDKSpendableOutputDescriptor* orig_conv = (LDKSpendableOutputDescriptor*)orig; - LDKSpendableOutputDescriptor *ret_copy = MALLOC(sizeof(LDKSpendableOutputDescriptor), "LDKSpendableOutputDescriptor"); - *ret_copy = SpendableOutputDescriptor_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; +uint32_t __attribute__((visibility("default"))) TS_BestBlock_clone(uint32_t orig) { + LDKBestBlock orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKBestBlock ret_var = BestBlock_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_static_output(uint32_t outpoint, uint32_t output) { - LDKOutPoint outpoint_conv; - outpoint_conv.inner = (void*)(outpoint & (~1)); - outpoint_conv.is_owned = (outpoint & 1) || (outpoint == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(outpoint_conv); - outpoint_conv = OutPoint_clone(&outpoint_conv); - void* output_ptr = (void*)(((uint64_t)output) & ~1); - CHECK_ACCESS(output_ptr); - LDKTxOut output_conv = *(LDKTxOut*)(output_ptr); - output_conv = TxOut_clone((LDKTxOut*)(((uint64_t)output) & ~1)); - LDKSpendableOutputDescriptor *ret_copy = MALLOC(sizeof(LDKSpendableOutputDescriptor), "LDKSpendableOutputDescriptor"); - *ret_copy = SpendableOutputDescriptor_static_output(outpoint_conv, output_conv); - uint64_t ret_ref = (uint64_t)ret_copy; +uint32_t __attribute__((visibility("default"))) TS_BestBlock_from_genesis(uint32_t network) { + LDKNetwork network_conv = LDKNetwork_from_js(network); + LDKBestBlock ret_var = BestBlock_from_genesis(network_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_delayed_payment_output(uint32_t a) { - LDKDelayedPaymentOutputDescriptor a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = (a & 1) || (a == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - a_conv = DelayedPaymentOutputDescriptor_clone(&a_conv); - LDKSpendableOutputDescriptor *ret_copy = MALLOC(sizeof(LDKSpendableOutputDescriptor), "LDKSpendableOutputDescriptor"); - *ret_copy = SpendableOutputDescriptor_delayed_payment_output(a_conv); - uint64_t ret_ref = (uint64_t)ret_copy; +uint32_t __attribute__((visibility("default"))) TS_BestBlock_new(int8_tArray block_hash, int32_t height) { + LDKThirtyTwoBytes block_hash_ref; + CHECK(block_hash->arr_len == 32); + memcpy(block_hash_ref.data, block_hash->elems, 32); + LDKBestBlock ret_var = BestBlock_new(block_hash_ref, height); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_static_payment_output(uint32_t a) { - LDKStaticPaymentOutputDescriptor a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = (a & 1) || (a == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - a_conv = StaticPaymentOutputDescriptor_clone(&a_conv); - LDKSpendableOutputDescriptor *ret_copy = MALLOC(sizeof(LDKSpendableOutputDescriptor), "LDKSpendableOutputDescriptor"); - *ret_copy = SpendableOutputDescriptor_static_payment_output(a_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_BestBlock_block_hash(uint32_t this_arg) { + LDKBestBlock this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, BestBlock_block_hash(&this_arg_conv).data, 32); + return ret_arr; +} + +int32_t __attribute__((visibility("default"))) TS_BestBlock_height(uint32_t this_arg) { + LDKBestBlock this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int32_t ret_val = BestBlock_height(&this_arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_AccessError_clone(uint32_t orig) { + LDKAccessError* orig_conv = (LDKAccessError*)(orig & ~1); + uint32_t ret_conv = LDKAccessError_to_js(AccessError_clone(orig_conv)); + return ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_write(uint32_t obj) { - LDKSpendableOutputDescriptor* obj_conv = (LDKSpendableOutputDescriptor*)obj; - LDKCVec_u8Z ret_var = SpendableOutputDescriptor_write(obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_AccessError_unknown_chain() { + uint32_t ret_conv = LDKAccessError_to_js(AccessError_unknown_chain()); + return ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_SpendableOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpendableOutputDescriptorDecodeErrorZ), "LDKCResult_SpendableOutputDescriptorDecodeErrorZ"); - *ret_conv = SpendableOutputDescriptor_read(ser_ref); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_AccessError_unknown_tx() { + uint32_t ret_conv = LDKAccessError_to_js(AccessError_unknown_tx()); + return ret_conv; } -void __attribute__((visibility("default"))) TS_BaseSign_free(uint32_t this_ptr) { +void __attribute__((visibility("default"))) TS_Access_free(uint32_t this_ptr) { if ((this_ptr & 1) != 0) return; void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); CHECK_ACCESS(this_ptr_ptr); - LDKBaseSign this_ptr_conv = *(LDKBaseSign*)(this_ptr_ptr); + LDKAccess this_ptr_conv = *(LDKAccess*)(this_ptr_ptr); FREE((void*)this_ptr); - BaseSign_free(this_ptr_conv); + Access_free(this_ptr_conv); } -static inline uint64_t Sign_clone_ptr(LDKSign *NONNULL_PTR arg) { - LDKSign* ret_ret = MALLOC(sizeof(LDKSign), "LDKSign"); - *ret_ret = Sign_clone(arg); - return (uint64_t)ret_ret; +void __attribute__((visibility("default"))) TS_Listen_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKListen this_ptr_conv = *(LDKListen*)(this_ptr_ptr); + FREE((void*)this_ptr); + Listen_free(this_ptr_conv); } -int64_t __attribute__((visibility("default"))) TS_Sign_clone_ptr(uint32_t arg) { - void* arg_ptr = (void*)(((uint64_t)arg) & ~1); - if (!(arg & 1)) { CHECK_ACCESS(arg_ptr); } - LDKSign* arg_conv = (LDKSign*)arg_ptr; - int64_t ret_val = Sign_clone_ptr(arg_conv); - return ret_val; + +void __attribute__((visibility("default"))) TS_Confirm_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKConfirm this_ptr_conv = *(LDKConfirm*)(this_ptr_ptr); + FREE((void*)this_ptr); + Confirm_free(this_ptr_conv); } -uint32_t __attribute__((visibility("default"))) TS_Sign_clone(uint32_t orig) { - void* orig_ptr = (void*)(((uint64_t)orig) & ~1); - if (!(orig & 1)) { CHECK_ACCESS(orig_ptr); } - LDKSign* orig_conv = (LDKSign*)orig_ptr; - LDKSign* ret_ret = MALLOC(sizeof(LDKSign), "LDKSign"); - *ret_ret = Sign_clone(orig_conv); - return (uint64_t)ret_ret; +uint32_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdateErr_clone(uint32_t orig) { + LDKChannelMonitorUpdateErr* orig_conv = (LDKChannelMonitorUpdateErr*)(orig & ~1); + uint32_t ret_conv = LDKChannelMonitorUpdateErr_to_js(ChannelMonitorUpdateErr_clone(orig_conv)); + return ret_conv; } -void __attribute__((visibility("default"))) TS_Sign_free(uint32_t this_ptr) { +uint32_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdateErr_temporary_failure() { + uint32_t ret_conv = LDKChannelMonitorUpdateErr_to_js(ChannelMonitorUpdateErr_temporary_failure()); + return ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdateErr_permanent_failure() { + uint32_t ret_conv = LDKChannelMonitorUpdateErr_to_js(ChannelMonitorUpdateErr_permanent_failure()); + return ret_conv; +} + +void __attribute__((visibility("default"))) TS_Watch_free(uint32_t this_ptr) { if ((this_ptr & 1) != 0) return; void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); CHECK_ACCESS(this_ptr_ptr); - LDKSign this_ptr_conv = *(LDKSign*)(this_ptr_ptr); + LDKWatch this_ptr_conv = *(LDKWatch*)(this_ptr_ptr); FREE((void*)this_ptr); - Sign_free(this_ptr_conv); + Watch_free(this_ptr_conv); } -void __attribute__((visibility("default"))) TS_KeysInterface_free(uint32_t this_ptr) { +void __attribute__((visibility("default"))) TS_Filter_free(uint32_t this_ptr) { if ((this_ptr & 1) != 0) return; void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); CHECK_ACCESS(this_ptr_ptr); - LDKKeysInterface this_ptr_conv = *(LDKKeysInterface*)(this_ptr_ptr); + LDKFilter this_ptr_conv = *(LDKFilter*)(this_ptr_ptr); FREE((void*)this_ptr); - KeysInterface_free(this_ptr_conv); + Filter_free(this_ptr_conv); } -void __attribute__((visibility("default"))) TS_InMemorySigner_free(uint32_t this_obj) { - LDKInMemorySigner this_obj_conv; +void __attribute__((visibility("default"))) TS_WatchedOutput_free(uint32_t this_obj) { + LDKWatchedOutput this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - InMemorySigner_free(this_obj_conv); + WatchedOutput_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_get_funding_key(uint32_t this_ptr) { - LDKInMemorySigner this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_WatchedOutput_get_block_hash(uint32_t this_ptr) { + LDKWatchedOutput this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *InMemorySigner_get_funding_key(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, WatchedOutput_get_block_hash(&this_ptr_conv).data, 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_InMemorySigner_set_funding_key(uint32_t this_ptr, int8_tArray val) { - LDKInMemorySigner this_ptr_conv; +void __attribute__((visibility("default"))) TS_WatchedOutput_set_block_hash(uint32_t this_ptr, int8_tArray val) { + LDKWatchedOutput this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSecretKey val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.bytes, (uint8_t*)(val + 4), 32); - InMemorySigner_set_funding_key(&this_ptr_conv, val_ref); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + WatchedOutput_set_block_hash(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_get_revocation_base_key(uint32_t this_ptr) { - LDKInMemorySigner this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_WatchedOutput_get_outpoint(uint32_t this_ptr) { + LDKWatchedOutput this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *InMemorySigner_get_revocation_base_key(&this_ptr_conv), 32); - return ret_arr; + LDKOutPoint ret_var = WatchedOutput_get_outpoint(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_InMemorySigner_set_revocation_base_key(uint32_t this_ptr, int8_tArray val) { - LDKInMemorySigner this_ptr_conv; +void __attribute__((visibility("default"))) TS_WatchedOutput_set_outpoint(uint32_t this_ptr, uint32_t val) { + LDKWatchedOutput this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSecretKey val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.bytes, (uint8_t*)(val + 4), 32); - InMemorySigner_set_revocation_base_key(&this_ptr_conv, val_ref); + LDKOutPoint val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = OutPoint_clone(&val_conv); + WatchedOutput_set_outpoint(&this_ptr_conv, val_conv); } -int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_get_payment_key(uint32_t this_ptr) { - LDKInMemorySigner this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_WatchedOutput_get_script_pubkey(uint32_t this_ptr) { + LDKWatchedOutput this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *InMemorySigner_get_payment_key(&this_ptr_conv), 32); + LDKu8slice ret_var = WatchedOutput_get_script_pubkey(&this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); return ret_arr; } -void __attribute__((visibility("default"))) TS_InMemorySigner_set_payment_key(uint32_t this_ptr, int8_tArray val) { - LDKInMemorySigner this_ptr_conv; +void __attribute__((visibility("default"))) TS_WatchedOutput_set_script_pubkey(uint32_t this_ptr, int8_tArray val) { + LDKWatchedOutput this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSecretKey val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.bytes, (uint8_t*)(val + 4), 32); - InMemorySigner_set_payment_key(&this_ptr_conv, val_ref); + LDKCVec_u8Z val_ref; + val_ref.datalen = val->arr_len; + val_ref.data = MALLOC(val_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(val_ref.data, val->elems, val_ref.datalen); + WatchedOutput_set_script_pubkey(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_get_delayed_payment_base_key(uint32_t this_ptr) { - LDKInMemorySigner this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *InMemorySigner_get_delayed_payment_base_key(&this_ptr_conv), 32); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_WatchedOutput_new(int8_tArray block_hash_arg, uint32_t outpoint_arg, int8_tArray script_pubkey_arg) { + LDKThirtyTwoBytes block_hash_arg_ref; + CHECK(block_hash_arg->arr_len == 32); + memcpy(block_hash_arg_ref.data, block_hash_arg->elems, 32); + LDKOutPoint outpoint_arg_conv; + outpoint_arg_conv.inner = (void*)(outpoint_arg & (~1)); + outpoint_arg_conv.is_owned = (outpoint_arg & 1) || (outpoint_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(outpoint_arg_conv); + outpoint_arg_conv = OutPoint_clone(&outpoint_arg_conv); + LDKCVec_u8Z script_pubkey_arg_ref; + script_pubkey_arg_ref.datalen = script_pubkey_arg->arr_len; + script_pubkey_arg_ref.data = MALLOC(script_pubkey_arg_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(script_pubkey_arg_ref.data, script_pubkey_arg->elems, script_pubkey_arg_ref.datalen); + LDKWatchedOutput ret_var = WatchedOutput_new(block_hash_arg_ref, outpoint_arg_conv, script_pubkey_arg_ref); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_InMemorySigner_set_delayed_payment_base_key(uint32_t this_ptr, int8_tArray val) { - LDKInMemorySigner this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSecretKey val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.bytes, (uint8_t*)(val + 4), 32); - InMemorySigner_set_delayed_payment_base_key(&this_ptr_conv, val_ref); +static inline uint64_t WatchedOutput_clone_ptr(LDKWatchedOutput *NONNULL_PTR arg) { + LDKWatchedOutput ret_var = WatchedOutput_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_WatchedOutput_clone_ptr(uint32_t arg) { + LDKWatchedOutput arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = WatchedOutput_clone_ptr(&arg_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_get_htlc_base_key(uint32_t this_ptr) { - LDKInMemorySigner this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *InMemorySigner_get_htlc_base_key(&this_ptr_conv), 32); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_WatchedOutput_clone(uint32_t orig) { + LDKWatchedOutput orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKWatchedOutput ret_var = WatchedOutput_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +int64_t __attribute__((visibility("default"))) TS_WatchedOutput_hash(uint32_t o) { + LDKWatchedOutput o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + int64_t ret_val = WatchedOutput_hash(&o_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_BroadcasterInterface_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKBroadcasterInterface this_ptr_conv = *(LDKBroadcasterInterface*)(this_ptr_ptr); + FREE((void*)this_ptr); + BroadcasterInterface_free(this_ptr_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_ConfirmationTarget_clone(uint32_t orig) { + LDKConfirmationTarget* orig_conv = (LDKConfirmationTarget*)(orig & ~1); + uint32_t ret_conv = LDKConfirmationTarget_to_js(ConfirmationTarget_clone(orig_conv)); + return ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_ConfirmationTarget_background() { + uint32_t ret_conv = LDKConfirmationTarget_to_js(ConfirmationTarget_background()); + return ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_ConfirmationTarget_normal() { + uint32_t ret_conv = LDKConfirmationTarget_to_js(ConfirmationTarget_normal()); + return ret_conv; } -void __attribute__((visibility("default"))) TS_InMemorySigner_set_htlc_base_key(uint32_t this_ptr, int8_tArray val) { - LDKInMemorySigner this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSecretKey val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.bytes, (uint8_t*)(val + 4), 32); - InMemorySigner_set_htlc_base_key(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_ConfirmationTarget_high_priority() { + uint32_t ret_conv = LDKConfirmationTarget_to_js(ConfirmationTarget_high_priority()); + return ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_get_commitment_seed(uint32_t this_ptr) { - LDKInMemorySigner this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *InMemorySigner_get_commitment_seed(&this_ptr_conv), 32); - return ret_arr; +jboolean __attribute__((visibility("default"))) TS_ConfirmationTarget_eq(uint32_t a, uint32_t b) { + LDKConfirmationTarget* a_conv = (LDKConfirmationTarget*)(a & ~1); + LDKConfirmationTarget* b_conv = (LDKConfirmationTarget*)(b & ~1); + jboolean ret_val = ConfirmationTarget_eq(a_conv, b_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_InMemorySigner_set_commitment_seed(uint32_t this_ptr, int8_tArray val) { - LDKInMemorySigner this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - InMemorySigner_set_commitment_seed(&this_ptr_conv, val_ref); +void __attribute__((visibility("default"))) TS_FeeEstimator_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKFeeEstimator this_ptr_conv = *(LDKFeeEstimator*)(this_ptr_ptr); + FREE((void*)this_ptr); + FeeEstimator_free(this_ptr_conv); } -static inline uint64_t InMemorySigner_clone_ptr(LDKInMemorySigner *NONNULL_PTR arg) { - LDKInMemorySigner ret_var = InMemorySigner_clone(arg); +void __attribute__((visibility("default"))) TS_MonitorUpdateId_free(uint32_t this_obj) { + LDKMonitorUpdateId this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + MonitorUpdateId_free(this_obj_conv); +} + +static inline uint64_t MonitorUpdateId_clone_ptr(LDKMonitorUpdateId *NONNULL_PTR arg) { + LDKMonitorUpdateId ret_var = MonitorUpdateId_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -20500,21 +18233,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_InMemorySigner_clone_ptr(uint32_t arg) { - LDKInMemorySigner arg_conv; +int64_t __attribute__((visibility("default"))) TS_MonitorUpdateId_clone_ptr(uint32_t arg) { + LDKMonitorUpdateId arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = InMemorySigner_clone_ptr(&arg_conv); + int64_t ret_val = MonitorUpdateId_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_clone(uint32_t orig) { - LDKInMemorySigner orig_conv; +uint32_t __attribute__((visibility("default"))) TS_MonitorUpdateId_clone(uint32_t orig) { + LDKMonitorUpdateId orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKInMemorySigner ret_var = InMemorySigner_clone(&orig_conv); + LDKMonitorUpdateId ret_var = MonitorUpdateId_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -20526,46 +18259,74 @@ uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_clone(uint32_ return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_new(int8_tArray funding_key, int8_tArray revocation_base_key, int8_tArray payment_key, int8_tArray delayed_payment_base_key, int8_tArray htlc_base_key, int8_tArray commitment_seed, int64_t channel_value_satoshis, int8_tArray channel_keys_id) { - LDKSecretKey funding_key_ref; - CHECK(*((uint32_t*)funding_key) == 32); - memcpy(funding_key_ref.bytes, (uint8_t*)(funding_key + 4), 32); - LDKSecretKey revocation_base_key_ref; - CHECK(*((uint32_t*)revocation_base_key) == 32); - memcpy(revocation_base_key_ref.bytes, (uint8_t*)(revocation_base_key + 4), 32); - LDKSecretKey payment_key_ref; - CHECK(*((uint32_t*)payment_key) == 32); - memcpy(payment_key_ref.bytes, (uint8_t*)(payment_key + 4), 32); - LDKSecretKey delayed_payment_base_key_ref; - CHECK(*((uint32_t*)delayed_payment_base_key) == 32); - memcpy(delayed_payment_base_key_ref.bytes, (uint8_t*)(delayed_payment_base_key + 4), 32); - LDKSecretKey htlc_base_key_ref; - CHECK(*((uint32_t*)htlc_base_key) == 32); - memcpy(htlc_base_key_ref.bytes, (uint8_t*)(htlc_base_key + 4), 32); - LDKThirtyTwoBytes commitment_seed_ref; - CHECK(*((uint32_t*)commitment_seed) == 32); - memcpy(commitment_seed_ref.data, (uint8_t*)(commitment_seed + 4), 32); - LDKThirtyTwoBytes channel_keys_id_ref; - CHECK(*((uint32_t*)channel_keys_id) == 32); - memcpy(channel_keys_id_ref.data, (uint8_t*)(channel_keys_id + 4), 32); - LDKInMemorySigner ret_var = InMemorySigner_new(funding_key_ref, revocation_base_key_ref, payment_key_ref, delayed_payment_base_key_ref, htlc_base_key_ref, commitment_seed_ref, channel_value_satoshis, channel_keys_id_ref); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int64_t __attribute__((visibility("default"))) TS_MonitorUpdateId_hash(uint32_t o) { + LDKMonitorUpdateId o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + int64_t ret_val = MonitorUpdateId_hash(&o_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_counterparty_pubkeys(uint32_t this_arg) { - LDKInMemorySigner this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKChannelPublicKeys ret_var = InMemorySigner_counterparty_pubkeys(&this_arg_conv); +jboolean __attribute__((visibility("default"))) TS_MonitorUpdateId_eq(uint32_t a, uint32_t b) { + LDKMonitorUpdateId a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + LDKMonitorUpdateId b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + jboolean ret_val = MonitorUpdateId_eq(&a_conv, &b_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_Persist_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKPersist this_ptr_conv = *(LDKPersist*)(this_ptr_ptr); + FREE((void*)this_ptr); + Persist_free(this_ptr_conv); +} + +void __attribute__((visibility("default"))) TS_LockedChannelMonitor_free(uint32_t this_obj) { + LDKLockedChannelMonitor this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + LockedChannelMonitor_free(this_obj_conv); +} + +void __attribute__((visibility("default"))) TS_ChainMonitor_free(uint32_t this_obj) { + LDKChainMonitor this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + ChainMonitor_free(this_obj_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_new(uint32_t chain_source, uint32_t broadcaster, uint32_t logger, uint32_t feeest, uint32_t persister) { + void* chain_source_ptr = (void*)(((uint64_t)chain_source) & ~1); + CHECK_ACCESS(chain_source_ptr); + LDKCOption_FilterZ chain_source_conv = *(LDKCOption_FilterZ*)(chain_source_ptr); + // Warning: we may need a move here but no clone is available for LDKCOption_FilterZ + if (chain_source_conv.tag == LDKCOption_FilterZ_Some) { + // Manually implement clone for Java trait instances + } + void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); + CHECK_ACCESS(broadcaster_ptr); + LDKBroadcasterInterface broadcaster_conv = *(LDKBroadcasterInterface*)(broadcaster_ptr); + void* logger_ptr = (void*)(((uint64_t)logger) & ~1); + CHECK_ACCESS(logger_ptr); + LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); + void* feeest_ptr = (void*)(((uint64_t)feeest) & ~1); + CHECK_ACCESS(feeest_ptr); + LDKFeeEstimator feeest_conv = *(LDKFeeEstimator*)(feeest_ptr); + void* persister_ptr = (void*)(((uint64_t)persister) & ~1); + CHECK_ACCESS(persister_ptr); + LDKPersist persister_conv = *(LDKPersist*)(persister_ptr); + LDKChainMonitor ret_var = ChainMonitor_new(chain_source_conv, broadcaster_conv, logger_conv, feeest_conv, persister_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -20577,190 +18338,195 @@ uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_counterparty_ return ret_ref; } -int16_t __attribute__((visibility("default"))) TS_InMemorySigner_counterparty_selected_contest_delay(uint32_t this_arg) { - LDKInMemorySigner this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int16_t ret_val = InMemorySigner_counterparty_selected_contest_delay(&this_arg_conv); - return ret_val; -} - -int16_t __attribute__((visibility("default"))) TS_InMemorySigner_holder_selected_contest_delay(uint32_t this_arg) { - LDKInMemorySigner this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int16_t ret_val = InMemorySigner_holder_selected_contest_delay(&this_arg_conv); - return ret_val; -} - -jboolean __attribute__((visibility("default"))) TS_InMemorySigner_is_outbound(uint32_t this_arg) { - LDKInMemorySigner this_arg_conv; +uint32_tArray __attribute__((visibility("default"))) TS_ChainMonitor_get_claimable_balances(uint32_t this_arg, uint32_tArray ignored_channels) { + LDKChainMonitor this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = InMemorySigner_is_outbound(&this_arg_conv); - return ret_val; + LDKCVec_ChannelDetailsZ ignored_channels_constr; + ignored_channels_constr.datalen = ignored_channels->arr_len; + if (ignored_channels_constr.datalen > 0) + ignored_channels_constr.data = MALLOC(ignored_channels_constr.datalen * sizeof(LDKChannelDetails), "LDKCVec_ChannelDetailsZ Elements"); + else + ignored_channels_constr.data = NULL; + uint32_t* ignored_channels_vals = ignored_channels->elems; + for (size_t q = 0; q < ignored_channels_constr.datalen; q++) { + uint32_t ignored_channels_conv_16 = ignored_channels_vals[q]; + LDKChannelDetails ignored_channels_conv_16_conv; + ignored_channels_conv_16_conv.inner = (void*)(ignored_channels_conv_16 & (~1)); + ignored_channels_conv_16_conv.is_owned = (ignored_channels_conv_16 & 1) || (ignored_channels_conv_16 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(ignored_channels_conv_16_conv); + ignored_channels_conv_16_conv = ChannelDetails_clone(&ignored_channels_conv_16_conv); + ignored_channels_constr.data[q] = ignored_channels_conv_16_conv; + } + LDKCVec_BalanceZ ret_var = ChainMonitor_get_claimable_balances(&this_arg_conv, ignored_channels_constr); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t j = 0; j < ret_var.datalen; j++) { + LDKBalance *ret_conv_9_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); + *ret_conv_9_copy = ret_var.data[j]; + uint64_t ret_conv_9_ref = (uint64_t)ret_conv_9_copy; + ret_arr_ptr[j] = ret_conv_9_ref; + } + + FREE(ret_var.data); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_funding_outpoint(uint32_t this_arg) { - LDKInMemorySigner this_arg_conv; +uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_get_monitor(uint32_t this_arg, uint32_t funding_txo) { + LDKChainMonitor this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKOutPoint ret_var = InMemorySigner_funding_outpoint(&this_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + LDKOutPoint funding_txo_conv; + funding_txo_conv.inner = (void*)(funding_txo & (~1)); + funding_txo_conv.is_owned = (funding_txo & 1) || (funding_txo == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_conv); + funding_txo_conv = OutPoint_clone(&funding_txo_conv); + LDKCResult_LockedChannelMonitorNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_LockedChannelMonitorNoneZ), "LDKCResult_LockedChannelMonitorNoneZ"); + *ret_conv = ChainMonitor_get_monitor(&this_arg_conv, funding_txo_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_get_channel_parameters(uint32_t this_arg) { - LDKInMemorySigner this_arg_conv; +uint32_tArray __attribute__((visibility("default"))) TS_ChainMonitor_list_monitors(uint32_t this_arg) { + LDKChainMonitor this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKChannelTransactionParameters ret_var = InMemorySigner_get_channel_parameters(&this_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; + LDKCVec_OutPointZ ret_var = ChainMonitor_list_monitors(&this_arg_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t k = 0; k < ret_var.datalen; k++) { + LDKOutPoint ret_conv_10_var = ret_var.data[k]; + uint64_t ret_conv_10_ref = 0; + CHECK((((uint64_t)ret_conv_10_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_conv_10_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_10_var); + ret_conv_10_ref = (uint64_t)ret_conv_10_var.inner; + if (ret_conv_10_var.is_owned) { + ret_conv_10_ref |= 1; + } + ret_arr_ptr[k] = ret_conv_10_ref; } - return ret_ref; + + FREE(ret_var.data); + return ret_arr; } -jboolean __attribute__((visibility("default"))) TS_InMemorySigner_opt_anchors(uint32_t this_arg) { - LDKInMemorySigner this_arg_conv; +uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_channel_monitor_updated(uint32_t this_arg, uint32_t funding_txo, uint32_t completed_update_id) { + LDKChainMonitor this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = InMemorySigner_opt_anchors(&this_arg_conv); - return ret_val; + LDKOutPoint funding_txo_conv; + funding_txo_conv.inner = (void*)(funding_txo & (~1)); + funding_txo_conv.is_owned = (funding_txo & 1) || (funding_txo == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_conv); + funding_txo_conv = OutPoint_clone(&funding_txo_conv); + LDKMonitorUpdateId completed_update_id_conv; + completed_update_id_conv.inner = (void*)(completed_update_id & (~1)); + completed_update_id_conv.is_owned = (completed_update_id & 1) || (completed_update_id == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(completed_update_id_conv); + completed_update_id_conv = MonitorUpdateId_clone(&completed_update_id_conv); + LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); + *ret_conv = ChainMonitor_channel_monitor_updated(&this_arg_conv, funding_txo_conv, completed_update_id_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_sign_counterparty_payment_input(uint32_t this_arg, int8_tArray spend_tx, int64_t input_idx, uint32_t descriptor) { - LDKInMemorySigner this_arg_conv; +uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_as_Listen(uint32_t this_arg) { + LDKChainMonitor this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKTransaction spend_tx_ref; - spend_tx_ref.datalen = *((uint32_t*)spend_tx); - spend_tx_ref.data = MALLOC(spend_tx_ref.datalen, "LDKTransaction Bytes"); - memcpy(spend_tx_ref.data, (uint8_t*)(spend_tx + 4), spend_tx_ref.datalen); - spend_tx_ref.data_is_owned = true; - LDKStaticPaymentOutputDescriptor descriptor_conv; - descriptor_conv.inner = (void*)(descriptor & (~1)); - descriptor_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(descriptor_conv); - LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ"); - *ret_conv = InMemorySigner_sign_counterparty_payment_input(&this_arg_conv, spend_tx_ref, input_idx, &descriptor_conv); - return (uint64_t)ret_conv; + LDKListen* ret_ret = MALLOC(sizeof(LDKListen), "LDKListen"); + *ret_ret = ChainMonitor_as_Listen(&this_arg_conv); + return (uint64_t)ret_ret; } -uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_sign_dynamic_p2wsh_input(uint32_t this_arg, int8_tArray spend_tx, int64_t input_idx, uint32_t descriptor) { - LDKInMemorySigner this_arg_conv; +uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_as_Confirm(uint32_t this_arg) { + LDKChainMonitor this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKTransaction spend_tx_ref; - spend_tx_ref.datalen = *((uint32_t*)spend_tx); - spend_tx_ref.data = MALLOC(spend_tx_ref.datalen, "LDKTransaction Bytes"); - memcpy(spend_tx_ref.data, (uint8_t*)(spend_tx + 4), spend_tx_ref.datalen); - spend_tx_ref.data_is_owned = true; - LDKDelayedPaymentOutputDescriptor descriptor_conv; - descriptor_conv.inner = (void*)(descriptor & (~1)); - descriptor_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(descriptor_conv); - LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ"); - *ret_conv = InMemorySigner_sign_dynamic_p2wsh_input(&this_arg_conv, spend_tx_ref, input_idx, &descriptor_conv); - return (uint64_t)ret_conv; + LDKConfirm* ret_ret = MALLOC(sizeof(LDKConfirm), "LDKConfirm"); + *ret_ret = ChainMonitor_as_Confirm(&this_arg_conv); + return (uint64_t)ret_ret; } -uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_as_BaseSign(uint32_t this_arg) { - LDKInMemorySigner this_arg_conv; +uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_as_Watch(uint32_t this_arg) { + LDKChainMonitor this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKBaseSign* ret_ret = MALLOC(sizeof(LDKBaseSign), "LDKBaseSign"); - *ret_ret = InMemorySigner_as_BaseSign(&this_arg_conv); + LDKWatch* ret_ret = MALLOC(sizeof(LDKWatch), "LDKWatch"); + *ret_ret = ChainMonitor_as_Watch(&this_arg_conv); return (uint64_t)ret_ret; } -uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_as_Sign(uint32_t this_arg) { - LDKInMemorySigner this_arg_conv; +uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_as_EventsProvider(uint32_t this_arg) { + LDKChainMonitor this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKSign* ret_ret = MALLOC(sizeof(LDKSign), "LDKSign"); - *ret_ret = InMemorySigner_as_Sign(&this_arg_conv); + LDKEventsProvider* ret_ret = MALLOC(sizeof(LDKEventsProvider), "LDKEventsProvider"); + *ret_ret = ChainMonitor_as_EventsProvider(&this_arg_conv); return (uint64_t)ret_ret; } -int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_write(uint32_t obj) { - LDKInMemorySigner obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = InMemorySigner_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +void __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_free(uint32_t this_obj) { + LDKChannelMonitorUpdate this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + ChannelMonitorUpdate_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_InMemorySignerDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InMemorySignerDecodeErrorZ), "LDKCResult_InMemorySignerDecodeErrorZ"); - *ret_conv = InMemorySigner_read(ser_ref); - return (uint64_t)ret_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_get_update_id(uint32_t this_ptr) { + LDKChannelMonitorUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = ChannelMonitorUpdate_get_update_id(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_KeysManager_free(uint32_t this_obj) { - LDKKeysManager this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - KeysManager_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_set_update_id(uint32_t this_ptr, int64_t val) { + LDKChannelMonitorUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ChannelMonitorUpdate_set_update_id(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_KeysManager_new(int8_tArray seed, int64_t starting_time_secs, int32_t starting_time_nanos) { - unsigned char seed_arr[32]; - CHECK(*((uint32_t*)seed) == 32); - memcpy(seed_arr, (uint8_t*)(seed + 4), 32); - unsigned char (*seed_ref)[32] = &seed_arr; - LDKKeysManager ret_var = KeysManager_new(seed_ref, starting_time_secs, starting_time_nanos); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } +static inline uint64_t ChannelMonitorUpdate_clone_ptr(LDKChannelMonitorUpdate *NONNULL_PTR arg) { + LDKChannelMonitorUpdate ret_var = ChannelMonitorUpdate_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} return ret_ref; } +int64_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_clone_ptr(uint32_t arg) { + LDKChannelMonitorUpdate arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ChannelMonitorUpdate_clone_ptr(&arg_conv); + return ret_val; +} -uint32_t __attribute__((visibility("default"))) TS_KeysManager_derive_channel_keys(uint32_t this_arg, int64_t channel_value_satoshis, int8_tArray params) { - LDKKeysManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char params_arr[32]; - CHECK(*((uint32_t*)params) == 32); - memcpy(params_arr, (uint8_t*)(params + 4), 32); - unsigned char (*params_ref)[32] = ¶ms_arr; - LDKInMemorySigner ret_var = KeysManager_derive_channel_keys(&this_arg_conv, channel_value_satoshis, params_ref); +uint32_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_clone(uint32_t orig) { + LDKChannelMonitorUpdate orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKChannelMonitorUpdate ret_var = ChannelMonitorUpdate_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -20772,145 +18538,132 @@ uint32_t __attribute__((visibility("default"))) TS_KeysManager_derive_channel_k return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_KeysManager_spend_spendable_outputs(uint32_t this_arg, uint32_tArray descriptors, uint32_tArray outputs, int8_tArray change_destination_script, int32_t feerate_sat_per_1000_weight) { - LDKKeysManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_SpendableOutputDescriptorZ descriptors_constr; - descriptors_constr.datalen = *((uint32_t*)descriptors); - if (descriptors_constr.datalen > 0) - descriptors_constr.data = MALLOC(descriptors_constr.datalen * sizeof(LDKSpendableOutputDescriptor), "LDKCVec_SpendableOutputDescriptorZ Elements"); - else - descriptors_constr.data = NULL; - uint32_t* descriptors_vals = (uint32_t*)(descriptors + 4); - for (size_t b = 0; b < descriptors_constr.datalen; b++) { - uint32_t descriptors_conv_27 = descriptors_vals[b]; - void* descriptors_conv_27_ptr = (void*)(((uint64_t)descriptors_conv_27) & ~1); - CHECK_ACCESS(descriptors_conv_27_ptr); - LDKSpendableOutputDescriptor descriptors_conv_27_conv = *(LDKSpendableOutputDescriptor*)(descriptors_conv_27_ptr); - descriptors_conv_27_conv = SpendableOutputDescriptor_clone((LDKSpendableOutputDescriptor*)(((uint64_t)descriptors_conv_27) & ~1)); - descriptors_constr.data[b] = descriptors_conv_27_conv; - } - LDKCVec_TxOutZ outputs_constr; - outputs_constr.datalen = *((uint32_t*)outputs); - if (outputs_constr.datalen > 0) - outputs_constr.data = MALLOC(outputs_constr.datalen * sizeof(LDKTxOut), "LDKCVec_TxOutZ Elements"); - else - outputs_constr.data = NULL; - uint32_t* outputs_vals = (uint32_t*)(outputs + 4); - for (size_t h = 0; h < outputs_constr.datalen; h++) { - uint32_t outputs_conv_7 = outputs_vals[h]; - void* outputs_conv_7_ptr = (void*)(((uint64_t)outputs_conv_7) & ~1); - CHECK_ACCESS(outputs_conv_7_ptr); - LDKTxOut outputs_conv_7_conv = *(LDKTxOut*)(outputs_conv_7_ptr); - outputs_conv_7_conv = TxOut_clone((LDKTxOut*)(((uint64_t)outputs_conv_7) & ~1)); - outputs_constr.data[h] = outputs_conv_7_conv; - } - LDKCVec_u8Z change_destination_script_ref; - change_destination_script_ref.datalen = *((uint32_t*)change_destination_script); - change_destination_script_ref.data = MALLOC(change_destination_script_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(change_destination_script_ref.data, (uint8_t*)(change_destination_script + 4), change_destination_script_ref.datalen); - LDKCResult_TransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TransactionNoneZ), "LDKCResult_TransactionNoneZ"); - *ret_conv = KeysManager_spend_spendable_outputs(&this_arg_conv, descriptors_constr, outputs_constr, change_destination_script_ref, feerate_sat_per_1000_weight); +int8_tArray __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_write(uint32_t obj) { + LDKChannelMonitorUpdate obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ChannelMonitorUpdate_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ChannelMonitorUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelMonitorUpdateDecodeErrorZ), "LDKCResult_ChannelMonitorUpdateDecodeErrorZ"); + *ret_conv = ChannelMonitorUpdate_read(ser_ref); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_KeysManager_as_KeysInterface(uint32_t this_arg) { - LDKKeysManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKKeysInterface* ret_ret = MALLOC(sizeof(LDKKeysInterface), "LDKKeysInterface"); - *ret_ret = KeysManager_as_KeysInterface(&this_arg_conv); - return (uint64_t)ret_ret; +void __attribute__((visibility("default"))) TS_MonitorEvent_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKMonitorEvent this_ptr_conv = *(LDKMonitorEvent*)(this_ptr_ptr); + FREE((void*)this_ptr); + MonitorEvent_free(this_ptr_conv); } -void __attribute__((visibility("default"))) TS_ChannelManager_free(uint32_t this_obj) { - LDKChannelManager this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelManager_free(this_obj_conv); +static inline uint64_t MonitorEvent_clone_ptr(LDKMonitorEvent *NONNULL_PTR arg) { + LDKMonitorEvent *ret_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); + *ret_copy = MonitorEvent_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_MonitorEvent_clone_ptr(uint32_t arg) { + LDKMonitorEvent* arg_conv = (LDKMonitorEvent*)arg; + int64_t ret_val = MonitorEvent_clone_ptr(arg_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_ChainParameters_free(uint32_t this_obj) { - LDKChainParameters this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChainParameters_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_MonitorEvent_clone(uint32_t orig) { + LDKMonitorEvent* orig_conv = (LDKMonitorEvent*)orig; + LDKMonitorEvent *ret_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); + *ret_copy = MonitorEvent_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_MonitorEvent_htlcevent(uint32_t a) { + LDKHTLCUpdate a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = (a & 1) || (a == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + a_conv = HTLCUpdate_clone(&a_conv); + LDKMonitorEvent *ret_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); + *ret_copy = MonitorEvent_htlcevent(a_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_MonitorEvent_commitment_tx_confirmed(uint32_t a) { + LDKOutPoint a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = (a & 1) || (a == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + a_conv = OutPoint_clone(&a_conv); + LDKMonitorEvent *ret_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); + *ret_copy = MonitorEvent_commitment_tx_confirmed(a_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChainParameters_get_network(uint32_t this_ptr) { - LDKChainParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - uint32_t ret_conv = LDKNetwork_to_js(ChainParameters_get_network(&this_ptr_conv)); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_MonitorEvent_update_completed(uint32_t funding_txo, int64_t monitor_update_id) { + LDKOutPoint funding_txo_conv; + funding_txo_conv.inner = (void*)(funding_txo & (~1)); + funding_txo_conv.is_owned = (funding_txo & 1) || (funding_txo == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_conv); + funding_txo_conv = OutPoint_clone(&funding_txo_conv); + LDKMonitorEvent *ret_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); + *ret_copy = MonitorEvent_update_completed(funding_txo_conv, monitor_update_id); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChainParameters_set_network(uint32_t this_ptr, uint32_t val) { - LDKChainParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNetwork val_conv = LDKNetwork_from_js(val); - ChainParameters_set_network(&this_ptr_conv, val_conv); +uint32_t __attribute__((visibility("default"))) TS_MonitorEvent_update_failed(uint32_t a) { + LDKOutPoint a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = (a & 1) || (a == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + a_conv = OutPoint_clone(&a_conv); + LDKMonitorEvent *ret_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); + *ret_copy = MonitorEvent_update_failed(a_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChainParameters_get_best_block(uint32_t this_ptr) { - LDKChainParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKBestBlock ret_var = ChainParameters_get_best_block(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_MonitorEvent_write(uint32_t obj) { + LDKMonitorEvent* obj_conv = (LDKMonitorEvent*)obj; + LDKCVec_u8Z ret_var = MonitorEvent_write(obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChainParameters_set_best_block(uint32_t this_ptr, uint32_t val) { - LDKChainParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKBestBlock val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = BestBlock_clone(&val_conv); - ChainParameters_set_best_block(&this_ptr_conv, val_conv); +uint32_t __attribute__((visibility("default"))) TS_MonitorEvent_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_COption_MonitorEventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_MonitorEventZDecodeErrorZ), "LDKCResult_COption_MonitorEventZDecodeErrorZ"); + *ret_conv = MonitorEvent_read(ser_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ChainParameters_new(uint32_t network_arg, uint32_t best_block_arg) { - LDKNetwork network_arg_conv = LDKNetwork_from_js(network_arg); - LDKBestBlock best_block_arg_conv; - best_block_arg_conv.inner = (void*)(best_block_arg & (~1)); - best_block_arg_conv.is_owned = (best_block_arg & 1) || (best_block_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(best_block_arg_conv); - best_block_arg_conv = BestBlock_clone(&best_block_arg_conv); - LDKChainParameters ret_var = ChainParameters_new(network_arg_conv, best_block_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_HTLCUpdate_free(uint32_t this_obj) { + LDKHTLCUpdate this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + HTLCUpdate_free(this_obj_conv); } -static inline uint64_t ChainParameters_clone_ptr(LDKChainParameters *NONNULL_PTR arg) { - LDKChainParameters ret_var = ChainParameters_clone(arg); +static inline uint64_t HTLCUpdate_clone_ptr(LDKHTLCUpdate *NONNULL_PTR arg) { + LDKHTLCUpdate ret_var = HTLCUpdate_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -20921,21 +18674,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ChainParameters_clone_ptr(uint32_t arg) { - LDKChainParameters arg_conv; +int64_t __attribute__((visibility("default"))) TS_HTLCUpdate_clone_ptr(uint32_t arg) { + LDKHTLCUpdate arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChainParameters_clone_ptr(&arg_conv); + int64_t ret_val = HTLCUpdate_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChainParameters_clone(uint32_t orig) { - LDKChainParameters orig_conv; +uint32_t __attribute__((visibility("default"))) TS_HTLCUpdate_clone(uint32_t orig) { + LDKHTLCUpdate orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChainParameters ret_var = ChainParameters_clone(&orig_conv); + LDKHTLCUpdate ret_var = HTLCUpdate_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -20947,80 +18700,101 @@ uint32_t __attribute__((visibility("default"))) TS_ChainParameters_clone(uint32 return ret_ref; } -void __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_free(uint32_t this_obj) { - LDKCounterpartyForwardingInfo this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - CounterpartyForwardingInfo_free(this_obj_conv); +int8_tArray __attribute__((visibility("default"))) TS_HTLCUpdate_write(uint32_t obj) { + LDKHTLCUpdate obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = HTLCUpdate_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -int32_t __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_get_fee_base_msat(uint32_t this_ptr) { - LDKCounterpartyForwardingInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = CounterpartyForwardingInfo_get_fee_base_msat(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_HTLCUpdate_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_HTLCUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCUpdateDecodeErrorZ), "LDKCResult_HTLCUpdateDecodeErrorZ"); + *ret_conv = HTLCUpdate_read(ser_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_set_fee_base_msat(uint32_t this_ptr, int32_t val) { - LDKCounterpartyForwardingInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - CounterpartyForwardingInfo_set_fee_base_msat(&this_ptr_conv, val); +void __attribute__((visibility("default"))) TS_Balance_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKBalance this_ptr_conv = *(LDKBalance*)(this_ptr_ptr); + FREE((void*)this_ptr); + Balance_free(this_ptr_conv); } -int32_t __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_get_fee_proportional_millionths(uint32_t this_ptr) { - LDKCounterpartyForwardingInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = CounterpartyForwardingInfo_get_fee_proportional_millionths(&this_ptr_conv); +static inline uint64_t Balance_clone_ptr(LDKBalance *NONNULL_PTR arg) { + LDKBalance *ret_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); + *ret_copy = Balance_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_Balance_clone_ptr(uint32_t arg) { + LDKBalance* arg_conv = (LDKBalance*)arg; + int64_t ret_val = Balance_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_set_fee_proportional_millionths(uint32_t this_ptr, int32_t val) { - LDKCounterpartyForwardingInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - CounterpartyForwardingInfo_set_fee_proportional_millionths(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_Balance_clone(uint32_t orig) { + LDKBalance* orig_conv = (LDKBalance*)orig; + LDKBalance *ret_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); + *ret_copy = Balance_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -int16_t __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_get_cltv_expiry_delta(uint32_t this_ptr) { - LDKCounterpartyForwardingInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = CounterpartyForwardingInfo_get_cltv_expiry_delta(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_Balance_claimable_on_channel_close(int64_t claimable_amount_satoshis) { + LDKBalance *ret_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); + *ret_copy = Balance_claimable_on_channel_close(claimable_amount_satoshis); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_set_cltv_expiry_delta(uint32_t this_ptr, int16_t val) { - LDKCounterpartyForwardingInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - CounterpartyForwardingInfo_set_cltv_expiry_delta(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_Balance_claimable_awaiting_confirmations(int64_t claimable_amount_satoshis, int32_t confirmation_height) { + LDKBalance *ret_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); + *ret_copy = Balance_claimable_awaiting_confirmations(claimable_amount_satoshis, confirmation_height); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_new(int32_t fee_base_msat_arg, int32_t fee_proportional_millionths_arg, int16_t cltv_expiry_delta_arg) { - LDKCounterpartyForwardingInfo ret_var = CounterpartyForwardingInfo_new(fee_base_msat_arg, fee_proportional_millionths_arg, cltv_expiry_delta_arg); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } +uint32_t __attribute__((visibility("default"))) TS_Balance_contentious_claimable(int64_t claimable_amount_satoshis, int32_t timeout_height) { + LDKBalance *ret_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); + *ret_copy = Balance_contentious_claimable(claimable_amount_satoshis, timeout_height); + uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -static inline uint64_t CounterpartyForwardingInfo_clone_ptr(LDKCounterpartyForwardingInfo *NONNULL_PTR arg) { - LDKCounterpartyForwardingInfo ret_var = CounterpartyForwardingInfo_clone(arg); +uint32_t __attribute__((visibility("default"))) TS_Balance_maybe_claimable_htlcawaiting_timeout(int64_t claimable_amount_satoshis, int32_t claimable_height) { + LDKBalance *ret_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); + *ret_copy = Balance_maybe_claimable_htlcawaiting_timeout(claimable_amount_satoshis, claimable_height); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +jboolean __attribute__((visibility("default"))) TS_Balance_eq(uint32_t a, uint32_t b) { + LDKBalance* a_conv = (LDKBalance*)a; + LDKBalance* b_conv = (LDKBalance*)b; + jboolean ret_val = Balance_eq(a_conv, b_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_ChannelMonitor_free(uint32_t this_obj) { + LDKChannelMonitor this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + ChannelMonitor_free(this_obj_conv); +} + +static inline uint64_t ChannelMonitor_clone_ptr(LDKChannelMonitor *NONNULL_PTR arg) { + LDKChannelMonitor ret_var = ChannelMonitor_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -21031,21 +18805,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_clone_ptr(uint32_t arg) { - LDKCounterpartyForwardingInfo arg_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelMonitor_clone_ptr(uint32_t arg) { + LDKChannelMonitor arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = CounterpartyForwardingInfo_clone_ptr(&arg_conv); + int64_t ret_val = ChannelMonitor_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_clone(uint32_t orig) { - LDKCounterpartyForwardingInfo orig_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelMonitor_clone(uint32_t orig) { + LDKChannelMonitor orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKCounterpartyForwardingInfo ret_var = CounterpartyForwardingInfo_clone(&orig_conv); + LDKChannelMonitor ret_var = ChannelMonitor_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -21057,213 +18831,347 @@ uint32_t __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_c return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelCounterparty_free(uint32_t this_obj) { - LDKChannelCounterparty this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelCounterparty_free(this_obj_conv); +int8_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_write(uint32_t obj) { + LDKChannelMonitor obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ChannelMonitor_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -int8_tArray __attribute__((visibility("default"))) TS_ChannelCounterparty_get_node_id(uint32_t this_ptr) { - LDKChannelCounterparty this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ChannelCounterparty_get_node_id(&this_ptr_conv).compressed_form, 33); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_ChannelMonitor_update_monitor(uint32_t this_arg, uint32_t updates, uint32_t broadcaster, uint32_t fee_estimator, uint32_t logger) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKChannelMonitorUpdate updates_conv; + updates_conv.inner = (void*)(updates & (~1)); + updates_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(updates_conv); + void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); + if (!(broadcaster & 1)) { CHECK_ACCESS(broadcaster_ptr); } + LDKBroadcasterInterface* broadcaster_conv = (LDKBroadcasterInterface*)broadcaster_ptr; + void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); + if (!(fee_estimator & 1)) { CHECK_ACCESS(fee_estimator_ptr); } + LDKFeeEstimator* fee_estimator_conv = (LDKFeeEstimator*)fee_estimator_ptr; + void* logger_ptr = (void*)(((uint64_t)logger) & ~1); + if (!(logger & 1)) { CHECK_ACCESS(logger_ptr); } + LDKLogger* logger_conv = (LDKLogger*)logger_ptr; + LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); + *ret_conv = ChannelMonitor_update_monitor(&this_arg_conv, &updates_conv, broadcaster_conv, fee_estimator_conv, logger_conv); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_ChannelCounterparty_set_node_id(uint32_t this_ptr, int8_tArray val) { - LDKChannelCounterparty this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - ChannelCounterparty_set_node_id(&this_ptr_conv, val_ref); +int64_t __attribute__((visibility("default"))) TS_ChannelMonitor_get_latest_update_id(uint32_t this_arg) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int64_t ret_val = ChannelMonitor_get_latest_update_id(&this_arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelCounterparty_get_features(uint32_t this_ptr) { - LDKChannelCounterparty this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKInitFeatures ret_var = ChannelCounterparty_get_features(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_ChannelMonitor_get_funding_txo(uint32_t this_arg) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKC2Tuple_OutPointScriptZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_OutPointScriptZ), "LDKC2Tuple_OutPointScriptZ"); + *ret_conv = ChannelMonitor_get_funding_txo(&this_arg_conv); + return ((uint64_t)ret_conv); } -void __attribute__((visibility("default"))) TS_ChannelCounterparty_set_features(uint32_t this_ptr, uint32_t val) { - LDKChannelCounterparty this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKInitFeatures val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = InitFeatures_clone(&val_conv); - ChannelCounterparty_set_features(&this_ptr_conv, val_conv); +uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_get_outputs_to_watch(uint32_t this_arg) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ ret_var = ChannelMonitor_get_outputs_to_watch(&this_arg_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t o = 0; o < ret_var.datalen; o++) { + LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* ret_conv_40_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ"); + *ret_conv_40_conv = ret_var.data[o]; + ret_arr_ptr[o] = ((uint64_t)ret_conv_40_conv); + } + + FREE(ret_var.data); + return ret_arr; } -int64_t __attribute__((visibility("default"))) TS_ChannelCounterparty_get_unspendable_punishment_reserve(uint32_t this_ptr) { - LDKChannelCounterparty this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelCounterparty_get_unspendable_punishment_reserve(&this_ptr_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_ChannelMonitor_load_outputs_to_watch(uint32_t this_arg, uint32_t filter) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + void* filter_ptr = (void*)(((uint64_t)filter) & ~1); + if (!(filter & 1)) { CHECK_ACCESS(filter_ptr); } + LDKFilter* filter_conv = (LDKFilter*)filter_ptr; + ChannelMonitor_load_outputs_to_watch(&this_arg_conv, filter_conv); } -void __attribute__((visibility("default"))) TS_ChannelCounterparty_set_unspendable_punishment_reserve(uint32_t this_ptr, int64_t val) { - LDKChannelCounterparty this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelCounterparty_set_unspendable_punishment_reserve(&this_ptr_conv, val); +uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_get_and_clear_pending_monitor_events(uint32_t this_arg) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKCVec_MonitorEventZ ret_var = ChannelMonitor_get_and_clear_pending_monitor_events(&this_arg_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t o = 0; o < ret_var.datalen; o++) { + LDKMonitorEvent *ret_conv_14_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); + *ret_conv_14_copy = ret_var.data[o]; + uint64_t ret_conv_14_ref = (uint64_t)ret_conv_14_copy; + ret_arr_ptr[o] = ret_conv_14_ref; + } + + FREE(ret_var.data); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelCounterparty_get_forwarding_info(uint32_t this_ptr) { - LDKChannelCounterparty this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCounterpartyForwardingInfo ret_var = ChannelCounterparty_get_forwarding_info(&this_ptr_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } +uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_get_and_clear_pending_events(uint32_t this_arg) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKCVec_EventZ ret_var = ChannelMonitor_get_and_clear_pending_events(&this_arg_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t h = 0; h < ret_var.datalen; h++) { + LDKEvent *ret_conv_7_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_conv_7_copy = ret_var.data[h]; + uint64_t ret_conv_7_ref = (uint64_t)ret_conv_7_copy; + ret_arr_ptr[h] = ret_conv_7_ref; } - return ret_ref; + + FREE(ret_var.data); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelCounterparty_set_forwarding_info(uint32_t this_ptr, uint32_t val) { - LDKChannelCounterparty this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCounterpartyForwardingInfo val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = CounterpartyForwardingInfo_clone(&val_conv); - ChannelCounterparty_set_forwarding_info(&this_ptr_conv, val_conv); +ptrArray __attribute__((visibility("default"))) TS_ChannelMonitor_get_latest_holder_commitment_txn(uint32_t this_arg, uint32_t logger) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + void* logger_ptr = (void*)(((uint64_t)logger) & ~1); + if (!(logger & 1)) { CHECK_ACCESS(logger_ptr); } + LDKLogger* logger_conv = (LDKLogger*)logger_ptr; + LDKCVec_TransactionZ ret_var = ChannelMonitor_get_latest_holder_commitment_txn(&this_arg_conv, logger_conv); + ptrArray ret_arr = NULL; + ret_arr = init_ptrArray(ret_var.datalen); + int8_tArray *ret_arr_ptr = (int8_tArray*)(ret_arr + 4); + for (size_t m = 0; m < ret_var.datalen; m++) { + LDKTransaction ret_conv_12_var = ret_var.data[m]; + int8_tArray ret_conv_12_arr = init_int8_tArray(ret_conv_12_var.datalen); + memcpy(ret_conv_12_arr->elems, ret_conv_12_var.data, ret_conv_12_var.datalen); + Transaction_free(ret_conv_12_var); + ret_arr_ptr[m] = ret_conv_12_arr; + } + + FREE(ret_var.data); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelCounterparty_new(int8_tArray node_id_arg, uint32_t features_arg, int64_t unspendable_punishment_reserve_arg, uint32_t forwarding_info_arg) { - LDKPublicKey node_id_arg_ref; - CHECK(*((uint32_t*)node_id_arg) == 33); - memcpy(node_id_arg_ref.compressed_form, (uint8_t*)(node_id_arg + 4), 33); - LDKInitFeatures features_arg_conv; - features_arg_conv.inner = (void*)(features_arg & (~1)); - features_arg_conv.is_owned = (features_arg & 1) || (features_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(features_arg_conv); - features_arg_conv = InitFeatures_clone(&features_arg_conv); - LDKCounterpartyForwardingInfo forwarding_info_arg_conv; - forwarding_info_arg_conv.inner = (void*)(forwarding_info_arg & (~1)); - forwarding_info_arg_conv.is_owned = (forwarding_info_arg & 1) || (forwarding_info_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(forwarding_info_arg_conv); - forwarding_info_arg_conv = CounterpartyForwardingInfo_clone(&forwarding_info_arg_conv); - LDKChannelCounterparty ret_var = ChannelCounterparty_new(node_id_arg_ref, features_arg_conv, unspendable_punishment_reserve_arg, forwarding_info_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; +uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_block_connected(uint32_t this_arg, int8_tArray header, uint32_tArray txdata, int32_t height, uint32_t broadcaster, uint32_t fee_estimator, uint32_t logger) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char header_arr[80]; + CHECK(header->arr_len == 80); + memcpy(header_arr, header->elems, 80); + unsigned char (*header_ref)[80] = &header_arr; + LDKCVec_C2Tuple_usizeTransactionZZ txdata_constr; + txdata_constr.datalen = txdata->arr_len; + if (txdata_constr.datalen > 0) + txdata_constr.data = MALLOC(txdata_constr.datalen * sizeof(LDKC2Tuple_usizeTransactionZ), "LDKCVec_C2Tuple_usizeTransactionZZ Elements"); + else + txdata_constr.data = NULL; + uint32_t* txdata_vals = txdata->elems; + for (size_t c = 0; c < txdata_constr.datalen; c++) { + uint32_t txdata_conv_28 = txdata_vals[c]; + void* txdata_conv_28_ptr = (void*)(((uint64_t)txdata_conv_28) & ~1); + CHECK_ACCESS(txdata_conv_28_ptr); + LDKC2Tuple_usizeTransactionZ txdata_conv_28_conv = *(LDKC2Tuple_usizeTransactionZ*)(txdata_conv_28_ptr); + txdata_conv_28_conv = C2Tuple_usizeTransactionZ_clone((LDKC2Tuple_usizeTransactionZ*)(((uint64_t)txdata_conv_28) & ~1)); + txdata_constr.data[c] = txdata_conv_28_conv; + } + void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); + CHECK_ACCESS(broadcaster_ptr); + LDKBroadcasterInterface broadcaster_conv = *(LDKBroadcasterInterface*)(broadcaster_ptr); + void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); + CHECK_ACCESS(fee_estimator_ptr); + LDKFeeEstimator fee_estimator_conv = *(LDKFeeEstimator*)(fee_estimator_ptr); + void* logger_ptr = (void*)(((uint64_t)logger) & ~1); + CHECK_ACCESS(logger_ptr); + LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); + LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ ret_var = ChannelMonitor_block_connected(&this_arg_conv, header_ref, txdata_constr, height, broadcaster_conv, fee_estimator_conv, logger_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t n = 0; n < ret_var.datalen; n++) { + LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* ret_conv_39_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ"); + *ret_conv_39_conv = ret_var.data[n]; + ret_arr_ptr[n] = ((uint64_t)ret_conv_39_conv); } - return ret_ref; + + FREE(ret_var.data); + return ret_arr; } -static inline uint64_t ChannelCounterparty_clone_ptr(LDKChannelCounterparty *NONNULL_PTR arg) { - LDKChannelCounterparty ret_var = ChannelCounterparty_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_ChannelCounterparty_clone_ptr(uint32_t arg) { - LDKChannelCounterparty arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelCounterparty_clone_ptr(&arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_ChannelMonitor_block_disconnected(uint32_t this_arg, int8_tArray header, int32_t height, uint32_t broadcaster, uint32_t fee_estimator, uint32_t logger) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char header_arr[80]; + CHECK(header->arr_len == 80); + memcpy(header_arr, header->elems, 80); + unsigned char (*header_ref)[80] = &header_arr; + void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); + CHECK_ACCESS(broadcaster_ptr); + LDKBroadcasterInterface broadcaster_conv = *(LDKBroadcasterInterface*)(broadcaster_ptr); + void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); + CHECK_ACCESS(fee_estimator_ptr); + LDKFeeEstimator fee_estimator_conv = *(LDKFeeEstimator*)(fee_estimator_ptr); + void* logger_ptr = (void*)(((uint64_t)logger) & ~1); + CHECK_ACCESS(logger_ptr); + LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); + ChannelMonitor_block_disconnected(&this_arg_conv, header_ref, height, broadcaster_conv, fee_estimator_conv, logger_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChannelCounterparty_clone(uint32_t orig) { - LDKChannelCounterparty orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelCounterparty ret_var = ChannelCounterparty_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; +uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_transactions_confirmed(uint32_t this_arg, int8_tArray header, uint32_tArray txdata, int32_t height, uint32_t broadcaster, uint32_t fee_estimator, uint32_t logger) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char header_arr[80]; + CHECK(header->arr_len == 80); + memcpy(header_arr, header->elems, 80); + unsigned char (*header_ref)[80] = &header_arr; + LDKCVec_C2Tuple_usizeTransactionZZ txdata_constr; + txdata_constr.datalen = txdata->arr_len; + if (txdata_constr.datalen > 0) + txdata_constr.data = MALLOC(txdata_constr.datalen * sizeof(LDKC2Tuple_usizeTransactionZ), "LDKCVec_C2Tuple_usizeTransactionZZ Elements"); + else + txdata_constr.data = NULL; + uint32_t* txdata_vals = txdata->elems; + for (size_t c = 0; c < txdata_constr.datalen; c++) { + uint32_t txdata_conv_28 = txdata_vals[c]; + void* txdata_conv_28_ptr = (void*)(((uint64_t)txdata_conv_28) & ~1); + CHECK_ACCESS(txdata_conv_28_ptr); + LDKC2Tuple_usizeTransactionZ txdata_conv_28_conv = *(LDKC2Tuple_usizeTransactionZ*)(txdata_conv_28_ptr); + txdata_conv_28_conv = C2Tuple_usizeTransactionZ_clone((LDKC2Tuple_usizeTransactionZ*)(((uint64_t)txdata_conv_28) & ~1)); + txdata_constr.data[c] = txdata_conv_28_conv; } - return ret_ref; + void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); + CHECK_ACCESS(broadcaster_ptr); + LDKBroadcasterInterface broadcaster_conv = *(LDKBroadcasterInterface*)(broadcaster_ptr); + void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); + CHECK_ACCESS(fee_estimator_ptr); + LDKFeeEstimator fee_estimator_conv = *(LDKFeeEstimator*)(fee_estimator_ptr); + void* logger_ptr = (void*)(((uint64_t)logger) & ~1); + CHECK_ACCESS(logger_ptr); + LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); + LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ ret_var = ChannelMonitor_transactions_confirmed(&this_arg_conv, header_ref, txdata_constr, height, broadcaster_conv, fee_estimator_conv, logger_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t n = 0; n < ret_var.datalen; n++) { + LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* ret_conv_39_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ"); + *ret_conv_39_conv = ret_var.data[n]; + ret_arr_ptr[n] = ((uint64_t)ret_conv_39_conv); + } + + FREE(ret_var.data); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelDetails_free(uint32_t this_obj) { - LDKChannelDetails this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelDetails_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_ChannelMonitor_transaction_unconfirmed(uint32_t this_arg, int8_tArray txid, uint32_t broadcaster, uint32_t fee_estimator, uint32_t logger) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char txid_arr[32]; + CHECK(txid->arr_len == 32); + memcpy(txid_arr, txid->elems, 32); + unsigned char (*txid_ref)[32] = &txid_arr; + void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); + CHECK_ACCESS(broadcaster_ptr); + LDKBroadcasterInterface broadcaster_conv = *(LDKBroadcasterInterface*)(broadcaster_ptr); + void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); + CHECK_ACCESS(fee_estimator_ptr); + LDKFeeEstimator fee_estimator_conv = *(LDKFeeEstimator*)(fee_estimator_ptr); + void* logger_ptr = (void*)(((uint64_t)logger) & ~1); + CHECK_ACCESS(logger_ptr); + LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); + ChannelMonitor_transaction_unconfirmed(&this_arg_conv, txid_ref, broadcaster_conv, fee_estimator_conv, logger_conv); } -int8_tArray __attribute__((visibility("default"))) TS_ChannelDetails_get_channel_id(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *ChannelDetails_get_channel_id(&this_ptr_conv), 32); +uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_best_block_updated(uint32_t this_arg, int8_tArray header, int32_t height, uint32_t broadcaster, uint32_t fee_estimator, uint32_t logger) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char header_arr[80]; + CHECK(header->arr_len == 80); + memcpy(header_arr, header->elems, 80); + unsigned char (*header_ref)[80] = &header_arr; + void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); + CHECK_ACCESS(broadcaster_ptr); + LDKBroadcasterInterface broadcaster_conv = *(LDKBroadcasterInterface*)(broadcaster_ptr); + void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); + CHECK_ACCESS(fee_estimator_ptr); + LDKFeeEstimator fee_estimator_conv = *(LDKFeeEstimator*)(fee_estimator_ptr); + void* logger_ptr = (void*)(((uint64_t)logger) & ~1); + CHECK_ACCESS(logger_ptr); + LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); + LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ ret_var = ChannelMonitor_best_block_updated(&this_arg_conv, header_ref, height, broadcaster_conv, fee_estimator_conv, logger_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t n = 0; n < ret_var.datalen; n++) { + LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* ret_conv_39_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ"); + *ret_conv_39_conv = ret_var.data[n]; + ret_arr_ptr[n] = ((uint64_t)ret_conv_39_conv); + } + + FREE(ret_var.data); return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - ChannelDetails_set_channel_id(&this_ptr_conv, val_ref); +ptrArray __attribute__((visibility("default"))) TS_ChannelMonitor_get_relevant_txids(uint32_t this_arg) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKCVec_TxidZ ret_var = ChannelMonitor_get_relevant_txids(&this_arg_conv); + ptrArray ret_arr = NULL; + ret_arr = init_ptrArray(ret_var.datalen); + int8_tArray *ret_arr_ptr = (int8_tArray*)(ret_arr + 4); + for (size_t m = 0; m < ret_var.datalen; m++) { + int8_tArray ret_conv_12_arr = init_int8_tArray(32); + memcpy(ret_conv_12_arr->elems, ret_var.data[m].data, 32); + ret_arr_ptr[m] = ret_conv_12_arr; + } + + FREE(ret_var.data); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_get_counterparty(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelCounterparty ret_var = ChannelDetails_get_counterparty(&this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelMonitor_current_best_block(uint32_t this_arg) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKBestBlock ret_var = ChannelMonitor_current_best_block(&this_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -21275,326 +19183,358 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_get_counterpa return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_counterparty(uint32_t this_ptr, uint32_t val) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelCounterparty val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = ChannelCounterparty_clone(&val_conv); - ChannelDetails_set_counterparty(&this_ptr_conv, val_conv); +uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_get_claimable_balances(uint32_t this_arg) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKCVec_BalanceZ ret_var = ChannelMonitor_get_claimable_balances(&this_arg_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t j = 0; j < ret_var.datalen; j++) { + LDKBalance *ret_conv_9_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); + *ret_conv_9_copy = ret_var.data[j]; + uint64_t ret_conv_9_ref = (uint64_t)ret_conv_9_copy; + ret_arr_ptr[j] = ret_conv_9_ref; + } + + FREE(ret_var.data); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_get_funding_txo(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKOutPoint ret_var = ChannelDetails_get_funding_txo(&this_ptr_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_read(int8_tArray ser, uint32_t arg) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + void* arg_ptr = (void*)(((uint64_t)arg) & ~1); + if (!(arg & 1)) { CHECK_ACCESS(arg_ptr); } + LDKKeysInterface* arg_conv = (LDKKeysInterface*)arg_ptr; + LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ"); + *ret_conv = C2Tuple_BlockHashChannelMonitorZ_read(ser_ref, arg_conv); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_funding_txo(uint32_t this_ptr, uint32_t val) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKOutPoint val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = OutPoint_clone(&val_conv); - ChannelDetails_set_funding_txo(&this_ptr_conv, val_conv); +void __attribute__((visibility("default"))) TS_OutPoint_free(uint32_t this_obj) { + LDKOutPoint this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + OutPoint_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_get_short_channel_id(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_OutPoint_get_txid(uint32_t this_ptr) { + LDKOutPoint this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *ret_copy = ChannelDetails_get_short_channel_id(&this_ptr_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *OutPoint_get_txid(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_short_channel_id(uint32_t this_ptr, uint32_t val) { - LDKChannelDetails this_ptr_conv; +void __attribute__((visibility("default"))) TS_OutPoint_set_txid(uint32_t this_ptr, int8_tArray val) { + LDKOutPoint this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr); - val_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)val) & ~1)); - ChannelDetails_set_short_channel_id(&this_ptr_conv, val_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + OutPoint_set_txid(&this_ptr_conv, val_ref); } -int64_t __attribute__((visibility("default"))) TS_ChannelDetails_get_channel_value_satoshis(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; +int16_t __attribute__((visibility("default"))) TS_OutPoint_get_index(uint32_t this_ptr) { + LDKOutPoint this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelDetails_get_channel_value_satoshis(&this_ptr_conv); + int16_t ret_val = OutPoint_get_index(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_channel_value_satoshis(uint32_t this_ptr, int64_t val) { - LDKChannelDetails this_ptr_conv; +void __attribute__((visibility("default"))) TS_OutPoint_set_index(uint32_t this_ptr, int16_t val) { + LDKOutPoint this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelDetails_set_channel_value_satoshis(&this_ptr_conv, val); + OutPoint_set_index(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_get_unspendable_punishment_reserve(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *ret_copy = ChannelDetails_get_unspendable_punishment_reserve(&this_ptr_conv); - uint64_t ret_ref = (uint64_t)ret_copy; +uint32_t __attribute__((visibility("default"))) TS_OutPoint_new(int8_tArray txid_arg, int16_t index_arg) { + LDKThirtyTwoBytes txid_arg_ref; + CHECK(txid_arg->arr_len == 32); + memcpy(txid_arg_ref.data, txid_arg->elems, 32); + LDKOutPoint ret_var = OutPoint_new(txid_arg_ref, index_arg); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_unspendable_punishment_reserve(uint32_t this_ptr, uint32_t val) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr); - val_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)val) & ~1)); - ChannelDetails_set_unspendable_punishment_reserve(&this_ptr_conv, val_conv); +static inline uint64_t OutPoint_clone_ptr(LDKOutPoint *NONNULL_PTR arg) { + LDKOutPoint ret_var = OutPoint_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -int64_t __attribute__((visibility("default"))) TS_ChannelDetails_get_user_channel_id(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelDetails_get_user_channel_id(&this_ptr_conv); + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_OutPoint_clone_ptr(uint32_t arg) { + LDKOutPoint arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = OutPoint_clone_ptr(&arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_user_channel_id(uint32_t this_ptr, int64_t val) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelDetails_set_user_channel_id(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_OutPoint_clone(uint32_t orig) { + LDKOutPoint orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKOutPoint ret_var = OutPoint_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ChannelDetails_get_balance_msat(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelDetails_get_balance_msat(&this_ptr_conv); +jboolean __attribute__((visibility("default"))) TS_OutPoint_eq(uint32_t a, uint32_t b) { + LDKOutPoint a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + LDKOutPoint b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + jboolean ret_val = OutPoint_eq(&a_conv, &b_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_balance_msat(uint32_t this_ptr, int64_t val) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelDetails_set_balance_msat(&this_ptr_conv, val); +int64_t __attribute__((visibility("default"))) TS_OutPoint_hash(uint32_t o) { + LDKOutPoint o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + int64_t ret_val = OutPoint_hash(&o_conv); + return ret_val; } -int64_t __attribute__((visibility("default"))) TS_ChannelDetails_get_outbound_capacity_msat(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelDetails_get_outbound_capacity_msat(&this_ptr_conv); - return ret_val; +int8_tArray __attribute__((visibility("default"))) TS_OutPoint_to_channel_id(uint32_t this_arg) { + LDKOutPoint this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, OutPoint_to_channel_id(&this_arg_conv).data, 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_outbound_capacity_msat(uint32_t this_ptr, int64_t val) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelDetails_set_outbound_capacity_msat(&this_ptr_conv, val); +int8_tArray __attribute__((visibility("default"))) TS_OutPoint_write(uint32_t obj) { + LDKOutPoint obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = OutPoint_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -int64_t __attribute__((visibility("default"))) TS_ChannelDetails_get_inbound_capacity_msat(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelDetails_get_inbound_capacity_msat(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_OutPoint_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_OutPointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OutPointDecodeErrorZ), "LDKCResult_OutPointDecodeErrorZ"); + *ret_conv = OutPoint_read(ser_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_inbound_capacity_msat(uint32_t this_ptr, int64_t val) { - LDKChannelDetails this_ptr_conv; +void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_free(uint32_t this_obj) { + LDKDelayedPaymentOutputDescriptor this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + DelayedPaymentOutputDescriptor_free(this_obj_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_get_outpoint(uint32_t this_ptr) { + LDKDelayedPaymentOutputDescriptor this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelDetails_set_inbound_capacity_msat(&this_ptr_conv, val); + LDKOutPoint ret_var = DelayedPaymentOutputDescriptor_get_outpoint(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_get_confirmations_required(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; +void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_outpoint(uint32_t this_ptr, uint32_t val) { + LDKDelayedPaymentOutputDescriptor this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCOption_u32Z *ret_copy = MALLOC(sizeof(LDKCOption_u32Z), "LDKCOption_u32Z"); - *ret_copy = ChannelDetails_get_confirmations_required(&this_ptr_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; + LDKOutPoint val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = OutPoint_clone(&val_conv); + DelayedPaymentOutputDescriptor_set_outpoint(&this_ptr_conv, val_conv); } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_confirmations_required(uint32_t this_ptr, uint32_t val) { - LDKChannelDetails this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_get_per_commitment_point(uint32_t this_ptr) { + LDKDelayedPaymentOutputDescriptor this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKCOption_u32Z val_conv = *(LDKCOption_u32Z*)(val_ptr); - val_conv = COption_u32Z_clone((LDKCOption_u32Z*)(((uint64_t)val) & ~1)); - ChannelDetails_set_confirmations_required(&this_ptr_conv, val_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, DelayedPaymentOutputDescriptor_get_per_commitment_point(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_get_force_close_spend_delay(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; +void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_per_commitment_point(uint32_t this_ptr, int8_tArray val) { + LDKDelayedPaymentOutputDescriptor this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCOption_u16Z *ret_copy = MALLOC(sizeof(LDKCOption_u16Z), "LDKCOption_u16Z"); - *ret_copy = ChannelDetails_get_force_close_spend_delay(&this_ptr_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + DelayedPaymentOutputDescriptor_set_per_commitment_point(&this_ptr_conv, val_ref); } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_force_close_spend_delay(uint32_t this_ptr, uint32_t val) { - LDKChannelDetails this_ptr_conv; +int16_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_get_to_self_delay(uint32_t this_ptr) { + LDKDelayedPaymentOutputDescriptor this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKCOption_u16Z val_conv = *(LDKCOption_u16Z*)(val_ptr); - val_conv = COption_u16Z_clone((LDKCOption_u16Z*)(((uint64_t)val) & ~1)); - ChannelDetails_set_force_close_spend_delay(&this_ptr_conv, val_conv); + int16_t ret_val = DelayedPaymentOutputDescriptor_get_to_self_delay(&this_ptr_conv); + return ret_val; } -jboolean __attribute__((visibility("default"))) TS_ChannelDetails_get_is_outbound(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; +void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_to_self_delay(uint32_t this_ptr, int16_t val) { + LDKDelayedPaymentOutputDescriptor this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = ChannelDetails_get_is_outbound(&this_ptr_conv); - return ret_val; + DelayedPaymentOutputDescriptor_set_to_self_delay(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_is_outbound(uint32_t this_ptr, jboolean val) { - LDKChannelDetails this_ptr_conv; +void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_output(uint32_t this_ptr, uint32_t val) { + LDKDelayedPaymentOutputDescriptor this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelDetails_set_is_outbound(&this_ptr_conv, val); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKTxOut val_conv = *(LDKTxOut*)(val_ptr); + val_conv = TxOut_clone((LDKTxOut*)(((uint64_t)val) & ~1)); + DelayedPaymentOutputDescriptor_set_output(&this_ptr_conv, val_conv); } -jboolean __attribute__((visibility("default"))) TS_ChannelDetails_get_is_funding_locked(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_get_revocation_pubkey(uint32_t this_ptr) { + LDKDelayedPaymentOutputDescriptor this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = ChannelDetails_get_is_funding_locked(&this_ptr_conv); - return ret_val; + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, DelayedPaymentOutputDescriptor_get_revocation_pubkey(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_is_funding_locked(uint32_t this_ptr, jboolean val) { - LDKChannelDetails this_ptr_conv; +void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_revocation_pubkey(uint32_t this_ptr, int8_tArray val) { + LDKDelayedPaymentOutputDescriptor this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelDetails_set_is_funding_locked(&this_ptr_conv, val); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + DelayedPaymentOutputDescriptor_set_revocation_pubkey(&this_ptr_conv, val_ref); } -jboolean __attribute__((visibility("default"))) TS_ChannelDetails_get_is_usable(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_get_channel_keys_id(uint32_t this_ptr) { + LDKDelayedPaymentOutputDescriptor this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = ChannelDetails_get_is_usable(&this_ptr_conv); - return ret_val; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *DelayedPaymentOutputDescriptor_get_channel_keys_id(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_is_usable(uint32_t this_ptr, jboolean val) { - LDKChannelDetails this_ptr_conv; +void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_channel_keys_id(uint32_t this_ptr, int8_tArray val) { + LDKDelayedPaymentOutputDescriptor this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelDetails_set_is_usable(&this_ptr_conv, val); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + DelayedPaymentOutputDescriptor_set_channel_keys_id(&this_ptr_conv, val_ref); } -jboolean __attribute__((visibility("default"))) TS_ChannelDetails_get_is_public(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_get_channel_value_satoshis(uint32_t this_ptr) { + LDKDelayedPaymentOutputDescriptor this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = ChannelDetails_get_is_public(&this_ptr_conv); + int64_t ret_val = DelayedPaymentOutputDescriptor_get_channel_value_satoshis(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_is_public(uint32_t this_ptr, jboolean val) { - LDKChannelDetails this_ptr_conv; +void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_channel_value_satoshis(uint32_t this_ptr, int64_t val) { + LDKDelayedPaymentOutputDescriptor this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelDetails_set_is_public(&this_ptr_conv, val); + DelayedPaymentOutputDescriptor_set_channel_value_satoshis(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_new(int8_tArray channel_id_arg, uint32_t counterparty_arg, uint32_t funding_txo_arg, uint32_t short_channel_id_arg, int64_t channel_value_satoshis_arg, uint32_t unspendable_punishment_reserve_arg, int64_t user_channel_id_arg, int64_t balance_msat_arg, int64_t outbound_capacity_msat_arg, int64_t inbound_capacity_msat_arg, uint32_t confirmations_required_arg, uint32_t force_close_spend_delay_arg, jboolean is_outbound_arg, jboolean is_funding_locked_arg, jboolean is_usable_arg, jboolean is_public_arg) { - LDKThirtyTwoBytes channel_id_arg_ref; - CHECK(*((uint32_t*)channel_id_arg) == 32); - memcpy(channel_id_arg_ref.data, (uint8_t*)(channel_id_arg + 4), 32); - LDKChannelCounterparty counterparty_arg_conv; - counterparty_arg_conv.inner = (void*)(counterparty_arg & (~1)); - counterparty_arg_conv.is_owned = (counterparty_arg & 1) || (counterparty_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(counterparty_arg_conv); - counterparty_arg_conv = ChannelCounterparty_clone(&counterparty_arg_conv); - LDKOutPoint funding_txo_arg_conv; - funding_txo_arg_conv.inner = (void*)(funding_txo_arg & (~1)); - funding_txo_arg_conv.is_owned = (funding_txo_arg & 1) || (funding_txo_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_arg_conv); - funding_txo_arg_conv = OutPoint_clone(&funding_txo_arg_conv); - void* short_channel_id_arg_ptr = (void*)(((uint64_t)short_channel_id_arg) & ~1); - CHECK_ACCESS(short_channel_id_arg_ptr); - LDKCOption_u64Z short_channel_id_arg_conv = *(LDKCOption_u64Z*)(short_channel_id_arg_ptr); - short_channel_id_arg_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)short_channel_id_arg) & ~1)); - void* unspendable_punishment_reserve_arg_ptr = (void*)(((uint64_t)unspendable_punishment_reserve_arg) & ~1); - CHECK_ACCESS(unspendable_punishment_reserve_arg_ptr); - LDKCOption_u64Z unspendable_punishment_reserve_arg_conv = *(LDKCOption_u64Z*)(unspendable_punishment_reserve_arg_ptr); - void* confirmations_required_arg_ptr = (void*)(((uint64_t)confirmations_required_arg) & ~1); - CHECK_ACCESS(confirmations_required_arg_ptr); - LDKCOption_u32Z confirmations_required_arg_conv = *(LDKCOption_u32Z*)(confirmations_required_arg_ptr); - confirmations_required_arg_conv = COption_u32Z_clone((LDKCOption_u32Z*)(((uint64_t)confirmations_required_arg) & ~1)); - void* force_close_spend_delay_arg_ptr = (void*)(((uint64_t)force_close_spend_delay_arg) & ~1); - CHECK_ACCESS(force_close_spend_delay_arg_ptr); - LDKCOption_u16Z force_close_spend_delay_arg_conv = *(LDKCOption_u16Z*)(force_close_spend_delay_arg_ptr); - force_close_spend_delay_arg_conv = COption_u16Z_clone((LDKCOption_u16Z*)(((uint64_t)force_close_spend_delay_arg) & ~1)); - LDKChannelDetails ret_var = ChannelDetails_new(channel_id_arg_ref, counterparty_arg_conv, funding_txo_arg_conv, short_channel_id_arg_conv, channel_value_satoshis_arg, unspendable_punishment_reserve_arg_conv, user_channel_id_arg, balance_msat_arg, outbound_capacity_msat_arg, inbound_capacity_msat_arg, confirmations_required_arg_conv, force_close_spend_delay_arg_conv, is_outbound_arg, is_funding_locked_arg, is_usable_arg, is_public_arg); +uint32_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_new(uint32_t outpoint_arg, int8_tArray per_commitment_point_arg, int16_t to_self_delay_arg, uint32_t output_arg, int8_tArray revocation_pubkey_arg, int8_tArray channel_keys_id_arg, int64_t channel_value_satoshis_arg) { + LDKOutPoint outpoint_arg_conv; + outpoint_arg_conv.inner = (void*)(outpoint_arg & (~1)); + outpoint_arg_conv.is_owned = (outpoint_arg & 1) || (outpoint_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(outpoint_arg_conv); + outpoint_arg_conv = OutPoint_clone(&outpoint_arg_conv); + LDKPublicKey per_commitment_point_arg_ref; + CHECK(per_commitment_point_arg->arr_len == 33); + memcpy(per_commitment_point_arg_ref.compressed_form, per_commitment_point_arg->elems, 33); + void* output_arg_ptr = (void*)(((uint64_t)output_arg) & ~1); + CHECK_ACCESS(output_arg_ptr); + LDKTxOut output_arg_conv = *(LDKTxOut*)(output_arg_ptr); + output_arg_conv = TxOut_clone((LDKTxOut*)(((uint64_t)output_arg) & ~1)); + LDKPublicKey revocation_pubkey_arg_ref; + CHECK(revocation_pubkey_arg->arr_len == 33); + memcpy(revocation_pubkey_arg_ref.compressed_form, revocation_pubkey_arg->elems, 33); + LDKThirtyTwoBytes channel_keys_id_arg_ref; + CHECK(channel_keys_id_arg->arr_len == 32); + memcpy(channel_keys_id_arg_ref.data, channel_keys_id_arg->elems, 32); + LDKDelayedPaymentOutputDescriptor ret_var = DelayedPaymentOutputDescriptor_new(outpoint_arg_conv, per_commitment_point_arg_ref, to_self_delay_arg, output_arg_conv, revocation_pubkey_arg_ref, channel_keys_id_arg_ref, channel_value_satoshis_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -21606,8 +19546,8 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_new(int8_tArr return ret_ref; } -static inline uint64_t ChannelDetails_clone_ptr(LDKChannelDetails *NONNULL_PTR arg) { - LDKChannelDetails ret_var = ChannelDetails_clone(arg); +static inline uint64_t DelayedPaymentOutputDescriptor_clone_ptr(LDKDelayedPaymentOutputDescriptor *NONNULL_PTR arg) { + LDKDelayedPaymentOutputDescriptor ret_var = DelayedPaymentOutputDescriptor_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -21618,21 +19558,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ChannelDetails_clone_ptr(uint32_t arg) { - LDKChannelDetails arg_conv; +int64_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_clone_ptr(uint32_t arg) { + LDKDelayedPaymentOutputDescriptor arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelDetails_clone_ptr(&arg_conv); + int64_t ret_val = DelayedPaymentOutputDescriptor_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_clone(uint32_t orig) { - LDKChannelDetails orig_conv; +uint32_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_clone(uint32_t orig) { + LDKDelayedPaymentOutputDescriptor orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelDetails ret_var = ChannelDetails_clone(&orig_conv); + LDKDelayedPaymentOutputDescriptor ret_var = DelayedPaymentOutputDescriptor_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -21644,163 +19584,41 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_clone(uint32_ return ret_ref; } -void __attribute__((visibility("default"))) TS_PaymentSendFailure_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKPaymentSendFailure this_ptr_conv = *(LDKPaymentSendFailure*)(this_ptr_ptr); - FREE((void*)this_ptr); - PaymentSendFailure_free(this_ptr_conv); -} - -static inline uint64_t PaymentSendFailure_clone_ptr(LDKPaymentSendFailure *NONNULL_PTR arg) { - LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); - *ret_copy = PaymentSendFailure_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_PaymentSendFailure_clone_ptr(uint32_t arg) { - LDKPaymentSendFailure* arg_conv = (LDKPaymentSendFailure*)arg; - int64_t ret_val = PaymentSendFailure_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_PaymentSendFailure_clone(uint32_t orig) { - LDKPaymentSendFailure* orig_conv = (LDKPaymentSendFailure*)orig; - LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); - *ret_copy = PaymentSendFailure_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_PaymentSendFailure_parameter_error(uint32_t a) { - void* a_ptr = (void*)(((uint64_t)a) & ~1); - CHECK_ACCESS(a_ptr); - LDKAPIError a_conv = *(LDKAPIError*)(a_ptr); - a_conv = APIError_clone((LDKAPIError*)(((uint64_t)a) & ~1)); - LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); - *ret_copy = PaymentSendFailure_parameter_error(a_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_PaymentSendFailure_path_parameter_error(uint32_tArray a) { - LDKCVec_CResult_NoneAPIErrorZZ a_constr; - a_constr.datalen = *((uint32_t*)a); - if (a_constr.datalen > 0) - a_constr.data = MALLOC(a_constr.datalen * sizeof(LDKCResult_NoneAPIErrorZ), "LDKCVec_CResult_NoneAPIErrorZZ Elements"); - else - a_constr.data = NULL; - uint32_t* a_vals = (uint32_t*)(a + 4); - for (size_t w = 0; w < a_constr.datalen; w++) { - uint32_t a_conv_22 = a_vals[w]; - void* a_conv_22_ptr = (void*)(((uint64_t)a_conv_22) & ~1); - CHECK_ACCESS(a_conv_22_ptr); - LDKCResult_NoneAPIErrorZ a_conv_22_conv = *(LDKCResult_NoneAPIErrorZ*)(a_conv_22_ptr); - a_conv_22_conv = CResult_NoneAPIErrorZ_clone((LDKCResult_NoneAPIErrorZ*)(((uint64_t)a_conv_22) & ~1)); - a_constr.data[w] = a_conv_22_conv; - } - LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); - *ret_copy = PaymentSendFailure_path_parameter_error(a_constr); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_PaymentSendFailure_all_failed_retry_safe(uint32_tArray a) { - LDKCVec_APIErrorZ a_constr; - a_constr.datalen = *((uint32_t*)a); - if (a_constr.datalen > 0) - a_constr.data = MALLOC(a_constr.datalen * sizeof(LDKAPIError), "LDKCVec_APIErrorZ Elements"); - else - a_constr.data = NULL; - uint32_t* a_vals = (uint32_t*)(a + 4); - for (size_t k = 0; k < a_constr.datalen; k++) { - uint32_t a_conv_10 = a_vals[k]; - void* a_conv_10_ptr = (void*)(((uint64_t)a_conv_10) & ~1); - CHECK_ACCESS(a_conv_10_ptr); - LDKAPIError a_conv_10_conv = *(LDKAPIError*)(a_conv_10_ptr); - a_conv_10_conv = APIError_clone((LDKAPIError*)(((uint64_t)a_conv_10) & ~1)); - a_constr.data[k] = a_conv_10_conv; - } - LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); - *ret_copy = PaymentSendFailure_all_failed_retry_safe(a_constr); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_write(uint32_t obj) { + LDKDelayedPaymentOutputDescriptor obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = DelayedPaymentOutputDescriptor_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_PaymentSendFailure_partial_failure(uint32_tArray results, uint32_t failed_paths_retry, int8_tArray payment_id) { - LDKCVec_CResult_NoneAPIErrorZZ results_constr; - results_constr.datalen = *((uint32_t*)results); - if (results_constr.datalen > 0) - results_constr.data = MALLOC(results_constr.datalen * sizeof(LDKCResult_NoneAPIErrorZ), "LDKCVec_CResult_NoneAPIErrorZZ Elements"); - else - results_constr.data = NULL; - uint32_t* results_vals = (uint32_t*)(results + 4); - for (size_t w = 0; w < results_constr.datalen; w++) { - uint32_t results_conv_22 = results_vals[w]; - void* results_conv_22_ptr = (void*)(((uint64_t)results_conv_22) & ~1); - CHECK_ACCESS(results_conv_22_ptr); - LDKCResult_NoneAPIErrorZ results_conv_22_conv = *(LDKCResult_NoneAPIErrorZ*)(results_conv_22_ptr); - results_constr.data[w] = results_conv_22_conv; - } - LDKRouteParameters failed_paths_retry_conv; - failed_paths_retry_conv.inner = (void*)(failed_paths_retry & (~1)); - failed_paths_retry_conv.is_owned = (failed_paths_retry & 1) || (failed_paths_retry == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(failed_paths_retry_conv); - failed_paths_retry_conv = RouteParameters_clone(&failed_paths_retry_conv); - LDKThirtyTwoBytes payment_id_ref; - CHECK(*((uint32_t*)payment_id) == 32); - memcpy(payment_id_ref.data, (uint8_t*)(payment_id + 4), 32); - LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); - *ret_copy = PaymentSendFailure_partial_failure(results_constr, failed_paths_retry_conv, payment_id_ref); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ"); + *ret_conv = DelayedPaymentOutputDescriptor_read(ser_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_new(uint32_t fee_est, uint32_t chain_monitor, uint32_t tx_broadcaster, uint32_t logger, uint32_t keys_manager, uint32_t config, uint32_t params) { - void* fee_est_ptr = (void*)(((uint64_t)fee_est) & ~1); - CHECK_ACCESS(fee_est_ptr); - LDKFeeEstimator fee_est_conv = *(LDKFeeEstimator*)(fee_est_ptr); - void* chain_monitor_ptr = (void*)(((uint64_t)chain_monitor) & ~1); - CHECK_ACCESS(chain_monitor_ptr); - LDKWatch chain_monitor_conv = *(LDKWatch*)(chain_monitor_ptr); - void* tx_broadcaster_ptr = (void*)(((uint64_t)tx_broadcaster) & ~1); - CHECK_ACCESS(tx_broadcaster_ptr); - LDKBroadcasterInterface tx_broadcaster_conv = *(LDKBroadcasterInterface*)(tx_broadcaster_ptr); - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - void* keys_manager_ptr = (void*)(((uint64_t)keys_manager) & ~1); - CHECK_ACCESS(keys_manager_ptr); - LDKKeysInterface keys_manager_conv = *(LDKKeysInterface*)(keys_manager_ptr); - LDKUserConfig config_conv; - config_conv.inner = (void*)(config & (~1)); - config_conv.is_owned = (config & 1) || (config == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(config_conv); - config_conv = UserConfig_clone(&config_conv); - LDKChainParameters params_conv; - params_conv.inner = (void*)(params & (~1)); - params_conv.is_owned = (params & 1) || (params == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(params_conv); - params_conv = ChainParameters_clone(¶ms_conv); - LDKChannelManager ret_var = ChannelManager_new(fee_est_conv, chain_monitor_conv, tx_broadcaster_conv, logger_conv, keys_manager_conv, config_conv, params_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_free(uint32_t this_obj) { + LDKStaticPaymentOutputDescriptor this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + StaticPaymentOutputDescriptor_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_get_current_default_configuration(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKUserConfig ret_var = ChannelManager_get_current_default_configuration(&this_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_get_outpoint(uint32_t this_ptr) { + LDKStaticPaymentOutputDescriptor this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKOutPoint ret_var = StaticPaymentOutputDescriptor_get_outpoint(&this_ptr_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -21812,678 +19630,425 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelManager_get_current_d return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_create_channel(uint32_t this_arg, int8_tArray their_network_key, int64_t channel_value_satoshis, int64_t push_msat, int64_t user_channel_id, uint32_t override_config) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKPublicKey their_network_key_ref; - CHECK(*((uint32_t*)their_network_key) == 33); - memcpy(their_network_key_ref.compressed_form, (uint8_t*)(their_network_key + 4), 33); - LDKUserConfig override_config_conv; - override_config_conv.inner = (void*)(override_config & (~1)); - override_config_conv.is_owned = (override_config & 1) || (override_config == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(override_config_conv); - override_config_conv = UserConfig_clone(&override_config_conv); - LDKCResult__u832APIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult__u832APIErrorZ), "LDKCResult__u832APIErrorZ"); - *ret_conv = ChannelManager_create_channel(&this_arg_conv, their_network_key_ref, channel_value_satoshis, push_msat, user_channel_id, override_config_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_set_outpoint(uint32_t this_ptr, uint32_t val) { + LDKStaticPaymentOutputDescriptor this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKOutPoint val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = OutPoint_clone(&val_conv); + StaticPaymentOutputDescriptor_set_outpoint(&this_ptr_conv, val_conv); } -uint32_tArray __attribute__((visibility("default"))) TS_ChannelManager_list_channels(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_ChannelDetailsZ ret_var = ChannelManager_list_channels(&this_arg_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t q = 0; q < ret_var.datalen; q++) { - LDKChannelDetails ret_conv_16_var = ret_var.data[q]; - uint64_t ret_conv_16_ref = 0; - CHECK((((uint64_t)ret_conv_16_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_16_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_16_var); - ret_conv_16_ref = (uint64_t)ret_conv_16_var.inner; - if (ret_conv_16_var.is_owned) { - ret_conv_16_ref |= 1; - } - ret_arr_ptr[q] = ret_conv_16_ref; - } - - FREE(ret_var.data); - return ret_arr; +void __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_set_output(uint32_t this_ptr, uint32_t val) { + LDKStaticPaymentOutputDescriptor this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKTxOut val_conv = *(LDKTxOut*)(val_ptr); + val_conv = TxOut_clone((LDKTxOut*)(((uint64_t)val) & ~1)); + StaticPaymentOutputDescriptor_set_output(&this_ptr_conv, val_conv); } -uint32_tArray __attribute__((visibility("default"))) TS_ChannelManager_list_usable_channels(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_ChannelDetailsZ ret_var = ChannelManager_list_usable_channels(&this_arg_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t q = 0; q < ret_var.datalen; q++) { - LDKChannelDetails ret_conv_16_var = ret_var.data[q]; - uint64_t ret_conv_16_ref = 0; - CHECK((((uint64_t)ret_conv_16_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_16_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_16_var); - ret_conv_16_ref = (uint64_t)ret_conv_16_var.inner; - if (ret_conv_16_var.is_owned) { - ret_conv_16_ref |= 1; - } - ret_arr_ptr[q] = ret_conv_16_ref; - } - - FREE(ret_var.data); +int8_tArray __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_get_channel_keys_id(uint32_t this_ptr) { + LDKStaticPaymentOutputDescriptor this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *StaticPaymentOutputDescriptor_get_channel_keys_id(&this_ptr_conv), 32); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_close_channel(uint32_t this_arg, int8_tArray channel_id) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char channel_id_arr[32]; - CHECK(*((uint32_t*)channel_id) == 32); - memcpy(channel_id_arr, (uint8_t*)(channel_id + 4), 32); - unsigned char (*channel_id_ref)[32] = &channel_id_arr; - LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); - *ret_conv = ChannelManager_close_channel(&this_arg_conv, channel_id_ref); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_close_channel_with_target_feerate(uint32_t this_arg, int8_tArray channel_id, int32_t target_feerate_sats_per_1000_weight) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char channel_id_arr[32]; - CHECK(*((uint32_t*)channel_id) == 32); - memcpy(channel_id_arr, (uint8_t*)(channel_id + 4), 32); - unsigned char (*channel_id_ref)[32] = &channel_id_arr; - LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); - *ret_conv = ChannelManager_close_channel_with_target_feerate(&this_arg_conv, channel_id_ref, target_feerate_sats_per_1000_weight); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_force_close_channel(uint32_t this_arg, int8_tArray channel_id) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char channel_id_arr[32]; - CHECK(*((uint32_t*)channel_id) == 32); - memcpy(channel_id_arr, (uint8_t*)(channel_id + 4), 32); - unsigned char (*channel_id_ref)[32] = &channel_id_arr; - LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); - *ret_conv = ChannelManager_force_close_channel(&this_arg_conv, channel_id_ref); - return (uint64_t)ret_conv; -} - -void __attribute__((visibility("default"))) TS_ChannelManager_force_close_all_channels(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - ChannelManager_force_close_all_channels(&this_arg_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_send_payment(uint32_t this_arg, uint32_t route, int8_tArray payment_hash, int8_tArray payment_secret) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKRoute route_conv; - route_conv.inner = (void*)(route & (~1)); - route_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(route_conv); - LDKThirtyTwoBytes payment_hash_ref; - CHECK(*((uint32_t*)payment_hash) == 32); - memcpy(payment_hash_ref.data, (uint8_t*)(payment_hash + 4), 32); - LDKThirtyTwoBytes payment_secret_ref; - CHECK(*((uint32_t*)payment_secret) == 32); - memcpy(payment_secret_ref.data, (uint8_t*)(payment_secret + 4), 32); - LDKCResult_PaymentIdPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentSendFailureZ), "LDKCResult_PaymentIdPaymentSendFailureZ"); - *ret_conv = ChannelManager_send_payment(&this_arg_conv, &route_conv, payment_hash_ref, payment_secret_ref); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_retry_payment(uint32_t this_arg, uint32_t route, int8_tArray payment_id) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKRoute route_conv; - route_conv.inner = (void*)(route & (~1)); - route_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(route_conv); - LDKThirtyTwoBytes payment_id_ref; - CHECK(*((uint32_t*)payment_id) == 32); - memcpy(payment_id_ref.data, (uint8_t*)(payment_id + 4), 32); - LDKCResult_NonePaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentSendFailureZ), "LDKCResult_NonePaymentSendFailureZ"); - *ret_conv = ChannelManager_retry_payment(&this_arg_conv, &route_conv, payment_id_ref); - return (uint64_t)ret_conv; -} - -void __attribute__((visibility("default"))) TS_ChannelManager_abandon_payment(uint32_t this_arg, int8_tArray payment_id) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKThirtyTwoBytes payment_id_ref; - CHECK(*((uint32_t*)payment_id) == 32); - memcpy(payment_id_ref.data, (uint8_t*)(payment_id + 4), 32); - ChannelManager_abandon_payment(&this_arg_conv, payment_id_ref); +void __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_set_channel_keys_id(uint32_t this_ptr, int8_tArray val) { + LDKStaticPaymentOutputDescriptor this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + StaticPaymentOutputDescriptor_set_channel_keys_id(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_send_spontaneous_payment(uint32_t this_arg, uint32_t route, int8_tArray payment_preimage) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKRoute route_conv; - route_conv.inner = (void*)(route & (~1)); - route_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(route_conv); - LDKThirtyTwoBytes payment_preimage_ref; - CHECK(*((uint32_t*)payment_preimage) == 32); - memcpy(payment_preimage_ref.data, (uint8_t*)(payment_preimage + 4), 32); - LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ), "LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ"); - *ret_conv = ChannelManager_send_spontaneous_payment(&this_arg_conv, &route_conv, payment_preimage_ref); - return (uint64_t)ret_conv; +int64_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_get_channel_value_satoshis(uint32_t this_ptr) { + LDKStaticPaymentOutputDescriptor this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = StaticPaymentOutputDescriptor_get_channel_value_satoshis(&this_ptr_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_funding_transaction_generated(uint32_t this_arg, int8_tArray temporary_channel_id, int8_tArray funding_transaction) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char temporary_channel_id_arr[32]; - CHECK(*((uint32_t*)temporary_channel_id) == 32); - memcpy(temporary_channel_id_arr, (uint8_t*)(temporary_channel_id + 4), 32); - unsigned char (*temporary_channel_id_ref)[32] = &temporary_channel_id_arr; - LDKTransaction funding_transaction_ref; - funding_transaction_ref.datalen = *((uint32_t*)funding_transaction); - funding_transaction_ref.data = MALLOC(funding_transaction_ref.datalen, "LDKTransaction Bytes"); - memcpy(funding_transaction_ref.data, (uint8_t*)(funding_transaction + 4), funding_transaction_ref.datalen); - funding_transaction_ref.data_is_owned = true; - LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); - *ret_conv = ChannelManager_funding_transaction_generated(&this_arg_conv, temporary_channel_id_ref, funding_transaction_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_set_channel_value_satoshis(uint32_t this_ptr, int64_t val) { + LDKStaticPaymentOutputDescriptor this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + StaticPaymentOutputDescriptor_set_channel_value_satoshis(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_ChannelManager_broadcast_node_announcement(uint32_t this_arg, int8_tArray rgb, int8_tArray alias, uint32_tArray addresses) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKThreeBytes rgb_ref; - CHECK(*((uint32_t*)rgb) == 3); - memcpy(rgb_ref.data, (uint8_t*)(rgb + 4), 3); - LDKThirtyTwoBytes alias_ref; - CHECK(*((uint32_t*)alias) == 32); - memcpy(alias_ref.data, (uint8_t*)(alias + 4), 32); - LDKCVec_NetAddressZ addresses_constr; - addresses_constr.datalen = *((uint32_t*)addresses); - if (addresses_constr.datalen > 0) - addresses_constr.data = MALLOC(addresses_constr.datalen * sizeof(LDKNetAddress), "LDKCVec_NetAddressZ Elements"); - else - addresses_constr.data = NULL; - uint32_t* addresses_vals = (uint32_t*)(addresses + 4); - for (size_t m = 0; m < addresses_constr.datalen; m++) { - uint32_t addresses_conv_12 = addresses_vals[m]; - void* addresses_conv_12_ptr = (void*)(((uint64_t)addresses_conv_12) & ~1); - CHECK_ACCESS(addresses_conv_12_ptr); - LDKNetAddress addresses_conv_12_conv = *(LDKNetAddress*)(addresses_conv_12_ptr); - addresses_constr.data[m] = addresses_conv_12_conv; +uint32_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_new(uint32_t outpoint_arg, uint32_t output_arg, int8_tArray channel_keys_id_arg, int64_t channel_value_satoshis_arg) { + LDKOutPoint outpoint_arg_conv; + outpoint_arg_conv.inner = (void*)(outpoint_arg & (~1)); + outpoint_arg_conv.is_owned = (outpoint_arg & 1) || (outpoint_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(outpoint_arg_conv); + outpoint_arg_conv = OutPoint_clone(&outpoint_arg_conv); + void* output_arg_ptr = (void*)(((uint64_t)output_arg) & ~1); + CHECK_ACCESS(output_arg_ptr); + LDKTxOut output_arg_conv = *(LDKTxOut*)(output_arg_ptr); + output_arg_conv = TxOut_clone((LDKTxOut*)(((uint64_t)output_arg) & ~1)); + LDKThirtyTwoBytes channel_keys_id_arg_ref; + CHECK(channel_keys_id_arg->arr_len == 32); + memcpy(channel_keys_id_arg_ref.data, channel_keys_id_arg->elems, 32); + LDKStaticPaymentOutputDescriptor ret_var = StaticPaymentOutputDescriptor_new(outpoint_arg_conv, output_arg_conv, channel_keys_id_arg_ref, channel_value_satoshis_arg); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - ChannelManager_broadcast_node_announcement(&this_arg_conv, rgb_ref, alias_ref, addresses_constr); + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelManager_process_pending_htlc_forwards(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - ChannelManager_process_pending_htlc_forwards(&this_arg_conv); +static inline uint64_t StaticPaymentOutputDescriptor_clone_ptr(LDKStaticPaymentOutputDescriptor *NONNULL_PTR arg) { + LDKStaticPaymentOutputDescriptor ret_var = StaticPaymentOutputDescriptor_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -void __attribute__((visibility("default"))) TS_ChannelManager_timer_tick_occurred(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - ChannelManager_timer_tick_occurred(&this_arg_conv); + return ret_ref; } - -jboolean __attribute__((visibility("default"))) TS_ChannelManager_fail_htlc_backwards(uint32_t this_arg, int8_tArray payment_hash) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char payment_hash_arr[32]; - CHECK(*((uint32_t*)payment_hash) == 32); - memcpy(payment_hash_arr, (uint8_t*)(payment_hash + 4), 32); - unsigned char (*payment_hash_ref)[32] = &payment_hash_arr; - jboolean ret_val = ChannelManager_fail_htlc_backwards(&this_arg_conv, payment_hash_ref); +int64_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_clone_ptr(uint32_t arg) { + LDKStaticPaymentOutputDescriptor arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = StaticPaymentOutputDescriptor_clone_ptr(&arg_conv); return ret_val; } -jboolean __attribute__((visibility("default"))) TS_ChannelManager_claim_funds(uint32_t this_arg, int8_tArray payment_preimage) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKThirtyTwoBytes payment_preimage_ref; - CHECK(*((uint32_t*)payment_preimage) == 32); - memcpy(payment_preimage_ref.data, (uint8_t*)(payment_preimage + 4), 32); - jboolean ret_val = ChannelManager_claim_funds(&this_arg_conv, payment_preimage_ref); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_clone(uint32_t orig) { + LDKStaticPaymentOutputDescriptor orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKStaticPaymentOutputDescriptor ret_var = StaticPaymentOutputDescriptor_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_ChannelManager_get_our_node_id(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ChannelManager_get_our_node_id(&this_arg_conv).compressed_form, 33); +int8_tArray __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_write(uint32_t obj) { + LDKStaticPaymentOutputDescriptor obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = StaticPaymentOutputDescriptor_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_create_inbound_payment(uint32_t this_arg, uint32_t min_value_msat, int32_t invoice_expiry_delta_secs) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - void* min_value_msat_ptr = (void*)(((uint64_t)min_value_msat) & ~1); - CHECK_ACCESS(min_value_msat_ptr); - LDKCOption_u64Z min_value_msat_conv = *(LDKCOption_u64Z*)(min_value_msat_ptr); - min_value_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)min_value_msat) & ~1)); - LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ"); - *ret_conv = ChannelManager_create_inbound_payment(&this_arg_conv, min_value_msat_conv, invoice_expiry_delta_secs); +uint32_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ"); + *ret_conv = StaticPaymentOutputDescriptor_read(ser_ref); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_create_inbound_payment_legacy(uint32_t this_arg, uint32_t min_value_msat, int32_t invoice_expiry_delta_secs) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - void* min_value_msat_ptr = (void*)(((uint64_t)min_value_msat) & ~1); - CHECK_ACCESS(min_value_msat_ptr); - LDKCOption_u64Z min_value_msat_conv = *(LDKCOption_u64Z*)(min_value_msat_ptr); - min_value_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)min_value_msat) & ~1)); - LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ"); - *ret_conv = ChannelManager_create_inbound_payment_legacy(&this_arg_conv, min_value_msat_conv, invoice_expiry_delta_secs); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKSpendableOutputDescriptor this_ptr_conv = *(LDKSpendableOutputDescriptor*)(this_ptr_ptr); + FREE((void*)this_ptr); + SpendableOutputDescriptor_free(this_ptr_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_create_inbound_payment_for_hash(uint32_t this_arg, int8_tArray payment_hash, uint32_t min_value_msat, int32_t invoice_expiry_delta_secs) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKThirtyTwoBytes payment_hash_ref; - CHECK(*((uint32_t*)payment_hash) == 32); - memcpy(payment_hash_ref.data, (uint8_t*)(payment_hash + 4), 32); - void* min_value_msat_ptr = (void*)(((uint64_t)min_value_msat) & ~1); - CHECK_ACCESS(min_value_msat_ptr); - LDKCOption_u64Z min_value_msat_conv = *(LDKCOption_u64Z*)(min_value_msat_ptr); - min_value_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)min_value_msat) & ~1)); - LDKCResult_PaymentSecretNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretNoneZ), "LDKCResult_PaymentSecretNoneZ"); - *ret_conv = ChannelManager_create_inbound_payment_for_hash(&this_arg_conv, payment_hash_ref, min_value_msat_conv, invoice_expiry_delta_secs); - return (uint64_t)ret_conv; +static inline uint64_t SpendableOutputDescriptor_clone_ptr(LDKSpendableOutputDescriptor *NONNULL_PTR arg) { + LDKSpendableOutputDescriptor *ret_copy = MALLOC(sizeof(LDKSpendableOutputDescriptor), "LDKSpendableOutputDescriptor"); + *ret_copy = SpendableOutputDescriptor_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_clone_ptr(uint32_t arg) { + LDKSpendableOutputDescriptor* arg_conv = (LDKSpendableOutputDescriptor*)arg; + int64_t ret_val = SpendableOutputDescriptor_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_create_inbound_payment_for_hash_legacy(uint32_t this_arg, int8_tArray payment_hash, uint32_t min_value_msat, int32_t invoice_expiry_delta_secs) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKThirtyTwoBytes payment_hash_ref; - CHECK(*((uint32_t*)payment_hash) == 32); - memcpy(payment_hash_ref.data, (uint8_t*)(payment_hash + 4), 32); - void* min_value_msat_ptr = (void*)(((uint64_t)min_value_msat) & ~1); - CHECK_ACCESS(min_value_msat_ptr); - LDKCOption_u64Z min_value_msat_conv = *(LDKCOption_u64Z*)(min_value_msat_ptr); - min_value_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)min_value_msat) & ~1)); - LDKCResult_PaymentSecretAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretAPIErrorZ), "LDKCResult_PaymentSecretAPIErrorZ"); - *ret_conv = ChannelManager_create_inbound_payment_for_hash_legacy(&this_arg_conv, payment_hash_ref, min_value_msat_conv, invoice_expiry_delta_secs); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_clone(uint32_t orig) { + LDKSpendableOutputDescriptor* orig_conv = (LDKSpendableOutputDescriptor*)orig; + LDKSpendableOutputDescriptor *ret_copy = MALLOC(sizeof(LDKSpendableOutputDescriptor), "LDKSpendableOutputDescriptor"); + *ret_copy = SpendableOutputDescriptor_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_get_payment_preimage(uint32_t this_arg, int8_tArray payment_hash, int8_tArray payment_secret) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKThirtyTwoBytes payment_hash_ref; - CHECK(*((uint32_t*)payment_hash) == 32); - memcpy(payment_hash_ref.data, (uint8_t*)(payment_hash + 4), 32); - LDKThirtyTwoBytes payment_secret_ref; - CHECK(*((uint32_t*)payment_secret) == 32); - memcpy(payment_secret_ref.data, (uint8_t*)(payment_secret + 4), 32); - LDKCResult_PaymentPreimageAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentPreimageAPIErrorZ), "LDKCResult_PaymentPreimageAPIErrorZ"); - *ret_conv = ChannelManager_get_payment_preimage(&this_arg_conv, payment_hash_ref, payment_secret_ref); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_static_output(uint32_t outpoint, uint32_t output) { + LDKOutPoint outpoint_conv; + outpoint_conv.inner = (void*)(outpoint & (~1)); + outpoint_conv.is_owned = (outpoint & 1) || (outpoint == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(outpoint_conv); + outpoint_conv = OutPoint_clone(&outpoint_conv); + void* output_ptr = (void*)(((uint64_t)output) & ~1); + CHECK_ACCESS(output_ptr); + LDKTxOut output_conv = *(LDKTxOut*)(output_ptr); + output_conv = TxOut_clone((LDKTxOut*)(((uint64_t)output) & ~1)); + LDKSpendableOutputDescriptor *ret_copy = MALLOC(sizeof(LDKSpendableOutputDescriptor), "LDKSpendableOutputDescriptor"); + *ret_copy = SpendableOutputDescriptor_static_output(outpoint_conv, output_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_as_MessageSendEventsProvider(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKMessageSendEventsProvider* ret_ret = MALLOC(sizeof(LDKMessageSendEventsProvider), "LDKMessageSendEventsProvider"); - *ret_ret = ChannelManager_as_MessageSendEventsProvider(&this_arg_conv); - return (uint64_t)ret_ret; +uint32_t __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_delayed_payment_output(uint32_t a) { + LDKDelayedPaymentOutputDescriptor a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = (a & 1) || (a == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + a_conv = DelayedPaymentOutputDescriptor_clone(&a_conv); + LDKSpendableOutputDescriptor *ret_copy = MALLOC(sizeof(LDKSpendableOutputDescriptor), "LDKSpendableOutputDescriptor"); + *ret_copy = SpendableOutputDescriptor_delayed_payment_output(a_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_as_EventsProvider(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKEventsProvider* ret_ret = MALLOC(sizeof(LDKEventsProvider), "LDKEventsProvider"); - *ret_ret = ChannelManager_as_EventsProvider(&this_arg_conv); - return (uint64_t)ret_ret; +uint32_t __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_static_payment_output(uint32_t a) { + LDKStaticPaymentOutputDescriptor a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = (a & 1) || (a == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + a_conv = StaticPaymentOutputDescriptor_clone(&a_conv); + LDKSpendableOutputDescriptor *ret_copy = MALLOC(sizeof(LDKSpendableOutputDescriptor), "LDKSpendableOutputDescriptor"); + *ret_copy = SpendableOutputDescriptor_static_payment_output(a_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_as_Listen(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKListen* ret_ret = MALLOC(sizeof(LDKListen), "LDKListen"); - *ret_ret = ChannelManager_as_Listen(&this_arg_conv); - return (uint64_t)ret_ret; +int8_tArray __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_write(uint32_t obj) { + LDKSpendableOutputDescriptor* obj_conv = (LDKSpendableOutputDescriptor*)obj; + LDKCVec_u8Z ret_var = SpendableOutputDescriptor_write(obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_as_Confirm(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKConfirm* ret_ret = MALLOC(sizeof(LDKConfirm), "LDKConfirm"); - *ret_ret = ChannelManager_as_Confirm(&this_arg_conv); - return (uint64_t)ret_ret; +uint32_t __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_SpendableOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpendableOutputDescriptorDecodeErrorZ), "LDKCResult_SpendableOutputDescriptorDecodeErrorZ"); + *ret_conv = SpendableOutputDescriptor_read(ser_ref); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_BaseSign_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKBaseSign this_ptr_conv = *(LDKBaseSign*)(this_ptr_ptr); + FREE((void*)this_ptr); + BaseSign_free(this_ptr_conv); } -jboolean __attribute__((visibility("default"))) TS_ChannelManager_await_persistable_update_timeout(uint32_t this_arg, int64_t max_wait) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = ChannelManager_await_persistable_update_timeout(&this_arg_conv, max_wait); - return ret_val; +static inline uint64_t Sign_clone_ptr(LDKSign *NONNULL_PTR arg) { + LDKSign* ret_ret = MALLOC(sizeof(LDKSign), "LDKSign"); + *ret_ret = Sign_clone(arg); + return (uint64_t)ret_ret; } - -void __attribute__((visibility("default"))) TS_ChannelManager_await_persistable_update(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - ChannelManager_await_persistable_update(&this_arg_conv); +int64_t __attribute__((visibility("default"))) TS_Sign_clone_ptr(uint32_t arg) { + void* arg_ptr = (void*)(((uint64_t)arg) & ~1); + if (!(arg & 1)) { CHECK_ACCESS(arg_ptr); } + LDKSign* arg_conv = (LDKSign*)arg_ptr; + int64_t ret_val = Sign_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_current_best_block(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKBestBlock ret_var = ChannelManager_current_best_block(&this_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_Sign_clone(uint32_t orig) { + void* orig_ptr = (void*)(((uint64_t)orig) & ~1); + if (!(orig & 1)) { CHECK_ACCESS(orig_ptr); } + LDKSign* orig_conv = (LDKSign*)orig_ptr; + LDKSign* ret_ret = MALLOC(sizeof(LDKSign), "LDKSign"); + *ret_ret = Sign_clone(orig_conv); + return (uint64_t)ret_ret; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_as_ChannelMessageHandler(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKChannelMessageHandler* ret_ret = MALLOC(sizeof(LDKChannelMessageHandler), "LDKChannelMessageHandler"); - *ret_ret = ChannelManager_as_ChannelMessageHandler(&this_arg_conv); - return (uint64_t)ret_ret; +void __attribute__((visibility("default"))) TS_Sign_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKSign this_ptr_conv = *(LDKSign*)(this_ptr_ptr); + FREE((void*)this_ptr); + Sign_free(this_ptr_conv); } -int8_tArray __attribute__((visibility("default"))) TS_ChannelManager_write(uint32_t obj) { - LDKChannelManager obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ChannelManager_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +void __attribute__((visibility("default"))) TS_KeysInterface_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKKeysInterface this_ptr_conv = *(LDKKeysInterface*)(this_ptr_ptr); + FREE((void*)this_ptr); + KeysInterface_free(this_ptr_conv); } -void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_free(uint32_t this_obj) { - LDKChannelManagerReadArgs this_obj_conv; +void __attribute__((visibility("default"))) TS_InMemorySigner_free(uint32_t this_obj) { + LDKInMemorySigner this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelManagerReadArgs_free(this_obj_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_get_keys_manager(uint32_t this_ptr) { - LDKChannelManagerReadArgs this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - // WARNING: This object doesn't live past this scope, needs clone! - uint64_t ret_ret = ((uint64_t)ChannelManagerReadArgs_get_keys_manager(&this_ptr_conv)) | 1; - return ret_ret; -} - -void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_set_keys_manager(uint32_t this_ptr, uint32_t val) { - LDKChannelManagerReadArgs this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKKeysInterface val_conv = *(LDKKeysInterface*)(val_ptr); - ChannelManagerReadArgs_set_keys_manager(&this_ptr_conv, val_conv); + InMemorySigner_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_get_fee_estimator(uint32_t this_ptr) { - LDKChannelManagerReadArgs this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_get_funding_key(uint32_t this_ptr) { + LDKInMemorySigner this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - // WARNING: This object doesn't live past this scope, needs clone! - uint64_t ret_ret = ((uint64_t)ChannelManagerReadArgs_get_fee_estimator(&this_ptr_conv)) | 1; - return ret_ret; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *InMemorySigner_get_funding_key(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_set_fee_estimator(uint32_t this_ptr, uint32_t val) { - LDKChannelManagerReadArgs this_ptr_conv; +void __attribute__((visibility("default"))) TS_InMemorySigner_set_funding_key(uint32_t this_ptr, int8_tArray val) { + LDKInMemorySigner this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKFeeEstimator val_conv = *(LDKFeeEstimator*)(val_ptr); - ChannelManagerReadArgs_set_fee_estimator(&this_ptr_conv, val_conv); + LDKSecretKey val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.bytes, val->elems, 32); + InMemorySigner_set_funding_key(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_get_chain_monitor(uint32_t this_ptr) { - LDKChannelManagerReadArgs this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_get_revocation_base_key(uint32_t this_ptr) { + LDKInMemorySigner this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - // WARNING: This object doesn't live past this scope, needs clone! - uint64_t ret_ret = ((uint64_t)ChannelManagerReadArgs_get_chain_monitor(&this_ptr_conv)) | 1; - return ret_ret; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *InMemorySigner_get_revocation_base_key(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_set_chain_monitor(uint32_t this_ptr, uint32_t val) { - LDKChannelManagerReadArgs this_ptr_conv; +void __attribute__((visibility("default"))) TS_InMemorySigner_set_revocation_base_key(uint32_t this_ptr, int8_tArray val) { + LDKInMemorySigner this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKWatch val_conv = *(LDKWatch*)(val_ptr); - ChannelManagerReadArgs_set_chain_monitor(&this_ptr_conv, val_conv); + LDKSecretKey val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.bytes, val->elems, 32); + InMemorySigner_set_revocation_base_key(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_get_tx_broadcaster(uint32_t this_ptr) { - LDKChannelManagerReadArgs this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_get_payment_key(uint32_t this_ptr) { + LDKInMemorySigner this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - // WARNING: This object doesn't live past this scope, needs clone! - uint64_t ret_ret = ((uint64_t)ChannelManagerReadArgs_get_tx_broadcaster(&this_ptr_conv)) | 1; - return ret_ret; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *InMemorySigner_get_payment_key(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_set_tx_broadcaster(uint32_t this_ptr, uint32_t val) { - LDKChannelManagerReadArgs this_ptr_conv; +void __attribute__((visibility("default"))) TS_InMemorySigner_set_payment_key(uint32_t this_ptr, int8_tArray val) { + LDKInMemorySigner this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKBroadcasterInterface val_conv = *(LDKBroadcasterInterface*)(val_ptr); - ChannelManagerReadArgs_set_tx_broadcaster(&this_ptr_conv, val_conv); + LDKSecretKey val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.bytes, val->elems, 32); + InMemorySigner_set_payment_key(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_get_logger(uint32_t this_ptr) { - LDKChannelManagerReadArgs this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_get_delayed_payment_base_key(uint32_t this_ptr) { + LDKInMemorySigner this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - // WARNING: This object doesn't live past this scope, needs clone! - uint64_t ret_ret = ((uint64_t)ChannelManagerReadArgs_get_logger(&this_ptr_conv)) | 1; - return ret_ret; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *InMemorySigner_get_delayed_payment_base_key(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_set_logger(uint32_t this_ptr, uint32_t val) { - LDKChannelManagerReadArgs this_ptr_conv; +void __attribute__((visibility("default"))) TS_InMemorySigner_set_delayed_payment_base_key(uint32_t this_ptr, int8_tArray val) { + LDKInMemorySigner this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKLogger val_conv = *(LDKLogger*)(val_ptr); - ChannelManagerReadArgs_set_logger(&this_ptr_conv, val_conv); + LDKSecretKey val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.bytes, val->elems, 32); + InMemorySigner_set_delayed_payment_base_key(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_get_default_config(uint32_t this_ptr) { - LDKChannelManagerReadArgs this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_get_htlc_base_key(uint32_t this_ptr) { + LDKInMemorySigner this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKUserConfig ret_var = ChannelManagerReadArgs_get_default_config(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *InMemorySigner_get_htlc_base_key(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_set_default_config(uint32_t this_ptr, uint32_t val) { - LDKChannelManagerReadArgs this_ptr_conv; +void __attribute__((visibility("default"))) TS_InMemorySigner_set_htlc_base_key(uint32_t this_ptr, int8_tArray val) { + LDKInMemorySigner this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKUserConfig val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = UserConfig_clone(&val_conv); - ChannelManagerReadArgs_set_default_config(&this_ptr_conv, val_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_new(uint32_t keys_manager, uint32_t fee_estimator, uint32_t chain_monitor, uint32_t tx_broadcaster, uint32_t logger, uint32_t default_config, uint32_tArray channel_monitors) { - void* keys_manager_ptr = (void*)(((uint64_t)keys_manager) & ~1); - CHECK_ACCESS(keys_manager_ptr); - LDKKeysInterface keys_manager_conv = *(LDKKeysInterface*)(keys_manager_ptr); - void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); - CHECK_ACCESS(fee_estimator_ptr); - LDKFeeEstimator fee_estimator_conv = *(LDKFeeEstimator*)(fee_estimator_ptr); - void* chain_monitor_ptr = (void*)(((uint64_t)chain_monitor) & ~1); - CHECK_ACCESS(chain_monitor_ptr); - LDKWatch chain_monitor_conv = *(LDKWatch*)(chain_monitor_ptr); - void* tx_broadcaster_ptr = (void*)(((uint64_t)tx_broadcaster) & ~1); - CHECK_ACCESS(tx_broadcaster_ptr); - LDKBroadcasterInterface tx_broadcaster_conv = *(LDKBroadcasterInterface*)(tx_broadcaster_ptr); - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - LDKUserConfig default_config_conv; - default_config_conv.inner = (void*)(default_config & (~1)); - default_config_conv.is_owned = (default_config & 1) || (default_config == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(default_config_conv); - default_config_conv = UserConfig_clone(&default_config_conv); - LDKCVec_ChannelMonitorZ channel_monitors_constr; - channel_monitors_constr.datalen = *((uint32_t*)channel_monitors); - if (channel_monitors_constr.datalen > 0) - channel_monitors_constr.data = MALLOC(channel_monitors_constr.datalen * sizeof(LDKChannelMonitor), "LDKCVec_ChannelMonitorZ Elements"); - else - channel_monitors_constr.data = NULL; - uint32_t* channel_monitors_vals = (uint32_t*)(channel_monitors + 4); - for (size_t q = 0; q < channel_monitors_constr.datalen; q++) { - uint32_t channel_monitors_conv_16 = channel_monitors_vals[q]; - LDKChannelMonitor channel_monitors_conv_16_conv; - channel_monitors_conv_16_conv.inner = (void*)(channel_monitors_conv_16 & (~1)); - channel_monitors_conv_16_conv.is_owned = (channel_monitors_conv_16 & 1) || (channel_monitors_conv_16 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_monitors_conv_16_conv); - channel_monitors_constr.data[q] = channel_monitors_conv_16_conv; - } - LDKChannelManagerReadArgs ret_var = ChannelManagerReadArgs_new(keys_manager_conv, fee_estimator_conv, chain_monitor_conv, tx_broadcaster_conv, logger_conv, default_config_conv, channel_monitors_constr); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + LDKSecretKey val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.bytes, val->elems, 32); + InMemorySigner_set_htlc_base_key(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelManagerZ_read(int8_tArray ser, uint32_t arg) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKChannelManagerReadArgs arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = (arg & 1) || (arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - // Warning: we need a move here but no clone is available for LDKChannelManagerReadArgs - LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ"); - *ret_conv = C2Tuple_BlockHashChannelManagerZ_read(ser_ref, arg_conv); - return (uint64_t)ret_conv; +int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_get_commitment_seed(uint32_t this_ptr) { + LDKInMemorySigner this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *InMemorySigner_get_commitment_seed(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_DecodeError_free(uint32_t this_obj) { - LDKDecodeError this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - DecodeError_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_InMemorySigner_set_commitment_seed(uint32_t this_ptr, int8_tArray val) { + LDKInMemorySigner this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + InMemorySigner_set_commitment_seed(&this_ptr_conv, val_ref); } -static inline uint64_t DecodeError_clone_ptr(LDKDecodeError *NONNULL_PTR arg) { - LDKDecodeError ret_var = DecodeError_clone(arg); +static inline uint64_t InMemorySigner_clone_ptr(LDKInMemorySigner *NONNULL_PTR arg) { + LDKInMemorySigner ret_var = InMemorySigner_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -22494,21 +20059,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_DecodeError_clone_ptr(uint32_t arg) { - LDKDecodeError arg_conv; +int64_t __attribute__((visibility("default"))) TS_InMemorySigner_clone_ptr(uint32_t arg) { + LDKInMemorySigner arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = DecodeError_clone_ptr(&arg_conv); + int64_t ret_val = InMemorySigner_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_DecodeError_clone(uint32_t orig) { - LDKDecodeError orig_conv; +uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_clone(uint32_t orig) { + LDKInMemorySigner orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKDecodeError ret_var = DecodeError_clone(&orig_conv); + LDKInMemorySigner ret_var = InMemorySigner_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -22520,20 +20085,46 @@ uint32_t __attribute__((visibility("default"))) TS_DecodeError_clone(uint32_t o return ret_ref; } -void __attribute__((visibility("default"))) TS_Init_free(uint32_t this_obj) { - LDKInit this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - Init_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_new(int8_tArray funding_key, int8_tArray revocation_base_key, int8_tArray payment_key, int8_tArray delayed_payment_base_key, int8_tArray htlc_base_key, int8_tArray commitment_seed, int64_t channel_value_satoshis, int8_tArray channel_keys_id) { + LDKSecretKey funding_key_ref; + CHECK(funding_key->arr_len == 32); + memcpy(funding_key_ref.bytes, funding_key->elems, 32); + LDKSecretKey revocation_base_key_ref; + CHECK(revocation_base_key->arr_len == 32); + memcpy(revocation_base_key_ref.bytes, revocation_base_key->elems, 32); + LDKSecretKey payment_key_ref; + CHECK(payment_key->arr_len == 32); + memcpy(payment_key_ref.bytes, payment_key->elems, 32); + LDKSecretKey delayed_payment_base_key_ref; + CHECK(delayed_payment_base_key->arr_len == 32); + memcpy(delayed_payment_base_key_ref.bytes, delayed_payment_base_key->elems, 32); + LDKSecretKey htlc_base_key_ref; + CHECK(htlc_base_key->arr_len == 32); + memcpy(htlc_base_key_ref.bytes, htlc_base_key->elems, 32); + LDKThirtyTwoBytes commitment_seed_ref; + CHECK(commitment_seed->arr_len == 32); + memcpy(commitment_seed_ref.data, commitment_seed->elems, 32); + LDKThirtyTwoBytes channel_keys_id_ref; + CHECK(channel_keys_id->arr_len == 32); + memcpy(channel_keys_id_ref.data, channel_keys_id->elems, 32); + LDKInMemorySigner ret_var = InMemorySigner_new(funding_key_ref, revocation_base_key_ref, payment_key_ref, delayed_payment_base_key_ref, htlc_base_key_ref, commitment_seed_ref, channel_value_satoshis, channel_keys_id_ref); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_Init_get_features(uint32_t this_ptr) { - LDKInit this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKInitFeatures ret_var = Init_get_features(&this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_counterparty_pubkeys(uint32_t this_arg) { + LDKInMemorySigner this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKChannelPublicKeys ret_var = InMemorySigner_counterparty_pubkeys(&this_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -22545,26 +20136,39 @@ uint32_t __attribute__((visibility("default"))) TS_Init_get_features(uint32_t t return ret_ref; } -void __attribute__((visibility("default"))) TS_Init_set_features(uint32_t this_ptr, uint32_t val) { - LDKInit this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKInitFeatures val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = InitFeatures_clone(&val_conv); - Init_set_features(&this_ptr_conv, val_conv); +int16_t __attribute__((visibility("default"))) TS_InMemorySigner_counterparty_selected_contest_delay(uint32_t this_arg) { + LDKInMemorySigner this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int16_t ret_val = InMemorySigner_counterparty_selected_contest_delay(&this_arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Init_new(uint32_t features_arg) { - LDKInitFeatures features_arg_conv; - features_arg_conv.inner = (void*)(features_arg & (~1)); - features_arg_conv.is_owned = (features_arg & 1) || (features_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(features_arg_conv); - features_arg_conv = InitFeatures_clone(&features_arg_conv); - LDKInit ret_var = Init_new(features_arg_conv); +int16_t __attribute__((visibility("default"))) TS_InMemorySigner_holder_selected_contest_delay(uint32_t this_arg) { + LDKInMemorySigner this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int16_t ret_val = InMemorySigner_holder_selected_contest_delay(&this_arg_conv); + return ret_val; +} + +jboolean __attribute__((visibility("default"))) TS_InMemorySigner_is_outbound(uint32_t this_arg) { + LDKInMemorySigner this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + jboolean ret_val = InMemorySigner_is_outbound(&this_arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_funding_outpoint(uint32_t this_arg) { + LDKInMemorySigner this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKOutPoint ret_var = InMemorySigner_funding_outpoint(&this_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -22576,33 +20180,146 @@ uint32_t __attribute__((visibility("default"))) TS_Init_new(uint32_t features_a return ret_ref; } -static inline uint64_t Init_clone_ptr(LDKInit *NONNULL_PTR arg) { - LDKInit ret_var = Init_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} +uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_get_channel_parameters(uint32_t this_arg) { + LDKInMemorySigner this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKChannelTransactionParameters ret_var = InMemorySigner_get_channel_parameters(&this_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_Init_clone_ptr(uint32_t arg) { - LDKInit arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = Init_clone_ptr(&arg_conv); + +jboolean __attribute__((visibility("default"))) TS_InMemorySigner_opt_anchors(uint32_t this_arg) { + LDKInMemorySigner this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + jboolean ret_val = InMemorySigner_opt_anchors(&this_arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Init_clone(uint32_t orig) { - LDKInit orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKInit ret_var = Init_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_sign_counterparty_payment_input(uint32_t this_arg, int8_tArray spend_tx, int64_t input_idx, uint32_t descriptor) { + LDKInMemorySigner this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKTransaction spend_tx_ref; + spend_tx_ref.datalen = spend_tx->arr_len; + spend_tx_ref.data = MALLOC(spend_tx_ref.datalen, "LDKTransaction Bytes"); + memcpy(spend_tx_ref.data, spend_tx->elems, spend_tx_ref.datalen); + spend_tx_ref.data_is_owned = true; + LDKStaticPaymentOutputDescriptor descriptor_conv; + descriptor_conv.inner = (void*)(descriptor & (~1)); + descriptor_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(descriptor_conv); + LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ"); + *ret_conv = InMemorySigner_sign_counterparty_payment_input(&this_arg_conv, spend_tx_ref, input_idx, &descriptor_conv); + return (uint64_t)ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_sign_dynamic_p2wsh_input(uint32_t this_arg, int8_tArray spend_tx, int64_t input_idx, uint32_t descriptor) { + LDKInMemorySigner this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKTransaction spend_tx_ref; + spend_tx_ref.datalen = spend_tx->arr_len; + spend_tx_ref.data = MALLOC(spend_tx_ref.datalen, "LDKTransaction Bytes"); + memcpy(spend_tx_ref.data, spend_tx->elems, spend_tx_ref.datalen); + spend_tx_ref.data_is_owned = true; + LDKDelayedPaymentOutputDescriptor descriptor_conv; + descriptor_conv.inner = (void*)(descriptor & (~1)); + descriptor_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(descriptor_conv); + LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ"); + *ret_conv = InMemorySigner_sign_dynamic_p2wsh_input(&this_arg_conv, spend_tx_ref, input_idx, &descriptor_conv); + return (uint64_t)ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_as_BaseSign(uint32_t this_arg) { + LDKInMemorySigner this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKBaseSign* ret_ret = MALLOC(sizeof(LDKBaseSign), "LDKBaseSign"); + *ret_ret = InMemorySigner_as_BaseSign(&this_arg_conv); + return (uint64_t)ret_ret; +} + +uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_as_Sign(uint32_t this_arg) { + LDKInMemorySigner this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKSign* ret_ret = MALLOC(sizeof(LDKSign), "LDKSign"); + *ret_ret = InMemorySigner_as_Sign(&this_arg_conv); + return (uint64_t)ret_ret; +} + +int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_write(uint32_t obj) { + LDKInMemorySigner obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = InMemorySigner_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_InMemorySignerDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InMemorySignerDecodeErrorZ), "LDKCResult_InMemorySignerDecodeErrorZ"); + *ret_conv = InMemorySigner_read(ser_ref); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_KeysManager_free(uint32_t this_obj) { + LDKKeysManager this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + KeysManager_free(this_obj_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_KeysManager_new(int8_tArray seed, int64_t starting_time_secs, int32_t starting_time_nanos) { + unsigned char seed_arr[32]; + CHECK(seed->arr_len == 32); + memcpy(seed_arr, seed->elems, 32); + unsigned char (*seed_ref)[32] = &seed_arr; + LDKKeysManager ret_var = KeysManager_new(seed_ref, starting_time_secs, starting_time_nanos); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_KeysManager_derive_channel_keys(uint32_t this_arg, int64_t channel_value_satoshis, int8_tArray params) { + LDKKeysManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char params_arr[32]; + CHECK(params->arr_len == 32); + memcpy(params_arr, params->elems, 32); + unsigned char (*params_ref)[32] = ¶ms_arr; + LDKInMemorySigner ret_var = KeysManager_derive_channel_keys(&this_arg_conv, channel_value_satoshis, params_ref); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -22614,61 +20331,132 @@ uint32_t __attribute__((visibility("default"))) TS_Init_clone(uint32_t orig) { return ret_ref; } -void __attribute__((visibility("default"))) TS_ErrorMessage_free(uint32_t this_obj) { - LDKErrorMessage this_obj_conv; +uint32_t __attribute__((visibility("default"))) TS_KeysManager_spend_spendable_outputs(uint32_t this_arg, uint32_tArray descriptors, uint32_tArray outputs, int8_tArray change_destination_script, int32_t feerate_sat_per_1000_weight) { + LDKKeysManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKCVec_SpendableOutputDescriptorZ descriptors_constr; + descriptors_constr.datalen = descriptors->arr_len; + if (descriptors_constr.datalen > 0) + descriptors_constr.data = MALLOC(descriptors_constr.datalen * sizeof(LDKSpendableOutputDescriptor), "LDKCVec_SpendableOutputDescriptorZ Elements"); + else + descriptors_constr.data = NULL; + uint32_t* descriptors_vals = descriptors->elems; + for (size_t b = 0; b < descriptors_constr.datalen; b++) { + uint32_t descriptors_conv_27 = descriptors_vals[b]; + void* descriptors_conv_27_ptr = (void*)(((uint64_t)descriptors_conv_27) & ~1); + CHECK_ACCESS(descriptors_conv_27_ptr); + LDKSpendableOutputDescriptor descriptors_conv_27_conv = *(LDKSpendableOutputDescriptor*)(descriptors_conv_27_ptr); + descriptors_conv_27_conv = SpendableOutputDescriptor_clone((LDKSpendableOutputDescriptor*)(((uint64_t)descriptors_conv_27) & ~1)); + descriptors_constr.data[b] = descriptors_conv_27_conv; + } + LDKCVec_TxOutZ outputs_constr; + outputs_constr.datalen = outputs->arr_len; + if (outputs_constr.datalen > 0) + outputs_constr.data = MALLOC(outputs_constr.datalen * sizeof(LDKTxOut), "LDKCVec_TxOutZ Elements"); + else + outputs_constr.data = NULL; + uint32_t* outputs_vals = outputs->elems; + for (size_t h = 0; h < outputs_constr.datalen; h++) { + uint32_t outputs_conv_7 = outputs_vals[h]; + void* outputs_conv_7_ptr = (void*)(((uint64_t)outputs_conv_7) & ~1); + CHECK_ACCESS(outputs_conv_7_ptr); + LDKTxOut outputs_conv_7_conv = *(LDKTxOut*)(outputs_conv_7_ptr); + outputs_conv_7_conv = TxOut_clone((LDKTxOut*)(((uint64_t)outputs_conv_7) & ~1)); + outputs_constr.data[h] = outputs_conv_7_conv; + } + LDKCVec_u8Z change_destination_script_ref; + change_destination_script_ref.datalen = change_destination_script->arr_len; + change_destination_script_ref.data = MALLOC(change_destination_script_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(change_destination_script_ref.data, change_destination_script->elems, change_destination_script_ref.datalen); + LDKCResult_TransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TransactionNoneZ), "LDKCResult_TransactionNoneZ"); + *ret_conv = KeysManager_spend_spendable_outputs(&this_arg_conv, descriptors_constr, outputs_constr, change_destination_script_ref, feerate_sat_per_1000_weight); + return (uint64_t)ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_KeysManager_as_KeysInterface(uint32_t this_arg) { + LDKKeysManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKKeysInterface* ret_ret = MALLOC(sizeof(LDKKeysInterface), "LDKKeysInterface"); + *ret_ret = KeysManager_as_KeysInterface(&this_arg_conv); + return (uint64_t)ret_ret; +} + +void __attribute__((visibility("default"))) TS_ChannelManager_free(uint32_t this_obj) { + LDKChannelManager this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ErrorMessage_free(this_obj_conv); + ChannelManager_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_ErrorMessage_get_channel_id(uint32_t this_ptr) { - LDKErrorMessage this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChainParameters_free(uint32_t this_obj) { + LDKChainParameters this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + ChainParameters_free(this_obj_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_ChainParameters_get_network(uint32_t this_ptr) { + LDKChainParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *ErrorMessage_get_channel_id(&this_ptr_conv), 32); - return ret_arr; + uint32_t ret_conv = LDKNetwork_to_js(ChainParameters_get_network(&this_ptr_conv)); + return ret_conv; } -void __attribute__((visibility("default"))) TS_ErrorMessage_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKErrorMessage this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChainParameters_set_network(uint32_t this_ptr, uint32_t val) { + LDKChainParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - ErrorMessage_set_channel_id(&this_ptr_conv, val_ref); + LDKNetwork val_conv = LDKNetwork_from_js(val); + ChainParameters_set_network(&this_ptr_conv, val_conv); } -jstring __attribute__((visibility("default"))) TS_ErrorMessage_get_data(uint32_t this_ptr) { - LDKErrorMessage this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChainParameters_get_best_block(uint32_t this_ptr) { + LDKChainParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKStr ret_str = ErrorMessage_get_data(&this_ptr_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; + LDKBestBlock ret_var = ChainParameters_get_best_block(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_ErrorMessage_set_data(uint32_t this_ptr, jstring val) { - LDKErrorMessage this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChainParameters_set_best_block(uint32_t this_ptr, uint32_t val) { + LDKChainParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKStr val_conv = str_ref_to_owned_c(val); - ErrorMessage_set_data(&this_ptr_conv, val_conv); + LDKBestBlock val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = BestBlock_clone(&val_conv); + ChainParameters_set_best_block(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_ErrorMessage_new(int8_tArray channel_id_arg, jstring data_arg) { - LDKThirtyTwoBytes channel_id_arg_ref; - CHECK(*((uint32_t*)channel_id_arg) == 32); - memcpy(channel_id_arg_ref.data, (uint8_t*)(channel_id_arg + 4), 32); - LDKStr data_arg_conv = str_ref_to_owned_c(data_arg); - LDKErrorMessage ret_var = ErrorMessage_new(channel_id_arg_ref, data_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_ChainParameters_new(uint32_t network_arg, uint32_t best_block_arg) { + LDKNetwork network_arg_conv = LDKNetwork_from_js(network_arg); + LDKBestBlock best_block_arg_conv; + best_block_arg_conv.inner = (void*)(best_block_arg & (~1)); + best_block_arg_conv.is_owned = (best_block_arg & 1) || (best_block_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(best_block_arg_conv); + best_block_arg_conv = BestBlock_clone(&best_block_arg_conv); + LDKChainParameters ret_var = ChainParameters_new(network_arg_conv, best_block_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -22680,8 +20468,8 @@ uint32_t __attribute__((visibility("default"))) TS_ErrorMessage_new(int8_tArray return ret_ref; } -static inline uint64_t ErrorMessage_clone_ptr(LDKErrorMessage *NONNULL_PTR arg) { - LDKErrorMessage ret_var = ErrorMessage_clone(arg); +static inline uint64_t ChainParameters_clone_ptr(LDKChainParameters *NONNULL_PTR arg) { + LDKChainParameters ret_var = ChainParameters_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -22692,21 +20480,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ErrorMessage_clone_ptr(uint32_t arg) { - LDKErrorMessage arg_conv; +int64_t __attribute__((visibility("default"))) TS_ChainParameters_clone_ptr(uint32_t arg) { + LDKChainParameters arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ErrorMessage_clone_ptr(&arg_conv); + int64_t ret_val = ChainParameters_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ErrorMessage_clone(uint32_t orig) { - LDKErrorMessage orig_conv; +uint32_t __attribute__((visibility("default"))) TS_ChainParameters_clone(uint32_t orig) { + LDKChainParameters orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKErrorMessage ret_var = ErrorMessage_clone(&orig_conv); + LDKChainParameters ret_var = ChainParameters_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -22718,126 +20506,67 @@ uint32_t __attribute__((visibility("default"))) TS_ErrorMessage_clone(uint32_t return ret_ref; } -void __attribute__((visibility("default"))) TS_Ping_free(uint32_t this_obj) { - LDKPing this_obj_conv; +void __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_free(uint32_t this_obj) { + LDKCounterpartyForwardingInfo this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - Ping_free(this_obj_conv); + CounterpartyForwardingInfo_free(this_obj_conv); } -int16_t __attribute__((visibility("default"))) TS_Ping_get_ponglen(uint32_t this_ptr) { - LDKPing this_ptr_conv; +int32_t __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_get_fee_base_msat(uint32_t this_ptr) { + LDKCounterpartyForwardingInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = Ping_get_ponglen(&this_ptr_conv); + int32_t ret_val = CounterpartyForwardingInfo_get_fee_base_msat(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_Ping_set_ponglen(uint32_t this_ptr, int16_t val) { - LDKPing this_ptr_conv; +void __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_set_fee_base_msat(uint32_t this_ptr, int32_t val) { + LDKCounterpartyForwardingInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - Ping_set_ponglen(&this_ptr_conv, val); + CounterpartyForwardingInfo_set_fee_base_msat(&this_ptr_conv, val); } -int16_t __attribute__((visibility("default"))) TS_Ping_get_byteslen(uint32_t this_ptr) { - LDKPing this_ptr_conv; +int32_t __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_get_fee_proportional_millionths(uint32_t this_ptr) { + LDKCounterpartyForwardingInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = Ping_get_byteslen(&this_ptr_conv); + int32_t ret_val = CounterpartyForwardingInfo_get_fee_proportional_millionths(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_Ping_set_byteslen(uint32_t this_ptr, int16_t val) { - LDKPing this_ptr_conv; +void __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_set_fee_proportional_millionths(uint32_t this_ptr, int32_t val) { + LDKCounterpartyForwardingInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - Ping_set_byteslen(&this_ptr_conv, val); -} - -uint32_t __attribute__((visibility("default"))) TS_Ping_new(int16_t ponglen_arg, int16_t byteslen_arg) { - LDKPing ret_var = Ping_new(ponglen_arg, byteslen_arg); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; -} - -static inline uint64_t Ping_clone_ptr(LDKPing *NONNULL_PTR arg) { - LDKPing ret_var = Ping_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_Ping_clone_ptr(uint32_t arg) { - LDKPing arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = Ping_clone_ptr(&arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_Ping_clone(uint32_t orig) { - LDKPing orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKPing ret_var = Ping_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; -} - -void __attribute__((visibility("default"))) TS_Pong_free(uint32_t this_obj) { - LDKPong this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - Pong_free(this_obj_conv); + CounterpartyForwardingInfo_set_fee_proportional_millionths(&this_ptr_conv, val); } -int16_t __attribute__((visibility("default"))) TS_Pong_get_byteslen(uint32_t this_ptr) { - LDKPong this_ptr_conv; +int16_t __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_get_cltv_expiry_delta(uint32_t this_ptr) { + LDKCounterpartyForwardingInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = Pong_get_byteslen(&this_ptr_conv); + int16_t ret_val = CounterpartyForwardingInfo_get_cltv_expiry_delta(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_Pong_set_byteslen(uint32_t this_ptr, int16_t val) { - LDKPong this_ptr_conv; +void __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_set_cltv_expiry_delta(uint32_t this_ptr, int16_t val) { + LDKCounterpartyForwardingInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - Pong_set_byteslen(&this_ptr_conv, val); + CounterpartyForwardingInfo_set_cltv_expiry_delta(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_Pong_new(int16_t byteslen_arg) { - LDKPong ret_var = Pong_new(byteslen_arg); +uint32_t __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_new(int32_t fee_base_msat_arg, int32_t fee_proportional_millionths_arg, int16_t cltv_expiry_delta_arg) { + LDKCounterpartyForwardingInfo ret_var = CounterpartyForwardingInfo_new(fee_base_msat_arg, fee_proportional_millionths_arg, cltv_expiry_delta_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -22849,8 +20578,8 @@ uint32_t __attribute__((visibility("default"))) TS_Pong_new(int16_t byteslen_ar return ret_ref; } -static inline uint64_t Pong_clone_ptr(LDKPong *NONNULL_PTR arg) { - LDKPong ret_var = Pong_clone(arg); +static inline uint64_t CounterpartyForwardingInfo_clone_ptr(LDKCounterpartyForwardingInfo *NONNULL_PTR arg) { + LDKCounterpartyForwardingInfo ret_var = CounterpartyForwardingInfo_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -22860,22 +20589,22 @@ if (ret_var.is_owned) { ret_ref |= 1; } return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_Pong_clone_ptr(uint32_t arg) { - LDKPong arg_conv; +} +int64_t __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_clone_ptr(uint32_t arg) { + LDKCounterpartyForwardingInfo arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = Pong_clone_ptr(&arg_conv); + int64_t ret_val = CounterpartyForwardingInfo_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Pong_clone(uint32_t orig) { - LDKPong orig_conv; +uint32_t __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_clone(uint32_t orig) { + LDKCounterpartyForwardingInfo orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKPong ret_var = Pong_clone(&orig_conv); + LDKCounterpartyForwardingInfo ret_var = CounterpartyForwardingInfo_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -22887,940 +20616,1176 @@ uint32_t __attribute__((visibility("default"))) TS_Pong_clone(uint32_t orig) { return ret_ref; } -void __attribute__((visibility("default"))) TS_OpenChannel_free(uint32_t this_obj) { - LDKOpenChannel this_obj_conv; +void __attribute__((visibility("default"))) TS_ChannelCounterparty_free(uint32_t this_obj) { + LDKChannelCounterparty this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - OpenChannel_free(this_obj_conv); -} - -int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_chain_hash(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *OpenChannel_get_chain_hash(&this_ptr_conv), 32); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_OpenChannel_set_chain_hash(uint32_t this_ptr, int8_tArray val) { - LDKOpenChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - OpenChannel_set_chain_hash(&this_ptr_conv, val_ref); + ChannelCounterparty_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_temporary_channel_id(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_ChannelCounterparty_get_node_id(uint32_t this_ptr) { + LDKChannelCounterparty this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *OpenChannel_get_temporary_channel_id(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, ChannelCounterparty_get_node_id(&this_ptr_conv).compressed_form, 33); return ret_arr; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_temporary_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelCounterparty_set_node_id(uint32_t this_ptr, int8_tArray val) { + LDKChannelCounterparty this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - OpenChannel_set_temporary_channel_id(&this_ptr_conv, val_ref); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + ChannelCounterparty_set_node_id(&this_ptr_conv, val_ref); } -int64_t __attribute__((visibility("default"))) TS_OpenChannel_get_funding_satoshis(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelCounterparty_get_features(uint32_t this_ptr) { + LDKChannelCounterparty this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = OpenChannel_get_funding_satoshis(&this_ptr_conv); - return ret_val; + LDKInitFeatures ret_var = ChannelCounterparty_get_features(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_funding_satoshis(uint32_t this_ptr, int64_t val) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelCounterparty_set_features(uint32_t this_ptr, uint32_t val) { + LDKChannelCounterparty this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - OpenChannel_set_funding_satoshis(&this_ptr_conv, val); + LDKInitFeatures val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = InitFeatures_clone(&val_conv); + ChannelCounterparty_set_features(&this_ptr_conv, val_conv); } -int64_t __attribute__((visibility("default"))) TS_OpenChannel_get_push_msat(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelCounterparty_get_unspendable_punishment_reserve(uint32_t this_ptr) { + LDKChannelCounterparty this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = OpenChannel_get_push_msat(&this_ptr_conv); + int64_t ret_val = ChannelCounterparty_get_unspendable_punishment_reserve(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_push_msat(uint32_t this_ptr, int64_t val) { - LDKOpenChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - OpenChannel_set_push_msat(&this_ptr_conv, val); -} - -int64_t __attribute__((visibility("default"))) TS_OpenChannel_get_dust_limit_satoshis(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelCounterparty_set_unspendable_punishment_reserve(uint32_t this_ptr, int64_t val) { + LDKChannelCounterparty this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = OpenChannel_get_dust_limit_satoshis(&this_ptr_conv); - return ret_val; + ChannelCounterparty_set_unspendable_punishment_reserve(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_OpenChannel_set_dust_limit_satoshis(uint32_t this_ptr, int64_t val) { - LDKOpenChannel this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelCounterparty_get_forwarding_info(uint32_t this_ptr) { + LDKChannelCounterparty this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - OpenChannel_set_dust_limit_satoshis(&this_ptr_conv, val); + LDKCounterpartyForwardingInfo ret_var = ChannelCounterparty_get_forwarding_info(&this_ptr_conv); + uint64_t ret_ref = 0; + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + } + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_OpenChannel_get_max_htlc_value_in_flight_msat(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelCounterparty_set_forwarding_info(uint32_t this_ptr, uint32_t val) { + LDKChannelCounterparty this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = OpenChannel_get_max_htlc_value_in_flight_msat(&this_ptr_conv); - return ret_val; + LDKCounterpartyForwardingInfo val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = CounterpartyForwardingInfo_clone(&val_conv); + ChannelCounterparty_set_forwarding_info(&this_ptr_conv, val_conv); } -void __attribute__((visibility("default"))) TS_OpenChannel_set_max_htlc_value_in_flight_msat(uint32_t this_ptr, int64_t val) { - LDKOpenChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - OpenChannel_set_max_htlc_value_in_flight_msat(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_ChannelCounterparty_new(int8_tArray node_id_arg, uint32_t features_arg, int64_t unspendable_punishment_reserve_arg, uint32_t forwarding_info_arg) { + LDKPublicKey node_id_arg_ref; + CHECK(node_id_arg->arr_len == 33); + memcpy(node_id_arg_ref.compressed_form, node_id_arg->elems, 33); + LDKInitFeatures features_arg_conv; + features_arg_conv.inner = (void*)(features_arg & (~1)); + features_arg_conv.is_owned = (features_arg & 1) || (features_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(features_arg_conv); + features_arg_conv = InitFeatures_clone(&features_arg_conv); + LDKCounterpartyForwardingInfo forwarding_info_arg_conv; + forwarding_info_arg_conv.inner = (void*)(forwarding_info_arg & (~1)); + forwarding_info_arg_conv.is_owned = (forwarding_info_arg & 1) || (forwarding_info_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(forwarding_info_arg_conv); + forwarding_info_arg_conv = CounterpartyForwardingInfo_clone(&forwarding_info_arg_conv); + LDKChannelCounterparty ret_var = ChannelCounterparty_new(node_id_arg_ref, features_arg_conv, unspendable_punishment_reserve_arg, forwarding_info_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_OpenChannel_get_channel_reserve_satoshis(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = OpenChannel_get_channel_reserve_satoshis(&this_ptr_conv); - return ret_val; +static inline uint64_t ChannelCounterparty_clone_ptr(LDKChannelCounterparty *NONNULL_PTR arg) { + LDKChannelCounterparty ret_var = ChannelCounterparty_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -void __attribute__((visibility("default"))) TS_OpenChannel_set_channel_reserve_satoshis(uint32_t this_ptr, int64_t val) { - LDKOpenChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - OpenChannel_set_channel_reserve_satoshis(&this_ptr_conv, val); + return ret_ref; } - -int64_t __attribute__((visibility("default"))) TS_OpenChannel_get_htlc_minimum_msat(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = OpenChannel_get_htlc_minimum_msat(&this_ptr_conv); +int64_t __attribute__((visibility("default"))) TS_ChannelCounterparty_clone_ptr(uint32_t arg) { + LDKChannelCounterparty arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ChannelCounterparty_clone_ptr(&arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_htlc_minimum_msat(uint32_t this_ptr, int64_t val) { - LDKOpenChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - OpenChannel_set_htlc_minimum_msat(&this_ptr_conv, val); -} - -int32_t __attribute__((visibility("default"))) TS_OpenChannel_get_feerate_per_kw(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = OpenChannel_get_feerate_per_kw(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_ChannelCounterparty_clone(uint32_t orig) { + LDKChannelCounterparty orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKChannelCounterparty ret_var = ChannelCounterparty_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_feerate_per_kw(uint32_t this_ptr, int32_t val) { - LDKOpenChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - OpenChannel_set_feerate_per_kw(&this_ptr_conv, val); +void __attribute__((visibility("default"))) TS_ChannelDetails_free(uint32_t this_obj) { + LDKChannelDetails this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + ChannelDetails_free(this_obj_conv); } -int16_t __attribute__((visibility("default"))) TS_OpenChannel_get_to_self_delay(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_ChannelDetails_get_channel_id(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = OpenChannel_get_to_self_delay(&this_ptr_conv); - return ret_val; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *ChannelDetails_get_channel_id(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_to_self_delay(uint32_t this_ptr, int16_t val) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - OpenChannel_set_to_self_delay(&this_ptr_conv, val); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + ChannelDetails_set_channel_id(&this_ptr_conv, val_ref); } -int16_t __attribute__((visibility("default"))) TS_OpenChannel_get_max_accepted_htlcs(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_get_counterparty(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = OpenChannel_get_max_accepted_htlcs(&this_ptr_conv); - return ret_val; + LDKChannelCounterparty ret_var = ChannelDetails_get_counterparty(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_max_accepted_htlcs(uint32_t this_ptr, int16_t val) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_counterparty(uint32_t this_ptr, uint32_t val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - OpenChannel_set_max_accepted_htlcs(&this_ptr_conv, val); + LDKChannelCounterparty val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = ChannelCounterparty_clone(&val_conv); + ChannelDetails_set_counterparty(&this_ptr_conv, val_conv); } -int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_funding_pubkey(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_get_funding_txo(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), OpenChannel_get_funding_pubkey(&this_ptr_conv).compressed_form, 33); - return ret_arr; + LDKOutPoint ret_var = ChannelDetails_get_funding_txo(&this_ptr_conv); + uint64_t ret_ref = 0; + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_funding_pubkey(uint32_t this_ptr, int8_tArray val) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_funding_txo(uint32_t this_ptr, uint32_t val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - OpenChannel_set_funding_pubkey(&this_ptr_conv, val_ref); + LDKOutPoint val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = OutPoint_clone(&val_conv); + ChannelDetails_set_funding_txo(&this_ptr_conv, val_conv); } -int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_revocation_basepoint(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_get_short_channel_id(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), OpenChannel_get_revocation_basepoint(&this_ptr_conv).compressed_form, 33); - return ret_arr; + LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); + *ret_copy = ChannelDetails_get_short_channel_id(&this_ptr_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_revocation_basepoint(uint32_t this_ptr, int8_tArray val) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_short_channel_id(uint32_t this_ptr, uint32_t val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - OpenChannel_set_revocation_basepoint(&this_ptr_conv, val_ref); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr); + val_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)val) & ~1)); + ChannelDetails_set_short_channel_id(&this_ptr_conv, val_conv); } -int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_payment_point(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelDetails_get_channel_value_satoshis(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), OpenChannel_get_payment_point(&this_ptr_conv).compressed_form, 33); - return ret_arr; + int64_t ret_val = ChannelDetails_get_channel_value_satoshis(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_payment_point(uint32_t this_ptr, int8_tArray val) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_channel_value_satoshis(uint32_t this_ptr, int64_t val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - OpenChannel_set_payment_point(&this_ptr_conv, val_ref); + ChannelDetails_set_channel_value_satoshis(&this_ptr_conv, val); } -int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_delayed_payment_basepoint(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_get_unspendable_punishment_reserve(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), OpenChannel_get_delayed_payment_basepoint(&this_ptr_conv).compressed_form, 33); - return ret_arr; + LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); + *ret_copy = ChannelDetails_get_unspendable_punishment_reserve(&this_ptr_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_delayed_payment_basepoint(uint32_t this_ptr, int8_tArray val) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_unspendable_punishment_reserve(uint32_t this_ptr, uint32_t val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - OpenChannel_set_delayed_payment_basepoint(&this_ptr_conv, val_ref); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr); + val_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)val) & ~1)); + ChannelDetails_set_unspendable_punishment_reserve(&this_ptr_conv, val_conv); } -int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_htlc_basepoint(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelDetails_get_user_channel_id(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), OpenChannel_get_htlc_basepoint(&this_ptr_conv).compressed_form, 33); - return ret_arr; + int64_t ret_val = ChannelDetails_get_user_channel_id(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_htlc_basepoint(uint32_t this_ptr, int8_tArray val) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_user_channel_id(uint32_t this_ptr, int64_t val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - OpenChannel_set_htlc_basepoint(&this_ptr_conv, val_ref); + ChannelDetails_set_user_channel_id(&this_ptr_conv, val); } -int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_first_per_commitment_point(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelDetails_get_balance_msat(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), OpenChannel_get_first_per_commitment_point(&this_ptr_conv).compressed_form, 33); - return ret_arr; + int64_t ret_val = ChannelDetails_get_balance_msat(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_first_per_commitment_point(uint32_t this_ptr, int8_tArray val) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_balance_msat(uint32_t this_ptr, int64_t val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - OpenChannel_set_first_per_commitment_point(&this_ptr_conv, val_ref); + ChannelDetails_set_balance_msat(&this_ptr_conv, val); } -int8_t __attribute__((visibility("default"))) TS_OpenChannel_get_channel_flags(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelDetails_get_outbound_capacity_msat(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_t ret_val = OpenChannel_get_channel_flags(&this_ptr_conv); + int64_t ret_val = ChannelDetails_get_outbound_capacity_msat(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_channel_flags(uint32_t this_ptr, int8_t val) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_outbound_capacity_msat(uint32_t this_ptr, int64_t val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - OpenChannel_set_channel_flags(&this_ptr_conv, val); + ChannelDetails_set_outbound_capacity_msat(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_OpenChannel_get_channel_type(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelDetails_get_inbound_capacity_msat(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelTypeFeatures ret_var = OpenChannel_get_channel_type(&this_ptr_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } - return ret_ref; + int64_t ret_val = ChannelDetails_get_inbound_capacity_msat(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_channel_type(uint32_t this_ptr, uint32_t val) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_inbound_capacity_msat(uint32_t this_ptr, int64_t val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelTypeFeatures val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = ChannelTypeFeatures_clone(&val_conv); - OpenChannel_set_channel_type(&this_ptr_conv, val_conv); -} - -static inline uint64_t OpenChannel_clone_ptr(LDKOpenChannel *NONNULL_PTR arg) { - LDKOpenChannel ret_var = OpenChannel_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_OpenChannel_clone_ptr(uint32_t arg) { - LDKOpenChannel arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = OpenChannel_clone_ptr(&arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_OpenChannel_clone(uint32_t orig) { - LDKOpenChannel orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKOpenChannel ret_var = OpenChannel_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; -} - -void __attribute__((visibility("default"))) TS_AcceptChannel_free(uint32_t this_obj) { - LDKAcceptChannel this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - AcceptChannel_free(this_obj_conv); + ChannelDetails_set_inbound_capacity_msat(&this_ptr_conv, val); } -int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_temporary_channel_id(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_get_confirmations_required(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *AcceptChannel_get_temporary_channel_id(&this_ptr_conv), 32); - return ret_arr; + LDKCOption_u32Z *ret_copy = MALLOC(sizeof(LDKCOption_u32Z), "LDKCOption_u32Z"); + *ret_copy = ChannelDetails_get_confirmations_required(&this_ptr_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_temporary_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKAcceptChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_confirmations_required(uint32_t this_ptr, uint32_t val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - AcceptChannel_set_temporary_channel_id(&this_ptr_conv, val_ref); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKCOption_u32Z val_conv = *(LDKCOption_u32Z*)(val_ptr); + val_conv = COption_u32Z_clone((LDKCOption_u32Z*)(((uint64_t)val) & ~1)); + ChannelDetails_set_confirmations_required(&this_ptr_conv, val_conv); } -int64_t __attribute__((visibility("default"))) TS_AcceptChannel_get_dust_limit_satoshis(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_get_force_close_spend_delay(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = AcceptChannel_get_dust_limit_satoshis(&this_ptr_conv); - return ret_val; + LDKCOption_u16Z *ret_copy = MALLOC(sizeof(LDKCOption_u16Z), "LDKCOption_u16Z"); + *ret_copy = ChannelDetails_get_force_close_spend_delay(&this_ptr_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_dust_limit_satoshis(uint32_t this_ptr, int64_t val) { - LDKAcceptChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_force_close_spend_delay(uint32_t this_ptr, uint32_t val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - AcceptChannel_set_dust_limit_satoshis(&this_ptr_conv, val); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKCOption_u16Z val_conv = *(LDKCOption_u16Z*)(val_ptr); + val_conv = COption_u16Z_clone((LDKCOption_u16Z*)(((uint64_t)val) & ~1)); + ChannelDetails_set_force_close_spend_delay(&this_ptr_conv, val_conv); } -int64_t __attribute__((visibility("default"))) TS_AcceptChannel_get_max_htlc_value_in_flight_msat(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; +jboolean __attribute__((visibility("default"))) TS_ChannelDetails_get_is_outbound(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = AcceptChannel_get_max_htlc_value_in_flight_msat(&this_ptr_conv); + jboolean ret_val = ChannelDetails_get_is_outbound(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_max_htlc_value_in_flight_msat(uint32_t this_ptr, int64_t val) { - LDKAcceptChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_is_outbound(uint32_t this_ptr, jboolean val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - AcceptChannel_set_max_htlc_value_in_flight_msat(&this_ptr_conv, val); + ChannelDetails_set_is_outbound(&this_ptr_conv, val); } -int64_t __attribute__((visibility("default"))) TS_AcceptChannel_get_channel_reserve_satoshis(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; +jboolean __attribute__((visibility("default"))) TS_ChannelDetails_get_is_funding_locked(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = AcceptChannel_get_channel_reserve_satoshis(&this_ptr_conv); + jboolean ret_val = ChannelDetails_get_is_funding_locked(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_channel_reserve_satoshis(uint32_t this_ptr, int64_t val) { - LDKAcceptChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_is_funding_locked(uint32_t this_ptr, jboolean val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - AcceptChannel_set_channel_reserve_satoshis(&this_ptr_conv, val); + ChannelDetails_set_is_funding_locked(&this_ptr_conv, val); } -int64_t __attribute__((visibility("default"))) TS_AcceptChannel_get_htlc_minimum_msat(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; +jboolean __attribute__((visibility("default"))) TS_ChannelDetails_get_is_usable(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = AcceptChannel_get_htlc_minimum_msat(&this_ptr_conv); + jboolean ret_val = ChannelDetails_get_is_usable(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_htlc_minimum_msat(uint32_t this_ptr, int64_t val) { - LDKAcceptChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_is_usable(uint32_t this_ptr, jboolean val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - AcceptChannel_set_htlc_minimum_msat(&this_ptr_conv, val); + ChannelDetails_set_is_usable(&this_ptr_conv, val); } -int32_t __attribute__((visibility("default"))) TS_AcceptChannel_get_minimum_depth(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; +jboolean __attribute__((visibility("default"))) TS_ChannelDetails_get_is_public(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = AcceptChannel_get_minimum_depth(&this_ptr_conv); + jboolean ret_val = ChannelDetails_get_is_public(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_minimum_depth(uint32_t this_ptr, int32_t val) { - LDKAcceptChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_is_public(uint32_t this_ptr, jboolean val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - AcceptChannel_set_minimum_depth(&this_ptr_conv, val); + ChannelDetails_set_is_public(&this_ptr_conv, val); } -int16_t __attribute__((visibility("default"))) TS_AcceptChannel_get_to_self_delay(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = AcceptChannel_get_to_self_delay(&this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_new(int8_tArray channel_id_arg, uint32_t counterparty_arg, uint32_t funding_txo_arg, uint32_t short_channel_id_arg, int64_t channel_value_satoshis_arg, uint32_t unspendable_punishment_reserve_arg, int64_t user_channel_id_arg, int64_t balance_msat_arg, int64_t outbound_capacity_msat_arg, int64_t inbound_capacity_msat_arg, uint32_t confirmations_required_arg, uint32_t force_close_spend_delay_arg, jboolean is_outbound_arg, jboolean is_funding_locked_arg, jboolean is_usable_arg, jboolean is_public_arg) { + LDKThirtyTwoBytes channel_id_arg_ref; + CHECK(channel_id_arg->arr_len == 32); + memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); + LDKChannelCounterparty counterparty_arg_conv; + counterparty_arg_conv.inner = (void*)(counterparty_arg & (~1)); + counterparty_arg_conv.is_owned = (counterparty_arg & 1) || (counterparty_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(counterparty_arg_conv); + counterparty_arg_conv = ChannelCounterparty_clone(&counterparty_arg_conv); + LDKOutPoint funding_txo_arg_conv; + funding_txo_arg_conv.inner = (void*)(funding_txo_arg & (~1)); + funding_txo_arg_conv.is_owned = (funding_txo_arg & 1) || (funding_txo_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_arg_conv); + funding_txo_arg_conv = OutPoint_clone(&funding_txo_arg_conv); + void* short_channel_id_arg_ptr = (void*)(((uint64_t)short_channel_id_arg) & ~1); + CHECK_ACCESS(short_channel_id_arg_ptr); + LDKCOption_u64Z short_channel_id_arg_conv = *(LDKCOption_u64Z*)(short_channel_id_arg_ptr); + short_channel_id_arg_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)short_channel_id_arg) & ~1)); + void* unspendable_punishment_reserve_arg_ptr = (void*)(((uint64_t)unspendable_punishment_reserve_arg) & ~1); + CHECK_ACCESS(unspendable_punishment_reserve_arg_ptr); + LDKCOption_u64Z unspendable_punishment_reserve_arg_conv = *(LDKCOption_u64Z*)(unspendable_punishment_reserve_arg_ptr); + void* confirmations_required_arg_ptr = (void*)(((uint64_t)confirmations_required_arg) & ~1); + CHECK_ACCESS(confirmations_required_arg_ptr); + LDKCOption_u32Z confirmations_required_arg_conv = *(LDKCOption_u32Z*)(confirmations_required_arg_ptr); + confirmations_required_arg_conv = COption_u32Z_clone((LDKCOption_u32Z*)(((uint64_t)confirmations_required_arg) & ~1)); + void* force_close_spend_delay_arg_ptr = (void*)(((uint64_t)force_close_spend_delay_arg) & ~1); + CHECK_ACCESS(force_close_spend_delay_arg_ptr); + LDKCOption_u16Z force_close_spend_delay_arg_conv = *(LDKCOption_u16Z*)(force_close_spend_delay_arg_ptr); + force_close_spend_delay_arg_conv = COption_u16Z_clone((LDKCOption_u16Z*)(((uint64_t)force_close_spend_delay_arg) & ~1)); + LDKChannelDetails ret_var = ChannelDetails_new(channel_id_arg_ref, counterparty_arg_conv, funding_txo_arg_conv, short_channel_id_arg_conv, channel_value_satoshis_arg, unspendable_punishment_reserve_arg_conv, user_channel_id_arg, balance_msat_arg, outbound_capacity_msat_arg, inbound_capacity_msat_arg, confirmations_required_arg_conv, force_close_spend_delay_arg_conv, is_outbound_arg, is_funding_locked_arg, is_usable_arg, is_public_arg); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +static inline uint64_t ChannelDetails_clone_ptr(LDKChannelDetails *NONNULL_PTR arg) { + LDKChannelDetails ret_var = ChannelDetails_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_ChannelDetails_clone_ptr(uint32_t arg) { + LDKChannelDetails arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ChannelDetails_clone_ptr(&arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_to_self_delay(uint32_t this_ptr, int16_t val) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - AcceptChannel_set_to_self_delay(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_clone(uint32_t orig) { + LDKChannelDetails orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKChannelDetails ret_var = ChannelDetails_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int16_t __attribute__((visibility("default"))) TS_AcceptChannel_get_max_accepted_htlcs(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = AcceptChannel_get_max_accepted_htlcs(&this_ptr_conv); +void __attribute__((visibility("default"))) TS_PaymentSendFailure_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKPaymentSendFailure this_ptr_conv = *(LDKPaymentSendFailure*)(this_ptr_ptr); + FREE((void*)this_ptr); + PaymentSendFailure_free(this_ptr_conv); +} + +static inline uint64_t PaymentSendFailure_clone_ptr(LDKPaymentSendFailure *NONNULL_PTR arg) { + LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); + *ret_copy = PaymentSendFailure_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_PaymentSendFailure_clone_ptr(uint32_t arg) { + LDKPaymentSendFailure* arg_conv = (LDKPaymentSendFailure*)arg; + int64_t ret_val = PaymentSendFailure_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_max_accepted_htlcs(uint32_t this_ptr, int16_t val) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - AcceptChannel_set_max_accepted_htlcs(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_PaymentSendFailure_clone(uint32_t orig) { + LDKPaymentSendFailure* orig_conv = (LDKPaymentSendFailure*)orig; + LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); + *ret_copy = PaymentSendFailure_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_funding_pubkey(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), AcceptChannel_get_funding_pubkey(&this_ptr_conv).compressed_form, 33); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_PaymentSendFailure_parameter_error(uint32_t a) { + void* a_ptr = (void*)(((uint64_t)a) & ~1); + CHECK_ACCESS(a_ptr); + LDKAPIError a_conv = *(LDKAPIError*)(a_ptr); + a_conv = APIError_clone((LDKAPIError*)(((uint64_t)a) & ~1)); + LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); + *ret_copy = PaymentSendFailure_parameter_error(a_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_funding_pubkey(uint32_t this_ptr, int8_tArray val) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - AcceptChannel_set_funding_pubkey(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_PaymentSendFailure_path_parameter_error(uint32_tArray a) { + LDKCVec_CResult_NoneAPIErrorZZ a_constr; + a_constr.datalen = a->arr_len; + if (a_constr.datalen > 0) + a_constr.data = MALLOC(a_constr.datalen * sizeof(LDKCResult_NoneAPIErrorZ), "LDKCVec_CResult_NoneAPIErrorZZ Elements"); + else + a_constr.data = NULL; + uint32_t* a_vals = a->elems; + for (size_t w = 0; w < a_constr.datalen; w++) { + uint32_t a_conv_22 = a_vals[w]; + void* a_conv_22_ptr = (void*)(((uint64_t)a_conv_22) & ~1); + CHECK_ACCESS(a_conv_22_ptr); + LDKCResult_NoneAPIErrorZ a_conv_22_conv = *(LDKCResult_NoneAPIErrorZ*)(a_conv_22_ptr); + a_conv_22_conv = CResult_NoneAPIErrorZ_clone((LDKCResult_NoneAPIErrorZ*)(((uint64_t)a_conv_22) & ~1)); + a_constr.data[w] = a_conv_22_conv; + } + LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); + *ret_copy = PaymentSendFailure_path_parameter_error(a_constr); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_revocation_basepoint(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), AcceptChannel_get_revocation_basepoint(&this_ptr_conv).compressed_form, 33); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_PaymentSendFailure_all_failed_retry_safe(uint32_tArray a) { + LDKCVec_APIErrorZ a_constr; + a_constr.datalen = a->arr_len; + if (a_constr.datalen > 0) + a_constr.data = MALLOC(a_constr.datalen * sizeof(LDKAPIError), "LDKCVec_APIErrorZ Elements"); + else + a_constr.data = NULL; + uint32_t* a_vals = a->elems; + for (size_t k = 0; k < a_constr.datalen; k++) { + uint32_t a_conv_10 = a_vals[k]; + void* a_conv_10_ptr = (void*)(((uint64_t)a_conv_10) & ~1); + CHECK_ACCESS(a_conv_10_ptr); + LDKAPIError a_conv_10_conv = *(LDKAPIError*)(a_conv_10_ptr); + a_conv_10_conv = APIError_clone((LDKAPIError*)(((uint64_t)a_conv_10) & ~1)); + a_constr.data[k] = a_conv_10_conv; + } + LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); + *ret_copy = PaymentSendFailure_all_failed_retry_safe(a_constr); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_revocation_basepoint(uint32_t this_ptr, int8_tArray val) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - AcceptChannel_set_revocation_basepoint(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_PaymentSendFailure_partial_failure(uint32_tArray results, uint32_t failed_paths_retry, int8_tArray payment_id) { + LDKCVec_CResult_NoneAPIErrorZZ results_constr; + results_constr.datalen = results->arr_len; + if (results_constr.datalen > 0) + results_constr.data = MALLOC(results_constr.datalen * sizeof(LDKCResult_NoneAPIErrorZ), "LDKCVec_CResult_NoneAPIErrorZZ Elements"); + else + results_constr.data = NULL; + uint32_t* results_vals = results->elems; + for (size_t w = 0; w < results_constr.datalen; w++) { + uint32_t results_conv_22 = results_vals[w]; + void* results_conv_22_ptr = (void*)(((uint64_t)results_conv_22) & ~1); + CHECK_ACCESS(results_conv_22_ptr); + LDKCResult_NoneAPIErrorZ results_conv_22_conv = *(LDKCResult_NoneAPIErrorZ*)(results_conv_22_ptr); + results_constr.data[w] = results_conv_22_conv; + } + LDKRouteParameters failed_paths_retry_conv; + failed_paths_retry_conv.inner = (void*)(failed_paths_retry & (~1)); + failed_paths_retry_conv.is_owned = (failed_paths_retry & 1) || (failed_paths_retry == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(failed_paths_retry_conv); + failed_paths_retry_conv = RouteParameters_clone(&failed_paths_retry_conv); + LDKThirtyTwoBytes payment_id_ref; + CHECK(payment_id->arr_len == 32); + memcpy(payment_id_ref.data, payment_id->elems, 32); + LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); + *ret_copy = PaymentSendFailure_partial_failure(results_constr, failed_paths_retry_conv, payment_id_ref); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_payment_point(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), AcceptChannel_get_payment_point(&this_ptr_conv).compressed_form, 33); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_new(uint32_t fee_est, uint32_t chain_monitor, uint32_t tx_broadcaster, uint32_t logger, uint32_t keys_manager, uint32_t config, uint32_t params) { + void* fee_est_ptr = (void*)(((uint64_t)fee_est) & ~1); + CHECK_ACCESS(fee_est_ptr); + LDKFeeEstimator fee_est_conv = *(LDKFeeEstimator*)(fee_est_ptr); + void* chain_monitor_ptr = (void*)(((uint64_t)chain_monitor) & ~1); + CHECK_ACCESS(chain_monitor_ptr); + LDKWatch chain_monitor_conv = *(LDKWatch*)(chain_monitor_ptr); + void* tx_broadcaster_ptr = (void*)(((uint64_t)tx_broadcaster) & ~1); + CHECK_ACCESS(tx_broadcaster_ptr); + LDKBroadcasterInterface tx_broadcaster_conv = *(LDKBroadcasterInterface*)(tx_broadcaster_ptr); + void* logger_ptr = (void*)(((uint64_t)logger) & ~1); + CHECK_ACCESS(logger_ptr); + LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); + void* keys_manager_ptr = (void*)(((uint64_t)keys_manager) & ~1); + CHECK_ACCESS(keys_manager_ptr); + LDKKeysInterface keys_manager_conv = *(LDKKeysInterface*)(keys_manager_ptr); + LDKUserConfig config_conv; + config_conv.inner = (void*)(config & (~1)); + config_conv.is_owned = (config & 1) || (config == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(config_conv); + config_conv = UserConfig_clone(&config_conv); + LDKChainParameters params_conv; + params_conv.inner = (void*)(params & (~1)); + params_conv.is_owned = (params & 1) || (params == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(params_conv); + params_conv = ChainParameters_clone(¶ms_conv); + LDKChannelManager ret_var = ChannelManager_new(fee_est_conv, chain_monitor_conv, tx_broadcaster_conv, logger_conv, keys_manager_conv, config_conv, params_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_payment_point(uint32_t this_ptr, int8_tArray val) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - AcceptChannel_set_payment_point(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_get_current_default_configuration(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKUserConfig ret_var = ChannelManager_get_current_default_configuration(&this_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_delayed_payment_basepoint(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), AcceptChannel_get_delayed_payment_basepoint(&this_ptr_conv).compressed_form, 33); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_create_channel(uint32_t this_arg, int8_tArray their_network_key, int64_t channel_value_satoshis, int64_t push_msat, int64_t user_channel_id, uint32_t override_config) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKPublicKey their_network_key_ref; + CHECK(their_network_key->arr_len == 33); + memcpy(their_network_key_ref.compressed_form, their_network_key->elems, 33); + LDKUserConfig override_config_conv; + override_config_conv.inner = (void*)(override_config & (~1)); + override_config_conv.is_owned = (override_config & 1) || (override_config == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(override_config_conv); + override_config_conv = UserConfig_clone(&override_config_conv); + LDKCResult__u832APIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult__u832APIErrorZ), "LDKCResult__u832APIErrorZ"); + *ret_conv = ChannelManager_create_channel(&this_arg_conv, their_network_key_ref, channel_value_satoshis, push_msat, user_channel_id, override_config_conv); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_delayed_payment_basepoint(uint32_t this_ptr, int8_tArray val) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - AcceptChannel_set_delayed_payment_basepoint(&this_ptr_conv, val_ref); +uint32_tArray __attribute__((visibility("default"))) TS_ChannelManager_list_channels(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKCVec_ChannelDetailsZ ret_var = ChannelManager_list_channels(&this_arg_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t q = 0; q < ret_var.datalen; q++) { + LDKChannelDetails ret_conv_16_var = ret_var.data[q]; + uint64_t ret_conv_16_ref = 0; + CHECK((((uint64_t)ret_conv_16_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_conv_16_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_16_var); + ret_conv_16_ref = (uint64_t)ret_conv_16_var.inner; + if (ret_conv_16_var.is_owned) { + ret_conv_16_ref |= 1; + } + ret_arr_ptr[q] = ret_conv_16_ref; + } + + FREE(ret_var.data); + return ret_arr; } -int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_htlc_basepoint(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), AcceptChannel_get_htlc_basepoint(&this_ptr_conv).compressed_form, 33); +uint32_tArray __attribute__((visibility("default"))) TS_ChannelManager_list_usable_channels(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKCVec_ChannelDetailsZ ret_var = ChannelManager_list_usable_channels(&this_arg_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t q = 0; q < ret_var.datalen; q++) { + LDKChannelDetails ret_conv_16_var = ret_var.data[q]; + uint64_t ret_conv_16_ref = 0; + CHECK((((uint64_t)ret_conv_16_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_conv_16_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_16_var); + ret_conv_16_ref = (uint64_t)ret_conv_16_var.inner; + if (ret_conv_16_var.is_owned) { + ret_conv_16_ref |= 1; + } + ret_arr_ptr[q] = ret_conv_16_ref; + } + + FREE(ret_var.data); return ret_arr; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_htlc_basepoint(uint32_t this_ptr, int8_tArray val) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - AcceptChannel_set_htlc_basepoint(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_close_channel(uint32_t this_arg, int8_tArray channel_id) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char channel_id_arr[32]; + CHECK(channel_id->arr_len == 32); + memcpy(channel_id_arr, channel_id->elems, 32); + unsigned char (*channel_id_ref)[32] = &channel_id_arr; + LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); + *ret_conv = ChannelManager_close_channel(&this_arg_conv, channel_id_ref); + return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_first_per_commitment_point(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), AcceptChannel_get_first_per_commitment_point(&this_ptr_conv).compressed_form, 33); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_close_channel_with_target_feerate(uint32_t this_arg, int8_tArray channel_id, int32_t target_feerate_sats_per_1000_weight) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char channel_id_arr[32]; + CHECK(channel_id->arr_len == 32); + memcpy(channel_id_arr, channel_id->elems, 32); + unsigned char (*channel_id_ref)[32] = &channel_id_arr; + LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); + *ret_conv = ChannelManager_close_channel_with_target_feerate(&this_arg_conv, channel_id_ref, target_feerate_sats_per_1000_weight); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_first_per_commitment_point(uint32_t this_ptr, int8_tArray val) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - AcceptChannel_set_first_per_commitment_point(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_force_close_channel(uint32_t this_arg, int8_tArray channel_id) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char channel_id_arr[32]; + CHECK(channel_id->arr_len == 32); + memcpy(channel_id_arr, channel_id->elems, 32); + unsigned char (*channel_id_ref)[32] = &channel_id_arr; + LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); + *ret_conv = ChannelManager_force_close_channel(&this_arg_conv, channel_id_ref); + return (uint64_t)ret_conv; } -static inline uint64_t AcceptChannel_clone_ptr(LDKAcceptChannel *NONNULL_PTR arg) { - LDKAcceptChannel ret_var = AcceptChannel_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; +void __attribute__((visibility("default"))) TS_ChannelManager_force_close_all_channels(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + ChannelManager_force_close_all_channels(&this_arg_conv); } -int64_t __attribute__((visibility("default"))) TS_AcceptChannel_clone_ptr(uint32_t arg) { - LDKAcceptChannel arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = AcceptChannel_clone_ptr(&arg_conv); - return ret_val; + +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_send_payment(uint32_t this_arg, uint32_t route, int8_tArray payment_hash, int8_tArray payment_secret) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKRoute route_conv; + route_conv.inner = (void*)(route & (~1)); + route_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(route_conv); + LDKThirtyTwoBytes payment_hash_ref; + CHECK(payment_hash->arr_len == 32); + memcpy(payment_hash_ref.data, payment_hash->elems, 32); + LDKThirtyTwoBytes payment_secret_ref; + CHECK(payment_secret->arr_len == 32); + memcpy(payment_secret_ref.data, payment_secret->elems, 32); + LDKCResult_PaymentIdPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentSendFailureZ), "LDKCResult_PaymentIdPaymentSendFailureZ"); + *ret_conv = ChannelManager_send_payment(&this_arg_conv, &route_conv, payment_hash_ref, payment_secret_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_AcceptChannel_clone(uint32_t orig) { - LDKAcceptChannel orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKAcceptChannel ret_var = AcceptChannel_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_retry_payment(uint32_t this_arg, uint32_t route, int8_tArray payment_id) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKRoute route_conv; + route_conv.inner = (void*)(route & (~1)); + route_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(route_conv); + LDKThirtyTwoBytes payment_id_ref; + CHECK(payment_id->arr_len == 32); + memcpy(payment_id_ref.data, payment_id->elems, 32); + LDKCResult_NonePaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentSendFailureZ), "LDKCResult_NonePaymentSendFailureZ"); + *ret_conv = ChannelManager_retry_payment(&this_arg_conv, &route_conv, payment_id_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_FundingCreated_free(uint32_t this_obj) { - LDKFundingCreated this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - FundingCreated_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_ChannelManager_abandon_payment(uint32_t this_arg, int8_tArray payment_id) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKThirtyTwoBytes payment_id_ref; + CHECK(payment_id->arr_len == 32); + memcpy(payment_id_ref.data, payment_id->elems, 32); + ChannelManager_abandon_payment(&this_arg_conv, payment_id_ref); } -int8_tArray __attribute__((visibility("default"))) TS_FundingCreated_get_temporary_channel_id(uint32_t this_ptr) { - LDKFundingCreated this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *FundingCreated_get_temporary_channel_id(&this_ptr_conv), 32); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_send_spontaneous_payment(uint32_t this_arg, uint32_t route, int8_tArray payment_preimage) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKRoute route_conv; + route_conv.inner = (void*)(route & (~1)); + route_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(route_conv); + LDKThirtyTwoBytes payment_preimage_ref; + CHECK(payment_preimage->arr_len == 32); + memcpy(payment_preimage_ref.data, payment_preimage->elems, 32); + LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ), "LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ"); + *ret_conv = ChannelManager_send_spontaneous_payment(&this_arg_conv, &route_conv, payment_preimage_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_FundingCreated_set_temporary_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKFundingCreated this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - FundingCreated_set_temporary_channel_id(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_funding_transaction_generated(uint32_t this_arg, int8_tArray temporary_channel_id, int8_tArray funding_transaction) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char temporary_channel_id_arr[32]; + CHECK(temporary_channel_id->arr_len == 32); + memcpy(temporary_channel_id_arr, temporary_channel_id->elems, 32); + unsigned char (*temporary_channel_id_ref)[32] = &temporary_channel_id_arr; + LDKTransaction funding_transaction_ref; + funding_transaction_ref.datalen = funding_transaction->arr_len; + funding_transaction_ref.data = MALLOC(funding_transaction_ref.datalen, "LDKTransaction Bytes"); + memcpy(funding_transaction_ref.data, funding_transaction->elems, funding_transaction_ref.datalen); + funding_transaction_ref.data_is_owned = true; + LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); + *ret_conv = ChannelManager_funding_transaction_generated(&this_arg_conv, temporary_channel_id_ref, funding_transaction_ref); + return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_FundingCreated_get_funding_txid(uint32_t this_ptr) { - LDKFundingCreated this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *FundingCreated_get_funding_txid(&this_ptr_conv), 32); - return ret_arr; +void __attribute__((visibility("default"))) TS_ChannelManager_broadcast_node_announcement(uint32_t this_arg, int8_tArray rgb, int8_tArray alias, uint32_tArray addresses) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKThreeBytes rgb_ref; + CHECK(rgb->arr_len == 3); + memcpy(rgb_ref.data, rgb->elems, 3); + LDKThirtyTwoBytes alias_ref; + CHECK(alias->arr_len == 32); + memcpy(alias_ref.data, alias->elems, 32); + LDKCVec_NetAddressZ addresses_constr; + addresses_constr.datalen = addresses->arr_len; + if (addresses_constr.datalen > 0) + addresses_constr.data = MALLOC(addresses_constr.datalen * sizeof(LDKNetAddress), "LDKCVec_NetAddressZ Elements"); + else + addresses_constr.data = NULL; + uint32_t* addresses_vals = addresses->elems; + for (size_t m = 0; m < addresses_constr.datalen; m++) { + uint32_t addresses_conv_12 = addresses_vals[m]; + void* addresses_conv_12_ptr = (void*)(((uint64_t)addresses_conv_12) & ~1); + CHECK_ACCESS(addresses_conv_12_ptr); + LDKNetAddress addresses_conv_12_conv = *(LDKNetAddress*)(addresses_conv_12_ptr); + addresses_constr.data[m] = addresses_conv_12_conv; + } + ChannelManager_broadcast_node_announcement(&this_arg_conv, rgb_ref, alias_ref, addresses_constr); } -void __attribute__((visibility("default"))) TS_FundingCreated_set_funding_txid(uint32_t this_ptr, int8_tArray val) { - LDKFundingCreated this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - FundingCreated_set_funding_txid(&this_ptr_conv, val_ref); +void __attribute__((visibility("default"))) TS_ChannelManager_process_pending_htlc_forwards(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + ChannelManager_process_pending_htlc_forwards(&this_arg_conv); } -int16_t __attribute__((visibility("default"))) TS_FundingCreated_get_funding_output_index(uint32_t this_ptr) { - LDKFundingCreated this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = FundingCreated_get_funding_output_index(&this_ptr_conv); +void __attribute__((visibility("default"))) TS_ChannelManager_timer_tick_occurred(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + ChannelManager_timer_tick_occurred(&this_arg_conv); +} + +jboolean __attribute__((visibility("default"))) TS_ChannelManager_fail_htlc_backwards(uint32_t this_arg, int8_tArray payment_hash) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char payment_hash_arr[32]; + CHECK(payment_hash->arr_len == 32); + memcpy(payment_hash_arr, payment_hash->elems, 32); + unsigned char (*payment_hash_ref)[32] = &payment_hash_arr; + jboolean ret_val = ChannelManager_fail_htlc_backwards(&this_arg_conv, payment_hash_ref); return ret_val; } -void __attribute__((visibility("default"))) TS_FundingCreated_set_funding_output_index(uint32_t this_ptr, int16_t val) { - LDKFundingCreated this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - FundingCreated_set_funding_output_index(&this_ptr_conv, val); +jboolean __attribute__((visibility("default"))) TS_ChannelManager_claim_funds(uint32_t this_arg, int8_tArray payment_preimage) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKThirtyTwoBytes payment_preimage_ref; + CHECK(payment_preimage->arr_len == 32); + memcpy(payment_preimage_ref.data, payment_preimage->elems, 32); + jboolean ret_val = ChannelManager_claim_funds(&this_arg_conv, payment_preimage_ref); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_FundingCreated_get_signature(uint32_t this_ptr) { - LDKFundingCreated this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), FundingCreated_get_signature(&this_ptr_conv).compact_form, 64); +int8_tArray __attribute__((visibility("default"))) TS_ChannelManager_get_our_node_id(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, ChannelManager_get_our_node_id(&this_arg_conv).compressed_form, 33); return ret_arr; } -void __attribute__((visibility("default"))) TS_FundingCreated_set_signature(uint32_t this_ptr, int8_tArray val) { - LDKFundingCreated this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSignature val_ref; - CHECK(*((uint32_t*)val) == 64); - memcpy(val_ref.compact_form, (uint8_t*)(val + 4), 64); - FundingCreated_set_signature(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_create_inbound_payment(uint32_t this_arg, uint32_t min_value_msat, int32_t invoice_expiry_delta_secs) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + void* min_value_msat_ptr = (void*)(((uint64_t)min_value_msat) & ~1); + CHECK_ACCESS(min_value_msat_ptr); + LDKCOption_u64Z min_value_msat_conv = *(LDKCOption_u64Z*)(min_value_msat_ptr); + min_value_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)min_value_msat) & ~1)); + LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ"); + *ret_conv = ChannelManager_create_inbound_payment(&this_arg_conv, min_value_msat_conv, invoice_expiry_delta_secs); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_FundingCreated_new(int8_tArray temporary_channel_id_arg, int8_tArray funding_txid_arg, int16_t funding_output_index_arg, int8_tArray signature_arg) { - LDKThirtyTwoBytes temporary_channel_id_arg_ref; - CHECK(*((uint32_t*)temporary_channel_id_arg) == 32); - memcpy(temporary_channel_id_arg_ref.data, (uint8_t*)(temporary_channel_id_arg + 4), 32); - LDKThirtyTwoBytes funding_txid_arg_ref; - CHECK(*((uint32_t*)funding_txid_arg) == 32); - memcpy(funding_txid_arg_ref.data, (uint8_t*)(funding_txid_arg + 4), 32); - LDKSignature signature_arg_ref; - CHECK(*((uint32_t*)signature_arg) == 64); - memcpy(signature_arg_ref.compact_form, (uint8_t*)(signature_arg + 4), 64); - LDKFundingCreated ret_var = FundingCreated_new(temporary_channel_id_arg_ref, funding_txid_arg_ref, funding_output_index_arg, signature_arg_ref); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_create_inbound_payment_legacy(uint32_t this_arg, uint32_t min_value_msat, int32_t invoice_expiry_delta_secs) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + void* min_value_msat_ptr = (void*)(((uint64_t)min_value_msat) & ~1); + CHECK_ACCESS(min_value_msat_ptr); + LDKCOption_u64Z min_value_msat_conv = *(LDKCOption_u64Z*)(min_value_msat_ptr); + min_value_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)min_value_msat) & ~1)); + LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ"); + *ret_conv = ChannelManager_create_inbound_payment_legacy(&this_arg_conv, min_value_msat_conv, invoice_expiry_delta_secs); + return (uint64_t)ret_conv; } -static inline uint64_t FundingCreated_clone_ptr(LDKFundingCreated *NONNULL_PTR arg) { - LDKFundingCreated ret_var = FundingCreated_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_create_inbound_payment_for_hash(uint32_t this_arg, int8_tArray payment_hash, uint32_t min_value_msat, int32_t invoice_expiry_delta_secs) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKThirtyTwoBytes payment_hash_ref; + CHECK(payment_hash->arr_len == 32); + memcpy(payment_hash_ref.data, payment_hash->elems, 32); + void* min_value_msat_ptr = (void*)(((uint64_t)min_value_msat) & ~1); + CHECK_ACCESS(min_value_msat_ptr); + LDKCOption_u64Z min_value_msat_conv = *(LDKCOption_u64Z*)(min_value_msat_ptr); + min_value_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)min_value_msat) & ~1)); + LDKCResult_PaymentSecretNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretNoneZ), "LDKCResult_PaymentSecretNoneZ"); + *ret_conv = ChannelManager_create_inbound_payment_for_hash(&this_arg_conv, payment_hash_ref, min_value_msat_conv, invoice_expiry_delta_secs); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_FundingCreated_clone_ptr(uint32_t arg) { - LDKFundingCreated arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = FundingCreated_clone_ptr(&arg_conv); - return ret_val; + +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_create_inbound_payment_for_hash_legacy(uint32_t this_arg, int8_tArray payment_hash, uint32_t min_value_msat, int32_t invoice_expiry_delta_secs) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKThirtyTwoBytes payment_hash_ref; + CHECK(payment_hash->arr_len == 32); + memcpy(payment_hash_ref.data, payment_hash->elems, 32); + void* min_value_msat_ptr = (void*)(((uint64_t)min_value_msat) & ~1); + CHECK_ACCESS(min_value_msat_ptr); + LDKCOption_u64Z min_value_msat_conv = *(LDKCOption_u64Z*)(min_value_msat_ptr); + min_value_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)min_value_msat) & ~1)); + LDKCResult_PaymentSecretAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretAPIErrorZ), "LDKCResult_PaymentSecretAPIErrorZ"); + *ret_conv = ChannelManager_create_inbound_payment_for_hash_legacy(&this_arg_conv, payment_hash_ref, min_value_msat_conv, invoice_expiry_delta_secs); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_FundingCreated_clone(uint32_t orig) { - LDKFundingCreated orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKFundingCreated ret_var = FundingCreated_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_get_payment_preimage(uint32_t this_arg, int8_tArray payment_hash, int8_tArray payment_secret) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKThirtyTwoBytes payment_hash_ref; + CHECK(payment_hash->arr_len == 32); + memcpy(payment_hash_ref.data, payment_hash->elems, 32); + LDKThirtyTwoBytes payment_secret_ref; + CHECK(payment_secret->arr_len == 32); + memcpy(payment_secret_ref.data, payment_secret->elems, 32); + LDKCResult_PaymentPreimageAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentPreimageAPIErrorZ), "LDKCResult_PaymentPreimageAPIErrorZ"); + *ret_conv = ChannelManager_get_payment_preimage(&this_arg_conv, payment_hash_ref, payment_secret_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_FundingSigned_free(uint32_t this_obj) { - LDKFundingSigned this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - FundingSigned_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_as_MessageSendEventsProvider(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKMessageSendEventsProvider* ret_ret = MALLOC(sizeof(LDKMessageSendEventsProvider), "LDKMessageSendEventsProvider"); + *ret_ret = ChannelManager_as_MessageSendEventsProvider(&this_arg_conv); + return (uint64_t)ret_ret; } -int8_tArray __attribute__((visibility("default"))) TS_FundingSigned_get_channel_id(uint32_t this_ptr) { - LDKFundingSigned this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *FundingSigned_get_channel_id(&this_ptr_conv), 32); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_as_EventsProvider(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKEventsProvider* ret_ret = MALLOC(sizeof(LDKEventsProvider), "LDKEventsProvider"); + *ret_ret = ChannelManager_as_EventsProvider(&this_arg_conv); + return (uint64_t)ret_ret; } -void __attribute__((visibility("default"))) TS_FundingSigned_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKFundingSigned this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - FundingSigned_set_channel_id(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_as_Listen(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKListen* ret_ret = MALLOC(sizeof(LDKListen), "LDKListen"); + *ret_ret = ChannelManager_as_Listen(&this_arg_conv); + return (uint64_t)ret_ret; } -int8_tArray __attribute__((visibility("default"))) TS_FundingSigned_get_signature(uint32_t this_ptr) { - LDKFundingSigned this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), FundingSigned_get_signature(&this_ptr_conv).compact_form, 64); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_as_Confirm(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKConfirm* ret_ret = MALLOC(sizeof(LDKConfirm), "LDKConfirm"); + *ret_ret = ChannelManager_as_Confirm(&this_arg_conv); + return (uint64_t)ret_ret; } -void __attribute__((visibility("default"))) TS_FundingSigned_set_signature(uint32_t this_ptr, int8_tArray val) { - LDKFundingSigned this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSignature val_ref; - CHECK(*((uint32_t*)val) == 64); - memcpy(val_ref.compact_form, (uint8_t*)(val + 4), 64); - FundingSigned_set_signature(&this_ptr_conv, val_ref); +void __attribute__((visibility("default"))) TS_ChannelManager_await_persistable_update(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + ChannelManager_await_persistable_update(&this_arg_conv); } -uint32_t __attribute__((visibility("default"))) TS_FundingSigned_new(int8_tArray channel_id_arg, int8_tArray signature_arg) { - LDKThirtyTwoBytes channel_id_arg_ref; - CHECK(*((uint32_t*)channel_id_arg) == 32); - memcpy(channel_id_arg_ref.data, (uint8_t*)(channel_id_arg + 4), 32); - LDKSignature signature_arg_ref; - CHECK(*((uint32_t*)signature_arg) == 64); - memcpy(signature_arg_ref.compact_form, (uint8_t*)(signature_arg + 4), 64); - LDKFundingSigned ret_var = FundingSigned_new(channel_id_arg_ref, signature_arg_ref); +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_current_best_block(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKBestBlock ret_var = ChannelManager_current_best_block(&this_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -23832,212 +21797,147 @@ uint32_t __attribute__((visibility("default"))) TS_FundingSigned_new(int8_tArra return ret_ref; } -static inline uint64_t FundingSigned_clone_ptr(LDKFundingSigned *NONNULL_PTR arg) { - LDKFundingSigned ret_var = FundingSigned_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_FundingSigned_clone_ptr(uint32_t arg) { - LDKFundingSigned arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = FundingSigned_clone_ptr(&arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_as_ChannelMessageHandler(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKChannelMessageHandler* ret_ret = MALLOC(sizeof(LDKChannelMessageHandler), "LDKChannelMessageHandler"); + *ret_ret = ChannelManager_as_ChannelMessageHandler(&this_arg_conv); + return (uint64_t)ret_ret; } -uint32_t __attribute__((visibility("default"))) TS_FundingSigned_clone(uint32_t orig) { - LDKFundingSigned orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKFundingSigned ret_var = FundingSigned_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_ChannelManager_write(uint32_t obj) { + LDKChannelManager obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ChannelManager_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -void __attribute__((visibility("default"))) TS_FundingLocked_free(uint32_t this_obj) { - LDKFundingLocked this_obj_conv; +void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_free(uint32_t this_obj) { + LDKChannelManagerReadArgs this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - FundingLocked_free(this_obj_conv); + ChannelManagerReadArgs_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_FundingLocked_get_channel_id(uint32_t this_ptr) { - LDKFundingLocked this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_get_keys_manager(uint32_t this_ptr) { + LDKChannelManagerReadArgs this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *FundingLocked_get_channel_id(&this_ptr_conv), 32); - return ret_arr; + // WARNING: This object doesn't live past this scope, needs clone! + uint64_t ret_ret = ((uint64_t)ChannelManagerReadArgs_get_keys_manager(&this_ptr_conv)) | 1; + return ret_ret; } -void __attribute__((visibility("default"))) TS_FundingLocked_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKFundingLocked this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_set_keys_manager(uint32_t this_ptr, uint32_t val) { + LDKChannelManagerReadArgs this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - FundingLocked_set_channel_id(&this_ptr_conv, val_ref); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKKeysInterface val_conv = *(LDKKeysInterface*)(val_ptr); + ChannelManagerReadArgs_set_keys_manager(&this_ptr_conv, val_conv); } -int8_tArray __attribute__((visibility("default"))) TS_FundingLocked_get_next_per_commitment_point(uint32_t this_ptr) { - LDKFundingLocked this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_get_fee_estimator(uint32_t this_ptr) { + LDKChannelManagerReadArgs this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), FundingLocked_get_next_per_commitment_point(&this_ptr_conv).compressed_form, 33); - return ret_arr; + // WARNING: This object doesn't live past this scope, needs clone! + uint64_t ret_ret = ((uint64_t)ChannelManagerReadArgs_get_fee_estimator(&this_ptr_conv)) | 1; + return ret_ret; } -void __attribute__((visibility("default"))) TS_FundingLocked_set_next_per_commitment_point(uint32_t this_ptr, int8_tArray val) { - LDKFundingLocked this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_set_fee_estimator(uint32_t this_ptr, uint32_t val) { + LDKChannelManagerReadArgs this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - FundingLocked_set_next_per_commitment_point(&this_ptr_conv, val_ref); -} - -uint32_t __attribute__((visibility("default"))) TS_FundingLocked_new(int8_tArray channel_id_arg, int8_tArray next_per_commitment_point_arg) { - LDKThirtyTwoBytes channel_id_arg_ref; - CHECK(*((uint32_t*)channel_id_arg) == 32); - memcpy(channel_id_arg_ref.data, (uint8_t*)(channel_id_arg + 4), 32); - LDKPublicKey next_per_commitment_point_arg_ref; - CHECK(*((uint32_t*)next_per_commitment_point_arg) == 33); - memcpy(next_per_commitment_point_arg_ref.compressed_form, (uint8_t*)(next_per_commitment_point_arg + 4), 33); - LDKFundingLocked ret_var = FundingLocked_new(channel_id_arg_ref, next_per_commitment_point_arg_ref); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKFeeEstimator val_conv = *(LDKFeeEstimator*)(val_ptr); + ChannelManagerReadArgs_set_fee_estimator(&this_ptr_conv, val_conv); } -static inline uint64_t FundingLocked_clone_ptr(LDKFundingLocked *NONNULL_PTR arg) { - LDKFundingLocked ret_var = FundingLocked_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_FundingLocked_clone_ptr(uint32_t arg) { - LDKFundingLocked arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = FundingLocked_clone_ptr(&arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_get_chain_monitor(uint32_t this_ptr) { + LDKChannelManagerReadArgs this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + // WARNING: This object doesn't live past this scope, needs clone! + uint64_t ret_ret = ((uint64_t)ChannelManagerReadArgs_get_chain_monitor(&this_ptr_conv)) | 1; + return ret_ret; } -uint32_t __attribute__((visibility("default"))) TS_FundingLocked_clone(uint32_t orig) { - LDKFundingLocked orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKFundingLocked ret_var = FundingLocked_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_set_chain_monitor(uint32_t this_ptr, uint32_t val) { + LDKChannelManagerReadArgs this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKWatch val_conv = *(LDKWatch*)(val_ptr); + ChannelManagerReadArgs_set_chain_monitor(&this_ptr_conv, val_conv); } -void __attribute__((visibility("default"))) TS_Shutdown_free(uint32_t this_obj) { - LDKShutdown this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - Shutdown_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_get_tx_broadcaster(uint32_t this_ptr) { + LDKChannelManagerReadArgs this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + // WARNING: This object doesn't live past this scope, needs clone! + uint64_t ret_ret = ((uint64_t)ChannelManagerReadArgs_get_tx_broadcaster(&this_ptr_conv)) | 1; + return ret_ret; } - -int8_tArray __attribute__((visibility("default"))) TS_Shutdown_get_channel_id(uint32_t this_ptr) { - LDKShutdown this_ptr_conv; + +void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_set_tx_broadcaster(uint32_t this_ptr, uint32_t val) { + LDKChannelManagerReadArgs this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *Shutdown_get_channel_id(&this_ptr_conv), 32); - return ret_arr; + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKBroadcasterInterface val_conv = *(LDKBroadcasterInterface*)(val_ptr); + ChannelManagerReadArgs_set_tx_broadcaster(&this_ptr_conv, val_conv); } -void __attribute__((visibility("default"))) TS_Shutdown_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKShutdown this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_get_logger(uint32_t this_ptr) { + LDKChannelManagerReadArgs this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - Shutdown_set_channel_id(&this_ptr_conv, val_ref); + // WARNING: This object doesn't live past this scope, needs clone! + uint64_t ret_ret = ((uint64_t)ChannelManagerReadArgs_get_logger(&this_ptr_conv)) | 1; + return ret_ret; } -int8_tArray __attribute__((visibility("default"))) TS_Shutdown_get_scriptpubkey(uint32_t this_ptr) { - LDKShutdown this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_set_logger(uint32_t this_ptr, uint32_t val) { + LDKChannelManagerReadArgs this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKu8slice ret_var = Shutdown_get_scriptpubkey(&this_ptr_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - return ret_arr; + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKLogger val_conv = *(LDKLogger*)(val_ptr); + ChannelManagerReadArgs_set_logger(&this_ptr_conv, val_conv); } -void __attribute__((visibility("default"))) TS_Shutdown_set_scriptpubkey(uint32_t this_ptr, int8_tArray val) { - LDKShutdown this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_get_default_config(uint32_t this_ptr) { + LDKChannelManagerReadArgs this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_u8Z val_ref; - val_ref.datalen = *((uint32_t*)val); - val_ref.data = MALLOC(val_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(val_ref.data, (uint8_t*)(val + 4), val_ref.datalen); - Shutdown_set_scriptpubkey(&this_ptr_conv, val_ref); -} - -uint32_t __attribute__((visibility("default"))) TS_Shutdown_new(int8_tArray channel_id_arg, int8_tArray scriptpubkey_arg) { - LDKThirtyTwoBytes channel_id_arg_ref; - CHECK(*((uint32_t*)channel_id_arg) == 32); - memcpy(channel_id_arg_ref.data, (uint8_t*)(channel_id_arg + 4), 32); - LDKCVec_u8Z scriptpubkey_arg_ref; - scriptpubkey_arg_ref.datalen = *((uint32_t*)scriptpubkey_arg); - scriptpubkey_arg_ref.data = MALLOC(scriptpubkey_arg_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(scriptpubkey_arg_ref.data, (uint8_t*)(scriptpubkey_arg + 4), scriptpubkey_arg_ref.datalen); - LDKShutdown ret_var = Shutdown_new(channel_id_arg_ref, scriptpubkey_arg_ref); + LDKUserConfig ret_var = ChannelManagerReadArgs_get_default_config(&this_ptr_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -24049,33 +21949,56 @@ uint32_t __attribute__((visibility("default"))) TS_Shutdown_new(int8_tArray cha return ret_ref; } -static inline uint64_t Shutdown_clone_ptr(LDKShutdown *NONNULL_PTR arg) { - LDKShutdown ret_var = Shutdown_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_Shutdown_clone_ptr(uint32_t arg) { - LDKShutdown arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = Shutdown_clone_ptr(&arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_set_default_config(uint32_t this_ptr, uint32_t val) { + LDKChannelManagerReadArgs this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKUserConfig val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = UserConfig_clone(&val_conv); + ChannelManagerReadArgs_set_default_config(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_Shutdown_clone(uint32_t orig) { - LDKShutdown orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKShutdown ret_var = Shutdown_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_new(uint32_t keys_manager, uint32_t fee_estimator, uint32_t chain_monitor, uint32_t tx_broadcaster, uint32_t logger, uint32_t default_config, uint32_tArray channel_monitors) { + void* keys_manager_ptr = (void*)(((uint64_t)keys_manager) & ~1); + CHECK_ACCESS(keys_manager_ptr); + LDKKeysInterface keys_manager_conv = *(LDKKeysInterface*)(keys_manager_ptr); + void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); + CHECK_ACCESS(fee_estimator_ptr); + LDKFeeEstimator fee_estimator_conv = *(LDKFeeEstimator*)(fee_estimator_ptr); + void* chain_monitor_ptr = (void*)(((uint64_t)chain_monitor) & ~1); + CHECK_ACCESS(chain_monitor_ptr); + LDKWatch chain_monitor_conv = *(LDKWatch*)(chain_monitor_ptr); + void* tx_broadcaster_ptr = (void*)(((uint64_t)tx_broadcaster) & ~1); + CHECK_ACCESS(tx_broadcaster_ptr); + LDKBroadcasterInterface tx_broadcaster_conv = *(LDKBroadcasterInterface*)(tx_broadcaster_ptr); + void* logger_ptr = (void*)(((uint64_t)logger) & ~1); + CHECK_ACCESS(logger_ptr); + LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); + LDKUserConfig default_config_conv; + default_config_conv.inner = (void*)(default_config & (~1)); + default_config_conv.is_owned = (default_config & 1) || (default_config == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(default_config_conv); + default_config_conv = UserConfig_clone(&default_config_conv); + LDKCVec_ChannelMonitorZ channel_monitors_constr; + channel_monitors_constr.datalen = channel_monitors->arr_len; + if (channel_monitors_constr.datalen > 0) + channel_monitors_constr.data = MALLOC(channel_monitors_constr.datalen * sizeof(LDKChannelMonitor), "LDKCVec_ChannelMonitorZ Elements"); + else + channel_monitors_constr.data = NULL; + uint32_t* channel_monitors_vals = channel_monitors->elems; + for (size_t q = 0; q < channel_monitors_constr.datalen; q++) { + uint32_t channel_monitors_conv_16 = channel_monitors_vals[q]; + LDKChannelMonitor channel_monitors_conv_16_conv; + channel_monitors_conv_16_conv.inner = (void*)(channel_monitors_conv_16 & (~1)); + channel_monitors_conv_16_conv.is_owned = (channel_monitors_conv_16 & 1) || (channel_monitors_conv_16 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_monitors_conv_16_conv); + channel_monitors_constr.data[q] = channel_monitors_conv_16_conv; + } + LDKChannelManagerReadArgs ret_var = ChannelManagerReadArgs_new(keys_manager_conv, fee_estimator_conv, chain_monitor_conv, tx_broadcaster_conv, logger_conv, default_config_conv, channel_monitors_constr); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -24087,63 +22010,30 @@ uint32_t __attribute__((visibility("default"))) TS_Shutdown_clone(uint32_t orig return ret_ref; } -void __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_free(uint32_t this_obj) { - LDKClosingSignedFeeRange this_obj_conv; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelManagerZ_read(int8_tArray ser, uint32_t arg) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKChannelManagerReadArgs arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = (arg & 1) || (arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + // Warning: we need a move here but no clone is available for LDKChannelManagerReadArgs + LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ"); + *ret_conv = C2Tuple_BlockHashChannelManagerZ_read(ser_ref, arg_conv); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_DecodeError_free(uint32_t this_obj) { + LDKDecodeError this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ClosingSignedFeeRange_free(this_obj_conv); -} - -int64_t __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_get_min_fee_satoshis(uint32_t this_ptr) { - LDKClosingSignedFeeRange this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ClosingSignedFeeRange_get_min_fee_satoshis(&this_ptr_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_set_min_fee_satoshis(uint32_t this_ptr, int64_t val) { - LDKClosingSignedFeeRange this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ClosingSignedFeeRange_set_min_fee_satoshis(&this_ptr_conv, val); -} - -int64_t __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_get_max_fee_satoshis(uint32_t this_ptr) { - LDKClosingSignedFeeRange this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ClosingSignedFeeRange_get_max_fee_satoshis(&this_ptr_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_set_max_fee_satoshis(uint32_t this_ptr, int64_t val) { - LDKClosingSignedFeeRange this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ClosingSignedFeeRange_set_max_fee_satoshis(&this_ptr_conv, val); -} - -uint32_t __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_new(int64_t min_fee_satoshis_arg, int64_t max_fee_satoshis_arg) { - LDKClosingSignedFeeRange ret_var = ClosingSignedFeeRange_new(min_fee_satoshis_arg, max_fee_satoshis_arg); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + DecodeError_free(this_obj_conv); } -static inline uint64_t ClosingSignedFeeRange_clone_ptr(LDKClosingSignedFeeRange *NONNULL_PTR arg) { - LDKClosingSignedFeeRange ret_var = ClosingSignedFeeRange_clone(arg); +static inline uint64_t DecodeError_clone_ptr(LDKDecodeError *NONNULL_PTR arg) { + LDKDecodeError ret_var = DecodeError_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -24154,21 +22044,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_clone_ptr(uint32_t arg) { - LDKClosingSignedFeeRange arg_conv; +int64_t __attribute__((visibility("default"))) TS_DecodeError_clone_ptr(uint32_t arg) { + LDKDecodeError arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ClosingSignedFeeRange_clone_ptr(&arg_conv); + int64_t ret_val = DecodeError_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_clone(uint32_t orig) { - LDKClosingSignedFeeRange orig_conv; +uint32_t __attribute__((visibility("default"))) TS_DecodeError_clone(uint32_t orig) { + LDKDecodeError orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKClosingSignedFeeRange ret_var = ClosingSignedFeeRange_clone(&orig_conv); + LDKDecodeError ret_var = DecodeError_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -24180,118 +22070,51 @@ uint32_t __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_clone( return ret_ref; } -void __attribute__((visibility("default"))) TS_ClosingSigned_free(uint32_t this_obj) { - LDKClosingSigned this_obj_conv; +void __attribute__((visibility("default"))) TS_Init_free(uint32_t this_obj) { + LDKInit this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ClosingSigned_free(this_obj_conv); -} - -int8_tArray __attribute__((visibility("default"))) TS_ClosingSigned_get_channel_id(uint32_t this_ptr) { - LDKClosingSigned this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *ClosingSigned_get_channel_id(&this_ptr_conv), 32); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_ClosingSigned_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKClosingSigned this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - ClosingSigned_set_channel_id(&this_ptr_conv, val_ref); -} - -int64_t __attribute__((visibility("default"))) TS_ClosingSigned_get_fee_satoshis(uint32_t this_ptr) { - LDKClosingSigned this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ClosingSigned_get_fee_satoshis(&this_ptr_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_ClosingSigned_set_fee_satoshis(uint32_t this_ptr, int64_t val) { - LDKClosingSigned this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ClosingSigned_set_fee_satoshis(&this_ptr_conv, val); -} - -int8_tArray __attribute__((visibility("default"))) TS_ClosingSigned_get_signature(uint32_t this_ptr) { - LDKClosingSigned this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ClosingSigned_get_signature(&this_ptr_conv).compact_form, 64); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_ClosingSigned_set_signature(uint32_t this_ptr, int8_tArray val) { - LDKClosingSigned this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSignature val_ref; - CHECK(*((uint32_t*)val) == 64); - memcpy(val_ref.compact_form, (uint8_t*)(val + 4), 64); - ClosingSigned_set_signature(&this_ptr_conv, val_ref); + Init_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_ClosingSigned_get_fee_range(uint32_t this_ptr) { - LDKClosingSigned this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_Init_get_features(uint32_t this_ptr) { + LDKInit this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKClosingSignedFeeRange ret_var = ClosingSigned_get_fee_range(&this_ptr_conv); + LDKInitFeatures ret_var = Init_get_features(&this_ptr_conv); uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } return ret_ref; } -void __attribute__((visibility("default"))) TS_ClosingSigned_set_fee_range(uint32_t this_ptr, uint32_t val) { - LDKClosingSigned this_ptr_conv; +void __attribute__((visibility("default"))) TS_Init_set_features(uint32_t this_ptr, uint32_t val) { + LDKInit this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKClosingSignedFeeRange val_conv; + LDKInitFeatures val_conv; val_conv.inner = (void*)(val & (~1)); val_conv.is_owned = (val & 1) || (val == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = ClosingSignedFeeRange_clone(&val_conv); - ClosingSigned_set_fee_range(&this_ptr_conv, val_conv); + val_conv = InitFeatures_clone(&val_conv); + Init_set_features(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_ClosingSigned_new(int8_tArray channel_id_arg, int64_t fee_satoshis_arg, int8_tArray signature_arg, uint32_t fee_range_arg) { - LDKThirtyTwoBytes channel_id_arg_ref; - CHECK(*((uint32_t*)channel_id_arg) == 32); - memcpy(channel_id_arg_ref.data, (uint8_t*)(channel_id_arg + 4), 32); - LDKSignature signature_arg_ref; - CHECK(*((uint32_t*)signature_arg) == 64); - memcpy(signature_arg_ref.compact_form, (uint8_t*)(signature_arg + 4), 64); - LDKClosingSignedFeeRange fee_range_arg_conv; - fee_range_arg_conv.inner = (void*)(fee_range_arg & (~1)); - fee_range_arg_conv.is_owned = (fee_range_arg & 1) || (fee_range_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(fee_range_arg_conv); - fee_range_arg_conv = ClosingSignedFeeRange_clone(&fee_range_arg_conv); - LDKClosingSigned ret_var = ClosingSigned_new(channel_id_arg_ref, fee_satoshis_arg, signature_arg_ref, fee_range_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_Init_new(uint32_t features_arg) { + LDKInitFeatures features_arg_conv; + features_arg_conv.inner = (void*)(features_arg & (~1)); + features_arg_conv.is_owned = (features_arg & 1) || (features_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(features_arg_conv); + features_arg_conv = InitFeatures_clone(&features_arg_conv); + LDKInit ret_var = Init_new(features_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -24303,8 +22126,8 @@ uint32_t __attribute__((visibility("default"))) TS_ClosingSigned_new(int8_tArra return ret_ref; } -static inline uint64_t ClosingSigned_clone_ptr(LDKClosingSigned *NONNULL_PTR arg) { - LDKClosingSigned ret_var = ClosingSigned_clone(arg); +static inline uint64_t Init_clone_ptr(LDKInit *NONNULL_PTR arg) { + LDKInit ret_var = Init_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -24315,21 +22138,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ClosingSigned_clone_ptr(uint32_t arg) { - LDKClosingSigned arg_conv; +int64_t __attribute__((visibility("default"))) TS_Init_clone_ptr(uint32_t arg) { + LDKInit arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ClosingSigned_clone_ptr(&arg_conv); + int64_t ret_val = Init_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ClosingSigned_clone(uint32_t orig) { - LDKClosingSigned orig_conv; +uint32_t __attribute__((visibility("default"))) TS_Init_clone(uint32_t orig) { + LDKInit orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKClosingSigned ret_var = ClosingSigned_clone(&orig_conv); + LDKInit ret_var = Init_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -24341,109 +22164,167 @@ uint32_t __attribute__((visibility("default"))) TS_ClosingSigned_clone(uint32_t return ret_ref; } -void __attribute__((visibility("default"))) TS_UpdateAddHTLC_free(uint32_t this_obj) { - LDKUpdateAddHTLC this_obj_conv; +void __attribute__((visibility("default"))) TS_ErrorMessage_free(uint32_t this_obj) { + LDKErrorMessage this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - UpdateAddHTLC_free(this_obj_conv); + ErrorMessage_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_UpdateAddHTLC_get_channel_id(uint32_t this_ptr) { - LDKUpdateAddHTLC this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_ErrorMessage_get_channel_id(uint32_t this_ptr) { + LDKErrorMessage this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *UpdateAddHTLC_get_channel_id(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *ErrorMessage_get_channel_id(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_UpdateAddHTLC_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKUpdateAddHTLC this_ptr_conv; +void __attribute__((visibility("default"))) TS_ErrorMessage_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKErrorMessage this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - UpdateAddHTLC_set_channel_id(&this_ptr_conv, val_ref); + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + ErrorMessage_set_channel_id(&this_ptr_conv, val_ref); } -int64_t __attribute__((visibility("default"))) TS_UpdateAddHTLC_get_htlc_id(uint32_t this_ptr) { - LDKUpdateAddHTLC this_ptr_conv; +jstring __attribute__((visibility("default"))) TS_ErrorMessage_get_data(uint32_t this_ptr) { + LDKErrorMessage this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = UpdateAddHTLC_get_htlc_id(&this_ptr_conv); - return ret_val; + LDKStr ret_str = ErrorMessage_get_data(&this_ptr_conv); + jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); + Str_free(ret_str); + return ret_conv; } -void __attribute__((visibility("default"))) TS_UpdateAddHTLC_set_htlc_id(uint32_t this_ptr, int64_t val) { - LDKUpdateAddHTLC this_ptr_conv; +void __attribute__((visibility("default"))) TS_ErrorMessage_set_data(uint32_t this_ptr, jstring val) { + LDKErrorMessage this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UpdateAddHTLC_set_htlc_id(&this_ptr_conv, val); + LDKStr val_conv = str_ref_to_owned_c(val); + ErrorMessage_set_data(&this_ptr_conv, val_conv); } -int64_t __attribute__((visibility("default"))) TS_UpdateAddHTLC_get_amount_msat(uint32_t this_ptr) { - LDKUpdateAddHTLC this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = UpdateAddHTLC_get_amount_msat(&this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_ErrorMessage_new(int8_tArray channel_id_arg, jstring data_arg) { + LDKThirtyTwoBytes channel_id_arg_ref; + CHECK(channel_id_arg->arr_len == 32); + memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); + LDKStr data_arg_conv = str_ref_to_owned_c(data_arg); + LDKErrorMessage ret_var = ErrorMessage_new(channel_id_arg_ref, data_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +static inline uint64_t ErrorMessage_clone_ptr(LDKErrorMessage *NONNULL_PTR arg) { + LDKErrorMessage ret_var = ErrorMessage_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_ErrorMessage_clone_ptr(uint32_t arg) { + LDKErrorMessage arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ErrorMessage_clone_ptr(&arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_UpdateAddHTLC_set_amount_msat(uint32_t this_ptr, int64_t val) { - LDKUpdateAddHTLC this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UpdateAddHTLC_set_amount_msat(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_ErrorMessage_clone(uint32_t orig) { + LDKErrorMessage orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKErrorMessage ret_var = ErrorMessage_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_UpdateAddHTLC_get_payment_hash(uint32_t this_ptr) { - LDKUpdateAddHTLC this_ptr_conv; +void __attribute__((visibility("default"))) TS_Ping_free(uint32_t this_obj) { + LDKPing this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + Ping_free(this_obj_conv); +} + +int16_t __attribute__((visibility("default"))) TS_Ping_get_ponglen(uint32_t this_ptr) { + LDKPing this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *UpdateAddHTLC_get_payment_hash(&this_ptr_conv), 32); - return ret_arr; + int16_t ret_val = Ping_get_ponglen(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_UpdateAddHTLC_set_payment_hash(uint32_t this_ptr, int8_tArray val) { - LDKUpdateAddHTLC this_ptr_conv; +void __attribute__((visibility("default"))) TS_Ping_set_ponglen(uint32_t this_ptr, int16_t val) { + LDKPing this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - UpdateAddHTLC_set_payment_hash(&this_ptr_conv, val_ref); + Ping_set_ponglen(&this_ptr_conv, val); } -int32_t __attribute__((visibility("default"))) TS_UpdateAddHTLC_get_cltv_expiry(uint32_t this_ptr) { - LDKUpdateAddHTLC this_ptr_conv; +int16_t __attribute__((visibility("default"))) TS_Ping_get_byteslen(uint32_t this_ptr) { + LDKPing this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = UpdateAddHTLC_get_cltv_expiry(&this_ptr_conv); + int16_t ret_val = Ping_get_byteslen(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_UpdateAddHTLC_set_cltv_expiry(uint32_t this_ptr, int32_t val) { - LDKUpdateAddHTLC this_ptr_conv; +void __attribute__((visibility("default"))) TS_Ping_set_byteslen(uint32_t this_ptr, int16_t val) { + LDKPing this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UpdateAddHTLC_set_cltv_expiry(&this_ptr_conv, val); + Ping_set_byteslen(&this_ptr_conv, val); } -static inline uint64_t UpdateAddHTLC_clone_ptr(LDKUpdateAddHTLC *NONNULL_PTR arg) { - LDKUpdateAddHTLC ret_var = UpdateAddHTLC_clone(arg); +uint32_t __attribute__((visibility("default"))) TS_Ping_new(int16_t ponglen_arg, int16_t byteslen_arg) { + LDKPing ret_var = Ping_new(ponglen_arg, byteslen_arg); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +static inline uint64_t Ping_clone_ptr(LDKPing *NONNULL_PTR arg) { + LDKPing ret_var = Ping_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -24454,21 +22335,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_UpdateAddHTLC_clone_ptr(uint32_t arg) { - LDKUpdateAddHTLC arg_conv; +int64_t __attribute__((visibility("default"))) TS_Ping_clone_ptr(uint32_t arg) { + LDKPing arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = UpdateAddHTLC_clone_ptr(&arg_conv); + int64_t ret_val = Ping_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_UpdateAddHTLC_clone(uint32_t orig) { - LDKUpdateAddHTLC orig_conv; +uint32_t __attribute__((visibility("default"))) TS_Ping_clone(uint32_t orig) { + LDKPing orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKUpdateAddHTLC ret_var = UpdateAddHTLC_clone(&orig_conv); + LDKPing ret_var = Ping_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -24480,81 +22361,33 @@ uint32_t __attribute__((visibility("default"))) TS_UpdateAddHTLC_clone(uint32_t return ret_ref; } -void __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_free(uint32_t this_obj) { - LDKUpdateFulfillHTLC this_obj_conv; +void __attribute__((visibility("default"))) TS_Pong_free(uint32_t this_obj) { + LDKPong this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - UpdateFulfillHTLC_free(this_obj_conv); -} - -int8_tArray __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_get_channel_id(uint32_t this_ptr) { - LDKUpdateFulfillHTLC this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *UpdateFulfillHTLC_get_channel_id(&this_ptr_conv), 32); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKUpdateFulfillHTLC this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - UpdateFulfillHTLC_set_channel_id(&this_ptr_conv, val_ref); + Pong_free(this_obj_conv); } -int64_t __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_get_htlc_id(uint32_t this_ptr) { - LDKUpdateFulfillHTLC this_ptr_conv; +int16_t __attribute__((visibility("default"))) TS_Pong_get_byteslen(uint32_t this_ptr) { + LDKPong this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = UpdateFulfillHTLC_get_htlc_id(&this_ptr_conv); + int16_t ret_val = Pong_get_byteslen(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_set_htlc_id(uint32_t this_ptr, int64_t val) { - LDKUpdateFulfillHTLC this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UpdateFulfillHTLC_set_htlc_id(&this_ptr_conv, val); -} - -int8_tArray __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_get_payment_preimage(uint32_t this_ptr) { - LDKUpdateFulfillHTLC this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *UpdateFulfillHTLC_get_payment_preimage(&this_ptr_conv), 32); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_set_payment_preimage(uint32_t this_ptr, int8_tArray val) { - LDKUpdateFulfillHTLC this_ptr_conv; +void __attribute__((visibility("default"))) TS_Pong_set_byteslen(uint32_t this_ptr, int16_t val) { + LDKPong this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - UpdateFulfillHTLC_set_payment_preimage(&this_ptr_conv, val_ref); + Pong_set_byteslen(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_new(int8_tArray channel_id_arg, int64_t htlc_id_arg, int8_tArray payment_preimage_arg) { - LDKThirtyTwoBytes channel_id_arg_ref; - CHECK(*((uint32_t*)channel_id_arg) == 32); - memcpy(channel_id_arg_ref.data, (uint8_t*)(channel_id_arg + 4), 32); - LDKThirtyTwoBytes payment_preimage_arg_ref; - CHECK(*((uint32_t*)payment_preimage_arg) == 32); - memcpy(payment_preimage_arg_ref.data, (uint8_t*)(payment_preimage_arg + 4), 32); - LDKUpdateFulfillHTLC ret_var = UpdateFulfillHTLC_new(channel_id_arg_ref, htlc_id_arg, payment_preimage_arg_ref); +uint32_t __attribute__((visibility("default"))) TS_Pong_new(int16_t byteslen_arg) { + LDKPong ret_var = Pong_new(byteslen_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -24566,8 +22399,8 @@ uint32_t __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_new(int8_t return ret_ref; } -static inline uint64_t UpdateFulfillHTLC_clone_ptr(LDKUpdateFulfillHTLC *NONNULL_PTR arg) { - LDKUpdateFulfillHTLC ret_var = UpdateFulfillHTLC_clone(arg); +static inline uint64_t Pong_clone_ptr(LDKPong *NONNULL_PTR arg) { + LDKPong ret_var = Pong_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -24578,21 +22411,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_clone_ptr(uint32_t arg) { - LDKUpdateFulfillHTLC arg_conv; +int64_t __attribute__((visibility("default"))) TS_Pong_clone_ptr(uint32_t arg) { + LDKPong arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = UpdateFulfillHTLC_clone_ptr(&arg_conv); + int64_t ret_val = Pong_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_clone(uint32_t orig) { - LDKUpdateFulfillHTLC orig_conv; +uint32_t __attribute__((visibility("default"))) TS_Pong_clone(uint32_t orig) { + LDKPong orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKUpdateFulfillHTLC ret_var = UpdateFulfillHTLC_clone(&orig_conv); + LDKPong ret_var = Pong_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -24604,529 +22437,386 @@ uint32_t __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_clone(uint return ret_ref; } -void __attribute__((visibility("default"))) TS_UpdateFailHTLC_free(uint32_t this_obj) { - LDKUpdateFailHTLC this_obj_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_free(uint32_t this_obj) { + LDKOpenChannel this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - UpdateFailHTLC_free(this_obj_conv); + OpenChannel_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_UpdateFailHTLC_get_channel_id(uint32_t this_ptr) { - LDKUpdateFailHTLC this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_chain_hash(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *UpdateFailHTLC_get_channel_id(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *OpenChannel_get_chain_hash(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_UpdateFailHTLC_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKUpdateFailHTLC this_ptr_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_set_chain_hash(uint32_t this_ptr, int8_tArray val) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - UpdateFailHTLC_set_channel_id(&this_ptr_conv, val_ref); + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + OpenChannel_set_chain_hash(&this_ptr_conv, val_ref); } -int64_t __attribute__((visibility("default"))) TS_UpdateFailHTLC_get_htlc_id(uint32_t this_ptr) { - LDKUpdateFailHTLC this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_temporary_channel_id(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = UpdateFailHTLC_get_htlc_id(&this_ptr_conv); - return ret_val; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *OpenChannel_get_temporary_channel_id(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_UpdateFailHTLC_set_htlc_id(uint32_t this_ptr, int64_t val) { - LDKUpdateFailHTLC this_ptr_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_set_temporary_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UpdateFailHTLC_set_htlc_id(&this_ptr_conv, val); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + OpenChannel_set_temporary_channel_id(&this_ptr_conv, val_ref); } -static inline uint64_t UpdateFailHTLC_clone_ptr(LDKUpdateFailHTLC *NONNULL_PTR arg) { - LDKUpdateFailHTLC ret_var = UpdateFailHTLC_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_UpdateFailHTLC_clone_ptr(uint32_t arg) { - LDKUpdateFailHTLC arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = UpdateFailHTLC_clone_ptr(&arg_conv); +int64_t __attribute__((visibility("default"))) TS_OpenChannel_get_funding_satoshis(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = OpenChannel_get_funding_satoshis(&this_ptr_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_UpdateFailHTLC_clone(uint32_t orig) { - LDKUpdateFailHTLC orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKUpdateFailHTLC ret_var = UpdateFailHTLC_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_OpenChannel_set_funding_satoshis(uint32_t this_ptr, int64_t val) { + LDKOpenChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + OpenChannel_set_funding_satoshis(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_free(uint32_t this_obj) { - LDKUpdateFailMalformedHTLC this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - UpdateFailMalformedHTLC_free(this_obj_conv); +int64_t __attribute__((visibility("default"))) TS_OpenChannel_get_push_msat(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = OpenChannel_get_push_msat(&this_ptr_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_get_channel_id(uint32_t this_ptr) { - LDKUpdateFailMalformedHTLC this_ptr_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_set_push_msat(uint32_t this_ptr, int64_t val) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *UpdateFailMalformedHTLC_get_channel_id(&this_ptr_conv), 32); - return ret_arr; + OpenChannel_set_push_msat(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKUpdateFailMalformedHTLC this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_OpenChannel_get_dust_limit_satoshis(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - UpdateFailMalformedHTLC_set_channel_id(&this_ptr_conv, val_ref); + int64_t ret_val = OpenChannel_get_dust_limit_satoshis(&this_ptr_conv); + return ret_val; } -int64_t __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_get_htlc_id(uint32_t this_ptr) { - LDKUpdateFailMalformedHTLC this_ptr_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_set_dust_limit_satoshis(uint32_t this_ptr, int64_t val) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = UpdateFailMalformedHTLC_get_htlc_id(&this_ptr_conv); + OpenChannel_set_dust_limit_satoshis(&this_ptr_conv, val); +} + +int64_t __attribute__((visibility("default"))) TS_OpenChannel_get_max_htlc_value_in_flight_msat(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = OpenChannel_get_max_htlc_value_in_flight_msat(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_set_htlc_id(uint32_t this_ptr, int64_t val) { - LDKUpdateFailMalformedHTLC this_ptr_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_set_max_htlc_value_in_flight_msat(uint32_t this_ptr, int64_t val) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UpdateFailMalformedHTLC_set_htlc_id(&this_ptr_conv, val); + OpenChannel_set_max_htlc_value_in_flight_msat(&this_ptr_conv, val); } -int16_t __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_get_failure_code(uint32_t this_ptr) { - LDKUpdateFailMalformedHTLC this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_OpenChannel_get_channel_reserve_satoshis(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = UpdateFailMalformedHTLC_get_failure_code(&this_ptr_conv); + int64_t ret_val = OpenChannel_get_channel_reserve_satoshis(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_set_failure_code(uint32_t this_ptr, int16_t val) { - LDKUpdateFailMalformedHTLC this_ptr_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_set_channel_reserve_satoshis(uint32_t this_ptr, int64_t val) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UpdateFailMalformedHTLC_set_failure_code(&this_ptr_conv, val); + OpenChannel_set_channel_reserve_satoshis(&this_ptr_conv, val); } -static inline uint64_t UpdateFailMalformedHTLC_clone_ptr(LDKUpdateFailMalformedHTLC *NONNULL_PTR arg) { - LDKUpdateFailMalformedHTLC ret_var = UpdateFailMalformedHTLC_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; +int64_t __attribute__((visibility("default"))) TS_OpenChannel_get_htlc_minimum_msat(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = OpenChannel_get_htlc_minimum_msat(&this_ptr_conv); + return ret_val; } - return ret_ref; + +void __attribute__((visibility("default"))) TS_OpenChannel_set_htlc_minimum_msat(uint32_t this_ptr, int64_t val) { + LDKOpenChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + OpenChannel_set_htlc_minimum_msat(&this_ptr_conv, val); } -int64_t __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_clone_ptr(uint32_t arg) { - LDKUpdateFailMalformedHTLC arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = UpdateFailMalformedHTLC_clone_ptr(&arg_conv); + +int32_t __attribute__((visibility("default"))) TS_OpenChannel_get_feerate_per_kw(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = OpenChannel_get_feerate_per_kw(&this_ptr_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_clone(uint32_t orig) { - LDKUpdateFailMalformedHTLC orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKUpdateFailMalformedHTLC ret_var = UpdateFailMalformedHTLC_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_OpenChannel_set_feerate_per_kw(uint32_t this_ptr, int32_t val) { + LDKOpenChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + OpenChannel_set_feerate_per_kw(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_CommitmentSigned_free(uint32_t this_obj) { - LDKCommitmentSigned this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - CommitmentSigned_free(this_obj_conv); +int16_t __attribute__((visibility("default"))) TS_OpenChannel_get_to_self_delay(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int16_t ret_val = OpenChannel_get_to_self_delay(&this_ptr_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_CommitmentSigned_get_channel_id(uint32_t this_ptr) { - LDKCommitmentSigned this_ptr_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_set_to_self_delay(uint32_t this_ptr, int16_t val) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *CommitmentSigned_get_channel_id(&this_ptr_conv), 32); - return ret_arr; + OpenChannel_set_to_self_delay(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_CommitmentSigned_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKCommitmentSigned this_ptr_conv; +int16_t __attribute__((visibility("default"))) TS_OpenChannel_get_max_accepted_htlcs(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - CommitmentSigned_set_channel_id(&this_ptr_conv, val_ref); + int16_t ret_val = OpenChannel_get_max_accepted_htlcs(&this_ptr_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_OpenChannel_set_max_accepted_htlcs(uint32_t this_ptr, int16_t val) { + LDKOpenChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + OpenChannel_set_max_accepted_htlcs(&this_ptr_conv, val); } -int8_tArray __attribute__((visibility("default"))) TS_CommitmentSigned_get_signature(uint32_t this_ptr) { - LDKCommitmentSigned this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_funding_pubkey(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), CommitmentSigned_get_signature(&this_ptr_conv).compact_form, 64); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, OpenChannel_get_funding_pubkey(&this_ptr_conv).compressed_form, 33); return ret_arr; } -void __attribute__((visibility("default"))) TS_CommitmentSigned_set_signature(uint32_t this_ptr, int8_tArray val) { - LDKCommitmentSigned this_ptr_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_set_funding_pubkey(uint32_t this_ptr, int8_tArray val) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSignature val_ref; - CHECK(*((uint32_t*)val) == 64); - memcpy(val_ref.compact_form, (uint8_t*)(val + 4), 64); - CommitmentSigned_set_signature(&this_ptr_conv, val_ref); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + OpenChannel_set_funding_pubkey(&this_ptr_conv, val_ref); } -void __attribute__((visibility("default"))) TS_CommitmentSigned_set_htlc_signatures(uint32_t this_ptr, ptrArray val) { - LDKCommitmentSigned this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_revocation_basepoint(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_SignatureZ val_constr; - val_constr.datalen = *((uint32_t*)val); - if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); - else - val_constr.data = NULL; - int8_tArray* val_vals = (int8_tArray*)(val + 4); - for (size_t m = 0; m < val_constr.datalen; m++) { - int8_tArray val_conv_12 = val_vals[m]; - LDKSignature val_conv_12_ref; - CHECK(*((uint32_t*)val_conv_12) == 64); - memcpy(val_conv_12_ref.compact_form, (uint8_t*)(val_conv_12 + 4), 64); - val_constr.data[m] = val_conv_12_ref; - } - CommitmentSigned_set_htlc_signatures(&this_ptr_conv, val_constr); -} - -uint32_t __attribute__((visibility("default"))) TS_CommitmentSigned_new(int8_tArray channel_id_arg, int8_tArray signature_arg, ptrArray htlc_signatures_arg) { - LDKThirtyTwoBytes channel_id_arg_ref; - CHECK(*((uint32_t*)channel_id_arg) == 32); - memcpy(channel_id_arg_ref.data, (uint8_t*)(channel_id_arg + 4), 32); - LDKSignature signature_arg_ref; - CHECK(*((uint32_t*)signature_arg) == 64); - memcpy(signature_arg_ref.compact_form, (uint8_t*)(signature_arg + 4), 64); - LDKCVec_SignatureZ htlc_signatures_arg_constr; - htlc_signatures_arg_constr.datalen = *((uint32_t*)htlc_signatures_arg); - if (htlc_signatures_arg_constr.datalen > 0) - htlc_signatures_arg_constr.data = MALLOC(htlc_signatures_arg_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); - else - htlc_signatures_arg_constr.data = NULL; - int8_tArray* htlc_signatures_arg_vals = (int8_tArray*)(htlc_signatures_arg + 4); - for (size_t m = 0; m < htlc_signatures_arg_constr.datalen; m++) { - int8_tArray htlc_signatures_arg_conv_12 = htlc_signatures_arg_vals[m]; - LDKSignature htlc_signatures_arg_conv_12_ref; - CHECK(*((uint32_t*)htlc_signatures_arg_conv_12) == 64); - memcpy(htlc_signatures_arg_conv_12_ref.compact_form, (uint8_t*)(htlc_signatures_arg_conv_12 + 4), 64); - htlc_signatures_arg_constr.data[m] = htlc_signatures_arg_conv_12_ref; - } - LDKCommitmentSigned ret_var = CommitmentSigned_new(channel_id_arg_ref, signature_arg_ref, htlc_signatures_arg_constr); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; -} - -static inline uint64_t CommitmentSigned_clone_ptr(LDKCommitmentSigned *NONNULL_PTR arg) { - LDKCommitmentSigned ret_var = CommitmentSigned_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_CommitmentSigned_clone_ptr(uint32_t arg) { - LDKCommitmentSigned arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = CommitmentSigned_clone_ptr(&arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_CommitmentSigned_clone(uint32_t orig) { - LDKCommitmentSigned orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKCommitmentSigned ret_var = CommitmentSigned_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, OpenChannel_get_revocation_basepoint(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -void __attribute__((visibility("default"))) TS_RevokeAndACK_free(uint32_t this_obj) { - LDKRevokeAndACK this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - RevokeAndACK_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_OpenChannel_set_revocation_basepoint(uint32_t this_ptr, int8_tArray val) { + LDKOpenChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + OpenChannel_set_revocation_basepoint(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_RevokeAndACK_get_channel_id(uint32_t this_ptr) { - LDKRevokeAndACK this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_payment_point(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *RevokeAndACK_get_channel_id(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, OpenChannel_get_payment_point(&this_ptr_conv).compressed_form, 33); return ret_arr; } -void __attribute__((visibility("default"))) TS_RevokeAndACK_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKRevokeAndACK this_ptr_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_set_payment_point(uint32_t this_ptr, int8_tArray val) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - RevokeAndACK_set_channel_id(&this_ptr_conv, val_ref); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + OpenChannel_set_payment_point(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_RevokeAndACK_get_per_commitment_secret(uint32_t this_ptr) { - LDKRevokeAndACK this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_delayed_payment_basepoint(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *RevokeAndACK_get_per_commitment_secret(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, OpenChannel_get_delayed_payment_basepoint(&this_ptr_conv).compressed_form, 33); return ret_arr; } -void __attribute__((visibility("default"))) TS_RevokeAndACK_set_per_commitment_secret(uint32_t this_ptr, int8_tArray val) { - LDKRevokeAndACK this_ptr_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_set_delayed_payment_basepoint(uint32_t this_ptr, int8_tArray val) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - RevokeAndACK_set_per_commitment_secret(&this_ptr_conv, val_ref); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + OpenChannel_set_delayed_payment_basepoint(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_RevokeAndACK_get_next_per_commitment_point(uint32_t this_ptr) { - LDKRevokeAndACK this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_htlc_basepoint(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), RevokeAndACK_get_next_per_commitment_point(&this_ptr_conv).compressed_form, 33); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, OpenChannel_get_htlc_basepoint(&this_ptr_conv).compressed_form, 33); return ret_arr; } -void __attribute__((visibility("default"))) TS_RevokeAndACK_set_next_per_commitment_point(uint32_t this_ptr, int8_tArray val) { - LDKRevokeAndACK this_ptr_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_set_htlc_basepoint(uint32_t this_ptr, int8_tArray val) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - RevokeAndACK_set_next_per_commitment_point(&this_ptr_conv, val_ref); -} - -uint32_t __attribute__((visibility("default"))) TS_RevokeAndACK_new(int8_tArray channel_id_arg, int8_tArray per_commitment_secret_arg, int8_tArray next_per_commitment_point_arg) { - LDKThirtyTwoBytes channel_id_arg_ref; - CHECK(*((uint32_t*)channel_id_arg) == 32); - memcpy(channel_id_arg_ref.data, (uint8_t*)(channel_id_arg + 4), 32); - LDKThirtyTwoBytes per_commitment_secret_arg_ref; - CHECK(*((uint32_t*)per_commitment_secret_arg) == 32); - memcpy(per_commitment_secret_arg_ref.data, (uint8_t*)(per_commitment_secret_arg + 4), 32); - LDKPublicKey next_per_commitment_point_arg_ref; - CHECK(*((uint32_t*)next_per_commitment_point_arg) == 33); - memcpy(next_per_commitment_point_arg_ref.compressed_form, (uint8_t*)(next_per_commitment_point_arg + 4), 33); - LDKRevokeAndACK ret_var = RevokeAndACK_new(channel_id_arg_ref, per_commitment_secret_arg_ref, next_per_commitment_point_arg_ref); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; -} - -static inline uint64_t RevokeAndACK_clone_ptr(LDKRevokeAndACK *NONNULL_PTR arg) { - LDKRevokeAndACK ret_var = RevokeAndACK_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_RevokeAndACK_clone_ptr(uint32_t arg) { - LDKRevokeAndACK arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = RevokeAndACK_clone_ptr(&arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_RevokeAndACK_clone(uint32_t orig) { - LDKRevokeAndACK orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKRevokeAndACK ret_var = RevokeAndACK_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; -} - -void __attribute__((visibility("default"))) TS_UpdateFee_free(uint32_t this_obj) { - LDKUpdateFee this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - UpdateFee_free(this_obj_conv); + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + OpenChannel_set_htlc_basepoint(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_UpdateFee_get_channel_id(uint32_t this_ptr) { - LDKUpdateFee this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_first_per_commitment_point(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *UpdateFee_get_channel_id(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, OpenChannel_get_first_per_commitment_point(&this_ptr_conv).compressed_form, 33); return ret_arr; } -void __attribute__((visibility("default"))) TS_UpdateFee_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKUpdateFee this_ptr_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_set_first_per_commitment_point(uint32_t this_ptr, int8_tArray val) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - UpdateFee_set_channel_id(&this_ptr_conv, val_ref); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + OpenChannel_set_first_per_commitment_point(&this_ptr_conv, val_ref); } -int32_t __attribute__((visibility("default"))) TS_UpdateFee_get_feerate_per_kw(uint32_t this_ptr) { - LDKUpdateFee this_ptr_conv; +int8_t __attribute__((visibility("default"))) TS_OpenChannel_get_channel_flags(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = UpdateFee_get_feerate_per_kw(&this_ptr_conv); + int8_t ret_val = OpenChannel_get_channel_flags(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_UpdateFee_set_feerate_per_kw(uint32_t this_ptr, int32_t val) { - LDKUpdateFee this_ptr_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_set_channel_flags(uint32_t this_ptr, int8_t val) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UpdateFee_set_feerate_per_kw(&this_ptr_conv, val); + OpenChannel_set_channel_flags(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_UpdateFee_new(int8_tArray channel_id_arg, int32_t feerate_per_kw_arg) { - LDKThirtyTwoBytes channel_id_arg_ref; - CHECK(*((uint32_t*)channel_id_arg) == 32); - memcpy(channel_id_arg_ref.data, (uint8_t*)(channel_id_arg + 4), 32); - LDKUpdateFee ret_var = UpdateFee_new(channel_id_arg_ref, feerate_per_kw_arg); +uint32_t __attribute__((visibility("default"))) TS_OpenChannel_get_channel_type(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelTypeFeatures ret_var = OpenChannel_get_channel_type(&this_ptr_conv); uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } } return ret_ref; } -static inline uint64_t UpdateFee_clone_ptr(LDKUpdateFee *NONNULL_PTR arg) { - LDKUpdateFee ret_var = UpdateFee_clone(arg); +void __attribute__((visibility("default"))) TS_OpenChannel_set_channel_type(uint32_t this_ptr, uint32_t val) { + LDKOpenChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelTypeFeatures val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = ChannelTypeFeatures_clone(&val_conv); + OpenChannel_set_channel_type(&this_ptr_conv, val_conv); +} + +static inline uint64_t OpenChannel_clone_ptr(LDKOpenChannel *NONNULL_PTR arg) { + LDKOpenChannel ret_var = OpenChannel_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -25137,21 +22827,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_UpdateFee_clone_ptr(uint32_t arg) { - LDKUpdateFee arg_conv; +int64_t __attribute__((visibility("default"))) TS_OpenChannel_clone_ptr(uint32_t arg) { + LDKOpenChannel arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = UpdateFee_clone_ptr(&arg_conv); + int64_t ret_val = OpenChannel_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_UpdateFee_clone(uint32_t orig) { - LDKUpdateFee orig_conv; +uint32_t __attribute__((visibility("default"))) TS_OpenChannel_clone(uint32_t orig) { + LDKOpenChannel orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKUpdateFee ret_var = UpdateFee_clone(&orig_conv); + LDKOpenChannel ret_var = OpenChannel_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -25163,326 +22853,282 @@ uint32_t __attribute__((visibility("default"))) TS_UpdateFee_clone(uint32_t ori return ret_ref; } -void __attribute__((visibility("default"))) TS_DataLossProtect_free(uint32_t this_obj) { - LDKDataLossProtect this_obj_conv; +void __attribute__((visibility("default"))) TS_AcceptChannel_free(uint32_t this_obj) { + LDKAcceptChannel this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - DataLossProtect_free(this_obj_conv); + AcceptChannel_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_DataLossProtect_get_your_last_per_commitment_secret(uint32_t this_ptr) { - LDKDataLossProtect this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_temporary_channel_id(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *DataLossProtect_get_your_last_per_commitment_secret(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *AcceptChannel_get_temporary_channel_id(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_DataLossProtect_set_your_last_per_commitment_secret(uint32_t this_ptr, int8_tArray val) { - LDKDataLossProtect this_ptr_conv; +void __attribute__((visibility("default"))) TS_AcceptChannel_set_temporary_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - DataLossProtect_set_your_last_per_commitment_secret(&this_ptr_conv, val_ref); + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + AcceptChannel_set_temporary_channel_id(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_DataLossProtect_get_my_current_per_commitment_point(uint32_t this_ptr) { - LDKDataLossProtect this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_AcceptChannel_get_dust_limit_satoshis(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), DataLossProtect_get_my_current_per_commitment_point(&this_ptr_conv).compressed_form, 33); - return ret_arr; + int64_t ret_val = AcceptChannel_get_dust_limit_satoshis(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_DataLossProtect_set_my_current_per_commitment_point(uint32_t this_ptr, int8_tArray val) { - LDKDataLossProtect this_ptr_conv; +void __attribute__((visibility("default"))) TS_AcceptChannel_set_dust_limit_satoshis(uint32_t this_ptr, int64_t val) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - DataLossProtect_set_my_current_per_commitment_point(&this_ptr_conv, val_ref); + AcceptChannel_set_dust_limit_satoshis(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_DataLossProtect_new(int8_tArray your_last_per_commitment_secret_arg, int8_tArray my_current_per_commitment_point_arg) { - LDKThirtyTwoBytes your_last_per_commitment_secret_arg_ref; - CHECK(*((uint32_t*)your_last_per_commitment_secret_arg) == 32); - memcpy(your_last_per_commitment_secret_arg_ref.data, (uint8_t*)(your_last_per_commitment_secret_arg + 4), 32); - LDKPublicKey my_current_per_commitment_point_arg_ref; - CHECK(*((uint32_t*)my_current_per_commitment_point_arg) == 33); - memcpy(my_current_per_commitment_point_arg_ref.compressed_form, (uint8_t*)(my_current_per_commitment_point_arg + 4), 33); - LDKDataLossProtect ret_var = DataLossProtect_new(your_last_per_commitment_secret_arg_ref, my_current_per_commitment_point_arg_ref); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int64_t __attribute__((visibility("default"))) TS_AcceptChannel_get_max_htlc_value_in_flight_msat(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = AcceptChannel_get_max_htlc_value_in_flight_msat(&this_ptr_conv); + return ret_val; } -static inline uint64_t DataLossProtect_clone_ptr(LDKDataLossProtect *NONNULL_PTR arg) { - LDKDataLossProtect ret_var = DataLossProtect_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; +void __attribute__((visibility("default"))) TS_AcceptChannel_set_max_htlc_value_in_flight_msat(uint32_t this_ptr, int64_t val) { + LDKAcceptChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + AcceptChannel_set_max_htlc_value_in_flight_msat(&this_ptr_conv, val); } -int64_t __attribute__((visibility("default"))) TS_DataLossProtect_clone_ptr(uint32_t arg) { - LDKDataLossProtect arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = DataLossProtect_clone_ptr(&arg_conv); + +int64_t __attribute__((visibility("default"))) TS_AcceptChannel_get_channel_reserve_satoshis(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = AcceptChannel_get_channel_reserve_satoshis(&this_ptr_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_DataLossProtect_clone(uint32_t orig) { - LDKDataLossProtect orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKDataLossProtect ret_var = DataLossProtect_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_AcceptChannel_set_channel_reserve_satoshis(uint32_t this_ptr, int64_t val) { + LDKAcceptChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + AcceptChannel_set_channel_reserve_satoshis(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_ChannelReestablish_free(uint32_t this_obj) { - LDKChannelReestablish this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelReestablish_free(this_obj_conv); +int64_t __attribute__((visibility("default"))) TS_AcceptChannel_get_htlc_minimum_msat(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = AcceptChannel_get_htlc_minimum_msat(&this_ptr_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_ChannelReestablish_get_channel_id(uint32_t this_ptr) { - LDKChannelReestablish this_ptr_conv; +void __attribute__((visibility("default"))) TS_AcceptChannel_set_htlc_minimum_msat(uint32_t this_ptr, int64_t val) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *ChannelReestablish_get_channel_id(&this_ptr_conv), 32); - return ret_arr; + AcceptChannel_set_htlc_minimum_msat(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_ChannelReestablish_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKChannelReestablish this_ptr_conv; +int32_t __attribute__((visibility("default"))) TS_AcceptChannel_get_minimum_depth(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - ChannelReestablish_set_channel_id(&this_ptr_conv, val_ref); + int32_t ret_val = AcceptChannel_get_minimum_depth(&this_ptr_conv); + return ret_val; } -int64_t __attribute__((visibility("default"))) TS_ChannelReestablish_get_next_local_commitment_number(uint32_t this_ptr) { - LDKChannelReestablish this_ptr_conv; +void __attribute__((visibility("default"))) TS_AcceptChannel_set_minimum_depth(uint32_t this_ptr, int32_t val) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelReestablish_get_next_local_commitment_number(&this_ptr_conv); + AcceptChannel_set_minimum_depth(&this_ptr_conv, val); +} + +int16_t __attribute__((visibility("default"))) TS_AcceptChannel_get_to_self_delay(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int16_t ret_val = AcceptChannel_get_to_self_delay(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelReestablish_set_next_local_commitment_number(uint32_t this_ptr, int64_t val) { - LDKChannelReestablish this_ptr_conv; +void __attribute__((visibility("default"))) TS_AcceptChannel_set_to_self_delay(uint32_t this_ptr, int16_t val) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelReestablish_set_next_local_commitment_number(&this_ptr_conv, val); + AcceptChannel_set_to_self_delay(&this_ptr_conv, val); } -int64_t __attribute__((visibility("default"))) TS_ChannelReestablish_get_next_remote_commitment_number(uint32_t this_ptr) { - LDKChannelReestablish this_ptr_conv; +int16_t __attribute__((visibility("default"))) TS_AcceptChannel_get_max_accepted_htlcs(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelReestablish_get_next_remote_commitment_number(&this_ptr_conv); + int16_t ret_val = AcceptChannel_get_max_accepted_htlcs(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelReestablish_set_next_remote_commitment_number(uint32_t this_ptr, int64_t val) { - LDKChannelReestablish this_ptr_conv; +void __attribute__((visibility("default"))) TS_AcceptChannel_set_max_accepted_htlcs(uint32_t this_ptr, int16_t val) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelReestablish_set_next_remote_commitment_number(&this_ptr_conv, val); + AcceptChannel_set_max_accepted_htlcs(&this_ptr_conv, val); } -static inline uint64_t ChannelReestablish_clone_ptr(LDKChannelReestablish *NONNULL_PTR arg) { - LDKChannelReestablish ret_var = ChannelReestablish_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_funding_pubkey(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, AcceptChannel_get_funding_pubkey(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -int64_t __attribute__((visibility("default"))) TS_ChannelReestablish_clone_ptr(uint32_t arg) { - LDKChannelReestablish arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelReestablish_clone_ptr(&arg_conv); - return ret_val; + +void __attribute__((visibility("default"))) TS_AcceptChannel_set_funding_pubkey(uint32_t this_ptr, int8_tArray val) { + LDKAcceptChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + AcceptChannel_set_funding_pubkey(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_ChannelReestablish_clone(uint32_t orig) { - LDKChannelReestablish orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelReestablish ret_var = ChannelReestablish_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_revocation_basepoint(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, AcceptChannel_get_revocation_basepoint(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -void __attribute__((visibility("default"))) TS_AnnouncementSignatures_free(uint32_t this_obj) { - LDKAnnouncementSignatures this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - AnnouncementSignatures_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_AcceptChannel_set_revocation_basepoint(uint32_t this_ptr, int8_tArray val) { + LDKAcceptChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + AcceptChannel_set_revocation_basepoint(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_AnnouncementSignatures_get_channel_id(uint32_t this_ptr) { - LDKAnnouncementSignatures this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_payment_point(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *AnnouncementSignatures_get_channel_id(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, AcceptChannel_get_payment_point(&this_ptr_conv).compressed_form, 33); return ret_arr; } -void __attribute__((visibility("default"))) TS_AnnouncementSignatures_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKAnnouncementSignatures this_ptr_conv; +void __attribute__((visibility("default"))) TS_AcceptChannel_set_payment_point(uint32_t this_ptr, int8_tArray val) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - AnnouncementSignatures_set_channel_id(&this_ptr_conv, val_ref); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + AcceptChannel_set_payment_point(&this_ptr_conv, val_ref); } -int64_t __attribute__((visibility("default"))) TS_AnnouncementSignatures_get_short_channel_id(uint32_t this_ptr) { - LDKAnnouncementSignatures this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_delayed_payment_basepoint(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = AnnouncementSignatures_get_short_channel_id(&this_ptr_conv); - return ret_val; + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, AcceptChannel_get_delayed_payment_basepoint(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -void __attribute__((visibility("default"))) TS_AnnouncementSignatures_set_short_channel_id(uint32_t this_ptr, int64_t val) { - LDKAnnouncementSignatures this_ptr_conv; +void __attribute__((visibility("default"))) TS_AcceptChannel_set_delayed_payment_basepoint(uint32_t this_ptr, int8_tArray val) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - AnnouncementSignatures_set_short_channel_id(&this_ptr_conv, val); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + AcceptChannel_set_delayed_payment_basepoint(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_AnnouncementSignatures_get_node_signature(uint32_t this_ptr) { - LDKAnnouncementSignatures this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_htlc_basepoint(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), AnnouncementSignatures_get_node_signature(&this_ptr_conv).compact_form, 64); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, AcceptChannel_get_htlc_basepoint(&this_ptr_conv).compressed_form, 33); return ret_arr; } -void __attribute__((visibility("default"))) TS_AnnouncementSignatures_set_node_signature(uint32_t this_ptr, int8_tArray val) { - LDKAnnouncementSignatures this_ptr_conv; +void __attribute__((visibility("default"))) TS_AcceptChannel_set_htlc_basepoint(uint32_t this_ptr, int8_tArray val) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSignature val_ref; - CHECK(*((uint32_t*)val) == 64); - memcpy(val_ref.compact_form, (uint8_t*)(val + 4), 64); - AnnouncementSignatures_set_node_signature(&this_ptr_conv, val_ref); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + AcceptChannel_set_htlc_basepoint(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_AnnouncementSignatures_get_bitcoin_signature(uint32_t this_ptr) { - LDKAnnouncementSignatures this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_first_per_commitment_point(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), AnnouncementSignatures_get_bitcoin_signature(&this_ptr_conv).compact_form, 64); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, AcceptChannel_get_first_per_commitment_point(&this_ptr_conv).compressed_form, 33); return ret_arr; } -void __attribute__((visibility("default"))) TS_AnnouncementSignatures_set_bitcoin_signature(uint32_t this_ptr, int8_tArray val) { - LDKAnnouncementSignatures this_ptr_conv; +void __attribute__((visibility("default"))) TS_AcceptChannel_set_first_per_commitment_point(uint32_t this_ptr, int8_tArray val) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSignature val_ref; - CHECK(*((uint32_t*)val) == 64); - memcpy(val_ref.compact_form, (uint8_t*)(val + 4), 64); - AnnouncementSignatures_set_bitcoin_signature(&this_ptr_conv, val_ref); -} - -uint32_t __attribute__((visibility("default"))) TS_AnnouncementSignatures_new(int8_tArray channel_id_arg, int64_t short_channel_id_arg, int8_tArray node_signature_arg, int8_tArray bitcoin_signature_arg) { - LDKThirtyTwoBytes channel_id_arg_ref; - CHECK(*((uint32_t*)channel_id_arg) == 32); - memcpy(channel_id_arg_ref.data, (uint8_t*)(channel_id_arg + 4), 32); - LDKSignature node_signature_arg_ref; - CHECK(*((uint32_t*)node_signature_arg) == 64); - memcpy(node_signature_arg_ref.compact_form, (uint8_t*)(node_signature_arg + 4), 64); - LDKSignature bitcoin_signature_arg_ref; - CHECK(*((uint32_t*)bitcoin_signature_arg) == 64); - memcpy(bitcoin_signature_arg_ref.compact_form, (uint8_t*)(bitcoin_signature_arg + 4), 64); - LDKAnnouncementSignatures ret_var = AnnouncementSignatures_new(channel_id_arg_ref, short_channel_id_arg, node_signature_arg_ref, bitcoin_signature_arg_ref); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + AcceptChannel_set_first_per_commitment_point(&this_ptr_conv, val_ref); } -static inline uint64_t AnnouncementSignatures_clone_ptr(LDKAnnouncementSignatures *NONNULL_PTR arg) { - LDKAnnouncementSignatures ret_var = AnnouncementSignatures_clone(arg); +static inline uint64_t AcceptChannel_clone_ptr(LDKAcceptChannel *NONNULL_PTR arg) { + LDKAcceptChannel ret_var = AcceptChannel_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -25493,21 +23139,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_AnnouncementSignatures_clone_ptr(uint32_t arg) { - LDKAnnouncementSignatures arg_conv; +int64_t __attribute__((visibility("default"))) TS_AcceptChannel_clone_ptr(uint32_t arg) { + LDKAcceptChannel arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = AnnouncementSignatures_clone_ptr(&arg_conv); + int64_t ret_val = AcceptChannel_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_AnnouncementSignatures_clone(uint32_t orig) { - LDKAnnouncementSignatures orig_conv; +uint32_t __attribute__((visibility("default"))) TS_AcceptChannel_clone(uint32_t orig) { + LDKAcceptChannel orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKAnnouncementSignatures ret_var = AnnouncementSignatures_clone(&orig_conv); + LDKAcceptChannel ret_var = AcceptChannel_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -25519,236 +23165,118 @@ uint32_t __attribute__((visibility("default"))) TS_AnnouncementSignatures_clone return ret_ref; } -void __attribute__((visibility("default"))) TS_NetAddress_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKNetAddress this_ptr_conv = *(LDKNetAddress*)(this_ptr_ptr); - FREE((void*)this_ptr); - NetAddress_free(this_ptr_conv); -} - -static inline uint64_t NetAddress_clone_ptr(LDKNetAddress *NONNULL_PTR arg) { - LDKNetAddress *ret_copy = MALLOC(sizeof(LDKNetAddress), "LDKNetAddress"); - *ret_copy = NetAddress_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_NetAddress_clone_ptr(uint32_t arg) { - LDKNetAddress* arg_conv = (LDKNetAddress*)arg; - int64_t ret_val = NetAddress_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_NetAddress_clone(uint32_t orig) { - LDKNetAddress* orig_conv = (LDKNetAddress*)orig; - LDKNetAddress *ret_copy = MALLOC(sizeof(LDKNetAddress), "LDKNetAddress"); - *ret_copy = NetAddress_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_NetAddress_ipv4(int8_tArray addr, int16_t port) { - LDKFourBytes addr_ref; - CHECK(*((uint32_t*)addr) == 4); - memcpy(addr_ref.data, (uint8_t*)(addr + 4), 4); - LDKNetAddress *ret_copy = MALLOC(sizeof(LDKNetAddress), "LDKNetAddress"); - *ret_copy = NetAddress_ipv4(addr_ref, port); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_NetAddress_ipv6(int8_tArray addr, int16_t port) { - LDKSixteenBytes addr_ref; - CHECK(*((uint32_t*)addr) == 16); - memcpy(addr_ref.data, (uint8_t*)(addr + 4), 16); - LDKNetAddress *ret_copy = MALLOC(sizeof(LDKNetAddress), "LDKNetAddress"); - *ret_copy = NetAddress_ipv6(addr_ref, port); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_NetAddress_onion_v2(int8_tArray a) { - LDKTwelveBytes a_ref; - CHECK(*((uint32_t*)a) == 12); - memcpy(a_ref.data, (uint8_t*)(a + 4), 12); - LDKNetAddress *ret_copy = MALLOC(sizeof(LDKNetAddress), "LDKNetAddress"); - *ret_copy = NetAddress_onion_v2(a_ref); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_NetAddress_onion_v3(int8_tArray ed25519_pubkey, int16_t checksum, int8_t version, int16_t port) { - LDKThirtyTwoBytes ed25519_pubkey_ref; - CHECK(*((uint32_t*)ed25519_pubkey) == 32); - memcpy(ed25519_pubkey_ref.data, (uint8_t*)(ed25519_pubkey + 4), 32); - LDKNetAddress *ret_copy = MALLOC(sizeof(LDKNetAddress), "LDKNetAddress"); - *ret_copy = NetAddress_onion_v3(ed25519_pubkey_ref, checksum, version, port); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -int8_tArray __attribute__((visibility("default"))) TS_NetAddress_write(uint32_t obj) { - LDKNetAddress* obj_conv = (LDKNetAddress*)obj; - LDKCVec_u8Z ret_var = NetAddress_write(obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_NetAddress_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_NetAddressDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NetAddressDecodeErrorZ), "LDKCResult_NetAddressDecodeErrorZ"); - *ret_conv = NetAddress_read(ser_ref); - return (uint64_t)ret_conv; -} - -void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_free(uint32_t this_obj) { - LDKUnsignedNodeAnnouncement this_obj_conv; +void __attribute__((visibility("default"))) TS_FundingCreated_free(uint32_t this_obj) { + LDKFundingCreated this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - UnsignedNodeAnnouncement_free(this_obj_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_get_features(uint32_t this_ptr) { - LDKUnsignedNodeAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeFeatures ret_var = UnsignedNodeAnnouncement_get_features(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; -} - -void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_set_features(uint32_t this_ptr, uint32_t val) { - LDKUnsignedNodeAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeFeatures val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = NodeFeatures_clone(&val_conv); - UnsignedNodeAnnouncement_set_features(&this_ptr_conv, val_conv); + FundingCreated_free(this_obj_conv); } -int32_t __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_get_timestamp(uint32_t this_ptr) { - LDKUnsignedNodeAnnouncement this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_FundingCreated_get_temporary_channel_id(uint32_t this_ptr) { + LDKFundingCreated this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = UnsignedNodeAnnouncement_get_timestamp(&this_ptr_conv); - return ret_val; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *FundingCreated_get_temporary_channel_id(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_set_timestamp(uint32_t this_ptr, int32_t val) { - LDKUnsignedNodeAnnouncement this_ptr_conv; +void __attribute__((visibility("default"))) TS_FundingCreated_set_temporary_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKFundingCreated this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UnsignedNodeAnnouncement_set_timestamp(&this_ptr_conv, val); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + FundingCreated_set_temporary_channel_id(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_get_node_id(uint32_t this_ptr) { - LDKUnsignedNodeAnnouncement this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_FundingCreated_get_funding_txid(uint32_t this_ptr) { + LDKFundingCreated this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), UnsignedNodeAnnouncement_get_node_id(&this_ptr_conv).compressed_form, 33); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *FundingCreated_get_funding_txid(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_set_node_id(uint32_t this_ptr, int8_tArray val) { - LDKUnsignedNodeAnnouncement this_ptr_conv; +void __attribute__((visibility("default"))) TS_FundingCreated_set_funding_txid(uint32_t this_ptr, int8_tArray val) { + LDKFundingCreated this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - UnsignedNodeAnnouncement_set_node_id(&this_ptr_conv, val_ref); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + FundingCreated_set_funding_txid(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_get_rgb(uint32_t this_ptr) { - LDKUnsignedNodeAnnouncement this_ptr_conv; +int16_t __attribute__((visibility("default"))) TS_FundingCreated_get_funding_output_index(uint32_t this_ptr) { + LDKFundingCreated this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(3, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *UnsignedNodeAnnouncement_get_rgb(&this_ptr_conv), 3); - return ret_arr; + int16_t ret_val = FundingCreated_get_funding_output_index(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_set_rgb(uint32_t this_ptr, int8_tArray val) { - LDKUnsignedNodeAnnouncement this_ptr_conv; +void __attribute__((visibility("default"))) TS_FundingCreated_set_funding_output_index(uint32_t this_ptr, int16_t val) { + LDKFundingCreated this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThreeBytes val_ref; - CHECK(*((uint32_t*)val) == 3); - memcpy(val_ref.data, (uint8_t*)(val + 4), 3); - UnsignedNodeAnnouncement_set_rgb(&this_ptr_conv, val_ref); + FundingCreated_set_funding_output_index(&this_ptr_conv, val); } -int8_tArray __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_get_alias(uint32_t this_ptr) { - LDKUnsignedNodeAnnouncement this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_FundingCreated_get_signature(uint32_t this_ptr) { + LDKFundingCreated this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *UnsignedNodeAnnouncement_get_alias(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, FundingCreated_get_signature(&this_ptr_conv).compact_form, 64); return ret_arr; } -void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_set_alias(uint32_t this_ptr, int8_tArray val) { - LDKUnsignedNodeAnnouncement this_ptr_conv; +void __attribute__((visibility("default"))) TS_FundingCreated_set_signature(uint32_t this_ptr, int8_tArray val) { + LDKFundingCreated this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - UnsignedNodeAnnouncement_set_alias(&this_ptr_conv, val_ref); + LDKSignature val_ref; + CHECK(val->arr_len == 64); + memcpy(val_ref.compact_form, val->elems, 64); + FundingCreated_set_signature(&this_ptr_conv, val_ref); } -void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_set_addresses(uint32_t this_ptr, uint32_tArray val) { - LDKUnsignedNodeAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_NetAddressZ val_constr; - val_constr.datalen = *((uint32_t*)val); - if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKNetAddress), "LDKCVec_NetAddressZ Elements"); - else - val_constr.data = NULL; - uint32_t* val_vals = (uint32_t*)(val + 4); - for (size_t m = 0; m < val_constr.datalen; m++) { - uint32_t val_conv_12 = val_vals[m]; - void* val_conv_12_ptr = (void*)(((uint64_t)val_conv_12) & ~1); - CHECK_ACCESS(val_conv_12_ptr); - LDKNetAddress val_conv_12_conv = *(LDKNetAddress*)(val_conv_12_ptr); - val_conv_12_conv = NetAddress_clone((LDKNetAddress*)(((uint64_t)val_conv_12) & ~1)); - val_constr.data[m] = val_conv_12_conv; +uint32_t __attribute__((visibility("default"))) TS_FundingCreated_new(int8_tArray temporary_channel_id_arg, int8_tArray funding_txid_arg, int16_t funding_output_index_arg, int8_tArray signature_arg) { + LDKThirtyTwoBytes temporary_channel_id_arg_ref; + CHECK(temporary_channel_id_arg->arr_len == 32); + memcpy(temporary_channel_id_arg_ref.data, temporary_channel_id_arg->elems, 32); + LDKThirtyTwoBytes funding_txid_arg_ref; + CHECK(funding_txid_arg->arr_len == 32); + memcpy(funding_txid_arg_ref.data, funding_txid_arg->elems, 32); + LDKSignature signature_arg_ref; + CHECK(signature_arg->arr_len == 64); + memcpy(signature_arg_ref.compact_form, signature_arg->elems, 64); + LDKFundingCreated ret_var = FundingCreated_new(temporary_channel_id_arg_ref, funding_txid_arg_ref, funding_output_index_arg, signature_arg_ref); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - UnsignedNodeAnnouncement_set_addresses(&this_ptr_conv, val_constr); + return ret_ref; } -static inline uint64_t UnsignedNodeAnnouncement_clone_ptr(LDKUnsignedNodeAnnouncement *NONNULL_PTR arg) { - LDKUnsignedNodeAnnouncement ret_var = UnsignedNodeAnnouncement_clone(arg); +static inline uint64_t FundingCreated_clone_ptr(LDKFundingCreated *NONNULL_PTR arg) { + LDKFundingCreated ret_var = FundingCreated_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -25759,21 +23287,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_clone_ptr(uint32_t arg) { - LDKUnsignedNodeAnnouncement arg_conv; +int64_t __attribute__((visibility("default"))) TS_FundingCreated_clone_ptr(uint32_t arg) { + LDKFundingCreated arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = UnsignedNodeAnnouncement_clone_ptr(&arg_conv); + int64_t ret_val = FundingCreated_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_clone(uint32_t orig) { - LDKUnsignedNodeAnnouncement orig_conv; +uint32_t __attribute__((visibility("default"))) TS_FundingCreated_clone(uint32_t orig) { + LDKFundingCreated orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKUnsignedNodeAnnouncement ret_var = UnsignedNodeAnnouncement_clone(&orig_conv); + LDKFundingCreated ret_var = FundingCreated_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -25785,75 +23313,64 @@ uint32_t __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_clo return ret_ref; } -void __attribute__((visibility("default"))) TS_NodeAnnouncement_free(uint32_t this_obj) { - LDKNodeAnnouncement this_obj_conv; +void __attribute__((visibility("default"))) TS_FundingSigned_free(uint32_t this_obj) { + LDKFundingSigned this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - NodeAnnouncement_free(this_obj_conv); + FundingSigned_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_NodeAnnouncement_get_signature(uint32_t this_ptr) { - LDKNodeAnnouncement this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_FundingSigned_get_channel_id(uint32_t this_ptr) { + LDKFundingSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), NodeAnnouncement_get_signature(&this_ptr_conv).compact_form, 64); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *FundingSigned_get_channel_id(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_NodeAnnouncement_set_signature(uint32_t this_ptr, int8_tArray val) { - LDKNodeAnnouncement this_ptr_conv; +void __attribute__((visibility("default"))) TS_FundingSigned_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKFundingSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSignature val_ref; - CHECK(*((uint32_t*)val) == 64); - memcpy(val_ref.compact_form, (uint8_t*)(val + 4), 64); - NodeAnnouncement_set_signature(&this_ptr_conv, val_ref); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + FundingSigned_set_channel_id(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncement_get_contents(uint32_t this_ptr) { - LDKNodeAnnouncement this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_FundingSigned_get_signature(uint32_t this_ptr) { + LDKFundingSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKUnsignedNodeAnnouncement ret_var = NodeAnnouncement_get_contents(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, FundingSigned_get_signature(&this_ptr_conv).compact_form, 64); + return ret_arr; } -void __attribute__((visibility("default"))) TS_NodeAnnouncement_set_contents(uint32_t this_ptr, uint32_t val) { - LDKNodeAnnouncement this_ptr_conv; +void __attribute__((visibility("default"))) TS_FundingSigned_set_signature(uint32_t this_ptr, int8_tArray val) { + LDKFundingSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKUnsignedNodeAnnouncement val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = UnsignedNodeAnnouncement_clone(&val_conv); - NodeAnnouncement_set_contents(&this_ptr_conv, val_conv); + LDKSignature val_ref; + CHECK(val->arr_len == 64); + memcpy(val_ref.compact_form, val->elems, 64); + FundingSigned_set_signature(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncement_new(int8_tArray signature_arg, uint32_t contents_arg) { +uint32_t __attribute__((visibility("default"))) TS_FundingSigned_new(int8_tArray channel_id_arg, int8_tArray signature_arg) { + LDKThirtyTwoBytes channel_id_arg_ref; + CHECK(channel_id_arg->arr_len == 32); + memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); LDKSignature signature_arg_ref; - CHECK(*((uint32_t*)signature_arg) == 64); - memcpy(signature_arg_ref.compact_form, (uint8_t*)(signature_arg + 4), 64); - LDKUnsignedNodeAnnouncement contents_arg_conv; - contents_arg_conv.inner = (void*)(contents_arg & (~1)); - contents_arg_conv.is_owned = (contents_arg & 1) || (contents_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(contents_arg_conv); - contents_arg_conv = UnsignedNodeAnnouncement_clone(&contents_arg_conv); - LDKNodeAnnouncement ret_var = NodeAnnouncement_new(signature_arg_ref, contents_arg_conv); + CHECK(signature_arg->arr_len == 64); + memcpy(signature_arg_ref.compact_form, signature_arg->elems, 64); + LDKFundingSigned ret_var = FundingSigned_new(channel_id_arg_ref, signature_arg_ref); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -25865,8 +23382,8 @@ uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncement_new(int8_tA return ret_ref; } -static inline uint64_t NodeAnnouncement_clone_ptr(LDKNodeAnnouncement *NONNULL_PTR arg) { - LDKNodeAnnouncement ret_var = NodeAnnouncement_clone(arg); +static inline uint64_t FundingSigned_clone_ptr(LDKFundingSigned *NONNULL_PTR arg) { + LDKFundingSigned ret_var = FundingSigned_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -25877,21 +23394,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_NodeAnnouncement_clone_ptr(uint32_t arg) { - LDKNodeAnnouncement arg_conv; +int64_t __attribute__((visibility("default"))) TS_FundingSigned_clone_ptr(uint32_t arg) { + LDKFundingSigned arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = NodeAnnouncement_clone_ptr(&arg_conv); + int64_t ret_val = FundingSigned_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncement_clone(uint32_t orig) { - LDKNodeAnnouncement orig_conv; +uint32_t __attribute__((visibility("default"))) TS_FundingSigned_clone(uint32_t orig) { + LDKFundingSigned orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKNodeAnnouncement ret_var = NodeAnnouncement_clone(&orig_conv); + LDKFundingSigned ret_var = FundingSigned_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -25903,168 +23420,187 @@ uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncement_clone(uint3 return ret_ref; } -void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_free(uint32_t this_obj) { - LDKUnsignedChannelAnnouncement this_obj_conv; +void __attribute__((visibility("default"))) TS_FundingLocked_free(uint32_t this_obj) { + LDKFundingLocked this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - UnsignedChannelAnnouncement_free(this_obj_conv); + FundingLocked_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_features(uint32_t this_ptr) { - LDKUnsignedChannelAnnouncement this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_FundingLocked_get_channel_id(uint32_t this_ptr) { + LDKFundingLocked this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelFeatures ret_var = UnsignedChannelAnnouncement_get_features(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *FundingLocked_get_channel_id(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_features(uint32_t this_ptr, uint32_t val) { - LDKUnsignedChannelAnnouncement this_ptr_conv; +void __attribute__((visibility("default"))) TS_FundingLocked_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKFundingLocked this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelFeatures val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = ChannelFeatures_clone(&val_conv); - UnsignedChannelAnnouncement_set_features(&this_ptr_conv, val_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + FundingLocked_set_channel_id(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_chain_hash(uint32_t this_ptr) { - LDKUnsignedChannelAnnouncement this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_FundingLocked_get_next_per_commitment_point(uint32_t this_ptr) { + LDKFundingLocked this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *UnsignedChannelAnnouncement_get_chain_hash(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, FundingLocked_get_next_per_commitment_point(&this_ptr_conv).compressed_form, 33); return ret_arr; } -void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_chain_hash(uint32_t this_ptr, int8_tArray val) { - LDKUnsignedChannelAnnouncement this_ptr_conv; +void __attribute__((visibility("default"))) TS_FundingLocked_set_next_per_commitment_point(uint32_t this_ptr, int8_tArray val) { + LDKFundingLocked this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - UnsignedChannelAnnouncement_set_chain_hash(&this_ptr_conv, val_ref); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + FundingLocked_set_next_per_commitment_point(&this_ptr_conv, val_ref); } -int64_t __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_short_channel_id(uint32_t this_ptr) { - LDKUnsignedChannelAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = UnsignedChannelAnnouncement_get_short_channel_id(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_FundingLocked_new(int8_tArray channel_id_arg, int8_tArray next_per_commitment_point_arg) { + LDKThirtyTwoBytes channel_id_arg_ref; + CHECK(channel_id_arg->arr_len == 32); + memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); + LDKPublicKey next_per_commitment_point_arg_ref; + CHECK(next_per_commitment_point_arg->arr_len == 33); + memcpy(next_per_commitment_point_arg_ref.compressed_form, next_per_commitment_point_arg->elems, 33); + LDKFundingLocked ret_var = FundingLocked_new(channel_id_arg_ref, next_per_commitment_point_arg_ref); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_short_channel_id(uint32_t this_ptr, int64_t val) { - LDKUnsignedChannelAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UnsignedChannelAnnouncement_set_short_channel_id(&this_ptr_conv, val); +static inline uint64_t FundingLocked_clone_ptr(LDKFundingLocked *NONNULL_PTR arg) { + LDKFundingLocked ret_var = FundingLocked_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_node_id_1(uint32_t this_ptr) { - LDKUnsignedChannelAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), UnsignedChannelAnnouncement_get_node_id_1(&this_ptr_conv).compressed_form, 33); - return ret_arr; + return ret_ref; } - -void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_node_id_1(uint32_t this_ptr, int8_tArray val) { - LDKUnsignedChannelAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - UnsignedChannelAnnouncement_set_node_id_1(&this_ptr_conv, val_ref); +int64_t __attribute__((visibility("default"))) TS_FundingLocked_clone_ptr(uint32_t arg) { + LDKFundingLocked arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = FundingLocked_clone_ptr(&arg_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_node_id_2(uint32_t this_ptr) { - LDKUnsignedChannelAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), UnsignedChannelAnnouncement_get_node_id_2(&this_ptr_conv).compressed_form, 33); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_FundingLocked_clone(uint32_t orig) { + LDKFundingLocked orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKFundingLocked ret_var = FundingLocked_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_node_id_2(uint32_t this_ptr, int8_tArray val) { - LDKUnsignedChannelAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - UnsignedChannelAnnouncement_set_node_id_2(&this_ptr_conv, val_ref); +void __attribute__((visibility("default"))) TS_Shutdown_free(uint32_t this_obj) { + LDKShutdown this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + Shutdown_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_bitcoin_key_1(uint32_t this_ptr) { - LDKUnsignedChannelAnnouncement this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_Shutdown_get_channel_id(uint32_t this_ptr) { + LDKShutdown this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), UnsignedChannelAnnouncement_get_bitcoin_key_1(&this_ptr_conv).compressed_form, 33); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *Shutdown_get_channel_id(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_bitcoin_key_1(uint32_t this_ptr, int8_tArray val) { - LDKUnsignedChannelAnnouncement this_ptr_conv; +void __attribute__((visibility("default"))) TS_Shutdown_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKShutdown this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - UnsignedChannelAnnouncement_set_bitcoin_key_1(&this_ptr_conv, val_ref); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + Shutdown_set_channel_id(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_bitcoin_key_2(uint32_t this_ptr) { - LDKUnsignedChannelAnnouncement this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_Shutdown_get_scriptpubkey(uint32_t this_ptr) { + LDKShutdown this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), UnsignedChannelAnnouncement_get_bitcoin_key_2(&this_ptr_conv).compressed_form, 33); + LDKu8slice ret_var = Shutdown_get_scriptpubkey(&this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); return ret_arr; } -void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_bitcoin_key_2(uint32_t this_ptr, int8_tArray val) { - LDKUnsignedChannelAnnouncement this_ptr_conv; +void __attribute__((visibility("default"))) TS_Shutdown_set_scriptpubkey(uint32_t this_ptr, int8_tArray val) { + LDKShutdown this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - UnsignedChannelAnnouncement_set_bitcoin_key_2(&this_ptr_conv, val_ref); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_u8Z val_ref; + val_ref.datalen = val->arr_len; + val_ref.data = MALLOC(val_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(val_ref.data, val->elems, val_ref.datalen); + Shutdown_set_scriptpubkey(&this_ptr_conv, val_ref); } -static inline uint64_t UnsignedChannelAnnouncement_clone_ptr(LDKUnsignedChannelAnnouncement *NONNULL_PTR arg) { - LDKUnsignedChannelAnnouncement ret_var = UnsignedChannelAnnouncement_clone(arg); +uint32_t __attribute__((visibility("default"))) TS_Shutdown_new(int8_tArray channel_id_arg, int8_tArray scriptpubkey_arg) { + LDKThirtyTwoBytes channel_id_arg_ref; + CHECK(channel_id_arg->arr_len == 32); + memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); + LDKCVec_u8Z scriptpubkey_arg_ref; + scriptpubkey_arg_ref.datalen = scriptpubkey_arg->arr_len; + scriptpubkey_arg_ref.data = MALLOC(scriptpubkey_arg_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(scriptpubkey_arg_ref.data, scriptpubkey_arg->elems, scriptpubkey_arg_ref.datalen); + LDKShutdown ret_var = Shutdown_new(channel_id_arg_ref, scriptpubkey_arg_ref); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +static inline uint64_t Shutdown_clone_ptr(LDKShutdown *NONNULL_PTR arg) { + LDKShutdown ret_var = Shutdown_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26075,21 +23611,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_clone_ptr(uint32_t arg) { - LDKUnsignedChannelAnnouncement arg_conv; +int64_t __attribute__((visibility("default"))) TS_Shutdown_clone_ptr(uint32_t arg) { + LDKShutdown arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = UnsignedChannelAnnouncement_clone_ptr(&arg_conv); + int64_t ret_val = Shutdown_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_clone(uint32_t orig) { - LDKUnsignedChannelAnnouncement orig_conv; +uint32_t __attribute__((visibility("default"))) TS_Shutdown_clone(uint32_t orig) { + LDKShutdown orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKUnsignedChannelAnnouncement ret_var = UnsignedChannelAnnouncement_clone(&orig_conv); + LDKShutdown ret_var = Shutdown_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26101,147 +23637,50 @@ uint32_t __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_ return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelAnnouncement_free(uint32_t this_obj) { - LDKChannelAnnouncement this_obj_conv; +void __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_free(uint32_t this_obj) { + LDKClosingSignedFeeRange this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelAnnouncement_free(this_obj_conv); -} - -int8_tArray __attribute__((visibility("default"))) TS_ChannelAnnouncement_get_node_signature_1(uint32_t this_ptr) { - LDKChannelAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ChannelAnnouncement_get_node_signature_1(&this_ptr_conv).compact_form, 64); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_ChannelAnnouncement_set_node_signature_1(uint32_t this_ptr, int8_tArray val) { - LDKChannelAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSignature val_ref; - CHECK(*((uint32_t*)val) == 64); - memcpy(val_ref.compact_form, (uint8_t*)(val + 4), 64); - ChannelAnnouncement_set_node_signature_1(&this_ptr_conv, val_ref); -} - -int8_tArray __attribute__((visibility("default"))) TS_ChannelAnnouncement_get_node_signature_2(uint32_t this_ptr) { - LDKChannelAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ChannelAnnouncement_get_node_signature_2(&this_ptr_conv).compact_form, 64); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_ChannelAnnouncement_set_node_signature_2(uint32_t this_ptr, int8_tArray val) { - LDKChannelAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSignature val_ref; - CHECK(*((uint32_t*)val) == 64); - memcpy(val_ref.compact_form, (uint8_t*)(val + 4), 64); - ChannelAnnouncement_set_node_signature_2(&this_ptr_conv, val_ref); -} - -int8_tArray __attribute__((visibility("default"))) TS_ChannelAnnouncement_get_bitcoin_signature_1(uint32_t this_ptr) { - LDKChannelAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ChannelAnnouncement_get_bitcoin_signature_1(&this_ptr_conv).compact_form, 64); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_ChannelAnnouncement_set_bitcoin_signature_1(uint32_t this_ptr, int8_tArray val) { - LDKChannelAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSignature val_ref; - CHECK(*((uint32_t*)val) == 64); - memcpy(val_ref.compact_form, (uint8_t*)(val + 4), 64); - ChannelAnnouncement_set_bitcoin_signature_1(&this_ptr_conv, val_ref); + ClosingSignedFeeRange_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_ChannelAnnouncement_get_bitcoin_signature_2(uint32_t this_ptr) { - LDKChannelAnnouncement this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_get_min_fee_satoshis(uint32_t this_ptr) { + LDKClosingSignedFeeRange this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ChannelAnnouncement_get_bitcoin_signature_2(&this_ptr_conv).compact_form, 64); - return ret_arr; + int64_t ret_val = ClosingSignedFeeRange_get_min_fee_satoshis(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelAnnouncement_set_bitcoin_signature_2(uint32_t this_ptr, int8_tArray val) { - LDKChannelAnnouncement this_ptr_conv; +void __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_set_min_fee_satoshis(uint32_t this_ptr, int64_t val) { + LDKClosingSignedFeeRange this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSignature val_ref; - CHECK(*((uint32_t*)val) == 64); - memcpy(val_ref.compact_form, (uint8_t*)(val + 4), 64); - ChannelAnnouncement_set_bitcoin_signature_2(&this_ptr_conv, val_ref); + ClosingSignedFeeRange_set_min_fee_satoshis(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_ChannelAnnouncement_get_contents(uint32_t this_ptr) { - LDKChannelAnnouncement this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_get_max_fee_satoshis(uint32_t this_ptr) { + LDKClosingSignedFeeRange this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKUnsignedChannelAnnouncement ret_var = ChannelAnnouncement_get_contents(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + int64_t ret_val = ClosingSignedFeeRange_get_max_fee_satoshis(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelAnnouncement_set_contents(uint32_t this_ptr, uint32_t val) { - LDKChannelAnnouncement this_ptr_conv; +void __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_set_max_fee_satoshis(uint32_t this_ptr, int64_t val) { + LDKClosingSignedFeeRange this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKUnsignedChannelAnnouncement val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = UnsignedChannelAnnouncement_clone(&val_conv); - ChannelAnnouncement_set_contents(&this_ptr_conv, val_conv); + ClosingSignedFeeRange_set_max_fee_satoshis(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_ChannelAnnouncement_new(int8_tArray node_signature_1_arg, int8_tArray node_signature_2_arg, int8_tArray bitcoin_signature_1_arg, int8_tArray bitcoin_signature_2_arg, uint32_t contents_arg) { - LDKSignature node_signature_1_arg_ref; - CHECK(*((uint32_t*)node_signature_1_arg) == 64); - memcpy(node_signature_1_arg_ref.compact_form, (uint8_t*)(node_signature_1_arg + 4), 64); - LDKSignature node_signature_2_arg_ref; - CHECK(*((uint32_t*)node_signature_2_arg) == 64); - memcpy(node_signature_2_arg_ref.compact_form, (uint8_t*)(node_signature_2_arg + 4), 64); - LDKSignature bitcoin_signature_1_arg_ref; - CHECK(*((uint32_t*)bitcoin_signature_1_arg) == 64); - memcpy(bitcoin_signature_1_arg_ref.compact_form, (uint8_t*)(bitcoin_signature_1_arg + 4), 64); - LDKSignature bitcoin_signature_2_arg_ref; - CHECK(*((uint32_t*)bitcoin_signature_2_arg) == 64); - memcpy(bitcoin_signature_2_arg_ref.compact_form, (uint8_t*)(bitcoin_signature_2_arg + 4), 64); - LDKUnsignedChannelAnnouncement contents_arg_conv; - contents_arg_conv.inner = (void*)(contents_arg & (~1)); - contents_arg_conv.is_owned = (contents_arg & 1) || (contents_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(contents_arg_conv); - contents_arg_conv = UnsignedChannelAnnouncement_clone(&contents_arg_conv); - LDKChannelAnnouncement ret_var = ChannelAnnouncement_new(node_signature_1_arg_ref, node_signature_2_arg_ref, bitcoin_signature_1_arg_ref, bitcoin_signature_2_arg_ref, contents_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_new(int64_t min_fee_satoshis_arg, int64_t max_fee_satoshis_arg) { + LDKClosingSignedFeeRange ret_var = ClosingSignedFeeRange_new(min_fee_satoshis_arg, max_fee_satoshis_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26253,8 +23692,8 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelAnnouncement_new(int8 return ret_ref; } -static inline uint64_t ChannelAnnouncement_clone_ptr(LDKChannelAnnouncement *NONNULL_PTR arg) { - LDKChannelAnnouncement ret_var = ChannelAnnouncement_clone(arg); +static inline uint64_t ClosingSignedFeeRange_clone_ptr(LDKClosingSignedFeeRange *NONNULL_PTR arg) { + LDKClosingSignedFeeRange ret_var = ClosingSignedFeeRange_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26265,21 +23704,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ChannelAnnouncement_clone_ptr(uint32_t arg) { - LDKChannelAnnouncement arg_conv; +int64_t __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_clone_ptr(uint32_t arg) { + LDKClosingSignedFeeRange arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelAnnouncement_clone_ptr(&arg_conv); + int64_t ret_val = ClosingSignedFeeRange_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelAnnouncement_clone(uint32_t orig) { - LDKChannelAnnouncement orig_conv; +uint32_t __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_clone(uint32_t orig) { + LDKClosingSignedFeeRange orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelAnnouncement ret_var = ChannelAnnouncement_clone(&orig_conv); + LDKClosingSignedFeeRange ret_var = ClosingSignedFeeRange_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26291,156 +23730,131 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelAnnouncement_clone(ui return ret_ref; } -void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_free(uint32_t this_obj) { - LDKUnsignedChannelUpdate this_obj_conv; +void __attribute__((visibility("default"))) TS_ClosingSigned_free(uint32_t this_obj) { + LDKClosingSigned this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - UnsignedChannelUpdate_free(this_obj_conv); + ClosingSigned_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_chain_hash(uint32_t this_ptr) { - LDKUnsignedChannelUpdate this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_ClosingSigned_get_channel_id(uint32_t this_ptr) { + LDKClosingSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *UnsignedChannelUpdate_get_chain_hash(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *ClosingSigned_get_channel_id(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_chain_hash(uint32_t this_ptr, int8_tArray val) { - LDKUnsignedChannelUpdate this_ptr_conv; +void __attribute__((visibility("default"))) TS_ClosingSigned_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKClosingSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - UnsignedChannelUpdate_set_chain_hash(&this_ptr_conv, val_ref); -} - -int64_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_short_channel_id(uint32_t this_ptr) { - LDKUnsignedChannelUpdate this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = UnsignedChannelUpdate_get_short_channel_id(&this_ptr_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_short_channel_id(uint32_t this_ptr, int64_t val) { - LDKUnsignedChannelUpdate this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UnsignedChannelUpdate_set_short_channel_id(&this_ptr_conv, val); -} - -int32_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_timestamp(uint32_t this_ptr) { - LDKUnsignedChannelUpdate this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = UnsignedChannelUpdate_get_timestamp(&this_ptr_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_timestamp(uint32_t this_ptr, int32_t val) { - LDKUnsignedChannelUpdate this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UnsignedChannelUpdate_set_timestamp(&this_ptr_conv, val); -} - -int8_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_flags(uint32_t this_ptr) { - LDKUnsignedChannelUpdate this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_t ret_val = UnsignedChannelUpdate_get_flags(&this_ptr_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_flags(uint32_t this_ptr, int8_t val) { - LDKUnsignedChannelUpdate this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UnsignedChannelUpdate_set_flags(&this_ptr_conv, val); -} - -int16_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_cltv_expiry_delta(uint32_t this_ptr) { - LDKUnsignedChannelUpdate this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = UnsignedChannelUpdate_get_cltv_expiry_delta(&this_ptr_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_cltv_expiry_delta(uint32_t this_ptr, int16_t val) { - LDKUnsignedChannelUpdate this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UnsignedChannelUpdate_set_cltv_expiry_delta(&this_ptr_conv, val); + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + ClosingSigned_set_channel_id(&this_ptr_conv, val_ref); } -int64_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_htlc_minimum_msat(uint32_t this_ptr) { - LDKUnsignedChannelUpdate this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_ClosingSigned_get_fee_satoshis(uint32_t this_ptr) { + LDKClosingSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = UnsignedChannelUpdate_get_htlc_minimum_msat(&this_ptr_conv); + int64_t ret_val = ClosingSigned_get_fee_satoshis(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_htlc_minimum_msat(uint32_t this_ptr, int64_t val) { - LDKUnsignedChannelUpdate this_ptr_conv; +void __attribute__((visibility("default"))) TS_ClosingSigned_set_fee_satoshis(uint32_t this_ptr, int64_t val) { + LDKClosingSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UnsignedChannelUpdate_set_htlc_minimum_msat(&this_ptr_conv, val); + ClosingSigned_set_fee_satoshis(&this_ptr_conv, val); } -int32_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_fee_base_msat(uint32_t this_ptr) { - LDKUnsignedChannelUpdate this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_ClosingSigned_get_signature(uint32_t this_ptr) { + LDKClosingSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = UnsignedChannelUpdate_get_fee_base_msat(&this_ptr_conv); - return ret_val; + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, ClosingSigned_get_signature(&this_ptr_conv).compact_form, 64); + return ret_arr; } -void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_fee_base_msat(uint32_t this_ptr, int32_t val) { - LDKUnsignedChannelUpdate this_ptr_conv; +void __attribute__((visibility("default"))) TS_ClosingSigned_set_signature(uint32_t this_ptr, int8_tArray val) { + LDKClosingSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UnsignedChannelUpdate_set_fee_base_msat(&this_ptr_conv, val); + LDKSignature val_ref; + CHECK(val->arr_len == 64); + memcpy(val_ref.compact_form, val->elems, 64); + ClosingSigned_set_signature(&this_ptr_conv, val_ref); } -int32_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_fee_proportional_millionths(uint32_t this_ptr) { - LDKUnsignedChannelUpdate this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ClosingSigned_get_fee_range(uint32_t this_ptr) { + LDKClosingSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = UnsignedChannelUpdate_get_fee_proportional_millionths(&this_ptr_conv); - return ret_val; + LDKClosingSignedFeeRange ret_var = ClosingSigned_get_fee_range(&this_ptr_conv); + uint64_t ret_ref = 0; + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_fee_proportional_millionths(uint32_t this_ptr, int32_t val) { - LDKUnsignedChannelUpdate this_ptr_conv; +void __attribute__((visibility("default"))) TS_ClosingSigned_set_fee_range(uint32_t this_ptr, uint32_t val) { + LDKClosingSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UnsignedChannelUpdate_set_fee_proportional_millionths(&this_ptr_conv, val); + LDKClosingSignedFeeRange val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = ClosingSignedFeeRange_clone(&val_conv); + ClosingSigned_set_fee_range(&this_ptr_conv, val_conv); } -static inline uint64_t UnsignedChannelUpdate_clone_ptr(LDKUnsignedChannelUpdate *NONNULL_PTR arg) { - LDKUnsignedChannelUpdate ret_var = UnsignedChannelUpdate_clone(arg); +uint32_t __attribute__((visibility("default"))) TS_ClosingSigned_new(int8_tArray channel_id_arg, int64_t fee_satoshis_arg, int8_tArray signature_arg, uint32_t fee_range_arg) { + LDKThirtyTwoBytes channel_id_arg_ref; + CHECK(channel_id_arg->arr_len == 32); + memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); + LDKSignature signature_arg_ref; + CHECK(signature_arg->arr_len == 64); + memcpy(signature_arg_ref.compact_form, signature_arg->elems, 64); + LDKClosingSignedFeeRange fee_range_arg_conv; + fee_range_arg_conv.inner = (void*)(fee_range_arg & (~1)); + fee_range_arg_conv.is_owned = (fee_range_arg & 1) || (fee_range_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(fee_range_arg_conv); + fee_range_arg_conv = ClosingSignedFeeRange_clone(&fee_range_arg_conv); + LDKClosingSigned ret_var = ClosingSigned_new(channel_id_arg_ref, fee_satoshis_arg, signature_arg_ref, fee_range_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +static inline uint64_t ClosingSigned_clone_ptr(LDKClosingSigned *NONNULL_PTR arg) { + LDKClosingSigned ret_var = ClosingSigned_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26451,21 +23865,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_clone_ptr(uint32_t arg) { - LDKUnsignedChannelUpdate arg_conv; +int64_t __attribute__((visibility("default"))) TS_ClosingSigned_clone_ptr(uint32_t arg) { + LDKClosingSigned arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = UnsignedChannelUpdate_clone_ptr(&arg_conv); + int64_t ret_val = ClosingSigned_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_clone(uint32_t orig) { - LDKUnsignedChannelUpdate orig_conv; +uint32_t __attribute__((visibility("default"))) TS_ClosingSigned_clone(uint32_t orig) { + LDKClosingSigned orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKUnsignedChannelUpdate ret_var = UnsignedChannelUpdate_clone(&orig_conv); + LDKClosingSigned ret_var = ClosingSigned_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26477,88 +23891,109 @@ uint32_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_clone( return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelUpdate_free(uint32_t this_obj) { - LDKChannelUpdate this_obj_conv; +void __attribute__((visibility("default"))) TS_UpdateAddHTLC_free(uint32_t this_obj) { + LDKUpdateAddHTLC this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelUpdate_free(this_obj_conv); + UpdateAddHTLC_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_ChannelUpdate_get_signature(uint32_t this_ptr) { - LDKChannelUpdate this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_UpdateAddHTLC_get_channel_id(uint32_t this_ptr) { + LDKUpdateAddHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ChannelUpdate_get_signature(&this_ptr_conv).compact_form, 64); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *UpdateAddHTLC_get_channel_id(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelUpdate_set_signature(uint32_t this_ptr, int8_tArray val) { - LDKChannelUpdate this_ptr_conv; +void __attribute__((visibility("default"))) TS_UpdateAddHTLC_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKUpdateAddHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSignature val_ref; - CHECK(*((uint32_t*)val) == 64); - memcpy(val_ref.compact_form, (uint8_t*)(val + 4), 64); - ChannelUpdate_set_signature(&this_ptr_conv, val_ref); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + UpdateAddHTLC_set_channel_id(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_ChannelUpdate_get_contents(uint32_t this_ptr) { - LDKChannelUpdate this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_UpdateAddHTLC_get_htlc_id(uint32_t this_ptr) { + LDKUpdateAddHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKUnsignedChannelUpdate ret_var = ChannelUpdate_get_contents(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + int64_t ret_val = UpdateAddHTLC_get_htlc_id(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelUpdate_set_contents(uint32_t this_ptr, uint32_t val) { - LDKChannelUpdate this_ptr_conv; +void __attribute__((visibility("default"))) TS_UpdateAddHTLC_set_htlc_id(uint32_t this_ptr, int64_t val) { + LDKUpdateAddHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKUnsignedChannelUpdate val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = UnsignedChannelUpdate_clone(&val_conv); - ChannelUpdate_set_contents(&this_ptr_conv, val_conv); + UpdateAddHTLC_set_htlc_id(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_ChannelUpdate_new(int8_tArray signature_arg, uint32_t contents_arg) { - LDKSignature signature_arg_ref; - CHECK(*((uint32_t*)signature_arg) == 64); - memcpy(signature_arg_ref.compact_form, (uint8_t*)(signature_arg + 4), 64); - LDKUnsignedChannelUpdate contents_arg_conv; - contents_arg_conv.inner = (void*)(contents_arg & (~1)); - contents_arg_conv.is_owned = (contents_arg & 1) || (contents_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(contents_arg_conv); - contents_arg_conv = UnsignedChannelUpdate_clone(&contents_arg_conv); - LDKChannelUpdate ret_var = ChannelUpdate_new(signature_arg_ref, contents_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int64_t __attribute__((visibility("default"))) TS_UpdateAddHTLC_get_amount_msat(uint32_t this_ptr) { + LDKUpdateAddHTLC this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = UpdateAddHTLC_get_amount_msat(&this_ptr_conv); + return ret_val; } -static inline uint64_t ChannelUpdate_clone_ptr(LDKChannelUpdate *NONNULL_PTR arg) { - LDKChannelUpdate ret_var = ChannelUpdate_clone(arg); +void __attribute__((visibility("default"))) TS_UpdateAddHTLC_set_amount_msat(uint32_t this_ptr, int64_t val) { + LDKUpdateAddHTLC this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + UpdateAddHTLC_set_amount_msat(&this_ptr_conv, val); +} + +int8_tArray __attribute__((visibility("default"))) TS_UpdateAddHTLC_get_payment_hash(uint32_t this_ptr) { + LDKUpdateAddHTLC this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *UpdateAddHTLC_get_payment_hash(&this_ptr_conv), 32); + return ret_arr; +} + +void __attribute__((visibility("default"))) TS_UpdateAddHTLC_set_payment_hash(uint32_t this_ptr, int8_tArray val) { + LDKUpdateAddHTLC this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + UpdateAddHTLC_set_payment_hash(&this_ptr_conv, val_ref); +} + +int32_t __attribute__((visibility("default"))) TS_UpdateAddHTLC_get_cltv_expiry(uint32_t this_ptr) { + LDKUpdateAddHTLC this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = UpdateAddHTLC_get_cltv_expiry(&this_ptr_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_UpdateAddHTLC_set_cltv_expiry(uint32_t this_ptr, int32_t val) { + LDKUpdateAddHTLC this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + UpdateAddHTLC_set_cltv_expiry(&this_ptr_conv, val); +} + +static inline uint64_t UpdateAddHTLC_clone_ptr(LDKUpdateAddHTLC *NONNULL_PTR arg) { + LDKUpdateAddHTLC ret_var = UpdateAddHTLC_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26569,21 +24004,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ChannelUpdate_clone_ptr(uint32_t arg) { - LDKChannelUpdate arg_conv; +int64_t __attribute__((visibility("default"))) TS_UpdateAddHTLC_clone_ptr(uint32_t arg) { + LDKUpdateAddHTLC arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelUpdate_clone_ptr(&arg_conv); + int64_t ret_val = UpdateAddHTLC_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelUpdate_clone(uint32_t orig) { - LDKChannelUpdate orig_conv; +uint32_t __attribute__((visibility("default"))) TS_UpdateAddHTLC_clone(uint32_t orig) { + LDKUpdateAddHTLC orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelUpdate ret_var = ChannelUpdate_clone(&orig_conv); + LDKUpdateAddHTLC ret_var = UpdateAddHTLC_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26595,74 +24030,81 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelUpdate_clone(uint32_t return ret_ref; } -void __attribute__((visibility("default"))) TS_QueryChannelRange_free(uint32_t this_obj) { - LDKQueryChannelRange this_obj_conv; +void __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_free(uint32_t this_obj) { + LDKUpdateFulfillHTLC this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - QueryChannelRange_free(this_obj_conv); + UpdateFulfillHTLC_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_QueryChannelRange_get_chain_hash(uint32_t this_ptr) { - LDKQueryChannelRange this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_get_channel_id(uint32_t this_ptr) { + LDKUpdateFulfillHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *QueryChannelRange_get_chain_hash(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *UpdateFulfillHTLC_get_channel_id(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_QueryChannelRange_set_chain_hash(uint32_t this_ptr, int8_tArray val) { - LDKQueryChannelRange this_ptr_conv; +void __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKUpdateFulfillHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - QueryChannelRange_set_chain_hash(&this_ptr_conv, val_ref); + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + UpdateFulfillHTLC_set_channel_id(&this_ptr_conv, val_ref); } -int32_t __attribute__((visibility("default"))) TS_QueryChannelRange_get_first_blocknum(uint32_t this_ptr) { - LDKQueryChannelRange this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_get_htlc_id(uint32_t this_ptr) { + LDKUpdateFulfillHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = QueryChannelRange_get_first_blocknum(&this_ptr_conv); + int64_t ret_val = UpdateFulfillHTLC_get_htlc_id(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_QueryChannelRange_set_first_blocknum(uint32_t this_ptr, int32_t val) { - LDKQueryChannelRange this_ptr_conv; +void __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_set_htlc_id(uint32_t this_ptr, int64_t val) { + LDKUpdateFulfillHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - QueryChannelRange_set_first_blocknum(&this_ptr_conv, val); + UpdateFulfillHTLC_set_htlc_id(&this_ptr_conv, val); } -int32_t __attribute__((visibility("default"))) TS_QueryChannelRange_get_number_of_blocks(uint32_t this_ptr) { - LDKQueryChannelRange this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_get_payment_preimage(uint32_t this_ptr) { + LDKUpdateFulfillHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = QueryChannelRange_get_number_of_blocks(&this_ptr_conv); - return ret_val; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *UpdateFulfillHTLC_get_payment_preimage(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_QueryChannelRange_set_number_of_blocks(uint32_t this_ptr, int32_t val) { - LDKQueryChannelRange this_ptr_conv; +void __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_set_payment_preimage(uint32_t this_ptr, int8_tArray val) { + LDKUpdateFulfillHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - QueryChannelRange_set_number_of_blocks(&this_ptr_conv, val); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + UpdateFulfillHTLC_set_payment_preimage(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_QueryChannelRange_new(int8_tArray chain_hash_arg, int32_t first_blocknum_arg, int32_t number_of_blocks_arg) { - LDKThirtyTwoBytes chain_hash_arg_ref; - CHECK(*((uint32_t*)chain_hash_arg) == 32); - memcpy(chain_hash_arg_ref.data, (uint8_t*)(chain_hash_arg + 4), 32); - LDKQueryChannelRange ret_var = QueryChannelRange_new(chain_hash_arg_ref, first_blocknum_arg, number_of_blocks_arg); +uint32_t __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_new(int8_tArray channel_id_arg, int64_t htlc_id_arg, int8_tArray payment_preimage_arg) { + LDKThirtyTwoBytes channel_id_arg_ref; + CHECK(channel_id_arg->arr_len == 32); + memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); + LDKThirtyTwoBytes payment_preimage_arg_ref; + CHECK(payment_preimage_arg->arr_len == 32); + memcpy(payment_preimage_arg_ref.data, payment_preimage_arg->elems, 32); + LDKUpdateFulfillHTLC ret_var = UpdateFulfillHTLC_new(channel_id_arg_ref, htlc_id_arg, payment_preimage_arg_ref); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26674,8 +24116,8 @@ uint32_t __attribute__((visibility("default"))) TS_QueryChannelRange_new(int8_t return ret_ref; } -static inline uint64_t QueryChannelRange_clone_ptr(LDKQueryChannelRange *NONNULL_PTR arg) { - LDKQueryChannelRange ret_var = QueryChannelRange_clone(arg); +static inline uint64_t UpdateFulfillHTLC_clone_ptr(LDKUpdateFulfillHTLC *NONNULL_PTR arg) { + LDKUpdateFulfillHTLC ret_var = UpdateFulfillHTLC_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26686,21 +24128,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_QueryChannelRange_clone_ptr(uint32_t arg) { - LDKQueryChannelRange arg_conv; +int64_t __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_clone_ptr(uint32_t arg) { + LDKUpdateFulfillHTLC arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = QueryChannelRange_clone_ptr(&arg_conv); + int64_t ret_val = UpdateFulfillHTLC_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_QueryChannelRange_clone(uint32_t orig) { - LDKQueryChannelRange orig_conv; +uint32_t __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_clone(uint32_t orig) { + LDKUpdateFulfillHTLC orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKQueryChannelRange ret_var = QueryChannelRange_clone(&orig_conv); + LDKUpdateFulfillHTLC ret_var = UpdateFulfillHTLC_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26712,134 +24154,155 @@ uint32_t __attribute__((visibility("default"))) TS_QueryChannelRange_clone(uint return ret_ref; } -void __attribute__((visibility("default"))) TS_ReplyChannelRange_free(uint32_t this_obj) { - LDKReplyChannelRange this_obj_conv; +void __attribute__((visibility("default"))) TS_UpdateFailHTLC_free(uint32_t this_obj) { + LDKUpdateFailHTLC this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ReplyChannelRange_free(this_obj_conv); + UpdateFailHTLC_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_ReplyChannelRange_get_chain_hash(uint32_t this_ptr) { - LDKReplyChannelRange this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_UpdateFailHTLC_get_channel_id(uint32_t this_ptr) { + LDKUpdateFailHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *ReplyChannelRange_get_chain_hash(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *UpdateFailHTLC_get_channel_id(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_ReplyChannelRange_set_chain_hash(uint32_t this_ptr, int8_tArray val) { - LDKReplyChannelRange this_ptr_conv; +void __attribute__((visibility("default"))) TS_UpdateFailHTLC_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKUpdateFailHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - ReplyChannelRange_set_chain_hash(&this_ptr_conv, val_ref); + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + UpdateFailHTLC_set_channel_id(&this_ptr_conv, val_ref); } -int32_t __attribute__((visibility("default"))) TS_ReplyChannelRange_get_first_blocknum(uint32_t this_ptr) { - LDKReplyChannelRange this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_UpdateFailHTLC_get_htlc_id(uint32_t this_ptr) { + LDKUpdateFailHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = ReplyChannelRange_get_first_blocknum(&this_ptr_conv); + int64_t ret_val = UpdateFailHTLC_get_htlc_id(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ReplyChannelRange_set_first_blocknum(uint32_t this_ptr, int32_t val) { - LDKReplyChannelRange this_ptr_conv; +void __attribute__((visibility("default"))) TS_UpdateFailHTLC_set_htlc_id(uint32_t this_ptr, int64_t val) { + LDKUpdateFailHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ReplyChannelRange_set_first_blocknum(&this_ptr_conv, val); + UpdateFailHTLC_set_htlc_id(&this_ptr_conv, val); } -int32_t __attribute__((visibility("default"))) TS_ReplyChannelRange_get_number_of_blocks(uint32_t this_ptr) { - LDKReplyChannelRange this_ptr_conv; +static inline uint64_t UpdateFailHTLC_clone_ptr(LDKUpdateFailHTLC *NONNULL_PTR arg) { + LDKUpdateFailHTLC ret_var = UpdateFailHTLC_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_UpdateFailHTLC_clone_ptr(uint32_t arg) { + LDKUpdateFailHTLC arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = UpdateFailHTLC_clone_ptr(&arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_UpdateFailHTLC_clone(uint32_t orig) { + LDKUpdateFailHTLC orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKUpdateFailHTLC ret_var = UpdateFailHTLC_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +void __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_free(uint32_t this_obj) { + LDKUpdateFailMalformedHTLC this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + UpdateFailMalformedHTLC_free(this_obj_conv); +} + +int8_tArray __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_get_channel_id(uint32_t this_ptr) { + LDKUpdateFailMalformedHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = ReplyChannelRange_get_number_of_blocks(&this_ptr_conv); - return ret_val; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *UpdateFailMalformedHTLC_get_channel_id(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ReplyChannelRange_set_number_of_blocks(uint32_t this_ptr, int32_t val) { - LDKReplyChannelRange this_ptr_conv; +void __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKUpdateFailMalformedHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ReplyChannelRange_set_number_of_blocks(&this_ptr_conv, val); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + UpdateFailMalformedHTLC_set_channel_id(&this_ptr_conv, val_ref); } -jboolean __attribute__((visibility("default"))) TS_ReplyChannelRange_get_sync_complete(uint32_t this_ptr) { - LDKReplyChannelRange this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_get_htlc_id(uint32_t this_ptr) { + LDKUpdateFailMalformedHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = ReplyChannelRange_get_sync_complete(&this_ptr_conv); + int64_t ret_val = UpdateFailMalformedHTLC_get_htlc_id(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ReplyChannelRange_set_sync_complete(uint32_t this_ptr, jboolean val) { - LDKReplyChannelRange this_ptr_conv; +void __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_set_htlc_id(uint32_t this_ptr, int64_t val) { + LDKUpdateFailMalformedHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ReplyChannelRange_set_sync_complete(&this_ptr_conv, val); + UpdateFailMalformedHTLC_set_htlc_id(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_ReplyChannelRange_set_short_channel_ids(uint32_t this_ptr, int64_tArray val) { - LDKReplyChannelRange this_ptr_conv; +int16_t __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_get_failure_code(uint32_t this_ptr) { + LDKUpdateFailMalformedHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_u64Z val_constr; - val_constr.datalen = *((uint32_t*)val); - if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements"); - else - val_constr.data = NULL; - int64_t* val_vals = (int64_t*)(val + 4); - for (size_t i = 0; i < val_constr.datalen; i++) { - int64_t val_conv_8 = val_vals[i]; - val_constr.data[i] = val_conv_8; - } - ReplyChannelRange_set_short_channel_ids(&this_ptr_conv, val_constr); + int16_t ret_val = UpdateFailMalformedHTLC_get_failure_code(&this_ptr_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ReplyChannelRange_new(int8_tArray chain_hash_arg, int32_t first_blocknum_arg, int32_t number_of_blocks_arg, jboolean sync_complete_arg, int64_tArray short_channel_ids_arg) { - LDKThirtyTwoBytes chain_hash_arg_ref; - CHECK(*((uint32_t*)chain_hash_arg) == 32); - memcpy(chain_hash_arg_ref.data, (uint8_t*)(chain_hash_arg + 4), 32); - LDKCVec_u64Z short_channel_ids_arg_constr; - short_channel_ids_arg_constr.datalen = *((uint32_t*)short_channel_ids_arg); - if (short_channel_ids_arg_constr.datalen > 0) - short_channel_ids_arg_constr.data = MALLOC(short_channel_ids_arg_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements"); - else - short_channel_ids_arg_constr.data = NULL; - int64_t* short_channel_ids_arg_vals = (int64_t*)(short_channel_ids_arg + 4); - for (size_t i = 0; i < short_channel_ids_arg_constr.datalen; i++) { - int64_t short_channel_ids_arg_conv_8 = short_channel_ids_arg_vals[i]; - short_channel_ids_arg_constr.data[i] = short_channel_ids_arg_conv_8; - } - LDKReplyChannelRange ret_var = ReplyChannelRange_new(chain_hash_arg_ref, first_blocknum_arg, number_of_blocks_arg, sync_complete_arg, short_channel_ids_arg_constr); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_set_failure_code(uint32_t this_ptr, int16_t val) { + LDKUpdateFailMalformedHTLC this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + UpdateFailMalformedHTLC_set_failure_code(&this_ptr_conv, val); } -static inline uint64_t ReplyChannelRange_clone_ptr(LDKReplyChannelRange *NONNULL_PTR arg) { - LDKReplyChannelRange ret_var = ReplyChannelRange_clone(arg); +static inline uint64_t UpdateFailMalformedHTLC_clone_ptr(LDKUpdateFailMalformedHTLC *NONNULL_PTR arg) { + LDKUpdateFailMalformedHTLC ret_var = UpdateFailMalformedHTLC_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26850,21 +24313,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ReplyChannelRange_clone_ptr(uint32_t arg) { - LDKReplyChannelRange arg_conv; +int64_t __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_clone_ptr(uint32_t arg) { + LDKUpdateFailMalformedHTLC arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ReplyChannelRange_clone_ptr(&arg_conv); + int64_t ret_val = UpdateFailMalformedHTLC_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ReplyChannelRange_clone(uint32_t orig) { - LDKReplyChannelRange orig_conv; +uint32_t __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_clone(uint32_t orig) { + LDKUpdateFailMalformedHTLC orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKReplyChannelRange ret_var = ReplyChannelRange_clone(&orig_conv); + LDKUpdateFailMalformedHTLC ret_var = UpdateFailMalformedHTLC_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26876,70 +24339,100 @@ uint32_t __attribute__((visibility("default"))) TS_ReplyChannelRange_clone(uint return ret_ref; } -void __attribute__((visibility("default"))) TS_QueryShortChannelIds_free(uint32_t this_obj) { - LDKQueryShortChannelIds this_obj_conv; +void __attribute__((visibility("default"))) TS_CommitmentSigned_free(uint32_t this_obj) { + LDKCommitmentSigned this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - QueryShortChannelIds_free(this_obj_conv); + CommitmentSigned_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_QueryShortChannelIds_get_chain_hash(uint32_t this_ptr) { - LDKQueryShortChannelIds this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_CommitmentSigned_get_channel_id(uint32_t this_ptr) { + LDKCommitmentSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *QueryShortChannelIds_get_chain_hash(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *CommitmentSigned_get_channel_id(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_QueryShortChannelIds_set_chain_hash(uint32_t this_ptr, int8_tArray val) { - LDKQueryShortChannelIds this_ptr_conv; +void __attribute__((visibility("default"))) TS_CommitmentSigned_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKCommitmentSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - QueryShortChannelIds_set_chain_hash(&this_ptr_conv, val_ref); + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + CommitmentSigned_set_channel_id(&this_ptr_conv, val_ref); } -void __attribute__((visibility("default"))) TS_QueryShortChannelIds_set_short_channel_ids(uint32_t this_ptr, int64_tArray val) { - LDKQueryShortChannelIds this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_CommitmentSigned_get_signature(uint32_t this_ptr) { + LDKCommitmentSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_u64Z val_constr; - val_constr.datalen = *((uint32_t*)val); + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, CommitmentSigned_get_signature(&this_ptr_conv).compact_form, 64); + return ret_arr; +} + +void __attribute__((visibility("default"))) TS_CommitmentSigned_set_signature(uint32_t this_ptr, int8_tArray val) { + LDKCommitmentSigned this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKSignature val_ref; + CHECK(val->arr_len == 64); + memcpy(val_ref.compact_form, val->elems, 64); + CommitmentSigned_set_signature(&this_ptr_conv, val_ref); +} + +void __attribute__((visibility("default"))) TS_CommitmentSigned_set_htlc_signatures(uint32_t this_ptr, ptrArray val) { + LDKCommitmentSigned this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_SignatureZ val_constr; + val_constr.datalen = val->arr_len; if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements"); + val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); else val_constr.data = NULL; - int64_t* val_vals = (int64_t*)(val + 4); - for (size_t i = 0; i < val_constr.datalen; i++) { - int64_t val_conv_8 = val_vals[i]; - val_constr.data[i] = val_conv_8; + int8_tArray* val_vals = (void*) val->elems; + for (size_t m = 0; m < val_constr.datalen; m++) { + int8_tArray val_conv_12 = val_vals[m]; + LDKSignature val_conv_12_ref; + CHECK(val_conv_12->arr_len == 64); + memcpy(val_conv_12_ref.compact_form, val_conv_12->elems, 64); + val_constr.data[m] = val_conv_12_ref; } - QueryShortChannelIds_set_short_channel_ids(&this_ptr_conv, val_constr); + CommitmentSigned_set_htlc_signatures(&this_ptr_conv, val_constr); } -uint32_t __attribute__((visibility("default"))) TS_QueryShortChannelIds_new(int8_tArray chain_hash_arg, int64_tArray short_channel_ids_arg) { - LDKThirtyTwoBytes chain_hash_arg_ref; - CHECK(*((uint32_t*)chain_hash_arg) == 32); - memcpy(chain_hash_arg_ref.data, (uint8_t*)(chain_hash_arg + 4), 32); - LDKCVec_u64Z short_channel_ids_arg_constr; - short_channel_ids_arg_constr.datalen = *((uint32_t*)short_channel_ids_arg); - if (short_channel_ids_arg_constr.datalen > 0) - short_channel_ids_arg_constr.data = MALLOC(short_channel_ids_arg_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements"); +uint32_t __attribute__((visibility("default"))) TS_CommitmentSigned_new(int8_tArray channel_id_arg, int8_tArray signature_arg, ptrArray htlc_signatures_arg) { + LDKThirtyTwoBytes channel_id_arg_ref; + CHECK(channel_id_arg->arr_len == 32); + memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); + LDKSignature signature_arg_ref; + CHECK(signature_arg->arr_len == 64); + memcpy(signature_arg_ref.compact_form, signature_arg->elems, 64); + LDKCVec_SignatureZ htlc_signatures_arg_constr; + htlc_signatures_arg_constr.datalen = htlc_signatures_arg->arr_len; + if (htlc_signatures_arg_constr.datalen > 0) + htlc_signatures_arg_constr.data = MALLOC(htlc_signatures_arg_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); else - short_channel_ids_arg_constr.data = NULL; - int64_t* short_channel_ids_arg_vals = (int64_t*)(short_channel_ids_arg + 4); - for (size_t i = 0; i < short_channel_ids_arg_constr.datalen; i++) { - int64_t short_channel_ids_arg_conv_8 = short_channel_ids_arg_vals[i]; - short_channel_ids_arg_constr.data[i] = short_channel_ids_arg_conv_8; + htlc_signatures_arg_constr.data = NULL; + int8_tArray* htlc_signatures_arg_vals = (void*) htlc_signatures_arg->elems; + for (size_t m = 0; m < htlc_signatures_arg_constr.datalen; m++) { + int8_tArray htlc_signatures_arg_conv_12 = htlc_signatures_arg_vals[m]; + LDKSignature htlc_signatures_arg_conv_12_ref; + CHECK(htlc_signatures_arg_conv_12->arr_len == 64); + memcpy(htlc_signatures_arg_conv_12_ref.compact_form, htlc_signatures_arg_conv_12->elems, 64); + htlc_signatures_arg_constr.data[m] = htlc_signatures_arg_conv_12_ref; } - LDKQueryShortChannelIds ret_var = QueryShortChannelIds_new(chain_hash_arg_ref, short_channel_ids_arg_constr); + LDKCommitmentSigned ret_var = CommitmentSigned_new(channel_id_arg_ref, signature_arg_ref, htlc_signatures_arg_constr); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26951,8 +24444,8 @@ uint32_t __attribute__((visibility("default"))) TS_QueryShortChannelIds_new(int return ret_ref; } -static inline uint64_t QueryShortChannelIds_clone_ptr(LDKQueryShortChannelIds *NONNULL_PTR arg) { - LDKQueryShortChannelIds ret_var = QueryShortChannelIds_clone(arg); +static inline uint64_t CommitmentSigned_clone_ptr(LDKCommitmentSigned *NONNULL_PTR arg) { + LDKCommitmentSigned ret_var = CommitmentSigned_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26963,21 +24456,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_QueryShortChannelIds_clone_ptr(uint32_t arg) { - LDKQueryShortChannelIds arg_conv; +int64_t __attribute__((visibility("default"))) TS_CommitmentSigned_clone_ptr(uint32_t arg) { + LDKCommitmentSigned arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = QueryShortChannelIds_clone_ptr(&arg_conv); + int64_t ret_val = CommitmentSigned_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_QueryShortChannelIds_clone(uint32_t orig) { - LDKQueryShortChannelIds orig_conv; +uint32_t __attribute__((visibility("default"))) TS_CommitmentSigned_clone(uint32_t orig) { + LDKCommitmentSigned orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKQueryShortChannelIds ret_var = QueryShortChannelIds_clone(&orig_conv); + LDKCommitmentSigned ret_var = CommitmentSigned_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26989,57 +24482,88 @@ uint32_t __attribute__((visibility("default"))) TS_QueryShortChannelIds_clone(u return ret_ref; } -void __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_free(uint32_t this_obj) { - LDKReplyShortChannelIdsEnd this_obj_conv; +void __attribute__((visibility("default"))) TS_RevokeAndACK_free(uint32_t this_obj) { + LDKRevokeAndACK this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ReplyShortChannelIdsEnd_free(this_obj_conv); + RevokeAndACK_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_get_chain_hash(uint32_t this_ptr) { - LDKReplyShortChannelIdsEnd this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_RevokeAndACK_get_channel_id(uint32_t this_ptr) { + LDKRevokeAndACK this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *ReplyShortChannelIdsEnd_get_chain_hash(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *RevokeAndACK_get_channel_id(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_set_chain_hash(uint32_t this_ptr, int8_tArray val) { - LDKReplyShortChannelIdsEnd this_ptr_conv; +void __attribute__((visibility("default"))) TS_RevokeAndACK_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKRevokeAndACK this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - ReplyShortChannelIdsEnd_set_chain_hash(&this_ptr_conv, val_ref); + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + RevokeAndACK_set_channel_id(&this_ptr_conv, val_ref); } -jboolean __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_get_full_information(uint32_t this_ptr) { - LDKReplyShortChannelIdsEnd this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_RevokeAndACK_get_per_commitment_secret(uint32_t this_ptr) { + LDKRevokeAndACK this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = ReplyShortChannelIdsEnd_get_full_information(&this_ptr_conv); - return ret_val; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *RevokeAndACK_get_per_commitment_secret(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_set_full_information(uint32_t this_ptr, jboolean val) { - LDKReplyShortChannelIdsEnd this_ptr_conv; +void __attribute__((visibility("default"))) TS_RevokeAndACK_set_per_commitment_secret(uint32_t this_ptr, int8_tArray val) { + LDKRevokeAndACK this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ReplyShortChannelIdsEnd_set_full_information(&this_ptr_conv, val); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + RevokeAndACK_set_per_commitment_secret(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_new(int8_tArray chain_hash_arg, jboolean full_information_arg) { - LDKThirtyTwoBytes chain_hash_arg_ref; - CHECK(*((uint32_t*)chain_hash_arg) == 32); - memcpy(chain_hash_arg_ref.data, (uint8_t*)(chain_hash_arg + 4), 32); - LDKReplyShortChannelIdsEnd ret_var = ReplyShortChannelIdsEnd_new(chain_hash_arg_ref, full_information_arg); +int8_tArray __attribute__((visibility("default"))) TS_RevokeAndACK_get_next_per_commitment_point(uint32_t this_ptr) { + LDKRevokeAndACK this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, RevokeAndACK_get_next_per_commitment_point(&this_ptr_conv).compressed_form, 33); + return ret_arr; +} + +void __attribute__((visibility("default"))) TS_RevokeAndACK_set_next_per_commitment_point(uint32_t this_ptr, int8_tArray val) { + LDKRevokeAndACK this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + RevokeAndACK_set_next_per_commitment_point(&this_ptr_conv, val_ref); +} + +uint32_t __attribute__((visibility("default"))) TS_RevokeAndACK_new(int8_tArray channel_id_arg, int8_tArray per_commitment_secret_arg, int8_tArray next_per_commitment_point_arg) { + LDKThirtyTwoBytes channel_id_arg_ref; + CHECK(channel_id_arg->arr_len == 32); + memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); + LDKThirtyTwoBytes per_commitment_secret_arg_ref; + CHECK(per_commitment_secret_arg->arr_len == 32); + memcpy(per_commitment_secret_arg_ref.data, per_commitment_secret_arg->elems, 32); + LDKPublicKey next_per_commitment_point_arg_ref; + CHECK(next_per_commitment_point_arg->arr_len == 33); + memcpy(next_per_commitment_point_arg_ref.compressed_form, next_per_commitment_point_arg->elems, 33); + LDKRevokeAndACK ret_var = RevokeAndACK_new(channel_id_arg_ref, per_commitment_secret_arg_ref, next_per_commitment_point_arg_ref); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -27051,8 +24575,8 @@ uint32_t __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_new( return ret_ref; } -static inline uint64_t ReplyShortChannelIdsEnd_clone_ptr(LDKReplyShortChannelIdsEnd *NONNULL_PTR arg) { - LDKReplyShortChannelIdsEnd ret_var = ReplyShortChannelIdsEnd_clone(arg); +static inline uint64_t RevokeAndACK_clone_ptr(LDKRevokeAndACK *NONNULL_PTR arg) { + LDKRevokeAndACK ret_var = RevokeAndACK_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -27063,21 +24587,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_clone_ptr(uint32_t arg) { - LDKReplyShortChannelIdsEnd arg_conv; +int64_t __attribute__((visibility("default"))) TS_RevokeAndACK_clone_ptr(uint32_t arg) { + LDKRevokeAndACK arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ReplyShortChannelIdsEnd_clone_ptr(&arg_conv); + int64_t ret_val = RevokeAndACK_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_clone(uint32_t orig) { - LDKReplyShortChannelIdsEnd orig_conv; +uint32_t __attribute__((visibility("default"))) TS_RevokeAndACK_clone(uint32_t orig) { + LDKRevokeAndACK orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKReplyShortChannelIdsEnd ret_var = ReplyShortChannelIdsEnd_clone(&orig_conv); + LDKRevokeAndACK ret_var = RevokeAndACK_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -27089,74 +24613,57 @@ uint32_t __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_clon return ret_ref; } -void __attribute__((visibility("default"))) TS_GossipTimestampFilter_free(uint32_t this_obj) { - LDKGossipTimestampFilter this_obj_conv; +void __attribute__((visibility("default"))) TS_UpdateFee_free(uint32_t this_obj) { + LDKUpdateFee this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - GossipTimestampFilter_free(this_obj_conv); + UpdateFee_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_GossipTimestampFilter_get_chain_hash(uint32_t this_ptr) { - LDKGossipTimestampFilter this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_UpdateFee_get_channel_id(uint32_t this_ptr) { + LDKUpdateFee this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *GossipTimestampFilter_get_chain_hash(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *UpdateFee_get_channel_id(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_GossipTimestampFilter_set_chain_hash(uint32_t this_ptr, int8_tArray val) { - LDKGossipTimestampFilter this_ptr_conv; +void __attribute__((visibility("default"))) TS_UpdateFee_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKUpdateFee this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - GossipTimestampFilter_set_chain_hash(&this_ptr_conv, val_ref); -} - -int32_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_get_first_timestamp(uint32_t this_ptr) { - LDKGossipTimestampFilter this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = GossipTimestampFilter_get_first_timestamp(&this_ptr_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_GossipTimestampFilter_set_first_timestamp(uint32_t this_ptr, int32_t val) { - LDKGossipTimestampFilter this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - GossipTimestampFilter_set_first_timestamp(&this_ptr_conv, val); + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + UpdateFee_set_channel_id(&this_ptr_conv, val_ref); } -int32_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_get_timestamp_range(uint32_t this_ptr) { - LDKGossipTimestampFilter this_ptr_conv; +int32_t __attribute__((visibility("default"))) TS_UpdateFee_get_feerate_per_kw(uint32_t this_ptr) { + LDKUpdateFee this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = GossipTimestampFilter_get_timestamp_range(&this_ptr_conv); + int32_t ret_val = UpdateFee_get_feerate_per_kw(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_GossipTimestampFilter_set_timestamp_range(uint32_t this_ptr, int32_t val) { - LDKGossipTimestampFilter this_ptr_conv; +void __attribute__((visibility("default"))) TS_UpdateFee_set_feerate_per_kw(uint32_t this_ptr, int32_t val) { + LDKUpdateFee this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - GossipTimestampFilter_set_timestamp_range(&this_ptr_conv, val); + UpdateFee_set_feerate_per_kw(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_new(int8_tArray chain_hash_arg, int32_t first_timestamp_arg, int32_t timestamp_range_arg) { - LDKThirtyTwoBytes chain_hash_arg_ref; - CHECK(*((uint32_t*)chain_hash_arg) == 32); - memcpy(chain_hash_arg_ref.data, (uint8_t*)(chain_hash_arg + 4), 32); - LDKGossipTimestampFilter ret_var = GossipTimestampFilter_new(chain_hash_arg_ref, first_timestamp_arg, timestamp_range_arg); +uint32_t __attribute__((visibility("default"))) TS_UpdateFee_new(int8_tArray channel_id_arg, int32_t feerate_per_kw_arg) { + LDKThirtyTwoBytes channel_id_arg_ref; + CHECK(channel_id_arg->arr_len == 32); + memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); + LDKUpdateFee ret_var = UpdateFee_new(channel_id_arg_ref, feerate_per_kw_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -27168,8 +24675,8 @@ uint32_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_new(in return ret_ref; } -static inline uint64_t GossipTimestampFilter_clone_ptr(LDKGossipTimestampFilter *NONNULL_PTR arg) { - LDKGossipTimestampFilter ret_var = GossipTimestampFilter_clone(arg); +static inline uint64_t UpdateFee_clone_ptr(LDKUpdateFee *NONNULL_PTR arg) { + LDKUpdateFee ret_var = UpdateFee_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -27180,21 +24687,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_clone_ptr(uint32_t arg) { - LDKGossipTimestampFilter arg_conv; +int64_t __attribute__((visibility("default"))) TS_UpdateFee_clone_ptr(uint32_t arg) { + LDKUpdateFee arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = GossipTimestampFilter_clone_ptr(&arg_conv); + int64_t ret_val = UpdateFee_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_clone(uint32_t orig) { - LDKGossipTimestampFilter orig_conv; +uint32_t __attribute__((visibility("default"))) TS_UpdateFee_clone(uint32_t orig) { + LDKUpdateFee orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKGossipTimestampFilter ret_var = GossipTimestampFilter_clone(&orig_conv); + LDKUpdateFee ret_var = UpdateFee_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -27206,139 +24713,64 @@ uint32_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_clone( return ret_ref; } -void __attribute__((visibility("default"))) TS_ErrorAction_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKErrorAction this_ptr_conv = *(LDKErrorAction*)(this_ptr_ptr); - FREE((void*)this_ptr); - ErrorAction_free(this_ptr_conv); -} - -static inline uint64_t ErrorAction_clone_ptr(LDKErrorAction *NONNULL_PTR arg) { - LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); - *ret_copy = ErrorAction_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_ErrorAction_clone_ptr(uint32_t arg) { - LDKErrorAction* arg_conv = (LDKErrorAction*)arg; - int64_t ret_val = ErrorAction_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_ErrorAction_clone(uint32_t orig) { - LDKErrorAction* orig_conv = (LDKErrorAction*)orig; - LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); - *ret_copy = ErrorAction_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_ErrorAction_disconnect_peer(uint32_t msg) { - LDKErrorMessage msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = ErrorMessage_clone(&msg_conv); - LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); - *ret_copy = ErrorAction_disconnect_peer(msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_ErrorAction_ignore_error() { - LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); - *ret_copy = ErrorAction_ignore_error(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_ErrorAction_ignore_and_log(uint32_t a) { - LDKLevel a_conv = LDKLevel_from_js(a); - LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); - *ret_copy = ErrorAction_ignore_and_log(a_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_ErrorAction_ignore_duplicate_gossip() { - LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); - *ret_copy = ErrorAction_ignore_duplicate_gossip(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_ErrorAction_send_error_message(uint32_t msg) { - LDKErrorMessage msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = ErrorMessage_clone(&msg_conv); - LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); - *ret_copy = ErrorAction_send_error_message(msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -void __attribute__((visibility("default"))) TS_LightningError_free(uint32_t this_obj) { - LDKLightningError this_obj_conv; +void __attribute__((visibility("default"))) TS_DataLossProtect_free(uint32_t this_obj) { + LDKDataLossProtect this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - LightningError_free(this_obj_conv); + DataLossProtect_free(this_obj_conv); } -jstring __attribute__((visibility("default"))) TS_LightningError_get_err(uint32_t this_ptr) { - LDKLightningError this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_DataLossProtect_get_your_last_per_commitment_secret(uint32_t this_ptr) { + LDKDataLossProtect this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKStr ret_str = LightningError_get_err(&this_ptr_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *DataLossProtect_get_your_last_per_commitment_secret(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_LightningError_set_err(uint32_t this_ptr, jstring val) { - LDKLightningError this_ptr_conv; +void __attribute__((visibility("default"))) TS_DataLossProtect_set_your_last_per_commitment_secret(uint32_t this_ptr, int8_tArray val) { + LDKDataLossProtect this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKStr val_conv = str_ref_to_owned_c(val); - LightningError_set_err(&this_ptr_conv, val_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + DataLossProtect_set_your_last_per_commitment_secret(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_LightningError_get_action(uint32_t this_ptr) { - LDKLightningError this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); - *ret_copy = LightningError_get_action(&this_ptr_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_DataLossProtect_get_my_current_per_commitment_point(uint32_t this_ptr) { + LDKDataLossProtect this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, DataLossProtect_get_my_current_per_commitment_point(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -void __attribute__((visibility("default"))) TS_LightningError_set_action(uint32_t this_ptr, uint32_t val) { - LDKLightningError this_ptr_conv; +void __attribute__((visibility("default"))) TS_DataLossProtect_set_my_current_per_commitment_point(uint32_t this_ptr, int8_tArray val) { + LDKDataLossProtect this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKErrorAction val_conv = *(LDKErrorAction*)(val_ptr); - val_conv = ErrorAction_clone((LDKErrorAction*)(((uint64_t)val) & ~1)); - LightningError_set_action(&this_ptr_conv, val_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + DataLossProtect_set_my_current_per_commitment_point(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_LightningError_new(jstring err_arg, uint32_t action_arg) { - LDKStr err_arg_conv = str_ref_to_owned_c(err_arg); - void* action_arg_ptr = (void*)(((uint64_t)action_arg) & ~1); - CHECK_ACCESS(action_arg_ptr); - LDKErrorAction action_arg_conv = *(LDKErrorAction*)(action_arg_ptr); - action_arg_conv = ErrorAction_clone((LDKErrorAction*)(((uint64_t)action_arg) & ~1)); - LDKLightningError ret_var = LightningError_new(err_arg_conv, action_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_DataLossProtect_new(int8_tArray your_last_per_commitment_secret_arg, int8_tArray my_current_per_commitment_point_arg) { + LDKThirtyTwoBytes your_last_per_commitment_secret_arg_ref; + CHECK(your_last_per_commitment_secret_arg->arr_len == 32); + memcpy(your_last_per_commitment_secret_arg_ref.data, your_last_per_commitment_secret_arg->elems, 32); + LDKPublicKey my_current_per_commitment_point_arg_ref; + CHECK(my_current_per_commitment_point_arg->arr_len == 33); + memcpy(my_current_per_commitment_point_arg_ref.compressed_form, my_current_per_commitment_point_arg->elems, 33); + LDKDataLossProtect ret_var = DataLossProtect_new(your_last_per_commitment_secret_arg_ref, my_current_per_commitment_point_arg_ref); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -27350,8 +24782,8 @@ uint32_t __attribute__((visibility("default"))) TS_LightningError_new(jstring e return ret_ref; } -static inline uint64_t LightningError_clone_ptr(LDKLightningError *NONNULL_PTR arg) { - LDKLightningError ret_var = LightningError_clone(arg); +static inline uint64_t DataLossProtect_clone_ptr(LDKDataLossProtect *NONNULL_PTR arg) { + LDKDataLossProtect ret_var = DataLossProtect_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -27362,21 +24794,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_LightningError_clone_ptr(uint32_t arg) { - LDKLightningError arg_conv; +int64_t __attribute__((visibility("default"))) TS_DataLossProtect_clone_ptr(uint32_t arg) { + LDKDataLossProtect arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = LightningError_clone_ptr(&arg_conv); + int64_t ret_val = DataLossProtect_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_LightningError_clone(uint32_t orig) { - LDKLightningError orig_conv; +uint32_t __attribute__((visibility("default"))) TS_DataLossProtect_clone(uint32_t orig) { + LDKDataLossProtect orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKLightningError ret_var = LightningError_clone(&orig_conv); + LDKDataLossProtect ret_var = DataLossProtect_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -27388,352 +24820,206 @@ uint32_t __attribute__((visibility("default"))) TS_LightningError_clone(uint32_ return ret_ref; } -void __attribute__((visibility("default"))) TS_CommitmentUpdate_free(uint32_t this_obj) { - LDKCommitmentUpdate this_obj_conv; +void __attribute__((visibility("default"))) TS_ChannelReestablish_free(uint32_t this_obj) { + LDKChannelReestablish this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - CommitmentUpdate_free(this_obj_conv); + ChannelReestablish_free(this_obj_conv); } -uint32_tArray __attribute__((visibility("default"))) TS_CommitmentUpdate_get_update_add_htlcs(uint32_t this_ptr) { - LDKCommitmentUpdate this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_ChannelReestablish_get_channel_id(uint32_t this_ptr) { + LDKChannelReestablish this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_UpdateAddHTLCZ ret_var = CommitmentUpdate_get_update_add_htlcs(&this_ptr_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t p = 0; p < ret_var.datalen; p++) { - LDKUpdateAddHTLC ret_conv_15_var = ret_var.data[p]; - uint64_t ret_conv_15_ref = 0; - CHECK((((uint64_t)ret_conv_15_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_15_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_15_var); - ret_conv_15_ref = (uint64_t)ret_conv_15_var.inner; - if (ret_conv_15_var.is_owned) { - ret_conv_15_ref |= 1; - } - ret_arr_ptr[p] = ret_conv_15_ref; - } - - FREE(ret_var.data); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *ChannelReestablish_get_channel_id(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_CommitmentUpdate_set_update_add_htlcs(uint32_t this_ptr, uint32_tArray val) { - LDKCommitmentUpdate this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelReestablish_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKChannelReestablish this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_UpdateAddHTLCZ val_constr; - val_constr.datalen = *((uint32_t*)val); - if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKUpdateAddHTLC), "LDKCVec_UpdateAddHTLCZ Elements"); - else - val_constr.data = NULL; - uint32_t* val_vals = (uint32_t*)(val + 4); - for (size_t p = 0; p < val_constr.datalen; p++) { - uint32_t val_conv_15 = val_vals[p]; - LDKUpdateAddHTLC val_conv_15_conv; - val_conv_15_conv.inner = (void*)(val_conv_15 & (~1)); - val_conv_15_conv.is_owned = (val_conv_15 & 1) || (val_conv_15 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_15_conv); - val_conv_15_conv = UpdateAddHTLC_clone(&val_conv_15_conv); - val_constr.data[p] = val_conv_15_conv; - } - CommitmentUpdate_set_update_add_htlcs(&this_ptr_conv, val_constr); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + ChannelReestablish_set_channel_id(&this_ptr_conv, val_ref); } -uint32_tArray __attribute__((visibility("default"))) TS_CommitmentUpdate_get_update_fulfill_htlcs(uint32_t this_ptr) { - LDKCommitmentUpdate this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelReestablish_get_next_local_commitment_number(uint32_t this_ptr) { + LDKChannelReestablish this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_UpdateFulfillHTLCZ ret_var = CommitmentUpdate_get_update_fulfill_htlcs(&this_ptr_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t t = 0; t < ret_var.datalen; t++) { - LDKUpdateFulfillHTLC ret_conv_19_var = ret_var.data[t]; - uint64_t ret_conv_19_ref = 0; - CHECK((((uint64_t)ret_conv_19_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_19_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_19_var); - ret_conv_19_ref = (uint64_t)ret_conv_19_var.inner; - if (ret_conv_19_var.is_owned) { - ret_conv_19_ref |= 1; - } - ret_arr_ptr[t] = ret_conv_19_ref; - } - - FREE(ret_var.data); - return ret_arr; + int64_t ret_val = ChannelReestablish_get_next_local_commitment_number(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_CommitmentUpdate_set_update_fulfill_htlcs(uint32_t this_ptr, uint32_tArray val) { - LDKCommitmentUpdate this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelReestablish_set_next_local_commitment_number(uint32_t this_ptr, int64_t val) { + LDKChannelReestablish this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_UpdateFulfillHTLCZ val_constr; - val_constr.datalen = *((uint32_t*)val); - if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKUpdateFulfillHTLC), "LDKCVec_UpdateFulfillHTLCZ Elements"); - else - val_constr.data = NULL; - uint32_t* val_vals = (uint32_t*)(val + 4); - for (size_t t = 0; t < val_constr.datalen; t++) { - uint32_t val_conv_19 = val_vals[t]; - LDKUpdateFulfillHTLC val_conv_19_conv; - val_conv_19_conv.inner = (void*)(val_conv_19 & (~1)); - val_conv_19_conv.is_owned = (val_conv_19 & 1) || (val_conv_19 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_19_conv); - val_conv_19_conv = UpdateFulfillHTLC_clone(&val_conv_19_conv); - val_constr.data[t] = val_conv_19_conv; - } - CommitmentUpdate_set_update_fulfill_htlcs(&this_ptr_conv, val_constr); + ChannelReestablish_set_next_local_commitment_number(&this_ptr_conv, val); } -uint32_tArray __attribute__((visibility("default"))) TS_CommitmentUpdate_get_update_fail_htlcs(uint32_t this_ptr) { - LDKCommitmentUpdate this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelReestablish_get_next_remote_commitment_number(uint32_t this_ptr) { + LDKChannelReestablish this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_UpdateFailHTLCZ ret_var = CommitmentUpdate_get_update_fail_htlcs(&this_ptr_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t q = 0; q < ret_var.datalen; q++) { - LDKUpdateFailHTLC ret_conv_16_var = ret_var.data[q]; - uint64_t ret_conv_16_ref = 0; - CHECK((((uint64_t)ret_conv_16_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_16_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_16_var); - ret_conv_16_ref = (uint64_t)ret_conv_16_var.inner; - if (ret_conv_16_var.is_owned) { - ret_conv_16_ref |= 1; - } - ret_arr_ptr[q] = ret_conv_16_ref; - } - - FREE(ret_var.data); - return ret_arr; + int64_t ret_val = ChannelReestablish_get_next_remote_commitment_number(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_CommitmentUpdate_set_update_fail_htlcs(uint32_t this_ptr, uint32_tArray val) { - LDKCommitmentUpdate this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelReestablish_set_next_remote_commitment_number(uint32_t this_ptr, int64_t val) { + LDKChannelReestablish this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_UpdateFailHTLCZ val_constr; - val_constr.datalen = *((uint32_t*)val); - if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKUpdateFailHTLC), "LDKCVec_UpdateFailHTLCZ Elements"); - else - val_constr.data = NULL; - uint32_t* val_vals = (uint32_t*)(val + 4); - for (size_t q = 0; q < val_constr.datalen; q++) { - uint32_t val_conv_16 = val_vals[q]; - LDKUpdateFailHTLC val_conv_16_conv; - val_conv_16_conv.inner = (void*)(val_conv_16 & (~1)); - val_conv_16_conv.is_owned = (val_conv_16 & 1) || (val_conv_16 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_16_conv); - val_conv_16_conv = UpdateFailHTLC_clone(&val_conv_16_conv); - val_constr.data[q] = val_conv_16_conv; + ChannelReestablish_set_next_remote_commitment_number(&this_ptr_conv, val); +} + +static inline uint64_t ChannelReestablish_clone_ptr(LDKChannelReestablish *NONNULL_PTR arg) { + LDKChannelReestablish ret_var = ChannelReestablish_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_ChannelReestablish_clone_ptr(uint32_t arg) { + LDKChannelReestablish arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ChannelReestablish_clone_ptr(&arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_ChannelReestablish_clone(uint32_t orig) { + LDKChannelReestablish orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKChannelReestablish ret_var = ChannelReestablish_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - CommitmentUpdate_set_update_fail_htlcs(&this_ptr_conv, val_constr); + return ret_ref; } -uint32_tArray __attribute__((visibility("default"))) TS_CommitmentUpdate_get_update_fail_malformed_htlcs(uint32_t this_ptr) { - LDKCommitmentUpdate this_ptr_conv; +void __attribute__((visibility("default"))) TS_AnnouncementSignatures_free(uint32_t this_obj) { + LDKAnnouncementSignatures this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + AnnouncementSignatures_free(this_obj_conv); +} + +int8_tArray __attribute__((visibility("default"))) TS_AnnouncementSignatures_get_channel_id(uint32_t this_ptr) { + LDKAnnouncementSignatures this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_UpdateFailMalformedHTLCZ ret_var = CommitmentUpdate_get_update_fail_malformed_htlcs(&this_ptr_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t z = 0; z < ret_var.datalen; z++) { - LDKUpdateFailMalformedHTLC ret_conv_25_var = ret_var.data[z]; - uint64_t ret_conv_25_ref = 0; - CHECK((((uint64_t)ret_conv_25_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_25_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_25_var); - ret_conv_25_ref = (uint64_t)ret_conv_25_var.inner; - if (ret_conv_25_var.is_owned) { - ret_conv_25_ref |= 1; - } - ret_arr_ptr[z] = ret_conv_25_ref; - } - - FREE(ret_var.data); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *AnnouncementSignatures_get_channel_id(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_CommitmentUpdate_set_update_fail_malformed_htlcs(uint32_t this_ptr, uint32_tArray val) { - LDKCommitmentUpdate this_ptr_conv; +void __attribute__((visibility("default"))) TS_AnnouncementSignatures_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKAnnouncementSignatures this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + AnnouncementSignatures_set_channel_id(&this_ptr_conv, val_ref); +} + +int64_t __attribute__((visibility("default"))) TS_AnnouncementSignatures_get_short_channel_id(uint32_t this_ptr) { + LDKAnnouncementSignatures this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = AnnouncementSignatures_get_short_channel_id(&this_ptr_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_AnnouncementSignatures_set_short_channel_id(uint32_t this_ptr, int64_t val) { + LDKAnnouncementSignatures this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_UpdateFailMalformedHTLCZ val_constr; - val_constr.datalen = *((uint32_t*)val); - if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKUpdateFailMalformedHTLC), "LDKCVec_UpdateFailMalformedHTLCZ Elements"); - else - val_constr.data = NULL; - uint32_t* val_vals = (uint32_t*)(val + 4); - for (size_t z = 0; z < val_constr.datalen; z++) { - uint32_t val_conv_25 = val_vals[z]; - LDKUpdateFailMalformedHTLC val_conv_25_conv; - val_conv_25_conv.inner = (void*)(val_conv_25 & (~1)); - val_conv_25_conv.is_owned = (val_conv_25 & 1) || (val_conv_25 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_25_conv); - val_conv_25_conv = UpdateFailMalformedHTLC_clone(&val_conv_25_conv); - val_constr.data[z] = val_conv_25_conv; - } - CommitmentUpdate_set_update_fail_malformed_htlcs(&this_ptr_conv, val_constr); + AnnouncementSignatures_set_short_channel_id(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_CommitmentUpdate_get_update_fee(uint32_t this_ptr) { - LDKCommitmentUpdate this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_AnnouncementSignatures_get_node_signature(uint32_t this_ptr) { + LDKAnnouncementSignatures this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKUpdateFee ret_var = CommitmentUpdate_get_update_fee(&this_ptr_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } - return ret_ref; + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, AnnouncementSignatures_get_node_signature(&this_ptr_conv).compact_form, 64); + return ret_arr; } -void __attribute__((visibility("default"))) TS_CommitmentUpdate_set_update_fee(uint32_t this_ptr, uint32_t val) { - LDKCommitmentUpdate this_ptr_conv; +void __attribute__((visibility("default"))) TS_AnnouncementSignatures_set_node_signature(uint32_t this_ptr, int8_tArray val) { + LDKAnnouncementSignatures this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKUpdateFee val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = UpdateFee_clone(&val_conv); - CommitmentUpdate_set_update_fee(&this_ptr_conv, val_conv); + LDKSignature val_ref; + CHECK(val->arr_len == 64); + memcpy(val_ref.compact_form, val->elems, 64); + AnnouncementSignatures_set_node_signature(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_CommitmentUpdate_get_commitment_signed(uint32_t this_ptr) { - LDKCommitmentUpdate this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_AnnouncementSignatures_get_bitcoin_signature(uint32_t this_ptr) { + LDKAnnouncementSignatures this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCommitmentSigned ret_var = CommitmentUpdate_get_commitment_signed(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, AnnouncementSignatures_get_bitcoin_signature(&this_ptr_conv).compact_form, 64); + return ret_arr; } -void __attribute__((visibility("default"))) TS_CommitmentUpdate_set_commitment_signed(uint32_t this_ptr, uint32_t val) { - LDKCommitmentUpdate this_ptr_conv; +void __attribute__((visibility("default"))) TS_AnnouncementSignatures_set_bitcoin_signature(uint32_t this_ptr, int8_tArray val) { + LDKAnnouncementSignatures this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCommitmentSigned val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = CommitmentSigned_clone(&val_conv); - CommitmentUpdate_set_commitment_signed(&this_ptr_conv, val_conv); + LDKSignature val_ref; + CHECK(val->arr_len == 64); + memcpy(val_ref.compact_form, val->elems, 64); + AnnouncementSignatures_set_bitcoin_signature(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_CommitmentUpdate_new(uint32_tArray update_add_htlcs_arg, uint32_tArray update_fulfill_htlcs_arg, uint32_tArray update_fail_htlcs_arg, uint32_tArray update_fail_malformed_htlcs_arg, uint32_t update_fee_arg, uint32_t commitment_signed_arg) { - LDKCVec_UpdateAddHTLCZ update_add_htlcs_arg_constr; - update_add_htlcs_arg_constr.datalen = *((uint32_t*)update_add_htlcs_arg); - if (update_add_htlcs_arg_constr.datalen > 0) - update_add_htlcs_arg_constr.data = MALLOC(update_add_htlcs_arg_constr.datalen * sizeof(LDKUpdateAddHTLC), "LDKCVec_UpdateAddHTLCZ Elements"); - else - update_add_htlcs_arg_constr.data = NULL; - uint32_t* update_add_htlcs_arg_vals = (uint32_t*)(update_add_htlcs_arg + 4); - for (size_t p = 0; p < update_add_htlcs_arg_constr.datalen; p++) { - uint32_t update_add_htlcs_arg_conv_15 = update_add_htlcs_arg_vals[p]; - LDKUpdateAddHTLC update_add_htlcs_arg_conv_15_conv; - update_add_htlcs_arg_conv_15_conv.inner = (void*)(update_add_htlcs_arg_conv_15 & (~1)); - update_add_htlcs_arg_conv_15_conv.is_owned = (update_add_htlcs_arg_conv_15 & 1) || (update_add_htlcs_arg_conv_15 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_add_htlcs_arg_conv_15_conv); - update_add_htlcs_arg_conv_15_conv = UpdateAddHTLC_clone(&update_add_htlcs_arg_conv_15_conv); - update_add_htlcs_arg_constr.data[p] = update_add_htlcs_arg_conv_15_conv; - } - LDKCVec_UpdateFulfillHTLCZ update_fulfill_htlcs_arg_constr; - update_fulfill_htlcs_arg_constr.datalen = *((uint32_t*)update_fulfill_htlcs_arg); - if (update_fulfill_htlcs_arg_constr.datalen > 0) - update_fulfill_htlcs_arg_constr.data = MALLOC(update_fulfill_htlcs_arg_constr.datalen * sizeof(LDKUpdateFulfillHTLC), "LDKCVec_UpdateFulfillHTLCZ Elements"); - else - update_fulfill_htlcs_arg_constr.data = NULL; - uint32_t* update_fulfill_htlcs_arg_vals = (uint32_t*)(update_fulfill_htlcs_arg + 4); - for (size_t t = 0; t < update_fulfill_htlcs_arg_constr.datalen; t++) { - uint32_t update_fulfill_htlcs_arg_conv_19 = update_fulfill_htlcs_arg_vals[t]; - LDKUpdateFulfillHTLC update_fulfill_htlcs_arg_conv_19_conv; - update_fulfill_htlcs_arg_conv_19_conv.inner = (void*)(update_fulfill_htlcs_arg_conv_19 & (~1)); - update_fulfill_htlcs_arg_conv_19_conv.is_owned = (update_fulfill_htlcs_arg_conv_19 & 1) || (update_fulfill_htlcs_arg_conv_19 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_fulfill_htlcs_arg_conv_19_conv); - update_fulfill_htlcs_arg_conv_19_conv = UpdateFulfillHTLC_clone(&update_fulfill_htlcs_arg_conv_19_conv); - update_fulfill_htlcs_arg_constr.data[t] = update_fulfill_htlcs_arg_conv_19_conv; - } - LDKCVec_UpdateFailHTLCZ update_fail_htlcs_arg_constr; - update_fail_htlcs_arg_constr.datalen = *((uint32_t*)update_fail_htlcs_arg); - if (update_fail_htlcs_arg_constr.datalen > 0) - update_fail_htlcs_arg_constr.data = MALLOC(update_fail_htlcs_arg_constr.datalen * sizeof(LDKUpdateFailHTLC), "LDKCVec_UpdateFailHTLCZ Elements"); - else - update_fail_htlcs_arg_constr.data = NULL; - uint32_t* update_fail_htlcs_arg_vals = (uint32_t*)(update_fail_htlcs_arg + 4); - for (size_t q = 0; q < update_fail_htlcs_arg_constr.datalen; q++) { - uint32_t update_fail_htlcs_arg_conv_16 = update_fail_htlcs_arg_vals[q]; - LDKUpdateFailHTLC update_fail_htlcs_arg_conv_16_conv; - update_fail_htlcs_arg_conv_16_conv.inner = (void*)(update_fail_htlcs_arg_conv_16 & (~1)); - update_fail_htlcs_arg_conv_16_conv.is_owned = (update_fail_htlcs_arg_conv_16 & 1) || (update_fail_htlcs_arg_conv_16 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_fail_htlcs_arg_conv_16_conv); - update_fail_htlcs_arg_conv_16_conv = UpdateFailHTLC_clone(&update_fail_htlcs_arg_conv_16_conv); - update_fail_htlcs_arg_constr.data[q] = update_fail_htlcs_arg_conv_16_conv; - } - LDKCVec_UpdateFailMalformedHTLCZ update_fail_malformed_htlcs_arg_constr; - update_fail_malformed_htlcs_arg_constr.datalen = *((uint32_t*)update_fail_malformed_htlcs_arg); - if (update_fail_malformed_htlcs_arg_constr.datalen > 0) - update_fail_malformed_htlcs_arg_constr.data = MALLOC(update_fail_malformed_htlcs_arg_constr.datalen * sizeof(LDKUpdateFailMalformedHTLC), "LDKCVec_UpdateFailMalformedHTLCZ Elements"); - else - update_fail_malformed_htlcs_arg_constr.data = NULL; - uint32_t* update_fail_malformed_htlcs_arg_vals = (uint32_t*)(update_fail_malformed_htlcs_arg + 4); - for (size_t z = 0; z < update_fail_malformed_htlcs_arg_constr.datalen; z++) { - uint32_t update_fail_malformed_htlcs_arg_conv_25 = update_fail_malformed_htlcs_arg_vals[z]; - LDKUpdateFailMalformedHTLC update_fail_malformed_htlcs_arg_conv_25_conv; - update_fail_malformed_htlcs_arg_conv_25_conv.inner = (void*)(update_fail_malformed_htlcs_arg_conv_25 & (~1)); - update_fail_malformed_htlcs_arg_conv_25_conv.is_owned = (update_fail_malformed_htlcs_arg_conv_25 & 1) || (update_fail_malformed_htlcs_arg_conv_25 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_fail_malformed_htlcs_arg_conv_25_conv); - update_fail_malformed_htlcs_arg_conv_25_conv = UpdateFailMalformedHTLC_clone(&update_fail_malformed_htlcs_arg_conv_25_conv); - update_fail_malformed_htlcs_arg_constr.data[z] = update_fail_malformed_htlcs_arg_conv_25_conv; - } - LDKUpdateFee update_fee_arg_conv; - update_fee_arg_conv.inner = (void*)(update_fee_arg & (~1)); - update_fee_arg_conv.is_owned = (update_fee_arg & 1) || (update_fee_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_fee_arg_conv); - update_fee_arg_conv = UpdateFee_clone(&update_fee_arg_conv); - LDKCommitmentSigned commitment_signed_arg_conv; - commitment_signed_arg_conv.inner = (void*)(commitment_signed_arg & (~1)); - commitment_signed_arg_conv.is_owned = (commitment_signed_arg & 1) || (commitment_signed_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_signed_arg_conv); - commitment_signed_arg_conv = CommitmentSigned_clone(&commitment_signed_arg_conv); - LDKCommitmentUpdate ret_var = CommitmentUpdate_new(update_add_htlcs_arg_constr, update_fulfill_htlcs_arg_constr, update_fail_htlcs_arg_constr, update_fail_malformed_htlcs_arg_constr, update_fee_arg_conv, commitment_signed_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_AnnouncementSignatures_new(int8_tArray channel_id_arg, int64_t short_channel_id_arg, int8_tArray node_signature_arg, int8_tArray bitcoin_signature_arg) { + LDKThirtyTwoBytes channel_id_arg_ref; + CHECK(channel_id_arg->arr_len == 32); + memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); + LDKSignature node_signature_arg_ref; + CHECK(node_signature_arg->arr_len == 64); + memcpy(node_signature_arg_ref.compact_form, node_signature_arg->elems, 64); + LDKSignature bitcoin_signature_arg_ref; + CHECK(bitcoin_signature_arg->arr_len == 64); + memcpy(bitcoin_signature_arg_ref.compact_form, bitcoin_signature_arg->elems, 64); + LDKAnnouncementSignatures ret_var = AnnouncementSignatures_new(channel_id_arg_ref, short_channel_id_arg, node_signature_arg_ref, bitcoin_signature_arg_ref); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -27745,8 +25031,8 @@ uint32_t __attribute__((visibility("default"))) TS_CommitmentUpdate_new(uint32_ return ret_ref; } -static inline uint64_t CommitmentUpdate_clone_ptr(LDKCommitmentUpdate *NONNULL_PTR arg) { - LDKCommitmentUpdate ret_var = CommitmentUpdate_clone(arg); +static inline uint64_t AnnouncementSignatures_clone_ptr(LDKAnnouncementSignatures *NONNULL_PTR arg) { + LDKAnnouncementSignatures ret_var = AnnouncementSignatures_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -27757,21 +25043,133 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_CommitmentUpdate_clone_ptr(uint32_t arg) { - LDKCommitmentUpdate arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = CommitmentUpdate_clone_ptr(&arg_conv); - return ret_val; +int64_t __attribute__((visibility("default"))) TS_AnnouncementSignatures_clone_ptr(uint32_t arg) { + LDKAnnouncementSignatures arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = AnnouncementSignatures_clone_ptr(&arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_AnnouncementSignatures_clone(uint32_t orig) { + LDKAnnouncementSignatures orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKAnnouncementSignatures ret_var = AnnouncementSignatures_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +void __attribute__((visibility("default"))) TS_NetAddress_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKNetAddress this_ptr_conv = *(LDKNetAddress*)(this_ptr_ptr); + FREE((void*)this_ptr); + NetAddress_free(this_ptr_conv); +} + +static inline uint64_t NetAddress_clone_ptr(LDKNetAddress *NONNULL_PTR arg) { + LDKNetAddress *ret_copy = MALLOC(sizeof(LDKNetAddress), "LDKNetAddress"); + *ret_copy = NetAddress_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_NetAddress_clone_ptr(uint32_t arg) { + LDKNetAddress* arg_conv = (LDKNetAddress*)arg; + int64_t ret_val = NetAddress_clone_ptr(arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_NetAddress_clone(uint32_t orig) { + LDKNetAddress* orig_conv = (LDKNetAddress*)orig; + LDKNetAddress *ret_copy = MALLOC(sizeof(LDKNetAddress), "LDKNetAddress"); + *ret_copy = NetAddress_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_NetAddress_ipv4(int8_tArray addr, int16_t port) { + LDKFourBytes addr_ref; + CHECK(addr->arr_len == 4); + memcpy(addr_ref.data, addr->elems, 4); + LDKNetAddress *ret_copy = MALLOC(sizeof(LDKNetAddress), "LDKNetAddress"); + *ret_copy = NetAddress_ipv4(addr_ref, port); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_NetAddress_ipv6(int8_tArray addr, int16_t port) { + LDKSixteenBytes addr_ref; + CHECK(addr->arr_len == 16); + memcpy(addr_ref.data, addr->elems, 16); + LDKNetAddress *ret_copy = MALLOC(sizeof(LDKNetAddress), "LDKNetAddress"); + *ret_copy = NetAddress_ipv6(addr_ref, port); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_NetAddress_onion_v2(int8_tArray a) { + LDKTwelveBytes a_ref; + CHECK(a->arr_len == 12); + memcpy(a_ref.data, a->elems, 12); + LDKNetAddress *ret_copy = MALLOC(sizeof(LDKNetAddress), "LDKNetAddress"); + *ret_copy = NetAddress_onion_v2(a_ref); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_NetAddress_onion_v3(int8_tArray ed25519_pubkey, int16_t checksum, int8_t version, int16_t port) { + LDKThirtyTwoBytes ed25519_pubkey_ref; + CHECK(ed25519_pubkey->arr_len == 32); + memcpy(ed25519_pubkey_ref.data, ed25519_pubkey->elems, 32); + LDKNetAddress *ret_copy = MALLOC(sizeof(LDKNetAddress), "LDKNetAddress"); + *ret_copy = NetAddress_onion_v3(ed25519_pubkey_ref, checksum, version, port); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +int8_tArray __attribute__((visibility("default"))) TS_NetAddress_write(uint32_t obj) { + LDKNetAddress* obj_conv = (LDKNetAddress*)obj; + LDKCVec_u8Z ret_var = NetAddress_write(obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_NetAddress_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_NetAddressDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NetAddressDecodeErrorZ), "LDKCResult_NetAddressDecodeErrorZ"); + *ret_conv = NetAddress_read(ser_ref); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_free(uint32_t this_obj) { + LDKUnsignedNodeAnnouncement this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + UnsignedNodeAnnouncement_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_CommitmentUpdate_clone(uint32_t orig) { - LDKCommitmentUpdate orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKCommitmentUpdate ret_var = CommitmentUpdate_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_get_features(uint32_t this_ptr) { + LDKUnsignedNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKNodeFeatures ret_var = UnsignedNodeAnnouncement_get_features(&this_ptr_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -27783,785 +25181,841 @@ uint32_t __attribute__((visibility("default"))) TS_CommitmentUpdate_clone(uint3 return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKChannelMessageHandler this_ptr_conv = *(LDKChannelMessageHandler*)(this_ptr_ptr); - FREE((void*)this_ptr); - ChannelMessageHandler_free(this_ptr_conv); -} - -void __attribute__((visibility("default"))) TS_RoutingMessageHandler_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKRoutingMessageHandler this_ptr_conv = *(LDKRoutingMessageHandler*)(this_ptr_ptr); - FREE((void*)this_ptr); - RoutingMessageHandler_free(this_ptr_conv); -} - -int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_write(uint32_t obj) { - LDKAcceptChannel obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = AcceptChannel_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_AcceptChannel_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_AcceptChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AcceptChannelDecodeErrorZ), "LDKCResult_AcceptChannelDecodeErrorZ"); - *ret_conv = AcceptChannel_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_set_features(uint32_t this_ptr, uint32_t val) { + LDKUnsignedNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKNodeFeatures val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = NodeFeatures_clone(&val_conv); + UnsignedNodeAnnouncement_set_features(&this_ptr_conv, val_conv); } -int8_tArray __attribute__((visibility("default"))) TS_AnnouncementSignatures_write(uint32_t obj) { - LDKAnnouncementSignatures obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = AnnouncementSignatures_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +int32_t __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_get_timestamp(uint32_t this_ptr) { + LDKUnsignedNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = UnsignedNodeAnnouncement_get_timestamp(&this_ptr_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_AnnouncementSignatures_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_AnnouncementSignaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AnnouncementSignaturesDecodeErrorZ), "LDKCResult_AnnouncementSignaturesDecodeErrorZ"); - *ret_conv = AnnouncementSignatures_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_set_timestamp(uint32_t this_ptr, int32_t val) { + LDKUnsignedNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + UnsignedNodeAnnouncement_set_timestamp(&this_ptr_conv, val); } -int8_tArray __attribute__((visibility("default"))) TS_ChannelReestablish_write(uint32_t obj) { - LDKChannelReestablish obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ChannelReestablish_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_get_node_id(uint32_t this_ptr) { + LDKUnsignedNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, UnsignedNodeAnnouncement_get_node_id(&this_ptr_conv).compressed_form, 33); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelReestablish_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ChannelReestablishDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelReestablishDecodeErrorZ), "LDKCResult_ChannelReestablishDecodeErrorZ"); - *ret_conv = ChannelReestablish_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_set_node_id(uint32_t this_ptr, int8_tArray val) { + LDKUnsignedNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + UnsignedNodeAnnouncement_set_node_id(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_ClosingSigned_write(uint32_t obj) { - LDKClosingSigned obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ClosingSigned_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_get_rgb(uint32_t this_ptr) { + LDKUnsignedNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(3); + memcpy(ret_arr->elems, *UnsignedNodeAnnouncement_get_rgb(&this_ptr_conv), 3); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ClosingSigned_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ClosingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedDecodeErrorZ), "LDKCResult_ClosingSignedDecodeErrorZ"); - *ret_conv = ClosingSigned_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_set_rgb(uint32_t this_ptr, int8_tArray val) { + LDKUnsignedNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKThreeBytes val_ref; + CHECK(val->arr_len == 3); + memcpy(val_ref.data, val->elems, 3); + UnsignedNodeAnnouncement_set_rgb(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_write(uint32_t obj) { - LDKClosingSignedFeeRange obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ClosingSignedFeeRange_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_get_alias(uint32_t this_ptr) { + LDKUnsignedNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *UnsignedNodeAnnouncement_get_alias(&this_ptr_conv), 32); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ), "LDKCResult_ClosingSignedFeeRangeDecodeErrorZ"); - *ret_conv = ClosingSignedFeeRange_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_set_alias(uint32_t this_ptr, int8_tArray val) { + LDKUnsignedNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + UnsignedNodeAnnouncement_set_alias(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_CommitmentSigned_write(uint32_t obj) { - LDKCommitmentSigned obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = CommitmentSigned_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_set_addresses(uint32_t this_ptr, uint32_tArray val) { + LDKUnsignedNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_NetAddressZ val_constr; + val_constr.datalen = val->arr_len; + if (val_constr.datalen > 0) + val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKNetAddress), "LDKCVec_NetAddressZ Elements"); + else + val_constr.data = NULL; + uint32_t* val_vals = val->elems; + for (size_t m = 0; m < val_constr.datalen; m++) { + uint32_t val_conv_12 = val_vals[m]; + void* val_conv_12_ptr = (void*)(((uint64_t)val_conv_12) & ~1); + CHECK_ACCESS(val_conv_12_ptr); + LDKNetAddress val_conv_12_conv = *(LDKNetAddress*)(val_conv_12_ptr); + val_conv_12_conv = NetAddress_clone((LDKNetAddress*)(((uint64_t)val_conv_12) & ~1)); + val_constr.data[m] = val_conv_12_conv; + } + UnsignedNodeAnnouncement_set_addresses(&this_ptr_conv, val_constr); } -uint32_t __attribute__((visibility("default"))) TS_CommitmentSigned_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_CommitmentSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentSignedDecodeErrorZ), "LDKCResult_CommitmentSignedDecodeErrorZ"); - *ret_conv = CommitmentSigned_read(ser_ref); - return (uint64_t)ret_conv; +static inline uint64_t UnsignedNodeAnnouncement_clone_ptr(LDKUnsignedNodeAnnouncement *NONNULL_PTR arg) { + LDKUnsignedNodeAnnouncement ret_var = UnsignedNodeAnnouncement_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -int8_tArray __attribute__((visibility("default"))) TS_FundingCreated_write(uint32_t obj) { - LDKFundingCreated obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = FundingCreated_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; + return ret_ref; } - -uint32_t __attribute__((visibility("default"))) TS_FundingCreated_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_FundingCreatedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingCreatedDecodeErrorZ), "LDKCResult_FundingCreatedDecodeErrorZ"); - *ret_conv = FundingCreated_read(ser_ref); - return (uint64_t)ret_conv; +int64_t __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_clone_ptr(uint32_t arg) { + LDKUnsignedNodeAnnouncement arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = UnsignedNodeAnnouncement_clone_ptr(&arg_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_FundingSigned_write(uint32_t obj) { - LDKFundingSigned obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = FundingSigned_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_clone(uint32_t orig) { + LDKUnsignedNodeAnnouncement orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKUnsignedNodeAnnouncement ret_var = UnsignedNodeAnnouncement_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_FundingSigned_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_FundingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingSignedDecodeErrorZ), "LDKCResult_FundingSignedDecodeErrorZ"); - *ret_conv = FundingSigned_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_NodeAnnouncement_free(uint32_t this_obj) { + LDKNodeAnnouncement this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + NodeAnnouncement_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_FundingLocked_write(uint32_t obj) { - LDKFundingLocked obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = FundingLocked_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_NodeAnnouncement_get_signature(uint32_t this_ptr) { + LDKNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, NodeAnnouncement_get_signature(&this_ptr_conv).compact_form, 64); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_FundingLocked_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_FundingLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingLockedDecodeErrorZ), "LDKCResult_FundingLockedDecodeErrorZ"); - *ret_conv = FundingLocked_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_NodeAnnouncement_set_signature(uint32_t this_ptr, int8_tArray val) { + LDKNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKSignature val_ref; + CHECK(val->arr_len == 64); + memcpy(val_ref.compact_form, val->elems, 64); + NodeAnnouncement_set_signature(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_Init_write(uint32_t obj) { - LDKInit obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = Init_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncement_get_contents(uint32_t this_ptr) { + LDKNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKUnsignedNodeAnnouncement ret_var = NodeAnnouncement_get_contents(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_Init_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_InitDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitDecodeErrorZ), "LDKCResult_InitDecodeErrorZ"); - *ret_conv = Init_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_NodeAnnouncement_set_contents(uint32_t this_ptr, uint32_t val) { + LDKNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKUnsignedNodeAnnouncement val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = UnsignedNodeAnnouncement_clone(&val_conv); + NodeAnnouncement_set_contents(&this_ptr_conv, val_conv); } -int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_write(uint32_t obj) { - LDKOpenChannel obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = OpenChannel_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncement_new(int8_tArray signature_arg, uint32_t contents_arg) { + LDKSignature signature_arg_ref; + CHECK(signature_arg->arr_len == 64); + memcpy(signature_arg_ref.compact_form, signature_arg->elems, 64); + LDKUnsignedNodeAnnouncement contents_arg_conv; + contents_arg_conv.inner = (void*)(contents_arg & (~1)); + contents_arg_conv.is_owned = (contents_arg & 1) || (contents_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(contents_arg_conv); + contents_arg_conv = UnsignedNodeAnnouncement_clone(&contents_arg_conv); + LDKNodeAnnouncement ret_var = NodeAnnouncement_new(signature_arg_ref, contents_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_OpenChannel_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_OpenChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OpenChannelDecodeErrorZ), "LDKCResult_OpenChannelDecodeErrorZ"); - *ret_conv = OpenChannel_read(ser_ref); - return (uint64_t)ret_conv; +static inline uint64_t NodeAnnouncement_clone_ptr(LDKNodeAnnouncement *NONNULL_PTR arg) { + LDKNodeAnnouncement ret_var = NodeAnnouncement_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_NodeAnnouncement_clone_ptr(uint32_t arg) { + LDKNodeAnnouncement arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = NodeAnnouncement_clone_ptr(&arg_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_RevokeAndACK_write(uint32_t obj) { - LDKRevokeAndACK obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = RevokeAndACK_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncement_clone(uint32_t orig) { + LDKNodeAnnouncement orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKNodeAnnouncement ret_var = NodeAnnouncement_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_RevokeAndACK_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_RevokeAndACKDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevokeAndACKDecodeErrorZ), "LDKCResult_RevokeAndACKDecodeErrorZ"); - *ret_conv = RevokeAndACK_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_free(uint32_t this_obj) { + LDKUnsignedChannelAnnouncement this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + UnsignedChannelAnnouncement_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_Shutdown_write(uint32_t obj) { - LDKShutdown obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = Shutdown_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_features(uint32_t this_ptr) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelFeatures ret_var = UnsignedChannelAnnouncement_get_features(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_Shutdown_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ShutdownDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownDecodeErrorZ), "LDKCResult_ShutdownDecodeErrorZ"); - *ret_conv = Shutdown_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_features(uint32_t this_ptr, uint32_t val) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelFeatures val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = ChannelFeatures_clone(&val_conv); + UnsignedChannelAnnouncement_set_features(&this_ptr_conv, val_conv); } -int8_tArray __attribute__((visibility("default"))) TS_UpdateFailHTLC_write(uint32_t obj) { - LDKUpdateFailHTLC obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = UpdateFailHTLC_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_chain_hash(uint32_t this_ptr) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *UnsignedChannelAnnouncement_get_chain_hash(&this_ptr_conv), 32); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_UpdateFailHTLC_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_UpdateFailHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailHTLCDecodeErrorZ), "LDKCResult_UpdateFailHTLCDecodeErrorZ"); - *ret_conv = UpdateFailHTLC_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_chain_hash(uint32_t this_ptr, int8_tArray val) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + UnsignedChannelAnnouncement_set_chain_hash(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_write(uint32_t obj) { - LDKUpdateFailMalformedHTLC obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = UpdateFailMalformedHTLC_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +int64_t __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_short_channel_id(uint32_t this_ptr) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = UnsignedChannelAnnouncement_get_short_channel_id(&this_ptr_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ), "LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ"); - *ret_conv = UpdateFailMalformedHTLC_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_short_channel_id(uint32_t this_ptr, int64_t val) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + UnsignedChannelAnnouncement_set_short_channel_id(&this_ptr_conv, val); } -int8_tArray __attribute__((visibility("default"))) TS_UpdateFee_write(uint32_t obj) { - LDKUpdateFee obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = UpdateFee_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_node_id_1(uint32_t this_ptr) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, UnsignedChannelAnnouncement_get_node_id_1(&this_ptr_conv).compressed_form, 33); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_UpdateFee_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_UpdateFeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFeeDecodeErrorZ), "LDKCResult_UpdateFeeDecodeErrorZ"); - *ret_conv = UpdateFee_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_node_id_1(uint32_t this_ptr, int8_tArray val) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + UnsignedChannelAnnouncement_set_node_id_1(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_write(uint32_t obj) { - LDKUpdateFulfillHTLC obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = UpdateFulfillHTLC_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_node_id_2(uint32_t this_ptr) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, UnsignedChannelAnnouncement_get_node_id_2(&this_ptr_conv).compressed_form, 33); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_UpdateFulfillHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFulfillHTLCDecodeErrorZ), "LDKCResult_UpdateFulfillHTLCDecodeErrorZ"); - *ret_conv = UpdateFulfillHTLC_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_node_id_2(uint32_t this_ptr, int8_tArray val) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + UnsignedChannelAnnouncement_set_node_id_2(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_UpdateAddHTLC_write(uint32_t obj) { - LDKUpdateAddHTLC obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = UpdateAddHTLC_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_bitcoin_key_1(uint32_t this_ptr) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, UnsignedChannelAnnouncement_get_bitcoin_key_1(&this_ptr_conv).compressed_form, 33); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_UpdateAddHTLC_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_UpdateAddHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateAddHTLCDecodeErrorZ), "LDKCResult_UpdateAddHTLCDecodeErrorZ"); - *ret_conv = UpdateAddHTLC_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_bitcoin_key_1(uint32_t this_ptr, int8_tArray val) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + UnsignedChannelAnnouncement_set_bitcoin_key_1(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_Ping_write(uint32_t obj) { - LDKPing obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = Ping_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_bitcoin_key_2(uint32_t this_ptr) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, UnsignedChannelAnnouncement_get_bitcoin_key_2(&this_ptr_conv).compressed_form, 33); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_Ping_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_PingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PingDecodeErrorZ), "LDKCResult_PingDecodeErrorZ"); - *ret_conv = Ping_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_bitcoin_key_2(uint32_t this_ptr, int8_tArray val) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + UnsignedChannelAnnouncement_set_bitcoin_key_2(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_Pong_write(uint32_t obj) { - LDKPong obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = Pong_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +static inline uint64_t UnsignedChannelAnnouncement_clone_ptr(LDKUnsignedChannelAnnouncement *NONNULL_PTR arg) { + LDKUnsignedChannelAnnouncement ret_var = UnsignedChannelAnnouncement_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_clone_ptr(uint32_t arg) { + LDKUnsignedChannelAnnouncement arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = UnsignedChannelAnnouncement_clone_ptr(&arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Pong_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_PongDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PongDecodeErrorZ), "LDKCResult_PongDecodeErrorZ"); - *ret_conv = Pong_read(ser_ref); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_clone(uint32_t orig) { + LDKUnsignedChannelAnnouncement orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKUnsignedChannelAnnouncement ret_var = UnsignedChannelAnnouncement_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_write(uint32_t obj) { - LDKUnsignedChannelAnnouncement obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = UnsignedChannelAnnouncement_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +void __attribute__((visibility("default"))) TS_ChannelAnnouncement_free(uint32_t this_obj) { + LDKChannelAnnouncement this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + ChannelAnnouncement_free(this_obj_conv); +} + +int8_tArray __attribute__((visibility("default"))) TS_ChannelAnnouncement_get_node_signature_1(uint32_t this_ptr) { + LDKChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, ChannelAnnouncement_get_node_signature_1(&this_ptr_conv).compact_form, 64); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ), "LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ"); - *ret_conv = UnsignedChannelAnnouncement_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_ChannelAnnouncement_set_node_signature_1(uint32_t this_ptr, int8_tArray val) { + LDKChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKSignature val_ref; + CHECK(val->arr_len == 64); + memcpy(val_ref.compact_form, val->elems, 64); + ChannelAnnouncement_set_node_signature_1(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_ChannelAnnouncement_write(uint32_t obj) { - LDKChannelAnnouncement obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ChannelAnnouncement_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_ChannelAnnouncement_get_node_signature_2(uint32_t this_ptr) { + LDKChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, ChannelAnnouncement_get_node_signature_2(&this_ptr_conv).compact_form, 64); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelAnnouncement_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelAnnouncementDecodeErrorZ), "LDKCResult_ChannelAnnouncementDecodeErrorZ"); - *ret_conv = ChannelAnnouncement_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_ChannelAnnouncement_set_node_signature_2(uint32_t this_ptr, int8_tArray val) { + LDKChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKSignature val_ref; + CHECK(val->arr_len == 64); + memcpy(val_ref.compact_form, val->elems, 64); + ChannelAnnouncement_set_node_signature_2(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_write(uint32_t obj) { - LDKUnsignedChannelUpdate obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = UnsignedChannelUpdate_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_ChannelAnnouncement_get_bitcoin_signature_1(uint32_t this_ptr) { + LDKChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, ChannelAnnouncement_get_bitcoin_signature_1(&this_ptr_conv).compact_form, 64); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_UnsignedChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelUpdateDecodeErrorZ), "LDKCResult_UnsignedChannelUpdateDecodeErrorZ"); - *ret_conv = UnsignedChannelUpdate_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_ChannelAnnouncement_set_bitcoin_signature_1(uint32_t this_ptr, int8_tArray val) { + LDKChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKSignature val_ref; + CHECK(val->arr_len == 64); + memcpy(val_ref.compact_form, val->elems, 64); + ChannelAnnouncement_set_bitcoin_signature_1(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_ChannelUpdate_write(uint32_t obj) { - LDKChannelUpdate obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ChannelUpdate_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_ChannelAnnouncement_get_bitcoin_signature_2(uint32_t this_ptr) { + LDKChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, ChannelAnnouncement_get_bitcoin_signature_2(&this_ptr_conv).compact_form, 64); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelUpdate_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelUpdateDecodeErrorZ), "LDKCResult_ChannelUpdateDecodeErrorZ"); - *ret_conv = ChannelUpdate_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_ChannelAnnouncement_set_bitcoin_signature_2(uint32_t this_ptr, int8_tArray val) { + LDKChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKSignature val_ref; + CHECK(val->arr_len == 64); + memcpy(val_ref.compact_form, val->elems, 64); + ChannelAnnouncement_set_bitcoin_signature_2(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_ErrorMessage_write(uint32_t obj) { - LDKErrorMessage obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ErrorMessage_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_ChannelAnnouncement_get_contents(uint32_t this_ptr) { + LDKChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKUnsignedChannelAnnouncement ret_var = ChannelAnnouncement_get_contents(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ErrorMessage_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ErrorMessageDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ErrorMessageDecodeErrorZ), "LDKCResult_ErrorMessageDecodeErrorZ"); - *ret_conv = ErrorMessage_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_ChannelAnnouncement_set_contents(uint32_t this_ptr, uint32_t val) { + LDKChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKUnsignedChannelAnnouncement val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = UnsignedChannelAnnouncement_clone(&val_conv); + ChannelAnnouncement_set_contents(&this_ptr_conv, val_conv); } -int8_tArray __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_write(uint32_t obj) { - LDKUnsignedNodeAnnouncement obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = UnsignedNodeAnnouncement_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_ChannelAnnouncement_new(int8_tArray node_signature_1_arg, int8_tArray node_signature_2_arg, int8_tArray bitcoin_signature_1_arg, int8_tArray bitcoin_signature_2_arg, uint32_t contents_arg) { + LDKSignature node_signature_1_arg_ref; + CHECK(node_signature_1_arg->arr_len == 64); + memcpy(node_signature_1_arg_ref.compact_form, node_signature_1_arg->elems, 64); + LDKSignature node_signature_2_arg_ref; + CHECK(node_signature_2_arg->arr_len == 64); + memcpy(node_signature_2_arg_ref.compact_form, node_signature_2_arg->elems, 64); + LDKSignature bitcoin_signature_1_arg_ref; + CHECK(bitcoin_signature_1_arg->arr_len == 64); + memcpy(bitcoin_signature_1_arg_ref.compact_form, bitcoin_signature_1_arg->elems, 64); + LDKSignature bitcoin_signature_2_arg_ref; + CHECK(bitcoin_signature_2_arg->arr_len == 64); + memcpy(bitcoin_signature_2_arg_ref.compact_form, bitcoin_signature_2_arg->elems, 64); + LDKUnsignedChannelAnnouncement contents_arg_conv; + contents_arg_conv.inner = (void*)(contents_arg & (~1)); + contents_arg_conv.is_owned = (contents_arg & 1) || (contents_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(contents_arg_conv); + contents_arg_conv = UnsignedChannelAnnouncement_clone(&contents_arg_conv); + LDKChannelAnnouncement ret_var = ChannelAnnouncement_new(node_signature_1_arg_ref, node_signature_2_arg_ref, bitcoin_signature_1_arg_ref, bitcoin_signature_2_arg_ref, contents_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ), "LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ"); - *ret_conv = UnsignedNodeAnnouncement_read(ser_ref); - return (uint64_t)ret_conv; +static inline uint64_t ChannelAnnouncement_clone_ptr(LDKChannelAnnouncement *NONNULL_PTR arg) { + LDKChannelAnnouncement ret_var = ChannelAnnouncement_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -int8_tArray __attribute__((visibility("default"))) TS_NodeAnnouncement_write(uint32_t obj) { - LDKNodeAnnouncement obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = NodeAnnouncement_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; + return ret_ref; } - -uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncement_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_NodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeAnnouncementDecodeErrorZ), "LDKCResult_NodeAnnouncementDecodeErrorZ"); - *ret_conv = NodeAnnouncement_read(ser_ref); - return (uint64_t)ret_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelAnnouncement_clone_ptr(uint32_t arg) { + LDKChannelAnnouncement arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ChannelAnnouncement_clone_ptr(&arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_QueryShortChannelIds_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_QueryShortChannelIdsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryShortChannelIdsDecodeErrorZ), "LDKCResult_QueryShortChannelIdsDecodeErrorZ"); - *ret_conv = QueryShortChannelIds_read(ser_ref); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelAnnouncement_clone(uint32_t orig) { + LDKChannelAnnouncement orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKChannelAnnouncement ret_var = ChannelAnnouncement_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_QueryShortChannelIds_write(uint32_t obj) { - LDKQueryShortChannelIds obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = QueryShortChannelIds_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_free(uint32_t this_obj) { + LDKUnsignedChannelUpdate this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + UnsignedChannelUpdate_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_write(uint32_t obj) { - LDKReplyShortChannelIdsEnd obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ReplyShortChannelIdsEnd_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_chain_hash(uint32_t this_ptr) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *UnsignedChannelUpdate_get_chain_hash(&this_ptr_conv), 32); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ), "LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ"); - *ret_conv = ReplyShortChannelIdsEnd_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_chain_hash(uint32_t this_ptr, int8_tArray val) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + UnsignedChannelUpdate_set_chain_hash(&this_ptr_conv, val_ref); } -int32_t __attribute__((visibility("default"))) TS_QueryChannelRange_end_blocknum(uint32_t this_arg) { - LDKQueryChannelRange this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int32_t ret_val = QueryChannelRange_end_blocknum(&this_arg_conv); +int64_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_short_channel_id(uint32_t this_ptr) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = UnsignedChannelUpdate_get_short_channel_id(&this_ptr_conv); return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_QueryChannelRange_write(uint32_t obj) { - LDKQueryChannelRange obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = QueryChannelRange_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_short_channel_id(uint32_t this_ptr, int64_t val) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + UnsignedChannelUpdate_set_short_channel_id(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_QueryChannelRange_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_QueryChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryChannelRangeDecodeErrorZ), "LDKCResult_QueryChannelRangeDecodeErrorZ"); - *ret_conv = QueryChannelRange_read(ser_ref); - return (uint64_t)ret_conv; +int32_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_timestamp(uint32_t this_ptr) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = UnsignedChannelUpdate_get_timestamp(&this_ptr_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ReplyChannelRange_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ReplyChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyChannelRangeDecodeErrorZ), "LDKCResult_ReplyChannelRangeDecodeErrorZ"); - *ret_conv = ReplyChannelRange_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_timestamp(uint32_t this_ptr, int32_t val) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + UnsignedChannelUpdate_set_timestamp(&this_ptr_conv, val); } -int8_tArray __attribute__((visibility("default"))) TS_ReplyChannelRange_write(uint32_t obj) { - LDKReplyChannelRange obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ReplyChannelRange_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +int8_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_flags(uint32_t this_ptr) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_t ret_val = UnsignedChannelUpdate_get_flags(&this_ptr_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_GossipTimestampFilter_write(uint32_t obj) { - LDKGossipTimestampFilter obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = GossipTimestampFilter_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_flags(uint32_t this_ptr, int8_t val) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + UnsignedChannelUpdate_set_flags(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_GossipTimestampFilterDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_GossipTimestampFilterDecodeErrorZ), "LDKCResult_GossipTimestampFilterDecodeErrorZ"); - *ret_conv = GossipTimestampFilter_read(ser_ref); - return (uint64_t)ret_conv; +int16_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_cltv_expiry_delta(uint32_t this_ptr) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int16_t ret_val = UnsignedChannelUpdate_get_cltv_expiry_delta(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_CustomMessageHandler_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKCustomMessageHandler this_ptr_conv = *(LDKCustomMessageHandler*)(this_ptr_ptr); - FREE((void*)this_ptr); - CustomMessageHandler_free(this_ptr_conv); +void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_cltv_expiry_delta(uint32_t this_ptr, int16_t val) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + UnsignedChannelUpdate_set_cltv_expiry_delta(&this_ptr_conv, val); +} + +int64_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_htlc_minimum_msat(uint32_t this_ptr) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = UnsignedChannelUpdate_get_htlc_minimum_msat(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_IgnoringMessageHandler_free(uint32_t this_obj) { - LDKIgnoringMessageHandler this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - IgnoringMessageHandler_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_htlc_minimum_msat(uint32_t this_ptr, int64_t val) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + UnsignedChannelUpdate_set_htlc_minimum_msat(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_IgnoringMessageHandler_new() { - LDKIgnoringMessageHandler ret_var = IgnoringMessageHandler_new(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int32_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_fee_base_msat(uint32_t this_ptr) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = UnsignedChannelUpdate_get_fee_base_msat(&this_ptr_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_IgnoringMessageHandler_as_MessageSendEventsProvider(uint32_t this_arg) { - LDKIgnoringMessageHandler this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKMessageSendEventsProvider* ret_ret = MALLOC(sizeof(LDKMessageSendEventsProvider), "LDKMessageSendEventsProvider"); - *ret_ret = IgnoringMessageHandler_as_MessageSendEventsProvider(&this_arg_conv); - return (uint64_t)ret_ret; +void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_fee_base_msat(uint32_t this_ptr, int32_t val) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + UnsignedChannelUpdate_set_fee_base_msat(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_IgnoringMessageHandler_as_RoutingMessageHandler(uint32_t this_arg) { - LDKIgnoringMessageHandler this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKRoutingMessageHandler* ret_ret = MALLOC(sizeof(LDKRoutingMessageHandler), "LDKRoutingMessageHandler"); - *ret_ret = IgnoringMessageHandler_as_RoutingMessageHandler(&this_arg_conv); - return (uint64_t)ret_ret; +int32_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_fee_proportional_millionths(uint32_t this_ptr) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = UnsignedChannelUpdate_get_fee_proportional_millionths(&this_ptr_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_IgnoringMessageHandler_as_CustomMessageReader(uint32_t this_arg) { - LDKIgnoringMessageHandler this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCustomMessageReader* ret_ret = MALLOC(sizeof(LDKCustomMessageReader), "LDKCustomMessageReader"); - *ret_ret = IgnoringMessageHandler_as_CustomMessageReader(&this_arg_conv); - return (uint64_t)ret_ret; +void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_fee_proportional_millionths(uint32_t this_ptr, int32_t val) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + UnsignedChannelUpdate_set_fee_proportional_millionths(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_IgnoringMessageHandler_as_CustomMessageHandler(uint32_t this_arg) { - LDKIgnoringMessageHandler this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCustomMessageHandler* ret_ret = MALLOC(sizeof(LDKCustomMessageHandler), "LDKCustomMessageHandler"); - *ret_ret = IgnoringMessageHandler_as_CustomMessageHandler(&this_arg_conv); - return (uint64_t)ret_ret; +static inline uint64_t UnsignedChannelUpdate_clone_ptr(LDKUnsignedChannelUpdate *NONNULL_PTR arg) { + LDKUnsignedChannelUpdate ret_var = UnsignedChannelUpdate_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -void __attribute__((visibility("default"))) TS_ErroringMessageHandler_free(uint32_t this_obj) { - LDKErroringMessageHandler this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ErroringMessageHandler_free(this_obj_conv); + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_clone_ptr(uint32_t arg) { + LDKUnsignedChannelUpdate arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = UnsignedChannelUpdate_clone_ptr(&arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ErroringMessageHandler_new() { - LDKErroringMessageHandler ret_var = ErroringMessageHandler_new(); +uint32_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_clone(uint32_t orig) { + LDKUnsignedChannelUpdate orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKUnsignedChannelUpdate ret_var = UnsignedChannelUpdate_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -28573,84 +26027,75 @@ uint32_t __attribute__((visibility("default"))) TS_ErroringMessageHandler_new() return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ErroringMessageHandler_as_MessageSendEventsProvider(uint32_t this_arg) { - LDKErroringMessageHandler this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKMessageSendEventsProvider* ret_ret = MALLOC(sizeof(LDKMessageSendEventsProvider), "LDKMessageSendEventsProvider"); - *ret_ret = ErroringMessageHandler_as_MessageSendEventsProvider(&this_arg_conv); - return (uint64_t)ret_ret; -} - -uint32_t __attribute__((visibility("default"))) TS_ErroringMessageHandler_as_ChannelMessageHandler(uint32_t this_arg) { - LDKErroringMessageHandler this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKChannelMessageHandler* ret_ret = MALLOC(sizeof(LDKChannelMessageHandler), "LDKChannelMessageHandler"); - *ret_ret = ErroringMessageHandler_as_ChannelMessageHandler(&this_arg_conv); - return (uint64_t)ret_ret; -} - -void __attribute__((visibility("default"))) TS_MessageHandler_free(uint32_t this_obj) { - LDKMessageHandler this_obj_conv; +void __attribute__((visibility("default"))) TS_ChannelUpdate_free(uint32_t this_obj) { + LDKChannelUpdate this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - MessageHandler_free(this_obj_conv); + ChannelUpdate_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_MessageHandler_get_chan_handler(uint32_t this_ptr) { - LDKMessageHandler this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_ChannelUpdate_get_signature(uint32_t this_ptr) { + LDKChannelUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - // WARNING: This object doesn't live past this scope, needs clone! - uint64_t ret_ret = ((uint64_t)MessageHandler_get_chan_handler(&this_ptr_conv)) | 1; - return ret_ret; + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, ChannelUpdate_get_signature(&this_ptr_conv).compact_form, 64); + return ret_arr; } -void __attribute__((visibility("default"))) TS_MessageHandler_set_chan_handler(uint32_t this_ptr, uint32_t val) { - LDKMessageHandler this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelUpdate_set_signature(uint32_t this_ptr, int8_tArray val) { + LDKChannelUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKChannelMessageHandler val_conv = *(LDKChannelMessageHandler*)(val_ptr); - MessageHandler_set_chan_handler(&this_ptr_conv, val_conv); + LDKSignature val_ref; + CHECK(val->arr_len == 64); + memcpy(val_ref.compact_form, val->elems, 64); + ChannelUpdate_set_signature(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_MessageHandler_get_route_handler(uint32_t this_ptr) { - LDKMessageHandler this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelUpdate_get_contents(uint32_t this_ptr) { + LDKChannelUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - // WARNING: This object doesn't live past this scope, needs clone! - uint64_t ret_ret = ((uint64_t)MessageHandler_get_route_handler(&this_ptr_conv)) | 1; - return ret_ret; + LDKUnsignedChannelUpdate ret_var = ChannelUpdate_get_contents(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_MessageHandler_set_route_handler(uint32_t this_ptr, uint32_t val) { - LDKMessageHandler this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelUpdate_set_contents(uint32_t this_ptr, uint32_t val) { + LDKChannelUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKRoutingMessageHandler val_conv = *(LDKRoutingMessageHandler*)(val_ptr); - MessageHandler_set_route_handler(&this_ptr_conv, val_conv); + LDKUnsignedChannelUpdate val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = UnsignedChannelUpdate_clone(&val_conv); + ChannelUpdate_set_contents(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_MessageHandler_new(uint32_t chan_handler_arg, uint32_t route_handler_arg) { - void* chan_handler_arg_ptr = (void*)(((uint64_t)chan_handler_arg) & ~1); - CHECK_ACCESS(chan_handler_arg_ptr); - LDKChannelMessageHandler chan_handler_arg_conv = *(LDKChannelMessageHandler*)(chan_handler_arg_ptr); - void* route_handler_arg_ptr = (void*)(((uint64_t)route_handler_arg) & ~1); - CHECK_ACCESS(route_handler_arg_ptr); - LDKRoutingMessageHandler route_handler_arg_conv = *(LDKRoutingMessageHandler*)(route_handler_arg_ptr); - LDKMessageHandler ret_var = MessageHandler_new(chan_handler_arg_conv, route_handler_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelUpdate_new(int8_tArray signature_arg, uint32_t contents_arg) { + LDKSignature signature_arg_ref; + CHECK(signature_arg->arr_len == 64); + memcpy(signature_arg_ref.compact_form, signature_arg->elems, 64); + LDKUnsignedChannelUpdate contents_arg_conv; + contents_arg_conv.inner = (void*)(contents_arg & (~1)); + contents_arg_conv.is_owned = (contents_arg & 1) || (contents_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(contents_arg_conv); + contents_arg_conv = UnsignedChannelUpdate_clone(&contents_arg_conv); + LDKChannelUpdate ret_var = ChannelUpdate_new(signature_arg_ref, contents_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -28662,64 +26107,112 @@ uint32_t __attribute__((visibility("default"))) TS_MessageHandler_new(uint32_t return ret_ref; } -static inline uint64_t SocketDescriptor_clone_ptr(LDKSocketDescriptor *NONNULL_PTR arg) { - LDKSocketDescriptor* ret_ret = MALLOC(sizeof(LDKSocketDescriptor), "LDKSocketDescriptor"); - *ret_ret = SocketDescriptor_clone(arg); - return (uint64_t)ret_ret; +static inline uint64_t ChannelUpdate_clone_ptr(LDKChannelUpdate *NONNULL_PTR arg) { + LDKChannelUpdate ret_var = ChannelUpdate_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } -int64_t __attribute__((visibility("default"))) TS_SocketDescriptor_clone_ptr(uint32_t arg) { - void* arg_ptr = (void*)(((uint64_t)arg) & ~1); - if (!(arg & 1)) { CHECK_ACCESS(arg_ptr); } - LDKSocketDescriptor* arg_conv = (LDKSocketDescriptor*)arg_ptr; - int64_t ret_val = SocketDescriptor_clone_ptr(arg_conv); + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_ChannelUpdate_clone_ptr(uint32_t arg) { + LDKChannelUpdate arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ChannelUpdate_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_SocketDescriptor_clone(uint32_t orig) { - void* orig_ptr = (void*)(((uint64_t)orig) & ~1); - if (!(orig & 1)) { CHECK_ACCESS(orig_ptr); } - LDKSocketDescriptor* orig_conv = (LDKSocketDescriptor*)orig_ptr; - LDKSocketDescriptor* ret_ret = MALLOC(sizeof(LDKSocketDescriptor), "LDKSocketDescriptor"); - *ret_ret = SocketDescriptor_clone(orig_conv); - return (uint64_t)ret_ret; +uint32_t __attribute__((visibility("default"))) TS_ChannelUpdate_clone(uint32_t orig) { + LDKChannelUpdate orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKChannelUpdate ret_var = ChannelUpdate_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +void __attribute__((visibility("default"))) TS_QueryChannelRange_free(uint32_t this_obj) { + LDKQueryChannelRange this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + QueryChannelRange_free(this_obj_conv); +} + +int8_tArray __attribute__((visibility("default"))) TS_QueryChannelRange_get_chain_hash(uint32_t this_ptr) { + LDKQueryChannelRange this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *QueryChannelRange_get_chain_hash(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_SocketDescriptor_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKSocketDescriptor this_ptr_conv = *(LDKSocketDescriptor*)(this_ptr_ptr); - FREE((void*)this_ptr); - SocketDescriptor_free(this_ptr_conv); +void __attribute__((visibility("default"))) TS_QueryChannelRange_set_chain_hash(uint32_t this_ptr, int8_tArray val) { + LDKQueryChannelRange this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + QueryChannelRange_set_chain_hash(&this_ptr_conv, val_ref); } -void __attribute__((visibility("default"))) TS_PeerHandleError_free(uint32_t this_obj) { - LDKPeerHandleError this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - PeerHandleError_free(this_obj_conv); +int32_t __attribute__((visibility("default"))) TS_QueryChannelRange_get_first_blocknum(uint32_t this_ptr) { + LDKQueryChannelRange this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = QueryChannelRange_get_first_blocknum(&this_ptr_conv); + return ret_val; } -jboolean __attribute__((visibility("default"))) TS_PeerHandleError_get_no_connection_possible(uint32_t this_ptr) { - LDKPeerHandleError this_ptr_conv; +void __attribute__((visibility("default"))) TS_QueryChannelRange_set_first_blocknum(uint32_t this_ptr, int32_t val) { + LDKQueryChannelRange this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = PeerHandleError_get_no_connection_possible(&this_ptr_conv); + QueryChannelRange_set_first_blocknum(&this_ptr_conv, val); +} + +int32_t __attribute__((visibility("default"))) TS_QueryChannelRange_get_number_of_blocks(uint32_t this_ptr) { + LDKQueryChannelRange this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = QueryChannelRange_get_number_of_blocks(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_PeerHandleError_set_no_connection_possible(uint32_t this_ptr, jboolean val) { - LDKPeerHandleError this_ptr_conv; +void __attribute__((visibility("default"))) TS_QueryChannelRange_set_number_of_blocks(uint32_t this_ptr, int32_t val) { + LDKQueryChannelRange this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - PeerHandleError_set_no_connection_possible(&this_ptr_conv, val); + QueryChannelRange_set_number_of_blocks(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_PeerHandleError_new(jboolean no_connection_possible_arg) { - LDKPeerHandleError ret_var = PeerHandleError_new(no_connection_possible_arg); +uint32_t __attribute__((visibility("default"))) TS_QueryChannelRange_new(int8_tArray chain_hash_arg, int32_t first_blocknum_arg, int32_t number_of_blocks_arg) { + LDKThirtyTwoBytes chain_hash_arg_ref; + CHECK(chain_hash_arg->arr_len == 32); + memcpy(chain_hash_arg_ref.data, chain_hash_arg->elems, 32); + LDKQueryChannelRange ret_var = QueryChannelRange_new(chain_hash_arg_ref, first_blocknum_arg, number_of_blocks_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -28731,8 +26224,8 @@ uint32_t __attribute__((visibility("default"))) TS_PeerHandleError_new(jboolean return ret_ref; } -static inline uint64_t PeerHandleError_clone_ptr(LDKPeerHandleError *NONNULL_PTR arg) { - LDKPeerHandleError ret_var = PeerHandleError_clone(arg); +static inline uint64_t QueryChannelRange_clone_ptr(LDKQueryChannelRange *NONNULL_PTR arg) { + LDKQueryChannelRange ret_var = QueryChannelRange_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -28743,21 +26236,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_PeerHandleError_clone_ptr(uint32_t arg) { - LDKPeerHandleError arg_conv; +int64_t __attribute__((visibility("default"))) TS_QueryChannelRange_clone_ptr(uint32_t arg) { + LDKQueryChannelRange arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = PeerHandleError_clone_ptr(&arg_conv); + int64_t ret_val = QueryChannelRange_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_PeerHandleError_clone(uint32_t orig) { - LDKPeerHandleError orig_conv; +uint32_t __attribute__((visibility("default"))) TS_QueryChannelRange_clone(uint32_t orig) { + LDKQueryChannelRange orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKPeerHandleError ret_var = PeerHandleError_clone(&orig_conv); + LDKQueryChannelRange ret_var = QueryChannelRange_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -28769,390 +26262,334 @@ uint32_t __attribute__((visibility("default"))) TS_PeerHandleError_clone(uint32 return ret_ref; } -void __attribute__((visibility("default"))) TS_PeerManager_free(uint32_t this_obj) { - LDKPeerManager this_obj_conv; +void __attribute__((visibility("default"))) TS_ReplyChannelRange_free(uint32_t this_obj) { + LDKReplyChannelRange this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - PeerManager_free(this_obj_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_PeerManager_new(uint32_t message_handler, int8_tArray our_node_secret, int8_tArray ephemeral_random_data, uint32_t logger, uint32_t custom_message_handler) { - LDKMessageHandler message_handler_conv; - message_handler_conv.inner = (void*)(message_handler & (~1)); - message_handler_conv.is_owned = (message_handler & 1) || (message_handler == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(message_handler_conv); - // Warning: we need a move here but no clone is available for LDKMessageHandler - LDKSecretKey our_node_secret_ref; - CHECK(*((uint32_t*)our_node_secret) == 32); - memcpy(our_node_secret_ref.bytes, (uint8_t*)(our_node_secret + 4), 32); - unsigned char ephemeral_random_data_arr[32]; - CHECK(*((uint32_t*)ephemeral_random_data) == 32); - memcpy(ephemeral_random_data_arr, (uint8_t*)(ephemeral_random_data + 4), 32); - unsigned char (*ephemeral_random_data_ref)[32] = &ephemeral_random_data_arr; - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - void* custom_message_handler_ptr = (void*)(((uint64_t)custom_message_handler) & ~1); - CHECK_ACCESS(custom_message_handler_ptr); - LDKCustomMessageHandler custom_message_handler_conv = *(LDKCustomMessageHandler*)(custom_message_handler_ptr); - LDKPeerManager ret_var = PeerManager_new(message_handler_conv, our_node_secret_ref, ephemeral_random_data_ref, logger_conv, custom_message_handler_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + ReplyChannelRange_free(this_obj_conv); } -ptrArray __attribute__((visibility("default"))) TS_PeerManager_get_peer_node_ids(uint32_t this_arg) { - LDKPeerManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_PublicKeyZ ret_var = PeerManager_get_peer_node_ids(&this_arg_conv); - ptrArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native ptrArray Bytes"); - int8_tArray *ret_arr_ptr = (int8_tArray*)(ret_arr + 4); - for (size_t m = 0; m < ret_var.datalen; m++) { - int8_tArray ret_conv_12_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_conv_12_arr + 4), ret_var.data[m].compressed_form, 33); - ret_arr_ptr[m] = ret_conv_12_arr; - } - - FREE(ret_var.data); +int8_tArray __attribute__((visibility("default"))) TS_ReplyChannelRange_get_chain_hash(uint32_t this_ptr) { + LDKReplyChannelRange this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *ReplyChannelRange_get_chain_hash(&this_ptr_conv), 32); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_PeerManager_new_outbound_connection(uint32_t this_arg, int8_tArray their_node_id, uint32_t descriptor) { - LDKPeerManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - void* descriptor_ptr = (void*)(((uint64_t)descriptor) & ~1); - CHECK_ACCESS(descriptor_ptr); - LDKSocketDescriptor descriptor_conv = *(LDKSocketDescriptor*)(descriptor_ptr); - LDKCResult_CVec_u8ZPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_u8ZPeerHandleErrorZ), "LDKCResult_CVec_u8ZPeerHandleErrorZ"); - *ret_conv = PeerManager_new_outbound_connection(&this_arg_conv, their_node_id_ref, descriptor_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_PeerManager_new_inbound_connection(uint32_t this_arg, uint32_t descriptor) { - LDKPeerManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - void* descriptor_ptr = (void*)(((uint64_t)descriptor) & ~1); - CHECK_ACCESS(descriptor_ptr); - LDKSocketDescriptor descriptor_conv = *(LDKSocketDescriptor*)(descriptor_ptr); - LDKCResult_NonePeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePeerHandleErrorZ), "LDKCResult_NonePeerHandleErrorZ"); - *ret_conv = PeerManager_new_inbound_connection(&this_arg_conv, descriptor_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_PeerManager_write_buffer_space_avail(uint32_t this_arg, uint32_t descriptor) { - LDKPeerManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - void* descriptor_ptr = (void*)(((uint64_t)descriptor) & ~1); - if (!(descriptor & 1)) { CHECK_ACCESS(descriptor_ptr); } - LDKSocketDescriptor* descriptor_conv = (LDKSocketDescriptor*)descriptor_ptr; - LDKCResult_NonePeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePeerHandleErrorZ), "LDKCResult_NonePeerHandleErrorZ"); - *ret_conv = PeerManager_write_buffer_space_avail(&this_arg_conv, descriptor_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_PeerManager_read_event(uint32_t this_arg, uint32_t peer_descriptor, int8_tArray data) { - LDKPeerManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - void* peer_descriptor_ptr = (void*)(((uint64_t)peer_descriptor) & ~1); - if (!(peer_descriptor & 1)) { CHECK_ACCESS(peer_descriptor_ptr); } - LDKSocketDescriptor* peer_descriptor_conv = (LDKSocketDescriptor*)peer_descriptor_ptr; - LDKu8slice data_ref; - data_ref.datalen = *((uint32_t*)data); - data_ref.data = (int8_t*)(data + 4); - LDKCResult_boolPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolPeerHandleErrorZ), "LDKCResult_boolPeerHandleErrorZ"); - *ret_conv = PeerManager_read_event(&this_arg_conv, peer_descriptor_conv, data_ref); - return (uint64_t)ret_conv; -} - -void __attribute__((visibility("default"))) TS_PeerManager_process_events(uint32_t this_arg) { - LDKPeerManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - PeerManager_process_events(&this_arg_conv); -} - -void __attribute__((visibility("default"))) TS_PeerManager_socket_disconnected(uint32_t this_arg, uint32_t descriptor) { - LDKPeerManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - void* descriptor_ptr = (void*)(((uint64_t)descriptor) & ~1); - if (!(descriptor & 1)) { CHECK_ACCESS(descriptor_ptr); } - LDKSocketDescriptor* descriptor_conv = (LDKSocketDescriptor*)descriptor_ptr; - PeerManager_socket_disconnected(&this_arg_conv, descriptor_conv); +void __attribute__((visibility("default"))) TS_ReplyChannelRange_set_chain_hash(uint32_t this_ptr, int8_tArray val) { + LDKReplyChannelRange this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + ReplyChannelRange_set_chain_hash(&this_ptr_conv, val_ref); } -void __attribute__((visibility("default"))) TS_PeerManager_disconnect_by_node_id(uint32_t this_arg, int8_tArray node_id, jboolean no_connection_possible) { - LDKPeerManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - PeerManager_disconnect_by_node_id(&this_arg_conv, node_id_ref, no_connection_possible); +int32_t __attribute__((visibility("default"))) TS_ReplyChannelRange_get_first_blocknum(uint32_t this_ptr) { + LDKReplyChannelRange this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = ReplyChannelRange_get_first_blocknum(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_PeerManager_disconnect_all_peers(uint32_t this_arg) { - LDKPeerManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - PeerManager_disconnect_all_peers(&this_arg_conv); +void __attribute__((visibility("default"))) TS_ReplyChannelRange_set_first_blocknum(uint32_t this_ptr, int32_t val) { + LDKReplyChannelRange this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ReplyChannelRange_set_first_blocknum(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_PeerManager_timer_tick_occurred(uint32_t this_arg) { - LDKPeerManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - PeerManager_timer_tick_occurred(&this_arg_conv); +int32_t __attribute__((visibility("default"))) TS_ReplyChannelRange_get_number_of_blocks(uint32_t this_ptr) { + LDKReplyChannelRange this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = ReplyChannelRange_get_number_of_blocks(&this_ptr_conv); + return ret_val; } -int64_t __attribute__((visibility("default"))) TS_htlc_success_tx_weight(jboolean opt_anchors) { - int64_t ret_val = htlc_success_tx_weight(opt_anchors); - return ret_val; +void __attribute__((visibility("default"))) TS_ReplyChannelRange_set_number_of_blocks(uint32_t this_ptr, int32_t val) { + LDKReplyChannelRange this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ReplyChannelRange_set_number_of_blocks(&this_ptr_conv, val); } -int64_t __attribute__((visibility("default"))) TS_htlc_timeout_tx_weight(jboolean opt_anchors) { - int64_t ret_val = htlc_timeout_tx_weight(opt_anchors); +jboolean __attribute__((visibility("default"))) TS_ReplyChannelRange_get_sync_complete(uint32_t this_ptr) { + LDKReplyChannelRange this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + jboolean ret_val = ReplyChannelRange_get_sync_complete(&this_ptr_conv); return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_build_commitment_secret(int8_tArray commitment_seed, int64_t idx) { - unsigned char commitment_seed_arr[32]; - CHECK(*((uint32_t*)commitment_seed) == 32); - memcpy(commitment_seed_arr, (uint8_t*)(commitment_seed + 4), 32); - unsigned char (*commitment_seed_ref)[32] = &commitment_seed_arr; - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), build_commitment_secret(commitment_seed_ref, idx).data, 32); - return ret_arr; +void __attribute__((visibility("default"))) TS_ReplyChannelRange_set_sync_complete(uint32_t this_ptr, jboolean val) { + LDKReplyChannelRange this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ReplyChannelRange_set_sync_complete(&this_ptr_conv, val); } -int8_tArray __attribute__((visibility("default"))) TS_build_closing_transaction(int64_t to_holder_value_sat, int64_t to_counterparty_value_sat, int8_tArray to_holder_script, int8_tArray to_counterparty_script, uint32_t funding_outpoint) { - LDKCVec_u8Z to_holder_script_ref; - to_holder_script_ref.datalen = *((uint32_t*)to_holder_script); - to_holder_script_ref.data = MALLOC(to_holder_script_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(to_holder_script_ref.data, (uint8_t*)(to_holder_script + 4), to_holder_script_ref.datalen); - LDKCVec_u8Z to_counterparty_script_ref; - to_counterparty_script_ref.datalen = *((uint32_t*)to_counterparty_script); - to_counterparty_script_ref.data = MALLOC(to_counterparty_script_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(to_counterparty_script_ref.data, (uint8_t*)(to_counterparty_script + 4), to_counterparty_script_ref.datalen); - LDKOutPoint funding_outpoint_conv; - funding_outpoint_conv.inner = (void*)(funding_outpoint & (~1)); - funding_outpoint_conv.is_owned = (funding_outpoint & 1) || (funding_outpoint == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_outpoint_conv); - funding_outpoint_conv = OutPoint_clone(&funding_outpoint_conv); - LDKTransaction ret_var = build_closing_transaction(to_holder_value_sat, to_counterparty_value_sat, to_holder_script_ref, to_counterparty_script_ref, funding_outpoint_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - Transaction_free(ret_var); - return ret_arr; +void __attribute__((visibility("default"))) TS_ReplyChannelRange_set_short_channel_ids(uint32_t this_ptr, int64_tArray val) { + LDKReplyChannelRange this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_u64Z val_constr; + val_constr.datalen = val->arr_len; + if (val_constr.datalen > 0) + val_constr.data = MALLOC(val_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements"); + else + val_constr.data = NULL; + int64_t* val_vals = val->elems; + for (size_t i = 0; i < val_constr.datalen; i++) { + int64_t val_conv_8 = val_vals[i]; + val_constr.data[i] = val_conv_8; + } + ReplyChannelRange_set_short_channel_ids(&this_ptr_conv, val_constr); } -uint32_t __attribute__((visibility("default"))) TS_derive_private_key(int8_tArray per_commitment_point, int8_tArray base_secret) { - LDKPublicKey per_commitment_point_ref; - CHECK(*((uint32_t*)per_commitment_point) == 33); - memcpy(per_commitment_point_ref.compressed_form, (uint8_t*)(per_commitment_point + 4), 33); - unsigned char base_secret_arr[32]; - CHECK(*((uint32_t*)base_secret) == 32); - memcpy(base_secret_arr, (uint8_t*)(base_secret + 4), 32); - unsigned char (*base_secret_ref)[32] = &base_secret_arr; - LDKCResult_SecretKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SecretKeyErrorZ), "LDKCResult_SecretKeyErrorZ"); - *ret_conv = derive_private_key(per_commitment_point_ref, base_secret_ref); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_ReplyChannelRange_new(int8_tArray chain_hash_arg, int32_t first_blocknum_arg, int32_t number_of_blocks_arg, jboolean sync_complete_arg, int64_tArray short_channel_ids_arg) { + LDKThirtyTwoBytes chain_hash_arg_ref; + CHECK(chain_hash_arg->arr_len == 32); + memcpy(chain_hash_arg_ref.data, chain_hash_arg->elems, 32); + LDKCVec_u64Z short_channel_ids_arg_constr; + short_channel_ids_arg_constr.datalen = short_channel_ids_arg->arr_len; + if (short_channel_ids_arg_constr.datalen > 0) + short_channel_ids_arg_constr.data = MALLOC(short_channel_ids_arg_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements"); + else + short_channel_ids_arg_constr.data = NULL; + int64_t* short_channel_ids_arg_vals = short_channel_ids_arg->elems; + for (size_t i = 0; i < short_channel_ids_arg_constr.datalen; i++) { + int64_t short_channel_ids_arg_conv_8 = short_channel_ids_arg_vals[i]; + short_channel_ids_arg_constr.data[i] = short_channel_ids_arg_conv_8; + } + LDKReplyChannelRange ret_var = ReplyChannelRange_new(chain_hash_arg_ref, first_blocknum_arg, number_of_blocks_arg, sync_complete_arg, short_channel_ids_arg_constr); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_derive_public_key(int8_tArray per_commitment_point, int8_tArray base_point) { - LDKPublicKey per_commitment_point_ref; - CHECK(*((uint32_t*)per_commitment_point) == 33); - memcpy(per_commitment_point_ref.compressed_form, (uint8_t*)(per_commitment_point + 4), 33); - LDKPublicKey base_point_ref; - CHECK(*((uint32_t*)base_point) == 33); - memcpy(base_point_ref.compressed_form, (uint8_t*)(base_point + 4), 33); - LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); - *ret_conv = derive_public_key(per_commitment_point_ref, base_point_ref); - return (uint64_t)ret_conv; +static inline uint64_t ReplyChannelRange_clone_ptr(LDKReplyChannelRange *NONNULL_PTR arg) { + LDKReplyChannelRange ret_var = ReplyChannelRange_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -uint32_t __attribute__((visibility("default"))) TS_derive_private_revocation_key(int8_tArray per_commitment_secret, int8_tArray countersignatory_revocation_base_secret) { - unsigned char per_commitment_secret_arr[32]; - CHECK(*((uint32_t*)per_commitment_secret) == 32); - memcpy(per_commitment_secret_arr, (uint8_t*)(per_commitment_secret + 4), 32); - unsigned char (*per_commitment_secret_ref)[32] = &per_commitment_secret_arr; - unsigned char countersignatory_revocation_base_secret_arr[32]; - CHECK(*((uint32_t*)countersignatory_revocation_base_secret) == 32); - memcpy(countersignatory_revocation_base_secret_arr, (uint8_t*)(countersignatory_revocation_base_secret + 4), 32); - unsigned char (*countersignatory_revocation_base_secret_ref)[32] = &countersignatory_revocation_base_secret_arr; - LDKCResult_SecretKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SecretKeyErrorZ), "LDKCResult_SecretKeyErrorZ"); - *ret_conv = derive_private_revocation_key(per_commitment_secret_ref, countersignatory_revocation_base_secret_ref); - return (uint64_t)ret_conv; + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_ReplyChannelRange_clone_ptr(uint32_t arg) { + LDKReplyChannelRange arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ReplyChannelRange_clone_ptr(&arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_derive_public_revocation_key(int8_tArray per_commitment_point, int8_tArray countersignatory_revocation_base_point) { - LDKPublicKey per_commitment_point_ref; - CHECK(*((uint32_t*)per_commitment_point) == 33); - memcpy(per_commitment_point_ref.compressed_form, (uint8_t*)(per_commitment_point + 4), 33); - LDKPublicKey countersignatory_revocation_base_point_ref; - CHECK(*((uint32_t*)countersignatory_revocation_base_point) == 33); - memcpy(countersignatory_revocation_base_point_ref.compressed_form, (uint8_t*)(countersignatory_revocation_base_point + 4), 33); - LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); - *ret_conv = derive_public_revocation_key(per_commitment_point_ref, countersignatory_revocation_base_point_ref); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_ReplyChannelRange_clone(uint32_t orig) { + LDKReplyChannelRange orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKReplyChannelRange ret_var = ReplyChannelRange_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_TxCreationKeys_free(uint32_t this_obj) { - LDKTxCreationKeys this_obj_conv; +void __attribute__((visibility("default"))) TS_QueryShortChannelIds_free(uint32_t this_obj) { + LDKQueryShortChannelIds this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - TxCreationKeys_free(this_obj_conv); + QueryShortChannelIds_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_TxCreationKeys_get_per_commitment_point(uint32_t this_ptr) { - LDKTxCreationKeys this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_QueryShortChannelIds_get_chain_hash(uint32_t this_ptr) { + LDKQueryShortChannelIds this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), TxCreationKeys_get_per_commitment_point(&this_ptr_conv).compressed_form, 33); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *QueryShortChannelIds_get_chain_hash(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_TxCreationKeys_set_per_commitment_point(uint32_t this_ptr, int8_tArray val) { - LDKTxCreationKeys this_ptr_conv; +void __attribute__((visibility("default"))) TS_QueryShortChannelIds_set_chain_hash(uint32_t this_ptr, int8_tArray val) { + LDKQueryShortChannelIds this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - TxCreationKeys_set_per_commitment_point(&this_ptr_conv, val_ref); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + QueryShortChannelIds_set_chain_hash(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_TxCreationKeys_get_revocation_key(uint32_t this_ptr) { - LDKTxCreationKeys this_ptr_conv; +void __attribute__((visibility("default"))) TS_QueryShortChannelIds_set_short_channel_ids(uint32_t this_ptr, int64_tArray val) { + LDKQueryShortChannelIds this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), TxCreationKeys_get_revocation_key(&this_ptr_conv).compressed_form, 33); - return ret_arr; + LDKCVec_u64Z val_constr; + val_constr.datalen = val->arr_len; + if (val_constr.datalen > 0) + val_constr.data = MALLOC(val_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements"); + else + val_constr.data = NULL; + int64_t* val_vals = val->elems; + for (size_t i = 0; i < val_constr.datalen; i++) { + int64_t val_conv_8 = val_vals[i]; + val_constr.data[i] = val_conv_8; + } + QueryShortChannelIds_set_short_channel_ids(&this_ptr_conv, val_constr); } -void __attribute__((visibility("default"))) TS_TxCreationKeys_set_revocation_key(uint32_t this_ptr, int8_tArray val) { - LDKTxCreationKeys this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - TxCreationKeys_set_revocation_key(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_QueryShortChannelIds_new(int8_tArray chain_hash_arg, int64_tArray short_channel_ids_arg) { + LDKThirtyTwoBytes chain_hash_arg_ref; + CHECK(chain_hash_arg->arr_len == 32); + memcpy(chain_hash_arg_ref.data, chain_hash_arg->elems, 32); + LDKCVec_u64Z short_channel_ids_arg_constr; + short_channel_ids_arg_constr.datalen = short_channel_ids_arg->arr_len; + if (short_channel_ids_arg_constr.datalen > 0) + short_channel_ids_arg_constr.data = MALLOC(short_channel_ids_arg_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements"); + else + short_channel_ids_arg_constr.data = NULL; + int64_t* short_channel_ids_arg_vals = short_channel_ids_arg->elems; + for (size_t i = 0; i < short_channel_ids_arg_constr.datalen; i++) { + int64_t short_channel_ids_arg_conv_8 = short_channel_ids_arg_vals[i]; + short_channel_ids_arg_constr.data[i] = short_channel_ids_arg_conv_8; + } + LDKQueryShortChannelIds ret_var = QueryShortChannelIds_new(chain_hash_arg_ref, short_channel_ids_arg_constr); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_TxCreationKeys_get_broadcaster_htlc_key(uint32_t this_ptr) { - LDKTxCreationKeys this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), TxCreationKeys_get_broadcaster_htlc_key(&this_ptr_conv).compressed_form, 33); - return ret_arr; +static inline uint64_t QueryShortChannelIds_clone_ptr(LDKQueryShortChannelIds *NONNULL_PTR arg) { + LDKQueryShortChannelIds ret_var = QueryShortChannelIds_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_QueryShortChannelIds_clone_ptr(uint32_t arg) { + LDKQueryShortChannelIds arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = QueryShortChannelIds_clone_ptr(&arg_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_TxCreationKeys_set_broadcaster_htlc_key(uint32_t this_ptr, int8_tArray val) { - LDKTxCreationKeys this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - TxCreationKeys_set_broadcaster_htlc_key(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_QueryShortChannelIds_clone(uint32_t orig) { + LDKQueryShortChannelIds orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKQueryShortChannelIds ret_var = QueryShortChannelIds_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_TxCreationKeys_get_countersignatory_htlc_key(uint32_t this_ptr) { - LDKTxCreationKeys this_ptr_conv; +void __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_free(uint32_t this_obj) { + LDKReplyShortChannelIdsEnd this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + ReplyShortChannelIdsEnd_free(this_obj_conv); +} + +int8_tArray __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_get_chain_hash(uint32_t this_ptr) { + LDKReplyShortChannelIdsEnd this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), TxCreationKeys_get_countersignatory_htlc_key(&this_ptr_conv).compressed_form, 33); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *ReplyShortChannelIdsEnd_get_chain_hash(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_TxCreationKeys_set_countersignatory_htlc_key(uint32_t this_ptr, int8_tArray val) { - LDKTxCreationKeys this_ptr_conv; +void __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_set_chain_hash(uint32_t this_ptr, int8_tArray val) { + LDKReplyShortChannelIdsEnd this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - TxCreationKeys_set_countersignatory_htlc_key(&this_ptr_conv, val_ref); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + ReplyShortChannelIdsEnd_set_chain_hash(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_TxCreationKeys_get_broadcaster_delayed_payment_key(uint32_t this_ptr) { - LDKTxCreationKeys this_ptr_conv; +jboolean __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_get_full_information(uint32_t this_ptr) { + LDKReplyShortChannelIdsEnd this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), TxCreationKeys_get_broadcaster_delayed_payment_key(&this_ptr_conv).compressed_form, 33); - return ret_arr; + jboolean ret_val = ReplyShortChannelIdsEnd_get_full_information(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_TxCreationKeys_set_broadcaster_delayed_payment_key(uint32_t this_ptr, int8_tArray val) { - LDKTxCreationKeys this_ptr_conv; +void __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_set_full_information(uint32_t this_ptr, jboolean val) { + LDKReplyShortChannelIdsEnd this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - TxCreationKeys_set_broadcaster_delayed_payment_key(&this_ptr_conv, val_ref); + ReplyShortChannelIdsEnd_set_full_information(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_TxCreationKeys_new(int8_tArray per_commitment_point_arg, int8_tArray revocation_key_arg, int8_tArray broadcaster_htlc_key_arg, int8_tArray countersignatory_htlc_key_arg, int8_tArray broadcaster_delayed_payment_key_arg) { - LDKPublicKey per_commitment_point_arg_ref; - CHECK(*((uint32_t*)per_commitment_point_arg) == 33); - memcpy(per_commitment_point_arg_ref.compressed_form, (uint8_t*)(per_commitment_point_arg + 4), 33); - LDKPublicKey revocation_key_arg_ref; - CHECK(*((uint32_t*)revocation_key_arg) == 33); - memcpy(revocation_key_arg_ref.compressed_form, (uint8_t*)(revocation_key_arg + 4), 33); - LDKPublicKey broadcaster_htlc_key_arg_ref; - CHECK(*((uint32_t*)broadcaster_htlc_key_arg) == 33); - memcpy(broadcaster_htlc_key_arg_ref.compressed_form, (uint8_t*)(broadcaster_htlc_key_arg + 4), 33); - LDKPublicKey countersignatory_htlc_key_arg_ref; - CHECK(*((uint32_t*)countersignatory_htlc_key_arg) == 33); - memcpy(countersignatory_htlc_key_arg_ref.compressed_form, (uint8_t*)(countersignatory_htlc_key_arg + 4), 33); - LDKPublicKey broadcaster_delayed_payment_key_arg_ref; - CHECK(*((uint32_t*)broadcaster_delayed_payment_key_arg) == 33); - memcpy(broadcaster_delayed_payment_key_arg_ref.compressed_form, (uint8_t*)(broadcaster_delayed_payment_key_arg + 4), 33); - LDKTxCreationKeys ret_var = TxCreationKeys_new(per_commitment_point_arg_ref, revocation_key_arg_ref, broadcaster_htlc_key_arg_ref, countersignatory_htlc_key_arg_ref, broadcaster_delayed_payment_key_arg_ref); +uint32_t __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_new(int8_tArray chain_hash_arg, jboolean full_information_arg) { + LDKThirtyTwoBytes chain_hash_arg_ref; + CHECK(chain_hash_arg->arr_len == 32); + memcpy(chain_hash_arg_ref.data, chain_hash_arg->elems, 32); + LDKReplyShortChannelIdsEnd ret_var = ReplyShortChannelIdsEnd_new(chain_hash_arg_ref, full_information_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -29164,8 +26601,8 @@ uint32_t __attribute__((visibility("default"))) TS_TxCreationKeys_new(int8_tArr return ret_ref; } -static inline uint64_t TxCreationKeys_clone_ptr(LDKTxCreationKeys *NONNULL_PTR arg) { - LDKTxCreationKeys ret_var = TxCreationKeys_clone(arg); +static inline uint64_t ReplyShortChannelIdsEnd_clone_ptr(LDKReplyShortChannelIdsEnd *NONNULL_PTR arg) { + LDKReplyShortChannelIdsEnd ret_var = ReplyShortChannelIdsEnd_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -29176,21 +26613,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_TxCreationKeys_clone_ptr(uint32_t arg) { - LDKTxCreationKeys arg_conv; +int64_t __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_clone_ptr(uint32_t arg) { + LDKReplyShortChannelIdsEnd arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = TxCreationKeys_clone_ptr(&arg_conv); + int64_t ret_val = ReplyShortChannelIdsEnd_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_TxCreationKeys_clone(uint32_t orig) { - LDKTxCreationKeys orig_conv; +uint32_t __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_clone(uint32_t orig) { + LDKReplyShortChannelIdsEnd orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKTxCreationKeys ret_var = TxCreationKeys_clone(&orig_conv); + LDKReplyShortChannelIdsEnd ret_var = ReplyShortChannelIdsEnd_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -29202,157 +26639,74 @@ uint32_t __attribute__((visibility("default"))) TS_TxCreationKeys_clone(uint32_ return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_TxCreationKeys_write(uint32_t obj) { - LDKTxCreationKeys obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = TxCreationKeys_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_TxCreationKeys_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_TxCreationKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysDecodeErrorZ), "LDKCResult_TxCreationKeysDecodeErrorZ"); - *ret_conv = TxCreationKeys_read(ser_ref); - return (uint64_t)ret_conv; -} - -void __attribute__((visibility("default"))) TS_ChannelPublicKeys_free(uint32_t this_obj) { - LDKChannelPublicKeys this_obj_conv; +void __attribute__((visibility("default"))) TS_GossipTimestampFilter_free(uint32_t this_obj) { + LDKGossipTimestampFilter this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelPublicKeys_free(this_obj_conv); -} - -int8_tArray __attribute__((visibility("default"))) TS_ChannelPublicKeys_get_funding_pubkey(uint32_t this_ptr) { - LDKChannelPublicKeys this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ChannelPublicKeys_get_funding_pubkey(&this_ptr_conv).compressed_form, 33); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_ChannelPublicKeys_set_funding_pubkey(uint32_t this_ptr, int8_tArray val) { - LDKChannelPublicKeys this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - ChannelPublicKeys_set_funding_pubkey(&this_ptr_conv, val_ref); -} - -int8_tArray __attribute__((visibility("default"))) TS_ChannelPublicKeys_get_revocation_basepoint(uint32_t this_ptr) { - LDKChannelPublicKeys this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ChannelPublicKeys_get_revocation_basepoint(&this_ptr_conv).compressed_form, 33); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_ChannelPublicKeys_set_revocation_basepoint(uint32_t this_ptr, int8_tArray val) { - LDKChannelPublicKeys this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - ChannelPublicKeys_set_revocation_basepoint(&this_ptr_conv, val_ref); + GossipTimestampFilter_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_ChannelPublicKeys_get_payment_point(uint32_t this_ptr) { - LDKChannelPublicKeys this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_GossipTimestampFilter_get_chain_hash(uint32_t this_ptr) { + LDKGossipTimestampFilter this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ChannelPublicKeys_get_payment_point(&this_ptr_conv).compressed_form, 33); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *GossipTimestampFilter_get_chain_hash(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelPublicKeys_set_payment_point(uint32_t this_ptr, int8_tArray val) { - LDKChannelPublicKeys this_ptr_conv; +void __attribute__((visibility("default"))) TS_GossipTimestampFilter_set_chain_hash(uint32_t this_ptr, int8_tArray val) { + LDKGossipTimestampFilter this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - ChannelPublicKeys_set_payment_point(&this_ptr_conv, val_ref); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + GossipTimestampFilter_set_chain_hash(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_ChannelPublicKeys_get_delayed_payment_basepoint(uint32_t this_ptr) { - LDKChannelPublicKeys this_ptr_conv; +int32_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_get_first_timestamp(uint32_t this_ptr) { + LDKGossipTimestampFilter this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ChannelPublicKeys_get_delayed_payment_basepoint(&this_ptr_conv).compressed_form, 33); - return ret_arr; + int32_t ret_val = GossipTimestampFilter_get_first_timestamp(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelPublicKeys_set_delayed_payment_basepoint(uint32_t this_ptr, int8_tArray val) { - LDKChannelPublicKeys this_ptr_conv; +void __attribute__((visibility("default"))) TS_GossipTimestampFilter_set_first_timestamp(uint32_t this_ptr, int32_t val) { + LDKGossipTimestampFilter this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - ChannelPublicKeys_set_delayed_payment_basepoint(&this_ptr_conv, val_ref); + GossipTimestampFilter_set_first_timestamp(&this_ptr_conv, val); } -int8_tArray __attribute__((visibility("default"))) TS_ChannelPublicKeys_get_htlc_basepoint(uint32_t this_ptr) { - LDKChannelPublicKeys this_ptr_conv; +int32_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_get_timestamp_range(uint32_t this_ptr) { + LDKGossipTimestampFilter this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ChannelPublicKeys_get_htlc_basepoint(&this_ptr_conv).compressed_form, 33); - return ret_arr; + int32_t ret_val = GossipTimestampFilter_get_timestamp_range(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelPublicKeys_set_htlc_basepoint(uint32_t this_ptr, int8_tArray val) { - LDKChannelPublicKeys this_ptr_conv; +void __attribute__((visibility("default"))) TS_GossipTimestampFilter_set_timestamp_range(uint32_t this_ptr, int32_t val) { + LDKGossipTimestampFilter this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - ChannelPublicKeys_set_htlc_basepoint(&this_ptr_conv, val_ref); + GossipTimestampFilter_set_timestamp_range(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_ChannelPublicKeys_new(int8_tArray funding_pubkey_arg, int8_tArray revocation_basepoint_arg, int8_tArray payment_point_arg, int8_tArray delayed_payment_basepoint_arg, int8_tArray htlc_basepoint_arg) { - LDKPublicKey funding_pubkey_arg_ref; - CHECK(*((uint32_t*)funding_pubkey_arg) == 33); - memcpy(funding_pubkey_arg_ref.compressed_form, (uint8_t*)(funding_pubkey_arg + 4), 33); - LDKPublicKey revocation_basepoint_arg_ref; - CHECK(*((uint32_t*)revocation_basepoint_arg) == 33); - memcpy(revocation_basepoint_arg_ref.compressed_form, (uint8_t*)(revocation_basepoint_arg + 4), 33); - LDKPublicKey payment_point_arg_ref; - CHECK(*((uint32_t*)payment_point_arg) == 33); - memcpy(payment_point_arg_ref.compressed_form, (uint8_t*)(payment_point_arg + 4), 33); - LDKPublicKey delayed_payment_basepoint_arg_ref; - CHECK(*((uint32_t*)delayed_payment_basepoint_arg) == 33); - memcpy(delayed_payment_basepoint_arg_ref.compressed_form, (uint8_t*)(delayed_payment_basepoint_arg + 4), 33); - LDKPublicKey htlc_basepoint_arg_ref; - CHECK(*((uint32_t*)htlc_basepoint_arg) == 33); - memcpy(htlc_basepoint_arg_ref.compressed_form, (uint8_t*)(htlc_basepoint_arg + 4), 33); - LDKChannelPublicKeys ret_var = ChannelPublicKeys_new(funding_pubkey_arg_ref, revocation_basepoint_arg_ref, payment_point_arg_ref, delayed_payment_basepoint_arg_ref, htlc_basepoint_arg_ref); +uint32_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_new(int8_tArray chain_hash_arg, int32_t first_timestamp_arg, int32_t timestamp_range_arg) { + LDKThirtyTwoBytes chain_hash_arg_ref; + CHECK(chain_hash_arg->arr_len == 32); + memcpy(chain_hash_arg_ref.data, chain_hash_arg->elems, 32); + LDKGossipTimestampFilter ret_var = GossipTimestampFilter_new(chain_hash_arg_ref, first_timestamp_arg, timestamp_range_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -29364,8 +26718,8 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelPublicKeys_new(int8_t return ret_ref; } -static inline uint64_t ChannelPublicKeys_clone_ptr(LDKChannelPublicKeys *NONNULL_PTR arg) { - LDKChannelPublicKeys ret_var = ChannelPublicKeys_clone(arg); +static inline uint64_t GossipTimestampFilter_clone_ptr(LDKGossipTimestampFilter *NONNULL_PTR arg) { + LDKGossipTimestampFilter ret_var = GossipTimestampFilter_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -29376,21 +26730,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ChannelPublicKeys_clone_ptr(uint32_t arg) { - LDKChannelPublicKeys arg_conv; +int64_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_clone_ptr(uint32_t arg) { + LDKGossipTimestampFilter arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelPublicKeys_clone_ptr(&arg_conv); + int64_t ret_val = GossipTimestampFilter_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelPublicKeys_clone(uint32_t orig) { - LDKChannelPublicKeys orig_conv; +uint32_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_clone(uint32_t orig) { + LDKGossipTimestampFilter orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelPublicKeys ret_var = ChannelPublicKeys_clone(&orig_conv); + LDKGossipTimestampFilter ret_var = GossipTimestampFilter_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -29402,191 +26756,139 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelPublicKeys_clone(uint return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_ChannelPublicKeys_write(uint32_t obj) { - LDKChannelPublicKeys obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ChannelPublicKeys_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_ChannelPublicKeys_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ChannelPublicKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelPublicKeysDecodeErrorZ), "LDKCResult_ChannelPublicKeysDecodeErrorZ"); - *ret_conv = ChannelPublicKeys_read(ser_ref); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_TxCreationKeys_derive_new(int8_tArray per_commitment_point, int8_tArray broadcaster_delayed_payment_base, int8_tArray broadcaster_htlc_base, int8_tArray countersignatory_revocation_base, int8_tArray countersignatory_htlc_base) { - LDKPublicKey per_commitment_point_ref; - CHECK(*((uint32_t*)per_commitment_point) == 33); - memcpy(per_commitment_point_ref.compressed_form, (uint8_t*)(per_commitment_point + 4), 33); - LDKPublicKey broadcaster_delayed_payment_base_ref; - CHECK(*((uint32_t*)broadcaster_delayed_payment_base) == 33); - memcpy(broadcaster_delayed_payment_base_ref.compressed_form, (uint8_t*)(broadcaster_delayed_payment_base + 4), 33); - LDKPublicKey broadcaster_htlc_base_ref; - CHECK(*((uint32_t*)broadcaster_htlc_base) == 33); - memcpy(broadcaster_htlc_base_ref.compressed_form, (uint8_t*)(broadcaster_htlc_base + 4), 33); - LDKPublicKey countersignatory_revocation_base_ref; - CHECK(*((uint32_t*)countersignatory_revocation_base) == 33); - memcpy(countersignatory_revocation_base_ref.compressed_form, (uint8_t*)(countersignatory_revocation_base + 4), 33); - LDKPublicKey countersignatory_htlc_base_ref; - CHECK(*((uint32_t*)countersignatory_htlc_base) == 33); - memcpy(countersignatory_htlc_base_ref.compressed_form, (uint8_t*)(countersignatory_htlc_base + 4), 33); - LDKCResult_TxCreationKeysErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysErrorZ), "LDKCResult_TxCreationKeysErrorZ"); - *ret_conv = TxCreationKeys_derive_new(per_commitment_point_ref, broadcaster_delayed_payment_base_ref, broadcaster_htlc_base_ref, countersignatory_revocation_base_ref, countersignatory_htlc_base_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_ErrorAction_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKErrorAction this_ptr_conv = *(LDKErrorAction*)(this_ptr_ptr); + FREE((void*)this_ptr); + ErrorAction_free(this_ptr_conv); } -uint32_t __attribute__((visibility("default"))) TS_TxCreationKeys_from_channel_static_keys(int8_tArray per_commitment_point, uint32_t broadcaster_keys, uint32_t countersignatory_keys) { - LDKPublicKey per_commitment_point_ref; - CHECK(*((uint32_t*)per_commitment_point) == 33); - memcpy(per_commitment_point_ref.compressed_form, (uint8_t*)(per_commitment_point + 4), 33); - LDKChannelPublicKeys broadcaster_keys_conv; - broadcaster_keys_conv.inner = (void*)(broadcaster_keys & (~1)); - broadcaster_keys_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(broadcaster_keys_conv); - LDKChannelPublicKeys countersignatory_keys_conv; - countersignatory_keys_conv.inner = (void*)(countersignatory_keys & (~1)); - countersignatory_keys_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(countersignatory_keys_conv); - LDKCResult_TxCreationKeysErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysErrorZ), "LDKCResult_TxCreationKeysErrorZ"); - *ret_conv = TxCreationKeys_from_channel_static_keys(per_commitment_point_ref, &broadcaster_keys_conv, &countersignatory_keys_conv); - return (uint64_t)ret_conv; +static inline uint64_t ErrorAction_clone_ptr(LDKErrorAction *NONNULL_PTR arg) { + LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); + *ret_copy = ErrorAction_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } - -int8_tArray __attribute__((visibility("default"))) TS_get_revokeable_redeemscript(int8_tArray revocation_key, int16_t contest_delay, int8_tArray broadcaster_delayed_payment_key) { - LDKPublicKey revocation_key_ref; - CHECK(*((uint32_t*)revocation_key) == 33); - memcpy(revocation_key_ref.compressed_form, (uint8_t*)(revocation_key + 4), 33); - LDKPublicKey broadcaster_delayed_payment_key_ref; - CHECK(*((uint32_t*)broadcaster_delayed_payment_key) == 33); - memcpy(broadcaster_delayed_payment_key_ref.compressed_form, (uint8_t*)(broadcaster_delayed_payment_key + 4), 33); - LDKCVec_u8Z ret_var = get_revokeable_redeemscript(revocation_key_ref, contest_delay, broadcaster_delayed_payment_key_ref); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +int64_t __attribute__((visibility("default"))) TS_ErrorAction_clone_ptr(uint32_t arg) { + LDKErrorAction* arg_conv = (LDKErrorAction*)arg; + int64_t ret_val = ErrorAction_clone_ptr(arg_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_free(uint32_t this_obj) { - LDKHTLCOutputInCommitment this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - HTLCOutputInCommitment_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_ErrorAction_clone(uint32_t orig) { + LDKErrorAction* orig_conv = (LDKErrorAction*)orig; + LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); + *ret_copy = ErrorAction_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_get_offered(uint32_t this_ptr) { - LDKHTLCOutputInCommitment this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = HTLCOutputInCommitment_get_offered(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_ErrorAction_disconnect_peer(uint32_t msg) { + LDKErrorMessage msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = ErrorMessage_clone(&msg_conv); + LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); + *ret_copy = ErrorAction_disconnect_peer(msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_set_offered(uint32_t this_ptr, jboolean val) { - LDKHTLCOutputInCommitment this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - HTLCOutputInCommitment_set_offered(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_ErrorAction_ignore_error() { + LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); + *ret_copy = ErrorAction_ignore_error(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_get_amount_msat(uint32_t this_ptr) { - LDKHTLCOutputInCommitment this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = HTLCOutputInCommitment_get_amount_msat(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_ErrorAction_ignore_and_log(uint32_t a) { + LDKLevel a_conv = LDKLevel_from_js(a); + LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); + *ret_copy = ErrorAction_ignore_and_log(a_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_set_amount_msat(uint32_t this_ptr, int64_t val) { - LDKHTLCOutputInCommitment this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - HTLCOutputInCommitment_set_amount_msat(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_ErrorAction_ignore_duplicate_gossip() { + LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); + *ret_copy = ErrorAction_ignore_duplicate_gossip(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -int32_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_get_cltv_expiry(uint32_t this_ptr) { - LDKHTLCOutputInCommitment this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = HTLCOutputInCommitment_get_cltv_expiry(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_ErrorAction_send_error_message(uint32_t msg) { + LDKErrorMessage msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = ErrorMessage_clone(&msg_conv); + LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); + *ret_copy = ErrorAction_send_error_message(msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_set_cltv_expiry(uint32_t this_ptr, int32_t val) { - LDKHTLCOutputInCommitment this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - HTLCOutputInCommitment_set_cltv_expiry(&this_ptr_conv, val); +void __attribute__((visibility("default"))) TS_LightningError_free(uint32_t this_obj) { + LDKLightningError this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + LightningError_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_get_payment_hash(uint32_t this_ptr) { - LDKHTLCOutputInCommitment this_ptr_conv; +jstring __attribute__((visibility("default"))) TS_LightningError_get_err(uint32_t this_ptr) { + LDKLightningError this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *HTLCOutputInCommitment_get_payment_hash(&this_ptr_conv), 32); - return ret_arr; + LDKStr ret_str = LightningError_get_err(&this_ptr_conv); + jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); + Str_free(ret_str); + return ret_conv; } -void __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_set_payment_hash(uint32_t this_ptr, int8_tArray val) { - LDKHTLCOutputInCommitment this_ptr_conv; +void __attribute__((visibility("default"))) TS_LightningError_set_err(uint32_t this_ptr, jstring val) { + LDKLightningError this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - HTLCOutputInCommitment_set_payment_hash(&this_ptr_conv, val_ref); + LDKStr val_conv = str_ref_to_owned_c(val); + LightningError_set_err(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_get_transaction_output_index(uint32_t this_ptr) { - LDKHTLCOutputInCommitment this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_LightningError_get_action(uint32_t this_ptr) { + LDKLightningError this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCOption_u32Z *ret_copy = MALLOC(sizeof(LDKCOption_u32Z), "LDKCOption_u32Z"); - *ret_copy = HTLCOutputInCommitment_get_transaction_output_index(&this_ptr_conv); + LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); + *ret_copy = LightningError_get_action(&this_ptr_conv); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -void __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_set_transaction_output_index(uint32_t this_ptr, uint32_t val) { - LDKHTLCOutputInCommitment this_ptr_conv; +void __attribute__((visibility("default"))) TS_LightningError_set_action(uint32_t this_ptr, uint32_t val) { + LDKLightningError this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); void* val_ptr = (void*)(((uint64_t)val) & ~1); CHECK_ACCESS(val_ptr); - LDKCOption_u32Z val_conv = *(LDKCOption_u32Z*)(val_ptr); - val_conv = COption_u32Z_clone((LDKCOption_u32Z*)(((uint64_t)val) & ~1)); - HTLCOutputInCommitment_set_transaction_output_index(&this_ptr_conv, val_conv); + LDKErrorAction val_conv = *(LDKErrorAction*)(val_ptr); + val_conv = ErrorAction_clone((LDKErrorAction*)(((uint64_t)val) & ~1)); + LightningError_set_action(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_new(jboolean offered_arg, int64_t amount_msat_arg, int32_t cltv_expiry_arg, int8_tArray payment_hash_arg, uint32_t transaction_output_index_arg) { - LDKThirtyTwoBytes payment_hash_arg_ref; - CHECK(*((uint32_t*)payment_hash_arg) == 32); - memcpy(payment_hash_arg_ref.data, (uint8_t*)(payment_hash_arg + 4), 32); - void* transaction_output_index_arg_ptr = (void*)(((uint64_t)transaction_output_index_arg) & ~1); - CHECK_ACCESS(transaction_output_index_arg_ptr); - LDKCOption_u32Z transaction_output_index_arg_conv = *(LDKCOption_u32Z*)(transaction_output_index_arg_ptr); - transaction_output_index_arg_conv = COption_u32Z_clone((LDKCOption_u32Z*)(((uint64_t)transaction_output_index_arg) & ~1)); - LDKHTLCOutputInCommitment ret_var = HTLCOutputInCommitment_new(offered_arg, amount_msat_arg, cltv_expiry_arg, payment_hash_arg_ref, transaction_output_index_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_LightningError_new(jstring err_arg, uint32_t action_arg) { + LDKStr err_arg_conv = str_ref_to_owned_c(err_arg); + void* action_arg_ptr = (void*)(((uint64_t)action_arg) & ~1); + CHECK_ACCESS(action_arg_ptr); + LDKErrorAction action_arg_conv = *(LDKErrorAction*)(action_arg_ptr); + action_arg_conv = ErrorAction_clone((LDKErrorAction*)(((uint64_t)action_arg) & ~1)); + LDKLightningError ret_var = LightningError_new(err_arg_conv, action_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -29598,8 +26900,8 @@ uint32_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_new(j return ret_ref; } -static inline uint64_t HTLCOutputInCommitment_clone_ptr(LDKHTLCOutputInCommitment *NONNULL_PTR arg) { - LDKHTLCOutputInCommitment ret_var = HTLCOutputInCommitment_clone(arg); +static inline uint64_t LightningError_clone_ptr(LDKLightningError *NONNULL_PTR arg) { + LDKLightningError ret_var = LightningError_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -29610,21 +26912,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_clone_ptr(uint32_t arg) { - LDKHTLCOutputInCommitment arg_conv; +int64_t __attribute__((visibility("default"))) TS_LightningError_clone_ptr(uint32_t arg) { + LDKLightningError arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = HTLCOutputInCommitment_clone_ptr(&arg_conv); + int64_t ret_val = LightningError_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_clone(uint32_t orig) { - LDKHTLCOutputInCommitment orig_conv; +uint32_t __attribute__((visibility("default"))) TS_LightningError_clone(uint32_t orig) { + LDKLightningError orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKHTLCOutputInCommitment ret_var = HTLCOutputInCommitment_clone(&orig_conv); + LDKLightningError ret_var = LightningError_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -29636,168 +26938,220 @@ uint32_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_clone return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_write(uint32_t obj) { - LDKHTLCOutputInCommitment obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = HTLCOutputInCommitment_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ), "LDKCResult_HTLCOutputInCommitmentDecodeErrorZ"); - *ret_conv = HTLCOutputInCommitment_read(ser_ref); - return (uint64_t)ret_conv; -} - -int8_tArray __attribute__((visibility("default"))) TS_get_htlc_redeemscript(uint32_t htlc, jboolean opt_anchors, uint32_t keys) { - LDKHTLCOutputInCommitment htlc_conv; - htlc_conv.inner = (void*)(htlc & (~1)); - htlc_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_conv); - LDKTxCreationKeys keys_conv; - keys_conv.inner = (void*)(keys & (~1)); - keys_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(keys_conv); - LDKCVec_u8Z ret_var = get_htlc_redeemscript(&htlc_conv, opt_anchors, &keys_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -int8_tArray __attribute__((visibility("default"))) TS_make_funding_redeemscript(int8_tArray broadcaster, int8_tArray countersignatory) { - LDKPublicKey broadcaster_ref; - CHECK(*((uint32_t*)broadcaster) == 33); - memcpy(broadcaster_ref.compressed_form, (uint8_t*)(broadcaster + 4), 33); - LDKPublicKey countersignatory_ref; - CHECK(*((uint32_t*)countersignatory) == 33); - memcpy(countersignatory_ref.compressed_form, (uint8_t*)(countersignatory + 4), 33); - LDKCVec_u8Z ret_var = make_funding_redeemscript(broadcaster_ref, countersignatory_ref); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -int8_tArray __attribute__((visibility("default"))) TS_build_htlc_transaction(int8_tArray commitment_txid, int32_t feerate_per_kw, int16_t contest_delay, uint32_t htlc, jboolean opt_anchors, int8_tArray broadcaster_delayed_payment_key, int8_tArray revocation_key) { - unsigned char commitment_txid_arr[32]; - CHECK(*((uint32_t*)commitment_txid) == 32); - memcpy(commitment_txid_arr, (uint8_t*)(commitment_txid + 4), 32); - unsigned char (*commitment_txid_ref)[32] = &commitment_txid_arr; - LDKHTLCOutputInCommitment htlc_conv; - htlc_conv.inner = (void*)(htlc & (~1)); - htlc_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_conv); - LDKPublicKey broadcaster_delayed_payment_key_ref; - CHECK(*((uint32_t*)broadcaster_delayed_payment_key) == 33); - memcpy(broadcaster_delayed_payment_key_ref.compressed_form, (uint8_t*)(broadcaster_delayed_payment_key + 4), 33); - LDKPublicKey revocation_key_ref; - CHECK(*((uint32_t*)revocation_key) == 33); - memcpy(revocation_key_ref.compressed_form, (uint8_t*)(revocation_key + 4), 33); - LDKTransaction ret_var = build_htlc_transaction(commitment_txid_ref, feerate_per_kw, contest_delay, &htlc_conv, opt_anchors, broadcaster_delayed_payment_key_ref, revocation_key_ref); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - Transaction_free(ret_var); - return ret_arr; +void __attribute__((visibility("default"))) TS_CommitmentUpdate_free(uint32_t this_obj) { + LDKCommitmentUpdate this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + CommitmentUpdate_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_get_anchor_redeemscript(int8_tArray funding_pubkey) { - LDKPublicKey funding_pubkey_ref; - CHECK(*((uint32_t*)funding_pubkey) == 33); - memcpy(funding_pubkey_ref.compressed_form, (uint8_t*)(funding_pubkey + 4), 33); - LDKCVec_u8Z ret_var = get_anchor_redeemscript(funding_pubkey_ref); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +uint32_tArray __attribute__((visibility("default"))) TS_CommitmentUpdate_get_update_add_htlcs(uint32_t this_ptr) { + LDKCommitmentUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_UpdateAddHTLCZ ret_var = CommitmentUpdate_get_update_add_htlcs(&this_ptr_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t p = 0; p < ret_var.datalen; p++) { + LDKUpdateAddHTLC ret_conv_15_var = ret_var.data[p]; + uint64_t ret_conv_15_ref = 0; + CHECK((((uint64_t)ret_conv_15_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_conv_15_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_15_var); + ret_conv_15_ref = (uint64_t)ret_conv_15_var.inner; + if (ret_conv_15_var.is_owned) { + ret_conv_15_ref |= 1; + } + ret_arr_ptr[p] = ret_conv_15_ref; + } + + FREE(ret_var.data); return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_free(uint32_t this_obj) { - LDKChannelTransactionParameters this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelTransactionParameters_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_CommitmentUpdate_set_update_add_htlcs(uint32_t this_ptr, uint32_tArray val) { + LDKCommitmentUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_UpdateAddHTLCZ val_constr; + val_constr.datalen = val->arr_len; + if (val_constr.datalen > 0) + val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKUpdateAddHTLC), "LDKCVec_UpdateAddHTLCZ Elements"); + else + val_constr.data = NULL; + uint32_t* val_vals = val->elems; + for (size_t p = 0; p < val_constr.datalen; p++) { + uint32_t val_conv_15 = val_vals[p]; + LDKUpdateAddHTLC val_conv_15_conv; + val_conv_15_conv.inner = (void*)(val_conv_15 & (~1)); + val_conv_15_conv.is_owned = (val_conv_15 & 1) || (val_conv_15 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_15_conv); + val_conv_15_conv = UpdateAddHTLC_clone(&val_conv_15_conv); + val_constr.data[p] = val_conv_15_conv; + } + CommitmentUpdate_set_update_add_htlcs(&this_ptr_conv, val_constr); } -uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_get_holder_pubkeys(uint32_t this_ptr) { - LDKChannelTransactionParameters this_ptr_conv; +uint32_tArray __attribute__((visibility("default"))) TS_CommitmentUpdate_get_update_fulfill_htlcs(uint32_t this_ptr) { + LDKCommitmentUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelPublicKeys ret_var = ChannelTransactionParameters_get_holder_pubkeys(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; + LDKCVec_UpdateFulfillHTLCZ ret_var = CommitmentUpdate_get_update_fulfill_htlcs(&this_ptr_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t t = 0; t < ret_var.datalen; t++) { + LDKUpdateFulfillHTLC ret_conv_19_var = ret_var.data[t]; + uint64_t ret_conv_19_ref = 0; + CHECK((((uint64_t)ret_conv_19_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_conv_19_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_19_var); + ret_conv_19_ref = (uint64_t)ret_conv_19_var.inner; + if (ret_conv_19_var.is_owned) { + ret_conv_19_ref |= 1; + } + ret_arr_ptr[t] = ret_conv_19_ref; } - return ret_ref; + + FREE(ret_var.data); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_set_holder_pubkeys(uint32_t this_ptr, uint32_t val) { - LDKChannelTransactionParameters this_ptr_conv; +void __attribute__((visibility("default"))) TS_CommitmentUpdate_set_update_fulfill_htlcs(uint32_t this_ptr, uint32_tArray val) { + LDKCommitmentUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelPublicKeys val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = ChannelPublicKeys_clone(&val_conv); - ChannelTransactionParameters_set_holder_pubkeys(&this_ptr_conv, val_conv); + LDKCVec_UpdateFulfillHTLCZ val_constr; + val_constr.datalen = val->arr_len; + if (val_constr.datalen > 0) + val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKUpdateFulfillHTLC), "LDKCVec_UpdateFulfillHTLCZ Elements"); + else + val_constr.data = NULL; + uint32_t* val_vals = val->elems; + for (size_t t = 0; t < val_constr.datalen; t++) { + uint32_t val_conv_19 = val_vals[t]; + LDKUpdateFulfillHTLC val_conv_19_conv; + val_conv_19_conv.inner = (void*)(val_conv_19 & (~1)); + val_conv_19_conv.is_owned = (val_conv_19 & 1) || (val_conv_19 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_19_conv); + val_conv_19_conv = UpdateFulfillHTLC_clone(&val_conv_19_conv); + val_constr.data[t] = val_conv_19_conv; + } + CommitmentUpdate_set_update_fulfill_htlcs(&this_ptr_conv, val_constr); } -int16_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_get_holder_selected_contest_delay(uint32_t this_ptr) { - LDKChannelTransactionParameters this_ptr_conv; +uint32_tArray __attribute__((visibility("default"))) TS_CommitmentUpdate_get_update_fail_htlcs(uint32_t this_ptr) { + LDKCommitmentUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = ChannelTransactionParameters_get_holder_selected_contest_delay(&this_ptr_conv); - return ret_val; + LDKCVec_UpdateFailHTLCZ ret_var = CommitmentUpdate_get_update_fail_htlcs(&this_ptr_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t q = 0; q < ret_var.datalen; q++) { + LDKUpdateFailHTLC ret_conv_16_var = ret_var.data[q]; + uint64_t ret_conv_16_ref = 0; + CHECK((((uint64_t)ret_conv_16_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_conv_16_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_16_var); + ret_conv_16_ref = (uint64_t)ret_conv_16_var.inner; + if (ret_conv_16_var.is_owned) { + ret_conv_16_ref |= 1; + } + ret_arr_ptr[q] = ret_conv_16_ref; + } + + FREE(ret_var.data); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_set_holder_selected_contest_delay(uint32_t this_ptr, int16_t val) { - LDKChannelTransactionParameters this_ptr_conv; +void __attribute__((visibility("default"))) TS_CommitmentUpdate_set_update_fail_htlcs(uint32_t this_ptr, uint32_tArray val) { + LDKCommitmentUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelTransactionParameters_set_holder_selected_contest_delay(&this_ptr_conv, val); + LDKCVec_UpdateFailHTLCZ val_constr; + val_constr.datalen = val->arr_len; + if (val_constr.datalen > 0) + val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKUpdateFailHTLC), "LDKCVec_UpdateFailHTLCZ Elements"); + else + val_constr.data = NULL; + uint32_t* val_vals = val->elems; + for (size_t q = 0; q < val_constr.datalen; q++) { + uint32_t val_conv_16 = val_vals[q]; + LDKUpdateFailHTLC val_conv_16_conv; + val_conv_16_conv.inner = (void*)(val_conv_16 & (~1)); + val_conv_16_conv.is_owned = (val_conv_16 & 1) || (val_conv_16 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_16_conv); + val_conv_16_conv = UpdateFailHTLC_clone(&val_conv_16_conv); + val_constr.data[q] = val_conv_16_conv; + } + CommitmentUpdate_set_update_fail_htlcs(&this_ptr_conv, val_constr); } -jboolean __attribute__((visibility("default"))) TS_ChannelTransactionParameters_get_is_outbound_from_holder(uint32_t this_ptr) { - LDKChannelTransactionParameters this_ptr_conv; +uint32_tArray __attribute__((visibility("default"))) TS_CommitmentUpdate_get_update_fail_malformed_htlcs(uint32_t this_ptr) { + LDKCommitmentUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = ChannelTransactionParameters_get_is_outbound_from_holder(&this_ptr_conv); - return ret_val; + LDKCVec_UpdateFailMalformedHTLCZ ret_var = CommitmentUpdate_get_update_fail_malformed_htlcs(&this_ptr_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t z = 0; z < ret_var.datalen; z++) { + LDKUpdateFailMalformedHTLC ret_conv_25_var = ret_var.data[z]; + uint64_t ret_conv_25_ref = 0; + CHECK((((uint64_t)ret_conv_25_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_conv_25_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_25_var); + ret_conv_25_ref = (uint64_t)ret_conv_25_var.inner; + if (ret_conv_25_var.is_owned) { + ret_conv_25_ref |= 1; + } + ret_arr_ptr[z] = ret_conv_25_ref; + } + + FREE(ret_var.data); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_set_is_outbound_from_holder(uint32_t this_ptr, jboolean val) { - LDKChannelTransactionParameters this_ptr_conv; +void __attribute__((visibility("default"))) TS_CommitmentUpdate_set_update_fail_malformed_htlcs(uint32_t this_ptr, uint32_tArray val) { + LDKCommitmentUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelTransactionParameters_set_is_outbound_from_holder(&this_ptr_conv, val); + LDKCVec_UpdateFailMalformedHTLCZ val_constr; + val_constr.datalen = val->arr_len; + if (val_constr.datalen > 0) + val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKUpdateFailMalformedHTLC), "LDKCVec_UpdateFailMalformedHTLCZ Elements"); + else + val_constr.data = NULL; + uint32_t* val_vals = val->elems; + for (size_t z = 0; z < val_constr.datalen; z++) { + uint32_t val_conv_25 = val_vals[z]; + LDKUpdateFailMalformedHTLC val_conv_25_conv; + val_conv_25_conv.inner = (void*)(val_conv_25 & (~1)); + val_conv_25_conv.is_owned = (val_conv_25 & 1) || (val_conv_25 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_25_conv); + val_conv_25_conv = UpdateFailMalformedHTLC_clone(&val_conv_25_conv); + val_constr.data[z] = val_conv_25_conv; + } + CommitmentUpdate_set_update_fail_malformed_htlcs(&this_ptr_conv, val_constr); } -uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_get_counterparty_parameters(uint32_t this_ptr) { - LDKChannelTransactionParameters this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_CommitmentUpdate_get_update_fee(uint32_t this_ptr) { + LDKCommitmentUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCounterpartyChannelTransactionParameters ret_var = ChannelTransactionParameters_get_counterparty_parameters(&this_ptr_conv); + LDKUpdateFee ret_var = CommitmentUpdate_get_update_fee(&this_ptr_conv); uint64_t ret_ref = 0; if ((uint64_t)ret_var.inner > 4096) { CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. @@ -29811,87 +27165,125 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_set_counterparty_parameters(uint32_t this_ptr, uint32_t val) { - LDKChannelTransactionParameters this_ptr_conv; +void __attribute__((visibility("default"))) TS_CommitmentUpdate_set_update_fee(uint32_t this_ptr, uint32_t val) { + LDKCommitmentUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCounterpartyChannelTransactionParameters val_conv; + LDKUpdateFee val_conv; val_conv.inner = (void*)(val & (~1)); val_conv.is_owned = (val & 1) || (val == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = CounterpartyChannelTransactionParameters_clone(&val_conv); - ChannelTransactionParameters_set_counterparty_parameters(&this_ptr_conv, val_conv); + val_conv = UpdateFee_clone(&val_conv); + CommitmentUpdate_set_update_fee(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_get_funding_outpoint(uint32_t this_ptr) { - LDKChannelTransactionParameters this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_CommitmentUpdate_get_commitment_signed(uint32_t this_ptr) { + LDKCommitmentUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKOutPoint ret_var = ChannelTransactionParameters_get_funding_outpoint(&this_ptr_conv); + LDKCommitmentSigned ret_var = CommitmentUpdate_get_commitment_signed(&this_ptr_conv); uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_set_funding_outpoint(uint32_t this_ptr, uint32_t val) { - LDKChannelTransactionParameters this_ptr_conv; +void __attribute__((visibility("default"))) TS_CommitmentUpdate_set_commitment_signed(uint32_t this_ptr, uint32_t val) { + LDKCommitmentUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKOutPoint val_conv; + LDKCommitmentSigned val_conv; val_conv.inner = (void*)(val & (~1)); val_conv.is_owned = (val & 1) || (val == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = OutPoint_clone(&val_conv); - ChannelTransactionParameters_set_funding_outpoint(&this_ptr_conv, val_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_get_opt_anchors(uint32_t this_ptr) { - LDKChannelTransactionParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - uint32_t ret_conv = LDKCOption_NoneZ_to_js(ChannelTransactionParameters_get_opt_anchors(&this_ptr_conv)); - return ret_conv; -} - -void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_set_opt_anchors(uint32_t this_ptr, uint32_t val) { - LDKChannelTransactionParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCOption_NoneZ val_conv = LDKCOption_NoneZ_from_js(val); - ChannelTransactionParameters_set_opt_anchors(&this_ptr_conv, val_conv); + val_conv = CommitmentSigned_clone(&val_conv); + CommitmentUpdate_set_commitment_signed(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_new(uint32_t holder_pubkeys_arg, int16_t holder_selected_contest_delay_arg, jboolean is_outbound_from_holder_arg, uint32_t counterparty_parameters_arg, uint32_t funding_outpoint_arg, uint32_t opt_anchors_arg) { - LDKChannelPublicKeys holder_pubkeys_arg_conv; - holder_pubkeys_arg_conv.inner = (void*)(holder_pubkeys_arg & (~1)); - holder_pubkeys_arg_conv.is_owned = (holder_pubkeys_arg & 1) || (holder_pubkeys_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(holder_pubkeys_arg_conv); - holder_pubkeys_arg_conv = ChannelPublicKeys_clone(&holder_pubkeys_arg_conv); - LDKCounterpartyChannelTransactionParameters counterparty_parameters_arg_conv; - counterparty_parameters_arg_conv.inner = (void*)(counterparty_parameters_arg & (~1)); - counterparty_parameters_arg_conv.is_owned = (counterparty_parameters_arg & 1) || (counterparty_parameters_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(counterparty_parameters_arg_conv); - counterparty_parameters_arg_conv = CounterpartyChannelTransactionParameters_clone(&counterparty_parameters_arg_conv); - LDKOutPoint funding_outpoint_arg_conv; - funding_outpoint_arg_conv.inner = (void*)(funding_outpoint_arg & (~1)); - funding_outpoint_arg_conv.is_owned = (funding_outpoint_arg & 1) || (funding_outpoint_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_outpoint_arg_conv); - funding_outpoint_arg_conv = OutPoint_clone(&funding_outpoint_arg_conv); - LDKCOption_NoneZ opt_anchors_arg_conv = LDKCOption_NoneZ_from_js(opt_anchors_arg); - LDKChannelTransactionParameters ret_var = ChannelTransactionParameters_new(holder_pubkeys_arg_conv, holder_selected_contest_delay_arg, is_outbound_from_holder_arg, counterparty_parameters_arg_conv, funding_outpoint_arg_conv, opt_anchors_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_CommitmentUpdate_new(uint32_tArray update_add_htlcs_arg, uint32_tArray update_fulfill_htlcs_arg, uint32_tArray update_fail_htlcs_arg, uint32_tArray update_fail_malformed_htlcs_arg, uint32_t update_fee_arg, uint32_t commitment_signed_arg) { + LDKCVec_UpdateAddHTLCZ update_add_htlcs_arg_constr; + update_add_htlcs_arg_constr.datalen = update_add_htlcs_arg->arr_len; + if (update_add_htlcs_arg_constr.datalen > 0) + update_add_htlcs_arg_constr.data = MALLOC(update_add_htlcs_arg_constr.datalen * sizeof(LDKUpdateAddHTLC), "LDKCVec_UpdateAddHTLCZ Elements"); + else + update_add_htlcs_arg_constr.data = NULL; + uint32_t* update_add_htlcs_arg_vals = update_add_htlcs_arg->elems; + for (size_t p = 0; p < update_add_htlcs_arg_constr.datalen; p++) { + uint32_t update_add_htlcs_arg_conv_15 = update_add_htlcs_arg_vals[p]; + LDKUpdateAddHTLC update_add_htlcs_arg_conv_15_conv; + update_add_htlcs_arg_conv_15_conv.inner = (void*)(update_add_htlcs_arg_conv_15 & (~1)); + update_add_htlcs_arg_conv_15_conv.is_owned = (update_add_htlcs_arg_conv_15 & 1) || (update_add_htlcs_arg_conv_15 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_add_htlcs_arg_conv_15_conv); + update_add_htlcs_arg_conv_15_conv = UpdateAddHTLC_clone(&update_add_htlcs_arg_conv_15_conv); + update_add_htlcs_arg_constr.data[p] = update_add_htlcs_arg_conv_15_conv; + } + LDKCVec_UpdateFulfillHTLCZ update_fulfill_htlcs_arg_constr; + update_fulfill_htlcs_arg_constr.datalen = update_fulfill_htlcs_arg->arr_len; + if (update_fulfill_htlcs_arg_constr.datalen > 0) + update_fulfill_htlcs_arg_constr.data = MALLOC(update_fulfill_htlcs_arg_constr.datalen * sizeof(LDKUpdateFulfillHTLC), "LDKCVec_UpdateFulfillHTLCZ Elements"); + else + update_fulfill_htlcs_arg_constr.data = NULL; + uint32_t* update_fulfill_htlcs_arg_vals = update_fulfill_htlcs_arg->elems; + for (size_t t = 0; t < update_fulfill_htlcs_arg_constr.datalen; t++) { + uint32_t update_fulfill_htlcs_arg_conv_19 = update_fulfill_htlcs_arg_vals[t]; + LDKUpdateFulfillHTLC update_fulfill_htlcs_arg_conv_19_conv; + update_fulfill_htlcs_arg_conv_19_conv.inner = (void*)(update_fulfill_htlcs_arg_conv_19 & (~1)); + update_fulfill_htlcs_arg_conv_19_conv.is_owned = (update_fulfill_htlcs_arg_conv_19 & 1) || (update_fulfill_htlcs_arg_conv_19 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_fulfill_htlcs_arg_conv_19_conv); + update_fulfill_htlcs_arg_conv_19_conv = UpdateFulfillHTLC_clone(&update_fulfill_htlcs_arg_conv_19_conv); + update_fulfill_htlcs_arg_constr.data[t] = update_fulfill_htlcs_arg_conv_19_conv; + } + LDKCVec_UpdateFailHTLCZ update_fail_htlcs_arg_constr; + update_fail_htlcs_arg_constr.datalen = update_fail_htlcs_arg->arr_len; + if (update_fail_htlcs_arg_constr.datalen > 0) + update_fail_htlcs_arg_constr.data = MALLOC(update_fail_htlcs_arg_constr.datalen * sizeof(LDKUpdateFailHTLC), "LDKCVec_UpdateFailHTLCZ Elements"); + else + update_fail_htlcs_arg_constr.data = NULL; + uint32_t* update_fail_htlcs_arg_vals = update_fail_htlcs_arg->elems; + for (size_t q = 0; q < update_fail_htlcs_arg_constr.datalen; q++) { + uint32_t update_fail_htlcs_arg_conv_16 = update_fail_htlcs_arg_vals[q]; + LDKUpdateFailHTLC update_fail_htlcs_arg_conv_16_conv; + update_fail_htlcs_arg_conv_16_conv.inner = (void*)(update_fail_htlcs_arg_conv_16 & (~1)); + update_fail_htlcs_arg_conv_16_conv.is_owned = (update_fail_htlcs_arg_conv_16 & 1) || (update_fail_htlcs_arg_conv_16 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_fail_htlcs_arg_conv_16_conv); + update_fail_htlcs_arg_conv_16_conv = UpdateFailHTLC_clone(&update_fail_htlcs_arg_conv_16_conv); + update_fail_htlcs_arg_constr.data[q] = update_fail_htlcs_arg_conv_16_conv; + } + LDKCVec_UpdateFailMalformedHTLCZ update_fail_malformed_htlcs_arg_constr; + update_fail_malformed_htlcs_arg_constr.datalen = update_fail_malformed_htlcs_arg->arr_len; + if (update_fail_malformed_htlcs_arg_constr.datalen > 0) + update_fail_malformed_htlcs_arg_constr.data = MALLOC(update_fail_malformed_htlcs_arg_constr.datalen * sizeof(LDKUpdateFailMalformedHTLC), "LDKCVec_UpdateFailMalformedHTLCZ Elements"); + else + update_fail_malformed_htlcs_arg_constr.data = NULL; + uint32_t* update_fail_malformed_htlcs_arg_vals = update_fail_malformed_htlcs_arg->elems; + for (size_t z = 0; z < update_fail_malformed_htlcs_arg_constr.datalen; z++) { + uint32_t update_fail_malformed_htlcs_arg_conv_25 = update_fail_malformed_htlcs_arg_vals[z]; + LDKUpdateFailMalformedHTLC update_fail_malformed_htlcs_arg_conv_25_conv; + update_fail_malformed_htlcs_arg_conv_25_conv.inner = (void*)(update_fail_malformed_htlcs_arg_conv_25 & (~1)); + update_fail_malformed_htlcs_arg_conv_25_conv.is_owned = (update_fail_malformed_htlcs_arg_conv_25 & 1) || (update_fail_malformed_htlcs_arg_conv_25 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_fail_malformed_htlcs_arg_conv_25_conv); + update_fail_malformed_htlcs_arg_conv_25_conv = UpdateFailMalformedHTLC_clone(&update_fail_malformed_htlcs_arg_conv_25_conv); + update_fail_malformed_htlcs_arg_constr.data[z] = update_fail_malformed_htlcs_arg_conv_25_conv; + } + LDKUpdateFee update_fee_arg_conv; + update_fee_arg_conv.inner = (void*)(update_fee_arg & (~1)); + update_fee_arg_conv.is_owned = (update_fee_arg & 1) || (update_fee_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_fee_arg_conv); + update_fee_arg_conv = UpdateFee_clone(&update_fee_arg_conv); + LDKCommitmentSigned commitment_signed_arg_conv; + commitment_signed_arg_conv.inner = (void*)(commitment_signed_arg & (~1)); + commitment_signed_arg_conv.is_owned = (commitment_signed_arg & 1) || (commitment_signed_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_signed_arg_conv); + commitment_signed_arg_conv = CommitmentSigned_clone(&commitment_signed_arg_conv); + LDKCommitmentUpdate ret_var = CommitmentUpdate_new(update_add_htlcs_arg_constr, update_fulfill_htlcs_arg_constr, update_fail_htlcs_arg_constr, update_fail_malformed_htlcs_arg_constr, update_fee_arg_conv, commitment_signed_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -29903,8 +27295,8 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters return ret_ref; } -static inline uint64_t ChannelTransactionParameters_clone_ptr(LDKChannelTransactionParameters *NONNULL_PTR arg) { - LDKChannelTransactionParameters ret_var = ChannelTransactionParameters_clone(arg); +static inline uint64_t CommitmentUpdate_clone_ptr(LDKCommitmentUpdate *NONNULL_PTR arg) { + LDKCommitmentUpdate ret_var = CommitmentUpdate_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -29915,21 +27307,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_clone_ptr(uint32_t arg) { - LDKChannelTransactionParameters arg_conv; +int64_t __attribute__((visibility("default"))) TS_CommitmentUpdate_clone_ptr(uint32_t arg) { + LDKCommitmentUpdate arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelTransactionParameters_clone_ptr(&arg_conv); + int64_t ret_val = CommitmentUpdate_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_clone(uint32_t orig) { - LDKChannelTransactionParameters orig_conv; +uint32_t __attribute__((visibility("default"))) TS_CommitmentUpdate_clone(uint32_t orig) { + LDKCommitmentUpdate orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelTransactionParameters ret_var = ChannelTransactionParameters_clone(&orig_conv); + LDKCommitmentUpdate ret_var = CommitmentUpdate_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -29941,841 +27333,724 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters return ret_ref; } -void __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_free(uint32_t this_obj) { - LDKCounterpartyChannelTransactionParameters this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - CounterpartyChannelTransactionParameters_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKChannelMessageHandler this_ptr_conv = *(LDKChannelMessageHandler*)(this_ptr_ptr); + FREE((void*)this_ptr); + ChannelMessageHandler_free(this_ptr_conv); } -uint32_t __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_get_pubkeys(uint32_t this_ptr) { - LDKCounterpartyChannelTransactionParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelPublicKeys ret_var = CounterpartyChannelTransactionParameters_get_pubkeys(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_RoutingMessageHandler_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKRoutingMessageHandler this_ptr_conv = *(LDKRoutingMessageHandler*)(this_ptr_ptr); + FREE((void*)this_ptr); + RoutingMessageHandler_free(this_ptr_conv); } -void __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_set_pubkeys(uint32_t this_ptr, uint32_t val) { - LDKCounterpartyChannelTransactionParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelPublicKeys val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = ChannelPublicKeys_clone(&val_conv); - CounterpartyChannelTransactionParameters_set_pubkeys(&this_ptr_conv, val_conv); +int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_write(uint32_t obj) { + LDKAcceptChannel obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = AcceptChannel_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -int16_t __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_get_selected_contest_delay(uint32_t this_ptr) { - LDKCounterpartyChannelTransactionParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = CounterpartyChannelTransactionParameters_get_selected_contest_delay(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_AcceptChannel_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_AcceptChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AcceptChannelDecodeErrorZ), "LDKCResult_AcceptChannelDecodeErrorZ"); + *ret_conv = AcceptChannel_read(ser_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_set_selected_contest_delay(uint32_t this_ptr, int16_t val) { - LDKCounterpartyChannelTransactionParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - CounterpartyChannelTransactionParameters_set_selected_contest_delay(&this_ptr_conv, val); +int8_tArray __attribute__((visibility("default"))) TS_AnnouncementSignatures_write(uint32_t obj) { + LDKAnnouncementSignatures obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = AnnouncementSignatures_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_new(uint32_t pubkeys_arg, int16_t selected_contest_delay_arg) { - LDKChannelPublicKeys pubkeys_arg_conv; - pubkeys_arg_conv.inner = (void*)(pubkeys_arg & (~1)); - pubkeys_arg_conv.is_owned = (pubkeys_arg & 1) || (pubkeys_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(pubkeys_arg_conv); - pubkeys_arg_conv = ChannelPublicKeys_clone(&pubkeys_arg_conv); - LDKCounterpartyChannelTransactionParameters ret_var = CounterpartyChannelTransactionParameters_new(pubkeys_arg_conv, selected_contest_delay_arg); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_AnnouncementSignatures_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_AnnouncementSignaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AnnouncementSignaturesDecodeErrorZ), "LDKCResult_AnnouncementSignaturesDecodeErrorZ"); + *ret_conv = AnnouncementSignatures_read(ser_ref); + return (uint64_t)ret_conv; } -static inline uint64_t CounterpartyChannelTransactionParameters_clone_ptr(LDKCounterpartyChannelTransactionParameters *NONNULL_PTR arg) { - LDKCounterpartyChannelTransactionParameters ret_var = CounterpartyChannelTransactionParameters_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; +int8_tArray __attribute__((visibility("default"))) TS_ChannelReestablish_write(uint32_t obj) { + LDKChannelReestablish obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ChannelReestablish_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } - return ret_ref; + +uint32_t __attribute__((visibility("default"))) TS_ChannelReestablish_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ChannelReestablishDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelReestablishDecodeErrorZ), "LDKCResult_ChannelReestablishDecodeErrorZ"); + *ret_conv = ChannelReestablish_read(ser_ref); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_clone_ptr(uint32_t arg) { - LDKCounterpartyChannelTransactionParameters arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = CounterpartyChannelTransactionParameters_clone_ptr(&arg_conv); - return ret_val; + +int8_tArray __attribute__((visibility("default"))) TS_ClosingSigned_write(uint32_t obj) { + LDKClosingSigned obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ClosingSigned_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_clone(uint32_t orig) { - LDKCounterpartyChannelTransactionParameters orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKCounterpartyChannelTransactionParameters ret_var = CounterpartyChannelTransactionParameters_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_ClosingSigned_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ClosingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedDecodeErrorZ), "LDKCResult_ClosingSignedDecodeErrorZ"); + *ret_conv = ClosingSigned_read(ser_ref); + return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_ChannelTransactionParameters_is_populated(uint32_t this_arg) { - LDKChannelTransactionParameters this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = ChannelTransactionParameters_is_populated(&this_arg_conv); - return ret_val; +int8_tArray __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_write(uint32_t obj) { + LDKClosingSignedFeeRange obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ClosingSignedFeeRange_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ), "LDKCResult_ClosingSignedFeeRangeDecodeErrorZ"); + *ret_conv = ClosingSignedFeeRange_read(ser_ref); + return (uint64_t)ret_conv; +} + +int8_tArray __attribute__((visibility("default"))) TS_CommitmentSigned_write(uint32_t obj) { + LDKCommitmentSigned obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = CommitmentSigned_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_CommitmentSigned_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_CommitmentSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentSignedDecodeErrorZ), "LDKCResult_CommitmentSignedDecodeErrorZ"); + *ret_conv = CommitmentSigned_read(ser_ref); + return (uint64_t)ret_conv; +} + +int8_tArray __attribute__((visibility("default"))) TS_FundingCreated_write(uint32_t obj) { + LDKFundingCreated obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = FundingCreated_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_FundingCreated_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_FundingCreatedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingCreatedDecodeErrorZ), "LDKCResult_FundingCreatedDecodeErrorZ"); + *ret_conv = FundingCreated_read(ser_ref); + return (uint64_t)ret_conv; +} + +int8_tArray __attribute__((visibility("default"))) TS_FundingSigned_write(uint32_t obj) { + LDKFundingSigned obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = FundingSigned_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_as_holder_broadcastable(uint32_t this_arg) { - LDKChannelTransactionParameters this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKDirectedChannelTransactionParameters ret_var = ChannelTransactionParameters_as_holder_broadcastable(&this_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_FundingSigned_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_FundingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingSignedDecodeErrorZ), "LDKCResult_FundingSignedDecodeErrorZ"); + *ret_conv = FundingSigned_read(ser_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_as_counterparty_broadcastable(uint32_t this_arg) { - LDKChannelTransactionParameters this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKDirectedChannelTransactionParameters ret_var = ChannelTransactionParameters_as_counterparty_broadcastable(&this_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_FundingLocked_write(uint32_t obj) { + LDKFundingLocked obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = FundingLocked_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -int8_tArray __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_write(uint32_t obj) { - LDKCounterpartyChannelTransactionParameters obj_conv; +uint32_t __attribute__((visibility("default"))) TS_FundingLocked_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_FundingLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingLockedDecodeErrorZ), "LDKCResult_FundingLockedDecodeErrorZ"); + *ret_conv = FundingLocked_read(ser_ref); + return (uint64_t)ret_conv; +} + +int8_tArray __attribute__((visibility("default"))) TS_Init_write(uint32_t obj) { + LDKInit obj_conv; obj_conv.inner = (void*)(obj & (~1)); obj_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = CounterpartyChannelTransactionParameters_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + LDKCVec_u8Z ret_var = Init_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_read(int8_tArray ser) { +uint32_t __attribute__((visibility("default"))) TS_Init_read(int8_tArray ser) { LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ), "LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ"); - *ret_conv = CounterpartyChannelTransactionParameters_read(ser_ref); + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_InitDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitDecodeErrorZ), "LDKCResult_InitDecodeErrorZ"); + *ret_conv = Init_read(ser_ref); return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_ChannelTransactionParameters_write(uint32_t obj) { - LDKChannelTransactionParameters obj_conv; +int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_write(uint32_t obj) { + LDKOpenChannel obj_conv; obj_conv.inner = (void*)(obj & (~1)); obj_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ChannelTransactionParameters_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + LDKCVec_u8Z ret_var = OpenChannel_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_read(int8_tArray ser) { +uint32_t __attribute__((visibility("default"))) TS_OpenChannel_read(int8_tArray ser) { LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTransactionParametersDecodeErrorZ), "LDKCResult_ChannelTransactionParametersDecodeErrorZ"); - *ret_conv = ChannelTransactionParameters_read(ser_ref); + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_OpenChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OpenChannelDecodeErrorZ), "LDKCResult_OpenChannelDecodeErrorZ"); + *ret_conv = OpenChannel_read(ser_ref); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_free(uint32_t this_obj) { - LDKDirectedChannelTransactionParameters this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - DirectedChannelTransactionParameters_free(this_obj_conv); +int8_tArray __attribute__((visibility("default"))) TS_RevokeAndACK_write(uint32_t obj) { + LDKRevokeAndACK obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = RevokeAndACK_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_broadcaster_pubkeys(uint32_t this_arg) { - LDKDirectedChannelTransactionParameters this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKChannelPublicKeys ret_var = DirectedChannelTransactionParameters_broadcaster_pubkeys(&this_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_RevokeAndACK_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_RevokeAndACKDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevokeAndACKDecodeErrorZ), "LDKCResult_RevokeAndACKDecodeErrorZ"); + *ret_conv = RevokeAndACK_read(ser_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_countersignatory_pubkeys(uint32_t this_arg) { - LDKDirectedChannelTransactionParameters this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKChannelPublicKeys ret_var = DirectedChannelTransactionParameters_countersignatory_pubkeys(&this_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_Shutdown_write(uint32_t obj) { + LDKShutdown obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = Shutdown_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -int16_t __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_contest_delay(uint32_t this_arg) { - LDKDirectedChannelTransactionParameters this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int16_t ret_val = DirectedChannelTransactionParameters_contest_delay(&this_arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_Shutdown_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ShutdownDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownDecodeErrorZ), "LDKCResult_ShutdownDecodeErrorZ"); + *ret_conv = Shutdown_read(ser_ref); + return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_is_outbound(uint32_t this_arg) { - LDKDirectedChannelTransactionParameters this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = DirectedChannelTransactionParameters_is_outbound(&this_arg_conv); - return ret_val; +int8_tArray __attribute__((visibility("default"))) TS_UpdateFailHTLC_write(uint32_t obj) { + LDKUpdateFailHTLC obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = UpdateFailHTLC_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_funding_outpoint(uint32_t this_arg) { - LDKDirectedChannelTransactionParameters this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKOutPoint ret_var = DirectedChannelTransactionParameters_funding_outpoint(&this_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_UpdateFailHTLC_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_UpdateFailHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailHTLCDecodeErrorZ), "LDKCResult_UpdateFailHTLCDecodeErrorZ"); + *ret_conv = UpdateFailHTLC_read(ser_ref); + return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_opt_anchors(uint32_t this_arg) { - LDKDirectedChannelTransactionParameters this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = DirectedChannelTransactionParameters_opt_anchors(&this_arg_conv); - return ret_val; +int8_tArray __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_write(uint32_t obj) { + LDKUpdateFailMalformedHTLC obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = UpdateFailMalformedHTLC_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -void __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_free(uint32_t this_obj) { - LDKHolderCommitmentTransaction this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - HolderCommitmentTransaction_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ), "LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ"); + *ret_conv = UpdateFailMalformedHTLC_read(ser_ref); + return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_get_counterparty_sig(uint32_t this_ptr) { - LDKHolderCommitmentTransaction this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), HolderCommitmentTransaction_get_counterparty_sig(&this_ptr_conv).compact_form, 64); +int8_tArray __attribute__((visibility("default"))) TS_UpdateFee_write(uint32_t obj) { + LDKUpdateFee obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = UpdateFee_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); return ret_arr; } -void __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_set_counterparty_sig(uint32_t this_ptr, int8_tArray val) { - LDKHolderCommitmentTransaction this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSignature val_ref; - CHECK(*((uint32_t*)val) == 64); - memcpy(val_ref.compact_form, (uint8_t*)(val + 4), 64); - HolderCommitmentTransaction_set_counterparty_sig(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_UpdateFee_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_UpdateFeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFeeDecodeErrorZ), "LDKCResult_UpdateFeeDecodeErrorZ"); + *ret_conv = UpdateFee_read(ser_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_set_counterparty_htlc_sigs(uint32_t this_ptr, ptrArray val) { - LDKHolderCommitmentTransaction this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_SignatureZ val_constr; - val_constr.datalen = *((uint32_t*)val); - if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); - else - val_constr.data = NULL; - int8_tArray* val_vals = (int8_tArray*)(val + 4); - for (size_t m = 0; m < val_constr.datalen; m++) { - int8_tArray val_conv_12 = val_vals[m]; - LDKSignature val_conv_12_ref; - CHECK(*((uint32_t*)val_conv_12) == 64); - memcpy(val_conv_12_ref.compact_form, (uint8_t*)(val_conv_12 + 4), 64); - val_constr.data[m] = val_conv_12_ref; - } - HolderCommitmentTransaction_set_counterparty_htlc_sigs(&this_ptr_conv, val_constr); +int8_tArray __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_write(uint32_t obj) { + LDKUpdateFulfillHTLC obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = UpdateFulfillHTLC_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -static inline uint64_t HolderCommitmentTransaction_clone_ptr(LDKHolderCommitmentTransaction *NONNULL_PTR arg) { - LDKHolderCommitmentTransaction ret_var = HolderCommitmentTransaction_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_UpdateFulfillHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFulfillHTLCDecodeErrorZ), "LDKCResult_UpdateFulfillHTLCDecodeErrorZ"); + *ret_conv = UpdateFulfillHTLC_read(ser_ref); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_clone_ptr(uint32_t arg) { - LDKHolderCommitmentTransaction arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = HolderCommitmentTransaction_clone_ptr(&arg_conv); - return ret_val; + +int8_tArray __attribute__((visibility("default"))) TS_UpdateAddHTLC_write(uint32_t obj) { + LDKUpdateAddHTLC obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = UpdateAddHTLC_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_clone(uint32_t orig) { - LDKHolderCommitmentTransaction orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKHolderCommitmentTransaction ret_var = HolderCommitmentTransaction_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_UpdateAddHTLC_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_UpdateAddHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateAddHTLCDecodeErrorZ), "LDKCResult_UpdateAddHTLCDecodeErrorZ"); + *ret_conv = UpdateAddHTLC_read(ser_ref); + return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_write(uint32_t obj) { - LDKHolderCommitmentTransaction obj_conv; +int8_tArray __attribute__((visibility("default"))) TS_Ping_write(uint32_t obj) { + LDKPing obj_conv; obj_conv.inner = (void*)(obj & (~1)); obj_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = HolderCommitmentTransaction_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + LDKCVec_u8Z ret_var = Ping_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_read(int8_tArray ser) { +uint32_t __attribute__((visibility("default"))) TS_Ping_read(int8_tArray ser) { LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_HolderCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HolderCommitmentTransactionDecodeErrorZ), "LDKCResult_HolderCommitmentTransactionDecodeErrorZ"); - *ret_conv = HolderCommitmentTransaction_read(ser_ref); + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_PingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PingDecodeErrorZ), "LDKCResult_PingDecodeErrorZ"); + *ret_conv = Ping_read(ser_ref); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_new(uint32_t commitment_tx, int8_tArray counterparty_sig, ptrArray counterparty_htlc_sigs, int8_tArray holder_funding_key, int8_tArray counterparty_funding_key) { - LDKCommitmentTransaction commitment_tx_conv; - commitment_tx_conv.inner = (void*)(commitment_tx & (~1)); - commitment_tx_conv.is_owned = (commitment_tx & 1) || (commitment_tx == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_conv); - commitment_tx_conv = CommitmentTransaction_clone(&commitment_tx_conv); - LDKSignature counterparty_sig_ref; - CHECK(*((uint32_t*)counterparty_sig) == 64); - memcpy(counterparty_sig_ref.compact_form, (uint8_t*)(counterparty_sig + 4), 64); - LDKCVec_SignatureZ counterparty_htlc_sigs_constr; - counterparty_htlc_sigs_constr.datalen = *((uint32_t*)counterparty_htlc_sigs); - if (counterparty_htlc_sigs_constr.datalen > 0) - counterparty_htlc_sigs_constr.data = MALLOC(counterparty_htlc_sigs_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); - else - counterparty_htlc_sigs_constr.data = NULL; - int8_tArray* counterparty_htlc_sigs_vals = (int8_tArray*)(counterparty_htlc_sigs + 4); - for (size_t m = 0; m < counterparty_htlc_sigs_constr.datalen; m++) { - int8_tArray counterparty_htlc_sigs_conv_12 = counterparty_htlc_sigs_vals[m]; - LDKSignature counterparty_htlc_sigs_conv_12_ref; - CHECK(*((uint32_t*)counterparty_htlc_sigs_conv_12) == 64); - memcpy(counterparty_htlc_sigs_conv_12_ref.compact_form, (uint8_t*)(counterparty_htlc_sigs_conv_12 + 4), 64); - counterparty_htlc_sigs_constr.data[m] = counterparty_htlc_sigs_conv_12_ref; - } - LDKPublicKey holder_funding_key_ref; - CHECK(*((uint32_t*)holder_funding_key) == 33); - memcpy(holder_funding_key_ref.compressed_form, (uint8_t*)(holder_funding_key + 4), 33); - LDKPublicKey counterparty_funding_key_ref; - CHECK(*((uint32_t*)counterparty_funding_key) == 33); - memcpy(counterparty_funding_key_ref.compressed_form, (uint8_t*)(counterparty_funding_key + 4), 33); - LDKHolderCommitmentTransaction ret_var = HolderCommitmentTransaction_new(commitment_tx_conv, counterparty_sig_ref, counterparty_htlc_sigs_constr, holder_funding_key_ref, counterparty_funding_key_ref); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_Pong_write(uint32_t obj) { + LDKPong obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = Pong_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -void __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_free(uint32_t this_obj) { - LDKBuiltCommitmentTransaction this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - BuiltCommitmentTransaction_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_Pong_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_PongDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PongDecodeErrorZ), "LDKCResult_PongDecodeErrorZ"); + *ret_conv = Pong_read(ser_ref); + return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_get_transaction(uint32_t this_ptr) { - LDKBuiltCommitmentTransaction this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKTransaction ret_var = BuiltCommitmentTransaction_get_transaction(&this_ptr_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - Transaction_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_write(uint32_t obj) { + LDKUnsignedChannelAnnouncement obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = UnsignedChannelAnnouncement_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); return ret_arr; } -void __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_set_transaction(uint32_t this_ptr, int8_tArray val) { - LDKBuiltCommitmentTransaction this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKTransaction val_ref; - val_ref.datalen = *((uint32_t*)val); - val_ref.data = MALLOC(val_ref.datalen, "LDKTransaction Bytes"); - memcpy(val_ref.data, (uint8_t*)(val + 4), val_ref.datalen); - val_ref.data_is_owned = true; - BuiltCommitmentTransaction_set_transaction(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ), "LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ"); + *ret_conv = UnsignedChannelAnnouncement_read(ser_ref); + return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_get_txid(uint32_t this_ptr) { - LDKBuiltCommitmentTransaction this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *BuiltCommitmentTransaction_get_txid(&this_ptr_conv), 32); +int8_tArray __attribute__((visibility("default"))) TS_ChannelAnnouncement_write(uint32_t obj) { + LDKChannelAnnouncement obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ChannelAnnouncement_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); return ret_arr; } -void __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_set_txid(uint32_t this_ptr, int8_tArray val) { - LDKBuiltCommitmentTransaction this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - BuiltCommitmentTransaction_set_txid(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_ChannelAnnouncement_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelAnnouncementDecodeErrorZ), "LDKCResult_ChannelAnnouncementDecodeErrorZ"); + *ret_conv = ChannelAnnouncement_read(ser_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_new(int8_tArray transaction_arg, int8_tArray txid_arg) { - LDKTransaction transaction_arg_ref; - transaction_arg_ref.datalen = *((uint32_t*)transaction_arg); - transaction_arg_ref.data = MALLOC(transaction_arg_ref.datalen, "LDKTransaction Bytes"); - memcpy(transaction_arg_ref.data, (uint8_t*)(transaction_arg + 4), transaction_arg_ref.datalen); - transaction_arg_ref.data_is_owned = true; - LDKThirtyTwoBytes txid_arg_ref; - CHECK(*((uint32_t*)txid_arg) == 32); - memcpy(txid_arg_ref.data, (uint8_t*)(txid_arg + 4), 32); - LDKBuiltCommitmentTransaction ret_var = BuiltCommitmentTransaction_new(transaction_arg_ref, txid_arg_ref); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_write(uint32_t obj) { + LDKUnsignedChannelUpdate obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = UnsignedChannelUpdate_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -static inline uint64_t BuiltCommitmentTransaction_clone_ptr(LDKBuiltCommitmentTransaction *NONNULL_PTR arg) { - LDKBuiltCommitmentTransaction ret_var = BuiltCommitmentTransaction_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_UnsignedChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelUpdateDecodeErrorZ), "LDKCResult_UnsignedChannelUpdateDecodeErrorZ"); + *ret_conv = UnsignedChannelUpdate_read(ser_ref); + return (uint64_t)ret_conv; } - return ret_ref; + +int8_tArray __attribute__((visibility("default"))) TS_ChannelUpdate_write(uint32_t obj) { + LDKChannelUpdate obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ChannelUpdate_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -int64_t __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_clone_ptr(uint32_t arg) { - LDKBuiltCommitmentTransaction arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = BuiltCommitmentTransaction_clone_ptr(&arg_conv); - return ret_val; + +uint32_t __attribute__((visibility("default"))) TS_ChannelUpdate_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelUpdateDecodeErrorZ), "LDKCResult_ChannelUpdateDecodeErrorZ"); + *ret_conv = ChannelUpdate_read(ser_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_clone(uint32_t orig) { - LDKBuiltCommitmentTransaction orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKBuiltCommitmentTransaction ret_var = BuiltCommitmentTransaction_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_ErrorMessage_write(uint32_t obj) { + LDKErrorMessage obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ErrorMessage_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -int8_tArray __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_write(uint32_t obj) { - LDKBuiltCommitmentTransaction obj_conv; +uint32_t __attribute__((visibility("default"))) TS_ErrorMessage_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ErrorMessageDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ErrorMessageDecodeErrorZ), "LDKCResult_ErrorMessageDecodeErrorZ"); + *ret_conv = ErrorMessage_read(ser_ref); + return (uint64_t)ret_conv; +} + +int8_tArray __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_write(uint32_t obj) { + LDKUnsignedNodeAnnouncement obj_conv; obj_conv.inner = (void*)(obj & (~1)); obj_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = BuiltCommitmentTransaction_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + LDKCVec_u8Z ret_var = UnsignedNodeAnnouncement_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_read(int8_tArray ser) { +uint32_t __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_read(int8_tArray ser) { LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ), "LDKCResult_BuiltCommitmentTransactionDecodeErrorZ"); - *ret_conv = BuiltCommitmentTransaction_read(ser_ref); + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ), "LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ"); + *ret_conv = UnsignedNodeAnnouncement_read(ser_ref); return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_get_sighash_all(uint32_t this_arg, int8_tArray funding_redeemscript, int64_t channel_value_satoshis) { - LDKBuiltCommitmentTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKu8slice funding_redeemscript_ref; - funding_redeemscript_ref.datalen = *((uint32_t*)funding_redeemscript); - funding_redeemscript_ref.data = (int8_t*)(funding_redeemscript + 4); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), BuiltCommitmentTransaction_get_sighash_all(&this_arg_conv, funding_redeemscript_ref, channel_value_satoshis).data, 32); - return ret_arr; -} - -int8_tArray __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_sign(uint32_t this_arg, int8_tArray funding_key, int8_tArray funding_redeemscript, int64_t channel_value_satoshis) { - LDKBuiltCommitmentTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char funding_key_arr[32]; - CHECK(*((uint32_t*)funding_key) == 32); - memcpy(funding_key_arr, (uint8_t*)(funding_key + 4), 32); - unsigned char (*funding_key_ref)[32] = &funding_key_arr; - LDKu8slice funding_redeemscript_ref; - funding_redeemscript_ref.datalen = *((uint32_t*)funding_redeemscript); - funding_redeemscript_ref.data = (int8_t*)(funding_redeemscript + 4); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), BuiltCommitmentTransaction_sign(&this_arg_conv, funding_key_ref, funding_redeemscript_ref, channel_value_satoshis).compact_form, 64); +int8_tArray __attribute__((visibility("default"))) TS_NodeAnnouncement_write(uint32_t obj) { + LDKNodeAnnouncement obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = NodeAnnouncement_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); return ret_arr; } -void __attribute__((visibility("default"))) TS_ClosingTransaction_free(uint32_t this_obj) { - LDKClosingTransaction this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ClosingTransaction_free(this_obj_conv); -} - -static inline uint64_t ClosingTransaction_clone_ptr(LDKClosingTransaction *NONNULL_PTR arg) { - LDKClosingTransaction ret_var = ClosingTransaction_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_ClosingTransaction_clone_ptr(uint32_t arg) { - LDKClosingTransaction arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ClosingTransaction_clone_ptr(&arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_ClosingTransaction_clone(uint32_t orig) { - LDKClosingTransaction orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKClosingTransaction ret_var = ClosingTransaction_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncement_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_NodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeAnnouncementDecodeErrorZ), "LDKCResult_NodeAnnouncementDecodeErrorZ"); + *ret_conv = NodeAnnouncement_read(ser_ref); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_ClosingTransaction_hash(uint32_t o) { - LDKClosingTransaction o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = ClosingTransaction_hash(&o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_QueryShortChannelIds_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_QueryShortChannelIdsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryShortChannelIdsDecodeErrorZ), "LDKCResult_QueryShortChannelIdsDecodeErrorZ"); + *ret_conv = QueryShortChannelIds_read(ser_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ClosingTransaction_new(int64_t to_holder_value_sat, int64_t to_counterparty_value_sat, int8_tArray to_holder_script, int8_tArray to_counterparty_script, uint32_t funding_outpoint) { - LDKCVec_u8Z to_holder_script_ref; - to_holder_script_ref.datalen = *((uint32_t*)to_holder_script); - to_holder_script_ref.data = MALLOC(to_holder_script_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(to_holder_script_ref.data, (uint8_t*)(to_holder_script + 4), to_holder_script_ref.datalen); - LDKCVec_u8Z to_counterparty_script_ref; - to_counterparty_script_ref.datalen = *((uint32_t*)to_counterparty_script); - to_counterparty_script_ref.data = MALLOC(to_counterparty_script_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(to_counterparty_script_ref.data, (uint8_t*)(to_counterparty_script + 4), to_counterparty_script_ref.datalen); - LDKOutPoint funding_outpoint_conv; - funding_outpoint_conv.inner = (void*)(funding_outpoint & (~1)); - funding_outpoint_conv.is_owned = (funding_outpoint & 1) || (funding_outpoint == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_outpoint_conv); - funding_outpoint_conv = OutPoint_clone(&funding_outpoint_conv); - LDKClosingTransaction ret_var = ClosingTransaction_new(to_holder_value_sat, to_counterparty_value_sat, to_holder_script_ref, to_counterparty_script_ref, funding_outpoint_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_QueryShortChannelIds_write(uint32_t obj) { + LDKQueryShortChannelIds obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = QueryShortChannelIds_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ClosingTransaction_trust(uint32_t this_arg) { - LDKClosingTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKTrustedClosingTransaction ret_var = ClosingTransaction_trust(&this_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_write(uint32_t obj) { + LDKReplyShortChannelIdsEnd obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ReplyShortChannelIdsEnd_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ClosingTransaction_verify(uint32_t this_arg, uint32_t funding_outpoint) { - LDKClosingTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKOutPoint funding_outpoint_conv; - funding_outpoint_conv.inner = (void*)(funding_outpoint & (~1)); - funding_outpoint_conv.is_owned = (funding_outpoint & 1) || (funding_outpoint == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_outpoint_conv); - funding_outpoint_conv = OutPoint_clone(&funding_outpoint_conv); - LDKCResult_TrustedClosingTransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TrustedClosingTransactionNoneZ), "LDKCResult_TrustedClosingTransactionNoneZ"); - *ret_conv = ClosingTransaction_verify(&this_arg_conv, funding_outpoint_conv); +uint32_t __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ), "LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ"); + *ret_conv = ReplyShortChannelIdsEnd_read(ser_ref); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_ClosingTransaction_to_holder_value_sat(uint32_t this_arg) { - LDKClosingTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = ClosingTransaction_to_holder_value_sat(&this_arg_conv); - return ret_val; -} - -int64_t __attribute__((visibility("default"))) TS_ClosingTransaction_to_counterparty_value_sat(uint32_t this_arg) { - LDKClosingTransaction this_arg_conv; +int32_t __attribute__((visibility("default"))) TS_QueryChannelRange_end_blocknum(uint32_t this_arg) { + LDKQueryChannelRange this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = ClosingTransaction_to_counterparty_value_sat(&this_arg_conv); + int32_t ret_val = QueryChannelRange_end_blocknum(&this_arg_conv); return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_ClosingTransaction_to_holder_script(uint32_t this_arg) { - LDKClosingTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKu8slice ret_var = ClosingTransaction_to_holder_script(&this_arg_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); +int8_tArray __attribute__((visibility("default"))) TS_QueryChannelRange_write(uint32_t obj) { + LDKQueryChannelRange obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = QueryChannelRange_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); return ret_arr; } -int8_tArray __attribute__((visibility("default"))) TS_ClosingTransaction_to_counterparty_script(uint32_t this_arg) { - LDKClosingTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKu8slice ret_var = ClosingTransaction_to_counterparty_script(&this_arg_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_QueryChannelRange_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_QueryChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryChannelRangeDecodeErrorZ), "LDKCResult_QueryChannelRangeDecodeErrorZ"); + *ret_conv = QueryChannelRange_read(ser_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_TrustedClosingTransaction_free(uint32_t this_obj) { - LDKTrustedClosingTransaction this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - TrustedClosingTransaction_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_ReplyChannelRange_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ReplyChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyChannelRangeDecodeErrorZ), "LDKCResult_ReplyChannelRangeDecodeErrorZ"); + *ret_conv = ReplyChannelRange_read(ser_ref); + return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_TrustedClosingTransaction_built_transaction(uint32_t this_arg) { - LDKTrustedClosingTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKTransaction ret_var = TrustedClosingTransaction_built_transaction(&this_arg_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - Transaction_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_ReplyChannelRange_write(uint32_t obj) { + LDKReplyChannelRange obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ReplyChannelRange_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); return ret_arr; } -int8_tArray __attribute__((visibility("default"))) TS_TrustedClosingTransaction_get_sighash_all(uint32_t this_arg, int8_tArray funding_redeemscript, int64_t channel_value_satoshis) { - LDKTrustedClosingTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKu8slice funding_redeemscript_ref; - funding_redeemscript_ref.datalen = *((uint32_t*)funding_redeemscript); - funding_redeemscript_ref.data = (int8_t*)(funding_redeemscript + 4); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), TrustedClosingTransaction_get_sighash_all(&this_arg_conv, funding_redeemscript_ref, channel_value_satoshis).data, 32); +int8_tArray __attribute__((visibility("default"))) TS_GossipTimestampFilter_write(uint32_t obj) { + LDKGossipTimestampFilter obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = GossipTimestampFilter_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); return ret_arr; } -int8_tArray __attribute__((visibility("default"))) TS_TrustedClosingTransaction_sign(uint32_t this_arg, int8_tArray funding_key, int8_tArray funding_redeemscript, int64_t channel_value_satoshis) { - LDKTrustedClosingTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char funding_key_arr[32]; - CHECK(*((uint32_t*)funding_key) == 32); - memcpy(funding_key_arr, (uint8_t*)(funding_key + 4), 32); - unsigned char (*funding_key_ref)[32] = &funding_key_arr; - LDKu8slice funding_redeemscript_ref; - funding_redeemscript_ref.datalen = *((uint32_t*)funding_redeemscript); - funding_redeemscript_ref.data = (int8_t*)(funding_redeemscript + 4); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), TrustedClosingTransaction_sign(&this_arg_conv, funding_key_ref, funding_redeemscript_ref, channel_value_satoshis).compact_form, 64); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_GossipTimestampFilterDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_GossipTimestampFilterDecodeErrorZ), "LDKCResult_GossipTimestampFilterDecodeErrorZ"); + *ret_conv = GossipTimestampFilter_read(ser_ref); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_CustomMessageHandler_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKCustomMessageHandler this_ptr_conv = *(LDKCustomMessageHandler*)(this_ptr_ptr); + FREE((void*)this_ptr); + CustomMessageHandler_free(this_ptr_conv); } -void __attribute__((visibility("default"))) TS_CommitmentTransaction_free(uint32_t this_obj) { - LDKCommitmentTransaction this_obj_conv; +void __attribute__((visibility("default"))) TS_IgnoringMessageHandler_free(uint32_t this_obj) { + LDKIgnoringMessageHandler this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - CommitmentTransaction_free(this_obj_conv); -} - -static inline uint64_t CommitmentTransaction_clone_ptr(LDKCommitmentTransaction *NONNULL_PTR arg) { - LDKCommitmentTransaction ret_var = CommitmentTransaction_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_CommitmentTransaction_clone_ptr(uint32_t arg) { - LDKCommitmentTransaction arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = CommitmentTransaction_clone_ptr(&arg_conv); - return ret_val; + IgnoringMessageHandler_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_CommitmentTransaction_clone(uint32_t orig) { - LDKCommitmentTransaction orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKCommitmentTransaction ret_var = CommitmentTransaction_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_IgnoringMessageHandler_new() { + LDKIgnoringMessageHandler ret_var = IgnoringMessageHandler_new(); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -30787,69 +28062,56 @@ uint32_t __attribute__((visibility("default"))) TS_CommitmentTransaction_clone( return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_CommitmentTransaction_write(uint32_t obj) { - LDKCommitmentTransaction obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = CommitmentTransaction_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_CommitmentTransaction_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_CommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentTransactionDecodeErrorZ), "LDKCResult_CommitmentTransactionDecodeErrorZ"); - *ret_conv = CommitmentTransaction_read(ser_ref); - return (uint64_t)ret_conv; -} - -int64_t __attribute__((visibility("default"))) TS_CommitmentTransaction_commitment_number(uint32_t this_arg) { - LDKCommitmentTransaction this_arg_conv; +uint32_t __attribute__((visibility("default"))) TS_IgnoringMessageHandler_as_MessageSendEventsProvider(uint32_t this_arg) { + LDKIgnoringMessageHandler this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = CommitmentTransaction_commitment_number(&this_arg_conv); - return ret_val; + LDKMessageSendEventsProvider* ret_ret = MALLOC(sizeof(LDKMessageSendEventsProvider), "LDKMessageSendEventsProvider"); + *ret_ret = IgnoringMessageHandler_as_MessageSendEventsProvider(&this_arg_conv); + return (uint64_t)ret_ret; } -int64_t __attribute__((visibility("default"))) TS_CommitmentTransaction_to_broadcaster_value_sat(uint32_t this_arg) { - LDKCommitmentTransaction this_arg_conv; +uint32_t __attribute__((visibility("default"))) TS_IgnoringMessageHandler_as_RoutingMessageHandler(uint32_t this_arg) { + LDKIgnoringMessageHandler this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = CommitmentTransaction_to_broadcaster_value_sat(&this_arg_conv); - return ret_val; + LDKRoutingMessageHandler* ret_ret = MALLOC(sizeof(LDKRoutingMessageHandler), "LDKRoutingMessageHandler"); + *ret_ret = IgnoringMessageHandler_as_RoutingMessageHandler(&this_arg_conv); + return (uint64_t)ret_ret; } -int64_t __attribute__((visibility("default"))) TS_CommitmentTransaction_to_countersignatory_value_sat(uint32_t this_arg) { - LDKCommitmentTransaction this_arg_conv; +uint32_t __attribute__((visibility("default"))) TS_IgnoringMessageHandler_as_CustomMessageReader(uint32_t this_arg) { + LDKIgnoringMessageHandler this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = CommitmentTransaction_to_countersignatory_value_sat(&this_arg_conv); - return ret_val; + LDKCustomMessageReader* ret_ret = MALLOC(sizeof(LDKCustomMessageReader), "LDKCustomMessageReader"); + *ret_ret = IgnoringMessageHandler_as_CustomMessageReader(&this_arg_conv); + return (uint64_t)ret_ret; } -int32_t __attribute__((visibility("default"))) TS_CommitmentTransaction_feerate_per_kw(uint32_t this_arg) { - LDKCommitmentTransaction this_arg_conv; +uint32_t __attribute__((visibility("default"))) TS_IgnoringMessageHandler_as_CustomMessageHandler(uint32_t this_arg) { + LDKIgnoringMessageHandler this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int32_t ret_val = CommitmentTransaction_feerate_per_kw(&this_arg_conv); - return ret_val; + LDKCustomMessageHandler* ret_ret = MALLOC(sizeof(LDKCustomMessageHandler), "LDKCustomMessageHandler"); + *ret_ret = IgnoringMessageHandler_as_CustomMessageHandler(&this_arg_conv); + return (uint64_t)ret_ret; } -uint32_t __attribute__((visibility("default"))) TS_CommitmentTransaction_trust(uint32_t this_arg) { - LDKCommitmentTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKTrustedCommitmentTransaction ret_var = CommitmentTransaction_trust(&this_arg_conv); +void __attribute__((visibility("default"))) TS_ErroringMessageHandler_free(uint32_t this_obj) { + LDKErroringMessageHandler this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + ErroringMessageHandler_free(this_obj_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_ErroringMessageHandler_new() { + LDKErroringMessageHandler ret_var = ErroringMessageHandler_new(); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -30861,69 +28123,84 @@ uint32_t __attribute__((visibility("default"))) TS_CommitmentTransaction_trust( return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CommitmentTransaction_verify(uint32_t this_arg, uint32_t channel_parameters, uint32_t broadcaster_keys, uint32_t countersignatory_keys) { - LDKCommitmentTransaction this_arg_conv; +uint32_t __attribute__((visibility("default"))) TS_ErroringMessageHandler_as_MessageSendEventsProvider(uint32_t this_arg) { + LDKErroringMessageHandler this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKDirectedChannelTransactionParameters channel_parameters_conv; - channel_parameters_conv.inner = (void*)(channel_parameters & (~1)); - channel_parameters_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_parameters_conv); - LDKChannelPublicKeys broadcaster_keys_conv; - broadcaster_keys_conv.inner = (void*)(broadcaster_keys & (~1)); - broadcaster_keys_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(broadcaster_keys_conv); - LDKChannelPublicKeys countersignatory_keys_conv; - countersignatory_keys_conv.inner = (void*)(countersignatory_keys & (~1)); - countersignatory_keys_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(countersignatory_keys_conv); - LDKCResult_TrustedCommitmentTransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TrustedCommitmentTransactionNoneZ), "LDKCResult_TrustedCommitmentTransactionNoneZ"); - *ret_conv = CommitmentTransaction_verify(&this_arg_conv, &channel_parameters_conv, &broadcaster_keys_conv, &countersignatory_keys_conv); - return (uint64_t)ret_conv; + LDKMessageSendEventsProvider* ret_ret = MALLOC(sizeof(LDKMessageSendEventsProvider), "LDKMessageSendEventsProvider"); + *ret_ret = ErroringMessageHandler_as_MessageSendEventsProvider(&this_arg_conv); + return (uint64_t)ret_ret; } -void __attribute__((visibility("default"))) TS_TrustedCommitmentTransaction_free(uint32_t this_obj) { - LDKTrustedCommitmentTransaction this_obj_conv; +uint32_t __attribute__((visibility("default"))) TS_ErroringMessageHandler_as_ChannelMessageHandler(uint32_t this_arg) { + LDKErroringMessageHandler this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKChannelMessageHandler* ret_ret = MALLOC(sizeof(LDKChannelMessageHandler), "LDKChannelMessageHandler"); + *ret_ret = ErroringMessageHandler_as_ChannelMessageHandler(&this_arg_conv); + return (uint64_t)ret_ret; +} + +void __attribute__((visibility("default"))) TS_MessageHandler_free(uint32_t this_obj) { + LDKMessageHandler this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - TrustedCommitmentTransaction_free(this_obj_conv); + MessageHandler_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_TrustedCommitmentTransaction_txid(uint32_t this_arg) { - LDKTrustedCommitmentTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), TrustedCommitmentTransaction_txid(&this_arg_conv).data, 32); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_MessageHandler_get_chan_handler(uint32_t this_ptr) { + LDKMessageHandler this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + // WARNING: This object doesn't live past this scope, needs clone! + uint64_t ret_ret = ((uint64_t)MessageHandler_get_chan_handler(&this_ptr_conv)) | 1; + return ret_ret; } -uint32_t __attribute__((visibility("default"))) TS_TrustedCommitmentTransaction_built_transaction(uint32_t this_arg) { - LDKTrustedCommitmentTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKBuiltCommitmentTransaction ret_var = TrustedCommitmentTransaction_built_transaction(&this_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_MessageHandler_set_chan_handler(uint32_t this_ptr, uint32_t val) { + LDKMessageHandler this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKChannelMessageHandler val_conv = *(LDKChannelMessageHandler*)(val_ptr); + MessageHandler_set_chan_handler(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_TrustedCommitmentTransaction_keys(uint32_t this_arg) { - LDKTrustedCommitmentTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKTxCreationKeys ret_var = TrustedCommitmentTransaction_keys(&this_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_MessageHandler_get_route_handler(uint32_t this_ptr) { + LDKMessageHandler this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + // WARNING: This object doesn't live past this scope, needs clone! + uint64_t ret_ret = ((uint64_t)MessageHandler_get_route_handler(&this_ptr_conv)) | 1; + return ret_ret; +} + +void __attribute__((visibility("default"))) TS_MessageHandler_set_route_handler(uint32_t this_ptr, uint32_t val) { + LDKMessageHandler this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKRoutingMessageHandler val_conv = *(LDKRoutingMessageHandler*)(val_ptr); + MessageHandler_set_route_handler(&this_ptr_conv, val_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_MessageHandler_new(uint32_t chan_handler_arg, uint32_t route_handler_arg) { + void* chan_handler_arg_ptr = (void*)(((uint64_t)chan_handler_arg) & ~1); + CHECK_ACCESS(chan_handler_arg_ptr); + LDKChannelMessageHandler chan_handler_arg_conv = *(LDKChannelMessageHandler*)(chan_handler_arg_ptr); + void* route_handler_arg_ptr = (void*)(((uint64_t)route_handler_arg) & ~1); + CHECK_ACCESS(route_handler_arg_ptr); + LDKRoutingMessageHandler route_handler_arg_conv = *(LDKRoutingMessageHandler*)(route_handler_arg_ptr); + LDKMessageHandler ret_var = MessageHandler_new(chan_handler_arg_conv, route_handler_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -30935,136 +28212,64 @@ uint32_t __attribute__((visibility("default"))) TS_TrustedCommitmentTransaction return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_TrustedCommitmentTransaction_opt_anchors(uint32_t this_arg) { - LDKTrustedCommitmentTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = TrustedCommitmentTransaction_opt_anchors(&this_arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_TrustedCommitmentTransaction_get_htlc_sigs(uint32_t this_arg, int8_tArray htlc_base_key, uint32_t channel_parameters) { - LDKTrustedCommitmentTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char htlc_base_key_arr[32]; - CHECK(*((uint32_t*)htlc_base_key) == 32); - memcpy(htlc_base_key_arr, (uint8_t*)(htlc_base_key + 4), 32); - unsigned char (*htlc_base_key_ref)[32] = &htlc_base_key_arr; - LDKDirectedChannelTransactionParameters channel_parameters_conv; - channel_parameters_conv.inner = (void*)(channel_parameters & (~1)); - channel_parameters_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_parameters_conv); - LDKCResult_CVec_SignatureZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_SignatureZNoneZ), "LDKCResult_CVec_SignatureZNoneZ"); - *ret_conv = TrustedCommitmentTransaction_get_htlc_sigs(&this_arg_conv, htlc_base_key_ref, &channel_parameters_conv); - return (uint64_t)ret_conv; -} - -int64_t __attribute__((visibility("default"))) TS_get_commitment_transaction_number_obscure_factor(int8_tArray broadcaster_payment_basepoint, int8_tArray countersignatory_payment_basepoint, jboolean outbound_from_broadcaster) { - LDKPublicKey broadcaster_payment_basepoint_ref; - CHECK(*((uint32_t*)broadcaster_payment_basepoint) == 33); - memcpy(broadcaster_payment_basepoint_ref.compressed_form, (uint8_t*)(broadcaster_payment_basepoint + 4), 33); - LDKPublicKey countersignatory_payment_basepoint_ref; - CHECK(*((uint32_t*)countersignatory_payment_basepoint) == 33); - memcpy(countersignatory_payment_basepoint_ref.compressed_form, (uint8_t*)(countersignatory_payment_basepoint + 4), 33); - int64_t ret_val = get_commitment_transaction_number_obscure_factor(broadcaster_payment_basepoint_ref, countersignatory_payment_basepoint_ref, outbound_from_broadcaster); - return ret_val; +static inline uint64_t SocketDescriptor_clone_ptr(LDKSocketDescriptor *NONNULL_PTR arg) { + LDKSocketDescriptor* ret_ret = MALLOC(sizeof(LDKSocketDescriptor), "LDKSocketDescriptor"); + *ret_ret = SocketDescriptor_clone(arg); + return (uint64_t)ret_ret; } - -jboolean __attribute__((visibility("default"))) TS_InitFeatures_eq(uint32_t a, uint32_t b) { - LDKInitFeatures a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKInitFeatures b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = InitFeatures_eq(&a_conv, &b_conv); +int64_t __attribute__((visibility("default"))) TS_SocketDescriptor_clone_ptr(uint32_t arg) { + void* arg_ptr = (void*)(((uint64_t)arg) & ~1); + if (!(arg & 1)) { CHECK_ACCESS(arg_ptr); } + LDKSocketDescriptor* arg_conv = (LDKSocketDescriptor*)arg_ptr; + int64_t ret_val = SocketDescriptor_clone_ptr(arg_conv); return ret_val; } -jboolean __attribute__((visibility("default"))) TS_NodeFeatures_eq(uint32_t a, uint32_t b) { - LDKNodeFeatures a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKNodeFeatures b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = NodeFeatures_eq(&a_conv, &b_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_SocketDescriptor_clone(uint32_t orig) { + void* orig_ptr = (void*)(((uint64_t)orig) & ~1); + if (!(orig & 1)) { CHECK_ACCESS(orig_ptr); } + LDKSocketDescriptor* orig_conv = (LDKSocketDescriptor*)orig_ptr; + LDKSocketDescriptor* ret_ret = MALLOC(sizeof(LDKSocketDescriptor), "LDKSocketDescriptor"); + *ret_ret = SocketDescriptor_clone(orig_conv); + return (uint64_t)ret_ret; } -jboolean __attribute__((visibility("default"))) TS_ChannelFeatures_eq(uint32_t a, uint32_t b) { - LDKChannelFeatures a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKChannelFeatures b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = ChannelFeatures_eq(&a_conv, &b_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_SocketDescriptor_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKSocketDescriptor this_ptr_conv = *(LDKSocketDescriptor*)(this_ptr_ptr); + FREE((void*)this_ptr); + SocketDescriptor_free(this_ptr_conv); } -jboolean __attribute__((visibility("default"))) TS_InvoiceFeatures_eq(uint32_t a, uint32_t b) { - LDKInvoiceFeatures a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKInvoiceFeatures b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = InvoiceFeatures_eq(&a_conv, &b_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_PeerHandleError_free(uint32_t this_obj) { + LDKPeerHandleError this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + PeerHandleError_free(this_obj_conv); } -jboolean __attribute__((visibility("default"))) TS_ChannelTypeFeatures_eq(uint32_t a, uint32_t b) { - LDKChannelTypeFeatures a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKChannelTypeFeatures b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = ChannelTypeFeatures_eq(&a_conv, &b_conv); +jboolean __attribute__((visibility("default"))) TS_PeerHandleError_get_no_connection_possible(uint32_t this_ptr) { + LDKPeerHandleError this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + jboolean ret_val = PeerHandleError_get_no_connection_possible(&this_ptr_conv); return ret_val; } -static inline uint64_t InitFeatures_clone_ptr(LDKInitFeatures *NONNULL_PTR arg) { - LDKInitFeatures ret_var = InitFeatures_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_InitFeatures_clone_ptr(uint32_t arg) { - LDKInitFeatures arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = InitFeatures_clone_ptr(&arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_PeerHandleError_set_no_connection_possible(uint32_t this_ptr, jboolean val) { + LDKPeerHandleError this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + PeerHandleError_set_no_connection_possible(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_InitFeatures_clone(uint32_t orig) { - LDKInitFeatures orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKInitFeatures ret_var = InitFeatures_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_PeerHandleError_new(jboolean no_connection_possible_arg) { + LDKPeerHandleError ret_var = PeerHandleError_new(no_connection_possible_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -31076,8 +28281,8 @@ uint32_t __attribute__((visibility("default"))) TS_InitFeatures_clone(uint32_t return ret_ref; } -static inline uint64_t NodeFeatures_clone_ptr(LDKNodeFeatures *NONNULL_PTR arg) { - LDKNodeFeatures ret_var = NodeFeatures_clone(arg); +static inline uint64_t PeerHandleError_clone_ptr(LDKPeerHandleError *NONNULL_PTR arg) { + LDKPeerHandleError ret_var = PeerHandleError_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -31088,21 +28293,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_NodeFeatures_clone_ptr(uint32_t arg) { - LDKNodeFeatures arg_conv; +int64_t __attribute__((visibility("default"))) TS_PeerHandleError_clone_ptr(uint32_t arg) { + LDKPeerHandleError arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = NodeFeatures_clone_ptr(&arg_conv); + int64_t ret_val = PeerHandleError_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_NodeFeatures_clone(uint32_t orig) { - LDKNodeFeatures orig_conv; +uint32_t __attribute__((visibility("default"))) TS_PeerHandleError_clone(uint32_t orig) { + LDKPeerHandleError orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKNodeFeatures ret_var = NodeFeatures_clone(&orig_conv); + LDKPeerHandleError ret_var = PeerHandleError_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -31114,33 +28319,34 @@ uint32_t __attribute__((visibility("default"))) TS_NodeFeatures_clone(uint32_t return ret_ref; } -static inline uint64_t ChannelFeatures_clone_ptr(LDKChannelFeatures *NONNULL_PTR arg) { - LDKChannelFeatures ret_var = ChannelFeatures_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_ChannelFeatures_clone_ptr(uint32_t arg) { - LDKChannelFeatures arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelFeatures_clone_ptr(&arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_PeerManager_free(uint32_t this_obj) { + LDKPeerManager this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + PeerManager_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChannelFeatures_clone(uint32_t orig) { - LDKChannelFeatures orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelFeatures ret_var = ChannelFeatures_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_PeerManager_new(uint32_t message_handler, int8_tArray our_node_secret, int8_tArray ephemeral_random_data, uint32_t logger, uint32_t custom_message_handler) { + LDKMessageHandler message_handler_conv; + message_handler_conv.inner = (void*)(message_handler & (~1)); + message_handler_conv.is_owned = (message_handler & 1) || (message_handler == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(message_handler_conv); + // Warning: we need a move here but no clone is available for LDKMessageHandler + LDKSecretKey our_node_secret_ref; + CHECK(our_node_secret->arr_len == 32); + memcpy(our_node_secret_ref.bytes, our_node_secret->elems, 32); + unsigned char ephemeral_random_data_arr[32]; + CHECK(ephemeral_random_data->arr_len == 32); + memcpy(ephemeral_random_data_arr, ephemeral_random_data->elems, 32); + unsigned char (*ephemeral_random_data_ref)[32] = &ephemeral_random_data_arr; + void* logger_ptr = (void*)(((uint64_t)logger) & ~1); + CHECK_ACCESS(logger_ptr); + LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); + void* custom_message_handler_ptr = (void*)(((uint64_t)custom_message_handler) & ~1); + CHECK_ACCESS(custom_message_handler_ptr); + LDKCustomMessageHandler custom_message_handler_conv = *(LDKCustomMessageHandler*)(custom_message_handler_ptr); + LDKPeerManager ret_var = PeerManager_new(message_handler_conv, our_node_secret_ref, ephemeral_random_data_ref, logger_conv, custom_message_handler_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -31152,242 +28358,351 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelFeatures_clone(uint32 return ret_ref; } -static inline uint64_t InvoiceFeatures_clone_ptr(LDKInvoiceFeatures *NONNULL_PTR arg) { - LDKInvoiceFeatures ret_var = InvoiceFeatures_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; +ptrArray __attribute__((visibility("default"))) TS_PeerManager_get_peer_node_ids(uint32_t this_arg) { + LDKPeerManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKCVec_PublicKeyZ ret_var = PeerManager_get_peer_node_ids(&this_arg_conv); + ptrArray ret_arr = NULL; + ret_arr = init_ptrArray(ret_var.datalen); + int8_tArray *ret_arr_ptr = (int8_tArray*)(ret_arr + 4); + for (size_t m = 0; m < ret_var.datalen; m++) { + int8_tArray ret_conv_12_arr = init_int8_tArray(33); + memcpy(ret_conv_12_arr->elems, ret_var.data[m].compressed_form, 33); + ret_arr_ptr[m] = ret_conv_12_arr; + } + + FREE(ret_var.data); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_PeerManager_new_outbound_connection(uint32_t this_arg, int8_tArray their_node_id, uint32_t descriptor) { + LDKPeerManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + void* descriptor_ptr = (void*)(((uint64_t)descriptor) & ~1); + CHECK_ACCESS(descriptor_ptr); + LDKSocketDescriptor descriptor_conv = *(LDKSocketDescriptor*)(descriptor_ptr); + LDKCResult_CVec_u8ZPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_u8ZPeerHandleErrorZ), "LDKCResult_CVec_u8ZPeerHandleErrorZ"); + *ret_conv = PeerManager_new_outbound_connection(&this_arg_conv, their_node_id_ref, descriptor_conv); + return (uint64_t)ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_PeerManager_new_inbound_connection(uint32_t this_arg, uint32_t descriptor) { + LDKPeerManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + void* descriptor_ptr = (void*)(((uint64_t)descriptor) & ~1); + CHECK_ACCESS(descriptor_ptr); + LDKSocketDescriptor descriptor_conv = *(LDKSocketDescriptor*)(descriptor_ptr); + LDKCResult_NonePeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePeerHandleErrorZ), "LDKCResult_NonePeerHandleErrorZ"); + *ret_conv = PeerManager_new_inbound_connection(&this_arg_conv, descriptor_conv); + return (uint64_t)ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_PeerManager_write_buffer_space_avail(uint32_t this_arg, uint32_t descriptor) { + LDKPeerManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + void* descriptor_ptr = (void*)(((uint64_t)descriptor) & ~1); + if (!(descriptor & 1)) { CHECK_ACCESS(descriptor_ptr); } + LDKSocketDescriptor* descriptor_conv = (LDKSocketDescriptor*)descriptor_ptr; + LDKCResult_NonePeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePeerHandleErrorZ), "LDKCResult_NonePeerHandleErrorZ"); + *ret_conv = PeerManager_write_buffer_space_avail(&this_arg_conv, descriptor_conv); + return (uint64_t)ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_PeerManager_read_event(uint32_t this_arg, uint32_t peer_descriptor, int8_tArray data) { + LDKPeerManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + void* peer_descriptor_ptr = (void*)(((uint64_t)peer_descriptor) & ~1); + if (!(peer_descriptor & 1)) { CHECK_ACCESS(peer_descriptor_ptr); } + LDKSocketDescriptor* peer_descriptor_conv = (LDKSocketDescriptor*)peer_descriptor_ptr; + LDKu8slice data_ref; + data_ref.datalen = data->arr_len; + data_ref.data = data->elems; + LDKCResult_boolPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolPeerHandleErrorZ), "LDKCResult_boolPeerHandleErrorZ"); + *ret_conv = PeerManager_read_event(&this_arg_conv, peer_descriptor_conv, data_ref); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_PeerManager_process_events(uint32_t this_arg) { + LDKPeerManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + PeerManager_process_events(&this_arg_conv); +} + +void __attribute__((visibility("default"))) TS_PeerManager_socket_disconnected(uint32_t this_arg, uint32_t descriptor) { + LDKPeerManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + void* descriptor_ptr = (void*)(((uint64_t)descriptor) & ~1); + if (!(descriptor & 1)) { CHECK_ACCESS(descriptor_ptr); } + LDKSocketDescriptor* descriptor_conv = (LDKSocketDescriptor*)descriptor_ptr; + PeerManager_socket_disconnected(&this_arg_conv, descriptor_conv); } -int64_t __attribute__((visibility("default"))) TS_InvoiceFeatures_clone_ptr(uint32_t arg) { - LDKInvoiceFeatures arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = InvoiceFeatures_clone_ptr(&arg_conv); - return ret_val; + +void __attribute__((visibility("default"))) TS_PeerManager_disconnect_by_node_id(uint32_t this_arg, int8_tArray node_id, jboolean no_connection_possible) { + LDKPeerManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + PeerManager_disconnect_by_node_id(&this_arg_conv, node_id_ref, no_connection_possible); } -uint32_t __attribute__((visibility("default"))) TS_InvoiceFeatures_clone(uint32_t orig) { - LDKInvoiceFeatures orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKInvoiceFeatures ret_var = InvoiceFeatures_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_PeerManager_disconnect_all_peers(uint32_t this_arg) { + LDKPeerManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + PeerManager_disconnect_all_peers(&this_arg_conv); } -static inline uint64_t ChannelTypeFeatures_clone_ptr(LDKChannelTypeFeatures *NONNULL_PTR arg) { - LDKChannelTypeFeatures ret_var = ChannelTypeFeatures_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; +void __attribute__((visibility("default"))) TS_PeerManager_timer_tick_occurred(uint32_t this_arg) { + LDKPeerManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + PeerManager_timer_tick_occurred(&this_arg_conv); } - return ret_ref; + +int64_t __attribute__((visibility("default"))) TS_htlc_success_tx_weight(jboolean opt_anchors) { + int64_t ret_val = htlc_success_tx_weight(opt_anchors); + return ret_val; } -int64_t __attribute__((visibility("default"))) TS_ChannelTypeFeatures_clone_ptr(uint32_t arg) { - LDKChannelTypeFeatures arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelTypeFeatures_clone_ptr(&arg_conv); + +int64_t __attribute__((visibility("default"))) TS_htlc_timeout_tx_weight(jboolean opt_anchors) { + int64_t ret_val = htlc_timeout_tx_weight(opt_anchors); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelTypeFeatures_clone(uint32_t orig) { - LDKChannelTypeFeatures orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelTypeFeatures ret_var = ChannelTypeFeatures_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_build_commitment_secret(int8_tArray commitment_seed, int64_t idx) { + unsigned char commitment_seed_arr[32]; + CHECK(commitment_seed->arr_len == 32); + memcpy(commitment_seed_arr, commitment_seed->elems, 32); + unsigned char (*commitment_seed_ref)[32] = &commitment_seed_arr; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, build_commitment_secret(commitment_seed_ref, idx).data, 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_InitFeatures_free(uint32_t this_obj) { - LDKInitFeatures this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - InitFeatures_free(this_obj_conv); +int8_tArray __attribute__((visibility("default"))) TS_build_closing_transaction(int64_t to_holder_value_sat, int64_t to_counterparty_value_sat, int8_tArray to_holder_script, int8_tArray to_counterparty_script, uint32_t funding_outpoint) { + LDKCVec_u8Z to_holder_script_ref; + to_holder_script_ref.datalen = to_holder_script->arr_len; + to_holder_script_ref.data = MALLOC(to_holder_script_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(to_holder_script_ref.data, to_holder_script->elems, to_holder_script_ref.datalen); + LDKCVec_u8Z to_counterparty_script_ref; + to_counterparty_script_ref.datalen = to_counterparty_script->arr_len; + to_counterparty_script_ref.data = MALLOC(to_counterparty_script_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(to_counterparty_script_ref.data, to_counterparty_script->elems, to_counterparty_script_ref.datalen); + LDKOutPoint funding_outpoint_conv; + funding_outpoint_conv.inner = (void*)(funding_outpoint & (~1)); + funding_outpoint_conv.is_owned = (funding_outpoint & 1) || (funding_outpoint == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_outpoint_conv); + funding_outpoint_conv = OutPoint_clone(&funding_outpoint_conv); + LDKTransaction ret_var = build_closing_transaction(to_holder_value_sat, to_counterparty_value_sat, to_holder_script_ref, to_counterparty_script_ref, funding_outpoint_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + Transaction_free(ret_var); + return ret_arr; } -void __attribute__((visibility("default"))) TS_NodeFeatures_free(uint32_t this_obj) { - LDKNodeFeatures this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - NodeFeatures_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_derive_private_key(int8_tArray per_commitment_point, int8_tArray base_secret) { + LDKPublicKey per_commitment_point_ref; + CHECK(per_commitment_point->arr_len == 33); + memcpy(per_commitment_point_ref.compressed_form, per_commitment_point->elems, 33); + unsigned char base_secret_arr[32]; + CHECK(base_secret->arr_len == 32); + memcpy(base_secret_arr, base_secret->elems, 32); + unsigned char (*base_secret_ref)[32] = &base_secret_arr; + LDKCResult_SecretKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SecretKeyErrorZ), "LDKCResult_SecretKeyErrorZ"); + *ret_conv = derive_private_key(per_commitment_point_ref, base_secret_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_ChannelFeatures_free(uint32_t this_obj) { - LDKChannelFeatures this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelFeatures_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_derive_public_key(int8_tArray per_commitment_point, int8_tArray base_point) { + LDKPublicKey per_commitment_point_ref; + CHECK(per_commitment_point->arr_len == 33); + memcpy(per_commitment_point_ref.compressed_form, per_commitment_point->elems, 33); + LDKPublicKey base_point_ref; + CHECK(base_point->arr_len == 33); + memcpy(base_point_ref.compressed_form, base_point->elems, 33); + LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); + *ret_conv = derive_public_key(per_commitment_point_ref, base_point_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_InvoiceFeatures_free(uint32_t this_obj) { - LDKInvoiceFeatures this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - InvoiceFeatures_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_derive_private_revocation_key(int8_tArray per_commitment_secret, int8_tArray countersignatory_revocation_base_secret) { + unsigned char per_commitment_secret_arr[32]; + CHECK(per_commitment_secret->arr_len == 32); + memcpy(per_commitment_secret_arr, per_commitment_secret->elems, 32); + unsigned char (*per_commitment_secret_ref)[32] = &per_commitment_secret_arr; + unsigned char countersignatory_revocation_base_secret_arr[32]; + CHECK(countersignatory_revocation_base_secret->arr_len == 32); + memcpy(countersignatory_revocation_base_secret_arr, countersignatory_revocation_base_secret->elems, 32); + unsigned char (*countersignatory_revocation_base_secret_ref)[32] = &countersignatory_revocation_base_secret_arr; + LDKCResult_SecretKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SecretKeyErrorZ), "LDKCResult_SecretKeyErrorZ"); + *ret_conv = derive_private_revocation_key(per_commitment_secret_ref, countersignatory_revocation_base_secret_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_ChannelTypeFeatures_free(uint32_t this_obj) { - LDKChannelTypeFeatures this_obj_conv; +uint32_t __attribute__((visibility("default"))) TS_derive_public_revocation_key(int8_tArray per_commitment_point, int8_tArray countersignatory_revocation_base_point) { + LDKPublicKey per_commitment_point_ref; + CHECK(per_commitment_point->arr_len == 33); + memcpy(per_commitment_point_ref.compressed_form, per_commitment_point->elems, 33); + LDKPublicKey countersignatory_revocation_base_point_ref; + CHECK(countersignatory_revocation_base_point->arr_len == 33); + memcpy(countersignatory_revocation_base_point_ref.compressed_form, countersignatory_revocation_base_point->elems, 33); + LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); + *ret_conv = derive_public_revocation_key(per_commitment_point_ref, countersignatory_revocation_base_point_ref); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_TxCreationKeys_free(uint32_t this_obj) { + LDKTxCreationKeys this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelTypeFeatures_free(this_obj_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_InitFeatures_empty() { - LDKInitFeatures ret_var = InitFeatures_empty(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + TxCreationKeys_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_InitFeatures_known() { - LDKInitFeatures ret_var = InitFeatures_known(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_TxCreationKeys_get_per_commitment_point(uint32_t this_ptr) { + LDKTxCreationKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, TxCreationKeys_get_per_commitment_point(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -jboolean __attribute__((visibility("default"))) TS_InitFeatures_requires_unknown_bits(uint32_t this_arg) { - LDKInitFeatures this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = InitFeatures_requires_unknown_bits(&this_arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_TxCreationKeys_set_per_commitment_point(uint32_t this_ptr, int8_tArray val) { + LDKTxCreationKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + TxCreationKeys_set_per_commitment_point(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_NodeFeatures_empty() { - LDKNodeFeatures ret_var = NodeFeatures_empty(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_TxCreationKeys_get_revocation_key(uint32_t this_ptr) { + LDKTxCreationKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, TxCreationKeys_get_revocation_key(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_NodeFeatures_known() { - LDKNodeFeatures ret_var = NodeFeatures_known(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_TxCreationKeys_set_revocation_key(uint32_t this_ptr, int8_tArray val) { + LDKTxCreationKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + TxCreationKeys_set_revocation_key(&this_ptr_conv, val_ref); } -jboolean __attribute__((visibility("default"))) TS_NodeFeatures_requires_unknown_bits(uint32_t this_arg) { - LDKNodeFeatures this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = NodeFeatures_requires_unknown_bits(&this_arg_conv); - return ret_val; +int8_tArray __attribute__((visibility("default"))) TS_TxCreationKeys_get_broadcaster_htlc_key(uint32_t this_ptr) { + LDKTxCreationKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, TxCreationKeys_get_broadcaster_htlc_key(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelFeatures_empty() { - LDKChannelFeatures ret_var = ChannelFeatures_empty(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_TxCreationKeys_set_broadcaster_htlc_key(uint32_t this_ptr, int8_tArray val) { + LDKTxCreationKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + TxCreationKeys_set_broadcaster_htlc_key(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_ChannelFeatures_known() { - LDKChannelFeatures ret_var = ChannelFeatures_known(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_TxCreationKeys_get_countersignatory_htlc_key(uint32_t this_ptr) { + LDKTxCreationKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, TxCreationKeys_get_countersignatory_htlc_key(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -jboolean __attribute__((visibility("default"))) TS_ChannelFeatures_requires_unknown_bits(uint32_t this_arg) { - LDKChannelFeatures this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = ChannelFeatures_requires_unknown_bits(&this_arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_TxCreationKeys_set_countersignatory_htlc_key(uint32_t this_ptr, int8_tArray val) { + LDKTxCreationKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + TxCreationKeys_set_countersignatory_htlc_key(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_InvoiceFeatures_empty() { - LDKInvoiceFeatures ret_var = InvoiceFeatures_empty(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_TxCreationKeys_get_broadcaster_delayed_payment_key(uint32_t this_ptr) { + LDKTxCreationKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, TxCreationKeys_get_broadcaster_delayed_payment_key(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_InvoiceFeatures_known() { - LDKInvoiceFeatures ret_var = InvoiceFeatures_known(); +void __attribute__((visibility("default"))) TS_TxCreationKeys_set_broadcaster_delayed_payment_key(uint32_t this_ptr, int8_tArray val) { + LDKTxCreationKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + TxCreationKeys_set_broadcaster_delayed_payment_key(&this_ptr_conv, val_ref); +} + +uint32_t __attribute__((visibility("default"))) TS_TxCreationKeys_new(int8_tArray per_commitment_point_arg, int8_tArray revocation_key_arg, int8_tArray broadcaster_htlc_key_arg, int8_tArray countersignatory_htlc_key_arg, int8_tArray broadcaster_delayed_payment_key_arg) { + LDKPublicKey per_commitment_point_arg_ref; + CHECK(per_commitment_point_arg->arr_len == 33); + memcpy(per_commitment_point_arg_ref.compressed_form, per_commitment_point_arg->elems, 33); + LDKPublicKey revocation_key_arg_ref; + CHECK(revocation_key_arg->arr_len == 33); + memcpy(revocation_key_arg_ref.compressed_form, revocation_key_arg->elems, 33); + LDKPublicKey broadcaster_htlc_key_arg_ref; + CHECK(broadcaster_htlc_key_arg->arr_len == 33); + memcpy(broadcaster_htlc_key_arg_ref.compressed_form, broadcaster_htlc_key_arg->elems, 33); + LDKPublicKey countersignatory_htlc_key_arg_ref; + CHECK(countersignatory_htlc_key_arg->arr_len == 33); + memcpy(countersignatory_htlc_key_arg_ref.compressed_form, countersignatory_htlc_key_arg->elems, 33); + LDKPublicKey broadcaster_delayed_payment_key_arg_ref; + CHECK(broadcaster_delayed_payment_key_arg->arr_len == 33); + memcpy(broadcaster_delayed_payment_key_arg_ref.compressed_form, broadcaster_delayed_payment_key_arg->elems, 33); + LDKTxCreationKeys ret_var = TxCreationKeys_new(per_commitment_point_arg_ref, revocation_key_arg_ref, broadcaster_htlc_key_arg_ref, countersignatory_htlc_key_arg_ref, broadcaster_delayed_payment_key_arg_ref); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -31399,30 +28714,33 @@ uint32_t __attribute__((visibility("default"))) TS_InvoiceFeatures_known() { return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_InvoiceFeatures_requires_unknown_bits(uint32_t this_arg) { - LDKInvoiceFeatures this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = InvoiceFeatures_requires_unknown_bits(&this_arg_conv); - return ret_val; +static inline uint64_t TxCreationKeys_clone_ptr(LDKTxCreationKeys *NONNULL_PTR arg) { + LDKTxCreationKeys ret_var = TxCreationKeys_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -uint32_t __attribute__((visibility("default"))) TS_ChannelTypeFeatures_empty() { - LDKChannelTypeFeatures ret_var = ChannelTypeFeatures_empty(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } return ret_ref; } +int64_t __attribute__((visibility("default"))) TS_TxCreationKeys_clone_ptr(uint32_t arg) { + LDKTxCreationKeys arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = TxCreationKeys_clone_ptr(&arg_conv); + return ret_val; +} -uint32_t __attribute__((visibility("default"))) TS_ChannelTypeFeatures_known() { - LDKChannelTypeFeatures ret_var = ChannelTypeFeatures_known(); +uint32_t __attribute__((visibility("default"))) TS_TxCreationKeys_clone(uint32_t orig) { + LDKTxCreationKeys orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKTxCreationKeys ret_var = TxCreationKeys_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -31434,203 +28752,157 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelTypeFeatures_known() return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_ChannelTypeFeatures_requires_unknown_bits(uint32_t this_arg) { - LDKChannelTypeFeatures this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = ChannelTypeFeatures_requires_unknown_bits(&this_arg_conv); - return ret_val; -} - -int8_tArray __attribute__((visibility("default"))) TS_InitFeatures_write(uint32_t obj) { - LDKInitFeatures obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = InitFeatures_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_InitFeatures_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_InitFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitFeaturesDecodeErrorZ), "LDKCResult_InitFeaturesDecodeErrorZ"); - *ret_conv = InitFeatures_read(ser_ref); - return (uint64_t)ret_conv; -} - -int8_tArray __attribute__((visibility("default"))) TS_ChannelFeatures_write(uint32_t obj) { - LDKChannelFeatures obj_conv; +int8_tArray __attribute__((visibility("default"))) TS_TxCreationKeys_write(uint32_t obj) { + LDKTxCreationKeys obj_conv; obj_conv.inner = (void*)(obj & (~1)); obj_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ChannelFeatures_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + LDKCVec_u8Z ret_var = TxCreationKeys_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelFeatures_read(int8_tArray ser) { +uint32_t __attribute__((visibility("default"))) TS_TxCreationKeys_read(int8_tArray ser) { LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ChannelFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelFeaturesDecodeErrorZ), "LDKCResult_ChannelFeaturesDecodeErrorZ"); - *ret_conv = ChannelFeatures_read(ser_ref); + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_TxCreationKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysDecodeErrorZ), "LDKCResult_TxCreationKeysDecodeErrorZ"); + *ret_conv = TxCreationKeys_read(ser_ref); return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_NodeFeatures_write(uint32_t obj) { - LDKNodeFeatures obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = NodeFeatures_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_NodeFeatures_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_NodeFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeFeaturesDecodeErrorZ), "LDKCResult_NodeFeaturesDecodeErrorZ"); - *ret_conv = NodeFeatures_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_ChannelPublicKeys_free(uint32_t this_obj) { + LDKChannelPublicKeys this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + ChannelPublicKeys_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_InvoiceFeatures_write(uint32_t obj) { - LDKInvoiceFeatures obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = InvoiceFeatures_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_ChannelPublicKeys_get_funding_pubkey(uint32_t this_ptr) { + LDKChannelPublicKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, ChannelPublicKeys_get_funding_pubkey(&this_ptr_conv).compressed_form, 33); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_InvoiceFeatures_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_InvoiceFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceFeaturesDecodeErrorZ), "LDKCResult_InvoiceFeaturesDecodeErrorZ"); - *ret_conv = InvoiceFeatures_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_ChannelPublicKeys_set_funding_pubkey(uint32_t this_ptr, int8_tArray val) { + LDKChannelPublicKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + ChannelPublicKeys_set_funding_pubkey(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_ChannelTypeFeatures_write(uint32_t obj) { - LDKChannelTypeFeatures obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ChannelTypeFeatures_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_ChannelPublicKeys_get_revocation_basepoint(uint32_t this_ptr) { + LDKChannelPublicKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, ChannelPublicKeys_get_revocation_basepoint(&this_ptr_conv).compressed_form, 33); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelTypeFeatures_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ChannelTypeFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTypeFeaturesDecodeErrorZ), "LDKCResult_ChannelTypeFeaturesDecodeErrorZ"); - *ret_conv = ChannelTypeFeatures_read(ser_ref); - return (uint64_t)ret_conv; -} - -void __attribute__((visibility("default"))) TS_ShutdownScript_free(uint32_t this_obj) { - LDKShutdownScript this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ShutdownScript_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_ChannelPublicKeys_set_revocation_basepoint(uint32_t this_ptr, int8_tArray val) { + LDKChannelPublicKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + ChannelPublicKeys_set_revocation_basepoint(&this_ptr_conv, val_ref); } -static inline uint64_t ShutdownScript_clone_ptr(LDKShutdownScript *NONNULL_PTR arg) { - LDKShutdownScript ret_var = ShutdownScript_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_ChannelPublicKeys_get_payment_point(uint32_t this_ptr) { + LDKChannelPublicKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, ChannelPublicKeys_get_payment_point(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -int64_t __attribute__((visibility("default"))) TS_ShutdownScript_clone_ptr(uint32_t arg) { - LDKShutdownScript arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ShutdownScript_clone_ptr(&arg_conv); - return ret_val; + +void __attribute__((visibility("default"))) TS_ChannelPublicKeys_set_payment_point(uint32_t this_ptr, int8_tArray val) { + LDKChannelPublicKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + ChannelPublicKeys_set_payment_point(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_ShutdownScript_clone(uint32_t orig) { - LDKShutdownScript orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKShutdownScript ret_var = ShutdownScript_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_ChannelPublicKeys_get_delayed_payment_basepoint(uint32_t this_ptr) { + LDKChannelPublicKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, ChannelPublicKeys_get_delayed_payment_basepoint(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -void __attribute__((visibility("default"))) TS_InvalidShutdownScript_free(uint32_t this_obj) { - LDKInvalidShutdownScript this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - InvalidShutdownScript_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_ChannelPublicKeys_set_delayed_payment_basepoint(uint32_t this_ptr, int8_tArray val) { + LDKChannelPublicKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + ChannelPublicKeys_set_delayed_payment_basepoint(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_InvalidShutdownScript_get_script(uint32_t this_ptr) { - LDKInvalidShutdownScript this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_ChannelPublicKeys_get_htlc_basepoint(uint32_t this_ptr) { + LDKChannelPublicKeys this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKu8slice ret_var = InvalidShutdownScript_get_script(&this_ptr_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, ChannelPublicKeys_get_htlc_basepoint(&this_ptr_conv).compressed_form, 33); return ret_arr; } -void __attribute__((visibility("default"))) TS_InvalidShutdownScript_set_script(uint32_t this_ptr, int8_tArray val) { - LDKInvalidShutdownScript this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelPublicKeys_set_htlc_basepoint(uint32_t this_ptr, int8_tArray val) { + LDKChannelPublicKeys this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_u8Z val_ref; - val_ref.datalen = *((uint32_t*)val); - val_ref.data = MALLOC(val_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(val_ref.data, (uint8_t*)(val + 4), val_ref.datalen); - InvalidShutdownScript_set_script(&this_ptr_conv, val_ref); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + ChannelPublicKeys_set_htlc_basepoint(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_InvalidShutdownScript_new(int8_tArray script_arg) { - LDKCVec_u8Z script_arg_ref; - script_arg_ref.datalen = *((uint32_t*)script_arg); - script_arg_ref.data = MALLOC(script_arg_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(script_arg_ref.data, (uint8_t*)(script_arg + 4), script_arg_ref.datalen); - LDKInvalidShutdownScript ret_var = InvalidShutdownScript_new(script_arg_ref); +uint32_t __attribute__((visibility("default"))) TS_ChannelPublicKeys_new(int8_tArray funding_pubkey_arg, int8_tArray revocation_basepoint_arg, int8_tArray payment_point_arg, int8_tArray delayed_payment_basepoint_arg, int8_tArray htlc_basepoint_arg) { + LDKPublicKey funding_pubkey_arg_ref; + CHECK(funding_pubkey_arg->arr_len == 33); + memcpy(funding_pubkey_arg_ref.compressed_form, funding_pubkey_arg->elems, 33); + LDKPublicKey revocation_basepoint_arg_ref; + CHECK(revocation_basepoint_arg->arr_len == 33); + memcpy(revocation_basepoint_arg_ref.compressed_form, revocation_basepoint_arg->elems, 33); + LDKPublicKey payment_point_arg_ref; + CHECK(payment_point_arg->arr_len == 33); + memcpy(payment_point_arg_ref.compressed_form, payment_point_arg->elems, 33); + LDKPublicKey delayed_payment_basepoint_arg_ref; + CHECK(delayed_payment_basepoint_arg->arr_len == 33); + memcpy(delayed_payment_basepoint_arg_ref.compressed_form, delayed_payment_basepoint_arg->elems, 33); + LDKPublicKey htlc_basepoint_arg_ref; + CHECK(htlc_basepoint_arg->arr_len == 33); + memcpy(htlc_basepoint_arg_ref.compressed_form, htlc_basepoint_arg->elems, 33); + LDKChannelPublicKeys ret_var = ChannelPublicKeys_new(funding_pubkey_arg_ref, revocation_basepoint_arg_ref, payment_point_arg_ref, delayed_payment_basepoint_arg_ref, htlc_basepoint_arg_ref); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -31642,8 +28914,8 @@ uint32_t __attribute__((visibility("default"))) TS_InvalidShutdownScript_new(in return ret_ref; } -static inline uint64_t InvalidShutdownScript_clone_ptr(LDKInvalidShutdownScript *NONNULL_PTR arg) { - LDKInvalidShutdownScript ret_var = InvalidShutdownScript_clone(arg); +static inline uint64_t ChannelPublicKeys_clone_ptr(LDKChannelPublicKeys *NONNULL_PTR arg) { + LDKChannelPublicKeys ret_var = ChannelPublicKeys_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -31654,21 +28926,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_InvalidShutdownScript_clone_ptr(uint32_t arg) { - LDKInvalidShutdownScript arg_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelPublicKeys_clone_ptr(uint32_t arg) { + LDKChannelPublicKeys arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = InvalidShutdownScript_clone_ptr(&arg_conv); + int64_t ret_val = ChannelPublicKeys_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_InvalidShutdownScript_clone(uint32_t orig) { - LDKInvalidShutdownScript orig_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelPublicKeys_clone(uint32_t orig) { + LDKChannelPublicKeys orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKInvalidShutdownScript ret_var = InvalidShutdownScript_clone(&orig_conv); + LDKChannelPublicKeys ret_var = ChannelPublicKeys_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -31680,197 +28952,191 @@ uint32_t __attribute__((visibility("default"))) TS_InvalidShutdownScript_clone( return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_ShutdownScript_write(uint32_t obj) { - LDKShutdownScript obj_conv; +int8_tArray __attribute__((visibility("default"))) TS_ChannelPublicKeys_write(uint32_t obj) { + LDKChannelPublicKeys obj_conv; obj_conv.inner = (void*)(obj & (~1)); obj_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ShutdownScript_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + LDKCVec_u8Z ret_var = ChannelPublicKeys_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ShutdownScript_read(int8_tArray ser) { +uint32_t __attribute__((visibility("default"))) TS_ChannelPublicKeys_read(int8_tArray ser) { LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ShutdownScriptDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptDecodeErrorZ), "LDKCResult_ShutdownScriptDecodeErrorZ"); - *ret_conv = ShutdownScript_read(ser_ref); + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ChannelPublicKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelPublicKeysDecodeErrorZ), "LDKCResult_ChannelPublicKeysDecodeErrorZ"); + *ret_conv = ChannelPublicKeys_read(ser_ref); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ShutdownScript_new_p2wpkh(int8_tArray pubkey_hash) { - unsigned char pubkey_hash_arr[20]; - CHECK(*((uint32_t*)pubkey_hash) == 20); - memcpy(pubkey_hash_arr, (uint8_t*)(pubkey_hash + 4), 20); - unsigned char (*pubkey_hash_ref)[20] = &pubkey_hash_arr; - LDKShutdownScript ret_var = ShutdownScript_new_p2wpkh(pubkey_hash_ref); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_ShutdownScript_new_p2wsh(int8_tArray script_hash) { - unsigned char script_hash_arr[32]; - CHECK(*((uint32_t*)script_hash) == 32); - memcpy(script_hash_arr, (uint8_t*)(script_hash + 4), 32); - unsigned char (*script_hash_ref)[32] = &script_hash_arr; - LDKShutdownScript ret_var = ShutdownScript_new_p2wsh(script_hash_ref); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_TxCreationKeys_derive_new(int8_tArray per_commitment_point, int8_tArray broadcaster_delayed_payment_base, int8_tArray broadcaster_htlc_base, int8_tArray countersignatory_revocation_base, int8_tArray countersignatory_htlc_base) { + LDKPublicKey per_commitment_point_ref; + CHECK(per_commitment_point->arr_len == 33); + memcpy(per_commitment_point_ref.compressed_form, per_commitment_point->elems, 33); + LDKPublicKey broadcaster_delayed_payment_base_ref; + CHECK(broadcaster_delayed_payment_base->arr_len == 33); + memcpy(broadcaster_delayed_payment_base_ref.compressed_form, broadcaster_delayed_payment_base->elems, 33); + LDKPublicKey broadcaster_htlc_base_ref; + CHECK(broadcaster_htlc_base->arr_len == 33); + memcpy(broadcaster_htlc_base_ref.compressed_form, broadcaster_htlc_base->elems, 33); + LDKPublicKey countersignatory_revocation_base_ref; + CHECK(countersignatory_revocation_base->arr_len == 33); + memcpy(countersignatory_revocation_base_ref.compressed_form, countersignatory_revocation_base->elems, 33); + LDKPublicKey countersignatory_htlc_base_ref; + CHECK(countersignatory_htlc_base->arr_len == 33); + memcpy(countersignatory_htlc_base_ref.compressed_form, countersignatory_htlc_base->elems, 33); + LDKCResult_TxCreationKeysErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysErrorZ), "LDKCResult_TxCreationKeysErrorZ"); + *ret_conv = TxCreationKeys_derive_new(per_commitment_point_ref, broadcaster_delayed_payment_base_ref, broadcaster_htlc_base_ref, countersignatory_revocation_base_ref, countersignatory_htlc_base_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ShutdownScript_new_witness_program(int8_t version, int8_tArray program) { - LDKu8slice program_ref; - program_ref.datalen = *((uint32_t*)program); - program_ref.data = (int8_t*)(program + 4); - LDKCResult_ShutdownScriptInvalidShutdownScriptZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptInvalidShutdownScriptZ), "LDKCResult_ShutdownScriptInvalidShutdownScriptZ"); - *ret_conv = ShutdownScript_new_witness_program(version, program_ref); +uint32_t __attribute__((visibility("default"))) TS_TxCreationKeys_from_channel_static_keys(int8_tArray per_commitment_point, uint32_t broadcaster_keys, uint32_t countersignatory_keys) { + LDKPublicKey per_commitment_point_ref; + CHECK(per_commitment_point->arr_len == 33); + memcpy(per_commitment_point_ref.compressed_form, per_commitment_point->elems, 33); + LDKChannelPublicKeys broadcaster_keys_conv; + broadcaster_keys_conv.inner = (void*)(broadcaster_keys & (~1)); + broadcaster_keys_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(broadcaster_keys_conv); + LDKChannelPublicKeys countersignatory_keys_conv; + countersignatory_keys_conv.inner = (void*)(countersignatory_keys & (~1)); + countersignatory_keys_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(countersignatory_keys_conv); + LDKCResult_TxCreationKeysErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysErrorZ), "LDKCResult_TxCreationKeysErrorZ"); + *ret_conv = TxCreationKeys_from_channel_static_keys(per_commitment_point_ref, &broadcaster_keys_conv, &countersignatory_keys_conv); return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_ShutdownScript_into_inner(uint32_t this_arg) { - LDKShutdownScript this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = (this_arg & 1) || (this_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - this_arg_conv = ShutdownScript_clone(&this_arg_conv); - LDKCVec_u8Z ret_var = ShutdownScript_into_inner(this_arg_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); +int8_tArray __attribute__((visibility("default"))) TS_get_revokeable_redeemscript(int8_tArray revocation_key, int16_t contest_delay, int8_tArray broadcaster_delayed_payment_key) { + LDKPublicKey revocation_key_ref; + CHECK(revocation_key->arr_len == 33); + memcpy(revocation_key_ref.compressed_form, revocation_key->elems, 33); + LDKPublicKey broadcaster_delayed_payment_key_ref; + CHECK(broadcaster_delayed_payment_key->arr_len == 33); + memcpy(broadcaster_delayed_payment_key_ref.compressed_form, broadcaster_delayed_payment_key->elems, 33); + LDKCVec_u8Z ret_var = get_revokeable_redeemscript(revocation_key_ref, contest_delay, broadcaster_delayed_payment_key_ref); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -int8_tArray __attribute__((visibility("default"))) TS_ShutdownScript_as_legacy_pubkey(uint32_t this_arg) { - LDKShutdownScript this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ShutdownScript_as_legacy_pubkey(&this_arg_conv).compressed_form, 33); - return ret_arr; +void __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_free(uint32_t this_obj) { + LDKHTLCOutputInCommitment this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + HTLCOutputInCommitment_free(this_obj_conv); } -jboolean __attribute__((visibility("default"))) TS_ShutdownScript_is_compatible(uint32_t this_arg, uint32_t features) { - LDKShutdownScript this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKInitFeatures features_conv; - features_conv.inner = (void*)(features & (~1)); - features_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(features_conv); - jboolean ret_val = ShutdownScript_is_compatible(&this_arg_conv, &features_conv); +jboolean __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_get_offered(uint32_t this_ptr) { + LDKHTLCOutputInCommitment this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + jboolean ret_val = HTLCOutputInCommitment_get_offered(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CustomMessageReader_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKCustomMessageReader this_ptr_conv = *(LDKCustomMessageReader*)(this_ptr_ptr); - FREE((void*)this_ptr); - CustomMessageReader_free(this_ptr_conv); +void __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_set_offered(uint32_t this_ptr, jboolean val) { + LDKHTLCOutputInCommitment this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + HTLCOutputInCommitment_set_offered(&this_ptr_conv, val); } -static inline uint64_t Type_clone_ptr(LDKType *NONNULL_PTR arg) { - LDKType* ret_ret = MALLOC(sizeof(LDKType), "LDKType"); - *ret_ret = Type_clone(arg); - return (uint64_t)ret_ret; +int64_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_get_amount_msat(uint32_t this_ptr) { + LDKHTLCOutputInCommitment this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = HTLCOutputInCommitment_get_amount_msat(&this_ptr_conv); + return ret_val; } -int64_t __attribute__((visibility("default"))) TS_Type_clone_ptr(uint32_t arg) { - void* arg_ptr = (void*)(((uint64_t)arg) & ~1); - if (!(arg & 1)) { CHECK_ACCESS(arg_ptr); } - LDKType* arg_conv = (LDKType*)arg_ptr; - int64_t ret_val = Type_clone_ptr(arg_conv); + +void __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_set_amount_msat(uint32_t this_ptr, int64_t val) { + LDKHTLCOutputInCommitment this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + HTLCOutputInCommitment_set_amount_msat(&this_ptr_conv, val); +} + +int32_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_get_cltv_expiry(uint32_t this_ptr) { + LDKHTLCOutputInCommitment this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = HTLCOutputInCommitment_get_cltv_expiry(&this_ptr_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Type_clone(uint32_t orig) { - void* orig_ptr = (void*)(((uint64_t)orig) & ~1); - if (!(orig & 1)) { CHECK_ACCESS(orig_ptr); } - LDKType* orig_conv = (LDKType*)orig_ptr; - LDKType* ret_ret = MALLOC(sizeof(LDKType), "LDKType"); - *ret_ret = Type_clone(orig_conv); - return (uint64_t)ret_ret; +void __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_set_cltv_expiry(uint32_t this_ptr, int32_t val) { + LDKHTLCOutputInCommitment this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + HTLCOutputInCommitment_set_cltv_expiry(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_Type_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKType this_ptr_conv = *(LDKType*)(this_ptr_ptr); - FREE((void*)this_ptr); - Type_free(this_ptr_conv); +int8_tArray __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_get_payment_hash(uint32_t this_ptr) { + LDKHTLCOutputInCommitment this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *HTLCOutputInCommitment_get_payment_hash(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_NodeId_free(uint32_t this_obj) { - LDKNodeId this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - NodeId_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_set_payment_hash(uint32_t this_ptr, int8_tArray val) { + LDKHTLCOutputInCommitment this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + HTLCOutputInCommitment_set_payment_hash(&this_ptr_conv, val_ref); } -static inline uint64_t NodeId_clone_ptr(LDKNodeId *NONNULL_PTR arg) { - LDKNodeId ret_var = NodeId_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} +uint32_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_get_transaction_output_index(uint32_t this_ptr) { + LDKHTLCOutputInCommitment this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCOption_u32Z *ret_copy = MALLOC(sizeof(LDKCOption_u32Z), "LDKCOption_u32Z"); + *ret_copy = HTLCOutputInCommitment_get_transaction_output_index(&this_ptr_conv); + uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_NodeId_clone_ptr(uint32_t arg) { - LDKNodeId arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = NodeId_clone_ptr(&arg_conv); - return ret_val; -} -uint32_t __attribute__((visibility("default"))) TS_NodeId_clone(uint32_t orig) { - LDKNodeId orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKNodeId ret_var = NodeId_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_set_transaction_output_index(uint32_t this_ptr, uint32_t val) { + LDKHTLCOutputInCommitment this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKCOption_u32Z val_conv = *(LDKCOption_u32Z*)(val_ptr); + val_conv = COption_u32Z_clone((LDKCOption_u32Z*)(((uint64_t)val) & ~1)); + HTLCOutputInCommitment_set_transaction_output_index(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_NodeId_from_pubkey(int8_tArray pubkey) { - LDKPublicKey pubkey_ref; - CHECK(*((uint32_t*)pubkey) == 33); - memcpy(pubkey_ref.compressed_form, (uint8_t*)(pubkey + 4), 33); - LDKNodeId ret_var = NodeId_from_pubkey(pubkey_ref); +uint32_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_new(jboolean offered_arg, int64_t amount_msat_arg, int32_t cltv_expiry_arg, int8_tArray payment_hash_arg, uint32_t transaction_output_index_arg) { + LDKThirtyTwoBytes payment_hash_arg_ref; + CHECK(payment_hash_arg->arr_len == 32); + memcpy(payment_hash_arg_ref.data, payment_hash_arg->elems, 32); + void* transaction_output_index_arg_ptr = (void*)(((uint64_t)transaction_output_index_arg) & ~1); + CHECK_ACCESS(transaction_output_index_arg_ptr); + LDKCOption_u32Z transaction_output_index_arg_conv = *(LDKCOption_u32Z*)(transaction_output_index_arg_ptr); + transaction_output_index_arg_conv = COption_u32Z_clone((LDKCOption_u32Z*)(((uint64_t)transaction_output_index_arg) & ~1)); + LDKHTLCOutputInCommitment ret_var = HTLCOutputInCommitment_new(offered_arg, amount_msat_arg, cltv_expiry_arg, payment_hash_arg_ref, transaction_output_index_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -31882,57 +29148,8 @@ uint32_t __attribute__((visibility("default"))) TS_NodeId_from_pubkey(int8_tArr return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_NodeId_as_slice(uint32_t this_arg) { - LDKNodeId this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKu8slice ret_var = NodeId_as_slice(&this_arg_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - return ret_arr; -} - -int64_t __attribute__((visibility("default"))) TS_NodeId_hash(uint32_t o) { - LDKNodeId o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = NodeId_hash(&o_conv); - return ret_val; -} - -int8_tArray __attribute__((visibility("default"))) TS_NodeId_write(uint32_t obj) { - LDKNodeId obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = NodeId_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_NodeId_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_NodeIdDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeIdDecodeErrorZ), "LDKCResult_NodeIdDecodeErrorZ"); - *ret_conv = NodeId_read(ser_ref); - return (uint64_t)ret_conv; -} - -void __attribute__((visibility("default"))) TS_NetworkGraph_free(uint32_t this_obj) { - LDKNetworkGraph this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - NetworkGraph_free(this_obj_conv); -} - -static inline uint64_t NetworkGraph_clone_ptr(LDKNetworkGraph *NONNULL_PTR arg) { - LDKNetworkGraph ret_var = NetworkGraph_clone(arg); +static inline uint64_t HTLCOutputInCommitment_clone_ptr(LDKHTLCOutputInCommitment *NONNULL_PTR arg) { + LDKHTLCOutputInCommitment ret_var = HTLCOutputInCommitment_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -31943,21 +29160,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_NetworkGraph_clone_ptr(uint32_t arg) { - LDKNetworkGraph arg_conv; +int64_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_clone_ptr(uint32_t arg) { + LDKHTLCOutputInCommitment arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = NetworkGraph_clone_ptr(&arg_conv); + int64_t ret_val = HTLCOutputInCommitment_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_clone(uint32_t orig) { - LDKNetworkGraph orig_conv; +uint32_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_clone(uint32_t orig) { + LDKHTLCOutputInCommitment orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKNetworkGraph ret_var = NetworkGraph_clone(&orig_conv); + LDKHTLCOutputInCommitment ret_var = HTLCOutputInCommitment_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -31969,124 +29186,104 @@ uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_clone(uint32_t return ret_ref; } -void __attribute__((visibility("default"))) TS_ReadOnlyNetworkGraph_free(uint32_t this_obj) { - LDKReadOnlyNetworkGraph this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ReadOnlyNetworkGraph_free(this_obj_conv); -} - -void __attribute__((visibility("default"))) TS_NetworkUpdate_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKNetworkUpdate this_ptr_conv = *(LDKNetworkUpdate*)(this_ptr_ptr); - FREE((void*)this_ptr); - NetworkUpdate_free(this_ptr_conv); -} - -static inline uint64_t NetworkUpdate_clone_ptr(LDKNetworkUpdate *NONNULL_PTR arg) { - LDKNetworkUpdate *ret_copy = MALLOC(sizeof(LDKNetworkUpdate), "LDKNetworkUpdate"); - *ret_copy = NetworkUpdate_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_NetworkUpdate_clone_ptr(uint32_t arg) { - LDKNetworkUpdate* arg_conv = (LDKNetworkUpdate*)arg; - int64_t ret_val = NetworkUpdate_clone_ptr(arg_conv); - return ret_val; +int8_tArray __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_write(uint32_t obj) { + LDKHTLCOutputInCommitment obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = HTLCOutputInCommitment_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_NetworkUpdate_clone(uint32_t orig) { - LDKNetworkUpdate* orig_conv = (LDKNetworkUpdate*)orig; - LDKNetworkUpdate *ret_copy = MALLOC(sizeof(LDKNetworkUpdate), "LDKNetworkUpdate"); - *ret_copy = NetworkUpdate_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ), "LDKCResult_HTLCOutputInCommitmentDecodeErrorZ"); + *ret_conv = HTLCOutputInCommitment_read(ser_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_NetworkUpdate_channel_update_message(uint32_t msg) { - LDKChannelUpdate msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = ChannelUpdate_clone(&msg_conv); - LDKNetworkUpdate *ret_copy = MALLOC(sizeof(LDKNetworkUpdate), "LDKNetworkUpdate"); - *ret_copy = NetworkUpdate_channel_update_message(msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_get_htlc_redeemscript(uint32_t htlc, jboolean opt_anchors, uint32_t keys) { + LDKHTLCOutputInCommitment htlc_conv; + htlc_conv.inner = (void*)(htlc & (~1)); + htlc_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_conv); + LDKTxCreationKeys keys_conv; + keys_conv.inner = (void*)(keys & (~1)); + keys_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(keys_conv); + LDKCVec_u8Z ret_var = get_htlc_redeemscript(&htlc_conv, opt_anchors, &keys_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_NetworkUpdate_channel_closed(int64_t short_channel_id, jboolean is_permanent) { - LDKNetworkUpdate *ret_copy = MALLOC(sizeof(LDKNetworkUpdate), "LDKNetworkUpdate"); - *ret_copy = NetworkUpdate_channel_closed(short_channel_id, is_permanent); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_make_funding_redeemscript(int8_tArray broadcaster, int8_tArray countersignatory) { + LDKPublicKey broadcaster_ref; + CHECK(broadcaster->arr_len == 33); + memcpy(broadcaster_ref.compressed_form, broadcaster->elems, 33); + LDKPublicKey countersignatory_ref; + CHECK(countersignatory->arr_len == 33); + memcpy(countersignatory_ref.compressed_form, countersignatory->elems, 33); + LDKCVec_u8Z ret_var = make_funding_redeemscript(broadcaster_ref, countersignatory_ref); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_NetworkUpdate_node_failure(int8_tArray node_id, jboolean is_permanent) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKNetworkUpdate *ret_copy = MALLOC(sizeof(LDKNetworkUpdate), "LDKNetworkUpdate"); - *ret_copy = NetworkUpdate_node_failure(node_id_ref, is_permanent); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_build_htlc_transaction(int8_tArray commitment_txid, int32_t feerate_per_kw, int16_t contest_delay, uint32_t htlc, jboolean opt_anchors, int8_tArray broadcaster_delayed_payment_key, int8_tArray revocation_key) { + unsigned char commitment_txid_arr[32]; + CHECK(commitment_txid->arr_len == 32); + memcpy(commitment_txid_arr, commitment_txid->elems, 32); + unsigned char (*commitment_txid_ref)[32] = &commitment_txid_arr; + LDKHTLCOutputInCommitment htlc_conv; + htlc_conv.inner = (void*)(htlc & (~1)); + htlc_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_conv); + LDKPublicKey broadcaster_delayed_payment_key_ref; + CHECK(broadcaster_delayed_payment_key->arr_len == 33); + memcpy(broadcaster_delayed_payment_key_ref.compressed_form, broadcaster_delayed_payment_key->elems, 33); + LDKPublicKey revocation_key_ref; + CHECK(revocation_key->arr_len == 33); + memcpy(revocation_key_ref.compressed_form, revocation_key->elems, 33); + LDKTransaction ret_var = build_htlc_transaction(commitment_txid_ref, feerate_per_kw, contest_delay, &htlc_conv, opt_anchors, broadcaster_delayed_payment_key_ref, revocation_key_ref); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + Transaction_free(ret_var); + return ret_arr; } -int8_tArray __attribute__((visibility("default"))) TS_NetworkUpdate_write(uint32_t obj) { - LDKNetworkUpdate* obj_conv = (LDKNetworkUpdate*)obj; - LDKCVec_u8Z ret_var = NetworkUpdate_write(obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); +int8_tArray __attribute__((visibility("default"))) TS_get_anchor_redeemscript(int8_tArray funding_pubkey) { + LDKPublicKey funding_pubkey_ref; + CHECK(funding_pubkey->arr_len == 33); + memcpy(funding_pubkey_ref.compressed_form, funding_pubkey->elems, 33); + LDKCVec_u8Z ret_var = get_anchor_redeemscript(funding_pubkey_ref); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_NetworkUpdate_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_COption_NetworkUpdateZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_NetworkUpdateZDecodeErrorZ), "LDKCResult_COption_NetworkUpdateZDecodeErrorZ"); - *ret_conv = NetworkUpdate_read(ser_ref); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_NetGraphMsgHandler_as_EventHandler(uint32_t this_arg) { - LDKNetGraphMsgHandler this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKEventHandler* ret_ret = MALLOC(sizeof(LDKEventHandler), "LDKEventHandler"); - *ret_ret = NetGraphMsgHandler_as_EventHandler(&this_arg_conv); - return (uint64_t)ret_ret; -} - -void __attribute__((visibility("default"))) TS_NetGraphMsgHandler_free(uint32_t this_obj) { - LDKNetGraphMsgHandler this_obj_conv; +void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_free(uint32_t this_obj) { + LDKChannelTransactionParameters this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - NetGraphMsgHandler_free(this_obj_conv); + ChannelTransactionParameters_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_NetGraphMsgHandler_new(uint32_t network_graph, uint32_t chain_access, uint32_t logger) { - LDKNetworkGraph network_graph_conv; - network_graph_conv.inner = (void*)(network_graph & (~1)); - network_graph_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(network_graph_conv); - void* chain_access_ptr = (void*)(((uint64_t)chain_access) & ~1); - CHECK_ACCESS(chain_access_ptr); - LDKCOption_AccessZ chain_access_conv = *(LDKCOption_AccessZ*)(chain_access_ptr); - // Warning: we may need a move here but no clone is available for LDKCOption_AccessZ - if (chain_access_conv.tag == LDKCOption_AccessZ_Some) { - // Manually implement clone for Java trait instances - } - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - LDKNetGraphMsgHandler ret_var = NetGraphMsgHandler_new(&network_graph_conv, chain_access_conv, logger_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_get_holder_pubkeys(uint32_t this_ptr) { + LDKChannelTransactionParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelPublicKeys ret_var = ChannelTransactionParameters_get_holder_pubkeys(&this_ptr_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -32098,146 +29295,216 @@ uint32_t __attribute__((visibility("default"))) TS_NetGraphMsgHandler_new(uint3 return ret_ref; } -void __attribute__((visibility("default"))) TS_NetGraphMsgHandler_add_chain_access(uint32_t this_arg, uint32_t chain_access) { - LDKNetGraphMsgHandler this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - void* chain_access_ptr = (void*)(((uint64_t)chain_access) & ~1); - CHECK_ACCESS(chain_access_ptr); - LDKCOption_AccessZ chain_access_conv = *(LDKCOption_AccessZ*)(chain_access_ptr); - // Warning: we may need a move here but no clone is available for LDKCOption_AccessZ - if (chain_access_conv.tag == LDKCOption_AccessZ_Some) { - // Manually implement clone for Java trait instances - } - NetGraphMsgHandler_add_chain_access(&this_arg_conv, chain_access_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_NetGraphMsgHandler_as_RoutingMessageHandler(uint32_t this_arg) { - LDKNetGraphMsgHandler this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKRoutingMessageHandler* ret_ret = MALLOC(sizeof(LDKRoutingMessageHandler), "LDKRoutingMessageHandler"); - *ret_ret = NetGraphMsgHandler_as_RoutingMessageHandler(&this_arg_conv); - return (uint64_t)ret_ret; -} - -uint32_t __attribute__((visibility("default"))) TS_NetGraphMsgHandler_as_MessageSendEventsProvider(uint32_t this_arg) { - LDKNetGraphMsgHandler this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKMessageSendEventsProvider* ret_ret = MALLOC(sizeof(LDKMessageSendEventsProvider), "LDKMessageSendEventsProvider"); - *ret_ret = NetGraphMsgHandler_as_MessageSendEventsProvider(&this_arg_conv); - return (uint64_t)ret_ret; -} - -void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_free(uint32_t this_obj) { - LDKDirectionalChannelInfo this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - DirectionalChannelInfo_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_set_holder_pubkeys(uint32_t this_ptr, uint32_t val) { + LDKChannelTransactionParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelPublicKeys val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = ChannelPublicKeys_clone(&val_conv); + ChannelTransactionParameters_set_holder_pubkeys(&this_ptr_conv, val_conv); } -int32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_last_update(uint32_t this_ptr) { - LDKDirectionalChannelInfo this_ptr_conv; +int16_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_get_holder_selected_contest_delay(uint32_t this_ptr) { + LDKChannelTransactionParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = DirectionalChannelInfo_get_last_update(&this_ptr_conv); + int16_t ret_val = ChannelTransactionParameters_get_holder_selected_contest_delay(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_last_update(uint32_t this_ptr, int32_t val) { - LDKDirectionalChannelInfo this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_set_holder_selected_contest_delay(uint32_t this_ptr, int16_t val) { + LDKChannelTransactionParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - DirectionalChannelInfo_set_last_update(&this_ptr_conv, val); + ChannelTransactionParameters_set_holder_selected_contest_delay(&this_ptr_conv, val); } -jboolean __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_enabled(uint32_t this_ptr) { - LDKDirectionalChannelInfo this_ptr_conv; +jboolean __attribute__((visibility("default"))) TS_ChannelTransactionParameters_get_is_outbound_from_holder(uint32_t this_ptr) { + LDKChannelTransactionParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = DirectionalChannelInfo_get_enabled(&this_ptr_conv); + jboolean ret_val = ChannelTransactionParameters_get_is_outbound_from_holder(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_enabled(uint32_t this_ptr, jboolean val) { - LDKDirectionalChannelInfo this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_set_is_outbound_from_holder(uint32_t this_ptr, jboolean val) { + LDKChannelTransactionParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - DirectionalChannelInfo_set_enabled(&this_ptr_conv, val); + ChannelTransactionParameters_set_is_outbound_from_holder(&this_ptr_conv, val); } -int16_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_cltv_expiry_delta(uint32_t this_ptr) { - LDKDirectionalChannelInfo this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_get_counterparty_parameters(uint32_t this_ptr) { + LDKChannelTransactionParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = DirectionalChannelInfo_get_cltv_expiry_delta(&this_ptr_conv); - return ret_val; + LDKCounterpartyChannelTransactionParameters ret_var = ChannelTransactionParameters_get_counterparty_parameters(&this_ptr_conv); + uint64_t ret_ref = 0; + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_cltv_expiry_delta(uint32_t this_ptr, int16_t val) { - LDKDirectionalChannelInfo this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_set_counterparty_parameters(uint32_t this_ptr, uint32_t val) { + LDKChannelTransactionParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - DirectionalChannelInfo_set_cltv_expiry_delta(&this_ptr_conv, val); + LDKCounterpartyChannelTransactionParameters val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = CounterpartyChannelTransactionParameters_clone(&val_conv); + ChannelTransactionParameters_set_counterparty_parameters(&this_ptr_conv, val_conv); } -int64_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_htlc_minimum_msat(uint32_t this_ptr) { - LDKDirectionalChannelInfo this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_get_funding_outpoint(uint32_t this_ptr) { + LDKChannelTransactionParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = DirectionalChannelInfo_get_htlc_minimum_msat(&this_ptr_conv); - return ret_val; + LDKOutPoint ret_var = ChannelTransactionParameters_get_funding_outpoint(&this_ptr_conv); + uint64_t ret_ref = 0; + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_htlc_minimum_msat(uint32_t this_ptr, int64_t val) { - LDKDirectionalChannelInfo this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_set_funding_outpoint(uint32_t this_ptr, uint32_t val) { + LDKChannelTransactionParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - DirectionalChannelInfo_set_htlc_minimum_msat(&this_ptr_conv, val); + LDKOutPoint val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = OutPoint_clone(&val_conv); + ChannelTransactionParameters_set_funding_outpoint(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_htlc_maximum_msat(uint32_t this_ptr) { - LDKDirectionalChannelInfo this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_get_opt_anchors(uint32_t this_ptr) { + LDKChannelTransactionParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *ret_copy = DirectionalChannelInfo_get_htlc_maximum_msat(&this_ptr_conv); - uint64_t ret_ref = (uint64_t)ret_copy; + uint32_t ret_conv = LDKCOption_NoneZ_to_js(ChannelTransactionParameters_get_opt_anchors(&this_ptr_conv)); + return ret_conv; +} + +void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_set_opt_anchors(uint32_t this_ptr, uint32_t val) { + LDKChannelTransactionParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCOption_NoneZ val_conv = LDKCOption_NoneZ_from_js(val); + ChannelTransactionParameters_set_opt_anchors(&this_ptr_conv, val_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_new(uint32_t holder_pubkeys_arg, int16_t holder_selected_contest_delay_arg, jboolean is_outbound_from_holder_arg, uint32_t counterparty_parameters_arg, uint32_t funding_outpoint_arg, uint32_t opt_anchors_arg) { + LDKChannelPublicKeys holder_pubkeys_arg_conv; + holder_pubkeys_arg_conv.inner = (void*)(holder_pubkeys_arg & (~1)); + holder_pubkeys_arg_conv.is_owned = (holder_pubkeys_arg & 1) || (holder_pubkeys_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(holder_pubkeys_arg_conv); + holder_pubkeys_arg_conv = ChannelPublicKeys_clone(&holder_pubkeys_arg_conv); + LDKCounterpartyChannelTransactionParameters counterparty_parameters_arg_conv; + counterparty_parameters_arg_conv.inner = (void*)(counterparty_parameters_arg & (~1)); + counterparty_parameters_arg_conv.is_owned = (counterparty_parameters_arg & 1) || (counterparty_parameters_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(counterparty_parameters_arg_conv); + counterparty_parameters_arg_conv = CounterpartyChannelTransactionParameters_clone(&counterparty_parameters_arg_conv); + LDKOutPoint funding_outpoint_arg_conv; + funding_outpoint_arg_conv.inner = (void*)(funding_outpoint_arg & (~1)); + funding_outpoint_arg_conv.is_owned = (funding_outpoint_arg & 1) || (funding_outpoint_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_outpoint_arg_conv); + funding_outpoint_arg_conv = OutPoint_clone(&funding_outpoint_arg_conv); + LDKCOption_NoneZ opt_anchors_arg_conv = LDKCOption_NoneZ_from_js(opt_anchors_arg); + LDKChannelTransactionParameters ret_var = ChannelTransactionParameters_new(holder_pubkeys_arg_conv, holder_selected_contest_delay_arg, is_outbound_from_holder_arg, counterparty_parameters_arg_conv, funding_outpoint_arg_conv, opt_anchors_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +static inline uint64_t ChannelTransactionParameters_clone_ptr(LDKChannelTransactionParameters *NONNULL_PTR arg) { + LDKChannelTransactionParameters ret_var = ChannelTransactionParameters_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_clone_ptr(uint32_t arg) { + LDKChannelTransactionParameters arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ChannelTransactionParameters_clone_ptr(&arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_clone(uint32_t orig) { + LDKChannelTransactionParameters orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKChannelTransactionParameters ret_var = ChannelTransactionParameters_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_htlc_maximum_msat(uint32_t this_ptr, uint32_t val) { - LDKDirectionalChannelInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr); - val_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)val) & ~1)); - DirectionalChannelInfo_set_htlc_maximum_msat(&this_ptr_conv, val_conv); +void __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_free(uint32_t this_obj) { + LDKCounterpartyChannelTransactionParameters this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + CounterpartyChannelTransactionParameters_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_fees(uint32_t this_ptr) { - LDKDirectionalChannelInfo this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_get_pubkeys(uint32_t this_ptr) { + LDKCounterpartyChannelTransactionParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKRoutingFees ret_var = DirectionalChannelInfo_get_fees(&this_ptr_conv); + LDKChannelPublicKeys ret_var = CounterpartyChannelTransactionParameters_get_pubkeys(&this_ptr_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -32249,67 +29516,43 @@ uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_f return ret_ref; } -void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_fees(uint32_t this_ptr, uint32_t val) { - LDKDirectionalChannelInfo this_ptr_conv; +void __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_set_pubkeys(uint32_t this_ptr, uint32_t val) { + LDKCounterpartyChannelTransactionParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKRoutingFees val_conv; + LDKChannelPublicKeys val_conv; val_conv.inner = (void*)(val & (~1)); val_conv.is_owned = (val & 1) || (val == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = RoutingFees_clone(&val_conv); - DirectionalChannelInfo_set_fees(&this_ptr_conv, val_conv); + val_conv = ChannelPublicKeys_clone(&val_conv); + CounterpartyChannelTransactionParameters_set_pubkeys(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_last_update_message(uint32_t this_ptr) { - LDKDirectionalChannelInfo this_ptr_conv; +int16_t __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_get_selected_contest_delay(uint32_t this_ptr) { + LDKCounterpartyChannelTransactionParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelUpdate ret_var = DirectionalChannelInfo_get_last_update_message(&this_ptr_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } - return ret_ref; + int16_t ret_val = CounterpartyChannelTransactionParameters_get_selected_contest_delay(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_last_update_message(uint32_t this_ptr, uint32_t val) { - LDKDirectionalChannelInfo this_ptr_conv; +void __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_set_selected_contest_delay(uint32_t this_ptr, int16_t val) { + LDKCounterpartyChannelTransactionParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelUpdate val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = ChannelUpdate_clone(&val_conv); - DirectionalChannelInfo_set_last_update_message(&this_ptr_conv, val_conv); + CounterpartyChannelTransactionParameters_set_selected_contest_delay(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_new(int32_t last_update_arg, jboolean enabled_arg, int16_t cltv_expiry_delta_arg, int64_t htlc_minimum_msat_arg, uint32_t htlc_maximum_msat_arg, uint32_t fees_arg, uint32_t last_update_message_arg) { - void* htlc_maximum_msat_arg_ptr = (void*)(((uint64_t)htlc_maximum_msat_arg) & ~1); - CHECK_ACCESS(htlc_maximum_msat_arg_ptr); - LDKCOption_u64Z htlc_maximum_msat_arg_conv = *(LDKCOption_u64Z*)(htlc_maximum_msat_arg_ptr); - htlc_maximum_msat_arg_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)htlc_maximum_msat_arg) & ~1)); - LDKRoutingFees fees_arg_conv; - fees_arg_conv.inner = (void*)(fees_arg & (~1)); - fees_arg_conv.is_owned = (fees_arg & 1) || (fees_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(fees_arg_conv); - fees_arg_conv = RoutingFees_clone(&fees_arg_conv); - LDKChannelUpdate last_update_message_arg_conv; - last_update_message_arg_conv.inner = (void*)(last_update_message_arg & (~1)); - last_update_message_arg_conv.is_owned = (last_update_message_arg & 1) || (last_update_message_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(last_update_message_arg_conv); - last_update_message_arg_conv = ChannelUpdate_clone(&last_update_message_arg_conv); - LDKDirectionalChannelInfo ret_var = DirectionalChannelInfo_new(last_update_arg, enabled_arg, cltv_expiry_delta_arg, htlc_minimum_msat_arg, htlc_maximum_msat_arg_conv, fees_arg_conv, last_update_message_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_new(uint32_t pubkeys_arg, int16_t selected_contest_delay_arg) { + LDKChannelPublicKeys pubkeys_arg_conv; + pubkeys_arg_conv.inner = (void*)(pubkeys_arg & (~1)); + pubkeys_arg_conv.is_owned = (pubkeys_arg & 1) || (pubkeys_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(pubkeys_arg_conv); + pubkeys_arg_conv = ChannelPublicKeys_clone(&pubkeys_arg_conv); + LDKCounterpartyChannelTransactionParameters ret_var = CounterpartyChannelTransactionParameters_new(pubkeys_arg_conv, selected_contest_delay_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -32321,8 +29564,8 @@ uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_new(i return ret_ref; } -static inline uint64_t DirectionalChannelInfo_clone_ptr(LDKDirectionalChannelInfo *NONNULL_PTR arg) { - LDKDirectionalChannelInfo ret_var = DirectionalChannelInfo_clone(arg); +static inline uint64_t CounterpartyChannelTransactionParameters_clone_ptr(LDKCounterpartyChannelTransactionParameters *NONNULL_PTR arg) { + LDKCounterpartyChannelTransactionParameters ret_var = CounterpartyChannelTransactionParameters_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -32333,21 +29576,183 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_clone_ptr(uint32_t arg) { - LDKDirectionalChannelInfo arg_conv; +int64_t __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_clone_ptr(uint32_t arg) { + LDKCounterpartyChannelTransactionParameters arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = DirectionalChannelInfo_clone_ptr(&arg_conv); + int64_t ret_val = CounterpartyChannelTransactionParameters_clone_ptr(&arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_clone(uint32_t orig) { + LDKCounterpartyChannelTransactionParameters orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKCounterpartyChannelTransactionParameters ret_var = CounterpartyChannelTransactionParameters_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +jboolean __attribute__((visibility("default"))) TS_ChannelTransactionParameters_is_populated(uint32_t this_arg) { + LDKChannelTransactionParameters this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + jboolean ret_val = ChannelTransactionParameters_is_populated(&this_arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_as_holder_broadcastable(uint32_t this_arg) { + LDKChannelTransactionParameters this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKDirectedChannelTransactionParameters ret_var = ChannelTransactionParameters_as_holder_broadcastable(&this_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_as_counterparty_broadcastable(uint32_t this_arg) { + LDKChannelTransactionParameters this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKDirectedChannelTransactionParameters ret_var = ChannelTransactionParameters_as_counterparty_broadcastable(&this_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +int8_tArray __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_write(uint32_t obj) { + LDKCounterpartyChannelTransactionParameters obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = CounterpartyChannelTransactionParameters_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ), "LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ"); + *ret_conv = CounterpartyChannelTransactionParameters_read(ser_ref); + return (uint64_t)ret_conv; +} + +int8_tArray __attribute__((visibility("default"))) TS_ChannelTransactionParameters_write(uint32_t obj) { + LDKChannelTransactionParameters obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ChannelTransactionParameters_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTransactionParametersDecodeErrorZ), "LDKCResult_ChannelTransactionParametersDecodeErrorZ"); + *ret_conv = ChannelTransactionParameters_read(ser_ref); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_free(uint32_t this_obj) { + LDKDirectedChannelTransactionParameters this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + DirectedChannelTransactionParameters_free(this_obj_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_broadcaster_pubkeys(uint32_t this_arg) { + LDKDirectedChannelTransactionParameters this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKChannelPublicKeys ret_var = DirectedChannelTransactionParameters_broadcaster_pubkeys(&this_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_countersignatory_pubkeys(uint32_t this_arg) { + LDKDirectedChannelTransactionParameters this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKChannelPublicKeys ret_var = DirectedChannelTransactionParameters_countersignatory_pubkeys(&this_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +int16_t __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_contest_delay(uint32_t this_arg) { + LDKDirectedChannelTransactionParameters this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int16_t ret_val = DirectedChannelTransactionParameters_contest_delay(&this_arg_conv); + return ret_val; +} + +jboolean __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_is_outbound(uint32_t this_arg) { + LDKDirectedChannelTransactionParameters this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + jboolean ret_val = DirectedChannelTransactionParameters_is_outbound(&this_arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_clone(uint32_t orig) { - LDKDirectionalChannelInfo orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKDirectionalChannelInfo ret_var = DirectionalChannelInfo_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_funding_outpoint(uint32_t this_arg) { + LDKDirectedChannelTransactionParameters this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKOutPoint ret_var = DirectedChannelTransactionParameters_funding_outpoint(&this_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -32359,71 +29764,93 @@ uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_clone return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_DirectionalChannelInfo_write(uint32_t obj) { - LDKDirectionalChannelInfo obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = DirectionalChannelInfo_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_DirectionalChannelInfoDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DirectionalChannelInfoDecodeErrorZ), "LDKCResult_DirectionalChannelInfoDecodeErrorZ"); - *ret_conv = DirectionalChannelInfo_read(ser_ref); - return (uint64_t)ret_conv; +jboolean __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_opt_anchors(uint32_t this_arg) { + LDKDirectedChannelTransactionParameters this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + jboolean ret_val = DirectedChannelTransactionParameters_opt_anchors(&this_arg_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelInfo_free(uint32_t this_obj) { - LDKChannelInfo this_obj_conv; +void __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_free(uint32_t this_obj) { + LDKHolderCommitmentTransaction this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelInfo_free(this_obj_conv); + HolderCommitmentTransaction_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_features(uint32_t this_ptr) { - LDKChannelInfo this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_get_counterparty_sig(uint32_t this_ptr) { + LDKHolderCommitmentTransaction this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelFeatures ret_var = ChannelInfo_get_features(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, HolderCommitmentTransaction_get_counterparty_sig(&this_ptr_conv).compact_form, 64); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelInfo_set_features(uint32_t this_ptr, uint32_t val) { - LDKChannelInfo this_ptr_conv; +void __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_set_counterparty_sig(uint32_t this_ptr, int8_tArray val) { + LDKHolderCommitmentTransaction this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelFeatures val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = ChannelFeatures_clone(&val_conv); - ChannelInfo_set_features(&this_ptr_conv, val_conv); + LDKSignature val_ref; + CHECK(val->arr_len == 64); + memcpy(val_ref.compact_form, val->elems, 64); + HolderCommitmentTransaction_set_counterparty_sig(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_node_one(uint32_t this_ptr) { - LDKChannelInfo this_ptr_conv; +void __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_set_counterparty_htlc_sigs(uint32_t this_ptr, ptrArray val) { + LDKHolderCommitmentTransaction this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeId ret_var = ChannelInfo_get_node_one(&this_ptr_conv); + LDKCVec_SignatureZ val_constr; + val_constr.datalen = val->arr_len; + if (val_constr.datalen > 0) + val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); + else + val_constr.data = NULL; + int8_tArray* val_vals = (void*) val->elems; + for (size_t m = 0; m < val_constr.datalen; m++) { + int8_tArray val_conv_12 = val_vals[m]; + LDKSignature val_conv_12_ref; + CHECK(val_conv_12->arr_len == 64); + memcpy(val_conv_12_ref.compact_form, val_conv_12->elems, 64); + val_constr.data[m] = val_conv_12_ref; + } + HolderCommitmentTransaction_set_counterparty_htlc_sigs(&this_ptr_conv, val_constr); +} + +static inline uint64_t HolderCommitmentTransaction_clone_ptr(LDKHolderCommitmentTransaction *NONNULL_PTR arg) { + LDKHolderCommitmentTransaction ret_var = HolderCommitmentTransaction_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_clone_ptr(uint32_t arg) { + LDKHolderCommitmentTransaction arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = HolderCommitmentTransaction_clone_ptr(&arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_clone(uint32_t orig) { + LDKHolderCommitmentTransaction orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKHolderCommitmentTransaction ret_var = HolderCommitmentTransaction_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -32435,57 +29862,57 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_node_one(uin return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelInfo_set_node_one(uint32_t this_ptr, uint32_t val) { - LDKChannelInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeId val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = NodeId_clone(&val_conv); - ChannelInfo_set_node_one(&this_ptr_conv, val_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_one_to_two(uint32_t this_ptr) { - LDKChannelInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKDirectionalChannelInfo ret_var = ChannelInfo_get_one_to_two(&this_ptr_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_write(uint32_t obj) { + LDKHolderCommitmentTransaction obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = HolderCommitmentTransaction_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelInfo_set_one_to_two(uint32_t this_ptr, uint32_t val) { - LDKChannelInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKDirectionalChannelInfo val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = DirectionalChannelInfo_clone(&val_conv); - ChannelInfo_set_one_to_two(&this_ptr_conv, val_conv); +uint32_t __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_HolderCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HolderCommitmentTransactionDecodeErrorZ), "LDKCResult_HolderCommitmentTransactionDecodeErrorZ"); + *ret_conv = HolderCommitmentTransaction_read(ser_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_node_two(uint32_t this_ptr) { - LDKChannelInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeId ret_var = ChannelInfo_get_node_two(&this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_new(uint32_t commitment_tx, int8_tArray counterparty_sig, ptrArray counterparty_htlc_sigs, int8_tArray holder_funding_key, int8_tArray counterparty_funding_key) { + LDKCommitmentTransaction commitment_tx_conv; + commitment_tx_conv.inner = (void*)(commitment_tx & (~1)); + commitment_tx_conv.is_owned = (commitment_tx & 1) || (commitment_tx == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_conv); + commitment_tx_conv = CommitmentTransaction_clone(&commitment_tx_conv); + LDKSignature counterparty_sig_ref; + CHECK(counterparty_sig->arr_len == 64); + memcpy(counterparty_sig_ref.compact_form, counterparty_sig->elems, 64); + LDKCVec_SignatureZ counterparty_htlc_sigs_constr; + counterparty_htlc_sigs_constr.datalen = counterparty_htlc_sigs->arr_len; + if (counterparty_htlc_sigs_constr.datalen > 0) + counterparty_htlc_sigs_constr.data = MALLOC(counterparty_htlc_sigs_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); + else + counterparty_htlc_sigs_constr.data = NULL; + int8_tArray* counterparty_htlc_sigs_vals = (void*) counterparty_htlc_sigs->elems; + for (size_t m = 0; m < counterparty_htlc_sigs_constr.datalen; m++) { + int8_tArray counterparty_htlc_sigs_conv_12 = counterparty_htlc_sigs_vals[m]; + LDKSignature counterparty_htlc_sigs_conv_12_ref; + CHECK(counterparty_htlc_sigs_conv_12->arr_len == 64); + memcpy(counterparty_htlc_sigs_conv_12_ref.compact_form, counterparty_htlc_sigs_conv_12->elems, 64); + counterparty_htlc_sigs_constr.data[m] = counterparty_htlc_sigs_conv_12_ref; + } + LDKPublicKey holder_funding_key_ref; + CHECK(holder_funding_key->arr_len == 33); + memcpy(holder_funding_key_ref.compressed_form, holder_funding_key->elems, 33); + LDKPublicKey counterparty_funding_key_ref; + CHECK(counterparty_funding_key->arr_len == 33); + memcpy(counterparty_funding_key_ref.compressed_form, counterparty_funding_key->elems, 33); + LDKHolderCommitmentTransaction ret_var = HolderCommitmentTransaction_new(commitment_tx_conv, counterparty_sig_ref, counterparty_htlc_sigs_constr, holder_funding_key_ref, counterparty_funding_key_ref); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -32497,108 +29924,83 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_node_two(uin return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelInfo_set_node_two(uint32_t this_ptr, uint32_t val) { - LDKChannelInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeId val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = NodeId_clone(&val_conv); - ChannelInfo_set_node_two(&this_ptr_conv, val_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_two_to_one(uint32_t this_ptr) { - LDKChannelInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKDirectionalChannelInfo ret_var = ChannelInfo_get_two_to_one(&this_ptr_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } - return ret_ref; +void __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_free(uint32_t this_obj) { + LDKBuiltCommitmentTransaction this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + BuiltCommitmentTransaction_free(this_obj_conv); } -void __attribute__((visibility("default"))) TS_ChannelInfo_set_two_to_one(uint32_t this_ptr, uint32_t val) { - LDKChannelInfo this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_get_transaction(uint32_t this_ptr) { + LDKBuiltCommitmentTransaction this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKDirectionalChannelInfo val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = DirectionalChannelInfo_clone(&val_conv); - ChannelInfo_set_two_to_one(&this_ptr_conv, val_conv); + LDKTransaction ret_var = BuiltCommitmentTransaction_get_transaction(&this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + Transaction_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_capacity_sats(uint32_t this_ptr) { - LDKChannelInfo this_ptr_conv; +void __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_set_transaction(uint32_t this_ptr, int8_tArray val) { + LDKBuiltCommitmentTransaction this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *ret_copy = ChannelInfo_get_capacity_sats(&this_ptr_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; + LDKTransaction val_ref; + val_ref.datalen = val->arr_len; + val_ref.data = MALLOC(val_ref.datalen, "LDKTransaction Bytes"); + memcpy(val_ref.data, val->elems, val_ref.datalen); + val_ref.data_is_owned = true; + BuiltCommitmentTransaction_set_transaction(&this_ptr_conv, val_ref); } -void __attribute__((visibility("default"))) TS_ChannelInfo_set_capacity_sats(uint32_t this_ptr, uint32_t val) { - LDKChannelInfo this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_get_txid(uint32_t this_ptr) { + LDKBuiltCommitmentTransaction this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr); - val_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)val) & ~1)); - ChannelInfo_set_capacity_sats(&this_ptr_conv, val_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *BuiltCommitmentTransaction_get_txid(&this_ptr_conv), 32); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_announcement_message(uint32_t this_ptr) { - LDKChannelInfo this_ptr_conv; +void __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_set_txid(uint32_t this_ptr, int8_tArray val) { + LDKBuiltCommitmentTransaction this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelAnnouncement ret_var = ChannelInfo_get_announcement_message(&this_ptr_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + BuiltCommitmentTransaction_set_txid(&this_ptr_conv, val_ref); +} + +uint32_t __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_new(int8_tArray transaction_arg, int8_tArray txid_arg) { + LDKTransaction transaction_arg_ref; + transaction_arg_ref.datalen = transaction_arg->arr_len; + transaction_arg_ref.data = MALLOC(transaction_arg_ref.datalen, "LDKTransaction Bytes"); + memcpy(transaction_arg_ref.data, transaction_arg->elems, transaction_arg_ref.datalen); + transaction_arg_ref.data_is_owned = true; + LDKThirtyTwoBytes txid_arg_ref; + CHECK(txid_arg->arr_len == 32); + memcpy(txid_arg_ref.data, txid_arg->elems, 32); + LDKBuiltCommitmentTransaction ret_var = BuiltCommitmentTransaction_new(transaction_arg_ref, txid_arg_ref); uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelInfo_set_announcement_message(uint32_t this_ptr, uint32_t val) { - LDKChannelInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelAnnouncement val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = ChannelAnnouncement_clone(&val_conv); - ChannelInfo_set_announcement_message(&this_ptr_conv, val_conv); -} - -static inline uint64_t ChannelInfo_clone_ptr(LDKChannelInfo *NONNULL_PTR arg) { - LDKChannelInfo ret_var = ChannelInfo_clone(arg); +static inline uint64_t BuiltCommitmentTransaction_clone_ptr(LDKBuiltCommitmentTransaction *NONNULL_PTR arg) { + LDKBuiltCommitmentTransaction ret_var = BuiltCommitmentTransaction_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -32609,21 +30011,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ChannelInfo_clone_ptr(uint32_t arg) { - LDKChannelInfo arg_conv; +int64_t __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_clone_ptr(uint32_t arg) { + LDKBuiltCommitmentTransaction arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelInfo_clone_ptr(&arg_conv); + int64_t ret_val = BuiltCommitmentTransaction_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_clone(uint32_t orig) { - LDKChannelInfo orig_conv; +uint32_t __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_clone(uint32_t orig) { + LDKBuiltCommitmentTransaction orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelInfo ret_var = ChannelInfo_clone(&orig_conv); + LDKBuiltCommitmentTransaction ret_var = BuiltCommitmentTransaction_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -32635,97 +30037,270 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_clone(uint32_t o return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_ChannelInfo_write(uint32_t obj) { - LDKChannelInfo obj_conv; +int8_tArray __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_write(uint32_t obj) { + LDKBuiltCommitmentTransaction obj_conv; obj_conv.inner = (void*)(obj & (~1)); obj_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ChannelInfo_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + LDKCVec_u8Z ret_var = BuiltCommitmentTransaction_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_read(int8_tArray ser) { +uint32_t __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_read(int8_tArray ser) { LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ChannelInfoDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelInfoDecodeErrorZ), "LDKCResult_ChannelInfoDecodeErrorZ"); - *ret_conv = ChannelInfo_read(ser_ref); + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ), "LDKCResult_BuiltCommitmentTransactionDecodeErrorZ"); + *ret_conv = BuiltCommitmentTransaction_read(ser_ref); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_RoutingFees_free(uint32_t this_obj) { - LDKRoutingFees this_obj_conv; +int8_tArray __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_get_sighash_all(uint32_t this_arg, int8_tArray funding_redeemscript, int64_t channel_value_satoshis) { + LDKBuiltCommitmentTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKu8slice funding_redeemscript_ref; + funding_redeemscript_ref.datalen = funding_redeemscript->arr_len; + funding_redeemscript_ref.data = funding_redeemscript->elems; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, BuiltCommitmentTransaction_get_sighash_all(&this_arg_conv, funding_redeemscript_ref, channel_value_satoshis).data, 32); + return ret_arr; +} + +int8_tArray __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_sign(uint32_t this_arg, int8_tArray funding_key, int8_tArray funding_redeemscript, int64_t channel_value_satoshis) { + LDKBuiltCommitmentTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char funding_key_arr[32]; + CHECK(funding_key->arr_len == 32); + memcpy(funding_key_arr, funding_key->elems, 32); + unsigned char (*funding_key_ref)[32] = &funding_key_arr; + LDKu8slice funding_redeemscript_ref; + funding_redeemscript_ref.datalen = funding_redeemscript->arr_len; + funding_redeemscript_ref.data = funding_redeemscript->elems; + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, BuiltCommitmentTransaction_sign(&this_arg_conv, funding_key_ref, funding_redeemscript_ref, channel_value_satoshis).compact_form, 64); + return ret_arr; +} + +void __attribute__((visibility("default"))) TS_ClosingTransaction_free(uint32_t this_obj) { + LDKClosingTransaction this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - RoutingFees_free(this_obj_conv); + ClosingTransaction_free(this_obj_conv); } -int32_t __attribute__((visibility("default"))) TS_RoutingFees_get_base_msat(uint32_t this_ptr) { - LDKRoutingFees this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = RoutingFees_get_base_msat(&this_ptr_conv); +static inline uint64_t ClosingTransaction_clone_ptr(LDKClosingTransaction *NONNULL_PTR arg) { + LDKClosingTransaction ret_var = ClosingTransaction_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_ClosingTransaction_clone_ptr(uint32_t arg) { + LDKClosingTransaction arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ClosingTransaction_clone_ptr(&arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_RoutingFees_set_base_msat(uint32_t this_ptr, int32_t val) { - LDKRoutingFees this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - RoutingFees_set_base_msat(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_ClosingTransaction_clone(uint32_t orig) { + LDKClosingTransaction orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKClosingTransaction ret_var = ClosingTransaction_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +int64_t __attribute__((visibility("default"))) TS_ClosingTransaction_hash(uint32_t o) { + LDKClosingTransaction o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + int64_t ret_val = ClosingTransaction_hash(&o_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_ClosingTransaction_new(int64_t to_holder_value_sat, int64_t to_counterparty_value_sat, int8_tArray to_holder_script, int8_tArray to_counterparty_script, uint32_t funding_outpoint) { + LDKCVec_u8Z to_holder_script_ref; + to_holder_script_ref.datalen = to_holder_script->arr_len; + to_holder_script_ref.data = MALLOC(to_holder_script_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(to_holder_script_ref.data, to_holder_script->elems, to_holder_script_ref.datalen); + LDKCVec_u8Z to_counterparty_script_ref; + to_counterparty_script_ref.datalen = to_counterparty_script->arr_len; + to_counterparty_script_ref.data = MALLOC(to_counterparty_script_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(to_counterparty_script_ref.data, to_counterparty_script->elems, to_counterparty_script_ref.datalen); + LDKOutPoint funding_outpoint_conv; + funding_outpoint_conv.inner = (void*)(funding_outpoint & (~1)); + funding_outpoint_conv.is_owned = (funding_outpoint & 1) || (funding_outpoint == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_outpoint_conv); + funding_outpoint_conv = OutPoint_clone(&funding_outpoint_conv); + LDKClosingTransaction ret_var = ClosingTransaction_new(to_holder_value_sat, to_counterparty_value_sat, to_holder_script_ref, to_counterparty_script_ref, funding_outpoint_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_ClosingTransaction_trust(uint32_t this_arg) { + LDKClosingTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKTrustedClosingTransaction ret_var = ClosingTransaction_trust(&this_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_ClosingTransaction_verify(uint32_t this_arg, uint32_t funding_outpoint) { + LDKClosingTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKOutPoint funding_outpoint_conv; + funding_outpoint_conv.inner = (void*)(funding_outpoint & (~1)); + funding_outpoint_conv.is_owned = (funding_outpoint & 1) || (funding_outpoint == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_outpoint_conv); + funding_outpoint_conv = OutPoint_clone(&funding_outpoint_conv); + LDKCResult_TrustedClosingTransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TrustedClosingTransactionNoneZ), "LDKCResult_TrustedClosingTransactionNoneZ"); + *ret_conv = ClosingTransaction_verify(&this_arg_conv, funding_outpoint_conv); + return (uint64_t)ret_conv; +} + +int64_t __attribute__((visibility("default"))) TS_ClosingTransaction_to_holder_value_sat(uint32_t this_arg) { + LDKClosingTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int64_t ret_val = ClosingTransaction_to_holder_value_sat(&this_arg_conv); + return ret_val; +} + +int64_t __attribute__((visibility("default"))) TS_ClosingTransaction_to_counterparty_value_sat(uint32_t this_arg) { + LDKClosingTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int64_t ret_val = ClosingTransaction_to_counterparty_value_sat(&this_arg_conv); + return ret_val; +} + +int8_tArray __attribute__((visibility("default"))) TS_ClosingTransaction_to_holder_script(uint32_t this_arg) { + LDKClosingTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKu8slice ret_var = ClosingTransaction_to_holder_script(&this_arg_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + return ret_arr; +} + +int8_tArray __attribute__((visibility("default"))) TS_ClosingTransaction_to_counterparty_script(uint32_t this_arg) { + LDKClosingTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKu8slice ret_var = ClosingTransaction_to_counterparty_script(&this_arg_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + return ret_arr; +} + +void __attribute__((visibility("default"))) TS_TrustedClosingTransaction_free(uint32_t this_obj) { + LDKTrustedClosingTransaction this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + TrustedClosingTransaction_free(this_obj_conv); } -int32_t __attribute__((visibility("default"))) TS_RoutingFees_get_proportional_millionths(uint32_t this_ptr) { - LDKRoutingFees this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = RoutingFees_get_proportional_millionths(&this_ptr_conv); - return ret_val; +int8_tArray __attribute__((visibility("default"))) TS_TrustedClosingTransaction_built_transaction(uint32_t this_arg) { + LDKTrustedClosingTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKTransaction ret_var = TrustedClosingTransaction_built_transaction(&this_arg_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + Transaction_free(ret_var); + return ret_arr; } -void __attribute__((visibility("default"))) TS_RoutingFees_set_proportional_millionths(uint32_t this_ptr, int32_t val) { - LDKRoutingFees this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - RoutingFees_set_proportional_millionths(&this_ptr_conv, val); +int8_tArray __attribute__((visibility("default"))) TS_TrustedClosingTransaction_get_sighash_all(uint32_t this_arg, int8_tArray funding_redeemscript, int64_t channel_value_satoshis) { + LDKTrustedClosingTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKu8slice funding_redeemscript_ref; + funding_redeemscript_ref.datalen = funding_redeemscript->arr_len; + funding_redeemscript_ref.data = funding_redeemscript->elems; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, TrustedClosingTransaction_get_sighash_all(&this_arg_conv, funding_redeemscript_ref, channel_value_satoshis).data, 32); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_RoutingFees_new(int32_t base_msat_arg, int32_t proportional_millionths_arg) { - LDKRoutingFees ret_var = RoutingFees_new(base_msat_arg, proportional_millionths_arg); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_TrustedClosingTransaction_sign(uint32_t this_arg, int8_tArray funding_key, int8_tArray funding_redeemscript, int64_t channel_value_satoshis) { + LDKTrustedClosingTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char funding_key_arr[32]; + CHECK(funding_key->arr_len == 32); + memcpy(funding_key_arr, funding_key->elems, 32); + unsigned char (*funding_key_ref)[32] = &funding_key_arr; + LDKu8slice funding_redeemscript_ref; + funding_redeemscript_ref.datalen = funding_redeemscript->arr_len; + funding_redeemscript_ref.data = funding_redeemscript->elems; + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, TrustedClosingTransaction_sign(&this_arg_conv, funding_key_ref, funding_redeemscript_ref, channel_value_satoshis).compact_form, 64); + return ret_arr; } -jboolean __attribute__((visibility("default"))) TS_RoutingFees_eq(uint32_t a, uint32_t b) { - LDKRoutingFees a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKRoutingFees b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = RoutingFees_eq(&a_conv, &b_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_CommitmentTransaction_free(uint32_t this_obj) { + LDKCommitmentTransaction this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + CommitmentTransaction_free(this_obj_conv); } -static inline uint64_t RoutingFees_clone_ptr(LDKRoutingFees *NONNULL_PTR arg) { - LDKRoutingFees ret_var = RoutingFees_clone(arg); +static inline uint64_t CommitmentTransaction_clone_ptr(LDKCommitmentTransaction *NONNULL_PTR arg) { + LDKCommitmentTransaction ret_var = CommitmentTransaction_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -32736,21 +30311,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_RoutingFees_clone_ptr(uint32_t arg) { - LDKRoutingFees arg_conv; +int64_t __attribute__((visibility("default"))) TS_CommitmentTransaction_clone_ptr(uint32_t arg) { + LDKCommitmentTransaction arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = RoutingFees_clone_ptr(&arg_conv); + int64_t ret_val = CommitmentTransaction_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_RoutingFees_clone(uint32_t orig) { - LDKRoutingFees orig_conv; +uint32_t __attribute__((visibility("default"))) TS_CommitmentTransaction_clone(uint32_t orig) { + LDKCommitmentTransaction orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKRoutingFees ret_var = RoutingFees_clone(&orig_conv); + LDKCommitmentTransaction ret_var = CommitmentTransaction_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -32762,50 +30337,69 @@ uint32_t __attribute__((visibility("default"))) TS_RoutingFees_clone(uint32_t o return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_RoutingFees_hash(uint32_t o) { - LDKRoutingFees o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = RoutingFees_hash(&o_conv); - return ret_val; -} - -int8_tArray __attribute__((visibility("default"))) TS_RoutingFees_write(uint32_t obj) { - LDKRoutingFees obj_conv; +int8_tArray __attribute__((visibility("default"))) TS_CommitmentTransaction_write(uint32_t obj) { + LDKCommitmentTransaction obj_conv; obj_conv.inner = (void*)(obj & (~1)); obj_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = RoutingFees_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + LDKCVec_u8Z ret_var = CommitmentTransaction_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_RoutingFees_read(int8_tArray ser) { +uint32_t __attribute__((visibility("default"))) TS_CommitmentTransaction_read(int8_tArray ser) { LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_RoutingFeesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RoutingFeesDecodeErrorZ), "LDKCResult_RoutingFeesDecodeErrorZ"); - *ret_conv = RoutingFees_read(ser_ref); + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_CommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentTransactionDecodeErrorZ), "LDKCResult_CommitmentTransactionDecodeErrorZ"); + *ret_conv = CommitmentTransaction_read(ser_ref); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_free(uint32_t this_obj) { - LDKNodeAnnouncementInfo this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - NodeAnnouncementInfo_free(this_obj_conv); +int64_t __attribute__((visibility("default"))) TS_CommitmentTransaction_commitment_number(uint32_t this_arg) { + LDKCommitmentTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int64_t ret_val = CommitmentTransaction_commitment_number(&this_arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_get_features(uint32_t this_ptr) { - LDKNodeAnnouncementInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeFeatures ret_var = NodeAnnouncementInfo_get_features(&this_ptr_conv); +int64_t __attribute__((visibility("default"))) TS_CommitmentTransaction_to_broadcaster_value_sat(uint32_t this_arg) { + LDKCommitmentTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int64_t ret_val = CommitmentTransaction_to_broadcaster_value_sat(&this_arg_conv); + return ret_val; +} + +int64_t __attribute__((visibility("default"))) TS_CommitmentTransaction_to_countersignatory_value_sat(uint32_t this_arg) { + LDKCommitmentTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int64_t ret_val = CommitmentTransaction_to_countersignatory_value_sat(&this_arg_conv); + return ret_val; +} + +int32_t __attribute__((visibility("default"))) TS_CommitmentTransaction_feerate_per_kw(uint32_t this_arg) { + LDKCommitmentTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int32_t ret_val = CommitmentTransaction_feerate_per_kw(&this_arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_CommitmentTransaction_trust(uint32_t this_arg) { + LDKCommitmentTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKTrustedCommitmentTransaction ret_var = CommitmentTransaction_trust(&this_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -32817,165 +30411,52 @@ uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_get_fea return ret_ref; } -void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_set_features(uint32_t this_ptr, uint32_t val) { - LDKNodeAnnouncementInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeFeatures val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = NodeFeatures_clone(&val_conv); - NodeAnnouncementInfo_set_features(&this_ptr_conv, val_conv); -} - -int32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_get_last_update(uint32_t this_ptr) { - LDKNodeAnnouncementInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = NodeAnnouncementInfo_get_last_update(&this_ptr_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_set_last_update(uint32_t this_ptr, int32_t val) { - LDKNodeAnnouncementInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - NodeAnnouncementInfo_set_last_update(&this_ptr_conv, val); -} - -int8_tArray __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_get_rgb(uint32_t this_ptr) { - LDKNodeAnnouncementInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(3, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *NodeAnnouncementInfo_get_rgb(&this_ptr_conv), 3); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_set_rgb(uint32_t this_ptr, int8_tArray val) { - LDKNodeAnnouncementInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThreeBytes val_ref; - CHECK(*((uint32_t*)val) == 3); - memcpy(val_ref.data, (uint8_t*)(val + 4), 3); - NodeAnnouncementInfo_set_rgb(&this_ptr_conv, val_ref); -} - -int8_tArray __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_get_alias(uint32_t this_ptr) { - LDKNodeAnnouncementInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *NodeAnnouncementInfo_get_alias(&this_ptr_conv), 32); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_set_alias(uint32_t this_ptr, int8_tArray val) { - LDKNodeAnnouncementInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - NodeAnnouncementInfo_set_alias(&this_ptr_conv, val_ref); -} - -void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_set_addresses(uint32_t this_ptr, uint32_tArray val) { - LDKNodeAnnouncementInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_NetAddressZ val_constr; - val_constr.datalen = *((uint32_t*)val); - if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKNetAddress), "LDKCVec_NetAddressZ Elements"); - else - val_constr.data = NULL; - uint32_t* val_vals = (uint32_t*)(val + 4); - for (size_t m = 0; m < val_constr.datalen; m++) { - uint32_t val_conv_12 = val_vals[m]; - void* val_conv_12_ptr = (void*)(((uint64_t)val_conv_12) & ~1); - CHECK_ACCESS(val_conv_12_ptr); - LDKNetAddress val_conv_12_conv = *(LDKNetAddress*)(val_conv_12_ptr); - val_conv_12_conv = NetAddress_clone((LDKNetAddress*)(((uint64_t)val_conv_12) & ~1)); - val_constr.data[m] = val_conv_12_conv; - } - NodeAnnouncementInfo_set_addresses(&this_ptr_conv, val_constr); +uint32_t __attribute__((visibility("default"))) TS_CommitmentTransaction_verify(uint32_t this_arg, uint32_t channel_parameters, uint32_t broadcaster_keys, uint32_t countersignatory_keys) { + LDKCommitmentTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKDirectedChannelTransactionParameters channel_parameters_conv; + channel_parameters_conv.inner = (void*)(channel_parameters & (~1)); + channel_parameters_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_parameters_conv); + LDKChannelPublicKeys broadcaster_keys_conv; + broadcaster_keys_conv.inner = (void*)(broadcaster_keys & (~1)); + broadcaster_keys_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(broadcaster_keys_conv); + LDKChannelPublicKeys countersignatory_keys_conv; + countersignatory_keys_conv.inner = (void*)(countersignatory_keys & (~1)); + countersignatory_keys_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(countersignatory_keys_conv); + LDKCResult_TrustedCommitmentTransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TrustedCommitmentTransactionNoneZ), "LDKCResult_TrustedCommitmentTransactionNoneZ"); + *ret_conv = CommitmentTransaction_verify(&this_arg_conv, &channel_parameters_conv, &broadcaster_keys_conv, &countersignatory_keys_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_get_announcement_message(uint32_t this_ptr) { - LDKNodeAnnouncementInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeAnnouncement ret_var = NodeAnnouncementInfo_get_announcement_message(&this_ptr_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } - return ret_ref; +void __attribute__((visibility("default"))) TS_TrustedCommitmentTransaction_free(uint32_t this_obj) { + LDKTrustedCommitmentTransaction this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + TrustedCommitmentTransaction_free(this_obj_conv); } -void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_set_announcement_message(uint32_t this_ptr, uint32_t val) { - LDKNodeAnnouncementInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeAnnouncement val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = NodeAnnouncement_clone(&val_conv); - NodeAnnouncementInfo_set_announcement_message(&this_ptr_conv, val_conv); +int8_tArray __attribute__((visibility("default"))) TS_TrustedCommitmentTransaction_txid(uint32_t this_arg) { + LDKTrustedCommitmentTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, TrustedCommitmentTransaction_txid(&this_arg_conv).data, 32); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_new(uint32_t features_arg, int32_t last_update_arg, int8_tArray rgb_arg, int8_tArray alias_arg, uint32_tArray addresses_arg, uint32_t announcement_message_arg) { - LDKNodeFeatures features_arg_conv; - features_arg_conv.inner = (void*)(features_arg & (~1)); - features_arg_conv.is_owned = (features_arg & 1) || (features_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(features_arg_conv); - features_arg_conv = NodeFeatures_clone(&features_arg_conv); - LDKThreeBytes rgb_arg_ref; - CHECK(*((uint32_t*)rgb_arg) == 3); - memcpy(rgb_arg_ref.data, (uint8_t*)(rgb_arg + 4), 3); - LDKThirtyTwoBytes alias_arg_ref; - CHECK(*((uint32_t*)alias_arg) == 32); - memcpy(alias_arg_ref.data, (uint8_t*)(alias_arg + 4), 32); - LDKCVec_NetAddressZ addresses_arg_constr; - addresses_arg_constr.datalen = *((uint32_t*)addresses_arg); - if (addresses_arg_constr.datalen > 0) - addresses_arg_constr.data = MALLOC(addresses_arg_constr.datalen * sizeof(LDKNetAddress), "LDKCVec_NetAddressZ Elements"); - else - addresses_arg_constr.data = NULL; - uint32_t* addresses_arg_vals = (uint32_t*)(addresses_arg + 4); - for (size_t m = 0; m < addresses_arg_constr.datalen; m++) { - uint32_t addresses_arg_conv_12 = addresses_arg_vals[m]; - void* addresses_arg_conv_12_ptr = (void*)(((uint64_t)addresses_arg_conv_12) & ~1); - CHECK_ACCESS(addresses_arg_conv_12_ptr); - LDKNetAddress addresses_arg_conv_12_conv = *(LDKNetAddress*)(addresses_arg_conv_12_ptr); - addresses_arg_constr.data[m] = addresses_arg_conv_12_conv; - } - LDKNodeAnnouncement announcement_message_arg_conv; - announcement_message_arg_conv.inner = (void*)(announcement_message_arg & (~1)); - announcement_message_arg_conv.is_owned = (announcement_message_arg & 1) || (announcement_message_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(announcement_message_arg_conv); - announcement_message_arg_conv = NodeAnnouncement_clone(&announcement_message_arg_conv); - LDKNodeAnnouncementInfo ret_var = NodeAnnouncementInfo_new(features_arg_conv, last_update_arg, rgb_arg_ref, alias_arg_ref, addresses_arg_constr, announcement_message_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_TrustedCommitmentTransaction_built_transaction(uint32_t this_arg) { + LDKTrustedCommitmentTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKBuiltCommitmentTransaction ret_var = TrustedCommitmentTransaction_built_transaction(&this_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -32987,33 +30468,12 @@ uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_new(uin return ret_ref; } -static inline uint64_t NodeAnnouncementInfo_clone_ptr(LDKNodeAnnouncementInfo *NONNULL_PTR arg) { - LDKNodeAnnouncementInfo ret_var = NodeAnnouncementInfo_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_clone_ptr(uint32_t arg) { - LDKNodeAnnouncementInfo arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = NodeAnnouncementInfo_clone_ptr(&arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_clone(uint32_t orig) { - LDKNodeAnnouncementInfo orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKNodeAnnouncementInfo ret_var = NodeAnnouncementInfo_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_TrustedCommitmentTransaction_keys(uint32_t this_arg) { + LDKTrustedCommitmentTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKTxCreationKeys ret_var = TrustedCommitmentTransaction_keys(&this_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -33025,141 +30485,136 @@ uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_clone(u return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_write(uint32_t obj) { - LDKNodeAnnouncementInfo obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = NodeAnnouncementInfo_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +jboolean __attribute__((visibility("default"))) TS_TrustedCommitmentTransaction_opt_anchors(uint32_t this_arg) { + LDKTrustedCommitmentTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + jboolean ret_val = TrustedCommitmentTransaction_opt_anchors(&this_arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_NodeAnnouncementInfoDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeAnnouncementInfoDecodeErrorZ), "LDKCResult_NodeAnnouncementInfoDecodeErrorZ"); - *ret_conv = NodeAnnouncementInfo_read(ser_ref); +uint32_t __attribute__((visibility("default"))) TS_TrustedCommitmentTransaction_get_htlc_sigs(uint32_t this_arg, int8_tArray htlc_base_key, uint32_t channel_parameters) { + LDKTrustedCommitmentTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char htlc_base_key_arr[32]; + CHECK(htlc_base_key->arr_len == 32); + memcpy(htlc_base_key_arr, htlc_base_key->elems, 32); + unsigned char (*htlc_base_key_ref)[32] = &htlc_base_key_arr; + LDKDirectedChannelTransactionParameters channel_parameters_conv; + channel_parameters_conv.inner = (void*)(channel_parameters & (~1)); + channel_parameters_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_parameters_conv); + LDKCResult_CVec_SignatureZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_SignatureZNoneZ), "LDKCResult_CVec_SignatureZNoneZ"); + *ret_conv = TrustedCommitmentTransaction_get_htlc_sigs(&this_arg_conv, htlc_base_key_ref, &channel_parameters_conv); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_NodeInfo_free(uint32_t this_obj) { - LDKNodeInfo this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - NodeInfo_free(this_obj_conv); +int64_t __attribute__((visibility("default"))) TS_get_commitment_transaction_number_obscure_factor(int8_tArray broadcaster_payment_basepoint, int8_tArray countersignatory_payment_basepoint, jboolean outbound_from_broadcaster) { + LDKPublicKey broadcaster_payment_basepoint_ref; + CHECK(broadcaster_payment_basepoint->arr_len == 33); + memcpy(broadcaster_payment_basepoint_ref.compressed_form, broadcaster_payment_basepoint->elems, 33); + LDKPublicKey countersignatory_payment_basepoint_ref; + CHECK(countersignatory_payment_basepoint->arr_len == 33); + memcpy(countersignatory_payment_basepoint_ref.compressed_form, countersignatory_payment_basepoint->elems, 33); + int64_t ret_val = get_commitment_transaction_number_obscure_factor(broadcaster_payment_basepoint_ref, countersignatory_payment_basepoint_ref, outbound_from_broadcaster); + return ret_val; } -void __attribute__((visibility("default"))) TS_NodeInfo_set_channels(uint32_t this_ptr, int64_tArray val) { - LDKNodeInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_u64Z val_constr; - val_constr.datalen = *((uint32_t*)val); - if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements"); - else - val_constr.data = NULL; - int64_t* val_vals = (int64_t*)(val + 4); - for (size_t i = 0; i < val_constr.datalen; i++) { - int64_t val_conv_8 = val_vals[i]; - val_constr.data[i] = val_conv_8; - } - NodeInfo_set_channels(&this_ptr_conv, val_constr); +jboolean __attribute__((visibility("default"))) TS_InitFeatures_eq(uint32_t a, uint32_t b) { + LDKInitFeatures a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + LDKInitFeatures b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + jboolean ret_val = InitFeatures_eq(&a_conv, &b_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_NodeInfo_get_lowest_inbound_channel_fees(uint32_t this_ptr) { - LDKNodeInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKRoutingFees ret_var = NodeInfo_get_lowest_inbound_channel_fees(&this_ptr_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } - return ret_ref; +jboolean __attribute__((visibility("default"))) TS_NodeFeatures_eq(uint32_t a, uint32_t b) { + LDKNodeFeatures a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + LDKNodeFeatures b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + jboolean ret_val = NodeFeatures_eq(&a_conv, &b_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_NodeInfo_set_lowest_inbound_channel_fees(uint32_t this_ptr, uint32_t val) { - LDKNodeInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKRoutingFees val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = RoutingFees_clone(&val_conv); - NodeInfo_set_lowest_inbound_channel_fees(&this_ptr_conv, val_conv); +jboolean __attribute__((visibility("default"))) TS_ChannelFeatures_eq(uint32_t a, uint32_t b) { + LDKChannelFeatures a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + LDKChannelFeatures b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + jboolean ret_val = ChannelFeatures_eq(&a_conv, &b_conv); + return ret_val; +} + +jboolean __attribute__((visibility("default"))) TS_InvoiceFeatures_eq(uint32_t a, uint32_t b) { + LDKInvoiceFeatures a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + LDKInvoiceFeatures b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + jboolean ret_val = InvoiceFeatures_eq(&a_conv, &b_conv); + return ret_val; +} + +jboolean __attribute__((visibility("default"))) TS_ChannelTypeFeatures_eq(uint32_t a, uint32_t b) { + LDKChannelTypeFeatures a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + LDKChannelTypeFeatures b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + jboolean ret_val = ChannelTypeFeatures_eq(&a_conv, &b_conv); + return ret_val; +} + +static inline uint64_t InitFeatures_clone_ptr(LDKInitFeatures *NONNULL_PTR arg) { + LDKInitFeatures ret_var = InitFeatures_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -uint32_t __attribute__((visibility("default"))) TS_NodeInfo_get_announcement_info(uint32_t this_ptr) { - LDKNodeInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeAnnouncementInfo ret_var = NodeInfo_get_announcement_info(&this_ptr_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } return ret_ref; } - -void __attribute__((visibility("default"))) TS_NodeInfo_set_announcement_info(uint32_t this_ptr, uint32_t val) { - LDKNodeInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeAnnouncementInfo val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = NodeAnnouncementInfo_clone(&val_conv); - NodeInfo_set_announcement_info(&this_ptr_conv, val_conv); +int64_t __attribute__((visibility("default"))) TS_InitFeatures_clone_ptr(uint32_t arg) { + LDKInitFeatures arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = InitFeatures_clone_ptr(&arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_NodeInfo_new(int64_tArray channels_arg, uint32_t lowest_inbound_channel_fees_arg, uint32_t announcement_info_arg) { - LDKCVec_u64Z channels_arg_constr; - channels_arg_constr.datalen = *((uint32_t*)channels_arg); - if (channels_arg_constr.datalen > 0) - channels_arg_constr.data = MALLOC(channels_arg_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements"); - else - channels_arg_constr.data = NULL; - int64_t* channels_arg_vals = (int64_t*)(channels_arg + 4); - for (size_t i = 0; i < channels_arg_constr.datalen; i++) { - int64_t channels_arg_conv_8 = channels_arg_vals[i]; - channels_arg_constr.data[i] = channels_arg_conv_8; - } - LDKRoutingFees lowest_inbound_channel_fees_arg_conv; - lowest_inbound_channel_fees_arg_conv.inner = (void*)(lowest_inbound_channel_fees_arg & (~1)); - lowest_inbound_channel_fees_arg_conv.is_owned = (lowest_inbound_channel_fees_arg & 1) || (lowest_inbound_channel_fees_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(lowest_inbound_channel_fees_arg_conv); - lowest_inbound_channel_fees_arg_conv = RoutingFees_clone(&lowest_inbound_channel_fees_arg_conv); - LDKNodeAnnouncementInfo announcement_info_arg_conv; - announcement_info_arg_conv.inner = (void*)(announcement_info_arg & (~1)); - announcement_info_arg_conv.is_owned = (announcement_info_arg & 1) || (announcement_info_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(announcement_info_arg_conv); - announcement_info_arg_conv = NodeAnnouncementInfo_clone(&announcement_info_arg_conv); - LDKNodeInfo ret_var = NodeInfo_new(channels_arg_constr, lowest_inbound_channel_fees_arg_conv, announcement_info_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_InitFeatures_clone(uint32_t orig) { + LDKInitFeatures orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKInitFeatures ret_var = InitFeatures_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -33171,8 +30626,8 @@ uint32_t __attribute__((visibility("default"))) TS_NodeInfo_new(int64_tArray ch return ret_ref; } -static inline uint64_t NodeInfo_clone_ptr(LDKNodeInfo *NONNULL_PTR arg) { - LDKNodeInfo ret_var = NodeInfo_clone(arg); +static inline uint64_t NodeFeatures_clone_ptr(LDKNodeFeatures *NONNULL_PTR arg) { + LDKNodeFeatures ret_var = NodeFeatures_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -33183,21 +30638,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_NodeInfo_clone_ptr(uint32_t arg) { - LDKNodeInfo arg_conv; +int64_t __attribute__((visibility("default"))) TS_NodeFeatures_clone_ptr(uint32_t arg) { + LDKNodeFeatures arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = NodeInfo_clone_ptr(&arg_conv); + int64_t ret_val = NodeFeatures_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_NodeInfo_clone(uint32_t orig) { - LDKNodeInfo orig_conv; +uint32_t __attribute__((visibility("default"))) TS_NodeFeatures_clone(uint32_t orig) { + LDKNodeFeatures orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKNodeInfo ret_var = NodeInfo_clone(&orig_conv); + LDKNodeFeatures ret_var = NodeFeatures_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -33209,53 +30664,33 @@ uint32_t __attribute__((visibility("default"))) TS_NodeInfo_clone(uint32_t orig return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_NodeInfo_write(uint32_t obj) { - LDKNodeInfo obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = NodeInfo_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_NodeInfo_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_NodeInfoDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeInfoDecodeErrorZ), "LDKCResult_NodeInfoDecodeErrorZ"); - *ret_conv = NodeInfo_read(ser_ref); - return (uint64_t)ret_conv; +static inline uint64_t ChannelFeatures_clone_ptr(LDKChannelFeatures *NONNULL_PTR arg) { + LDKChannelFeatures ret_var = ChannelFeatures_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -int8_tArray __attribute__((visibility("default"))) TS_NetworkGraph_write(uint32_t obj) { - LDKNetworkGraph obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = NetworkGraph_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; + return ret_ref; } - -uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_NetworkGraphDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NetworkGraphDecodeErrorZ), "LDKCResult_NetworkGraphDecodeErrorZ"); - *ret_conv = NetworkGraph_read(ser_ref); - return (uint64_t)ret_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelFeatures_clone_ptr(uint32_t arg) { + LDKChannelFeatures arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ChannelFeatures_clone_ptr(&arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_new(int8_tArray genesis_hash) { - LDKThirtyTwoBytes genesis_hash_ref; - CHECK(*((uint32_t*)genesis_hash) == 32); - memcpy(genesis_hash_ref.data, (uint8_t*)(genesis_hash + 4), 32); - LDKNetworkGraph ret_var = NetworkGraph_new(genesis_hash_ref); +uint32_t __attribute__((visibility("default"))) TS_ChannelFeatures_clone(uint32_t orig) { + LDKChannelFeatures orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKChannelFeatures ret_var = ChannelFeatures_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -33267,12 +30702,33 @@ uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_new(int8_tArray return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_read_only(uint32_t this_arg) { - LDKNetworkGraph this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKReadOnlyNetworkGraph ret_var = NetworkGraph_read_only(&this_arg_conv); +static inline uint64_t InvoiceFeatures_clone_ptr(LDKInvoiceFeatures *NONNULL_PTR arg) { + LDKInvoiceFeatures ret_var = InvoiceFeatures_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_InvoiceFeatures_clone_ptr(uint32_t arg) { + LDKInvoiceFeatures arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = InvoiceFeatures_clone_ptr(&arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_InvoiceFeatures_clone(uint32_t orig) { + LDKInvoiceFeatures orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKInvoiceFeatures ret_var = InvoiceFeatures_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -33280,184 +30736,90 @@ uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_read_only(uint3 ret_ref = (uint64_t)ret_var.inner; if (ret_var.is_owned) { ret_ref |= 1; - } - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_update_node_from_announcement(uint32_t this_arg, uint32_t msg) { - LDKNetworkGraph this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKNodeAnnouncement msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = NetworkGraph_update_node_from_announcement(&this_arg_conv, &msg_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_update_node_from_unsigned_announcement(uint32_t this_arg, uint32_t msg) { - LDKNetworkGraph this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKUnsignedNodeAnnouncement msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = NetworkGraph_update_node_from_unsigned_announcement(&this_arg_conv, &msg_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_update_channel_from_announcement(uint32_t this_arg, uint32_t msg, uint32_t chain_access) { - LDKNetworkGraph this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKChannelAnnouncement msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - void* chain_access_ptr = (void*)(((uint64_t)chain_access) & ~1); - CHECK_ACCESS(chain_access_ptr); - LDKCOption_AccessZ chain_access_conv = *(LDKCOption_AccessZ*)(chain_access_ptr); - // Warning: we may need a move here but no clone is available for LDKCOption_AccessZ - if (chain_access_conv.tag == LDKCOption_AccessZ_Some) { - // Manually implement clone for Java trait instances - } - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = NetworkGraph_update_channel_from_announcement(&this_arg_conv, &msg_conv, chain_access_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_update_channel_from_unsigned_announcement(uint32_t this_arg, uint32_t msg, uint32_t chain_access) { - LDKNetworkGraph this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKUnsignedChannelAnnouncement msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - void* chain_access_ptr = (void*)(((uint64_t)chain_access) & ~1); - CHECK_ACCESS(chain_access_ptr); - LDKCOption_AccessZ chain_access_conv = *(LDKCOption_AccessZ*)(chain_access_ptr); - // Warning: we may need a move here but no clone is available for LDKCOption_AccessZ - if (chain_access_conv.tag == LDKCOption_AccessZ_Some) { - // Manually implement clone for Java trait instances - } - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = NetworkGraph_update_channel_from_unsigned_announcement(&this_arg_conv, &msg_conv, chain_access_conv); - return (uint64_t)ret_conv; -} - -void __attribute__((visibility("default"))) TS_NetworkGraph_close_channel_from_update(uint32_t this_arg, int64_t short_channel_id, jboolean is_permanent) { - LDKNetworkGraph this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - NetworkGraph_close_channel_from_update(&this_arg_conv, short_channel_id, is_permanent); + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_NetworkGraph_fail_node(uint32_t this_arg, int8_tArray _node_id, jboolean is_permanent) { - LDKNetworkGraph this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKPublicKey _node_id_ref; - CHECK(*((uint32_t*)_node_id) == 33); - memcpy(_node_id_ref.compressed_form, (uint8_t*)(_node_id + 4), 33); - NetworkGraph_fail_node(&this_arg_conv, _node_id_ref, is_permanent); +static inline uint64_t ChannelTypeFeatures_clone_ptr(LDKChannelTypeFeatures *NONNULL_PTR arg) { + LDKChannelTypeFeatures ret_var = ChannelTypeFeatures_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -void __attribute__((visibility("default"))) TS_NetworkGraph_remove_stale_channels_with_time(uint32_t this_arg, int64_t current_time_unix) { - LDKNetworkGraph this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - NetworkGraph_remove_stale_channels_with_time(&this_arg_conv, current_time_unix); + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_ChannelTypeFeatures_clone_ptr(uint32_t arg) { + LDKChannelTypeFeatures arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ChannelTypeFeatures_clone_ptr(&arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_update_channel(uint32_t this_arg, uint32_t msg) { - LDKNetworkGraph this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKChannelUpdate msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = NetworkGraph_update_channel(&this_arg_conv, &msg_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelTypeFeatures_clone(uint32_t orig) { + LDKChannelTypeFeatures orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKChannelTypeFeatures ret_var = ChannelTypeFeatures_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_update_channel_unsigned(uint32_t this_arg, uint32_t msg) { - LDKNetworkGraph this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKUnsignedChannelUpdate msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = NetworkGraph_update_channel_unsigned(&this_arg_conv, &msg_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_InitFeatures_free(uint32_t this_obj) { + LDKInitFeatures this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + InitFeatures_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_ReadOnlyNetworkGraph_get_addresses(uint32_t this_arg, int8_tArray pubkey) { - LDKReadOnlyNetworkGraph this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKPublicKey pubkey_ref; - CHECK(*((uint32_t*)pubkey) == 33); - memcpy(pubkey_ref.compressed_form, (uint8_t*)(pubkey + 4), 33); - LDKCOption_CVec_NetAddressZZ *ret_copy = MALLOC(sizeof(LDKCOption_CVec_NetAddressZZ), "LDKCOption_CVec_NetAddressZZ"); - *ret_copy = ReadOnlyNetworkGraph_get_addresses(&this_arg_conv, pubkey_ref); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_NodeFeatures_free(uint32_t this_obj) { + LDKNodeFeatures this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + NodeFeatures_free(this_obj_conv); } -void __attribute__((visibility("default"))) TS_RouteHop_free(uint32_t this_obj) { - LDKRouteHop this_obj_conv; +void __attribute__((visibility("default"))) TS_ChannelFeatures_free(uint32_t this_obj) { + LDKChannelFeatures this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - RouteHop_free(this_obj_conv); + ChannelFeatures_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_RouteHop_get_pubkey(uint32_t this_ptr) { - LDKRouteHop this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), RouteHop_get_pubkey(&this_ptr_conv).compressed_form, 33); - return ret_arr; +void __attribute__((visibility("default"))) TS_InvoiceFeatures_free(uint32_t this_obj) { + LDKInvoiceFeatures this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + InvoiceFeatures_free(this_obj_conv); } -void __attribute__((visibility("default"))) TS_RouteHop_set_pubkey(uint32_t this_ptr, int8_tArray val) { - LDKRouteHop this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - RouteHop_set_pubkey(&this_ptr_conv, val_ref); +void __attribute__((visibility("default"))) TS_ChannelTypeFeatures_free(uint32_t this_obj) { + LDKChannelTypeFeatures this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + ChannelTypeFeatures_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_RouteHop_get_node_features(uint32_t this_ptr) { - LDKRouteHop this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeFeatures ret_var = RouteHop_get_node_features(&this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_InitFeatures_empty() { + LDKInitFeatures ret_var = InitFeatures_empty(); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -33469,42 +30831,8 @@ uint32_t __attribute__((visibility("default"))) TS_RouteHop_get_node_features(u return ret_ref; } -void __attribute__((visibility("default"))) TS_RouteHop_set_node_features(uint32_t this_ptr, uint32_t val) { - LDKRouteHop this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeFeatures val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = NodeFeatures_clone(&val_conv); - RouteHop_set_node_features(&this_ptr_conv, val_conv); -} - -int64_t __attribute__((visibility("default"))) TS_RouteHop_get_short_channel_id(uint32_t this_ptr) { - LDKRouteHop this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = RouteHop_get_short_channel_id(&this_ptr_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_RouteHop_set_short_channel_id(uint32_t this_ptr, int64_t val) { - LDKRouteHop this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - RouteHop_set_short_channel_id(&this_ptr_conv, val); -} - -uint32_t __attribute__((visibility("default"))) TS_RouteHop_get_channel_features(uint32_t this_ptr) { - LDKRouteHop this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelFeatures ret_var = RouteHop_get_channel_features(&this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_InitFeatures_known() { + LDKInitFeatures ret_var = InitFeatures_known(); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -33516,68 +30844,52 @@ uint32_t __attribute__((visibility("default"))) TS_RouteHop_get_channel_feature return ret_ref; } -void __attribute__((visibility("default"))) TS_RouteHop_set_channel_features(uint32_t this_ptr, uint32_t val) { - LDKRouteHop this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelFeatures val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = ChannelFeatures_clone(&val_conv); - RouteHop_set_channel_features(&this_ptr_conv, val_conv); -} - -int64_t __attribute__((visibility("default"))) TS_RouteHop_get_fee_msat(uint32_t this_ptr) { - LDKRouteHop this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = RouteHop_get_fee_msat(&this_ptr_conv); +jboolean __attribute__((visibility("default"))) TS_InitFeatures_requires_unknown_bits(uint32_t this_arg) { + LDKInitFeatures this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + jboolean ret_val = InitFeatures_requires_unknown_bits(&this_arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_RouteHop_set_fee_msat(uint32_t this_ptr, int64_t val) { - LDKRouteHop this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - RouteHop_set_fee_msat(&this_ptr_conv, val); -} - -int32_t __attribute__((visibility("default"))) TS_RouteHop_get_cltv_expiry_delta(uint32_t this_ptr) { - LDKRouteHop this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = RouteHop_get_cltv_expiry_delta(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_NodeFeatures_empty() { + LDKNodeFeatures ret_var = NodeFeatures_empty(); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_RouteHop_set_cltv_expiry_delta(uint32_t this_ptr, int32_t val) { - LDKRouteHop this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - RouteHop_set_cltv_expiry_delta(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_NodeFeatures_known() { + LDKNodeFeatures ret_var = NodeFeatures_known(); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_RouteHop_new(int8_tArray pubkey_arg, uint32_t node_features_arg, int64_t short_channel_id_arg, uint32_t channel_features_arg, int64_t fee_msat_arg, int32_t cltv_expiry_delta_arg) { - LDKPublicKey pubkey_arg_ref; - CHECK(*((uint32_t*)pubkey_arg) == 33); - memcpy(pubkey_arg_ref.compressed_form, (uint8_t*)(pubkey_arg + 4), 33); - LDKNodeFeatures node_features_arg_conv; - node_features_arg_conv.inner = (void*)(node_features_arg & (~1)); - node_features_arg_conv.is_owned = (node_features_arg & 1) || (node_features_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(node_features_arg_conv); - node_features_arg_conv = NodeFeatures_clone(&node_features_arg_conv); - LDKChannelFeatures channel_features_arg_conv; - channel_features_arg_conv.inner = (void*)(channel_features_arg & (~1)); - channel_features_arg_conv.is_owned = (channel_features_arg & 1) || (channel_features_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_features_arg_conv); - channel_features_arg_conv = ChannelFeatures_clone(&channel_features_arg_conv); - LDKRouteHop ret_var = RouteHop_new(pubkey_arg_ref, node_features_arg_conv, short_channel_id_arg, channel_features_arg_conv, fee_msat_arg, cltv_expiry_delta_arg); +jboolean __attribute__((visibility("default"))) TS_NodeFeatures_requires_unknown_bits(uint32_t this_arg) { + LDKNodeFeatures this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + jboolean ret_val = NodeFeatures_requires_unknown_bits(&this_arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_ChannelFeatures_empty() { + LDKChannelFeatures ret_var = ChannelFeatures_empty(); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -33589,33 +30901,8 @@ uint32_t __attribute__((visibility("default"))) TS_RouteHop_new(int8_tArray pub return ret_ref; } -static inline uint64_t RouteHop_clone_ptr(LDKRouteHop *NONNULL_PTR arg) { - LDKRouteHop ret_var = RouteHop_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_RouteHop_clone_ptr(uint32_t arg) { - LDKRouteHop arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = RouteHop_clone_ptr(&arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_RouteHop_clone(uint32_t orig) { - LDKRouteHop orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKRouteHop ret_var = RouteHop_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelFeatures_known() { + LDKChannelFeatures ret_var = ChannelFeatures_known(); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -33627,193 +30914,52 @@ uint32_t __attribute__((visibility("default"))) TS_RouteHop_clone(uint32_t orig return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_RouteHop_hash(uint32_t o) { - LDKRouteHop o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = RouteHop_hash(&o_conv); - return ret_val; -} - -jboolean __attribute__((visibility("default"))) TS_RouteHop_eq(uint32_t a, uint32_t b) { - LDKRouteHop a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKRouteHop b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = RouteHop_eq(&a_conv, &b_conv); +jboolean __attribute__((visibility("default"))) TS_ChannelFeatures_requires_unknown_bits(uint32_t this_arg) { + LDKChannelFeatures this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + jboolean ret_val = ChannelFeatures_requires_unknown_bits(&this_arg_conv); return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_RouteHop_write(uint32_t obj) { - LDKRouteHop obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = RouteHop_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_RouteHop_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_RouteHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHopDecodeErrorZ), "LDKCResult_RouteHopDecodeErrorZ"); - *ret_conv = RouteHop_read(ser_ref); - return (uint64_t)ret_conv; -} - -void __attribute__((visibility("default"))) TS_Route_free(uint32_t this_obj) { - LDKRoute this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - Route_free(this_obj_conv); -} - -ptrArray __attribute__((visibility("default"))) TS_Route_get_paths(uint32_t this_ptr) { - LDKRoute this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_CVec_RouteHopZZ ret_var = Route_get_paths(&this_ptr_conv); - ptrArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native ptrArray Bytes"); - uint32_tArray *ret_arr_ptr = (uint32_tArray*)(ret_arr + 4); - for (size_t m = 0; m < ret_var.datalen; m++) { - LDKCVec_RouteHopZ ret_conv_12_var = ret_var.data[m]; - uint32_tArray ret_conv_12_arr = NULL; - ret_conv_12_arr = init_arr(ret_conv_12_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_conv_12_arr_ptr = (uint32_t*)(ret_conv_12_arr + 4); - for (size_t k = 0; k < ret_conv_12_var.datalen; k++) { - LDKRouteHop ret_conv_12_conv_10_var = ret_conv_12_var.data[k]; - uint64_t ret_conv_12_conv_10_ref = 0; - CHECK((((uint64_t)ret_conv_12_conv_10_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_12_conv_10_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_12_conv_10_var); - ret_conv_12_conv_10_ref = (uint64_t)ret_conv_12_conv_10_var.inner; - if (ret_conv_12_conv_10_var.is_owned) { - ret_conv_12_conv_10_ref |= 1; - } - ret_conv_12_arr_ptr[k] = ret_conv_12_conv_10_ref; - } - - FREE(ret_conv_12_var.data); - ret_arr_ptr[m] = ret_conv_12_arr; - } - - FREE(ret_var.data); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_Route_set_paths(uint32_t this_ptr, ptrArray val) { - LDKRoute this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_CVec_RouteHopZZ val_constr; - val_constr.datalen = *((uint32_t*)val); - if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKCVec_RouteHopZ), "LDKCVec_CVec_RouteHopZZ Elements"); - else - val_constr.data = NULL; - uint32_tArray* val_vals = (uint32_tArray*)(val + 4); - for (size_t m = 0; m < val_constr.datalen; m++) { - uint32_tArray val_conv_12 = val_vals[m]; - LDKCVec_RouteHopZ val_conv_12_constr; - val_conv_12_constr.datalen = *((uint32_t*)val_conv_12); - if (val_conv_12_constr.datalen > 0) - val_conv_12_constr.data = MALLOC(val_conv_12_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); - else - val_conv_12_constr.data = NULL; - uint32_t* val_conv_12_vals = (uint32_t*)(val_conv_12 + 4); - for (size_t k = 0; k < val_conv_12_constr.datalen; k++) { - uint32_t val_conv_12_conv_10 = val_conv_12_vals[k]; - LDKRouteHop val_conv_12_conv_10_conv; - val_conv_12_conv_10_conv.inner = (void*)(val_conv_12_conv_10 & (~1)); - val_conv_12_conv_10_conv.is_owned = (val_conv_12_conv_10 & 1) || (val_conv_12_conv_10 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_12_conv_10_conv); - val_conv_12_conv_10_conv = RouteHop_clone(&val_conv_12_conv_10_conv); - val_conv_12_constr.data[k] = val_conv_12_conv_10_conv; - } - val_constr.data[m] = val_conv_12_constr; +uint32_t __attribute__((visibility("default"))) TS_InvoiceFeatures_empty() { + LDKInvoiceFeatures ret_var = InvoiceFeatures_empty(); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - Route_set_paths(&this_ptr_conv, val_constr); + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_Route_get_payee(uint32_t this_ptr) { - LDKRoute this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPayee ret_var = Route_get_payee(&this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_InvoiceFeatures_known() { + LDKInvoiceFeatures ret_var = InvoiceFeatures_known(); uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } return ret_ref; } -void __attribute__((visibility("default"))) TS_Route_set_payee(uint32_t this_ptr, uint32_t val) { - LDKRoute this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPayee val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = Payee_clone(&val_conv); - Route_set_payee(&this_ptr_conv, val_conv); +jboolean __attribute__((visibility("default"))) TS_InvoiceFeatures_requires_unknown_bits(uint32_t this_arg) { + LDKInvoiceFeatures this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + jboolean ret_val = InvoiceFeatures_requires_unknown_bits(&this_arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Route_new(ptrArray paths_arg, uint32_t payee_arg) { - LDKCVec_CVec_RouteHopZZ paths_arg_constr; - paths_arg_constr.datalen = *((uint32_t*)paths_arg); - if (paths_arg_constr.datalen > 0) - paths_arg_constr.data = MALLOC(paths_arg_constr.datalen * sizeof(LDKCVec_RouteHopZ), "LDKCVec_CVec_RouteHopZZ Elements"); - else - paths_arg_constr.data = NULL; - uint32_tArray* paths_arg_vals = (uint32_tArray*)(paths_arg + 4); - for (size_t m = 0; m < paths_arg_constr.datalen; m++) { - uint32_tArray paths_arg_conv_12 = paths_arg_vals[m]; - LDKCVec_RouteHopZ paths_arg_conv_12_constr; - paths_arg_conv_12_constr.datalen = *((uint32_t*)paths_arg_conv_12); - if (paths_arg_conv_12_constr.datalen > 0) - paths_arg_conv_12_constr.data = MALLOC(paths_arg_conv_12_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); - else - paths_arg_conv_12_constr.data = NULL; - uint32_t* paths_arg_conv_12_vals = (uint32_t*)(paths_arg_conv_12 + 4); - for (size_t k = 0; k < paths_arg_conv_12_constr.datalen; k++) { - uint32_t paths_arg_conv_12_conv_10 = paths_arg_conv_12_vals[k]; - LDKRouteHop paths_arg_conv_12_conv_10_conv; - paths_arg_conv_12_conv_10_conv.inner = (void*)(paths_arg_conv_12_conv_10 & (~1)); - paths_arg_conv_12_conv_10_conv.is_owned = (paths_arg_conv_12_conv_10 & 1) || (paths_arg_conv_12_conv_10 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(paths_arg_conv_12_conv_10_conv); - paths_arg_conv_12_conv_10_conv = RouteHop_clone(&paths_arg_conv_12_conv_10_conv); - paths_arg_conv_12_constr.data[k] = paths_arg_conv_12_conv_10_conv; - } - paths_arg_constr.data[m] = paths_arg_conv_12_constr; - } - LDKPayee payee_arg_conv; - payee_arg_conv.inner = (void*)(payee_arg & (~1)); - payee_arg_conv.is_owned = (payee_arg & 1) || (payee_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(payee_arg_conv); - payee_arg_conv = Payee_clone(&payee_arg_conv); - LDKRoute ret_var = Route_new(paths_arg_constr, payee_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelTypeFeatures_empty() { + LDKChannelTypeFeatures ret_var = ChannelTypeFeatures_empty(); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -33824,34 +30970,9 @@ uint32_t __attribute__((visibility("default"))) TS_Route_new(ptrArray paths_arg } return ret_ref; } - -static inline uint64_t Route_clone_ptr(LDKRoute *NONNULL_PTR arg) { - LDKRoute ret_var = Route_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_Route_clone_ptr(uint32_t arg) { - LDKRoute arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = Route_clone_ptr(&arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_Route_clone(uint32_t orig) { - LDKRoute orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKRoute ret_var = Route_clone(&orig_conv); + +uint32_t __attribute__((visibility("default"))) TS_ChannelTypeFeatures_known() { + LDKChannelTypeFeatures ret_var = ChannelTypeFeatures_known(); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -33863,81 +30984,155 @@ uint32_t __attribute__((visibility("default"))) TS_Route_clone(uint32_t orig) { return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_Route_hash(uint32_t o) { - LDKRoute o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = Route_hash(&o_conv); +jboolean __attribute__((visibility("default"))) TS_ChannelTypeFeatures_requires_unknown_bits(uint32_t this_arg) { + LDKChannelTypeFeatures this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + jboolean ret_val = ChannelTypeFeatures_requires_unknown_bits(&this_arg_conv); return ret_val; } -jboolean __attribute__((visibility("default"))) TS_Route_eq(uint32_t a, uint32_t b) { - LDKRoute a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKRoute b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = Route_eq(&a_conv, &b_conv); - return ret_val; +int8_tArray __attribute__((visibility("default"))) TS_InitFeatures_write(uint32_t obj) { + LDKInitFeatures obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = InitFeatures_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -int64_t __attribute__((visibility("default"))) TS_Route_get_total_fees(uint32_t this_arg) { - LDKRoute this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = Route_get_total_fees(&this_arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_InitFeatures_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_InitFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitFeaturesDecodeErrorZ), "LDKCResult_InitFeaturesDecodeErrorZ"); + *ret_conv = InitFeatures_read(ser_ref); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_Route_get_total_amount(uint32_t this_arg) { - LDKRoute this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = Route_get_total_amount(&this_arg_conv); - return ret_val; +int8_tArray __attribute__((visibility("default"))) TS_ChannelFeatures_write(uint32_t obj) { + LDKChannelFeatures obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ChannelFeatures_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -int8_tArray __attribute__((visibility("default"))) TS_Route_write(uint32_t obj) { - LDKRoute obj_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelFeatures_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ChannelFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelFeaturesDecodeErrorZ), "LDKCResult_ChannelFeaturesDecodeErrorZ"); + *ret_conv = ChannelFeatures_read(ser_ref); + return (uint64_t)ret_conv; +} + +int8_tArray __attribute__((visibility("default"))) TS_NodeFeatures_write(uint32_t obj) { + LDKNodeFeatures obj_conv; obj_conv.inner = (void*)(obj & (~1)); obj_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = Route_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + LDKCVec_u8Z ret_var = NodeFeatures_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_Route_read(int8_tArray ser) { +uint32_t __attribute__((visibility("default"))) TS_NodeFeatures_read(int8_tArray ser) { LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_RouteDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteDecodeErrorZ), "LDKCResult_RouteDecodeErrorZ"); - *ret_conv = Route_read(ser_ref); + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_NodeFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeFeaturesDecodeErrorZ), "LDKCResult_NodeFeaturesDecodeErrorZ"); + *ret_conv = NodeFeatures_read(ser_ref); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_RouteParameters_free(uint32_t this_obj) { - LDKRouteParameters this_obj_conv; +int8_tArray __attribute__((visibility("default"))) TS_InvoiceFeatures_write(uint32_t obj) { + LDKInvoiceFeatures obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = InvoiceFeatures_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_InvoiceFeatures_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_InvoiceFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceFeaturesDecodeErrorZ), "LDKCResult_InvoiceFeaturesDecodeErrorZ"); + *ret_conv = InvoiceFeatures_read(ser_ref); + return (uint64_t)ret_conv; +} + +int8_tArray __attribute__((visibility("default"))) TS_ChannelTypeFeatures_write(uint32_t obj) { + LDKChannelTypeFeatures obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ChannelTypeFeatures_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_ChannelTypeFeatures_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ChannelTypeFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTypeFeaturesDecodeErrorZ), "LDKCResult_ChannelTypeFeaturesDecodeErrorZ"); + *ret_conv = ChannelTypeFeatures_read(ser_ref); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_ShutdownScript_free(uint32_t this_obj) { + LDKShutdownScript this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - RouteParameters_free(this_obj_conv); + ShutdownScript_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_RouteParameters_get_payee(uint32_t this_ptr) { - LDKRouteParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPayee ret_var = RouteParameters_get_payee(&this_ptr_conv); +static inline uint64_t ShutdownScript_clone_ptr(LDKShutdownScript *NONNULL_PTR arg) { + LDKShutdownScript ret_var = ShutdownScript_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_ShutdownScript_clone_ptr(uint32_t arg) { + LDKShutdownScript arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ShutdownScript_clone_ptr(&arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_ShutdownScript_clone(uint32_t orig) { + LDKShutdownScript orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKShutdownScript ret_var = ShutdownScript_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -33949,60 +31144,43 @@ uint32_t __attribute__((visibility("default"))) TS_RouteParameters_get_payee(ui return ret_ref; } -void __attribute__((visibility("default"))) TS_RouteParameters_set_payee(uint32_t this_ptr, uint32_t val) { - LDKRouteParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPayee val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = Payee_clone(&val_conv); - RouteParameters_set_payee(&this_ptr_conv, val_conv); -} - -int64_t __attribute__((visibility("default"))) TS_RouteParameters_get_final_value_msat(uint32_t this_ptr) { - LDKRouteParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = RouteParameters_get_final_value_msat(&this_ptr_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_RouteParameters_set_final_value_msat(uint32_t this_ptr, int64_t val) { - LDKRouteParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - RouteParameters_set_final_value_msat(&this_ptr_conv, val); +void __attribute__((visibility("default"))) TS_InvalidShutdownScript_free(uint32_t this_obj) { + LDKInvalidShutdownScript this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + InvalidShutdownScript_free(this_obj_conv); } -int32_t __attribute__((visibility("default"))) TS_RouteParameters_get_final_cltv_expiry_delta(uint32_t this_ptr) { - LDKRouteParameters this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_InvalidShutdownScript_get_script(uint32_t this_ptr) { + LDKInvalidShutdownScript this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = RouteParameters_get_final_cltv_expiry_delta(&this_ptr_conv); - return ret_val; + LDKu8slice ret_var = InvalidShutdownScript_get_script(&this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + return ret_arr; } -void __attribute__((visibility("default"))) TS_RouteParameters_set_final_cltv_expiry_delta(uint32_t this_ptr, int32_t val) { - LDKRouteParameters this_ptr_conv; +void __attribute__((visibility("default"))) TS_InvalidShutdownScript_set_script(uint32_t this_ptr, int8_tArray val) { + LDKInvalidShutdownScript this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - RouteParameters_set_final_cltv_expiry_delta(&this_ptr_conv, val); + LDKCVec_u8Z val_ref; + val_ref.datalen = val->arr_len; + val_ref.data = MALLOC(val_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(val_ref.data, val->elems, val_ref.datalen); + InvalidShutdownScript_set_script(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_RouteParameters_new(uint32_t payee_arg, int64_t final_value_msat_arg, int32_t final_cltv_expiry_delta_arg) { - LDKPayee payee_arg_conv; - payee_arg_conv.inner = (void*)(payee_arg & (~1)); - payee_arg_conv.is_owned = (payee_arg & 1) || (payee_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(payee_arg_conv); - payee_arg_conv = Payee_clone(&payee_arg_conv); - LDKRouteParameters ret_var = RouteParameters_new(payee_arg_conv, final_value_msat_arg, final_cltv_expiry_delta_arg); +uint32_t __attribute__((visibility("default"))) TS_InvalidShutdownScript_new(int8_tArray script_arg) { + LDKCVec_u8Z script_arg_ref; + script_arg_ref.datalen = script_arg->arr_len; + script_arg_ref.data = MALLOC(script_arg_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(script_arg_ref.data, script_arg->elems, script_arg_ref.datalen); + LDKInvalidShutdownScript ret_var = InvalidShutdownScript_new(script_arg_ref); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -34014,8 +31192,8 @@ uint32_t __attribute__((visibility("default"))) TS_RouteParameters_new(uint32_t return ret_ref; } -static inline uint64_t RouteParameters_clone_ptr(LDKRouteParameters *NONNULL_PTR arg) { - LDKRouteParameters ret_var = RouteParameters_clone(arg); +static inline uint64_t InvalidShutdownScript_clone_ptr(LDKInvalidShutdownScript *NONNULL_PTR arg) { + LDKInvalidShutdownScript ret_var = InvalidShutdownScript_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -34026,21 +31204,59 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_RouteParameters_clone_ptr(uint32_t arg) { - LDKRouteParameters arg_conv; +int64_t __attribute__((visibility("default"))) TS_InvalidShutdownScript_clone_ptr(uint32_t arg) { + LDKInvalidShutdownScript arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = RouteParameters_clone_ptr(&arg_conv); + int64_t ret_val = InvalidShutdownScript_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_RouteParameters_clone(uint32_t orig) { - LDKRouteParameters orig_conv; +uint32_t __attribute__((visibility("default"))) TS_InvalidShutdownScript_clone(uint32_t orig) { + LDKInvalidShutdownScript orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKRouteParameters ret_var = RouteParameters_clone(&orig_conv); + LDKInvalidShutdownScript ret_var = InvalidShutdownScript_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +int8_tArray __attribute__((visibility("default"))) TS_ShutdownScript_write(uint32_t obj) { + LDKShutdownScript obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ShutdownScript_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_ShutdownScript_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ShutdownScriptDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptDecodeErrorZ), "LDKCResult_ShutdownScriptDecodeErrorZ"); + *ret_conv = ShutdownScript_read(ser_ref); + return (uint64_t)ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_ShutdownScript_new_p2wpkh(int8_tArray pubkey_hash) { + unsigned char pubkey_hash_arr[20]; + CHECK(pubkey_hash->arr_len == 20); + memcpy(pubkey_hash_arr, pubkey_hash->elems, 20); + unsigned char (*pubkey_hash_ref)[20] = &pubkey_hash_arr; + LDKShutdownScript ret_var = ShutdownScript_new_p2wpkh(pubkey_hash_ref); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -34052,204 +31268,118 @@ uint32_t __attribute__((visibility("default"))) TS_RouteParameters_clone(uint32 return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_RouteParameters_write(uint32_t obj) { - LDKRouteParameters obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = RouteParameters_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_ShutdownScript_new_p2wsh(int8_tArray script_hash) { + unsigned char script_hash_arr[32]; + CHECK(script_hash->arr_len == 32); + memcpy(script_hash_arr, script_hash->elems, 32); + unsigned char (*script_hash_ref)[32] = &script_hash_arr; + LDKShutdownScript ret_var = ShutdownScript_new_p2wsh(script_hash_ref); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_RouteParameters_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_RouteParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteParametersDecodeErrorZ), "LDKCResult_RouteParametersDecodeErrorZ"); - *ret_conv = RouteParameters_read(ser_ref); +uint32_t __attribute__((visibility("default"))) TS_ShutdownScript_new_witness_program(int8_t version, int8_tArray program) { + LDKu8slice program_ref; + program_ref.datalen = program->arr_len; + program_ref.data = program->elems; + LDKCResult_ShutdownScriptInvalidShutdownScriptZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptInvalidShutdownScriptZ), "LDKCResult_ShutdownScriptInvalidShutdownScriptZ"); + *ret_conv = ShutdownScript_new_witness_program(version, program_ref); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_Payee_free(uint32_t this_obj) { - LDKPayee this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - Payee_free(this_obj_conv); -} - -int8_tArray __attribute__((visibility("default"))) TS_Payee_get_pubkey(uint32_t this_ptr) { - LDKPayee this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), Payee_get_pubkey(&this_ptr_conv).compressed_form, 33); +int8_tArray __attribute__((visibility("default"))) TS_ShutdownScript_into_inner(uint32_t this_arg) { + LDKShutdownScript this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = (this_arg & 1) || (this_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + this_arg_conv = ShutdownScript_clone(&this_arg_conv); + LDKCVec_u8Z ret_var = ShutdownScript_into_inner(this_arg_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); return ret_arr; } -void __attribute__((visibility("default"))) TS_Payee_set_pubkey(uint32_t this_ptr, int8_tArray val) { - LDKPayee this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - Payee_set_pubkey(&this_ptr_conv, val_ref); +int8_tArray __attribute__((visibility("default"))) TS_ShutdownScript_as_legacy_pubkey(uint32_t this_arg) { + LDKShutdownScript this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, ShutdownScript_as_legacy_pubkey(&this_arg_conv).compressed_form, 33); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_Payee_get_features(uint32_t this_ptr) { - LDKPayee this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKInvoiceFeatures ret_var = Payee_get_features(&this_ptr_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } - return ret_ref; +jboolean __attribute__((visibility("default"))) TS_ShutdownScript_is_compatible(uint32_t this_arg, uint32_t features) { + LDKShutdownScript this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKInitFeatures features_conv; + features_conv.inner = (void*)(features & (~1)); + features_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(features_conv); + jboolean ret_val = ShutdownScript_is_compatible(&this_arg_conv, &features_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_Payee_set_features(uint32_t this_ptr, uint32_t val) { - LDKPayee this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKInvoiceFeatures val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = InvoiceFeatures_clone(&val_conv); - Payee_set_features(&this_ptr_conv, val_conv); +void __attribute__((visibility("default"))) TS_CustomMessageReader_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKCustomMessageReader this_ptr_conv = *(LDKCustomMessageReader*)(this_ptr_ptr); + FREE((void*)this_ptr); + CustomMessageReader_free(this_ptr_conv); } -uint32_tArray __attribute__((visibility("default"))) TS_Payee_get_route_hints(uint32_t this_ptr) { - LDKPayee this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_RouteHintZ ret_var = Payee_get_route_hints(&this_ptr_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t l = 0; l < ret_var.datalen; l++) { - LDKRouteHint ret_conv_11_var = ret_var.data[l]; - uint64_t ret_conv_11_ref = 0; - CHECK((((uint64_t)ret_conv_11_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_11_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_11_var); - ret_conv_11_ref = (uint64_t)ret_conv_11_var.inner; - if (ret_conv_11_var.is_owned) { - ret_conv_11_ref |= 1; - } - ret_arr_ptr[l] = ret_conv_11_ref; - } - - FREE(ret_var.data); - return ret_arr; +static inline uint64_t Type_clone_ptr(LDKType *NONNULL_PTR arg) { + LDKType* ret_ret = MALLOC(sizeof(LDKType), "LDKType"); + *ret_ret = Type_clone(arg); + return (uint64_t)ret_ret; } - -void __attribute__((visibility("default"))) TS_Payee_set_route_hints(uint32_t this_ptr, uint32_tArray val) { - LDKPayee this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_RouteHintZ val_constr; - val_constr.datalen = *((uint32_t*)val); - if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKRouteHint), "LDKCVec_RouteHintZ Elements"); - else - val_constr.data = NULL; - uint32_t* val_vals = (uint32_t*)(val + 4); - for (size_t l = 0; l < val_constr.datalen; l++) { - uint32_t val_conv_11 = val_vals[l]; - LDKRouteHint val_conv_11_conv; - val_conv_11_conv.inner = (void*)(val_conv_11 & (~1)); - val_conv_11_conv.is_owned = (val_conv_11 & 1) || (val_conv_11 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_11_conv); - val_conv_11_conv = RouteHint_clone(&val_conv_11_conv); - val_constr.data[l] = val_conv_11_conv; - } - Payee_set_route_hints(&this_ptr_conv, val_constr); +int64_t __attribute__((visibility("default"))) TS_Type_clone_ptr(uint32_t arg) { + void* arg_ptr = (void*)(((uint64_t)arg) & ~1); + if (!(arg & 1)) { CHECK_ACCESS(arg_ptr); } + LDKType* arg_conv = (LDKType*)arg_ptr; + int64_t ret_val = Type_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Payee_get_expiry_time(uint32_t this_ptr) { - LDKPayee this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *ret_copy = Payee_get_expiry_time(&this_ptr_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_Type_clone(uint32_t orig) { + void* orig_ptr = (void*)(((uint64_t)orig) & ~1); + if (!(orig & 1)) { CHECK_ACCESS(orig_ptr); } + LDKType* orig_conv = (LDKType*)orig_ptr; + LDKType* ret_ret = MALLOC(sizeof(LDKType), "LDKType"); + *ret_ret = Type_clone(orig_conv); + return (uint64_t)ret_ret; } -void __attribute__((visibility("default"))) TS_Payee_set_expiry_time(uint32_t this_ptr, uint32_t val) { - LDKPayee this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr); - val_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)val) & ~1)); - Payee_set_expiry_time(&this_ptr_conv, val_conv); +void __attribute__((visibility("default"))) TS_Type_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKType this_ptr_conv = *(LDKType*)(this_ptr_ptr); + FREE((void*)this_ptr); + Type_free(this_ptr_conv); } -uint32_t __attribute__((visibility("default"))) TS_Payee_new(int8_tArray pubkey_arg, uint32_t features_arg, uint32_tArray route_hints_arg, uint32_t expiry_time_arg) { - LDKPublicKey pubkey_arg_ref; - CHECK(*((uint32_t*)pubkey_arg) == 33); - memcpy(pubkey_arg_ref.compressed_form, (uint8_t*)(pubkey_arg + 4), 33); - LDKInvoiceFeatures features_arg_conv; - features_arg_conv.inner = (void*)(features_arg & (~1)); - features_arg_conv.is_owned = (features_arg & 1) || (features_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(features_arg_conv); - features_arg_conv = InvoiceFeatures_clone(&features_arg_conv); - LDKCVec_RouteHintZ route_hints_arg_constr; - route_hints_arg_constr.datalen = *((uint32_t*)route_hints_arg); - if (route_hints_arg_constr.datalen > 0) - route_hints_arg_constr.data = MALLOC(route_hints_arg_constr.datalen * sizeof(LDKRouteHint), "LDKCVec_RouteHintZ Elements"); - else - route_hints_arg_constr.data = NULL; - uint32_t* route_hints_arg_vals = (uint32_t*)(route_hints_arg + 4); - for (size_t l = 0; l < route_hints_arg_constr.datalen; l++) { - uint32_t route_hints_arg_conv_11 = route_hints_arg_vals[l]; - LDKRouteHint route_hints_arg_conv_11_conv; - route_hints_arg_conv_11_conv.inner = (void*)(route_hints_arg_conv_11 & (~1)); - route_hints_arg_conv_11_conv.is_owned = (route_hints_arg_conv_11 & 1) || (route_hints_arg_conv_11 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(route_hints_arg_conv_11_conv); - route_hints_arg_conv_11_conv = RouteHint_clone(&route_hints_arg_conv_11_conv); - route_hints_arg_constr.data[l] = route_hints_arg_conv_11_conv; - } - void* expiry_time_arg_ptr = (void*)(((uint64_t)expiry_time_arg) & ~1); - CHECK_ACCESS(expiry_time_arg_ptr); - LDKCOption_u64Z expiry_time_arg_conv = *(LDKCOption_u64Z*)(expiry_time_arg_ptr); - expiry_time_arg_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)expiry_time_arg) & ~1)); - LDKPayee ret_var = Payee_new(pubkey_arg_ref, features_arg_conv, route_hints_arg_constr, expiry_time_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_NodeId_free(uint32_t this_obj) { + LDKNodeId this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + NodeId_free(this_obj_conv); } -static inline uint64_t Payee_clone_ptr(LDKPayee *NONNULL_PTR arg) { - LDKPayee ret_var = Payee_clone(arg); +static inline uint64_t NodeId_clone_ptr(LDKNodeId *NONNULL_PTR arg) { + LDKNodeId ret_var = NodeId_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -34260,21 +31390,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_Payee_clone_ptr(uint32_t arg) { - LDKPayee arg_conv; +int64_t __attribute__((visibility("default"))) TS_NodeId_clone_ptr(uint32_t arg) { + LDKNodeId arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = Payee_clone_ptr(&arg_conv); + int64_t ret_val = NodeId_clone_ptr(&arg_conv); return ret_val; } - -uint32_t __attribute__((visibility("default"))) TS_Payee_clone(uint32_t orig) { - LDKPayee orig_conv; + +uint32_t __attribute__((visibility("default"))) TS_NodeId_clone(uint32_t orig) { + LDKNodeId orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKPayee ret_var = Payee_clone(&orig_conv); + LDKNodeId ret_var = NodeId_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -34286,70 +31416,98 @@ uint32_t __attribute__((visibility("default"))) TS_Payee_clone(uint32_t orig) { return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_Payee_hash(uint32_t o) { - LDKPayee o_conv; +uint32_t __attribute__((visibility("default"))) TS_NodeId_from_pubkey(int8_tArray pubkey) { + LDKPublicKey pubkey_ref; + CHECK(pubkey->arr_len == 33); + memcpy(pubkey_ref.compressed_form, pubkey->elems, 33); + LDKNodeId ret_var = NodeId_from_pubkey(pubkey_ref); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +int8_tArray __attribute__((visibility("default"))) TS_NodeId_as_slice(uint32_t this_arg) { + LDKNodeId this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKu8slice ret_var = NodeId_as_slice(&this_arg_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + return ret_arr; +} + +int64_t __attribute__((visibility("default"))) TS_NodeId_hash(uint32_t o) { + LDKNodeId o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = Payee_hash(&o_conv); - return ret_val; -} - -jboolean __attribute__((visibility("default"))) TS_Payee_eq(uint32_t a, uint32_t b) { - LDKPayee a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKPayee b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = Payee_eq(&a_conv, &b_conv); + int64_t ret_val = NodeId_hash(&o_conv); return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_Payee_write(uint32_t obj) { - LDKPayee obj_conv; +int8_tArray __attribute__((visibility("default"))) TS_NodeId_write(uint32_t obj) { + LDKNodeId obj_conv; obj_conv.inner = (void*)(obj & (~1)); obj_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = Payee_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + LDKCVec_u8Z ret_var = NodeId_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_Payee_read(int8_tArray ser) { +uint32_t __attribute__((visibility("default"))) TS_NodeId_read(int8_tArray ser) { LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_PayeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeeDecodeErrorZ), "LDKCResult_PayeeDecodeErrorZ"); - *ret_conv = Payee_read(ser_ref); + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_NodeIdDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeIdDecodeErrorZ), "LDKCResult_NodeIdDecodeErrorZ"); + *ret_conv = NodeId_read(ser_ref); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Payee_from_node_id(int8_tArray pubkey) { - LDKPublicKey pubkey_ref; - CHECK(*((uint32_t*)pubkey) == 33); - memcpy(pubkey_ref.compressed_form, (uint8_t*)(pubkey + 4), 33); - LDKPayee ret_var = Payee_from_node_id(pubkey_ref); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } +void __attribute__((visibility("default"))) TS_NetworkGraph_free(uint32_t this_obj) { + LDKNetworkGraph this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + NetworkGraph_free(this_obj_conv); +} + +static inline uint64_t NetworkGraph_clone_ptr(LDKNetworkGraph *NONNULL_PTR arg) { + LDKNetworkGraph ret_var = NetworkGraph_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} return ret_ref; } +int64_t __attribute__((visibility("default"))) TS_NetworkGraph_clone_ptr(uint32_t arg) { + LDKNetworkGraph arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = NetworkGraph_clone_ptr(&arg_conv); + return ret_val; +} -uint32_t __attribute__((visibility("default"))) TS_Payee_for_keysend(int8_tArray pubkey) { - LDKPublicKey pubkey_ref; - CHECK(*((uint32_t*)pubkey) == 33); - memcpy(pubkey_ref.compressed_form, (uint8_t*)(pubkey + 4), 33); - LDKPayee ret_var = Payee_for_keysend(pubkey_ref); +uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_clone(uint32_t orig) { + LDKNetworkGraph orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKNetworkGraph ret_var = NetworkGraph_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -34361,120 +31519,124 @@ uint32_t __attribute__((visibility("default"))) TS_Payee_for_keysend(int8_tArra return ret_ref; } -void __attribute__((visibility("default"))) TS_RouteHint_free(uint32_t this_obj) { - LDKRouteHint this_obj_conv; +void __attribute__((visibility("default"))) TS_ReadOnlyNetworkGraph_free(uint32_t this_obj) { + LDKReadOnlyNetworkGraph this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - RouteHint_free(this_obj_conv); + ReadOnlyNetworkGraph_free(this_obj_conv); } -uint32_tArray __attribute__((visibility("default"))) TS_RouteHint_get_a(uint32_t this_ptr) { - LDKRouteHint this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_RouteHintHopZ ret_var = RouteHint_get_a(&this_ptr_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t o = 0; o < ret_var.datalen; o++) { - LDKRouteHintHop ret_conv_14_var = ret_var.data[o]; - uint64_t ret_conv_14_ref = 0; - CHECK((((uint64_t)ret_conv_14_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_14_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_14_var); - ret_conv_14_ref = (uint64_t)ret_conv_14_var.inner; - if (ret_conv_14_var.is_owned) { - ret_conv_14_ref |= 1; - } - ret_arr_ptr[o] = ret_conv_14_ref; - } - - FREE(ret_var.data); - return ret_arr; +void __attribute__((visibility("default"))) TS_NetworkUpdate_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKNetworkUpdate this_ptr_conv = *(LDKNetworkUpdate*)(this_ptr_ptr); + FREE((void*)this_ptr); + NetworkUpdate_free(this_ptr_conv); } -void __attribute__((visibility("default"))) TS_RouteHint_set_a(uint32_t this_ptr, uint32_tArray val) { - LDKRouteHint this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_RouteHintHopZ val_constr; - val_constr.datalen = *((uint32_t*)val); - if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKRouteHintHop), "LDKCVec_RouteHintHopZ Elements"); - else - val_constr.data = NULL; - uint32_t* val_vals = (uint32_t*)(val + 4); - for (size_t o = 0; o < val_constr.datalen; o++) { - uint32_t val_conv_14 = val_vals[o]; - LDKRouteHintHop val_conv_14_conv; - val_conv_14_conv.inner = (void*)(val_conv_14 & (~1)); - val_conv_14_conv.is_owned = (val_conv_14 & 1) || (val_conv_14 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_14_conv); - val_conv_14_conv = RouteHintHop_clone(&val_conv_14_conv); - val_constr.data[o] = val_conv_14_conv; - } - RouteHint_set_a(&this_ptr_conv, val_constr); +static inline uint64_t NetworkUpdate_clone_ptr(LDKNetworkUpdate *NONNULL_PTR arg) { + LDKNetworkUpdate *ret_copy = MALLOC(sizeof(LDKNetworkUpdate), "LDKNetworkUpdate"); + *ret_copy = NetworkUpdate_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_NetworkUpdate_clone_ptr(uint32_t arg) { + LDKNetworkUpdate* arg_conv = (LDKNetworkUpdate*)arg; + int64_t ret_val = NetworkUpdate_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_RouteHint_new(uint32_tArray a_arg) { - LDKCVec_RouteHintHopZ a_arg_constr; - a_arg_constr.datalen = *((uint32_t*)a_arg); - if (a_arg_constr.datalen > 0) - a_arg_constr.data = MALLOC(a_arg_constr.datalen * sizeof(LDKRouteHintHop), "LDKCVec_RouteHintHopZ Elements"); - else - a_arg_constr.data = NULL; - uint32_t* a_arg_vals = (uint32_t*)(a_arg + 4); - for (size_t o = 0; o < a_arg_constr.datalen; o++) { - uint32_t a_arg_conv_14 = a_arg_vals[o]; - LDKRouteHintHop a_arg_conv_14_conv; - a_arg_conv_14_conv.inner = (void*)(a_arg_conv_14 & (~1)); - a_arg_conv_14_conv.is_owned = (a_arg_conv_14 & 1) || (a_arg_conv_14 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_arg_conv_14_conv); - a_arg_conv_14_conv = RouteHintHop_clone(&a_arg_conv_14_conv); - a_arg_constr.data[o] = a_arg_conv_14_conv; - } - LDKRouteHint ret_var = RouteHint_new(a_arg_constr); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } +uint32_t __attribute__((visibility("default"))) TS_NetworkUpdate_clone(uint32_t orig) { + LDKNetworkUpdate* orig_conv = (LDKNetworkUpdate*)orig; + LDKNetworkUpdate *ret_copy = MALLOC(sizeof(LDKNetworkUpdate), "LDKNetworkUpdate"); + *ret_copy = NetworkUpdate_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -static inline uint64_t RouteHint_clone_ptr(LDKRouteHint *NONNULL_PTR arg) { - LDKRouteHint ret_var = RouteHint_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_NetworkUpdate_channel_update_message(uint32_t msg) { + LDKChannelUpdate msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = ChannelUpdate_clone(&msg_conv); + LDKNetworkUpdate *ret_copy = MALLOC(sizeof(LDKNetworkUpdate), "LDKNetworkUpdate"); + *ret_copy = NetworkUpdate_channel_update_message(msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_NetworkUpdate_channel_closed(int64_t short_channel_id, jboolean is_permanent) { + LDKNetworkUpdate *ret_copy = MALLOC(sizeof(LDKNetworkUpdate), "LDKNetworkUpdate"); + *ret_copy = NetworkUpdate_channel_closed(short_channel_id, is_permanent); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } + +uint32_t __attribute__((visibility("default"))) TS_NetworkUpdate_node_failure(int8_tArray node_id, jboolean is_permanent) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKNetworkUpdate *ret_copy = MALLOC(sizeof(LDKNetworkUpdate), "LDKNetworkUpdate"); + *ret_copy = NetworkUpdate_node_failure(node_id_ref, is_permanent); + uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_RouteHint_clone_ptr(uint32_t arg) { - LDKRouteHint arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = RouteHint_clone_ptr(&arg_conv); - return ret_val; + +int8_tArray __attribute__((visibility("default"))) TS_NetworkUpdate_write(uint32_t obj) { + LDKNetworkUpdate* obj_conv = (LDKNetworkUpdate*)obj; + LDKCVec_u8Z ret_var = NetworkUpdate_write(obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_NetworkUpdate_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_COption_NetworkUpdateZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_NetworkUpdateZDecodeErrorZ), "LDKCResult_COption_NetworkUpdateZDecodeErrorZ"); + *ret_conv = NetworkUpdate_read(ser_ref); + return (uint64_t)ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_NetGraphMsgHandler_as_EventHandler(uint32_t this_arg) { + LDKNetGraphMsgHandler this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKEventHandler* ret_ret = MALLOC(sizeof(LDKEventHandler), "LDKEventHandler"); + *ret_ret = NetGraphMsgHandler_as_EventHandler(&this_arg_conv); + return (uint64_t)ret_ret; +} + +void __attribute__((visibility("default"))) TS_NetGraphMsgHandler_free(uint32_t this_obj) { + LDKNetGraphMsgHandler this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + NetGraphMsgHandler_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_RouteHint_clone(uint32_t orig) { - LDKRouteHint orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKRouteHint ret_var = RouteHint_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_NetGraphMsgHandler_new(uint32_t network_graph, uint32_t chain_access, uint32_t logger) { + LDKNetworkGraph network_graph_conv; + network_graph_conv.inner = (void*)(network_graph & (~1)); + network_graph_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(network_graph_conv); + void* chain_access_ptr = (void*)(((uint64_t)chain_access) & ~1); + CHECK_ACCESS(chain_access_ptr); + LDKCOption_AccessZ chain_access_conv = *(LDKCOption_AccessZ*)(chain_access_ptr); + // Warning: we may need a move here but no clone is available for LDKCOption_AccessZ + if (chain_access_conv.tag == LDKCOption_AccessZ_Some) { + // Manually implement clone for Java trait instances + } + void* logger_ptr = (void*)(((uint64_t)logger) & ~1); + CHECK_ACCESS(logger_ptr); + LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); + LDKNetGraphMsgHandler ret_var = NetGraphMsgHandler_new(&network_graph_conv, chain_access_conv, logger_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -34486,155 +31648,130 @@ uint32_t __attribute__((visibility("default"))) TS_RouteHint_clone(uint32_t ori return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_RouteHint_hash(uint32_t o) { - LDKRouteHint o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = RouteHint_hash(&o_conv); - return ret_val; -} - -jboolean __attribute__((visibility("default"))) TS_RouteHint_eq(uint32_t a, uint32_t b) { - LDKRouteHint a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKRouteHint b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = RouteHint_eq(&a_conv, &b_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_NetGraphMsgHandler_add_chain_access(uint32_t this_arg, uint32_t chain_access) { + LDKNetGraphMsgHandler this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + void* chain_access_ptr = (void*)(((uint64_t)chain_access) & ~1); + CHECK_ACCESS(chain_access_ptr); + LDKCOption_AccessZ chain_access_conv = *(LDKCOption_AccessZ*)(chain_access_ptr); + // Warning: we may need a move here but no clone is available for LDKCOption_AccessZ + if (chain_access_conv.tag == LDKCOption_AccessZ_Some) { + // Manually implement clone for Java trait instances + } + NetGraphMsgHandler_add_chain_access(&this_arg_conv, chain_access_conv); } -int8_tArray __attribute__((visibility("default"))) TS_RouteHint_write(uint32_t obj) { - LDKRouteHint obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = RouteHint_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_NetGraphMsgHandler_as_RoutingMessageHandler(uint32_t this_arg) { + LDKNetGraphMsgHandler this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKRoutingMessageHandler* ret_ret = MALLOC(sizeof(LDKRoutingMessageHandler), "LDKRoutingMessageHandler"); + *ret_ret = NetGraphMsgHandler_as_RoutingMessageHandler(&this_arg_conv); + return (uint64_t)ret_ret; } -uint32_t __attribute__((visibility("default"))) TS_RouteHint_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_RouteHintDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintDecodeErrorZ), "LDKCResult_RouteHintDecodeErrorZ"); - *ret_conv = RouteHint_read(ser_ref); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_NetGraphMsgHandler_as_MessageSendEventsProvider(uint32_t this_arg) { + LDKNetGraphMsgHandler this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKMessageSendEventsProvider* ret_ret = MALLOC(sizeof(LDKMessageSendEventsProvider), "LDKMessageSendEventsProvider"); + *ret_ret = NetGraphMsgHandler_as_MessageSendEventsProvider(&this_arg_conv); + return (uint64_t)ret_ret; } -void __attribute__((visibility("default"))) TS_RouteHintHop_free(uint32_t this_obj) { - LDKRouteHintHop this_obj_conv; +void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_free(uint32_t this_obj) { + LDKDirectionalChannelInfo this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - RouteHintHop_free(this_obj_conv); + DirectionalChannelInfo_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_RouteHintHop_get_src_node_id(uint32_t this_ptr) { - LDKRouteHintHop this_ptr_conv; +int32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_last_update(uint32_t this_ptr) { + LDKDirectionalChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), RouteHintHop_get_src_node_id(&this_ptr_conv).compressed_form, 33); - return ret_arr; + int32_t ret_val = DirectionalChannelInfo_get_last_update(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_RouteHintHop_set_src_node_id(uint32_t this_ptr, int8_tArray val) { - LDKRouteHintHop this_ptr_conv; +void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_last_update(uint32_t this_ptr, int32_t val) { + LDKDirectionalChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - RouteHintHop_set_src_node_id(&this_ptr_conv, val_ref); + DirectionalChannelInfo_set_last_update(&this_ptr_conv, val); } -int64_t __attribute__((visibility("default"))) TS_RouteHintHop_get_short_channel_id(uint32_t this_ptr) { - LDKRouteHintHop this_ptr_conv; +jboolean __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_enabled(uint32_t this_ptr) { + LDKDirectionalChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = RouteHintHop_get_short_channel_id(&this_ptr_conv); + jboolean ret_val = DirectionalChannelInfo_get_enabled(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_RouteHintHop_set_short_channel_id(uint32_t this_ptr, int64_t val) { - LDKRouteHintHop this_ptr_conv; +void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_enabled(uint32_t this_ptr, jboolean val) { + LDKDirectionalChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - RouteHintHop_set_short_channel_id(&this_ptr_conv, val); + DirectionalChannelInfo_set_enabled(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_get_fees(uint32_t this_ptr) { - LDKRouteHintHop this_ptr_conv; +int16_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_cltv_expiry_delta(uint32_t this_ptr) { + LDKDirectionalChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKRoutingFees ret_var = RouteHintHop_get_fees(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + int16_t ret_val = DirectionalChannelInfo_get_cltv_expiry_delta(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_RouteHintHop_set_fees(uint32_t this_ptr, uint32_t val) { - LDKRouteHintHop this_ptr_conv; +void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_cltv_expiry_delta(uint32_t this_ptr, int16_t val) { + LDKDirectionalChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKRoutingFees val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = RoutingFees_clone(&val_conv); - RouteHintHop_set_fees(&this_ptr_conv, val_conv); + DirectionalChannelInfo_set_cltv_expiry_delta(&this_ptr_conv, val); } -int16_t __attribute__((visibility("default"))) TS_RouteHintHop_get_cltv_expiry_delta(uint32_t this_ptr) { - LDKRouteHintHop this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_htlc_minimum_msat(uint32_t this_ptr) { + LDKDirectionalChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = RouteHintHop_get_cltv_expiry_delta(&this_ptr_conv); + int64_t ret_val = DirectionalChannelInfo_get_htlc_minimum_msat(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_RouteHintHop_set_cltv_expiry_delta(uint32_t this_ptr, int16_t val) { - LDKRouteHintHop this_ptr_conv; +void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_htlc_minimum_msat(uint32_t this_ptr, int64_t val) { + LDKDirectionalChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - RouteHintHop_set_cltv_expiry_delta(&this_ptr_conv, val); + DirectionalChannelInfo_set_htlc_minimum_msat(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_get_htlc_minimum_msat(uint32_t this_ptr) { - LDKRouteHintHop this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_htlc_maximum_msat(uint32_t this_ptr) { + LDKDirectionalChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *ret_copy = RouteHintHop_get_htlc_minimum_msat(&this_ptr_conv); + *ret_copy = DirectionalChannelInfo_get_htlc_maximum_msat(&this_ptr_conv); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -void __attribute__((visibility("default"))) TS_RouteHintHop_set_htlc_minimum_msat(uint32_t this_ptr, uint32_t val) { - LDKRouteHintHop this_ptr_conv; +void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_htlc_maximum_msat(uint32_t this_ptr, uint32_t val) { + LDKDirectionalChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); @@ -34642,50 +31779,87 @@ void __attribute__((visibility("default"))) TS_RouteHintHop_set_htlc_minimum_ms CHECK_ACCESS(val_ptr); LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr); val_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)val) & ~1)); - RouteHintHop_set_htlc_minimum_msat(&this_ptr_conv, val_conv); + DirectionalChannelInfo_set_htlc_maximum_msat(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_get_htlc_maximum_msat(uint32_t this_ptr) { - LDKRouteHintHop this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_fees(uint32_t this_ptr) { + LDKDirectionalChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *ret_copy = RouteHintHop_get_htlc_maximum_msat(&this_ptr_conv); - uint64_t ret_ref = (uint64_t)ret_copy; + LDKRoutingFees ret_var = DirectionalChannelInfo_get_fees(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -void __attribute__((visibility("default"))) TS_RouteHintHop_set_htlc_maximum_msat(uint32_t this_ptr, uint32_t val) { - LDKRouteHintHop this_ptr_conv; +void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_fees(uint32_t this_ptr, uint32_t val) { + LDKDirectionalChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr); - val_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)val) & ~1)); - RouteHintHop_set_htlc_maximum_msat(&this_ptr_conv, val_conv); + LDKRoutingFees val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = RoutingFees_clone(&val_conv); + DirectionalChannelInfo_set_fees(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_new(int8_tArray src_node_id_arg, int64_t short_channel_id_arg, uint32_t fees_arg, int16_t cltv_expiry_delta_arg, uint32_t htlc_minimum_msat_arg, uint32_t htlc_maximum_msat_arg) { - LDKPublicKey src_node_id_arg_ref; - CHECK(*((uint32_t*)src_node_id_arg) == 33); - memcpy(src_node_id_arg_ref.compressed_form, (uint8_t*)(src_node_id_arg + 4), 33); - LDKRoutingFees fees_arg_conv; - fees_arg_conv.inner = (void*)(fees_arg & (~1)); - fees_arg_conv.is_owned = (fees_arg & 1) || (fees_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(fees_arg_conv); - fees_arg_conv = RoutingFees_clone(&fees_arg_conv); - void* htlc_minimum_msat_arg_ptr = (void*)(((uint64_t)htlc_minimum_msat_arg) & ~1); - CHECK_ACCESS(htlc_minimum_msat_arg_ptr); - LDKCOption_u64Z htlc_minimum_msat_arg_conv = *(LDKCOption_u64Z*)(htlc_minimum_msat_arg_ptr); - htlc_minimum_msat_arg_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)htlc_minimum_msat_arg) & ~1)); +uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_last_update_message(uint32_t this_ptr) { + LDKDirectionalChannelInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelUpdate ret_var = DirectionalChannelInfo_get_last_update_message(&this_ptr_conv); + uint64_t ret_ref = 0; + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + } + return ret_ref; +} + +void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_last_update_message(uint32_t this_ptr, uint32_t val) { + LDKDirectionalChannelInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelUpdate val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = ChannelUpdate_clone(&val_conv); + DirectionalChannelInfo_set_last_update_message(&this_ptr_conv, val_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_new(int32_t last_update_arg, jboolean enabled_arg, int16_t cltv_expiry_delta_arg, int64_t htlc_minimum_msat_arg, uint32_t htlc_maximum_msat_arg, uint32_t fees_arg, uint32_t last_update_message_arg) { void* htlc_maximum_msat_arg_ptr = (void*)(((uint64_t)htlc_maximum_msat_arg) & ~1); CHECK_ACCESS(htlc_maximum_msat_arg_ptr); LDKCOption_u64Z htlc_maximum_msat_arg_conv = *(LDKCOption_u64Z*)(htlc_maximum_msat_arg_ptr); htlc_maximum_msat_arg_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)htlc_maximum_msat_arg) & ~1)); - LDKRouteHintHop ret_var = RouteHintHop_new(src_node_id_arg_ref, short_channel_id_arg, fees_arg_conv, cltv_expiry_delta_arg, htlc_minimum_msat_arg_conv, htlc_maximum_msat_arg_conv); + LDKRoutingFees fees_arg_conv; + fees_arg_conv.inner = (void*)(fees_arg & (~1)); + fees_arg_conv.is_owned = (fees_arg & 1) || (fees_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(fees_arg_conv); + fees_arg_conv = RoutingFees_clone(&fees_arg_conv); + LDKChannelUpdate last_update_message_arg_conv; + last_update_message_arg_conv.inner = (void*)(last_update_message_arg & (~1)); + last_update_message_arg_conv.is_owned = (last_update_message_arg & 1) || (last_update_message_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(last_update_message_arg_conv); + last_update_message_arg_conv = ChannelUpdate_clone(&last_update_message_arg_conv); + LDKDirectionalChannelInfo ret_var = DirectionalChannelInfo_new(last_update_arg, enabled_arg, cltv_expiry_delta_arg, htlc_minimum_msat_arg, htlc_maximum_msat_arg_conv, fees_arg_conv, last_update_message_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -34697,8 +31871,8 @@ uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_new(int8_tArray return ret_ref; } -static inline uint64_t RouteHintHop_clone_ptr(LDKRouteHintHop *NONNULL_PTR arg) { - LDKRouteHintHop ret_var = RouteHintHop_clone(arg); +static inline uint64_t DirectionalChannelInfo_clone_ptr(LDKDirectionalChannelInfo *NONNULL_PTR arg) { + LDKDirectionalChannelInfo ret_var = DirectionalChannelInfo_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -34709,21 +31883,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_RouteHintHop_clone_ptr(uint32_t arg) { - LDKRouteHintHop arg_conv; +int64_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_clone_ptr(uint32_t arg) { + LDKDirectionalChannelInfo arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = RouteHintHop_clone_ptr(&arg_conv); + int64_t ret_val = DirectionalChannelInfo_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_clone(uint32_t orig) { - LDKRouteHintHop orig_conv; +uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_clone(uint32_t orig) { + LDKDirectionalChannelInfo orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKRouteHintHop ret_var = RouteHintHop_clone(&orig_conv); + LDKDirectionalChannelInfo ret_var = DirectionalChannelInfo_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -34735,123 +31909,41 @@ uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_clone(uint32_t return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_RouteHintHop_hash(uint32_t o) { - LDKRouteHintHop o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = RouteHintHop_hash(&o_conv); - return ret_val; -} - -jboolean __attribute__((visibility("default"))) TS_RouteHintHop_eq(uint32_t a, uint32_t b) { - LDKRouteHintHop a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKRouteHintHop b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = RouteHintHop_eq(&a_conv, &b_conv); - return ret_val; -} - -int8_tArray __attribute__((visibility("default"))) TS_RouteHintHop_write(uint32_t obj) { - LDKRouteHintHop obj_conv; +int8_tArray __attribute__((visibility("default"))) TS_DirectionalChannelInfo_write(uint32_t obj) { + LDKDirectionalChannelInfo obj_conv; obj_conv.inner = (void*)(obj & (~1)); obj_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = RouteHintHop_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + LDKCVec_u8Z ret_var = DirectionalChannelInfo_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_read(int8_tArray ser) { +uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_read(int8_tArray ser) { LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_RouteHintHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintHopDecodeErrorZ), "LDKCResult_RouteHintHopDecodeErrorZ"); - *ret_conv = RouteHintHop_read(ser_ref); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_find_route(int8_tArray our_node_pubkey, uint32_t params, uint32_t network, uint32_tArray first_hops, uint32_t logger, uint32_t scorer) { - LDKPublicKey our_node_pubkey_ref; - CHECK(*((uint32_t*)our_node_pubkey) == 33); - memcpy(our_node_pubkey_ref.compressed_form, (uint8_t*)(our_node_pubkey + 4), 33); - LDKRouteParameters params_conv; - params_conv.inner = (void*)(params & (~1)); - params_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(params_conv); - LDKNetworkGraph network_conv; - network_conv.inner = (void*)(network & (~1)); - network_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(network_conv); - LDKCVec_ChannelDetailsZ first_hops_constr; - LDKCVec_ChannelDetailsZ *first_hops_ptr = NULL; - if (first_hops != 0) { - first_hops_constr.datalen = *((uint32_t*)first_hops); - if (first_hops_constr.datalen > 0) - first_hops_constr.data = MALLOC(first_hops_constr.datalen * sizeof(LDKChannelDetails), "LDKCVec_ChannelDetailsZ Elements"); - else - first_hops_constr.data = NULL; - uint32_t* first_hops_vals = (uint32_t*)(first_hops + 4); - for (size_t q = 0; q < first_hops_constr.datalen; q++) { - uint32_t first_hops_conv_16 = first_hops_vals[q]; - LDKChannelDetails first_hops_conv_16_conv; - first_hops_conv_16_conv.inner = (void*)(first_hops_conv_16 & (~1)); - first_hops_conv_16_conv.is_owned = (first_hops_conv_16 & 1) || (first_hops_conv_16 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(first_hops_conv_16_conv); - first_hops_constr.data[q] = first_hops_conv_16_conv; - } - first_hops_ptr = &first_hops_constr; - } - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - void* scorer_ptr = (void*)(((uint64_t)scorer) & ~1); - if (!(scorer & 1)) { CHECK_ACCESS(scorer_ptr); } - LDKScore* scorer_conv = (LDKScore*)scorer_ptr; - LDKCResult_RouteLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteLightningErrorZ), "LDKCResult_RouteLightningErrorZ"); - *ret_conv = find_route(our_node_pubkey_ref, ¶ms_conv, &network_conv, first_hops_ptr, logger_conv, scorer_conv); - if (first_hops_ptr != NULL) { FREE(first_hops_constr.data); } + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_DirectionalChannelInfoDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DirectionalChannelInfoDecodeErrorZ), "LDKCResult_DirectionalChannelInfoDecodeErrorZ"); + *ret_conv = DirectionalChannelInfo_read(ser_ref); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_Score_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKScore this_ptr_conv = *(LDKScore*)(this_ptr_ptr); - FREE((void*)this_ptr); - Score_free(this_ptr_conv); -} - -void __attribute__((visibility("default"))) TS_LockableScore_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKLockableScore this_ptr_conv = *(LDKLockableScore*)(this_ptr_ptr); - FREE((void*)this_ptr); - LockableScore_free(this_ptr_conv); -} - -void __attribute__((visibility("default"))) TS_MultiThreadedLockableScore_free(uint32_t this_obj) { - LDKMultiThreadedLockableScore this_obj_conv; +void __attribute__((visibility("default"))) TS_ChannelInfo_free(uint32_t this_obj) { + LDKChannelInfo this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - MultiThreadedLockableScore_free(this_obj_conv); + ChannelInfo_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_MultiThreadedLockableScore_new(uint32_t score) { - void* score_ptr = (void*)(((uint64_t)score) & ~1); - CHECK_ACCESS(score_ptr); - LDKScore score_conv = *(LDKScore*)(score_ptr); - LDKMultiThreadedLockableScore ret_var = MultiThreadedLockableScore_new(score_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_features(uint32_t this_ptr) { + LDKChannelInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelFeatures ret_var = ChannelInfo_get_features(&this_ptr_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -34863,109 +31955,225 @@ uint32_t __attribute__((visibility("default"))) TS_MultiThreadedLockableScore_n return ret_ref; } -void __attribute__((visibility("default"))) TS_Scorer_free(uint32_t this_obj) { - LDKScorer this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - Scorer_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_ChannelInfo_set_features(uint32_t this_ptr, uint32_t val) { + LDKChannelInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelFeatures val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = ChannelFeatures_clone(&val_conv); + ChannelInfo_set_features(&this_ptr_conv, val_conv); } -void __attribute__((visibility("default"))) TS_ScoringParameters_free(uint32_t this_obj) { - LDKScoringParameters this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ScoringParameters_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_node_one(uint32_t this_ptr) { + LDKChannelInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKNodeId ret_var = ChannelInfo_get_node_one(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ScoringParameters_get_base_penalty_msat(uint32_t this_ptr) { - LDKScoringParameters this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelInfo_set_node_one(uint32_t this_ptr, uint32_t val) { + LDKChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ScoringParameters_get_base_penalty_msat(&this_ptr_conv); - return ret_val; + LDKNodeId val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = NodeId_clone(&val_conv); + ChannelInfo_set_node_one(&this_ptr_conv, val_conv); } -void __attribute__((visibility("default"))) TS_ScoringParameters_set_base_penalty_msat(uint32_t this_ptr, int64_t val) { - LDKScoringParameters this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_one_to_two(uint32_t this_ptr) { + LDKChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ScoringParameters_set_base_penalty_msat(&this_ptr_conv, val); + LDKDirectionalChannelInfo ret_var = ChannelInfo_get_one_to_two(&this_ptr_conv); + uint64_t ret_ref = 0; + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + } + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ScoringParameters_get_failure_penalty_msat(uint32_t this_ptr) { - LDKScoringParameters this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelInfo_set_one_to_two(uint32_t this_ptr, uint32_t val) { + LDKChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ScoringParameters_get_failure_penalty_msat(&this_ptr_conv); - return ret_val; + LDKDirectionalChannelInfo val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = DirectionalChannelInfo_clone(&val_conv); + ChannelInfo_set_one_to_two(&this_ptr_conv, val_conv); } -void __attribute__((visibility("default"))) TS_ScoringParameters_set_failure_penalty_msat(uint32_t this_ptr, int64_t val) { - LDKScoringParameters this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_node_two(uint32_t this_ptr) { + LDKChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ScoringParameters_set_failure_penalty_msat(&this_ptr_conv, val); + LDKNodeId ret_var = ChannelInfo_get_node_two(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int16_t __attribute__((visibility("default"))) TS_ScoringParameters_get_overuse_penalty_start_1024th(uint32_t this_ptr) { - LDKScoringParameters this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelInfo_set_node_two(uint32_t this_ptr, uint32_t val) { + LDKChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = ScoringParameters_get_overuse_penalty_start_1024th(&this_ptr_conv); - return ret_val; + LDKNodeId val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = NodeId_clone(&val_conv); + ChannelInfo_set_node_two(&this_ptr_conv, val_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_two_to_one(uint32_t this_ptr) { + LDKChannelInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKDirectionalChannelInfo ret_var = ChannelInfo_get_two_to_one(&this_ptr_conv); + uint64_t ret_ref = 0; + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_ScoringParameters_set_overuse_penalty_start_1024th(uint32_t this_ptr, int16_t val) { - LDKScoringParameters this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelInfo_set_two_to_one(uint32_t this_ptr, uint32_t val) { + LDKChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ScoringParameters_set_overuse_penalty_start_1024th(&this_ptr_conv, val); + LDKDirectionalChannelInfo val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = DirectionalChannelInfo_clone(&val_conv); + ChannelInfo_set_two_to_one(&this_ptr_conv, val_conv); } -int64_t __attribute__((visibility("default"))) TS_ScoringParameters_get_overuse_penalty_msat_per_1024th(uint32_t this_ptr) { - LDKScoringParameters this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_capacity_sats(uint32_t this_ptr) { + LDKChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ScoringParameters_get_overuse_penalty_msat_per_1024th(&this_ptr_conv); - return ret_val; + LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); + *ret_copy = ChannelInfo_get_capacity_sats(&this_ptr_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_ScoringParameters_set_overuse_penalty_msat_per_1024th(uint32_t this_ptr, int64_t val) { - LDKScoringParameters this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelInfo_set_capacity_sats(uint32_t this_ptr, uint32_t val) { + LDKChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ScoringParameters_set_overuse_penalty_msat_per_1024th(&this_ptr_conv, val); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr); + val_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)val) & ~1)); + ChannelInfo_set_capacity_sats(&this_ptr_conv, val_conv); } -int64_t __attribute__((visibility("default"))) TS_ScoringParameters_get_failure_penalty_half_life(uint32_t this_ptr) { - LDKScoringParameters this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_announcement_message(uint32_t this_ptr) { + LDKChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ScoringParameters_get_failure_penalty_half_life(&this_ptr_conv); - return ret_val; + LDKChannelAnnouncement ret_var = ChannelInfo_get_announcement_message(&this_ptr_conv); + uint64_t ret_ref = 0; + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_ScoringParameters_set_failure_penalty_half_life(uint32_t this_ptr, int64_t val) { - LDKScoringParameters this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelInfo_set_announcement_message(uint32_t this_ptr, uint32_t val) { + LDKChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ScoringParameters_set_failure_penalty_half_life(&this_ptr_conv, val); + LDKChannelAnnouncement val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = ChannelAnnouncement_clone(&val_conv); + ChannelInfo_set_announcement_message(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_ScoringParameters_new(int64_t base_penalty_msat_arg, int64_t failure_penalty_msat_arg, int16_t overuse_penalty_start_1024th_arg, int64_t overuse_penalty_msat_per_1024th_arg, int64_t failure_penalty_half_life_arg) { - LDKScoringParameters ret_var = ScoringParameters_new(base_penalty_msat_arg, failure_penalty_msat_arg, overuse_penalty_start_1024th_arg, overuse_penalty_msat_per_1024th_arg, failure_penalty_half_life_arg); +static inline uint64_t ChannelInfo_clone_ptr(LDKChannelInfo *NONNULL_PTR arg) { + LDKChannelInfo ret_var = ChannelInfo_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_ChannelInfo_clone_ptr(uint32_t arg) { + LDKChannelInfo arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ChannelInfo_clone_ptr(&arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_clone(uint32_t orig) { + LDKChannelInfo orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKChannelInfo ret_var = ChannelInfo_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -34977,60 +32185,71 @@ uint32_t __attribute__((visibility("default"))) TS_ScoringParameters_new(int64_ return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_ScoringParameters_write(uint32_t obj) { - LDKScoringParameters obj_conv; +int8_tArray __attribute__((visibility("default"))) TS_ChannelInfo_write(uint32_t obj) { + LDKChannelInfo obj_conv; obj_conv.inner = (void*)(obj & (~1)); obj_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ScoringParameters_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + LDKCVec_u8Z ret_var = ChannelInfo_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ScoringParameters_read(int8_tArray ser) { +uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_read(int8_tArray ser) { LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ScoringParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ScoringParametersDecodeErrorZ), "LDKCResult_ScoringParametersDecodeErrorZ"); - *ret_conv = ScoringParameters_read(ser_ref); + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ChannelInfoDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelInfoDecodeErrorZ), "LDKCResult_ChannelInfoDecodeErrorZ"); + *ret_conv = ChannelInfo_read(ser_ref); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Scorer_new(uint32_t params) { - LDKScoringParameters params_conv; - params_conv.inner = (void*)(params & (~1)); - params_conv.is_owned = (params & 1) || (params == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(params_conv); - // Warning: we need a move here but no clone is available for LDKScoringParameters - LDKScorer ret_var = Scorer_new(params_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_RoutingFees_free(uint32_t this_obj) { + LDKRoutingFees this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + RoutingFees_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_Scorer_default() { - LDKScorer ret_var = Scorer_default(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int32_t __attribute__((visibility("default"))) TS_RoutingFees_get_base_msat(uint32_t this_ptr) { + LDKRoutingFees this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = RoutingFees_get_base_msat(&this_ptr_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ScoringParameters_default() { - LDKScoringParameters ret_var = ScoringParameters_default(); +void __attribute__((visibility("default"))) TS_RoutingFees_set_base_msat(uint32_t this_ptr, int32_t val) { + LDKRoutingFees this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + RoutingFees_set_base_msat(&this_ptr_conv, val); +} + +int32_t __attribute__((visibility("default"))) TS_RoutingFees_get_proportional_millionths(uint32_t this_ptr) { + LDKRoutingFees this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = RoutingFees_get_proportional_millionths(&this_ptr_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_RoutingFees_set_proportional_millionths(uint32_t this_ptr, int32_t val) { + LDKRoutingFees this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + RoutingFees_set_proportional_millionths(&this_ptr_conv, val); +} + +uint32_t __attribute__((visibility("default"))) TS_RoutingFees_new(int32_t base_msat_arg, int32_t proportional_millionths_arg) { + LDKRoutingFees ret_var = RoutingFees_new(base_msat_arg, proportional_millionths_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -35042,48 +32261,46 @@ uint32_t __attribute__((visibility("default"))) TS_ScoringParameters_default() return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_Scorer_as_Score(uint32_t this_arg) { - LDKScorer this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKScore* ret_ret = MALLOC(sizeof(LDKScore), "LDKScore"); - *ret_ret = Scorer_as_Score(&this_arg_conv); - return (uint64_t)ret_ret; +jboolean __attribute__((visibility("default"))) TS_RoutingFees_eq(uint32_t a, uint32_t b) { + LDKRoutingFees a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + LDKRoutingFees b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + jboolean ret_val = RoutingFees_eq(&a_conv, &b_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_Scorer_write(uint32_t obj) { - LDKScorer obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = Scorer_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +static inline uint64_t RoutingFees_clone_ptr(LDKRoutingFees *NONNULL_PTR arg) { + LDKRoutingFees ret_var = RoutingFees_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -uint32_t __attribute__((visibility("default"))) TS_Scorer_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ScorerDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ScorerDecodeErrorZ), "LDKCResult_ScorerDecodeErrorZ"); - *ret_conv = Scorer_read(ser_ref); - return (uint64_t)ret_conv; + return ret_ref; } - -void __attribute__((visibility("default"))) TS_FilesystemPersister_free(uint32_t this_obj) { - LDKFilesystemPersister this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - FilesystemPersister_free(this_obj_conv); +int64_t __attribute__((visibility("default"))) TS_RoutingFees_clone_ptr(uint32_t arg) { + LDKRoutingFees arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = RoutingFees_clone_ptr(&arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_FilesystemPersister_new(jstring path_to_channel_data) { - LDKStr path_to_channel_data_conv = str_ref_to_owned_c(path_to_channel_data); - LDKFilesystemPersister ret_var = FilesystemPersister_new(path_to_channel_data_conv); +uint32_t __attribute__((visibility("default"))) TS_RoutingFees_clone(uint32_t orig) { + LDKRoutingFees orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKRoutingFees ret_var = RoutingFees_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -35095,95 +32312,50 @@ uint32_t __attribute__((visibility("default"))) TS_FilesystemPersister_new(jstr return ret_ref; } -jstring __attribute__((visibility("default"))) TS_FilesystemPersister_get_data_dir(uint32_t this_arg) { - LDKFilesystemPersister this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKStr ret_str = FilesystemPersister_get_data_dir(&this_arg_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_FilesystemPersister_persist_manager(jstring data_dir, uint32_t manager) { - LDKStr data_dir_conv = str_ref_to_owned_c(data_dir); - LDKChannelManager manager_conv; - manager_conv.inner = (void*)(manager & (~1)); - manager_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(manager_conv); - LDKCResult_NoneErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneErrorZ), "LDKCResult_NoneErrorZ"); - *ret_conv = FilesystemPersister_persist_manager(data_dir_conv, &manager_conv); - return (uint64_t)ret_conv; +int64_t __attribute__((visibility("default"))) TS_RoutingFees_hash(uint32_t o) { + LDKRoutingFees o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + int64_t ret_val = RoutingFees_hash(&o_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_FilesystemPersister_read_channelmonitors(uint32_t this_arg, uint32_t keys_manager) { - LDKFilesystemPersister this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - void* keys_manager_ptr = (void*)(((uint64_t)keys_manager) & ~1); - CHECK_ACCESS(keys_manager_ptr); - LDKKeysInterface keys_manager_conv = *(LDKKeysInterface*)(keys_manager_ptr); - LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ), "LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ"); - *ret_conv = FilesystemPersister_read_channelmonitors(&this_arg_conv, keys_manager_conv); - return (uint64_t)ret_conv; +int8_tArray __attribute__((visibility("default"))) TS_RoutingFees_write(uint32_t obj) { + LDKRoutingFees obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = RoutingFees_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_FilesystemPersister_as_Persist(uint32_t this_arg) { - LDKFilesystemPersister this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKPersist* ret_ret = MALLOC(sizeof(LDKPersist), "LDKPersist"); - *ret_ret = FilesystemPersister_as_Persist(&this_arg_conv); - return (uint64_t)ret_ret; +uint32_t __attribute__((visibility("default"))) TS_RoutingFees_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_RoutingFeesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RoutingFeesDecodeErrorZ), "LDKCResult_RoutingFeesDecodeErrorZ"); + *ret_conv = RoutingFees_read(ser_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_BackgroundProcessor_free(uint32_t this_obj) { - LDKBackgroundProcessor this_obj_conv; +void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_free(uint32_t this_obj) { + LDKNodeAnnouncementInfo this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - BackgroundProcessor_free(this_obj_conv); -} - -void __attribute__((visibility("default"))) TS_ChannelManagerPersister_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKChannelManagerPersister this_ptr_conv = *(LDKChannelManagerPersister*)(this_ptr_ptr); - FREE((void*)this_ptr); - ChannelManagerPersister_free(this_ptr_conv); + NodeAnnouncementInfo_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_BackgroundProcessor_start(uint32_t persister, uint32_t event_handler, uint32_t chain_monitor, uint32_t channel_manager, uint32_t net_graph_msg_handler, uint32_t peer_manager, uint32_t logger) { - void* persister_ptr = (void*)(((uint64_t)persister) & ~1); - CHECK_ACCESS(persister_ptr); - LDKChannelManagerPersister persister_conv = *(LDKChannelManagerPersister*)(persister_ptr); - void* event_handler_ptr = (void*)(((uint64_t)event_handler) & ~1); - CHECK_ACCESS(event_handler_ptr); - LDKEventHandler event_handler_conv = *(LDKEventHandler*)(event_handler_ptr); - LDKChainMonitor chain_monitor_conv; - chain_monitor_conv.inner = (void*)(chain_monitor & (~1)); - chain_monitor_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(chain_monitor_conv); - LDKChannelManager channel_manager_conv; - channel_manager_conv.inner = (void*)(channel_manager & (~1)); - channel_manager_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_manager_conv); - LDKNetGraphMsgHandler net_graph_msg_handler_conv; - net_graph_msg_handler_conv.inner = (void*)(net_graph_msg_handler & (~1)); - net_graph_msg_handler_conv.is_owned = (net_graph_msg_handler & 1) || (net_graph_msg_handler == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(net_graph_msg_handler_conv); - LDKPeerManager peer_manager_conv; - peer_manager_conv.inner = (void*)(peer_manager & (~1)); - peer_manager_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(peer_manager_conv); - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - LDKBackgroundProcessor ret_var = BackgroundProcessor_start(persister_conv, event_handler_conv, &chain_monitor_conv, &channel_manager_conv, net_graph_msg_handler_conv, &peer_manager_conv, logger_conv); +uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_get_features(uint32_t this_ptr) { + LDKNodeAnnouncementInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKNodeFeatures ret_var = NodeAnnouncementInfo_get_features(&this_ptr_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -35195,80 +32367,165 @@ uint32_t __attribute__((visibility("default"))) TS_BackgroundProcessor_start(ui return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_BackgroundProcessor_join(uint32_t this_arg) { - LDKBackgroundProcessor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = (this_arg & 1) || (this_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - // Warning: we need a move here but no clone is available for LDKBackgroundProcessor - LDKCResult_NoneErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneErrorZ), "LDKCResult_NoneErrorZ"); - *ret_conv = BackgroundProcessor_join(this_arg_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_set_features(uint32_t this_ptr, uint32_t val) { + LDKNodeAnnouncementInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKNodeFeatures val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = NodeFeatures_clone(&val_conv); + NodeAnnouncementInfo_set_features(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_BackgroundProcessor_stop(uint32_t this_arg) { - LDKBackgroundProcessor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = (this_arg & 1) || (this_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - // Warning: we need a move here but no clone is available for LDKBackgroundProcessor - LDKCResult_NoneErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneErrorZ), "LDKCResult_NoneErrorZ"); - *ret_conv = BackgroundProcessor_stop(this_arg_conv); - return (uint64_t)ret_conv; +int32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_get_last_update(uint32_t this_ptr) { + LDKNodeAnnouncementInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = NodeAnnouncementInfo_get_last_update(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_check_platform() { - check_platform(); +void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_set_last_update(uint32_t this_ptr, int32_t val) { + LDKNodeAnnouncementInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + NodeAnnouncementInfo_set_last_update(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_Invoice_free(uint32_t this_obj) { - LDKInvoice this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - Invoice_free(this_obj_conv); +int8_tArray __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_get_rgb(uint32_t this_ptr) { + LDKNodeAnnouncementInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(3); + memcpy(ret_arr->elems, *NodeAnnouncementInfo_get_rgb(&this_ptr_conv), 3); + return ret_arr; } -jboolean __attribute__((visibility("default"))) TS_Invoice_eq(uint32_t a, uint32_t b) { - LDKInvoice a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKInvoice b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = Invoice_eq(&a_conv, &b_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_set_rgb(uint32_t this_ptr, int8_tArray val) { + LDKNodeAnnouncementInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKThreeBytes val_ref; + CHECK(val->arr_len == 3); + memcpy(val_ref.data, val->elems, 3); + NodeAnnouncementInfo_set_rgb(&this_ptr_conv, val_ref); } -static inline uint64_t Invoice_clone_ptr(LDKInvoice *NONNULL_PTR arg) { - LDKInvoice ret_var = Invoice_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; +int8_tArray __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_get_alias(uint32_t this_ptr) { + LDKNodeAnnouncementInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *NodeAnnouncementInfo_get_alias(&this_ptr_conv), 32); + return ret_arr; +} + +void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_set_alias(uint32_t this_ptr, int8_tArray val) { + LDKNodeAnnouncementInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + NodeAnnouncementInfo_set_alias(&this_ptr_conv, val_ref); +} + +void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_set_addresses(uint32_t this_ptr, uint32_tArray val) { + LDKNodeAnnouncementInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_NetAddressZ val_constr; + val_constr.datalen = val->arr_len; + if (val_constr.datalen > 0) + val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKNetAddress), "LDKCVec_NetAddressZ Elements"); + else + val_constr.data = NULL; + uint32_t* val_vals = val->elems; + for (size_t m = 0; m < val_constr.datalen; m++) { + uint32_t val_conv_12 = val_vals[m]; + void* val_conv_12_ptr = (void*)(((uint64_t)val_conv_12) & ~1); + CHECK_ACCESS(val_conv_12_ptr); + LDKNetAddress val_conv_12_conv = *(LDKNetAddress*)(val_conv_12_ptr); + val_conv_12_conv = NetAddress_clone((LDKNetAddress*)(((uint64_t)val_conv_12) & ~1)); + val_constr.data[m] = val_conv_12_conv; + } + NodeAnnouncementInfo_set_addresses(&this_ptr_conv, val_constr); } + +uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_get_announcement_message(uint32_t this_ptr) { + LDKNodeAnnouncementInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKNodeAnnouncement ret_var = NodeAnnouncementInfo_get_announcement_message(&this_ptr_conv); + uint64_t ret_ref = 0; + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_Invoice_clone_ptr(uint32_t arg) { - LDKInvoice arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = Invoice_clone_ptr(&arg_conv); - return ret_val; + +void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_set_announcement_message(uint32_t this_ptr, uint32_t val) { + LDKNodeAnnouncementInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKNodeAnnouncement val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = NodeAnnouncement_clone(&val_conv); + NodeAnnouncementInfo_set_announcement_message(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_Invoice_clone(uint32_t orig) { - LDKInvoice orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKInvoice ret_var = Invoice_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_new(uint32_t features_arg, int32_t last_update_arg, int8_tArray rgb_arg, int8_tArray alias_arg, uint32_tArray addresses_arg, uint32_t announcement_message_arg) { + LDKNodeFeatures features_arg_conv; + features_arg_conv.inner = (void*)(features_arg & (~1)); + features_arg_conv.is_owned = (features_arg & 1) || (features_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(features_arg_conv); + features_arg_conv = NodeFeatures_clone(&features_arg_conv); + LDKThreeBytes rgb_arg_ref; + CHECK(rgb_arg->arr_len == 3); + memcpy(rgb_arg_ref.data, rgb_arg->elems, 3); + LDKThirtyTwoBytes alias_arg_ref; + CHECK(alias_arg->arr_len == 32); + memcpy(alias_arg_ref.data, alias_arg->elems, 32); + LDKCVec_NetAddressZ addresses_arg_constr; + addresses_arg_constr.datalen = addresses_arg->arr_len; + if (addresses_arg_constr.datalen > 0) + addresses_arg_constr.data = MALLOC(addresses_arg_constr.datalen * sizeof(LDKNetAddress), "LDKCVec_NetAddressZ Elements"); + else + addresses_arg_constr.data = NULL; + uint32_t* addresses_arg_vals = addresses_arg->elems; + for (size_t m = 0; m < addresses_arg_constr.datalen; m++) { + uint32_t addresses_arg_conv_12 = addresses_arg_vals[m]; + void* addresses_arg_conv_12_ptr = (void*)(((uint64_t)addresses_arg_conv_12) & ~1); + CHECK_ACCESS(addresses_arg_conv_12_ptr); + LDKNetAddress addresses_arg_conv_12_conv = *(LDKNetAddress*)(addresses_arg_conv_12_ptr); + addresses_arg_constr.data[m] = addresses_arg_conv_12_conv; + } + LDKNodeAnnouncement announcement_message_arg_conv; + announcement_message_arg_conv.inner = (void*)(announcement_message_arg & (~1)); + announcement_message_arg_conv.is_owned = (announcement_message_arg & 1) || (announcement_message_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(announcement_message_arg_conv); + announcement_message_arg_conv = NodeAnnouncement_clone(&announcement_message_arg_conv); + LDKNodeAnnouncementInfo ret_var = NodeAnnouncementInfo_new(features_arg_conv, last_update_arg, rgb_arg_ref, alias_arg_ref, addresses_arg_constr, announcement_message_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -35280,29 +32537,8 @@ uint32_t __attribute__((visibility("default"))) TS_Invoice_clone(uint32_t orig) return ret_ref; } -void __attribute__((visibility("default"))) TS_SignedRawInvoice_free(uint32_t this_obj) { - LDKSignedRawInvoice this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - SignedRawInvoice_free(this_obj_conv); -} - -jboolean __attribute__((visibility("default"))) TS_SignedRawInvoice_eq(uint32_t a, uint32_t b) { - LDKSignedRawInvoice a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKSignedRawInvoice b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = SignedRawInvoice_eq(&a_conv, &b_conv); - return ret_val; -} - -static inline uint64_t SignedRawInvoice_clone_ptr(LDKSignedRawInvoice *NONNULL_PTR arg) { - LDKSignedRawInvoice ret_var = SignedRawInvoice_clone(arg); +static inline uint64_t NodeAnnouncementInfo_clone_ptr(LDKNodeAnnouncementInfo *NONNULL_PTR arg) { + LDKNodeAnnouncementInfo ret_var = NodeAnnouncementInfo_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -35313,21 +32549,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_SignedRawInvoice_clone_ptr(uint32_t arg) { - LDKSignedRawInvoice arg_conv; +int64_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_clone_ptr(uint32_t arg) { + LDKNodeAnnouncementInfo arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = SignedRawInvoice_clone_ptr(&arg_conv); + int64_t ret_val = NodeAnnouncementInfo_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_SignedRawInvoice_clone(uint32_t orig) { - LDKSignedRawInvoice orig_conv; +uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_clone(uint32_t orig) { + LDKNodeAnnouncementInfo orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKSignedRawInvoice ret_var = SignedRawInvoice_clone(&orig_conv); + LDKNodeAnnouncementInfo ret_var = NodeAnnouncementInfo_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -35339,173 +32575,141 @@ uint32_t __attribute__((visibility("default"))) TS_SignedRawInvoice_clone(uint3 return ret_ref; } -void __attribute__((visibility("default"))) TS_RawInvoice_free(uint32_t this_obj) { - LDKRawInvoice this_obj_conv; +int8_tArray __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_write(uint32_t obj) { + LDKNodeAnnouncementInfo obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = NodeAnnouncementInfo_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_NodeAnnouncementInfoDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeAnnouncementInfoDecodeErrorZ), "LDKCResult_NodeAnnouncementInfoDecodeErrorZ"); + *ret_conv = NodeAnnouncementInfo_read(ser_ref); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_NodeInfo_free(uint32_t this_obj) { + LDKNodeInfo this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - RawInvoice_free(this_obj_conv); + NodeInfo_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_RawInvoice_get_data(uint32_t this_ptr) { - LDKRawInvoice this_ptr_conv; +void __attribute__((visibility("default"))) TS_NodeInfo_set_channels(uint32_t this_ptr, int64_tArray val) { + LDKNodeInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_u64Z val_constr; + val_constr.datalen = val->arr_len; + if (val_constr.datalen > 0) + val_constr.data = MALLOC(val_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements"); + else + val_constr.data = NULL; + int64_t* val_vals = val->elems; + for (size_t i = 0; i < val_constr.datalen; i++) { + int64_t val_conv_8 = val_vals[i]; + val_constr.data[i] = val_conv_8; + } + NodeInfo_set_channels(&this_ptr_conv, val_constr); +} + +uint32_t __attribute__((visibility("default"))) TS_NodeInfo_get_lowest_inbound_channel_fees(uint32_t this_ptr) { + LDKNodeInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKRawDataPart ret_var = RawInvoice_get_data(&this_ptr_conv); + LDKRoutingFees ret_var = NodeInfo_get_lowest_inbound_channel_fees(&this_ptr_conv); uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } } return ret_ref; } -void __attribute__((visibility("default"))) TS_RawInvoice_set_data(uint32_t this_ptr, uint32_t val) { - LDKRawInvoice this_ptr_conv; +void __attribute__((visibility("default"))) TS_NodeInfo_set_lowest_inbound_channel_fees(uint32_t this_ptr, uint32_t val) { + LDKNodeInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKRawDataPart val_conv; + LDKRoutingFees val_conv; val_conv.inner = (void*)(val & (~1)); val_conv.is_owned = (val & 1) || (val == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = RawDataPart_clone(&val_conv); - RawInvoice_set_data(&this_ptr_conv, val_conv); -} - -jboolean __attribute__((visibility("default"))) TS_RawInvoice_eq(uint32_t a, uint32_t b) { - LDKRawInvoice a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKRawInvoice b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = RawInvoice_eq(&a_conv, &b_conv); - return ret_val; -} - -static inline uint64_t RawInvoice_clone_ptr(LDKRawInvoice *NONNULL_PTR arg) { - LDKRawInvoice ret_var = RawInvoice_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_RawInvoice_clone_ptr(uint32_t arg) { - LDKRawInvoice arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = RawInvoice_clone_ptr(&arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_RawInvoice_clone(uint32_t orig) { - LDKRawInvoice orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKRawInvoice ret_var = RawInvoice_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; -} - -void __attribute__((visibility("default"))) TS_RawDataPart_free(uint32_t this_obj) { - LDKRawDataPart this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - RawDataPart_free(this_obj_conv); + val_conv = RoutingFees_clone(&val_conv); + NodeInfo_set_lowest_inbound_channel_fees(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_RawDataPart_get_timestamp(uint32_t this_ptr) { - LDKRawDataPart this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_NodeInfo_get_announcement_info(uint32_t this_ptr) { + LDKNodeInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPositiveTimestamp ret_var = RawDataPart_get_timestamp(&this_ptr_conv); + LDKNodeAnnouncementInfo ret_var = NodeInfo_get_announcement_info(&this_ptr_conv); uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } } return ret_ref; } -void __attribute__((visibility("default"))) TS_RawDataPart_set_timestamp(uint32_t this_ptr, uint32_t val) { - LDKRawDataPart this_ptr_conv; +void __attribute__((visibility("default"))) TS_NodeInfo_set_announcement_info(uint32_t this_ptr, uint32_t val) { + LDKNodeInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPositiveTimestamp val_conv; + LDKNodeAnnouncementInfo val_conv; val_conv.inner = (void*)(val & (~1)); val_conv.is_owned = (val & 1) || (val == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = PositiveTimestamp_clone(&val_conv); - RawDataPart_set_timestamp(&this_ptr_conv, val_conv); -} - -jboolean __attribute__((visibility("default"))) TS_RawDataPart_eq(uint32_t a, uint32_t b) { - LDKRawDataPart a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKRawDataPart b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = RawDataPart_eq(&a_conv, &b_conv); - return ret_val; -} - -static inline uint64_t RawDataPart_clone_ptr(LDKRawDataPart *NONNULL_PTR arg) { - LDKRawDataPart ret_var = RawDataPart_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_RawDataPart_clone_ptr(uint32_t arg) { - LDKRawDataPart arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = RawDataPart_clone_ptr(&arg_conv); - return ret_val; + val_conv = NodeAnnouncementInfo_clone(&val_conv); + NodeInfo_set_announcement_info(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_RawDataPart_clone(uint32_t orig) { - LDKRawDataPart orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKRawDataPart ret_var = RawDataPart_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_NodeInfo_new(int64_tArray channels_arg, uint32_t lowest_inbound_channel_fees_arg, uint32_t announcement_info_arg) { + LDKCVec_u64Z channels_arg_constr; + channels_arg_constr.datalen = channels_arg->arr_len; + if (channels_arg_constr.datalen > 0) + channels_arg_constr.data = MALLOC(channels_arg_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements"); + else + channels_arg_constr.data = NULL; + int64_t* channels_arg_vals = channels_arg->elems; + for (size_t i = 0; i < channels_arg_constr.datalen; i++) { + int64_t channels_arg_conv_8 = channels_arg_vals[i]; + channels_arg_constr.data[i] = channels_arg_conv_8; + } + LDKRoutingFees lowest_inbound_channel_fees_arg_conv; + lowest_inbound_channel_fees_arg_conv.inner = (void*)(lowest_inbound_channel_fees_arg & (~1)); + lowest_inbound_channel_fees_arg_conv.is_owned = (lowest_inbound_channel_fees_arg & 1) || (lowest_inbound_channel_fees_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(lowest_inbound_channel_fees_arg_conv); + lowest_inbound_channel_fees_arg_conv = RoutingFees_clone(&lowest_inbound_channel_fees_arg_conv); + LDKNodeAnnouncementInfo announcement_info_arg_conv; + announcement_info_arg_conv.inner = (void*)(announcement_info_arg & (~1)); + announcement_info_arg_conv.is_owned = (announcement_info_arg & 1) || (announcement_info_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(announcement_info_arg_conv); + announcement_info_arg_conv = NodeAnnouncementInfo_clone(&announcement_info_arg_conv); + LDKNodeInfo ret_var = NodeInfo_new(channels_arg_constr, lowest_inbound_channel_fees_arg_conv, announcement_info_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -35517,29 +32721,8 @@ uint32_t __attribute__((visibility("default"))) TS_RawDataPart_clone(uint32_t o return ret_ref; } -void __attribute__((visibility("default"))) TS_PositiveTimestamp_free(uint32_t this_obj) { - LDKPositiveTimestamp this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - PositiveTimestamp_free(this_obj_conv); -} - -jboolean __attribute__((visibility("default"))) TS_PositiveTimestamp_eq(uint32_t a, uint32_t b) { - LDKPositiveTimestamp a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKPositiveTimestamp b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = PositiveTimestamp_eq(&a_conv, &b_conv); - return ret_val; -} - -static inline uint64_t PositiveTimestamp_clone_ptr(LDKPositiveTimestamp *NONNULL_PTR arg) { - LDKPositiveTimestamp ret_var = PositiveTimestamp_clone(arg); +static inline uint64_t NodeInfo_clone_ptr(LDKNodeInfo *NONNULL_PTR arg) { + LDKNodeInfo ret_var = NodeInfo_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -35550,21 +32733,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_PositiveTimestamp_clone_ptr(uint32_t arg) { - LDKPositiveTimestamp arg_conv; +int64_t __attribute__((visibility("default"))) TS_NodeInfo_clone_ptr(uint32_t arg) { + LDKNodeInfo arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = PositiveTimestamp_clone_ptr(&arg_conv); + int64_t ret_val = NodeInfo_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_PositiveTimestamp_clone(uint32_t orig) { - LDKPositiveTimestamp orig_conv; +uint32_t __attribute__((visibility("default"))) TS_NodeInfo_clone(uint32_t orig) { + LDKNodeInfo orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKPositiveTimestamp ret_var = PositiveTimestamp_clone(&orig_conv); + LDKNodeInfo ret_var = NodeInfo_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -35576,297 +32759,255 @@ uint32_t __attribute__((visibility("default"))) TS_PositiveTimestamp_clone(uint return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_SiPrefix_clone(uint32_t orig) { - LDKSiPrefix* orig_conv = (LDKSiPrefix*)(orig & ~1); - uint32_t ret_conv = LDKSiPrefix_to_js(SiPrefix_clone(orig_conv)); - return ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_SiPrefix_milli() { - uint32_t ret_conv = LDKSiPrefix_to_js(SiPrefix_milli()); - return ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_SiPrefix_micro() { - uint32_t ret_conv = LDKSiPrefix_to_js(SiPrefix_micro()); - return ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_SiPrefix_nano() { - uint32_t ret_conv = LDKSiPrefix_to_js(SiPrefix_nano()); - return ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_SiPrefix_pico() { - uint32_t ret_conv = LDKSiPrefix_to_js(SiPrefix_pico()); - return ret_conv; -} - -jboolean __attribute__((visibility("default"))) TS_SiPrefix_eq(uint32_t a, uint32_t b) { - LDKSiPrefix* a_conv = (LDKSiPrefix*)(a & ~1); - LDKSiPrefix* b_conv = (LDKSiPrefix*)(b & ~1); - jboolean ret_val = SiPrefix_eq(a_conv, b_conv); - return ret_val; -} - -int64_t __attribute__((visibility("default"))) TS_SiPrefix_multiplier(uint32_t this_arg) { - LDKSiPrefix* this_arg_conv = (LDKSiPrefix*)(this_arg & ~1); - int64_t ret_val = SiPrefix_multiplier(this_arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_Currency_clone(uint32_t orig) { - LDKCurrency* orig_conv = (LDKCurrency*)(orig & ~1); - uint32_t ret_conv = LDKCurrency_to_js(Currency_clone(orig_conv)); - return ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_Currency_bitcoin() { - uint32_t ret_conv = LDKCurrency_to_js(Currency_bitcoin()); - return ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_Currency_bitcoin_testnet() { - uint32_t ret_conv = LDKCurrency_to_js(Currency_bitcoin_testnet()); - return ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_Currency_regtest() { - uint32_t ret_conv = LDKCurrency_to_js(Currency_regtest()); - return ret_conv; +int8_tArray __attribute__((visibility("default"))) TS_NodeInfo_write(uint32_t obj) { + LDKNodeInfo obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = NodeInfo_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_Currency_simnet() { - uint32_t ret_conv = LDKCurrency_to_js(Currency_simnet()); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_NodeInfo_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_NodeInfoDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeInfoDecodeErrorZ), "LDKCResult_NodeInfoDecodeErrorZ"); + *ret_conv = NodeInfo_read(ser_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Currency_signet() { - uint32_t ret_conv = LDKCurrency_to_js(Currency_signet()); - return ret_conv; +int8_tArray __attribute__((visibility("default"))) TS_NetworkGraph_write(uint32_t obj) { + LDKNetworkGraph obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = NetworkGraph_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -int64_t __attribute__((visibility("default"))) TS_Currency_hash(uint32_t o) { - LDKCurrency* o_conv = (LDKCurrency*)(o & ~1); - int64_t ret_val = Currency_hash(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_NetworkGraphDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NetworkGraphDecodeErrorZ), "LDKCResult_NetworkGraphDecodeErrorZ"); + *ret_conv = NetworkGraph_read(ser_ref); + return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_Currency_eq(uint32_t a, uint32_t b) { - LDKCurrency* a_conv = (LDKCurrency*)(a & ~1); - LDKCurrency* b_conv = (LDKCurrency*)(b & ~1); - jboolean ret_val = Currency_eq(a_conv, b_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_new(int8_tArray genesis_hash) { + LDKThirtyTwoBytes genesis_hash_ref; + CHECK(genesis_hash->arr_len == 32); + memcpy(genesis_hash_ref.data, genesis_hash->elems, 32); + LDKNetworkGraph ret_var = NetworkGraph_new(genesis_hash_ref); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_Sha256_free(uint32_t this_obj) { - LDKSha256 this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - Sha256_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_read_only(uint32_t this_arg) { + LDKNetworkGraph this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKReadOnlyNetworkGraph ret_var = NetworkGraph_read_only(&this_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline uint64_t Sha256_clone_ptr(LDKSha256 *NONNULL_PTR arg) { - LDKSha256 ret_var = Sha256_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_update_node_from_announcement(uint32_t this_arg, uint32_t msg) { + LDKNetworkGraph this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKNodeAnnouncement msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = NetworkGraph_update_node_from_announcement(&this_arg_conv, &msg_conv); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_Sha256_clone_ptr(uint32_t arg) { - LDKSha256 arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = Sha256_clone_ptr(&arg_conv); - return ret_val; + +uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_update_node_from_unsigned_announcement(uint32_t this_arg, uint32_t msg) { + LDKNetworkGraph this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKUnsignedNodeAnnouncement msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = NetworkGraph_update_node_from_unsigned_announcement(&this_arg_conv, &msg_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Sha256_clone(uint32_t orig) { - LDKSha256 orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKSha256 ret_var = Sha256_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_update_channel_from_announcement(uint32_t this_arg, uint32_t msg, uint32_t chain_access) { + LDKNetworkGraph this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKChannelAnnouncement msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + void* chain_access_ptr = (void*)(((uint64_t)chain_access) & ~1); + CHECK_ACCESS(chain_access_ptr); + LDKCOption_AccessZ chain_access_conv = *(LDKCOption_AccessZ*)(chain_access_ptr); + // Warning: we may need a move here but no clone is available for LDKCOption_AccessZ + if (chain_access_conv.tag == LDKCOption_AccessZ_Some) { + // Manually implement clone for Java trait instances } - return ret_ref; + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = NetworkGraph_update_channel_from_announcement(&this_arg_conv, &msg_conv, chain_access_conv); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_Sha256_hash(uint32_t o) { - LDKSha256 o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = Sha256_hash(&o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_update_channel_from_unsigned_announcement(uint32_t this_arg, uint32_t msg, uint32_t chain_access) { + LDKNetworkGraph this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKUnsignedChannelAnnouncement msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + void* chain_access_ptr = (void*)(((uint64_t)chain_access) & ~1); + CHECK_ACCESS(chain_access_ptr); + LDKCOption_AccessZ chain_access_conv = *(LDKCOption_AccessZ*)(chain_access_ptr); + // Warning: we may need a move here but no clone is available for LDKCOption_AccessZ + if (chain_access_conv.tag == LDKCOption_AccessZ_Some) { + // Manually implement clone for Java trait instances + } + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = NetworkGraph_update_channel_from_unsigned_announcement(&this_arg_conv, &msg_conv, chain_access_conv); + return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_Sha256_eq(uint32_t a, uint32_t b) { - LDKSha256 a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKSha256 b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = Sha256_eq(&a_conv, &b_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_NetworkGraph_close_channel_from_update(uint32_t this_arg, int64_t short_channel_id, jboolean is_permanent) { + LDKNetworkGraph this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + NetworkGraph_close_channel_from_update(&this_arg_conv, short_channel_id, is_permanent); } -void __attribute__((visibility("default"))) TS_Description_free(uint32_t this_obj) { - LDKDescription this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - Description_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_NetworkGraph_fail_node(uint32_t this_arg, int8_tArray _node_id, jboolean is_permanent) { + LDKNetworkGraph this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKPublicKey _node_id_ref; + CHECK(_node_id->arr_len == 33); + memcpy(_node_id_ref.compressed_form, _node_id->elems, 33); + NetworkGraph_fail_node(&this_arg_conv, _node_id_ref, is_permanent); } -static inline uint64_t Description_clone_ptr(LDKDescription *NONNULL_PTR arg) { - LDKDescription ret_var = Description_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_Description_clone_ptr(uint32_t arg) { - LDKDescription arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = Description_clone_ptr(&arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_NetworkGraph_remove_stale_channels_with_time(uint32_t this_arg, int64_t current_time_unix) { + LDKNetworkGraph this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + NetworkGraph_remove_stale_channels_with_time(&this_arg_conv, current_time_unix); } -uint32_t __attribute__((visibility("default"))) TS_Description_clone(uint32_t orig) { - LDKDescription orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKDescription ret_var = Description_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_update_channel(uint32_t this_arg, uint32_t msg) { + LDKNetworkGraph this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKChannelUpdate msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = NetworkGraph_update_channel(&this_arg_conv, &msg_conv); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_Description_hash(uint32_t o) { - LDKDescription o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = Description_hash(&o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_update_channel_unsigned(uint32_t this_arg, uint32_t msg) { + LDKNetworkGraph this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKUnsignedChannelUpdate msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = NetworkGraph_update_channel_unsigned(&this_arg_conv, &msg_conv); + return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_Description_eq(uint32_t a, uint32_t b) { - LDKDescription a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKDescription b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = Description_eq(&a_conv, &b_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_ReadOnlyNetworkGraph_get_addresses(uint32_t this_arg, int8_tArray pubkey) { + LDKReadOnlyNetworkGraph this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKPublicKey pubkey_ref; + CHECK(pubkey->arr_len == 33); + memcpy(pubkey_ref.compressed_form, pubkey->elems, 33); + LDKCOption_CVec_NetAddressZZ *ret_copy = MALLOC(sizeof(LDKCOption_CVec_NetAddressZZ), "LDKCOption_CVec_NetAddressZZ"); + *ret_copy = ReadOnlyNetworkGraph_get_addresses(&this_arg_conv, pubkey_ref); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_PayeePubKey_free(uint32_t this_obj) { - LDKPayeePubKey this_obj_conv; +void __attribute__((visibility("default"))) TS_RouteHop_free(uint32_t this_obj) { + LDKRouteHop this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - PayeePubKey_free(this_obj_conv); + RouteHop_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_PayeePubKey_get_a(uint32_t this_ptr) { - LDKPayeePubKey this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_RouteHop_get_pubkey(uint32_t this_ptr) { + LDKRouteHop this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), PayeePubKey_get_a(&this_ptr_conv).compressed_form, 33); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, RouteHop_get_pubkey(&this_ptr_conv).compressed_form, 33); return ret_arr; } -void __attribute__((visibility("default"))) TS_PayeePubKey_set_a(uint32_t this_ptr, int8_tArray val) { - LDKPayeePubKey this_ptr_conv; +void __attribute__((visibility("default"))) TS_RouteHop_set_pubkey(uint32_t this_ptr, int8_tArray val) { + LDKRouteHop this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - PayeePubKey_set_a(&this_ptr_conv, val_ref); -} - -uint32_t __attribute__((visibility("default"))) TS_PayeePubKey_new(int8_tArray a_arg) { - LDKPublicKey a_arg_ref; - CHECK(*((uint32_t*)a_arg) == 33); - memcpy(a_arg_ref.compressed_form, (uint8_t*)(a_arg + 4), 33); - LDKPayeePubKey ret_var = PayeePubKey_new(a_arg_ref); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; -} - -static inline uint64_t PayeePubKey_clone_ptr(LDKPayeePubKey *NONNULL_PTR arg) { - LDKPayeePubKey ret_var = PayeePubKey_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_PayeePubKey_clone_ptr(uint32_t arg) { - LDKPayeePubKey arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = PayeePubKey_clone_ptr(&arg_conv); - return ret_val; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + RouteHop_set_pubkey(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_PayeePubKey_clone(uint32_t orig) { - LDKPayeePubKey orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKPayeePubKey ret_var = PayeePubKey_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_RouteHop_get_node_features(uint32_t this_ptr) { + LDKRouteHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKNodeFeatures ret_var = RouteHop_get_node_features(&this_ptr_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -35878,63 +33019,42 @@ uint32_t __attribute__((visibility("default"))) TS_PayeePubKey_clone(uint32_t o return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_PayeePubKey_hash(uint32_t o) { - LDKPayeePubKey o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = PayeePubKey_hash(&o_conv); - return ret_val; -} - -jboolean __attribute__((visibility("default"))) TS_PayeePubKey_eq(uint32_t a, uint32_t b) { - LDKPayeePubKey a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKPayeePubKey b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = PayeePubKey_eq(&a_conv, &b_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_ExpiryTime_free(uint32_t this_obj) { - LDKExpiryTime this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ExpiryTime_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_RouteHop_set_node_features(uint32_t this_ptr, uint32_t val) { + LDKRouteHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKNodeFeatures val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = NodeFeatures_clone(&val_conv); + RouteHop_set_node_features(&this_ptr_conv, val_conv); } -static inline uint64_t ExpiryTime_clone_ptr(LDKExpiryTime *NONNULL_PTR arg) { - LDKExpiryTime ret_var = ExpiryTime_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_ExpiryTime_clone_ptr(uint32_t arg) { - LDKExpiryTime arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ExpiryTime_clone_ptr(&arg_conv); +int64_t __attribute__((visibility("default"))) TS_RouteHop_get_short_channel_id(uint32_t this_ptr) { + LDKRouteHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = RouteHop_get_short_channel_id(&this_ptr_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ExpiryTime_clone(uint32_t orig) { - LDKExpiryTime orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKExpiryTime ret_var = ExpiryTime_clone(&orig_conv); +void __attribute__((visibility("default"))) TS_RouteHop_set_short_channel_id(uint32_t this_ptr, int64_t val) { + LDKRouteHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + RouteHop_set_short_channel_id(&this_ptr_conv, val); +} + +uint32_t __attribute__((visibility("default"))) TS_RouteHop_get_channel_features(uint32_t this_ptr) { + LDKRouteHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelFeatures ret_var = RouteHop_get_channel_features(&this_ptr_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -35946,55 +33066,68 @@ uint32_t __attribute__((visibility("default"))) TS_ExpiryTime_clone(uint32_t or return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ExpiryTime_hash(uint32_t o) { - LDKExpiryTime o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = ExpiryTime_hash(&o_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_RouteHop_set_channel_features(uint32_t this_ptr, uint32_t val) { + LDKRouteHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelFeatures val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = ChannelFeatures_clone(&val_conv); + RouteHop_set_channel_features(&this_ptr_conv, val_conv); } -jboolean __attribute__((visibility("default"))) TS_ExpiryTime_eq(uint32_t a, uint32_t b) { - LDKExpiryTime a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKExpiryTime b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = ExpiryTime_eq(&a_conv, &b_conv); +int64_t __attribute__((visibility("default"))) TS_RouteHop_get_fee_msat(uint32_t this_ptr) { + LDKRouteHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = RouteHop_get_fee_msat(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_MinFinalCltvExpiry_free(uint32_t this_obj) { - LDKMinFinalCltvExpiry this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - MinFinalCltvExpiry_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_RouteHop_set_fee_msat(uint32_t this_ptr, int64_t val) { + LDKRouteHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + RouteHop_set_fee_msat(&this_ptr_conv, val); } -int64_t __attribute__((visibility("default"))) TS_MinFinalCltvExpiry_get_a(uint32_t this_ptr) { - LDKMinFinalCltvExpiry this_ptr_conv; +int32_t __attribute__((visibility("default"))) TS_RouteHop_get_cltv_expiry_delta(uint32_t this_ptr) { + LDKRouteHop this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = MinFinalCltvExpiry_get_a(&this_ptr_conv); + int32_t ret_val = RouteHop_get_cltv_expiry_delta(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_MinFinalCltvExpiry_set_a(uint32_t this_ptr, int64_t val) { - LDKMinFinalCltvExpiry this_ptr_conv; +void __attribute__((visibility("default"))) TS_RouteHop_set_cltv_expiry_delta(uint32_t this_ptr, int32_t val) { + LDKRouteHop this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - MinFinalCltvExpiry_set_a(&this_ptr_conv, val); + RouteHop_set_cltv_expiry_delta(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_MinFinalCltvExpiry_new(int64_t a_arg) { - LDKMinFinalCltvExpiry ret_var = MinFinalCltvExpiry_new(a_arg); +uint32_t __attribute__((visibility("default"))) TS_RouteHop_new(int8_tArray pubkey_arg, uint32_t node_features_arg, int64_t short_channel_id_arg, uint32_t channel_features_arg, int64_t fee_msat_arg, int32_t cltv_expiry_delta_arg) { + LDKPublicKey pubkey_arg_ref; + CHECK(pubkey_arg->arr_len == 33); + memcpy(pubkey_arg_ref.compressed_form, pubkey_arg->elems, 33); + LDKNodeFeatures node_features_arg_conv; + node_features_arg_conv.inner = (void*)(node_features_arg & (~1)); + node_features_arg_conv.is_owned = (node_features_arg & 1) || (node_features_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(node_features_arg_conv); + node_features_arg_conv = NodeFeatures_clone(&node_features_arg_conv); + LDKChannelFeatures channel_features_arg_conv; + channel_features_arg_conv.inner = (void*)(channel_features_arg & (~1)); + channel_features_arg_conv.is_owned = (channel_features_arg & 1) || (channel_features_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_features_arg_conv); + channel_features_arg_conv = ChannelFeatures_clone(&channel_features_arg_conv); + LDKRouteHop ret_var = RouteHop_new(pubkey_arg_ref, node_features_arg_conv, short_channel_id_arg, channel_features_arg_conv, fee_msat_arg, cltv_expiry_delta_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -36006,8 +33139,8 @@ uint32_t __attribute__((visibility("default"))) TS_MinFinalCltvExpiry_new(int64 return ret_ref; } -static inline uint64_t MinFinalCltvExpiry_clone_ptr(LDKMinFinalCltvExpiry *NONNULL_PTR arg) { - LDKMinFinalCltvExpiry ret_var = MinFinalCltvExpiry_clone(arg); +static inline uint64_t RouteHop_clone_ptr(LDKRouteHop *NONNULL_PTR arg) { + LDKRouteHop ret_var = RouteHop_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -36018,21 +33151,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_MinFinalCltvExpiry_clone_ptr(uint32_t arg) { - LDKMinFinalCltvExpiry arg_conv; +int64_t __attribute__((visibility("default"))) TS_RouteHop_clone_ptr(uint32_t arg) { + LDKRouteHop arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = MinFinalCltvExpiry_clone_ptr(&arg_conv); + int64_t ret_val = RouteHop_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_MinFinalCltvExpiry_clone(uint32_t orig) { - LDKMinFinalCltvExpiry orig_conv; +uint32_t __attribute__((visibility("default"))) TS_RouteHop_clone(uint32_t orig) { + LDKRouteHop orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKMinFinalCltvExpiry ret_var = MinFinalCltvExpiry_clone(&orig_conv); + LDKRouteHop ret_var = RouteHop_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -36044,137 +33177,193 @@ uint32_t __attribute__((visibility("default"))) TS_MinFinalCltvExpiry_clone(uin return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_MinFinalCltvExpiry_hash(uint32_t o) { - LDKMinFinalCltvExpiry o_conv; +int64_t __attribute__((visibility("default"))) TS_RouteHop_hash(uint32_t o) { + LDKRouteHop o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = MinFinalCltvExpiry_hash(&o_conv); + int64_t ret_val = RouteHop_hash(&o_conv); return ret_val; } -jboolean __attribute__((visibility("default"))) TS_MinFinalCltvExpiry_eq(uint32_t a, uint32_t b) { - LDKMinFinalCltvExpiry a_conv; +jboolean __attribute__((visibility("default"))) TS_RouteHop_eq(uint32_t a, uint32_t b) { + LDKRouteHop a_conv; a_conv.inner = (void*)(a & (~1)); a_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKMinFinalCltvExpiry b_conv; + LDKRouteHop b_conv; b_conv.inner = (void*)(b & (~1)); b_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = MinFinalCltvExpiry_eq(&a_conv, &b_conv); + jboolean ret_val = RouteHop_eq(&a_conv, &b_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_Fallback_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKFallback this_ptr_conv = *(LDKFallback*)(this_ptr_ptr); - FREE((void*)this_ptr); - Fallback_free(this_ptr_conv); +int8_tArray __attribute__((visibility("default"))) TS_RouteHop_write(uint32_t obj) { + LDKRouteHop obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = RouteHop_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -static inline uint64_t Fallback_clone_ptr(LDKFallback *NONNULL_PTR arg) { - LDKFallback *ret_copy = MALLOC(sizeof(LDKFallback), "LDKFallback"); - *ret_copy = Fallback_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_Fallback_clone_ptr(uint32_t arg) { - LDKFallback* arg_conv = (LDKFallback*)arg; - int64_t ret_val = Fallback_clone_ptr(arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_RouteHop_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_RouteHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHopDecodeErrorZ), "LDKCResult_RouteHopDecodeErrorZ"); + *ret_conv = RouteHop_read(ser_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Fallback_clone(uint32_t orig) { - LDKFallback* orig_conv = (LDKFallback*)orig; - LDKFallback *ret_copy = MALLOC(sizeof(LDKFallback), "LDKFallback"); - *ret_copy = Fallback_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_Route_free(uint32_t this_obj) { + LDKRoute this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + Route_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_Fallback_seg_wit_program(int8_t version, int8_tArray program) { +ptrArray __attribute__((visibility("default"))) TS_Route_get_paths(uint32_t this_ptr) { + LDKRoute this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_CVec_RouteHopZZ ret_var = Route_get_paths(&this_ptr_conv); + ptrArray ret_arr = NULL; + ret_arr = init_ptrArray(ret_var.datalen); + uint32_tArray *ret_arr_ptr = (uint32_tArray*)(ret_arr + 4); + for (size_t m = 0; m < ret_var.datalen; m++) { + LDKCVec_RouteHopZ ret_conv_12_var = ret_var.data[m]; + uint32_tArray ret_conv_12_arr = NULL; + ret_conv_12_arr = init_uint32_tArray(ret_conv_12_var.datalen); + uint32_t *ret_conv_12_arr_ptr = (uint32_t*)(ret_conv_12_arr + 4); + for (size_t k = 0; k < ret_conv_12_var.datalen; k++) { + LDKRouteHop ret_conv_12_conv_10_var = ret_conv_12_var.data[k]; + uint64_t ret_conv_12_conv_10_ref = 0; + CHECK((((uint64_t)ret_conv_12_conv_10_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_conv_12_conv_10_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_12_conv_10_var); + ret_conv_12_conv_10_ref = (uint64_t)ret_conv_12_conv_10_var.inner; + if (ret_conv_12_conv_10_var.is_owned) { + ret_conv_12_conv_10_ref |= 1; + } + ret_conv_12_arr_ptr[k] = ret_conv_12_conv_10_ref; + } + + FREE(ret_conv_12_var.data); + ret_arr_ptr[m] = ret_conv_12_arr; + } - LDKCVec_u8Z program_ref; - program_ref.datalen = *((uint32_t*)program); - program_ref.data = MALLOC(program_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(program_ref.data, (uint8_t*)(program + 4), program_ref.datalen); - LDKFallback *ret_copy = MALLOC(sizeof(LDKFallback), "LDKFallback"); - *ret_copy = Fallback_seg_wit_program((LDKu5){ ._0 = version }, program_ref); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; + FREE(ret_var.data); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_Fallback_pub_key_hash(int8_tArray a) { - LDKTwentyBytes a_ref; - CHECK(*((uint32_t*)a) == 20); - memcpy(a_ref.data, (uint8_t*)(a + 4), 20); - LDKFallback *ret_copy = MALLOC(sizeof(LDKFallback), "LDKFallback"); - *ret_copy = Fallback_pub_key_hash(a_ref); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_Route_set_paths(uint32_t this_ptr, ptrArray val) { + LDKRoute this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_CVec_RouteHopZZ val_constr; + val_constr.datalen = val->arr_len; + if (val_constr.datalen > 0) + val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKCVec_RouteHopZ), "LDKCVec_CVec_RouteHopZZ Elements"); + else + val_constr.data = NULL; + uint32_tArray* val_vals = (void*) val->elems; + for (size_t m = 0; m < val_constr.datalen; m++) { + uint32_tArray val_conv_12 = val_vals[m]; + LDKCVec_RouteHopZ val_conv_12_constr; + val_conv_12_constr.datalen = val_conv_12->arr_len; + if (val_conv_12_constr.datalen > 0) + val_conv_12_constr.data = MALLOC(val_conv_12_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); + else + val_conv_12_constr.data = NULL; + uint32_t* val_conv_12_vals = val_conv_12->elems; + for (size_t k = 0; k < val_conv_12_constr.datalen; k++) { + uint32_t val_conv_12_conv_10 = val_conv_12_vals[k]; + LDKRouteHop val_conv_12_conv_10_conv; + val_conv_12_conv_10_conv.inner = (void*)(val_conv_12_conv_10 & (~1)); + val_conv_12_conv_10_conv.is_owned = (val_conv_12_conv_10 & 1) || (val_conv_12_conv_10 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_12_conv_10_conv); + val_conv_12_conv_10_conv = RouteHop_clone(&val_conv_12_conv_10_conv); + val_conv_12_constr.data[k] = val_conv_12_conv_10_conv; + } + val_constr.data[m] = val_conv_12_constr; + } + Route_set_paths(&this_ptr_conv, val_constr); } -uint32_t __attribute__((visibility("default"))) TS_Fallback_script_hash(int8_tArray a) { - LDKTwentyBytes a_ref; - CHECK(*((uint32_t*)a) == 20); - memcpy(a_ref.data, (uint8_t*)(a + 4), 20); - LDKFallback *ret_copy = MALLOC(sizeof(LDKFallback), "LDKFallback"); - *ret_copy = Fallback_script_hash(a_ref); - uint64_t ret_ref = (uint64_t)ret_copy; +uint32_t __attribute__((visibility("default"))) TS_Route_get_payee(uint32_t this_ptr) { + LDKRoute this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPayee ret_var = Route_get_payee(&this_ptr_conv); + uint64_t ret_ref = 0; + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_Fallback_hash(uint32_t o) { - LDKFallback* o_conv = (LDKFallback*)o; - int64_t ret_val = Fallback_hash(o_conv); - return ret_val; -} - -jboolean __attribute__((visibility("default"))) TS_Fallback_eq(uint32_t a, uint32_t b) { - LDKFallback* a_conv = (LDKFallback*)a; - LDKFallback* b_conv = (LDKFallback*)b; - jboolean ret_val = Fallback_eq(a_conv, b_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_InvoiceSignature_free(uint32_t this_obj) { - LDKInvoiceSignature this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - InvoiceSignature_free(this_obj_conv); -} - -static inline uint64_t InvoiceSignature_clone_ptr(LDKInvoiceSignature *NONNULL_PTR arg) { - LDKInvoiceSignature ret_var = InvoiceSignature_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_InvoiceSignature_clone_ptr(uint32_t arg) { - LDKInvoiceSignature arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = InvoiceSignature_clone_ptr(&arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_Route_set_payee(uint32_t this_ptr, uint32_t val) { + LDKRoute this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPayee val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = Payee_clone(&val_conv); + Route_set_payee(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_InvoiceSignature_clone(uint32_t orig) { - LDKInvoiceSignature orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKInvoiceSignature ret_var = InvoiceSignature_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_Route_new(ptrArray paths_arg, uint32_t payee_arg) { + LDKCVec_CVec_RouteHopZZ paths_arg_constr; + paths_arg_constr.datalen = paths_arg->arr_len; + if (paths_arg_constr.datalen > 0) + paths_arg_constr.data = MALLOC(paths_arg_constr.datalen * sizeof(LDKCVec_RouteHopZ), "LDKCVec_CVec_RouteHopZZ Elements"); + else + paths_arg_constr.data = NULL; + uint32_tArray* paths_arg_vals = (void*) paths_arg->elems; + for (size_t m = 0; m < paths_arg_constr.datalen; m++) { + uint32_tArray paths_arg_conv_12 = paths_arg_vals[m]; + LDKCVec_RouteHopZ paths_arg_conv_12_constr; + paths_arg_conv_12_constr.datalen = paths_arg_conv_12->arr_len; + if (paths_arg_conv_12_constr.datalen > 0) + paths_arg_conv_12_constr.data = MALLOC(paths_arg_conv_12_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); + else + paths_arg_conv_12_constr.data = NULL; + uint32_t* paths_arg_conv_12_vals = paths_arg_conv_12->elems; + for (size_t k = 0; k < paths_arg_conv_12_constr.datalen; k++) { + uint32_t paths_arg_conv_12_conv_10 = paths_arg_conv_12_vals[k]; + LDKRouteHop paths_arg_conv_12_conv_10_conv; + paths_arg_conv_12_conv_10_conv.inner = (void*)(paths_arg_conv_12_conv_10 & (~1)); + paths_arg_conv_12_conv_10_conv.is_owned = (paths_arg_conv_12_conv_10 & 1) || (paths_arg_conv_12_conv_10 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(paths_arg_conv_12_conv_10_conv); + paths_arg_conv_12_conv_10_conv = RouteHop_clone(&paths_arg_conv_12_conv_10_conv); + paths_arg_conv_12_constr.data[k] = paths_arg_conv_12_conv_10_conv; + } + paths_arg_constr.data[m] = paths_arg_conv_12_constr; + } + LDKPayee payee_arg_conv; + payee_arg_conv.inner = (void*)(payee_arg & (~1)); + payee_arg_conv.is_owned = (payee_arg & 1) || (payee_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(payee_arg_conv); + payee_arg_conv = Payee_clone(&payee_arg_conv); + LDKRoute ret_var = Route_new(paths_arg_constr, payee_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -36186,29 +33375,8 @@ uint32_t __attribute__((visibility("default"))) TS_InvoiceSignature_clone(uint3 return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_InvoiceSignature_eq(uint32_t a, uint32_t b) { - LDKInvoiceSignature a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKInvoiceSignature b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = InvoiceSignature_eq(&a_conv, &b_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_PrivateRoute_free(uint32_t this_obj) { - LDKPrivateRoute this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - PrivateRoute_free(this_obj_conv); -} - -static inline uint64_t PrivateRoute_clone_ptr(LDKPrivateRoute *NONNULL_PTR arg) { - LDKPrivateRoute ret_var = PrivateRoute_clone(arg); +static inline uint64_t Route_clone_ptr(LDKRoute *NONNULL_PTR arg) { + LDKRoute ret_var = Route_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -36219,21 +33387,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_PrivateRoute_clone_ptr(uint32_t arg) { - LDKPrivateRoute arg_conv; +int64_t __attribute__((visibility("default"))) TS_Route_clone_ptr(uint32_t arg) { + LDKRoute arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = PrivateRoute_clone_ptr(&arg_conv); + int64_t ret_val = Route_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_PrivateRoute_clone(uint32_t orig) { - LDKPrivateRoute orig_conv; +uint32_t __attribute__((visibility("default"))) TS_Route_clone(uint32_t orig) { + LDKRoute orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKPrivateRoute ret_var = PrivateRoute_clone(&orig_conv); + LDKRoute ret_var = Route_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -36245,72 +33413,81 @@ uint32_t __attribute__((visibility("default"))) TS_PrivateRoute_clone(uint32_t return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_PrivateRoute_hash(uint32_t o) { - LDKPrivateRoute o_conv; +int64_t __attribute__((visibility("default"))) TS_Route_hash(uint32_t o) { + LDKRoute o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = PrivateRoute_hash(&o_conv); + int64_t ret_val = Route_hash(&o_conv); return ret_val; } -jboolean __attribute__((visibility("default"))) TS_PrivateRoute_eq(uint32_t a, uint32_t b) { - LDKPrivateRoute a_conv; +jboolean __attribute__((visibility("default"))) TS_Route_eq(uint32_t a, uint32_t b) { + LDKRoute a_conv; a_conv.inner = (void*)(a & (~1)); a_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKPrivateRoute b_conv; + LDKRoute b_conv; b_conv.inner = (void*)(b & (~1)); b_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = PrivateRoute_eq(&a_conv, &b_conv); + jboolean ret_val = Route_eq(&a_conv, &b_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_SignedRawInvoice_into_parts(uint32_t this_arg) { - LDKSignedRawInvoice this_arg_conv; +int64_t __attribute__((visibility("default"))) TS_Route_get_total_fees(uint32_t this_arg) { + LDKRoute this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = (this_arg & 1) || (this_arg == 0); + this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - this_arg_conv = SignedRawInvoice_clone(&this_arg_conv); - LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ), "LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ"); - *ret_conv = SignedRawInvoice_into_parts(this_arg_conv); - return ((uint64_t)ret_conv); + int64_t ret_val = Route_get_total_fees(&this_arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_SignedRawInvoice_raw_invoice(uint32_t this_arg) { - LDKSignedRawInvoice this_arg_conv; +int64_t __attribute__((visibility("default"))) TS_Route_get_total_amount(uint32_t this_arg) { + LDKRoute this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKRawInvoice ret_var = SignedRawInvoice_raw_invoice(&this_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + int64_t ret_val = Route_get_total_amount(&this_arg_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_SignedRawInvoice_hash(uint32_t this_arg) { - LDKSignedRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *SignedRawInvoice_hash(&this_arg_conv), 32); +int8_tArray __attribute__((visibility("default"))) TS_Route_write(uint32_t obj) { + LDKRoute obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = Route_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_SignedRawInvoice_signature(uint32_t this_arg) { - LDKSignedRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKInvoiceSignature ret_var = SignedRawInvoice_signature(&this_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_Route_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_RouteDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteDecodeErrorZ), "LDKCResult_RouteDecodeErrorZ"); + *ret_conv = Route_read(ser_ref); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_RouteParameters_free(uint32_t this_obj) { + LDKRouteParameters this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + RouteParameters_free(this_obj_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_RouteParameters_get_payee(uint32_t this_ptr) { + LDKRouteParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPayee ret_var = RouteParameters_get_payee(&this_ptr_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -36322,165 +33499,165 @@ uint32_t __attribute__((visibility("default"))) TS_SignedRawInvoice_signature(u return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_SignedRawInvoice_recover_payee_pub_key(uint32_t this_arg) { - LDKSignedRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCResult_PayeePubKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeePubKeyErrorZ), "LDKCResult_PayeePubKeyErrorZ"); - *ret_conv = SignedRawInvoice_recover_payee_pub_key(&this_arg_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_RouteParameters_set_payee(uint32_t this_ptr, uint32_t val) { + LDKRouteParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPayee val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = Payee_clone(&val_conv); + RouteParameters_set_payee(&this_ptr_conv, val_conv); } -jboolean __attribute__((visibility("default"))) TS_SignedRawInvoice_check_signature(uint32_t this_arg) { - LDKSignedRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = SignedRawInvoice_check_signature(&this_arg_conv); +int64_t __attribute__((visibility("default"))) TS_RouteParameters_get_final_value_msat(uint32_t this_ptr) { + LDKRouteParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = RouteParameters_get_final_value_msat(&this_ptr_conv); return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_RawInvoice_hash(uint32_t this_arg) { - LDKRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), RawInvoice_hash(&this_arg_conv).data, 32); - return ret_arr; +void __attribute__((visibility("default"))) TS_RouteParameters_set_final_value_msat(uint32_t this_ptr, int64_t val) { + LDKRouteParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + RouteParameters_set_final_value_msat(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_RawInvoice_payment_hash(uint32_t this_arg) { - LDKRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKSha256 ret_var = RawInvoice_payment_hash(&this_arg_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } - return ret_ref; +int32_t __attribute__((visibility("default"))) TS_RouteParameters_get_final_cltv_expiry_delta(uint32_t this_ptr) { + LDKRouteParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = RouteParameters_get_final_cltv_expiry_delta(&this_ptr_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_RawInvoice_description(uint32_t this_arg) { - LDKRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKDescription ret_var = RawInvoice_description(&this_arg_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } - return ret_ref; +void __attribute__((visibility("default"))) TS_RouteParameters_set_final_cltv_expiry_delta(uint32_t this_ptr, int32_t val) { + LDKRouteParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + RouteParameters_set_final_cltv_expiry_delta(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_RawInvoice_payee_pub_key(uint32_t this_arg) { - LDKRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKPayeePubKey ret_var = RawInvoice_payee_pub_key(&this_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_RouteParameters_new(uint32_t payee_arg, int64_t final_value_msat_arg, int32_t final_cltv_expiry_delta_arg) { + LDKPayee payee_arg_conv; + payee_arg_conv.inner = (void*)(payee_arg & (~1)); + payee_arg_conv.is_owned = (payee_arg & 1) || (payee_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(payee_arg_conv); + payee_arg_conv = Payee_clone(&payee_arg_conv); + LDKRouteParameters ret_var = RouteParameters_new(payee_arg_conv, final_value_msat_arg, final_cltv_expiry_delta_arg); uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_RawInvoice_description_hash(uint32_t this_arg) { - LDKRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKSha256 ret_var = RawInvoice_description_hash(&this_arg_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } +static inline uint64_t RouteParameters_clone_ptr(LDKRouteParameters *NONNULL_PTR arg) { + LDKRouteParameters ret_var = RouteParameters_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} return ret_ref; } +int64_t __attribute__((visibility("default"))) TS_RouteParameters_clone_ptr(uint32_t arg) { + LDKRouteParameters arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = RouteParameters_clone_ptr(&arg_conv); + return ret_val; +} -uint32_t __attribute__((visibility("default"))) TS_RawInvoice_expiry_time(uint32_t this_arg) { - LDKRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKExpiryTime ret_var = RawInvoice_expiry_time(&this_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_RouteParameters_clone(uint32_t orig) { + LDKRouteParameters orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKRouteParameters ret_var = RouteParameters_clone(&orig_conv); uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_RawInvoice_min_final_cltv_expiry(uint32_t this_arg) { - LDKRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKMinFinalCltvExpiry ret_var = RawInvoice_min_final_cltv_expiry(&this_arg_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_RouteParameters_write(uint32_t obj) { + LDKRouteParameters obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = RouteParameters_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_RouteParameters_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_RouteParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteParametersDecodeErrorZ), "LDKCResult_RouteParametersDecodeErrorZ"); + *ret_conv = RouteParameters_read(ser_ref); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_Payee_free(uint32_t this_obj) { + LDKPayee this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + Payee_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_RawInvoice_payment_secret(uint32_t this_arg) { - LDKRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), RawInvoice_payment_secret(&this_arg_conv).data, 32); +int8_tArray __attribute__((visibility("default"))) TS_Payee_get_pubkey(uint32_t this_ptr) { + LDKPayee this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, Payee_get_pubkey(&this_ptr_conv).compressed_form, 33); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_RawInvoice_features(uint32_t this_arg) { - LDKRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKInvoiceFeatures ret_var = RawInvoice_features(&this_arg_conv); +void __attribute__((visibility("default"))) TS_Payee_set_pubkey(uint32_t this_ptr, int8_tArray val) { + LDKPayee this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + Payee_set_pubkey(&this_ptr_conv, val_ref); +} + +uint32_t __attribute__((visibility("default"))) TS_Payee_get_features(uint32_t this_ptr) { + LDKPayee this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKInvoiceFeatures ret_var = Payee_get_features(&this_ptr_conv); uint64_t ret_ref = 0; if ((uint64_t)ret_var.inner > 4096) { CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. @@ -36494,89 +33671,160 @@ uint32_t __attribute__((visibility("default"))) TS_RawInvoice_features(uint32_t return ret_ref; } -uint32_tArray __attribute__((visibility("default"))) TS_RawInvoice_private_routes(uint32_t this_arg) { - LDKRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_PrivateRouteZ ret_var = RawInvoice_private_routes(&this_arg_conv); +void __attribute__((visibility("default"))) TS_Payee_set_features(uint32_t this_ptr, uint32_t val) { + LDKPayee this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKInvoiceFeatures val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = InvoiceFeatures_clone(&val_conv); + Payee_set_features(&this_ptr_conv, val_conv); +} + +uint32_tArray __attribute__((visibility("default"))) TS_Payee_get_route_hints(uint32_t this_ptr) { + LDKPayee this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_RouteHintZ ret_var = Payee_get_route_hints(&this_ptr_conv); uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); + ret_arr = init_uint32_tArray(ret_var.datalen); uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t o = 0; o < ret_var.datalen; o++) { - LDKPrivateRoute ret_conv_14_var = ret_var.data[o]; - uint64_t ret_conv_14_ref = 0; - CHECK((((uint64_t)ret_conv_14_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_14_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_14_var); - ret_conv_14_ref = (uint64_t)ret_conv_14_var.inner; - if (ret_conv_14_var.is_owned) { - ret_conv_14_ref |= 1; + for (size_t l = 0; l < ret_var.datalen; l++) { + LDKRouteHint ret_conv_11_var = ret_var.data[l]; + uint64_t ret_conv_11_ref = 0; + CHECK((((uint64_t)ret_conv_11_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_conv_11_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_11_var); + ret_conv_11_ref = (uint64_t)ret_conv_11_var.inner; + if (ret_conv_11_var.is_owned) { + ret_conv_11_ref |= 1; } - ret_arr_ptr[o] = ret_conv_14_ref; + ret_arr_ptr[l] = ret_conv_11_ref; } FREE(ret_var.data); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_RawInvoice_amount_pico_btc(uint32_t this_arg) { - LDKRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); +void __attribute__((visibility("default"))) TS_Payee_set_route_hints(uint32_t this_ptr, uint32_tArray val) { + LDKPayee this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_RouteHintZ val_constr; + val_constr.datalen = val->arr_len; + if (val_constr.datalen > 0) + val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKRouteHint), "LDKCVec_RouteHintZ Elements"); + else + val_constr.data = NULL; + uint32_t* val_vals = val->elems; + for (size_t l = 0; l < val_constr.datalen; l++) { + uint32_t val_conv_11 = val_vals[l]; + LDKRouteHint val_conv_11_conv; + val_conv_11_conv.inner = (void*)(val_conv_11 & (~1)); + val_conv_11_conv.is_owned = (val_conv_11 & 1) || (val_conv_11 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_11_conv); + val_conv_11_conv = RouteHint_clone(&val_conv_11_conv); + val_constr.data[l] = val_conv_11_conv; + } + Payee_set_route_hints(&this_ptr_conv, val_constr); +} + +uint32_t __attribute__((visibility("default"))) TS_Payee_get_expiry_time(uint32_t this_ptr) { + LDKPayee this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *ret_copy = RawInvoice_amount_pico_btc(&this_arg_conv); + *ret_copy = Payee_get_expiry_time(&this_ptr_conv); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_RawInvoice_currency(uint32_t this_arg) { - LDKRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - uint32_t ret_conv = LDKCurrency_to_js(RawInvoice_currency(&this_arg_conv)); - return ret_conv; +void __attribute__((visibility("default"))) TS_Payee_set_expiry_time(uint32_t this_ptr, uint32_t val) { + LDKPayee this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr); + val_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)val) & ~1)); + Payee_set_expiry_time(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_PositiveTimestamp_from_unix_timestamp(int64_t unix_seconds) { - LDKCResult_PositiveTimestampCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PositiveTimestampCreationErrorZ), "LDKCResult_PositiveTimestampCreationErrorZ"); - *ret_conv = PositiveTimestamp_from_unix_timestamp(unix_seconds); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_Payee_new(int8_tArray pubkey_arg, uint32_t features_arg, uint32_tArray route_hints_arg, uint32_t expiry_time_arg) { + LDKPublicKey pubkey_arg_ref; + CHECK(pubkey_arg->arr_len == 33); + memcpy(pubkey_arg_ref.compressed_form, pubkey_arg->elems, 33); + LDKInvoiceFeatures features_arg_conv; + features_arg_conv.inner = (void*)(features_arg & (~1)); + features_arg_conv.is_owned = (features_arg & 1) || (features_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(features_arg_conv); + features_arg_conv = InvoiceFeatures_clone(&features_arg_conv); + LDKCVec_RouteHintZ route_hints_arg_constr; + route_hints_arg_constr.datalen = route_hints_arg->arr_len; + if (route_hints_arg_constr.datalen > 0) + route_hints_arg_constr.data = MALLOC(route_hints_arg_constr.datalen * sizeof(LDKRouteHint), "LDKCVec_RouteHintZ Elements"); + else + route_hints_arg_constr.data = NULL; + uint32_t* route_hints_arg_vals = route_hints_arg->elems; + for (size_t l = 0; l < route_hints_arg_constr.datalen; l++) { + uint32_t route_hints_arg_conv_11 = route_hints_arg_vals[l]; + LDKRouteHint route_hints_arg_conv_11_conv; + route_hints_arg_conv_11_conv.inner = (void*)(route_hints_arg_conv_11 & (~1)); + route_hints_arg_conv_11_conv.is_owned = (route_hints_arg_conv_11 & 1) || (route_hints_arg_conv_11 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(route_hints_arg_conv_11_conv); + route_hints_arg_conv_11_conv = RouteHint_clone(&route_hints_arg_conv_11_conv); + route_hints_arg_constr.data[l] = route_hints_arg_conv_11_conv; + } + void* expiry_time_arg_ptr = (void*)(((uint64_t)expiry_time_arg) & ~1); + CHECK_ACCESS(expiry_time_arg_ptr); + LDKCOption_u64Z expiry_time_arg_conv = *(LDKCOption_u64Z*)(expiry_time_arg_ptr); + expiry_time_arg_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)expiry_time_arg) & ~1)); + LDKPayee ret_var = Payee_new(pubkey_arg_ref, features_arg_conv, route_hints_arg_constr, expiry_time_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_PositiveTimestamp_from_system_time(int64_t time) { - LDKCResult_PositiveTimestampCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PositiveTimestampCreationErrorZ), "LDKCResult_PositiveTimestampCreationErrorZ"); - *ret_conv = PositiveTimestamp_from_system_time(time); - return (uint64_t)ret_conv; +static inline uint64_t Payee_clone_ptr(LDKPayee *NONNULL_PTR arg) { + LDKPayee ret_var = Payee_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -int64_t __attribute__((visibility("default"))) TS_PositiveTimestamp_as_unix_timestamp(uint32_t this_arg) { - LDKPositiveTimestamp this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = PositiveTimestamp_as_unix_timestamp(&this_arg_conv); - return ret_val; + return ret_ref; } - -int64_t __attribute__((visibility("default"))) TS_PositiveTimestamp_as_time(uint32_t this_arg) { - LDKPositiveTimestamp this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = PositiveTimestamp_as_time(&this_arg_conv); +int64_t __attribute__((visibility("default"))) TS_Payee_clone_ptr(uint32_t arg) { + LDKPayee arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = Payee_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Invoice_into_signed_raw(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = (this_arg & 1) || (this_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - this_arg_conv = Invoice_clone(&this_arg_conv); - LDKSignedRawInvoice ret_var = Invoice_into_signed_raw(this_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_Payee_clone(uint32_t orig) { + LDKPayee orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKPayee ret_var = Payee_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -36588,133 +33836,100 @@ uint32_t __attribute__((visibility("default"))) TS_Invoice_into_signed_raw(uint return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_Invoice_check_signature(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCResult_NoneSemanticErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneSemanticErrorZ), "LDKCResult_NoneSemanticErrorZ"); - *ret_conv = Invoice_check_signature(&this_arg_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_Invoice_from_signed(uint32_t signed_invoice) { - LDKSignedRawInvoice signed_invoice_conv; - signed_invoice_conv.inner = (void*)(signed_invoice & (~1)); - signed_invoice_conv.is_owned = (signed_invoice & 1) || (signed_invoice == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(signed_invoice_conv); - signed_invoice_conv = SignedRawInvoice_clone(&signed_invoice_conv); - LDKCResult_InvoiceSemanticErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceSemanticErrorZ), "LDKCResult_InvoiceSemanticErrorZ"); - *ret_conv = Invoice_from_signed(signed_invoice_conv); - return (uint64_t)ret_conv; -} - -int64_t __attribute__((visibility("default"))) TS_Invoice_timestamp(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = Invoice_timestamp(&this_arg_conv); +int64_t __attribute__((visibility("default"))) TS_Payee_hash(uint32_t o) { + LDKPayee o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + int64_t ret_val = Payee_hash(&o_conv); return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_Invoice_payment_hash(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *Invoice_payment_hash(&this_arg_conv), 32); - return ret_arr; +jboolean __attribute__((visibility("default"))) TS_Payee_eq(uint32_t a, uint32_t b) { + LDKPayee a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + LDKPayee b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + jboolean ret_val = Payee_eq(&a_conv, &b_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_Invoice_payee_pub_key(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), Invoice_payee_pub_key(&this_arg_conv).compressed_form, 33); +int8_tArray __attribute__((visibility("default"))) TS_Payee_write(uint32_t obj) { + LDKPayee obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = Payee_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); return ret_arr; } -int8_tArray __attribute__((visibility("default"))) TS_Invoice_payment_secret(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *Invoice_payment_secret(&this_arg_conv), 32); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_Payee_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_PayeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeeDecodeErrorZ), "LDKCResult_PayeeDecodeErrorZ"); + *ret_conv = Payee_read(ser_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Invoice_features(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKInvoiceFeatures ret_var = Invoice_features(&this_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_Payee_from_node_id(int8_tArray pubkey) { + LDKPublicKey pubkey_ref; + CHECK(pubkey->arr_len == 33); + memcpy(pubkey_ref.compressed_form, pubkey->elems, 33); + LDKPayee ret_var = Payee_from_node_id(pubkey_ref); uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_Invoice_recover_payee_pub_key(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), Invoice_recover_payee_pub_key(&this_arg_conv).compressed_form, 33); - return ret_arr; -} - -int64_t __attribute__((visibility("default"))) TS_Invoice_expiry_time(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = Invoice_expiry_time(&this_arg_conv); - return ret_val; -} - -jboolean __attribute__((visibility("default"))) TS_Invoice_is_expired(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = Invoice_is_expired(&this_arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_Payee_for_keysend(int8_tArray pubkey) { + LDKPublicKey pubkey_ref; + CHECK(pubkey->arr_len == 33); + memcpy(pubkey_ref.compressed_form, pubkey->elems, 33); + LDKPayee ret_var = Payee_for_keysend(pubkey_ref); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_Invoice_min_final_cltv_expiry(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = Invoice_min_final_cltv_expiry(&this_arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_RouteHint_free(uint32_t this_obj) { + LDKRouteHint this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + RouteHint_free(this_obj_conv); } -uint32_tArray __attribute__((visibility("default"))) TS_Invoice_private_routes(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_PrivateRouteZ ret_var = Invoice_private_routes(&this_arg_conv); +uint32_tArray __attribute__((visibility("default"))) TS_RouteHint_get_a(uint32_t this_ptr) { + LDKRouteHint this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_RouteHintHopZ ret_var = RouteHint_get_a(&this_ptr_conv); uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); + ret_arr = init_uint32_tArray(ret_var.datalen); uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); for (size_t o = 0; o < ret_var.datalen; o++) { - LDKPrivateRoute ret_conv_14_var = ret_var.data[o]; + LDKRouteHintHop ret_conv_14_var = ret_var.data[o]; uint64_t ret_conv_14_ref = 0; CHECK((((uint64_t)ret_conv_14_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_conv_14_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -36730,119 +33945,86 @@ uint32_tArray __attribute__((visibility("default"))) TS_Invoice_private_routes( return ret_arr; } -uint32_tArray __attribute__((visibility("default"))) TS_Invoice_route_hints(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_RouteHintZ ret_var = Invoice_route_hints(&this_arg_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t l = 0; l < ret_var.datalen; l++) { - LDKRouteHint ret_conv_11_var = ret_var.data[l]; - uint64_t ret_conv_11_ref = 0; - CHECK((((uint64_t)ret_conv_11_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_11_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_11_var); - ret_conv_11_ref = (uint64_t)ret_conv_11_var.inner; - if (ret_conv_11_var.is_owned) { - ret_conv_11_ref |= 1; - } - ret_arr_ptr[l] = ret_conv_11_ref; +void __attribute__((visibility("default"))) TS_RouteHint_set_a(uint32_t this_ptr, uint32_tArray val) { + LDKRouteHint this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_RouteHintHopZ val_constr; + val_constr.datalen = val->arr_len; + if (val_constr.datalen > 0) + val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKRouteHintHop), "LDKCVec_RouteHintHopZ Elements"); + else + val_constr.data = NULL; + uint32_t* val_vals = val->elems; + for (size_t o = 0; o < val_constr.datalen; o++) { + uint32_t val_conv_14 = val_vals[o]; + LDKRouteHintHop val_conv_14_conv; + val_conv_14_conv.inner = (void*)(val_conv_14 & (~1)); + val_conv_14_conv.is_owned = (val_conv_14 & 1) || (val_conv_14 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_14_conv); + val_conv_14_conv = RouteHintHop_clone(&val_conv_14_conv); + val_constr.data[o] = val_conv_14_conv; } - - FREE(ret_var.data); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_Invoice_currency(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - uint32_t ret_conv = LDKCurrency_to_js(Invoice_currency(&this_arg_conv)); - return ret_conv; + RouteHint_set_a(&this_ptr_conv, val_constr); } -uint32_t __attribute__((visibility("default"))) TS_Invoice_amount_milli_satoshis(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *ret_copy = Invoice_amount_milli_satoshis(&this_arg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; +uint32_t __attribute__((visibility("default"))) TS_RouteHint_new(uint32_tArray a_arg) { + LDKCVec_RouteHintHopZ a_arg_constr; + a_arg_constr.datalen = a_arg->arr_len; + if (a_arg_constr.datalen > 0) + a_arg_constr.data = MALLOC(a_arg_constr.datalen * sizeof(LDKRouteHintHop), "LDKCVec_RouteHintHopZ Elements"); + else + a_arg_constr.data = NULL; + uint32_t* a_arg_vals = a_arg->elems; + for (size_t o = 0; o < a_arg_constr.datalen; o++) { + uint32_t a_arg_conv_14 = a_arg_vals[o]; + LDKRouteHintHop a_arg_conv_14_conv; + a_arg_conv_14_conv.inner = (void*)(a_arg_conv_14 & (~1)); + a_arg_conv_14_conv.is_owned = (a_arg_conv_14 & 1) || (a_arg_conv_14 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_arg_conv_14_conv); + a_arg_conv_14_conv = RouteHintHop_clone(&a_arg_conv_14_conv); + a_arg_constr.data[o] = a_arg_conv_14_conv; + } + LDKRouteHint ret_var = RouteHint_new(a_arg_constr); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_Description_new(jstring description) { - LDKStr description_conv = str_ref_to_owned_c(description); - LDKCResult_DescriptionCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DescriptionCreationErrorZ), "LDKCResult_DescriptionCreationErrorZ"); - *ret_conv = Description_new(description_conv); - return (uint64_t)ret_conv; -} - -jstring __attribute__((visibility("default"))) TS_Description_into_inner(uint32_t this_arg) { - LDKDescription this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = (this_arg & 1) || (this_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - this_arg_conv = Description_clone(&this_arg_conv); - LDKStr ret_str = Description_into_inner(this_arg_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_ExpiryTime_from_seconds(int64_t seconds) { - LDKCResult_ExpiryTimeCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ExpiryTimeCreationErrorZ), "LDKCResult_ExpiryTimeCreationErrorZ"); - *ret_conv = ExpiryTime_from_seconds(seconds); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_ExpiryTime_from_duration(int64_t duration) { - LDKCResult_ExpiryTimeCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ExpiryTimeCreationErrorZ), "LDKCResult_ExpiryTimeCreationErrorZ"); - *ret_conv = ExpiryTime_from_duration(duration); - return (uint64_t)ret_conv; +static inline uint64_t RouteHint_clone_ptr(LDKRouteHint *NONNULL_PTR arg) { + LDKRouteHint ret_var = RouteHint_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -int64_t __attribute__((visibility("default"))) TS_ExpiryTime_as_seconds(uint32_t this_arg) { - LDKExpiryTime this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = ExpiryTime_as_seconds(&this_arg_conv); - return ret_val; + return ret_ref; } - -int64_t __attribute__((visibility("default"))) TS_ExpiryTime_as_duration(uint32_t this_arg) { - LDKExpiryTime this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = ExpiryTime_as_duration(&this_arg_conv); +int64_t __attribute__((visibility("default"))) TS_RouteHint_clone_ptr(uint32_t arg) { + LDKRouteHint arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = RouteHint_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_PrivateRoute_new(uint32_t hops) { - LDKRouteHint hops_conv; - hops_conv.inner = (void*)(hops & (~1)); - hops_conv.is_owned = (hops & 1) || (hops == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(hops_conv); - hops_conv = RouteHint_clone(&hops_conv); - LDKCResult_PrivateRouteCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PrivateRouteCreationErrorZ), "LDKCResult_PrivateRouteCreationErrorZ"); - *ret_conv = PrivateRoute_new(hops_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_PrivateRoute_into_inner(uint32_t this_arg) { - LDKPrivateRoute this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = (this_arg & 1) || (this_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - this_arg_conv = PrivateRoute_clone(&this_arg_conv); - LDKRouteHint ret_var = PrivateRoute_into_inner(this_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_RouteHint_clone(uint32_t orig) { + LDKRouteHint orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKRouteHint ret_var = RouteHint_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -36854,235 +34036,372 @@ uint32_t __attribute__((visibility("default"))) TS_PrivateRoute_into_inner(uint return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CreationError_clone(uint32_t orig) { - LDKCreationError* orig_conv = (LDKCreationError*)(orig & ~1); - uint32_t ret_conv = LDKCreationError_to_js(CreationError_clone(orig_conv)); - return ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_CreationError_description_too_long() { - uint32_t ret_conv = LDKCreationError_to_js(CreationError_description_too_long()); - return ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_CreationError_route_too_long() { - uint32_t ret_conv = LDKCreationError_to_js(CreationError_route_too_long()); - return ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_CreationError_timestamp_out_of_bounds() { - uint32_t ret_conv = LDKCreationError_to_js(CreationError_timestamp_out_of_bounds()); - return ret_conv; +int64_t __attribute__((visibility("default"))) TS_RouteHint_hash(uint32_t o) { + LDKRouteHint o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + int64_t ret_val = RouteHint_hash(&o_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CreationError_expiry_time_out_of_bounds() { - uint32_t ret_conv = LDKCreationError_to_js(CreationError_expiry_time_out_of_bounds()); - return ret_conv; +jboolean __attribute__((visibility("default"))) TS_RouteHint_eq(uint32_t a, uint32_t b) { + LDKRouteHint a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + LDKRouteHint b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + jboolean ret_val = RouteHint_eq(&a_conv, &b_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CreationError_invalid_amount() { - uint32_t ret_conv = LDKCreationError_to_js(CreationError_invalid_amount()); - return ret_conv; +int8_tArray __attribute__((visibility("default"))) TS_RouteHint_write(uint32_t obj) { + LDKRouteHint obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = RouteHint_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -jboolean __attribute__((visibility("default"))) TS_CreationError_eq(uint32_t a, uint32_t b) { - LDKCreationError* a_conv = (LDKCreationError*)(a & ~1); - LDKCreationError* b_conv = (LDKCreationError*)(b & ~1); - jboolean ret_val = CreationError_eq(a_conv, b_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_RouteHint_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_RouteHintDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintDecodeErrorZ), "LDKCResult_RouteHintDecodeErrorZ"); + *ret_conv = RouteHint_read(ser_ref); + return (uint64_t)ret_conv; } -jstring __attribute__((visibility("default"))) TS_CreationError_to_str(uint32_t o) { - LDKCreationError* o_conv = (LDKCreationError*)(o & ~1); - LDKStr ret_str = CreationError_to_str(o_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; +void __attribute__((visibility("default"))) TS_RouteHintHop_free(uint32_t this_obj) { + LDKRouteHintHop this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + RouteHintHop_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_SemanticError_clone(uint32_t orig) { - LDKSemanticError* orig_conv = (LDKSemanticError*)(orig & ~1); - uint32_t ret_conv = LDKSemanticError_to_js(SemanticError_clone(orig_conv)); - return ret_conv; +int8_tArray __attribute__((visibility("default"))) TS_RouteHintHop_get_src_node_id(uint32_t this_ptr) { + LDKRouteHintHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, RouteHintHop_get_src_node_id(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_SemanticError_no_payment_hash() { - uint32_t ret_conv = LDKSemanticError_to_js(SemanticError_no_payment_hash()); - return ret_conv; +void __attribute__((visibility("default"))) TS_RouteHintHop_set_src_node_id(uint32_t this_ptr, int8_tArray val) { + LDKRouteHintHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + RouteHintHop_set_src_node_id(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_SemanticError_multiple_payment_hashes() { - uint32_t ret_conv = LDKSemanticError_to_js(SemanticError_multiple_payment_hashes()); - return ret_conv; +int64_t __attribute__((visibility("default"))) TS_RouteHintHop_get_short_channel_id(uint32_t this_ptr) { + LDKRouteHintHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = RouteHintHop_get_short_channel_id(&this_ptr_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_SemanticError_no_description() { - uint32_t ret_conv = LDKSemanticError_to_js(SemanticError_no_description()); - return ret_conv; +void __attribute__((visibility("default"))) TS_RouteHintHop_set_short_channel_id(uint32_t this_ptr, int64_t val) { + LDKRouteHintHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + RouteHintHop_set_short_channel_id(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_SemanticError_multiple_descriptions() { - uint32_t ret_conv = LDKSemanticError_to_js(SemanticError_multiple_descriptions()); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_get_fees(uint32_t this_ptr) { + LDKRouteHintHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKRoutingFees ret_var = RouteHintHop_get_fees(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_SemanticError_no_payment_secret() { - uint32_t ret_conv = LDKSemanticError_to_js(SemanticError_no_payment_secret()); - return ret_conv; +void __attribute__((visibility("default"))) TS_RouteHintHop_set_fees(uint32_t this_ptr, uint32_t val) { + LDKRouteHintHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKRoutingFees val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = RoutingFees_clone(&val_conv); + RouteHintHop_set_fees(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_SemanticError_multiple_payment_secrets() { - uint32_t ret_conv = LDKSemanticError_to_js(SemanticError_multiple_payment_secrets()); - return ret_conv; +int16_t __attribute__((visibility("default"))) TS_RouteHintHop_get_cltv_expiry_delta(uint32_t this_ptr) { + LDKRouteHintHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int16_t ret_val = RouteHintHop_get_cltv_expiry_delta(&this_ptr_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_SemanticError_invalid_features() { - uint32_t ret_conv = LDKSemanticError_to_js(SemanticError_invalid_features()); - return ret_conv; +void __attribute__((visibility("default"))) TS_RouteHintHop_set_cltv_expiry_delta(uint32_t this_ptr, int16_t val) { + LDKRouteHintHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + RouteHintHop_set_cltv_expiry_delta(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_SemanticError_invalid_recovery_id() { - uint32_t ret_conv = LDKSemanticError_to_js(SemanticError_invalid_recovery_id()); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_get_htlc_minimum_msat(uint32_t this_ptr) { + LDKRouteHintHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); + *ret_copy = RouteHintHop_get_htlc_minimum_msat(&this_ptr_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_SemanticError_invalid_signature() { - uint32_t ret_conv = LDKSemanticError_to_js(SemanticError_invalid_signature()); - return ret_conv; +void __attribute__((visibility("default"))) TS_RouteHintHop_set_htlc_minimum_msat(uint32_t this_ptr, uint32_t val) { + LDKRouteHintHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr); + val_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)val) & ~1)); + RouteHintHop_set_htlc_minimum_msat(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_SemanticError_imprecise_amount() { - uint32_t ret_conv = LDKSemanticError_to_js(SemanticError_imprecise_amount()); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_get_htlc_maximum_msat(uint32_t this_ptr) { + LDKRouteHintHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); + *ret_copy = RouteHintHop_get_htlc_maximum_msat(&this_ptr_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_SemanticError_eq(uint32_t a, uint32_t b) { - LDKSemanticError* a_conv = (LDKSemanticError*)(a & ~1); - LDKSemanticError* b_conv = (LDKSemanticError*)(b & ~1); - jboolean ret_val = SemanticError_eq(a_conv, b_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_RouteHintHop_set_htlc_maximum_msat(uint32_t this_ptr, uint32_t val) { + LDKRouteHintHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr); + val_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)val) & ~1)); + RouteHintHop_set_htlc_maximum_msat(&this_ptr_conv, val_conv); } -jstring __attribute__((visibility("default"))) TS_SemanticError_to_str(uint32_t o) { - LDKSemanticError* o_conv = (LDKSemanticError*)(o & ~1); - LDKStr ret_str = SemanticError_to_str(o_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_new(int8_tArray src_node_id_arg, int64_t short_channel_id_arg, uint32_t fees_arg, int16_t cltv_expiry_delta_arg, uint32_t htlc_minimum_msat_arg, uint32_t htlc_maximum_msat_arg) { + LDKPublicKey src_node_id_arg_ref; + CHECK(src_node_id_arg->arr_len == 33); + memcpy(src_node_id_arg_ref.compressed_form, src_node_id_arg->elems, 33); + LDKRoutingFees fees_arg_conv; + fees_arg_conv.inner = (void*)(fees_arg & (~1)); + fees_arg_conv.is_owned = (fees_arg & 1) || (fees_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(fees_arg_conv); + fees_arg_conv = RoutingFees_clone(&fees_arg_conv); + void* htlc_minimum_msat_arg_ptr = (void*)(((uint64_t)htlc_minimum_msat_arg) & ~1); + CHECK_ACCESS(htlc_minimum_msat_arg_ptr); + LDKCOption_u64Z htlc_minimum_msat_arg_conv = *(LDKCOption_u64Z*)(htlc_minimum_msat_arg_ptr); + htlc_minimum_msat_arg_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)htlc_minimum_msat_arg) & ~1)); + void* htlc_maximum_msat_arg_ptr = (void*)(((uint64_t)htlc_maximum_msat_arg) & ~1); + CHECK_ACCESS(htlc_maximum_msat_arg_ptr); + LDKCOption_u64Z htlc_maximum_msat_arg_conv = *(LDKCOption_u64Z*)(htlc_maximum_msat_arg_ptr); + htlc_maximum_msat_arg_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)htlc_maximum_msat_arg) & ~1)); + LDKRouteHintHop ret_var = RouteHintHop_new(src_node_id_arg_ref, short_channel_id_arg, fees_arg_conv, cltv_expiry_delta_arg, htlc_minimum_msat_arg_conv, htlc_maximum_msat_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_SignOrCreationError_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKSignOrCreationError this_ptr_conv = *(LDKSignOrCreationError*)(this_ptr_ptr); - FREE((void*)this_ptr); - SignOrCreationError_free(this_ptr_conv); +static inline uint64_t RouteHintHop_clone_ptr(LDKRouteHintHop *NONNULL_PTR arg) { + LDKRouteHintHop ret_var = RouteHintHop_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -static inline uint64_t SignOrCreationError_clone_ptr(LDKSignOrCreationError *NONNULL_PTR arg) { - LDKSignOrCreationError *ret_copy = MALLOC(sizeof(LDKSignOrCreationError), "LDKSignOrCreationError"); - *ret_copy = SignOrCreationError_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_SignOrCreationError_clone_ptr(uint32_t arg) { - LDKSignOrCreationError* arg_conv = (LDKSignOrCreationError*)arg; - int64_t ret_val = SignOrCreationError_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_RouteHintHop_clone_ptr(uint32_t arg) { + LDKRouteHintHop arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = RouteHintHop_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_SignOrCreationError_clone(uint32_t orig) { - LDKSignOrCreationError* orig_conv = (LDKSignOrCreationError*)orig; - LDKSignOrCreationError *ret_copy = MALLOC(sizeof(LDKSignOrCreationError), "LDKSignOrCreationError"); - *ret_copy = SignOrCreationError_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; +uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_clone(uint32_t orig) { + LDKRouteHintHop orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKRouteHintHop ret_var = RouteHintHop_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_SignOrCreationError_sign_error() { - LDKSignOrCreationError *ret_copy = MALLOC(sizeof(LDKSignOrCreationError), "LDKSignOrCreationError"); - *ret_copy = SignOrCreationError_sign_error(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +int64_t __attribute__((visibility("default"))) TS_RouteHintHop_hash(uint32_t o) { + LDKRouteHintHop o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + int64_t ret_val = RouteHintHop_hash(&o_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_SignOrCreationError_creation_error(uint32_t a) { - LDKCreationError a_conv = LDKCreationError_from_js(a); - LDKSignOrCreationError *ret_copy = MALLOC(sizeof(LDKSignOrCreationError), "LDKSignOrCreationError"); - *ret_copy = SignOrCreationError_creation_error(a_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +jboolean __attribute__((visibility("default"))) TS_RouteHintHop_eq(uint32_t a, uint32_t b) { + LDKRouteHintHop a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + LDKRouteHintHop b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + jboolean ret_val = RouteHintHop_eq(&a_conv, &b_conv); + return ret_val; } -jboolean __attribute__((visibility("default"))) TS_SignOrCreationError_eq(uint32_t a, uint32_t b) { - LDKSignOrCreationError* a_conv = (LDKSignOrCreationError*)a; - LDKSignOrCreationError* b_conv = (LDKSignOrCreationError*)b; - jboolean ret_val = SignOrCreationError_eq(a_conv, b_conv); - return ret_val; +int8_tArray __attribute__((visibility("default"))) TS_RouteHintHop_write(uint32_t obj) { + LDKRouteHintHop obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = RouteHintHop_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -jstring __attribute__((visibility("default"))) TS_SignOrCreationError_to_str(uint32_t o) { - LDKSignOrCreationError* o_conv = (LDKSignOrCreationError*)o; - LDKStr ret_str = SignOrCreationError_to_str(o_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_RouteHintHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintHopDecodeErrorZ), "LDKCResult_RouteHintHopDecodeErrorZ"); + *ret_conv = RouteHintHop_read(ser_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_InvoicePayer_free(uint32_t this_obj) { - LDKInvoicePayer this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - InvoicePayer_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_find_route(int8_tArray our_node_pubkey, uint32_t params, uint32_t network, uint32_tArray first_hops, uint32_t logger, uint32_t scorer) { + LDKPublicKey our_node_pubkey_ref; + CHECK(our_node_pubkey->arr_len == 33); + memcpy(our_node_pubkey_ref.compressed_form, our_node_pubkey->elems, 33); + LDKRouteParameters params_conv; + params_conv.inner = (void*)(params & (~1)); + params_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(params_conv); + LDKNetworkGraph network_conv; + network_conv.inner = (void*)(network & (~1)); + network_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(network_conv); + LDKCVec_ChannelDetailsZ first_hops_constr; + LDKCVec_ChannelDetailsZ *first_hops_ptr = NULL; + if (first_hops != 0) { + first_hops_constr.datalen = first_hops->arr_len; + if (first_hops_constr.datalen > 0) + first_hops_constr.data = MALLOC(first_hops_constr.datalen * sizeof(LDKChannelDetails), "LDKCVec_ChannelDetailsZ Elements"); + else + first_hops_constr.data = NULL; + uint32_t* first_hops_vals = first_hops->elems; + for (size_t q = 0; q < first_hops_constr.datalen; q++) { + uint32_t first_hops_conv_16 = first_hops_vals[q]; + LDKChannelDetails first_hops_conv_16_conv; + first_hops_conv_16_conv.inner = (void*)(first_hops_conv_16 & (~1)); + first_hops_conv_16_conv.is_owned = (first_hops_conv_16 & 1) || (first_hops_conv_16 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(first_hops_conv_16_conv); + first_hops_constr.data[q] = first_hops_conv_16_conv; + } + first_hops_ptr = &first_hops_constr; + } + void* logger_ptr = (void*)(((uint64_t)logger) & ~1); + CHECK_ACCESS(logger_ptr); + LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); + void* scorer_ptr = (void*)(((uint64_t)scorer) & ~1); + if (!(scorer & 1)) { CHECK_ACCESS(scorer_ptr); } + LDKScore* scorer_conv = (LDKScore*)scorer_ptr; + LDKCResult_RouteLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteLightningErrorZ), "LDKCResult_RouteLightningErrorZ"); + *ret_conv = find_route(our_node_pubkey_ref, ¶ms_conv, &network_conv, first_hops_ptr, logger_conv, scorer_conv); + if (first_hops_ptr != NULL) { FREE(first_hops_constr.data); } + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_Payer_free(uint32_t this_ptr) { +void __attribute__((visibility("default"))) TS_Score_free(uint32_t this_ptr) { if ((this_ptr & 1) != 0) return; void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); CHECK_ACCESS(this_ptr_ptr); - LDKPayer this_ptr_conv = *(LDKPayer*)(this_ptr_ptr); + LDKScore this_ptr_conv = *(LDKScore*)(this_ptr_ptr); FREE((void*)this_ptr); - Payer_free(this_ptr_conv); + Score_free(this_ptr_conv); } -void __attribute__((visibility("default"))) TS_Router_free(uint32_t this_ptr) { +void __attribute__((visibility("default"))) TS_LockableScore_free(uint32_t this_ptr) { if ((this_ptr & 1) != 0) return; void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); CHECK_ACCESS(this_ptr_ptr); - LDKRouter this_ptr_conv = *(LDKRouter*)(this_ptr_ptr); + LDKLockableScore this_ptr_conv = *(LDKLockableScore*)(this_ptr_ptr); FREE((void*)this_ptr); - Router_free(this_ptr_conv); + LockableScore_free(this_ptr_conv); } -void __attribute__((visibility("default"))) TS_RetryAttempts_free(uint32_t this_obj) { - LDKRetryAttempts this_obj_conv; +void __attribute__((visibility("default"))) TS_MultiThreadedLockableScore_free(uint32_t this_obj) { + LDKMultiThreadedLockableScore this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - RetryAttempts_free(this_obj_conv); -} - -int64_t __attribute__((visibility("default"))) TS_RetryAttempts_get_a(uint32_t this_ptr) { - LDKRetryAttempts this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = RetryAttempts_get_a(&this_ptr_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_RetryAttempts_set_a(uint32_t this_ptr, int64_t val) { - LDKRetryAttempts this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - RetryAttempts_set_a(&this_ptr_conv, val); + MultiThreadedLockableScore_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_RetryAttempts_new(int64_t a_arg) { - LDKRetryAttempts ret_var = RetryAttempts_new(a_arg); +uint32_t __attribute__((visibility("default"))) TS_MultiThreadedLockableScore_new(uint32_t score) { + void* score_ptr = (void*)(((uint64_t)score) & ~1); + CHECK_ACCESS(score_ptr); + LDKScore score_conv = *(LDKScore*)(score_ptr); + LDKMultiThreadedLockableScore ret_var = MultiThreadedLockableScore_new(score_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -37094,149 +34413,101 @@ uint32_t __attribute__((visibility("default"))) TS_RetryAttempts_new(int64_t a_ return ret_ref; } -static inline uint64_t RetryAttempts_clone_ptr(LDKRetryAttempts *NONNULL_PTR arg) { - LDKRetryAttempts ret_var = RetryAttempts_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; +void __attribute__((visibility("default"))) TS_ScoringParameters_free(uint32_t this_obj) { + LDKScoringParameters this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + ScoringParameters_free(this_obj_conv); } -int64_t __attribute__((visibility("default"))) TS_RetryAttempts_clone_ptr(uint32_t arg) { - LDKRetryAttempts arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = RetryAttempts_clone_ptr(&arg_conv); + +int64_t __attribute__((visibility("default"))) TS_ScoringParameters_get_base_penalty_msat(uint32_t this_ptr) { + LDKScoringParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = ScoringParameters_get_base_penalty_msat(&this_ptr_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_RetryAttempts_clone(uint32_t orig) { - LDKRetryAttempts orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKRetryAttempts ret_var = RetryAttempts_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_ScoringParameters_set_base_penalty_msat(uint32_t this_ptr, int64_t val) { + LDKScoringParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ScoringParameters_set_base_penalty_msat(&this_ptr_conv, val); } -jboolean __attribute__((visibility("default"))) TS_RetryAttempts_eq(uint32_t a, uint32_t b) { - LDKRetryAttempts a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKRetryAttempts b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = RetryAttempts_eq(&a_conv, &b_conv); +int64_t __attribute__((visibility("default"))) TS_ScoringParameters_get_failure_penalty_msat(uint32_t this_ptr) { + LDKScoringParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = ScoringParameters_get_failure_penalty_msat(&this_ptr_conv); return ret_val; } -int64_t __attribute__((visibility("default"))) TS_RetryAttempts_hash(uint32_t o) { - LDKRetryAttempts o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = RetryAttempts_hash(&o_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_ScoringParameters_set_failure_penalty_msat(uint32_t this_ptr, int64_t val) { + LDKScoringParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ScoringParameters_set_failure_penalty_msat(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_PaymentError_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKPaymentError this_ptr_conv = *(LDKPaymentError*)(this_ptr_ptr); - FREE((void*)this_ptr); - PaymentError_free(this_ptr_conv); +int16_t __attribute__((visibility("default"))) TS_ScoringParameters_get_overuse_penalty_start_1024th(uint32_t this_ptr) { + LDKScoringParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int16_t ret_val = ScoringParameters_get_overuse_penalty_start_1024th(&this_ptr_conv); + return ret_val; } -static inline uint64_t PaymentError_clone_ptr(LDKPaymentError *NONNULL_PTR arg) { - LDKPaymentError *ret_copy = MALLOC(sizeof(LDKPaymentError), "LDKPaymentError"); - *ret_copy = PaymentError_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_PaymentError_clone_ptr(uint32_t arg) { - LDKPaymentError* arg_conv = (LDKPaymentError*)arg; - int64_t ret_val = PaymentError_clone_ptr(arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_ScoringParameters_set_overuse_penalty_start_1024th(uint32_t this_ptr, int16_t val) { + LDKScoringParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ScoringParameters_set_overuse_penalty_start_1024th(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_PaymentError_clone(uint32_t orig) { - LDKPaymentError* orig_conv = (LDKPaymentError*)orig; - LDKPaymentError *ret_copy = MALLOC(sizeof(LDKPaymentError), "LDKPaymentError"); - *ret_copy = PaymentError_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +int64_t __attribute__((visibility("default"))) TS_ScoringParameters_get_overuse_penalty_msat_per_1024th(uint32_t this_ptr) { + LDKScoringParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = ScoringParameters_get_overuse_penalty_msat_per_1024th(&this_ptr_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_PaymentError_invoice(jstring a) { - LDKStr a_conv = str_ref_to_owned_c(a); - LDKPaymentError *ret_copy = MALLOC(sizeof(LDKPaymentError), "LDKPaymentError"); - *ret_copy = PaymentError_invoice(a_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_ScoringParameters_set_overuse_penalty_msat_per_1024th(uint32_t this_ptr, int64_t val) { + LDKScoringParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ScoringParameters_set_overuse_penalty_msat_per_1024th(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_PaymentError_routing(uint32_t a) { - LDKLightningError a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = (a & 1) || (a == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - a_conv = LightningError_clone(&a_conv); - LDKPaymentError *ret_copy = MALLOC(sizeof(LDKPaymentError), "LDKPaymentError"); - *ret_copy = PaymentError_routing(a_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +int64_t __attribute__((visibility("default"))) TS_ScoringParameters_get_failure_penalty_half_life(uint32_t this_ptr) { + LDKScoringParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = ScoringParameters_get_failure_penalty_half_life(&this_ptr_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_PaymentError_sending(uint32_t a) { - void* a_ptr = (void*)(((uint64_t)a) & ~1); - CHECK_ACCESS(a_ptr); - LDKPaymentSendFailure a_conv = *(LDKPaymentSendFailure*)(a_ptr); - a_conv = PaymentSendFailure_clone((LDKPaymentSendFailure*)(((uint64_t)a) & ~1)); - LDKPaymentError *ret_copy = MALLOC(sizeof(LDKPaymentError), "LDKPaymentError"); - *ret_copy = PaymentError_sending(a_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_ScoringParameters_set_failure_penalty_half_life(uint32_t this_ptr, int64_t val) { + LDKScoringParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ScoringParameters_set_failure_penalty_half_life(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_InvoicePayer_new(uint32_t payer, uint32_t router, uint32_t scorer, uint32_t logger, uint32_t event_handler, uint32_t retry_attempts) { - void* payer_ptr = (void*)(((uint64_t)payer) & ~1); - CHECK_ACCESS(payer_ptr); - LDKPayer payer_conv = *(LDKPayer*)(payer_ptr); - void* router_ptr = (void*)(((uint64_t)router) & ~1); - CHECK_ACCESS(router_ptr); - LDKRouter router_conv = *(LDKRouter*)(router_ptr); - LDKMultiThreadedLockableScore scorer_conv; - scorer_conv.inner = (void*)(scorer & (~1)); - scorer_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(scorer_conv); - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - void* event_handler_ptr = (void*)(((uint64_t)event_handler) & ~1); - CHECK_ACCESS(event_handler_ptr); - LDKEventHandler event_handler_conv = *(LDKEventHandler*)(event_handler_ptr); - LDKRetryAttempts retry_attempts_conv; - retry_attempts_conv.inner = (void*)(retry_attempts & (~1)); - retry_attempts_conv.is_owned = (retry_attempts & 1) || (retry_attempts == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(retry_attempts_conv); - retry_attempts_conv = RetryAttempts_clone(&retry_attempts_conv); - LDKInvoicePayer ret_var = InvoicePayer_new(payer_conv, router_conv, &scorer_conv, logger_conv, event_handler_conv, retry_attempts_conv); +uint32_t __attribute__((visibility("default"))) TS_ScoringParameters_new(int64_t base_penalty_msat_arg, int64_t failure_penalty_msat_arg, int16_t overuse_penalty_start_1024th_arg, int64_t overuse_penalty_msat_per_1024th_arg, int64_t failure_penalty_half_life_arg) { + LDKScoringParameters ret_var = ScoringParameters_new(base_penalty_msat_arg, failure_penalty_msat_arg, overuse_penalty_start_1024th_arg, overuse_penalty_msat_per_1024th_arg, failure_penalty_half_life_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -37248,108 +34519,29 @@ uint32_t __attribute__((visibility("default"))) TS_InvoicePayer_new(uint32_t pa return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_InvoicePayer_pay_invoice(uint32_t this_arg, uint32_t invoice) { - LDKInvoicePayer this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKInvoice invoice_conv; - invoice_conv.inner = (void*)(invoice & (~1)); - invoice_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(invoice_conv); - LDKCResult_PaymentIdPaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentErrorZ), "LDKCResult_PaymentIdPaymentErrorZ"); - *ret_conv = InvoicePayer_pay_invoice(&this_arg_conv, &invoice_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_InvoicePayer_pay_zero_value_invoice(uint32_t this_arg, uint32_t invoice, int64_t amount_msats) { - LDKInvoicePayer this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKInvoice invoice_conv; - invoice_conv.inner = (void*)(invoice & (~1)); - invoice_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(invoice_conv); - LDKCResult_PaymentIdPaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentErrorZ), "LDKCResult_PaymentIdPaymentErrorZ"); - *ret_conv = InvoicePayer_pay_zero_value_invoice(&this_arg_conv, &invoice_conv, amount_msats); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_InvoicePayer_pay_pubkey(uint32_t this_arg, int8_tArray pubkey, int8_tArray payment_preimage, int64_t amount_msats, int32_t final_cltv_expiry_delta) { - LDKInvoicePayer this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKPublicKey pubkey_ref; - CHECK(*((uint32_t*)pubkey) == 33); - memcpy(pubkey_ref.compressed_form, (uint8_t*)(pubkey + 4), 33); - LDKThirtyTwoBytes payment_preimage_ref; - CHECK(*((uint32_t*)payment_preimage) == 32); - memcpy(payment_preimage_ref.data, (uint8_t*)(payment_preimage + 4), 32); - LDKCResult_PaymentIdPaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentErrorZ), "LDKCResult_PaymentIdPaymentErrorZ"); - *ret_conv = InvoicePayer_pay_pubkey(&this_arg_conv, pubkey_ref, payment_preimage_ref, amount_msats, final_cltv_expiry_delta); - return (uint64_t)ret_conv; -} - -void __attribute__((visibility("default"))) TS_InvoicePayer_remove_cached_payment(uint32_t this_arg, int8_tArray payment_hash) { - LDKInvoicePayer this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char payment_hash_arr[32]; - CHECK(*((uint32_t*)payment_hash) == 32); - memcpy(payment_hash_arr, (uint8_t*)(payment_hash + 4), 32); - unsigned char (*payment_hash_ref)[32] = &payment_hash_arr; - InvoicePayer_remove_cached_payment(&this_arg_conv, payment_hash_ref); -} - -uint32_t __attribute__((visibility("default"))) TS_InvoicePayer_as_EventHandler(uint32_t this_arg) { - LDKInvoicePayer this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKEventHandler* ret_ret = MALLOC(sizeof(LDKEventHandler), "LDKEventHandler"); - *ret_ret = InvoicePayer_as_EventHandler(&this_arg_conv); - return (uint64_t)ret_ret; +int8_tArray __attribute__((visibility("default"))) TS_ScoringParameters_write(uint32_t obj) { + LDKScoringParameters obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ScoringParameters_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_create_invoice_from_channelmanager(uint32_t channelmanager, uint32_t keys_manager, uint32_t network, uint32_t amt_msat, jstring description) { - LDKChannelManager channelmanager_conv; - channelmanager_conv.inner = (void*)(channelmanager & (~1)); - channelmanager_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(channelmanager_conv); - void* keys_manager_ptr = (void*)(((uint64_t)keys_manager) & ~1); - CHECK_ACCESS(keys_manager_ptr); - LDKKeysInterface keys_manager_conv = *(LDKKeysInterface*)(keys_manager_ptr); - LDKCurrency network_conv = LDKCurrency_from_js(network); - void* amt_msat_ptr = (void*)(((uint64_t)amt_msat) & ~1); - CHECK_ACCESS(amt_msat_ptr); - LDKCOption_u64Z amt_msat_conv = *(LDKCOption_u64Z*)(amt_msat_ptr); - amt_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)amt_msat) & ~1)); - LDKStr description_conv = str_ref_to_owned_c(description); - LDKCResult_InvoiceSignOrCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceSignOrCreationErrorZ), "LDKCResult_InvoiceSignOrCreationErrorZ"); - *ret_conv = create_invoice_from_channelmanager(&channelmanager_conv, keys_manager_conv, network_conv, amt_msat_conv, description_conv); +uint32_t __attribute__((visibility("default"))) TS_ScoringParameters_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ScoringParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ScoringParametersDecodeErrorZ), "LDKCResult_ScoringParametersDecodeErrorZ"); + *ret_conv = ScoringParameters_read(ser_ref); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_DefaultRouter_free(uint32_t this_obj) { - LDKDefaultRouter this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - DefaultRouter_free(this_obj_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_DefaultRouter_new(uint32_t network_graph, uint32_t logger) { - LDKNetworkGraph network_graph_conv; - network_graph_conv.inner = (void*)(network_graph & (~1)); - network_graph_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(network_graph_conv); - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - LDKDefaultRouter ret_var = DefaultRouter_new(&network_graph_conv, logger_conv); +uint32_t __attribute__((visibility("default"))) TS_ScoringParameters_default() { + LDKScoringParameters ret_var = ScoringParameters_default(); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -37361,82 +34553,3 @@ uint32_t __attribute__((visibility("default"))) TS_DefaultRouter_new(uint32_t n return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_DefaultRouter_as_Router(uint32_t this_arg) { - LDKDefaultRouter this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKRouter* ret_ret = MALLOC(sizeof(LDKRouter), "LDKRouter"); - *ret_ret = DefaultRouter_as_Router(&this_arg_conv); - return (uint64_t)ret_ret; -} - -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_as_Payer(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKPayer* ret_ret = MALLOC(sizeof(LDKPayer), "LDKPayer"); - *ret_ret = ChannelManager_as_Payer(&this_arg_conv); - return (uint64_t)ret_ret; -} - -uint32_t __attribute__((visibility("default"))) TS_SiPrefix_from_str(jstring s) { - LDKStr s_conv = str_ref_to_owned_c(s); - LDKCResult_SiPrefixNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SiPrefixNoneZ), "LDKCResult_SiPrefixNoneZ"); - *ret_conv = SiPrefix_from_str(s_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_Invoice_from_str(jstring s) { - LDKStr s_conv = str_ref_to_owned_c(s); - LDKCResult_InvoiceNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceNoneZ), "LDKCResult_InvoiceNoneZ"); - *ret_conv = Invoice_from_str(s_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_SignedRawInvoice_from_str(jstring s) { - LDKStr s_conv = str_ref_to_owned_c(s); - LDKCResult_SignedRawInvoiceNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignedRawInvoiceNoneZ), "LDKCResult_SignedRawInvoiceNoneZ"); - *ret_conv = SignedRawInvoice_from_str(s_conv); - return (uint64_t)ret_conv; -} - -jstring __attribute__((visibility("default"))) TS_Invoice_to_str(uint32_t o) { - LDKInvoice o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - LDKStr ret_str = Invoice_to_str(&o_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; -} - -jstring __attribute__((visibility("default"))) TS_SignedRawInvoice_to_str(uint32_t o) { - LDKSignedRawInvoice o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - LDKStr ret_str = SignedRawInvoice_to_str(&o_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; -} - -jstring __attribute__((visibility("default"))) TS_Currency_to_str(uint32_t o) { - LDKCurrency* o_conv = (LDKCurrency*)(o & ~1); - LDKStr ret_str = Currency_to_str(o_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; -} - -jstring __attribute__((visibility("default"))) TS_SiPrefix_to_str(uint32_t o) { - LDKSiPrefix* o_conv = (LDKSiPrefix*)(o & ~1); - LDKStr ret_str = SiPrefix_to_str(o_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; -} - diff --git a/ts/bindings.c.body b/ts/bindings.c.body index 0540b49d..203ac06f 100644 --- a/ts/bindings.c.body +++ b/ts/bindings.c.body @@ -29,32 +29,37 @@ _Static_assert(offsetof(LDKCVec_u8Z, datalen) == offsetof(LDKu8slice, datalen), _Static_assert(sizeof(void*) == 4, "Pointers mut be 32 bits"); -typedef uint32_t int64_tArray; -typedef uint32_t int8_tArray; -typedef uint32_t uint32_tArray; -typedef uint32_t ptrArray; -typedef uint32_t jstring; - -static inline uint32_t init_arr(size_t arr_len, size_t elem_size, const char *type_desc) { - uint32_t *elems = (uint32_t*)MALLOC(arr_len * elem_size + 4, type_desc); - elems[0] = arr_len; - return (uint32_t)elems; -} +#define DECL_ARR_TYPE(ty, name) \ + struct name##array { \ + uint32_t arr_len; \ + ty elems[]; \ + }; \ + typedef struct name##array * name##Array; \ + static inline name##Array init_##name##Array(size_t arr_len) { \ + name##Array arr = (name##Array)MALLOC(arr_len * sizeof(ty) + sizeof(uint32_t), "##name array init"); \ + arr->arr_len = arr_len; \ + return arr; \ + } + +DECL_ARR_TYPE(int64_t, int64_t); +DECL_ARR_TYPE(int8_t, int8_t); +DECL_ARR_TYPE(uint32_t, uint32_t); +DECL_ARR_TYPE(void*, ptr); +DECL_ARR_TYPE(char, char); +typedef charArray jstring; static inline jstring str_ref_to_ts(const char* chars, size_t len) { - char* err_buf = MALLOC(len + 4, "str conv buf"); - *((uint32_t*)err_buf) = len; - memcpy(err_buf + 4, chars, len); - return (uint32_t) err_buf; -} -static inline LDKStr str_ref_to_owned_c(jstring str) { - uint32_t *str_len = (uint32_t*)str; - char* newchars = MALLOC(*str_len + 1, "String chars"); - memcpy(newchars, (const char*)(str + 4), *str_len); - newchars[*str_len] = 0; - LDKStr res= { + charArray arr = init_charArray(len); + memcpy(arr->elems, chars, len); + return arr; +} +static inline LDKStr str_ref_to_owned_c(const jstring str) { + char* newchars = MALLOC(str->arr_len + 1, "String chars"); + memcpy(newchars, str->elems, str->arr_len); + newchars[str->arr_len] = 0; + LDKStr res = { .chars = newchars, - .len = *str_len, + .len = str->arr_len, .chars_is_owned = true }; return res; @@ -127,92 +132,6 @@ static inline int32_t LDKConfirmationTarget_to_js(LDKConfirmationTarget val) { default: abort(); } } -static inline LDKCreationError LDKCreationError_from_js(int32_t ord) { - switch (ord) { - case 0: return LDKCreationError_DescriptionTooLong; - case 1: return LDKCreationError_RouteTooLong; - case 2: return LDKCreationError_TimestampOutOfBounds; - case 3: return LDKCreationError_ExpiryTimeOutOfBounds; - case 4: return LDKCreationError_InvalidAmount; - } - abort(); -} -static inline int32_t LDKCreationError_to_js(LDKCreationError val) { - switch (val) { - case LDKCreationError_DescriptionTooLong: return 0; - case LDKCreationError_RouteTooLong: return 1; - case LDKCreationError_TimestampOutOfBounds: return 2; - case LDKCreationError_ExpiryTimeOutOfBounds: return 3; - case LDKCreationError_InvalidAmount: return 4; - default: abort(); - } -} -static inline LDKCurrency LDKCurrency_from_js(int32_t ord) { - switch (ord) { - case 0: return LDKCurrency_Bitcoin; - case 1: return LDKCurrency_BitcoinTestnet; - case 2: return LDKCurrency_Regtest; - case 3: return LDKCurrency_Simnet; - case 4: return LDKCurrency_Signet; - } - abort(); -} -static inline int32_t LDKCurrency_to_js(LDKCurrency val) { - switch (val) { - case LDKCurrency_Bitcoin: return 0; - case LDKCurrency_BitcoinTestnet: return 1; - case LDKCurrency_Regtest: return 2; - case LDKCurrency_Simnet: return 3; - case LDKCurrency_Signet: return 4; - default: abort(); - } -} -static inline LDKIOError LDKIOError_from_js(int32_t ord) { - switch (ord) { - case 0: return LDKIOError_NotFound; - case 1: return LDKIOError_PermissionDenied; - case 2: return LDKIOError_ConnectionRefused; - case 3: return LDKIOError_ConnectionReset; - case 4: return LDKIOError_ConnectionAborted; - case 5: return LDKIOError_NotConnected; - case 6: return LDKIOError_AddrInUse; - case 7: return LDKIOError_AddrNotAvailable; - case 8: return LDKIOError_BrokenPipe; - case 9: return LDKIOError_AlreadyExists; - case 10: return LDKIOError_WouldBlock; - case 11: return LDKIOError_InvalidInput; - case 12: return LDKIOError_InvalidData; - case 13: return LDKIOError_TimedOut; - case 14: return LDKIOError_WriteZero; - case 15: return LDKIOError_Interrupted; - case 16: return LDKIOError_Other; - case 17: return LDKIOError_UnexpectedEof; - } - abort(); -} -static inline int32_t LDKIOError_to_js(LDKIOError val) { - switch (val) { - case LDKIOError_NotFound: return 0; - case LDKIOError_PermissionDenied: return 1; - case LDKIOError_ConnectionRefused: return 2; - case LDKIOError_ConnectionReset: return 3; - case LDKIOError_ConnectionAborted: return 4; - case LDKIOError_NotConnected: return 5; - case LDKIOError_AddrInUse: return 6; - case LDKIOError_AddrNotAvailable: return 7; - case LDKIOError_BrokenPipe: return 8; - case LDKIOError_AlreadyExists: return 9; - case LDKIOError_WouldBlock: return 10; - case LDKIOError_InvalidInput: return 11; - case LDKIOError_InvalidData: return 12; - case LDKIOError_TimedOut: return 13; - case LDKIOError_WriteZero: return 14; - case LDKIOError_Interrupted: return 15; - case LDKIOError_Other: return 16; - case LDKIOError_UnexpectedEof: return 17; - default: abort(); - } -} static inline LDKLevel LDKLevel_from_js(int32_t ord) { switch (ord) { case 0: return LDKLevel_Gossip; @@ -281,54 +200,6 @@ static inline int32_t LDKSecp256k1Error_to_js(LDKSecp256k1Error val) { default: abort(); } } -static inline LDKSemanticError LDKSemanticError_from_js(int32_t ord) { - switch (ord) { - case 0: return LDKSemanticError_NoPaymentHash; - case 1: return LDKSemanticError_MultiplePaymentHashes; - case 2: return LDKSemanticError_NoDescription; - case 3: return LDKSemanticError_MultipleDescriptions; - case 4: return LDKSemanticError_NoPaymentSecret; - case 5: return LDKSemanticError_MultiplePaymentSecrets; - case 6: return LDKSemanticError_InvalidFeatures; - case 7: return LDKSemanticError_InvalidRecoveryId; - case 8: return LDKSemanticError_InvalidSignature; - case 9: return LDKSemanticError_ImpreciseAmount; - } - abort(); -} -static inline int32_t LDKSemanticError_to_js(LDKSemanticError val) { - switch (val) { - case LDKSemanticError_NoPaymentHash: return 0; - case LDKSemanticError_MultiplePaymentHashes: return 1; - case LDKSemanticError_NoDescription: return 2; - case LDKSemanticError_MultipleDescriptions: return 3; - case LDKSemanticError_NoPaymentSecret: return 4; - case LDKSemanticError_MultiplePaymentSecrets: return 5; - case LDKSemanticError_InvalidFeatures: return 6; - case LDKSemanticError_InvalidRecoveryId: return 7; - case LDKSemanticError_InvalidSignature: return 8; - case LDKSemanticError_ImpreciseAmount: return 9; - default: abort(); - } -} -static inline LDKSiPrefix LDKSiPrefix_from_js(int32_t ord) { - switch (ord) { - case 0: return LDKSiPrefix_Milli; - case 1: return LDKSiPrefix_Micro; - case 2: return LDKSiPrefix_Nano; - case 3: return LDKSiPrefix_Pico; - } - abort(); -} -static inline int32_t LDKSiPrefix_to_js(LDKSiPrefix val) { - switch (val) { - case LDKSiPrefix_Milli: return 0; - case LDKSiPrefix_Micro: return 1; - case LDKSiPrefix_Nano: return 2; - case LDKSiPrefix_Pico: return 3; - default: abort(); - } -} static inline LDKCVec_u8Z CVec_u8Z_clone(const LDKCVec_u8Z *orig) { LDKCVec_u8Z ret = { .data = MALLOC(sizeof(int8_t) * orig->datalen, "LDKCVec_u8Z clone bytes"), .datalen = orig->datalen }; memcpy(ret.data, orig->data, sizeof(int8_t) * ret.datalen); @@ -337,8 +208,8 @@ static inline LDKCVec_u8Z CVec_u8Z_clone(const LDKCVec_u8Z *orig) { struct LDKCVec_u8Z TxOut_get_script_pubkey (struct LDKTxOut* thing) { return CVec_u8Z_clone(&thing->script_pubkey);}int8_tArray __attribute__((visibility("default"))) TS_TxOut_get_script_pubkey(uint32_t thing) { LDKTxOut* thing_conv = (LDKTxOut*)(thing & ~1); LDKCVec_u8Z ret_var = TxOut_get_script_pubkey(thing_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } @@ -349,1981 +220,775 @@ uint64_t TxOut_get_value (struct LDKTxOut* thing) { return thing->value;}int64_t return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_LDKCResult_SecretKeyErrorZ_get_ok(uint32_t arg) { - LDKCResult_SecretKeyErrorZ *val = (LDKCResult_SecretKeyErrorZ*)(arg & ~1); - CHECK(val->result_ok); - int8_tArray res_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(res_arr + 4), (*val->contents.result).bytes, 32); - return res_arr; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_SecretKeyErrorZ_get_err(uint32_t arg) { - LDKCResult_SecretKeyErrorZ *val = (LDKCResult_SecretKeyErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKSecp256k1Error_to_js((*val->contents.err)); - return err_conv; -} -int8_tArray __attribute__((visibility("default"))) TS_LDKCResult_PublicKeyErrorZ_get_ok(uint32_t arg) { - LDKCResult_PublicKeyErrorZ *val = (LDKCResult_PublicKeyErrorZ*)(arg & ~1); - CHECK(val->result_ok); - int8_tArray res_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(res_arr + 4), (*val->contents.result).compressed_form, 33); - return res_arr; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PublicKeyErrorZ_get_err(uint32_t arg) { - LDKCResult_PublicKeyErrorZ *val = (LDKCResult_PublicKeyErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKSecp256k1Error_to_js((*val->contents.err)); - return err_conv; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_TxCreationKeysDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_TxCreationKeysDecodeErrorZ *val = (LDKCResult_TxCreationKeysDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKTxCreationKeys res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_TxCreationKeysDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_TxCreationKeysDecodeErrorZ *val = (LDKCResult_TxCreationKeysDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelPublicKeysDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ChannelPublicKeysDecodeErrorZ *val = (LDKCResult_ChannelPublicKeysDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKChannelPublicKeys res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelPublicKeysDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ChannelPublicKeysDecodeErrorZ *val = (LDKCResult_ChannelPublicKeysDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_TxCreationKeysErrorZ_get_ok(uint32_t arg) { - LDKCResult_TxCreationKeysErrorZ *val = (LDKCResult_TxCreationKeysErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKTxCreationKeys res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_TxCreationKeysErrorZ_get_err(uint32_t arg) { - LDKCResult_TxCreationKeysErrorZ *val = (LDKCResult_TxCreationKeysErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKSecp256k1Error_to_js((*val->contents.err)); - return err_conv; +static inline struct LDKChannelConfig CResult_ChannelConfigDecodeErrorZ_get_ok(LDKCResult_ChannelConfigDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ChannelConfig_clone(&*owner->contents.result); } -uint32_t __attribute__((visibility("default"))) TS_LDKCOption_u32Z_ref_from_ptr(uint32_t ptr) { - LDKCOption_u32Z *obj = (LDKCOption_u32Z*)(ptr & ~1); - switch(obj->tag) { - case LDKCOption_u32Z_Some: { - return 0 /* LDKCOption_u32Z - Some */; (void) obj->some; - } - case LDKCOption_u32Z_None: { - return 0 /* LDKCOption_u32Z - None */; - } - default: abort(); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ChannelConfigDecodeErrorZ* owner_conv = (LDKCResult_ChannelConfigDecodeErrorZ*)(owner & ~1); + LDKChannelConfig ret_var = CResult_ChannelConfigDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_HTLCOutputInCommitmentDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_HTLCOutputInCommitmentDecodeErrorZ *val = (LDKCResult_HTLCOutputInCommitmentDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKHTLCOutputInCommitment res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_HTLCOutputInCommitmentDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_HTLCOutputInCommitmentDecodeErrorZ *val = (LDKCResult_HTLCOutputInCommitmentDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ *val = (LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKCounterpartyChannelTransactionParameters res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ *val = (LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelTransactionParametersDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ChannelTransactionParametersDecodeErrorZ *val = (LDKCResult_ChannelTransactionParametersDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKChannelTransactionParameters res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelTransactionParametersDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ChannelTransactionParametersDecodeErrorZ *val = (LDKCResult_ChannelTransactionParametersDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_HolderCommitmentTransactionDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_HolderCommitmentTransactionDecodeErrorZ *val = (LDKCResult_HolderCommitmentTransactionDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKHolderCommitmentTransaction res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_HolderCommitmentTransactionDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_HolderCommitmentTransactionDecodeErrorZ *val = (LDKCResult_HolderCommitmentTransactionDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_BuiltCommitmentTransactionDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_BuiltCommitmentTransactionDecodeErrorZ *val = (LDKCResult_BuiltCommitmentTransactionDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKBuiltCommitmentTransaction res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_BuiltCommitmentTransactionDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_BuiltCommitmentTransactionDecodeErrorZ *val = (LDKCResult_BuiltCommitmentTransactionDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_TrustedClosingTransactionNoneZ_get_ok(uint32_t arg) { - LDKCResult_TrustedClosingTransactionNoneZ *val = (LDKCResult_TrustedClosingTransactionNoneZ*)(arg & ~1); - CHECK(val->result_ok); - LDKTrustedClosingTransaction res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -void __attribute__((visibility("default"))) TS_LDKCResult_TrustedClosingTransactionNoneZ_get_err(uint32_t arg) { - LDKCResult_TrustedClosingTransactionNoneZ *val = (LDKCResult_TrustedClosingTransactionNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_CommitmentTransactionDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_CommitmentTransactionDecodeErrorZ *val = (LDKCResult_CommitmentTransactionDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKCommitmentTransaction res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_CommitmentTransactionDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_CommitmentTransactionDecodeErrorZ *val = (LDKCResult_CommitmentTransactionDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_TrustedCommitmentTransactionNoneZ_get_ok(uint32_t arg) { - LDKCResult_TrustedCommitmentTransactionNoneZ *val = (LDKCResult_TrustedCommitmentTransactionNoneZ*)(arg & ~1); - CHECK(val->result_ok); - LDKTrustedCommitmentTransaction res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -void __attribute__((visibility("default"))) TS_LDKCResult_TrustedCommitmentTransactionNoneZ_get_err(uint32_t arg) { - LDKCResult_TrustedCommitmentTransactionNoneZ *val = (LDKCResult_TrustedCommitmentTransactionNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; -} -ptrArray __attribute__((visibility("default"))) TS_LDKCResult_CVec_SignatureZNoneZ_get_ok(uint32_t arg) { - LDKCResult_CVec_SignatureZNoneZ *val = (LDKCResult_CVec_SignatureZNoneZ*)(arg & ~1); - CHECK(val->result_ok); - LDKCVec_SignatureZ res_var = (*val->contents.result); - ptrArray res_arr = NULL; - res_arr = init_arr(res_var.datalen, sizeof(uint32_t), "Native ptrArray Bytes"); - int8_tArray *res_arr_ptr = (int8_tArray*)(res_arr + 4); - for (size_t m = 0; m < res_var.datalen; m++) { - int8_tArray res_conv_12_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(res_conv_12_arr + 4), res_var.data[m].compact_form, 64); - res_arr_ptr[m] = res_conv_12_arr; - } - - return res_arr; -} -void __attribute__((visibility("default"))) TS_LDKCResult_CVec_SignatureZNoneZ_get_err(uint32_t arg) { - LDKCResult_CVec_SignatureZNoneZ *val = (LDKCResult_CVec_SignatureZNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ShutdownScriptDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ShutdownScriptDecodeErrorZ *val = (LDKCResult_ShutdownScriptDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKShutdownScript res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ShutdownScriptDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ShutdownScriptDecodeErrorZ *val = (LDKCResult_ShutdownScriptDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ShutdownScriptInvalidShutdownScriptZ_get_ok(uint32_t arg) { - LDKCResult_ShutdownScriptInvalidShutdownScriptZ *val = (LDKCResult_ShutdownScriptInvalidShutdownScriptZ*)(arg & ~1); - CHECK(val->result_ok); - LDKShutdownScript res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ShutdownScriptInvalidShutdownScriptZ_get_err(uint32_t arg) { - LDKCResult_ShutdownScriptInvalidShutdownScriptZ *val = (LDKCResult_ShutdownScriptInvalidShutdownScriptZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKInvalidShutdownScript err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -void __attribute__((visibility("default"))) TS_LDKCResult_NoneErrorZ_get_ok(uint32_t arg) { - LDKCResult_NoneErrorZ *val = (LDKCResult_NoneErrorZ*)(arg & ~1); - CHECK(val->result_ok); - return *val->contents.result; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NoneErrorZ_get_err(uint32_t arg) { - LDKCResult_NoneErrorZ *val = (LDKCResult_NoneErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKIOError_to_js((*val->contents.err)); - return err_conv; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RouteHopDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_RouteHopDecodeErrorZ *val = (LDKCResult_RouteHopDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKRouteHop res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RouteHopDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_RouteHopDecodeErrorZ *val = (LDKCResult_RouteHopDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; + +static inline struct LDKDecodeError CResult_ChannelConfigDecodeErrorZ_get_err(LDKCResult_ChannelConfigDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -static inline LDKCVec_RouteHopZ CVec_RouteHopZ_clone(const LDKCVec_RouteHopZ *orig) { - LDKCVec_RouteHopZ ret = { .data = MALLOC(sizeof(LDKRouteHop) * orig->datalen, "LDKCVec_RouteHopZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = RouteHop_clone(&orig->data[i]); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ChannelConfigDecodeErrorZ* owner_conv = (LDKCResult_ChannelConfigDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ChannelConfigDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; + return ret_ref; } -static inline LDKCVec_CVec_RouteHopZZ CVec_CVec_RouteHopZZ_clone(const LDKCVec_CVec_RouteHopZZ *orig) { - LDKCVec_CVec_RouteHopZZ ret = { .data = MALLOC(sizeof(LDKCVec_RouteHopZ) * orig->datalen, "LDKCVec_CVec_RouteHopZZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = CVec_RouteHopZ_clone(&orig->data[i]); + +static inline struct LDKOutPoint CResult_OutPointDecodeErrorZ_get_ok(LDKCResult_OutPointDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return OutPoint_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_OutPointDecodeErrorZ* owner_conv = (LDKCResult_OutPointDecodeErrorZ*)(owner & ~1); + LDKOutPoint ret_var = CResult_OutPointDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RouteDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_RouteDecodeErrorZ *val = (LDKCResult_RouteDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKRoute res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RouteDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_RouteDecodeErrorZ *val = (LDKCResult_RouteDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RouteParametersDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_RouteParametersDecodeErrorZ *val = (LDKCResult_RouteParametersDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKRouteParameters res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RouteParametersDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_RouteParametersDecodeErrorZ *val = (LDKCResult_RouteParametersDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; + +static inline struct LDKDecodeError CResult_OutPointDecodeErrorZ_get_err(LDKCResult_OutPointDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -static inline LDKCVec_RouteHintZ CVec_RouteHintZ_clone(const LDKCVec_RouteHintZ *orig) { - LDKCVec_RouteHintZ ret = { .data = MALLOC(sizeof(LDKRouteHint) * orig->datalen, "LDKCVec_RouteHintZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = RouteHint_clone(&orig->data[i]); +uint32_t __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_OutPointDecodeErrorZ* owner_conv = (LDKCResult_OutPointDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_OutPointDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCOption_u64Z_ref_from_ptr(uint32_t ptr) { - LDKCOption_u64Z *obj = (LDKCOption_u64Z*)(ptr & ~1); - switch(obj->tag) { - case LDKCOption_u64Z_Some: { - return 0 /* LDKCOption_u64Z - Some */; (void) obj->some; - } - case LDKCOption_u64Z_None: { - return 0 /* LDKCOption_u64Z - None */; - } - default: abort(); - } + +static inline struct LDKSecretKey CResult_SecretKeyErrorZ_get_ok(LDKCResult_SecretKeyErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PayeeDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_PayeeDecodeErrorZ *val = (LDKCResult_PayeeDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKPayee res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PayeeDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_PayeeDecodeErrorZ *val = (LDKCResult_PayeeDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; +int8_tArray __attribute__((visibility("default"))) TS_CResult_SecretKeyErrorZ_get_ok(uint32_t owner) { + LDKCResult_SecretKeyErrorZ* owner_conv = (LDKCResult_SecretKeyErrorZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, CResult_SecretKeyErrorZ_get_ok(owner_conv).bytes, 32); + return ret_arr; } -static inline LDKCVec_RouteHintHopZ CVec_RouteHintHopZ_clone(const LDKCVec_RouteHintHopZ *orig) { - LDKCVec_RouteHintHopZ ret = { .data = MALLOC(sizeof(LDKRouteHintHop) * orig->datalen, "LDKCVec_RouteHintHopZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = RouteHintHop_clone(&orig->data[i]); + +static inline enum LDKSecp256k1Error CResult_SecretKeyErrorZ_get_err(LDKCResult_SecretKeyErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; +} +uint32_t __attribute__((visibility("default"))) TS_CResult_SecretKeyErrorZ_get_err(uint32_t owner) { + LDKCResult_SecretKeyErrorZ* owner_conv = (LDKCResult_SecretKeyErrorZ*)(owner & ~1); + uint32_t ret_conv = LDKSecp256k1Error_to_js(CResult_SecretKeyErrorZ_get_err(owner_conv)); + return ret_conv; +} + +static inline struct LDKPublicKey CResult_PublicKeyErrorZ_get_ok(LDKCResult_PublicKeyErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; +} +int8_tArray __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_get_ok(uint32_t owner) { + LDKCResult_PublicKeyErrorZ* owner_conv = (LDKCResult_PublicKeyErrorZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, CResult_PublicKeyErrorZ_get_ok(owner_conv).compressed_form, 33); + return ret_arr; +} + +static inline enum LDKSecp256k1Error CResult_PublicKeyErrorZ_get_err(LDKCResult_PublicKeyErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; +} +uint32_t __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_get_err(uint32_t owner) { + LDKCResult_PublicKeyErrorZ* owner_conv = (LDKCResult_PublicKeyErrorZ*)(owner & ~1); + uint32_t ret_conv = LDKSecp256k1Error_to_js(CResult_PublicKeyErrorZ_get_err(owner_conv)); + return ret_conv; +} + +static inline struct LDKTxCreationKeys CResult_TxCreationKeysDecodeErrorZ_get_ok(LDKCResult_TxCreationKeysDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return TxCreationKeys_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_TxCreationKeysDecodeErrorZ* owner_conv = (LDKCResult_TxCreationKeysDecodeErrorZ*)(owner & ~1); + LDKTxCreationKeys ret_var = CResult_TxCreationKeysDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RouteHintDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_RouteHintDecodeErrorZ *val = (LDKCResult_RouteHintDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKRouteHint res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RouteHintDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_RouteHintDecodeErrorZ *val = (LDKCResult_RouteHintDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RouteHintHopDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_RouteHintHopDecodeErrorZ *val = (LDKCResult_RouteHintHopDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKRouteHintHop res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RouteHintHopDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_RouteHintHopDecodeErrorZ *val = (LDKCResult_RouteHintHopDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; + +static inline struct LDKDecodeError CResult_TxCreationKeysDecodeErrorZ_get_err(LDKCResult_TxCreationKeysDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -static inline LDKCVec_ChannelDetailsZ CVec_ChannelDetailsZ_clone(const LDKCVec_ChannelDetailsZ *orig) { - LDKCVec_ChannelDetailsZ ret = { .data = MALLOC(sizeof(LDKChannelDetails) * orig->datalen, "LDKCVec_ChannelDetailsZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = ChannelDetails_clone(&orig->data[i]); +uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_TxCreationKeysDecodeErrorZ* owner_conv = (LDKCResult_TxCreationKeysDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_TxCreationKeysDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RouteLightningErrorZ_get_ok(uint32_t arg) { - LDKCResult_RouteLightningErrorZ *val = (LDKCResult_RouteLightningErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKRoute res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RouteLightningErrorZ_get_err(uint32_t arg) { - LDKCResult_RouteLightningErrorZ *val = (LDKCResult_RouteLightningErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKLightningError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_TxOutAccessErrorZ_get_ok(uint32_t arg) { - LDKCResult_TxOutAccessErrorZ *val = (LDKCResult_TxOutAccessErrorZ*)(arg & ~1); - CHECK(val->result_ok); - uint64_t res_ref = ((uint64_t)&(*val->contents.result)) | 1; - return (uint64_t)res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_TxOutAccessErrorZ_get_err(uint32_t arg) { - LDKCResult_TxOutAccessErrorZ *val = (LDKCResult_TxOutAccessErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKAccessError_to_js((*val->contents.err)); - return err_conv; -} -static inline uintptr_t C2Tuple_usizeTransactionZ_get_a(LDKC2Tuple_usizeTransactionZ *NONNULL_PTR tuple){ - return tuple->a; -} -int64_t __attribute__((visibility("default"))) TS_C2Tuple_usizeTransactionZ_get_a(uint32_t tuple) { - LDKC2Tuple_usizeTransactionZ* tuple_conv = (LDKC2Tuple_usizeTransactionZ*)(tuple & ~1); - int64_t ret_val = C2Tuple_usizeTransactionZ_get_a(tuple_conv); - return ret_val; -} - -static inline struct LDKTransaction C2Tuple_usizeTransactionZ_get_b(LDKC2Tuple_usizeTransactionZ *NONNULL_PTR tuple){ - return tuple->b; -} -int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_usizeTransactionZ_get_b(uint32_t tuple) { - LDKC2Tuple_usizeTransactionZ* tuple_conv = (LDKC2Tuple_usizeTransactionZ*)(tuple & ~1); - LDKTransaction ret_var = C2Tuple_usizeTransactionZ_get_b(tuple_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - Transaction_free(ret_var); - return ret_arr; + +static inline struct LDKChannelPublicKeys CResult_ChannelPublicKeysDecodeErrorZ_get_ok(LDKCResult_ChannelPublicKeysDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ChannelPublicKeys_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ChannelPublicKeysDecodeErrorZ* owner_conv = (LDKCResult_ChannelPublicKeysDecodeErrorZ*)(owner & ~1); + LDKChannelPublicKeys ret_var = CResult_ChannelPublicKeysDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline LDKCVec_C2Tuple_usizeTransactionZZ CVec_C2Tuple_usizeTransactionZZ_clone(const LDKCVec_C2Tuple_usizeTransactionZZ *orig) { - LDKCVec_C2Tuple_usizeTransactionZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_usizeTransactionZ) * orig->datalen, "LDKCVec_C2Tuple_usizeTransactionZZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = C2Tuple_usizeTransactionZ_clone(&orig->data[i]); +static inline struct LDKDecodeError CResult_ChannelPublicKeysDecodeErrorZ_get_err(LDKCResult_ChannelPublicKeysDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ChannelPublicKeysDecodeErrorZ* owner_conv = (LDKCResult_ChannelPublicKeysDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ChannelPublicKeysDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; + return ret_ref; } -static inline LDKCVec_TxidZ CVec_ThirtyTwoBytesZ_clone(const LDKCVec_TxidZ *orig) { - LDKCVec_TxidZ ret = { .data = MALLOC(sizeof(LDKThirtyTwoBytes) * orig->datalen, "LDKCVec_TxidZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = ThirtyTwoBytes_clone(&orig->data[i]); + +static inline struct LDKTxCreationKeys CResult_TxCreationKeysErrorZ_get_ok(LDKCResult_TxCreationKeysErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return TxCreationKeys_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_get_ok(uint32_t owner) { + LDKCResult_TxCreationKeysErrorZ* owner_conv = (LDKCResult_TxCreationKeysErrorZ*)(owner & ~1); + LDKTxCreationKeys ret_var = CResult_TxCreationKeysErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; + return ret_ref; } -void __attribute__((visibility("default"))) TS_LDKCResult_NoneChannelMonitorUpdateErrZ_get_ok(uint32_t arg) { - LDKCResult_NoneChannelMonitorUpdateErrZ *val = (LDKCResult_NoneChannelMonitorUpdateErrZ*)(arg & ~1); - CHECK(val->result_ok); - return *val->contents.result; + +static inline enum LDKSecp256k1Error CResult_TxCreationKeysErrorZ_get_err(LDKCResult_TxCreationKeysErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NoneChannelMonitorUpdateErrZ_get_err(uint32_t arg) { - LDKCResult_NoneChannelMonitorUpdateErrZ *val = (LDKCResult_NoneChannelMonitorUpdateErrZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKChannelMonitorUpdateErr_to_js((*val->contents.err)); - return err_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_get_err(uint32_t owner) { + LDKCResult_TxCreationKeysErrorZ* owner_conv = (LDKCResult_TxCreationKeysErrorZ*)(owner & ~1); + uint32_t ret_conv = LDKSecp256k1Error_to_js(CResult_TxCreationKeysErrorZ_get_err(owner_conv)); + return ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_LDKMonitorEvent_ref_from_ptr(uint32_t ptr) { - LDKMonitorEvent *obj = (LDKMonitorEvent*)(ptr & ~1); + +uint32_t __attribute__((visibility("default"))) TS_LDKCOption_u32Z_ref_from_ptr(uint32_t ptr) { + LDKCOption_u32Z *obj = (LDKCOption_u32Z*)(ptr & ~1); switch(obj->tag) { - case LDKMonitorEvent_HTLCEvent: { - LDKHTLCUpdate htlc_event_var = obj->htlc_event; - uint64_t htlc_event_ref = 0; - CHECK((((uint64_t)htlc_event_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&htlc_event_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_event_var); - htlc_event_ref = (uint64_t)htlc_event_var.inner & ~1; - return 0 /* LDKMonitorEvent - HTLCEvent */; (void) htlc_event_ref; - } - case LDKMonitorEvent_CommitmentTxConfirmed: { - LDKOutPoint commitment_tx_confirmed_var = obj->commitment_tx_confirmed; - uint64_t commitment_tx_confirmed_ref = 0; - CHECK((((uint64_t)commitment_tx_confirmed_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&commitment_tx_confirmed_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_confirmed_var); - commitment_tx_confirmed_ref = (uint64_t)commitment_tx_confirmed_var.inner & ~1; - return 0 /* LDKMonitorEvent - CommitmentTxConfirmed */; (void) commitment_tx_confirmed_ref; - } - case LDKMonitorEvent_UpdateCompleted: { - LDKOutPoint funding_txo_var = obj->update_completed.funding_txo; - uint64_t funding_txo_ref = 0; - CHECK((((uint64_t)funding_txo_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&funding_txo_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_var); - funding_txo_ref = (uint64_t)funding_txo_var.inner & ~1; - return 0 /* LDKMonitorEvent - UpdateCompleted */; (void) funding_txo_ref; (void) obj->update_completed.monitor_update_id; + case LDKCOption_u32Z_Some: { + return 0 /* LDKCOption_u32Z - Some */; (void) obj->some; } - case LDKMonitorEvent_UpdateFailed: { - LDKOutPoint update_failed_var = obj->update_failed; - uint64_t update_failed_ref = 0; - CHECK((((uint64_t)update_failed_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&update_failed_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_failed_var); - update_failed_ref = (uint64_t)update_failed_var.inner & ~1; - return 0 /* LDKMonitorEvent - UpdateFailed */; (void) update_failed_ref; + case LDKCOption_u32Z_None: { + return 0 /* LDKCOption_u32Z - None */; } default: abort(); } } -static inline LDKCVec_MonitorEventZ CVec_MonitorEventZ_clone(const LDKCVec_MonitorEventZ *orig) { - LDKCVec_MonitorEventZ ret = { .data = MALLOC(sizeof(LDKMonitorEvent) * orig->datalen, "LDKCVec_MonitorEventZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = MonitorEvent_clone(&orig->data[i]); - } - return ret; +static inline struct LDKHTLCOutputInCommitment CResult_HTLCOutputInCommitmentDecodeErrorZ_get_ok(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return HTLCOutputInCommitment_clone(&*owner->contents.result); } -uint32_t __attribute__((visibility("default"))) TS_LDKCOption_C2Tuple_usizeTransactionZZ_ref_from_ptr(uint32_t ptr) { - LDKCOption_C2Tuple_usizeTransactionZZ *obj = (LDKCOption_C2Tuple_usizeTransactionZZ*)(ptr & ~1); - switch(obj->tag) { - case LDKCOption_C2Tuple_usizeTransactionZZ_Some: { - LDKC2Tuple_usizeTransactionZ* some_conv = MALLOC(sizeof(LDKC2Tuple_usizeTransactionZ), "LDKC2Tuple_usizeTransactionZ"); - *some_conv = obj->some; - *some_conv = C2Tuple_usizeTransactionZ_clone(some_conv); - return 0 /* LDKCOption_C2Tuple_usizeTransactionZZ - Some */; (void) ((uint64_t)some_conv); - } - case LDKCOption_C2Tuple_usizeTransactionZZ_None: { - return 0 /* LDKCOption_C2Tuple_usizeTransactionZZ - None */; - } - default: abort(); +uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* owner_conv = (LDKCResult_HTLCOutputInCommitmentDecodeErrorZ*)(owner & ~1); + LDKHTLCOutputInCommitment ret_var = CResult_HTLCOutputInCommitmentDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKClosureReason_ref_from_ptr(uint32_t ptr) { - LDKClosureReason *obj = (LDKClosureReason*)(ptr & ~1); - switch(obj->tag) { - case LDKClosureReason_CounterpartyForceClosed: { - LDKStr peer_msg_str = obj->counterparty_force_closed.peer_msg; - jstring peer_msg_conv = str_ref_to_ts(peer_msg_str.chars, peer_msg_str.len); - return 0 /* LDKClosureReason - CounterpartyForceClosed */; (void) peer_msg_conv; - } - case LDKClosureReason_HolderForceClosed: { - return 0 /* LDKClosureReason - HolderForceClosed */; - } - case LDKClosureReason_CooperativeClosure: { - return 0 /* LDKClosureReason - CooperativeClosure */; - } - case LDKClosureReason_CommitmentTxConfirmed: { - return 0 /* LDKClosureReason - CommitmentTxConfirmed */; - } - case LDKClosureReason_FundingTimedOut: { - return 0 /* LDKClosureReason - FundingTimedOut */; - } - case LDKClosureReason_ProcessingError: { - LDKStr err_str = obj->processing_error.err; - jstring err_conv = str_ref_to_ts(err_str.chars, err_str.len); - return 0 /* LDKClosureReason - ProcessingError */; (void) err_conv; - } - case LDKClosureReason_DisconnectedPeer: { - return 0 /* LDKClosureReason - DisconnectedPeer */; - } - case LDKClosureReason_OutdatedChannelManager: { - return 0 /* LDKClosureReason - OutdatedChannelManager */; - } - default: abort(); + +static inline struct LDKDecodeError CResult_HTLCOutputInCommitmentDecodeErrorZ_get_err(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* owner_conv = (LDKCResult_HTLCOutputInCommitmentDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_HTLCOutputInCommitmentDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCOption_ClosureReasonZ_ref_from_ptr(uint32_t ptr) { - LDKCOption_ClosureReasonZ *obj = (LDKCOption_ClosureReasonZ*)(ptr & ~1); - switch(obj->tag) { - case LDKCOption_ClosureReasonZ_Some: { - uint64_t some_ref = ((uint64_t)&obj->some) | 1; - return 0 /* LDKCOption_ClosureReasonZ - Some */; (void) some_ref; - } - case LDKCOption_ClosureReasonZ_None: { - return 0 /* LDKCOption_ClosureReasonZ - None */; - } - default: abort(); + +static inline struct LDKCounterpartyChannelTransactionParameters CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_get_ok(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return CounterpartyChannelTransactionParameters_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* owner_conv = (LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ*)(owner & ~1); + LDKCounterpartyChannelTransactionParameters ret_var = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_COption_ClosureReasonZDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_COption_ClosureReasonZDecodeErrorZ *val = (LDKCResult_COption_ClosureReasonZDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - uint64_t res_ref = ((uint64_t)&(*val->contents.result)) | 1; - return res_ref; + +static inline struct LDKDecodeError CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_get_err(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_COption_ClosureReasonZDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_COption_ClosureReasonZDecodeErrorZ *val = (LDKCResult_COption_ClosureReasonZDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* owner_conv = (LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKNetworkUpdate_ref_from_ptr(uint32_t ptr) { - LDKNetworkUpdate *obj = (LDKNetworkUpdate*)(ptr & ~1); - switch(obj->tag) { - case LDKNetworkUpdate_ChannelUpdateMessage: { - LDKChannelUpdate msg_var = obj->channel_update_message.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKNetworkUpdate - ChannelUpdateMessage */; (void) msg_ref; - } - case LDKNetworkUpdate_ChannelClosed: { - return 0 /* LDKNetworkUpdate - ChannelClosed */; (void) obj->channel_closed.short_channel_id; (void) obj->channel_closed.is_permanent; - } - case LDKNetworkUpdate_NodeFailure: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->node_failure.node_id.compressed_form, 33); - return 0 /* LDKNetworkUpdate - NodeFailure */; (void) node_id_arr; (void) obj->node_failure.is_permanent; - } - default: abort(); + +static inline struct LDKChannelTransactionParameters CResult_ChannelTransactionParametersDecodeErrorZ_get_ok(LDKCResult_ChannelTransactionParametersDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ChannelTransactionParameters_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ChannelTransactionParametersDecodeErrorZ* owner_conv = (LDKCResult_ChannelTransactionParametersDecodeErrorZ*)(owner & ~1); + LDKChannelTransactionParameters ret_var = CResult_ChannelTransactionParametersDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCOption_NetworkUpdateZ_ref_from_ptr(uint32_t ptr) { - LDKCOption_NetworkUpdateZ *obj = (LDKCOption_NetworkUpdateZ*)(ptr & ~1); - switch(obj->tag) { - case LDKCOption_NetworkUpdateZ_Some: { - uint64_t some_ref = ((uint64_t)&obj->some) | 1; - return 0 /* LDKCOption_NetworkUpdateZ - Some */; (void) some_ref; - } - case LDKCOption_NetworkUpdateZ_None: { - return 0 /* LDKCOption_NetworkUpdateZ - None */; - } - default: abort(); + +static inline struct LDKDecodeError CResult_ChannelTransactionParametersDecodeErrorZ_get_err(LDKCResult_ChannelTransactionParametersDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ChannelTransactionParametersDecodeErrorZ* owner_conv = (LDKCResult_ChannelTransactionParametersDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ChannelTransactionParametersDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKSpendableOutputDescriptor_ref_from_ptr(uint32_t ptr) { - LDKSpendableOutputDescriptor *obj = (LDKSpendableOutputDescriptor*)(ptr & ~1); - switch(obj->tag) { - case LDKSpendableOutputDescriptor_StaticOutput: { - LDKOutPoint outpoint_var = obj->static_output.outpoint; - uint64_t outpoint_ref = 0; - CHECK((((uint64_t)outpoint_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&outpoint_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(outpoint_var); - outpoint_ref = (uint64_t)outpoint_var.inner & ~1; - uint64_t output_ref = ((uint64_t)&obj->static_output.output) | 1; - return 0 /* LDKSpendableOutputDescriptor - StaticOutput */; (void) outpoint_ref; (void) (uint64_t)output_ref; - } - case LDKSpendableOutputDescriptor_DelayedPaymentOutput: { - LDKDelayedPaymentOutputDescriptor delayed_payment_output_var = obj->delayed_payment_output; - uint64_t delayed_payment_output_ref = 0; - CHECK((((uint64_t)delayed_payment_output_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&delayed_payment_output_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(delayed_payment_output_var); - delayed_payment_output_ref = (uint64_t)delayed_payment_output_var.inner & ~1; - return 0 /* LDKSpendableOutputDescriptor - DelayedPaymentOutput */; (void) delayed_payment_output_ref; - } - case LDKSpendableOutputDescriptor_StaticPaymentOutput: { - LDKStaticPaymentOutputDescriptor static_payment_output_var = obj->static_payment_output; - uint64_t static_payment_output_ref = 0; - CHECK((((uint64_t)static_payment_output_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&static_payment_output_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(static_payment_output_var); - static_payment_output_ref = (uint64_t)static_payment_output_var.inner & ~1; - return 0 /* LDKSpendableOutputDescriptor - StaticPaymentOutput */; (void) static_payment_output_ref; - } - default: abort(); + +static inline struct LDKHolderCommitmentTransaction CResult_HolderCommitmentTransactionDecodeErrorZ_get_ok(LDKCResult_HolderCommitmentTransactionDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return HolderCommitmentTransaction_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_HolderCommitmentTransactionDecodeErrorZ* owner_conv = (LDKCResult_HolderCommitmentTransactionDecodeErrorZ*)(owner & ~1); + LDKHolderCommitmentTransaction ret_var = CResult_HolderCommitmentTransactionDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -static inline LDKCVec_SpendableOutputDescriptorZ CVec_SpendableOutputDescriptorZ_clone(const LDKCVec_SpendableOutputDescriptorZ *orig) { - LDKCVec_SpendableOutputDescriptorZ ret = { .data = MALLOC(sizeof(LDKSpendableOutputDescriptor) * orig->datalen, "LDKCVec_SpendableOutputDescriptorZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = SpendableOutputDescriptor_clone(&orig->data[i]); + +static inline struct LDKDecodeError CResult_HolderCommitmentTransactionDecodeErrorZ_get_err(LDKCResult_HolderCommitmentTransactionDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_HolderCommitmentTransactionDecodeErrorZ* owner_conv = (LDKCResult_HolderCommitmentTransactionDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_HolderCommitmentTransactionDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKPaymentPurpose_ref_from_ptr(uint32_t ptr) { - LDKPaymentPurpose *obj = (LDKPaymentPurpose*)(ptr & ~1); - switch(obj->tag) { - case LDKPaymentPurpose_InvoicePayment: { - int8_tArray payment_preimage_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_preimage_arr + 4), obj->invoice_payment.payment_preimage.data, 32); - int8_tArray payment_secret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_secret_arr + 4), obj->invoice_payment.payment_secret.data, 32); - return 0 /* LDKPaymentPurpose - InvoicePayment */; (void) payment_preimage_arr; (void) payment_secret_arr; - } - case LDKPaymentPurpose_SpontaneousPayment: { - int8_tArray spontaneous_payment_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(spontaneous_payment_arr + 4), obj->spontaneous_payment.data, 32); - return 0 /* LDKPaymentPurpose - SpontaneousPayment */; (void) spontaneous_payment_arr; - } - default: abort(); + +static inline struct LDKBuiltCommitmentTransaction CResult_BuiltCommitmentTransactionDecodeErrorZ_get_ok(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return BuiltCommitmentTransaction_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* owner_conv = (LDKCResult_BuiltCommitmentTransactionDecodeErrorZ*)(owner & ~1); + LDKBuiltCommitmentTransaction ret_var = CResult_BuiltCommitmentTransactionDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKEvent_ref_from_ptr(uint32_t ptr) { - LDKEvent *obj = (LDKEvent*)(ptr & ~1); - switch(obj->tag) { - case LDKEvent_FundingGenerationReady: { - int8_tArray temporary_channel_id_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(temporary_channel_id_arr + 4), obj->funding_generation_ready.temporary_channel_id.data, 32); - LDKCVec_u8Z output_script_var = obj->funding_generation_ready.output_script; - int8_tArray output_script_arr = init_arr(output_script_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(output_script_arr + 4), output_script_var.data, output_script_var.datalen); - return 0 /* LDKEvent - FundingGenerationReady */; (void) temporary_channel_id_arr; (void) obj->funding_generation_ready.channel_value_satoshis; (void) output_script_arr; (void) obj->funding_generation_ready.user_channel_id; - } - case LDKEvent_PaymentReceived: { - int8_tArray payment_hash_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_hash_arr + 4), obj->payment_received.payment_hash.data, 32); - uint64_t purpose_ref = ((uint64_t)&obj->payment_received.purpose) | 1; - return 0 /* LDKEvent - PaymentReceived */; (void) payment_hash_arr; (void) obj->payment_received.amt; (void) purpose_ref; - } - case LDKEvent_PaymentSent: { - int8_tArray payment_id_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_id_arr + 4), obj->payment_sent.payment_id.data, 32); - int8_tArray payment_preimage_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_preimage_arr + 4), obj->payment_sent.payment_preimage.data, 32); - int8_tArray payment_hash_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_hash_arr + 4), obj->payment_sent.payment_hash.data, 32); - uint64_t fee_paid_msat_ref = ((uint64_t)&obj->payment_sent.fee_paid_msat) | 1; - return 0 /* LDKEvent - PaymentSent */; (void) payment_id_arr; (void) payment_preimage_arr; (void) payment_hash_arr; (void) fee_paid_msat_ref; - } - case LDKEvent_PaymentPathFailed: { - int8_tArray payment_id_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_id_arr + 4), obj->payment_path_failed.payment_id.data, 32); - int8_tArray payment_hash_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_hash_arr + 4), obj->payment_path_failed.payment_hash.data, 32); - uint64_t network_update_ref = ((uint64_t)&obj->payment_path_failed.network_update) | 1; - LDKCVec_RouteHopZ path_var = obj->payment_path_failed.path; - uint32_tArray path_arr = NULL; - path_arr = init_arr(path_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *path_arr_ptr = (uint32_t*)(path_arr + 4); - for (size_t k = 0; k < path_var.datalen; k++) { - LDKRouteHop path_conv_10_var = path_var.data[k]; - uint64_t path_conv_10_ref = 0; - CHECK((((uint64_t)path_conv_10_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&path_conv_10_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_var); - path_conv_10_ref = (uint64_t)path_conv_10_var.inner & ~1; - path_arr_ptr[k] = path_conv_10_ref; - } - - uint64_t short_channel_id_ref = ((uint64_t)&obj->payment_path_failed.short_channel_id) | 1; - LDKRouteParameters retry_var = obj->payment_path_failed.retry; - uint64_t retry_ref = 0; - if ((uint64_t)retry_var.inner > 4096) { - CHECK((((uint64_t)retry_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&retry_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(retry_var); - retry_ref = (uint64_t)retry_var.inner & ~1; - } - return 0 /* LDKEvent - PaymentPathFailed */; (void) payment_id_arr; (void) payment_hash_arr; (void) obj->payment_path_failed.rejected_by_dest; (void) network_update_ref; (void) obj->payment_path_failed.all_paths_failed; (void) path_arr; (void) short_channel_id_ref; (void) retry_ref; - } - case LDKEvent_PaymentFailed: { - int8_tArray payment_id_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_id_arr + 4), obj->payment_failed.payment_id.data, 32); - int8_tArray payment_hash_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_hash_arr + 4), obj->payment_failed.payment_hash.data, 32); - return 0 /* LDKEvent - PaymentFailed */; (void) payment_id_arr; (void) payment_hash_arr; - } - case LDKEvent_PendingHTLCsForwardable: { - return 0 /* LDKEvent - PendingHTLCsForwardable */; (void) obj->pending_htl_cs_forwardable.time_forwardable; - } - case LDKEvent_SpendableOutputs: { - LDKCVec_SpendableOutputDescriptorZ outputs_var = obj->spendable_outputs.outputs; - uint32_tArray outputs_arr = NULL; - outputs_arr = init_arr(outputs_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *outputs_arr_ptr = (uint32_t*)(outputs_arr + 4); - for (size_t b = 0; b < outputs_var.datalen; b++) { - uint64_t outputs_conv_27_ref = ((uint64_t)&outputs_var.data[b]) | 1; - outputs_arr_ptr[b] = outputs_conv_27_ref; - } - - return 0 /* LDKEvent - SpendableOutputs */; (void) outputs_arr; - } - case LDKEvent_PaymentForwarded: { - uint64_t fee_earned_msat_ref = ((uint64_t)&obj->payment_forwarded.fee_earned_msat) | 1; - return 0 /* LDKEvent - PaymentForwarded */; (void) fee_earned_msat_ref; (void) obj->payment_forwarded.claim_from_onchain_tx; - } - case LDKEvent_ChannelClosed: { - int8_tArray channel_id_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(channel_id_arr + 4), obj->channel_closed.channel_id.data, 32); - uint64_t reason_ref = ((uint64_t)&obj->channel_closed.reason) | 1; - return 0 /* LDKEvent - ChannelClosed */; (void) channel_id_arr; (void) obj->channel_closed.user_channel_id; (void) reason_ref; - } - case LDKEvent_DiscardFunding: { - int8_tArray channel_id_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(channel_id_arr + 4), obj->discard_funding.channel_id.data, 32); - LDKTransaction transaction_var = obj->discard_funding.transaction; - int8_tArray transaction_arr = init_arr(transaction_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(transaction_arr + 4), transaction_var.data, transaction_var.datalen); - return 0 /* LDKEvent - DiscardFunding */; (void) channel_id_arr; (void) transaction_arr; - } - case LDKEvent_PaymentPathSuccessful: { - int8_tArray payment_id_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_id_arr + 4), obj->payment_path_successful.payment_id.data, 32); - int8_tArray payment_hash_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_hash_arr + 4), obj->payment_path_successful.payment_hash.data, 32); - LDKCVec_RouteHopZ path_var = obj->payment_path_successful.path; - uint32_tArray path_arr = NULL; - path_arr = init_arr(path_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *path_arr_ptr = (uint32_t*)(path_arr + 4); - for (size_t k = 0; k < path_var.datalen; k++) { - LDKRouteHop path_conv_10_var = path_var.data[k]; - uint64_t path_conv_10_ref = 0; - CHECK((((uint64_t)path_conv_10_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&path_conv_10_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_var); - path_conv_10_ref = (uint64_t)path_conv_10_var.inner & ~1; - path_arr_ptr[k] = path_conv_10_ref; - } - - return 0 /* LDKEvent - PaymentPathSuccessful */; (void) payment_id_arr; (void) payment_hash_arr; (void) path_arr; - } - default: abort(); + +static inline struct LDKDecodeError CResult_BuiltCommitmentTransactionDecodeErrorZ_get_err(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* owner_conv = (LDKCResult_BuiltCommitmentTransactionDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_BuiltCommitmentTransactionDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCOption_EventZ_ref_from_ptr(uint32_t ptr) { - LDKCOption_EventZ *obj = (LDKCOption_EventZ*)(ptr & ~1); - switch(obj->tag) { - case LDKCOption_EventZ_Some: { - uint64_t some_ref = ((uint64_t)&obj->some) | 1; - return 0 /* LDKCOption_EventZ - Some */; (void) some_ref; - } - case LDKCOption_EventZ_None: { - return 0 /* LDKCOption_EventZ - None */; - } - default: abort(); + +static inline struct LDKTrustedClosingTransaction *CResult_TrustedClosingTransactionNoneZ_get_ok(LDKCResult_TrustedClosingTransactionNoneZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return &*owner->contents.result; +} +uint32_t __attribute__((visibility("default"))) TS_CResult_TrustedClosingTransactionNoneZ_get_ok(uint32_t owner) { + LDKCResult_TrustedClosingTransactionNoneZ* owner_conv = (LDKCResult_TrustedClosingTransactionNoneZ*)(owner & ~1); + LDKTrustedClosingTransaction ret_var = *CResult_TrustedClosingTransactionNoneZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner & ~1; + return ret_ref; +} + +static inline void CResult_TrustedClosingTransactionNoneZ_get_err(LDKCResult_TrustedClosingTransactionNoneZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; +} +void __attribute__((visibility("default"))) TS_CResult_TrustedClosingTransactionNoneZ_get_err(uint32_t owner) { + LDKCResult_TrustedClosingTransactionNoneZ* owner_conv = (LDKCResult_TrustedClosingTransactionNoneZ*)(owner & ~1); + CResult_TrustedClosingTransactionNoneZ_get_err(owner_conv); +} + +static inline struct LDKCommitmentTransaction CResult_CommitmentTransactionDecodeErrorZ_get_ok(LDKCResult_CommitmentTransactionDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return CommitmentTransaction_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_CommitmentTransactionDecodeErrorZ* owner_conv = (LDKCResult_CommitmentTransactionDecodeErrorZ*)(owner & ~1); + LDKCommitmentTransaction ret_var = CResult_CommitmentTransactionDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_COption_EventZDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_COption_EventZDecodeErrorZ *val = (LDKCResult_COption_EventZDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - uint64_t res_ref = ((uint64_t)&(*val->contents.result)) | 1; - return res_ref; + +static inline struct LDKDecodeError CResult_CommitmentTransactionDecodeErrorZ_get_err(LDKCResult_CommitmentTransactionDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_COption_EventZDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_COption_EventZDecodeErrorZ *val = (LDKCResult_COption_EventZDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_CommitmentTransactionDecodeErrorZ* owner_conv = (LDKCResult_CommitmentTransactionDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_CommitmentTransactionDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKErrorAction_ref_from_ptr(uint32_t ptr) { - LDKErrorAction *obj = (LDKErrorAction*)(ptr & ~1); - switch(obj->tag) { - case LDKErrorAction_DisconnectPeer: { - LDKErrorMessage msg_var = obj->disconnect_peer.msg; - uint64_t msg_ref = 0; - if ((uint64_t)msg_var.inner > 4096) { - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - } - return 0 /* LDKErrorAction - DisconnectPeer */; (void) msg_ref; - } - case LDKErrorAction_IgnoreError: { - return 0 /* LDKErrorAction - IgnoreError */; - } - case LDKErrorAction_IgnoreAndLog: { - uint32_t ignore_and_log_conv = LDKLevel_to_js(obj->ignore_and_log); - return 0 /* LDKErrorAction - IgnoreAndLog */; (void) ignore_and_log_conv; - } - case LDKErrorAction_IgnoreDuplicateGossip: { - return 0 /* LDKErrorAction - IgnoreDuplicateGossip */; - } - case LDKErrorAction_SendErrorMessage: { - LDKErrorMessage msg_var = obj->send_error_message.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKErrorAction - SendErrorMessage */; (void) msg_ref; - } - default: abort(); + +static inline struct LDKTrustedCommitmentTransaction *CResult_TrustedCommitmentTransactionNoneZ_get_ok(LDKCResult_TrustedCommitmentTransactionNoneZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return &*owner->contents.result; +} +uint32_t __attribute__((visibility("default"))) TS_CResult_TrustedCommitmentTransactionNoneZ_get_ok(uint32_t owner) { + LDKCResult_TrustedCommitmentTransactionNoneZ* owner_conv = (LDKCResult_TrustedCommitmentTransactionNoneZ*)(owner & ~1); + LDKTrustedCommitmentTransaction ret_var = *CResult_TrustedCommitmentTransactionNoneZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner & ~1; + return ret_ref; +} + +static inline void CResult_TrustedCommitmentTransactionNoneZ_get_err(LDKCResult_TrustedCommitmentTransactionNoneZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; +} +void __attribute__((visibility("default"))) TS_CResult_TrustedCommitmentTransactionNoneZ_get_err(uint32_t owner) { + LDKCResult_TrustedCommitmentTransactionNoneZ* owner_conv = (LDKCResult_TrustedCommitmentTransactionNoneZ*)(owner & ~1); + CResult_TrustedCommitmentTransactionNoneZ_get_err(owner_conv); +} + +static inline struct LDKCVec_SignatureZ CResult_CVec_SignatureZNoneZ_get_ok(LDKCResult_CVec_SignatureZNoneZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; +} +ptrArray __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_get_ok(uint32_t owner) { + LDKCResult_CVec_SignatureZNoneZ* owner_conv = (LDKCResult_CVec_SignatureZNoneZ*)(owner & ~1); + LDKCVec_SignatureZ ret_var = CResult_CVec_SignatureZNoneZ_get_ok(owner_conv); + ptrArray ret_arr = NULL; + ret_arr = init_ptrArray(ret_var.datalen); + int8_tArray *ret_arr_ptr = (int8_tArray*)(ret_arr + 4); + for (size_t m = 0; m < ret_var.datalen; m++) { + int8_tArray ret_conv_12_arr = init_int8_tArray(64); + memcpy(ret_conv_12_arr->elems, ret_var.data[m].compact_form, 64); + ret_arr_ptr[m] = ret_conv_12_arr; } + + FREE(ret_var.data); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_LDKMessageSendEvent_ref_from_ptr(uint32_t ptr) { - LDKMessageSendEvent *obj = (LDKMessageSendEvent*)(ptr & ~1); - switch(obj->tag) { - case LDKMessageSendEvent_SendAcceptChannel: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_accept_channel.node_id.compressed_form, 33); - LDKAcceptChannel msg_var = obj->send_accept_channel.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendAcceptChannel */; (void) node_id_arr; (void) msg_ref; - } - case LDKMessageSendEvent_SendOpenChannel: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_open_channel.node_id.compressed_form, 33); - LDKOpenChannel msg_var = obj->send_open_channel.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendOpenChannel */; (void) node_id_arr; (void) msg_ref; - } - case LDKMessageSendEvent_SendFundingCreated: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_funding_created.node_id.compressed_form, 33); - LDKFundingCreated msg_var = obj->send_funding_created.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendFundingCreated */; (void) node_id_arr; (void) msg_ref; - } - case LDKMessageSendEvent_SendFundingSigned: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_funding_signed.node_id.compressed_form, 33); - LDKFundingSigned msg_var = obj->send_funding_signed.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendFundingSigned */; (void) node_id_arr; (void) msg_ref; - } - case LDKMessageSendEvent_SendFundingLocked: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_funding_locked.node_id.compressed_form, 33); - LDKFundingLocked msg_var = obj->send_funding_locked.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendFundingLocked */; (void) node_id_arr; (void) msg_ref; - } - case LDKMessageSendEvent_SendAnnouncementSignatures: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_announcement_signatures.node_id.compressed_form, 33); - LDKAnnouncementSignatures msg_var = obj->send_announcement_signatures.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendAnnouncementSignatures */; (void) node_id_arr; (void) msg_ref; - } - case LDKMessageSendEvent_UpdateHTLCs: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->update_htl_cs.node_id.compressed_form, 33); - LDKCommitmentUpdate updates_var = obj->update_htl_cs.updates; - uint64_t updates_ref = 0; - CHECK((((uint64_t)updates_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&updates_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(updates_var); - updates_ref = (uint64_t)updates_var.inner & ~1; - return 0 /* LDKMessageSendEvent - UpdateHTLCs */; (void) node_id_arr; (void) updates_ref; - } - case LDKMessageSendEvent_SendRevokeAndACK: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_revoke_and_ack.node_id.compressed_form, 33); - LDKRevokeAndACK msg_var = obj->send_revoke_and_ack.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendRevokeAndACK */; (void) node_id_arr; (void) msg_ref; - } - case LDKMessageSendEvent_SendClosingSigned: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_closing_signed.node_id.compressed_form, 33); - LDKClosingSigned msg_var = obj->send_closing_signed.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendClosingSigned */; (void) node_id_arr; (void) msg_ref; - } - case LDKMessageSendEvent_SendShutdown: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_shutdown.node_id.compressed_form, 33); - LDKShutdown msg_var = obj->send_shutdown.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendShutdown */; (void) node_id_arr; (void) msg_ref; - } - case LDKMessageSendEvent_SendChannelReestablish: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_channel_reestablish.node_id.compressed_form, 33); - LDKChannelReestablish msg_var = obj->send_channel_reestablish.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendChannelReestablish */; (void) node_id_arr; (void) msg_ref; - } - case LDKMessageSendEvent_BroadcastChannelAnnouncement: { - LDKChannelAnnouncement msg_var = obj->broadcast_channel_announcement.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - LDKChannelUpdate update_msg_var = obj->broadcast_channel_announcement.update_msg; - uint64_t update_msg_ref = 0; - CHECK((((uint64_t)update_msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&update_msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_msg_var); - update_msg_ref = (uint64_t)update_msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - BroadcastChannelAnnouncement */; (void) msg_ref; (void) update_msg_ref; - } - case LDKMessageSendEvent_BroadcastNodeAnnouncement: { - LDKNodeAnnouncement msg_var = obj->broadcast_node_announcement.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - BroadcastNodeAnnouncement */; (void) msg_ref; - } - case LDKMessageSendEvent_BroadcastChannelUpdate: { - LDKChannelUpdate msg_var = obj->broadcast_channel_update.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - BroadcastChannelUpdate */; (void) msg_ref; - } - case LDKMessageSendEvent_SendChannelUpdate: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_channel_update.node_id.compressed_form, 33); - LDKChannelUpdate msg_var = obj->send_channel_update.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendChannelUpdate */; (void) node_id_arr; (void) msg_ref; - } - case LDKMessageSendEvent_HandleError: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->handle_error.node_id.compressed_form, 33); - uint64_t action_ref = ((uint64_t)&obj->handle_error.action) | 1; - return 0 /* LDKMessageSendEvent - HandleError */; (void) node_id_arr; (void) action_ref; - } - case LDKMessageSendEvent_SendChannelRangeQuery: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_channel_range_query.node_id.compressed_form, 33); - LDKQueryChannelRange msg_var = obj->send_channel_range_query.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendChannelRangeQuery */; (void) node_id_arr; (void) msg_ref; - } - case LDKMessageSendEvent_SendShortIdsQuery: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_short_ids_query.node_id.compressed_form, 33); - LDKQueryShortChannelIds msg_var = obj->send_short_ids_query.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendShortIdsQuery */; (void) node_id_arr; (void) msg_ref; - } - case LDKMessageSendEvent_SendReplyChannelRange: { - int8_tArray node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(node_id_arr + 4), obj->send_reply_channel_range.node_id.compressed_form, 33); - LDKReplyChannelRange msg_var = obj->send_reply_channel_range.msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner & ~1; - return 0 /* LDKMessageSendEvent - SendReplyChannelRange */; (void) node_id_arr; (void) msg_ref; - } - default: abort(); - } + +static inline void CResult_CVec_SignatureZNoneZ_get_err(LDKCResult_CVec_SignatureZNoneZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; } -static inline LDKCVec_MessageSendEventZ CVec_MessageSendEventZ_clone(const LDKCVec_MessageSendEventZ *orig) { - LDKCVec_MessageSendEventZ ret = { .data = MALLOC(sizeof(LDKMessageSendEvent) * orig->datalen, "LDKCVec_MessageSendEventZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = MessageSendEvent_clone(&orig->data[i]); +void __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_get_err(uint32_t owner) { + LDKCResult_CVec_SignatureZNoneZ* owner_conv = (LDKCResult_CVec_SignatureZNoneZ*)(owner & ~1); + CResult_CVec_SignatureZNoneZ_get_err(owner_conv); +} + +static inline struct LDKShutdownScript CResult_ShutdownScriptDecodeErrorZ_get_ok(LDKCResult_ShutdownScriptDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ShutdownScript_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ShutdownScriptDecodeErrorZ* owner_conv = (LDKCResult_ShutdownScriptDecodeErrorZ*)(owner & ~1); + LDKShutdownScript ret_var = CResult_ShutdownScriptDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ScoringParametersDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ScoringParametersDecodeErrorZ *val = (LDKCResult_ScoringParametersDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKScoringParameters res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ScoringParametersDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ScoringParametersDecodeErrorZ *val = (LDKCResult_ScoringParametersDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ScorerDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ScorerDecodeErrorZ *val = (LDKCResult_ScorerDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKScorer res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ScorerDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ScorerDecodeErrorZ *val = (LDKCResult_ScorerDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_InitFeaturesDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_InitFeaturesDecodeErrorZ *val = (LDKCResult_InitFeaturesDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKInitFeatures res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_InitFeaturesDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_InitFeaturesDecodeErrorZ *val = (LDKCResult_InitFeaturesDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelFeaturesDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ChannelFeaturesDecodeErrorZ *val = (LDKCResult_ChannelFeaturesDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKChannelFeatures res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelFeaturesDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ChannelFeaturesDecodeErrorZ *val = (LDKCResult_ChannelFeaturesDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NodeFeaturesDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_NodeFeaturesDecodeErrorZ *val = (LDKCResult_NodeFeaturesDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKNodeFeatures res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NodeFeaturesDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_NodeFeaturesDecodeErrorZ *val = (LDKCResult_NodeFeaturesDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_InvoiceFeaturesDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_InvoiceFeaturesDecodeErrorZ *val = (LDKCResult_InvoiceFeaturesDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKInvoiceFeatures res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_InvoiceFeaturesDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_InvoiceFeaturesDecodeErrorZ *val = (LDKCResult_InvoiceFeaturesDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelTypeFeaturesDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ChannelTypeFeaturesDecodeErrorZ *val = (LDKCResult_ChannelTypeFeaturesDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKChannelTypeFeatures res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelTypeFeaturesDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ChannelTypeFeaturesDecodeErrorZ *val = (LDKCResult_ChannelTypeFeaturesDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ *val = (LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKDelayedPaymentOutputDescriptor res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ *val = (LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ *val = (LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKStaticPaymentOutputDescriptor res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ *val = (LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_SpendableOutputDescriptorDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_SpendableOutputDescriptorDecodeErrorZ *val = (LDKCResult_SpendableOutputDescriptorDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - uint64_t res_ref = ((uint64_t)&(*val->contents.result)) | 1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_SpendableOutputDescriptorDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_SpendableOutputDescriptorDecodeErrorZ *val = (LDKCResult_SpendableOutputDescriptorDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -void __attribute__((visibility("default"))) TS_LDKCResult_NoneNoneZ_get_ok(uint32_t arg) { - LDKCResult_NoneNoneZ *val = (LDKCResult_NoneNoneZ*)(arg & ~1); - CHECK(val->result_ok); - return *val->contents.result; -} -void __attribute__((visibility("default"))) TS_LDKCResult_NoneNoneZ_get_err(uint32_t arg) { - LDKCResult_NoneNoneZ *val = (LDKCResult_NoneNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; -} -static inline struct LDKSignature C2Tuple_SignatureCVec_SignatureZZ_get_a(LDKC2Tuple_SignatureCVec_SignatureZZ *NONNULL_PTR tuple){ - return tuple->a; -} -int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_SignatureCVec_SignatureZZ_get_a(uint32_t tuple) { - LDKC2Tuple_SignatureCVec_SignatureZZ* tuple_conv = (LDKC2Tuple_SignatureCVec_SignatureZZ*)(tuple & ~1); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), C2Tuple_SignatureCVec_SignatureZZ_get_a(tuple_conv).compact_form, 64); - return ret_arr; -} - -static inline struct LDKCVec_SignatureZ C2Tuple_SignatureCVec_SignatureZZ_get_b(LDKC2Tuple_SignatureCVec_SignatureZZ *NONNULL_PTR tuple){ - return tuple->b; -} -ptrArray __attribute__((visibility("default"))) TS_C2Tuple_SignatureCVec_SignatureZZ_get_b(uint32_t tuple) { - LDKC2Tuple_SignatureCVec_SignatureZZ* tuple_conv = (LDKC2Tuple_SignatureCVec_SignatureZZ*)(tuple & ~1); - LDKCVec_SignatureZ ret_var = C2Tuple_SignatureCVec_SignatureZZ_get_b(tuple_conv); - ptrArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native ptrArray Bytes"); - int8_tArray *ret_arr_ptr = (int8_tArray*)(ret_arr + 4); - for (size_t m = 0; m < ret_var.datalen; m++) { - int8_tArray ret_conv_12_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_conv_12_arr + 4), ret_var.data[m].compact_form, 64); - ret_arr_ptr[m] = ret_conv_12_arr; + +static inline struct LDKDecodeError CResult_ShutdownScriptDecodeErrorZ_get_err(LDKCResult_ShutdownScriptDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ShutdownScriptDecodeErrorZ* owner_conv = (LDKCResult_ShutdownScriptDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ShutdownScriptDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - - FREE(ret_var.data); - return ret_arr; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_ok(uint32_t arg) { - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ *val = (LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(arg & ~1); - CHECK(val->result_ok); - LDKC2Tuple_SignatureCVec_SignatureZZ* res_conv = MALLOC(sizeof(LDKC2Tuple_SignatureCVec_SignatureZZ), "LDKC2Tuple_SignatureCVec_SignatureZZ"); - *res_conv = (*val->contents.result); - *res_conv = C2Tuple_SignatureCVec_SignatureZZ_clone(res_conv); - return ((uint64_t)res_conv); +static inline struct LDKShutdownScript CResult_ShutdownScriptInvalidShutdownScriptZ_get_ok(LDKCResult_ShutdownScriptInvalidShutdownScriptZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ShutdownScript_clone(&*owner->contents.result); } -void __attribute__((visibility("default"))) TS_LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_err(uint32_t arg) { - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ *val = (LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_get_ok(uint32_t owner) { + LDKCResult_ShutdownScriptInvalidShutdownScriptZ* owner_conv = (LDKCResult_ShutdownScriptInvalidShutdownScriptZ*)(owner & ~1); + LDKShutdownScript ret_var = CResult_ShutdownScriptInvalidShutdownScriptZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_LDKCResult_SignatureNoneZ_get_ok(uint32_t arg) { - LDKCResult_SignatureNoneZ *val = (LDKCResult_SignatureNoneZ*)(arg & ~1); - CHECK(val->result_ok); - int8_tArray res_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(res_arr + 4), (*val->contents.result).compact_form, 64); - return res_arr; + +static inline struct LDKInvalidShutdownScript CResult_ShutdownScriptInvalidShutdownScriptZ_get_err(LDKCResult_ShutdownScriptInvalidShutdownScriptZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return InvalidShutdownScript_clone(&*owner->contents.err); } -void __attribute__((visibility("default"))) TS_LDKCResult_SignatureNoneZ_get_err(uint32_t arg) { - LDKCResult_SignatureNoneZ *val = (LDKCResult_SignatureNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_get_err(uint32_t owner) { + LDKCResult_ShutdownScriptInvalidShutdownScriptZ* owner_conv = (LDKCResult_ShutdownScriptInvalidShutdownScriptZ*)(owner & ~1); + LDKInvalidShutdownScript ret_var = CResult_ShutdownScriptInvalidShutdownScriptZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -typedef struct LDKBaseSign_JCalls { + +typedef struct LDKType_JCalls { atomic_size_t refcnt; - uint32_t get_per_commitment_point_meth; - uint32_t release_commitment_secret_meth; - uint32_t validate_holder_commitment_meth; - uint32_t channel_keys_id_meth; - uint32_t sign_counterparty_commitment_meth; - uint32_t validate_counterparty_revocation_meth; - uint32_t sign_holder_commitment_and_htlcs_meth; - uint32_t sign_justice_revoked_output_meth; - uint32_t sign_justice_revoked_htlc_meth; - uint32_t sign_counterparty_htlc_transaction_meth; - uint32_t sign_closing_transaction_meth; - uint32_t sign_channel_announcement_meth; - uint32_t ready_channel_meth; -} LDKBaseSign_JCalls; -static void LDKBaseSign_JCalls_free(void* this_arg) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + uint32_t type_id_meth; + uint32_t debug_str_meth; + uint32_t write_meth; +} LDKType_JCalls; +static void LDKType_JCalls_free(void* this_arg) { + LDKType_JCalls *j_calls = (LDKType_JCalls*) this_arg; if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->get_per_commitment_point_meth); - js_free(j_calls->release_commitment_secret_meth); - js_free(j_calls->validate_holder_commitment_meth); - js_free(j_calls->channel_keys_id_meth); - js_free(j_calls->sign_counterparty_commitment_meth); - js_free(j_calls->validate_counterparty_revocation_meth); - js_free(j_calls->sign_holder_commitment_and_htlcs_meth); - js_free(j_calls->sign_justice_revoked_output_meth); - js_free(j_calls->sign_justice_revoked_htlc_meth); - js_free(j_calls->sign_counterparty_htlc_transaction_meth); - js_free(j_calls->sign_closing_transaction_meth); - js_free(j_calls->sign_channel_announcement_meth); - js_free(j_calls->ready_channel_meth); + js_free_function_ptr(j_calls->type_id_meth); + js_free_function_ptr(j_calls->debug_str_meth); + js_free_function_ptr(j_calls->write_meth); FREE(j_calls); } } -LDKPublicKey get_per_commitment_point_LDKBaseSign_jcall(const void* this_arg, uint64_t idx) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; - int8_tArray ret = js_invoke_function_1(j_calls->get_per_commitment_point_meth, idx); - LDKPublicKey ret_ref; - CHECK(*((uint32_t*)ret) == 33); - memcpy(ret_ref.compressed_form, (uint8_t*)(ret + 4), 33); - return ret_ref; -} -LDKThirtyTwoBytes release_commitment_secret_LDKBaseSign_jcall(const void* this_arg, uint64_t idx) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; - int8_tArray ret = js_invoke_function_1(j_calls->release_commitment_secret_meth, idx); - LDKThirtyTwoBytes ret_ref; - CHECK(*((uint32_t*)ret) == 32); - memcpy(ret_ref.data, (uint8_t*)(ret + 4), 32); - return ret_ref; +uint16_t type_id_LDKType_jcall(const void* this_arg) { + LDKType_JCalls *j_calls = (LDKType_JCalls*) this_arg; + return js_invoke_function_0(j_calls->type_id_meth); } -LDKCResult_NoneNoneZ validate_holder_commitment_LDKBaseSign_jcall(const void* this_arg, const LDKHolderCommitmentTransaction * holder_tx) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; - LDKHolderCommitmentTransaction holder_tx_var = *holder_tx; - uint64_t holder_tx_ref = 0; - holder_tx_var = HolderCommitmentTransaction_clone(holder_tx); - CHECK((((uint64_t)holder_tx_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&holder_tx_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(holder_tx_var); - holder_tx_ref = (uint64_t)holder_tx_var.inner; - if (holder_tx_var.is_owned) { - holder_tx_ref |= 1; - } - uint32_t ret = js_invoke_function_1(j_calls->validate_holder_commitment_meth, holder_tx_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_NoneNoneZ ret_conv = *(LDKCResult_NoneNoneZ*)(ret_ptr); - FREE((void*)ret); +LDKStr debug_str_LDKType_jcall(const void* this_arg) { + LDKType_JCalls *j_calls = (LDKType_JCalls*) this_arg; + jstring ret = (jstring)js_invoke_function_0(j_calls->debug_str_meth); + LDKStr ret_conv = str_ref_to_owned_c(ret); return ret_conv; } -LDKThirtyTwoBytes channel_keys_id_LDKBaseSign_jcall(const void* this_arg) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; - int8_tArray ret = js_invoke_function_0(j_calls->channel_keys_id_meth); - LDKThirtyTwoBytes ret_ref; - CHECK(*((uint32_t*)ret) == 32); - memcpy(ret_ref.data, (uint8_t*)(ret + 4), 32); +LDKCVec_u8Z write_LDKType_jcall(const void* this_arg) { + LDKType_JCalls *j_calls = (LDKType_JCalls*) this_arg; + int8_tArray ret = (int8_tArray)js_invoke_function_0(j_calls->write_meth); + LDKCVec_u8Z ret_ref; + ret_ref.datalen = ret->arr_len; + ret_ref.data = MALLOC(ret_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(ret_ref.data, ret->elems, ret_ref.datalen); return ret_ref; } -LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ sign_counterparty_commitment_LDKBaseSign_jcall(const void* this_arg, const LDKCommitmentTransaction * commitment_tx) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; - LDKCommitmentTransaction commitment_tx_var = *commitment_tx; - uint64_t commitment_tx_ref = 0; - commitment_tx_var = CommitmentTransaction_clone(commitment_tx); - CHECK((((uint64_t)commitment_tx_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&commitment_tx_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_var); - commitment_tx_ref = (uint64_t)commitment_tx_var.inner; - if (commitment_tx_var.is_owned) { - commitment_tx_ref |= 1; - } - uint32_t ret = js_invoke_function_1(j_calls->sign_counterparty_commitment_meth, commitment_tx_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ ret_conv = *(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; +static void LDKType_JCalls_cloned(LDKType* new_obj) { + LDKType_JCalls *j_calls = (LDKType_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } -LDKCResult_NoneNoneZ validate_counterparty_revocation_LDKBaseSign_jcall(const void* this_arg, uint64_t idx, const uint8_t (* secret)[32]) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; - int8_tArray secret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(secret_arr + 4), *secret, 32); - uint32_t ret = js_invoke_function_2(j_calls->validate_counterparty_revocation_meth, idx, secret_arr); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_NoneNoneZ ret_conv = *(LDKCResult_NoneNoneZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; +static inline LDKType LDKType_init (/*TODO: JS Object Reference */void* o) { + LDKType_JCalls *calls = MALLOC(sizeof(LDKType_JCalls), "LDKType_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o + + LDKType ret = { + .this_arg = (void*) calls, + .type_id = type_id_LDKType_jcall, + .debug_str = debug_str_LDKType_jcall, + .write = write_LDKType_jcall, + .cloned = LDKType_JCalls_cloned, + .free = LDKType_JCalls_free, + }; + return ret; } -LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ sign_holder_commitment_and_htlcs_LDKBaseSign_jcall(const void* this_arg, const LDKHolderCommitmentTransaction * commitment_tx) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; - LDKHolderCommitmentTransaction commitment_tx_var = *commitment_tx; - uint64_t commitment_tx_ref = 0; - commitment_tx_var = HolderCommitmentTransaction_clone(commitment_tx); - CHECK((((uint64_t)commitment_tx_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&commitment_tx_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_var); - commitment_tx_ref = (uint64_t)commitment_tx_var.inner; - if (commitment_tx_var.is_owned) { - commitment_tx_ref |= 1; - } - uint32_t ret = js_invoke_function_1(j_calls->sign_holder_commitment_and_htlcs_meth, commitment_tx_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ ret_conv = *(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; +long __attribute__((visibility("default"))) TS_LDKType_new(/*TODO: JS Object Reference */void* o) { + LDKType *res_ptr = MALLOC(sizeof(LDKType), "LDKType"); + *res_ptr = LDKType_init(o); + return (long)res_ptr; } -LDKCResult_SignatureNoneZ sign_justice_revoked_output_LDKBaseSign_jcall(const void* this_arg, LDKTransaction justice_tx, uintptr_t input, uint64_t amount, const uint8_t (* per_commitment_key)[32]) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; - LDKTransaction justice_tx_var = justice_tx; - int8_tArray justice_tx_arr = init_arr(justice_tx_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(justice_tx_arr + 4), justice_tx_var.data, justice_tx_var.datalen); - Transaction_free(justice_tx_var); - int8_tArray per_commitment_key_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(per_commitment_key_arr + 4), *per_commitment_key, 32); - uint32_t ret = js_invoke_function_4(j_calls->sign_justice_revoked_output_meth, justice_tx_arr, input, amount, per_commitment_key_arr); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_SignatureNoneZ ret_conv = *(LDKCResult_SignatureNoneZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; -} -LDKCResult_SignatureNoneZ sign_justice_revoked_htlc_LDKBaseSign_jcall(const void* this_arg, LDKTransaction justice_tx, uintptr_t input, uint64_t amount, const uint8_t (* per_commitment_key)[32], const LDKHTLCOutputInCommitment * htlc) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; - LDKTransaction justice_tx_var = justice_tx; - int8_tArray justice_tx_arr = init_arr(justice_tx_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(justice_tx_arr + 4), justice_tx_var.data, justice_tx_var.datalen); - Transaction_free(justice_tx_var); - int8_tArray per_commitment_key_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(per_commitment_key_arr + 4), *per_commitment_key, 32); - LDKHTLCOutputInCommitment htlc_var = *htlc; - uint64_t htlc_ref = 0; - htlc_var = HTLCOutputInCommitment_clone(htlc); - CHECK((((uint64_t)htlc_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&htlc_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_var); - htlc_ref = (uint64_t)htlc_var.inner; - if (htlc_var.is_owned) { - htlc_ref |= 1; - } - uint32_t ret = js_invoke_function_5(j_calls->sign_justice_revoked_htlc_meth, justice_tx_arr, input, amount, per_commitment_key_arr, htlc_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_SignatureNoneZ ret_conv = *(LDKCResult_SignatureNoneZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; -} -LDKCResult_SignatureNoneZ sign_counterparty_htlc_transaction_LDKBaseSign_jcall(const void* this_arg, LDKTransaction htlc_tx, uintptr_t input, uint64_t amount, LDKPublicKey per_commitment_point, const LDKHTLCOutputInCommitment * htlc) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; - LDKTransaction htlc_tx_var = htlc_tx; - int8_tArray htlc_tx_arr = init_arr(htlc_tx_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(htlc_tx_arr + 4), htlc_tx_var.data, htlc_tx_var.datalen); - Transaction_free(htlc_tx_var); - int8_tArray per_commitment_point_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(per_commitment_point_arr + 4), per_commitment_point.compressed_form, 33); - LDKHTLCOutputInCommitment htlc_var = *htlc; - uint64_t htlc_ref = 0; - htlc_var = HTLCOutputInCommitment_clone(htlc); - CHECK((((uint64_t)htlc_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&htlc_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_var); - htlc_ref = (uint64_t)htlc_var.inner; - if (htlc_var.is_owned) { - htlc_ref |= 1; - } - uint32_t ret = js_invoke_function_5(j_calls->sign_counterparty_htlc_transaction_meth, htlc_tx_arr, input, amount, per_commitment_point_arr, htlc_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_SignatureNoneZ ret_conv = *(LDKCResult_SignatureNoneZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; -} -LDKCResult_SignatureNoneZ sign_closing_transaction_LDKBaseSign_jcall(const void* this_arg, const LDKClosingTransaction * closing_tx) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; - LDKClosingTransaction closing_tx_var = *closing_tx; - uint64_t closing_tx_ref = 0; - closing_tx_var = ClosingTransaction_clone(closing_tx); - CHECK((((uint64_t)closing_tx_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&closing_tx_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(closing_tx_var); - closing_tx_ref = (uint64_t)closing_tx_var.inner; - if (closing_tx_var.is_owned) { - closing_tx_ref |= 1; - } - uint32_t ret = js_invoke_function_1(j_calls->sign_closing_transaction_meth, closing_tx_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_SignatureNoneZ ret_conv = *(LDKCResult_SignatureNoneZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; -} -LDKCResult_SignatureNoneZ sign_channel_announcement_LDKBaseSign_jcall(const void* this_arg, const LDKUnsignedChannelAnnouncement * msg) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; - LDKUnsignedChannelAnnouncement msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = UnsignedChannelAnnouncement_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - uint32_t ret = js_invoke_function_1(j_calls->sign_channel_announcement_meth, msg_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_SignatureNoneZ ret_conv = *(LDKCResult_SignatureNoneZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; -} -void ready_channel_LDKBaseSign_jcall(void* this_arg, const LDKChannelTransactionParameters * channel_parameters) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; - LDKChannelTransactionParameters channel_parameters_var = *channel_parameters; - uint64_t channel_parameters_ref = 0; - channel_parameters_var = ChannelTransactionParameters_clone(channel_parameters); - CHECK((((uint64_t)channel_parameters_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&channel_parameters_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_parameters_var); - channel_parameters_ref = (uint64_t)channel_parameters_var.inner; - if (channel_parameters_var.is_owned) { - channel_parameters_ref |= 1; - } - js_invoke_function_1(j_calls->ready_channel_meth, channel_parameters_ref); -} -static void LDKBaseSign_JCalls_cloned(LDKBaseSign* new_obj) { - LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); -} -static inline LDKBaseSign LDKBaseSign_init (/*TODO: JS Object Reference */void* o, uint32_t pubkeys) { - LDKBaseSign_JCalls *calls = MALLOC(sizeof(LDKBaseSign_JCalls), "LDKBaseSign_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - - LDKChannelPublicKeys pubkeys_conv; - pubkeys_conv.inner = (void*)(pubkeys & (~1)); - pubkeys_conv.is_owned = (pubkeys & 1) || (pubkeys == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(pubkeys_conv); - - LDKBaseSign ret = { - .this_arg = (void*) calls, - .get_per_commitment_point = get_per_commitment_point_LDKBaseSign_jcall, - .release_commitment_secret = release_commitment_secret_LDKBaseSign_jcall, - .validate_holder_commitment = validate_holder_commitment_LDKBaseSign_jcall, - .channel_keys_id = channel_keys_id_LDKBaseSign_jcall, - .sign_counterparty_commitment = sign_counterparty_commitment_LDKBaseSign_jcall, - .validate_counterparty_revocation = validate_counterparty_revocation_LDKBaseSign_jcall, - .sign_holder_commitment_and_htlcs = sign_holder_commitment_and_htlcs_LDKBaseSign_jcall, - .sign_justice_revoked_output = sign_justice_revoked_output_LDKBaseSign_jcall, - .sign_justice_revoked_htlc = sign_justice_revoked_htlc_LDKBaseSign_jcall, - .sign_counterparty_htlc_transaction = sign_counterparty_htlc_transaction_LDKBaseSign_jcall, - .sign_closing_transaction = sign_closing_transaction_LDKBaseSign_jcall, - .sign_channel_announcement = sign_channel_announcement_LDKBaseSign_jcall, - .ready_channel = ready_channel_LDKBaseSign_jcall, - .free = LDKBaseSign_JCalls_free, - .pubkeys = pubkeys_conv, - .set_pubkeys = NULL, - }; - return ret; -} -long __attribute__((visibility("default"))) TS_LDKBaseSign_new(/*TODO: JS Object Reference */void* o, uint32_t pubkeys) { - LDKBaseSign *res_ptr = MALLOC(sizeof(LDKBaseSign), "LDKBaseSign"); - *res_ptr = LDKBaseSign_init(o, pubkeys); - return (long)res_ptr; -} -int8_tArray __attribute__((visibility("default"))) TS_BaseSign_get_per_commitment_point(uint32_t this_arg, int64_t idx) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), (this_arg_conv->get_per_commitment_point)(this_arg_conv->this_arg, idx).compressed_form, 33); - return ret_arr; -} - -int8_tArray __attribute__((visibility("default"))) TS_BaseSign_release_commitment_secret(uint32_t this_arg, int64_t idx) { +int16_t __attribute__((visibility("default"))) TS_Type_type_id(uint32_t this_arg) { void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), (this_arg_conv->release_commitment_secret)(this_arg_conv->this_arg, idx).data, 32); - return ret_arr; + LDKType* this_arg_conv = (LDKType*)this_arg_ptr; + int16_t ret_val = (this_arg_conv->type_id)(this_arg_conv->this_arg); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_BaseSign_validate_holder_commitment(uint32_t this_arg, uint32_t holder_tx) { +jstring __attribute__((visibility("default"))) TS_Type_debug_str(uint32_t this_arg) { void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - LDKHolderCommitmentTransaction holder_tx_conv; - holder_tx_conv.inner = (void*)(holder_tx & (~1)); - holder_tx_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(holder_tx_conv); - LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); - *ret_conv = (this_arg_conv->validate_holder_commitment)(this_arg_conv->this_arg, &holder_tx_conv); - return (uint64_t)ret_conv; + LDKType* this_arg_conv = (LDKType*)this_arg_ptr; + LDKStr ret_str = (this_arg_conv->debug_str)(this_arg_conv->this_arg); + jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); + Str_free(ret_str); + return ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_BaseSign_channel_keys_id(uint32_t this_arg) { +int8_tArray __attribute__((visibility("default"))) TS_Type_write(uint32_t this_arg) { void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), (this_arg_conv->channel_keys_id)(this_arg_conv->this_arg).data, 32); + LDKType* this_arg_conv = (LDKType*)this_arg_ptr; + LDKCVec_u8Z ret_var = (this_arg_conv->write)(this_arg_conv->this_arg); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_counterparty_commitment(uint32_t this_arg, uint32_t commitment_tx) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - LDKCommitmentTransaction commitment_tx_conv; - commitment_tx_conv.inner = (void*)(commitment_tx & (~1)); - commitment_tx_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_conv); - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ), "LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ"); - *ret_conv = (this_arg_conv->sign_counterparty_commitment)(this_arg_conv->this_arg, &commitment_tx_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_LDKCOption_TypeZ_ref_from_ptr(uint32_t ptr) { + LDKCOption_TypeZ *obj = (LDKCOption_TypeZ*)(ptr & ~1); + switch(obj->tag) { + case LDKCOption_TypeZ_Some: { + LDKType* some_ret = MALLOC(sizeof(LDKType), "LDKType"); + *some_ret = Type_clone(&obj->some); + return 0 /* LDKCOption_TypeZ - Some */; (void) (uint64_t)some_ret; + } + case LDKCOption_TypeZ_None: { + return 0 /* LDKCOption_TypeZ - None */; + } + default: abort(); + } +} +static inline struct LDKCOption_TypeZ CResult_COption_TypeZDecodeErrorZ_get_ok(LDKCResult_COption_TypeZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return COption_TypeZ_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_COption_TypeZDecodeErrorZ* owner_conv = (LDKCResult_COption_TypeZDecodeErrorZ*)(owner & ~1); + LDKCOption_TypeZ *ret_copy = MALLOC(sizeof(LDKCOption_TypeZ), "LDKCOption_TypeZ"); + *ret_copy = CResult_COption_TypeZDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_BaseSign_validate_counterparty_revocation(uint32_t this_arg, int64_t idx, int8_tArray secret) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - unsigned char secret_arr[32]; - CHECK(*((uint32_t*)secret) == 32); - memcpy(secret_arr, (uint8_t*)(secret + 4), 32); - unsigned char (*secret_ref)[32] = &secret_arr; - LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); - *ret_conv = (this_arg_conv->validate_counterparty_revocation)(this_arg_conv->this_arg, idx, secret_ref); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_COption_TypeZDecodeErrorZ_get_err(LDKCResult_COption_TypeZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_COption_TypeZDecodeErrorZ* owner_conv = (LDKCResult_COption_TypeZDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_COption_TypeZDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_holder_commitment_and_htlcs(uint32_t this_arg, uint32_t commitment_tx) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - LDKHolderCommitmentTransaction commitment_tx_conv; - commitment_tx_conv.inner = (void*)(commitment_tx & (~1)); - commitment_tx_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_conv); - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ), "LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ"); - *ret_conv = (this_arg_conv->sign_holder_commitment_and_htlcs)(this_arg_conv->this_arg, &commitment_tx_conv); - return (uint64_t)ret_conv; +static inline struct LDKStr CResult_StringErrorZ_get_ok(LDKCResult_StringErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; +} +jstring __attribute__((visibility("default"))) TS_CResult_StringErrorZ_get_ok(uint32_t owner) { + LDKCResult_StringErrorZ* owner_conv = (LDKCResult_StringErrorZ*)(owner & ~1); + LDKStr ret_str = CResult_StringErrorZ_get_ok(owner_conv); + jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); + Str_free(ret_str); + return ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_justice_revoked_output(uint32_t this_arg, int8_tArray justice_tx, int64_t input, int64_t amount, int8_tArray per_commitment_key) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - LDKTransaction justice_tx_ref; - justice_tx_ref.datalen = *((uint32_t*)justice_tx); - justice_tx_ref.data = MALLOC(justice_tx_ref.datalen, "LDKTransaction Bytes"); - memcpy(justice_tx_ref.data, (uint8_t*)(justice_tx + 4), justice_tx_ref.datalen); - justice_tx_ref.data_is_owned = true; - unsigned char per_commitment_key_arr[32]; - CHECK(*((uint32_t*)per_commitment_key) == 32); - memcpy(per_commitment_key_arr, (uint8_t*)(per_commitment_key + 4), 32); - unsigned char (*per_commitment_key_ref)[32] = &per_commitment_key_arr; - LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); - *ret_conv = (this_arg_conv->sign_justice_revoked_output)(this_arg_conv->this_arg, justice_tx_ref, input, amount, per_commitment_key_ref); - return (uint64_t)ret_conv; +static inline enum LDKSecp256k1Error CResult_StringErrorZ_get_err(LDKCResult_StringErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; +} +uint32_t __attribute__((visibility("default"))) TS_CResult_StringErrorZ_get_err(uint32_t owner) { + LDKCResult_StringErrorZ* owner_conv = (LDKCResult_StringErrorZ*)(owner & ~1); + uint32_t ret_conv = LDKSecp256k1Error_to_js(CResult_StringErrorZ_get_err(owner_conv)); + return ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_justice_revoked_htlc(uint32_t this_arg, int8_tArray justice_tx, int64_t input, int64_t amount, int8_tArray per_commitment_key, uint32_t htlc) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - LDKTransaction justice_tx_ref; - justice_tx_ref.datalen = *((uint32_t*)justice_tx); - justice_tx_ref.data = MALLOC(justice_tx_ref.datalen, "LDKTransaction Bytes"); - memcpy(justice_tx_ref.data, (uint8_t*)(justice_tx + 4), justice_tx_ref.datalen); - justice_tx_ref.data_is_owned = true; - unsigned char per_commitment_key_arr[32]; - CHECK(*((uint32_t*)per_commitment_key) == 32); - memcpy(per_commitment_key_arr, (uint8_t*)(per_commitment_key + 4), 32); - unsigned char (*per_commitment_key_ref)[32] = &per_commitment_key_arr; - LDKHTLCOutputInCommitment htlc_conv; - htlc_conv.inner = (void*)(htlc & (~1)); - htlc_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_conv); - LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); - *ret_conv = (this_arg_conv->sign_justice_revoked_htlc)(this_arg_conv->this_arg, justice_tx_ref, input, amount, per_commitment_key_ref, &htlc_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_counterparty_htlc_transaction(uint32_t this_arg, int8_tArray htlc_tx, int64_t input, int64_t amount, int8_tArray per_commitment_point, uint32_t htlc) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - LDKTransaction htlc_tx_ref; - htlc_tx_ref.datalen = *((uint32_t*)htlc_tx); - htlc_tx_ref.data = MALLOC(htlc_tx_ref.datalen, "LDKTransaction Bytes"); - memcpy(htlc_tx_ref.data, (uint8_t*)(htlc_tx + 4), htlc_tx_ref.datalen); - htlc_tx_ref.data_is_owned = true; - LDKPublicKey per_commitment_point_ref; - CHECK(*((uint32_t*)per_commitment_point) == 33); - memcpy(per_commitment_point_ref.compressed_form, (uint8_t*)(per_commitment_point + 4), 33); - LDKHTLCOutputInCommitment htlc_conv; - htlc_conv.inner = (void*)(htlc & (~1)); - htlc_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_conv); - LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); - *ret_conv = (this_arg_conv->sign_counterparty_htlc_transaction)(this_arg_conv->this_arg, htlc_tx_ref, input, amount, per_commitment_point_ref, &htlc_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_closing_transaction(uint32_t this_arg, uint32_t closing_tx) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - LDKClosingTransaction closing_tx_conv; - closing_tx_conv.inner = (void*)(closing_tx & (~1)); - closing_tx_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(closing_tx_conv); - LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); - *ret_conv = (this_arg_conv->sign_closing_transaction)(this_arg_conv->this_arg, &closing_tx_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_channel_announcement(uint32_t this_arg, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - LDKUnsignedChannelAnnouncement msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); - *ret_conv = (this_arg_conv->sign_channel_announcement)(this_arg_conv->this_arg, &msg_conv); - return (uint64_t)ret_conv; +static inline struct LDKChannelMonitorUpdate CResult_ChannelMonitorUpdateDecodeErrorZ_get_ok(LDKCResult_ChannelMonitorUpdateDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ChannelMonitorUpdate_clone(&*owner->contents.result); } - -void __attribute__((visibility("default"))) TS_BaseSign_ready_channel(uint32_t this_arg, uint32_t channel_parameters) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - LDKChannelTransactionParameters channel_parameters_conv; - channel_parameters_conv.inner = (void*)(channel_parameters & (~1)); - channel_parameters_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_parameters_conv); - (this_arg_conv->ready_channel)(this_arg_conv->this_arg, &channel_parameters_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ChannelMonitorUpdateDecodeErrorZ* owner_conv = (LDKCResult_ChannelMonitorUpdateDecodeErrorZ*)(owner & ~1); + LDKChannelMonitorUpdate ret_var = CResult_ChannelMonitorUpdateDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -LDKChannelPublicKeys LDKBaseSign_set_get_pubkeys(LDKBaseSign* this_arg) { - if (this_arg->set_pubkeys != NULL) - this_arg->set_pubkeys(this_arg); - return this_arg->pubkeys; +static inline struct LDKDecodeError CResult_ChannelMonitorUpdateDecodeErrorZ_get_err(LDKCResult_ChannelMonitorUpdateDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -uint32_t __attribute__((visibility("default"))) TS_BaseSign_get_pubkeys(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; - LDKChannelPublicKeys ret_var = LDKBaseSign_set_get_pubkeys(this_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ChannelMonitorUpdateDecodeErrorZ* owner_conv = (LDKCResult_ChannelMonitorUpdateDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ChannelMonitorUpdateDecodeErrorZ_get_err(owner_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -2335,184 +1000,151 @@ uint32_t __attribute__((visibility("default"))) TS_BaseSign_get_pubkeys(uint32_ return ret_ref; } -typedef struct LDKSign_JCalls { - atomic_size_t refcnt; - LDKBaseSign_JCalls* BaseSign; - uint32_t write_meth; -} LDKSign_JCalls; -static void LDKSign_JCalls_free(void* this_arg) { - LDKSign_JCalls *j_calls = (LDKSign_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->write_meth); - FREE(j_calls); +uint32_t __attribute__((visibility("default"))) TS_LDKMonitorEvent_ref_from_ptr(uint32_t ptr) { + LDKMonitorEvent *obj = (LDKMonitorEvent*)(ptr & ~1); + switch(obj->tag) { + case LDKMonitorEvent_HTLCEvent: { + LDKHTLCUpdate htlc_event_var = obj->htlc_event; + uint64_t htlc_event_ref = 0; + CHECK((((uint64_t)htlc_event_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&htlc_event_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_event_var); + htlc_event_ref = (uint64_t)htlc_event_var.inner & ~1; + return 0 /* LDKMonitorEvent - HTLCEvent */; (void) htlc_event_ref; + } + case LDKMonitorEvent_CommitmentTxConfirmed: { + LDKOutPoint commitment_tx_confirmed_var = obj->commitment_tx_confirmed; + uint64_t commitment_tx_confirmed_ref = 0; + CHECK((((uint64_t)commitment_tx_confirmed_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&commitment_tx_confirmed_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_confirmed_var); + commitment_tx_confirmed_ref = (uint64_t)commitment_tx_confirmed_var.inner & ~1; + return 0 /* LDKMonitorEvent - CommitmentTxConfirmed */; (void) commitment_tx_confirmed_ref; + } + case LDKMonitorEvent_UpdateCompleted: { + LDKOutPoint funding_txo_var = obj->update_completed.funding_txo; + uint64_t funding_txo_ref = 0; + CHECK((((uint64_t)funding_txo_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&funding_txo_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_var); + funding_txo_ref = (uint64_t)funding_txo_var.inner & ~1; + return 0 /* LDKMonitorEvent - UpdateCompleted */; (void) funding_txo_ref; (void) obj->update_completed.monitor_update_id; + } + case LDKMonitorEvent_UpdateFailed: { + LDKOutPoint update_failed_var = obj->update_failed; + uint64_t update_failed_ref = 0; + CHECK((((uint64_t)update_failed_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&update_failed_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_failed_var); + update_failed_ref = (uint64_t)update_failed_var.inner & ~1; + return 0 /* LDKMonitorEvent - UpdateFailed */; (void) update_failed_ref; + } + default: abort(); } } -LDKCVec_u8Z write_LDKSign_jcall(const void* this_arg) { - LDKSign_JCalls *j_calls = (LDKSign_JCalls*) this_arg; - int8_tArray ret = js_invoke_function_0(j_calls->write_meth); - LDKCVec_u8Z ret_ref; - ret_ref.datalen = *((uint32_t*)ret); - ret_ref.data = MALLOC(ret_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(ret_ref.data, (uint8_t*)(ret + 4), ret_ref.datalen); - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_LDKCOption_MonitorEventZ_ref_from_ptr(uint32_t ptr) { + LDKCOption_MonitorEventZ *obj = (LDKCOption_MonitorEventZ*)(ptr & ~1); + switch(obj->tag) { + case LDKCOption_MonitorEventZ_Some: { + uint64_t some_ref = ((uint64_t)&obj->some) | 1; + return 0 /* LDKCOption_MonitorEventZ - Some */; (void) some_ref; + } + case LDKCOption_MonitorEventZ_None: { + return 0 /* LDKCOption_MonitorEventZ - None */; + } + default: abort(); + } } -static void LDKSign_JCalls_cloned(LDKSign* new_obj) { - LDKSign_JCalls *j_calls = (LDKSign_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); - atomic_fetch_add_explicit(&j_calls->BaseSign->refcnt, 1, memory_order_release); +static inline struct LDKCOption_MonitorEventZ CResult_COption_MonitorEventZDecodeErrorZ_get_ok(LDKCResult_COption_MonitorEventZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return COption_MonitorEventZ_clone(&*owner->contents.result); } -static inline LDKSign LDKSign_init (/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */void* BaseSign, uint32_t pubkeys) { - LDKSign_JCalls *calls = MALLOC(sizeof(LDKSign_JCalls), "LDKSign_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - - LDKChannelPublicKeys pubkeys_conv; - pubkeys_conv.inner = (void*)(pubkeys & (~1)); - pubkeys_conv.is_owned = (pubkeys & 1) || (pubkeys == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(pubkeys_conv); - - LDKSign ret = { - .this_arg = (void*) calls, - .write = write_LDKSign_jcall, - .cloned = LDKSign_JCalls_cloned, - .free = LDKSign_JCalls_free, - .BaseSign = LDKBaseSign_init(BaseSign, pubkeys), - }; - calls->BaseSign = ret.BaseSign.this_arg; - return ret; +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_COption_MonitorEventZDecodeErrorZ* owner_conv = (LDKCResult_COption_MonitorEventZDecodeErrorZ*)(owner & ~1); + LDKCOption_MonitorEventZ *ret_copy = MALLOC(sizeof(LDKCOption_MonitorEventZ), "LDKCOption_MonitorEventZ"); + *ret_copy = CResult_COption_MonitorEventZDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -long __attribute__((visibility("default"))) TS_LDKSign_new(/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */ void* BaseSign, uint32_t pubkeys) { - LDKSign *res_ptr = MALLOC(sizeof(LDKSign), "LDKSign"); - *res_ptr = LDKSign_init(o, BaseSign, pubkeys); - return (long)res_ptr; + +static inline struct LDKDecodeError CResult_COption_MonitorEventZDecodeErrorZ_get_err(LDKCResult_COption_MonitorEventZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -int8_tArray __attribute__((visibility("default"))) TS_Sign_write(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKSign* this_arg_conv = (LDKSign*)this_arg_ptr; - LDKCVec_u8Z ret_var = (this_arg_conv->write)(this_arg_conv->this_arg); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_COption_MonitorEventZDecodeErrorZ* owner_conv = (LDKCResult_COption_MonitorEventZDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_COption_MonitorEventZDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_SignDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_SignDecodeErrorZ *val = (LDKCResult_SignDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKSign* res_ret = MALLOC(sizeof(LDKSign), "LDKSign"); - *res_ret = Sign_clone(&(*val->contents.result)); - return (uint64_t)res_ret; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_SignDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_SignDecodeErrorZ *val = (LDKCResult_SignDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -int8_tArray __attribute__((visibility("default"))) TS_LDKCResult_RecoverableSignatureNoneZ_get_ok(uint32_t arg) { - LDKCResult_RecoverableSignatureNoneZ *val = (LDKCResult_RecoverableSignatureNoneZ*)(arg & ~1); - CHECK(val->result_ok); - int8_tArray es_arr = init_arr(68, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(es_arr + 4), (*val->contents.result).serialized_form, 68); - return es_arr; -} -void __attribute__((visibility("default"))) TS_LDKCResult_RecoverableSignatureNoneZ_get_err(uint32_t arg) { - LDKCResult_RecoverableSignatureNoneZ *val = (LDKCResult_RecoverableSignatureNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; +static inline struct LDKHTLCUpdate CResult_HTLCUpdateDecodeErrorZ_get_ok(LDKCResult_HTLCUpdateDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return HTLCUpdate_clone(&*owner->contents.result); } -static inline LDKCVec_CVec_u8ZZ CVec_CVec_u8ZZ_clone(const LDKCVec_CVec_u8ZZ *orig) { - LDKCVec_CVec_u8ZZ ret = { .data = MALLOC(sizeof(LDKCVec_u8Z) * orig->datalen, "LDKCVec_CVec_u8ZZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = CVec_u8Z_clone(&orig->data[i]); +uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_HTLCUpdateDecodeErrorZ* owner_conv = (LDKCResult_HTLCUpdateDecodeErrorZ*)(owner & ~1); + LDKHTLCUpdate ret_var = CResult_HTLCUpdateDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; + return ret_ref; } -ptrArray __attribute__((visibility("default"))) TS_LDKCResult_CVec_CVec_u8ZZNoneZ_get_ok(uint32_t arg) { - LDKCResult_CVec_CVec_u8ZZNoneZ *val = (LDKCResult_CVec_CVec_u8ZZNoneZ*)(arg & ~1); - CHECK(val->result_ok); - LDKCVec_CVec_u8ZZ res_var = (*val->contents.result); - ptrArray res_arr = NULL; - res_arr = init_arr(res_var.datalen, sizeof(uint32_t), "Native ptrArray Bytes"); - int8_tArray *res_arr_ptr = (int8_tArray*)(res_arr + 4); - for (size_t m = 0; m < res_var.datalen; m++) { - LDKCVec_u8Z res_conv_12_var = res_var.data[m]; - int8_tArray res_conv_12_arr = init_arr(res_conv_12_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(res_conv_12_arr + 4), res_conv_12_var.data, res_conv_12_var.datalen); - res_arr_ptr[m] = res_conv_12_arr; - } - - return res_arr; -} -void __attribute__((visibility("default"))) TS_LDKCResult_CVec_CVec_u8ZZNoneZ_get_err(uint32_t arg) { - LDKCResult_CVec_CVec_u8ZZNoneZ *val = (LDKCResult_CVec_CVec_u8ZZNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_InMemorySignerDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_InMemorySignerDecodeErrorZ *val = (LDKCResult_InMemorySignerDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKInMemorySigner res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_InMemorySignerDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_InMemorySignerDecodeErrorZ *val = (LDKCResult_InMemorySignerDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; + +static inline struct LDKDecodeError CResult_HTLCUpdateDecodeErrorZ_get_err(LDKCResult_HTLCUpdateDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -static inline LDKCVec_TxOutZ CVec_TxOutZ_clone(const LDKCVec_TxOutZ *orig) { - LDKCVec_TxOutZ ret = { .data = MALLOC(sizeof(LDKTxOut) * orig->datalen, "LDKCVec_TxOutZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = TxOut_clone(&orig->data[i]); +uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_HTLCUpdateDecodeErrorZ* owner_conv = (LDKCResult_HTLCUpdateDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_HTLCUpdateDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_LDKCResult_TransactionNoneZ_get_ok(uint32_t arg) { - LDKCResult_TransactionNoneZ *val = (LDKCResult_TransactionNoneZ*)(arg & ~1); - CHECK(val->result_ok); - LDKTransaction res_var = (*val->contents.result); - int8_tArray res_arr = init_arr(res_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(res_arr + 4), res_var.data, res_var.datalen); - return res_arr; + +static inline void CResult_NoneNoneZ_get_ok(LDKCResult_NoneNoneZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; } -void __attribute__((visibility("default"))) TS_LDKCResult_TransactionNoneZ_get_err(uint32_t arg) { - LDKCResult_TransactionNoneZ *val = (LDKCResult_TransactionNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; +void __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_get_ok(uint32_t owner) { + LDKCResult_NoneNoneZ* owner_conv = (LDKCResult_NoneNoneZ*)(owner & ~1); + CResult_NoneNoneZ_get_ok(owner_conv); } -static inline struct LDKThirtyTwoBytes C2Tuple_BlockHashChannelMonitorZ_get_a(LDKC2Tuple_BlockHashChannelMonitorZ *NONNULL_PTR tuple){ - return ThirtyTwoBytes_clone(&tuple->a); + +static inline void CResult_NoneNoneZ_get_err(LDKCResult_NoneNoneZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; } -int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_get_a(uint32_t tuple) { - LDKC2Tuple_BlockHashChannelMonitorZ* tuple_conv = (LDKC2Tuple_BlockHashChannelMonitorZ*)(tuple & ~1); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), C2Tuple_BlockHashChannelMonitorZ_get_a(tuple_conv).data, 32); - return ret_arr; +void __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_get_err(uint32_t owner) { + LDKCResult_NoneNoneZ* owner_conv = (LDKCResult_NoneNoneZ*)(owner & ~1); + CResult_NoneNoneZ_get_err(owner_conv); } -static inline struct LDKChannelMonitor C2Tuple_BlockHashChannelMonitorZ_get_b(LDKC2Tuple_BlockHashChannelMonitorZ *NONNULL_PTR tuple){ - return ChannelMonitor_clone(&tuple->b); +static inline struct LDKOutPoint C2Tuple_OutPointScriptZ_get_a(LDKC2Tuple_OutPointScriptZ *NONNULL_PTR owner){ + return OutPoint_clone(&owner->a); } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_get_b(uint32_t tuple) { - LDKC2Tuple_BlockHashChannelMonitorZ* tuple_conv = (LDKC2Tuple_BlockHashChannelMonitorZ*)(tuple & ~1); - LDKChannelMonitor ret_var = C2Tuple_BlockHashChannelMonitorZ_get_b(tuple_conv); +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_OutPointScriptZ_get_a(uint32_t owner) { + LDKC2Tuple_OutPointScriptZ* owner_conv = (LDKC2Tuple_OutPointScriptZ*)(owner & ~1); + LDKOutPoint ret_var = C2Tuple_OutPointScriptZ_get_a(owner_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -2524,1186 +1156,1103 @@ uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMoni return ret_ref; } -static inline LDKCVec_C2Tuple_BlockHashChannelMonitorZZ CVec_C2Tuple_BlockHashChannelMonitorZZ_clone(const LDKCVec_C2Tuple_BlockHashChannelMonitorZZ *orig) { - LDKCVec_C2Tuple_BlockHashChannelMonitorZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_BlockHashChannelMonitorZ) * orig->datalen, "LDKCVec_C2Tuple_BlockHashChannelMonitorZZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = C2Tuple_BlockHashChannelMonitorZ_clone(&orig->data[i]); - } - return ret; +static inline struct LDKCVec_u8Z C2Tuple_OutPointScriptZ_get_b(LDKC2Tuple_OutPointScriptZ *NONNULL_PTR owner){ + return CVec_u8Z_clone(&owner->b); } -uint32_tArray __attribute__((visibility("default"))) TS_LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_get_ok(uint32_t arg) { - LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ *val = (LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKCVec_C2Tuple_BlockHashChannelMonitorZZ res_var = (*val->contents.result); - uint32_tArray res_arr = NULL; - res_arr = init_arr(res_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *res_arr_ptr = (uint32_t*)(res_arr + 4); - for (size_t j = 0; j < res_var.datalen; j++) { - LDKC2Tuple_BlockHashChannelMonitorZ* res_conv_35_conv = MALLOC(sizeof(LDKC2Tuple_BlockHashChannelMonitorZ), "LDKC2Tuple_BlockHashChannelMonitorZ"); - *res_conv_35_conv = res_var.data[j]; - *res_conv_35_conv = C2Tuple_BlockHashChannelMonitorZ_clone(res_conv_35_conv); - res_arr_ptr[j] = ((uint64_t)res_conv_35_conv); - } - - return res_arr; +int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_OutPointScriptZ_get_b(uint32_t owner) { + LDKC2Tuple_OutPointScriptZ* owner_conv = (LDKC2Tuple_OutPointScriptZ*)(owner & ~1); + LDKCVec_u8Z ret_var = C2Tuple_OutPointScriptZ_get_b(owner_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_get_err(uint32_t arg) { - LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ *val = (LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKIOError_to_js((*val->contents.err)); - return err_conv; + +static inline uint32_t C2Tuple_u32ScriptZ_get_a(LDKC2Tuple_u32ScriptZ *NONNULL_PTR owner){ + return owner->a; } -uint32_t __attribute__((visibility("default"))) TS_LDKCOption_u16Z_ref_from_ptr(uint32_t ptr) { - LDKCOption_u16Z *obj = (LDKCOption_u16Z*)(ptr & ~1); - switch(obj->tag) { - case LDKCOption_u16Z_Some: { - return 0 /* LDKCOption_u16Z - Some */; (void) obj->some; - } - case LDKCOption_u16Z_None: { - return 0 /* LDKCOption_u16Z - None */; - } - default: abort(); - } +int32_t __attribute__((visibility("default"))) TS_C2Tuple_u32ScriptZ_get_a(uint32_t owner) { + LDKC2Tuple_u32ScriptZ* owner_conv = (LDKC2Tuple_u32ScriptZ*)(owner & ~1); + int32_t ret_val = C2Tuple_u32ScriptZ_get_a(owner_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_LDKAPIError_ref_from_ptr(uint32_t ptr) { - LDKAPIError *obj = (LDKAPIError*)(ptr & ~1); - switch(obj->tag) { - case LDKAPIError_APIMisuseError: { - LDKStr err_str = obj->api_misuse_error.err; - jstring err_conv = str_ref_to_ts(err_str.chars, err_str.len); - return 0 /* LDKAPIError - APIMisuseError */; (void) err_conv; - } - case LDKAPIError_FeeRateTooHigh: { - LDKStr err_str = obj->fee_rate_too_high.err; - jstring err_conv = str_ref_to_ts(err_str.chars, err_str.len); - return 0 /* LDKAPIError - FeeRateTooHigh */; (void) err_conv; (void) obj->fee_rate_too_high.feerate; - } - case LDKAPIError_RouteError: { - LDKStr err_str = obj->route_error.err; - jstring err_conv = str_ref_to_ts(err_str.chars, err_str.len); - return 0 /* LDKAPIError - RouteError */; (void) err_conv; - } - case LDKAPIError_ChannelUnavailable: { - LDKStr err_str = obj->channel_unavailable.err; - jstring err_conv = str_ref_to_ts(err_str.chars, err_str.len); - return 0 /* LDKAPIError - ChannelUnavailable */; (void) err_conv; - } - case LDKAPIError_MonitorUpdateFailed: { - return 0 /* LDKAPIError - MonitorUpdateFailed */; - } - case LDKAPIError_IncompatibleShutdownScript: { - LDKShutdownScript script_var = obj->incompatible_shutdown_script.script; - uint64_t script_ref = 0; - CHECK((((uint64_t)script_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&script_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(script_var); - script_ref = (uint64_t)script_var.inner & ~1; - return 0 /* LDKAPIError - IncompatibleShutdownScript */; (void) script_ref; - } - default: abort(); - } + +static inline struct LDKCVec_u8Z C2Tuple_u32ScriptZ_get_b(LDKC2Tuple_u32ScriptZ *NONNULL_PTR owner){ + return CVec_u8Z_clone(&owner->b); } -void __attribute__((visibility("default"))) TS_LDKCResult_NoneAPIErrorZ_get_ok(uint32_t arg) { - LDKCResult_NoneAPIErrorZ *val = (LDKCResult_NoneAPIErrorZ*)(arg & ~1); - CHECK(val->result_ok); - return *val->contents.result; +int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_u32ScriptZ_get_b(uint32_t owner) { + LDKC2Tuple_u32ScriptZ* owner_conv = (LDKC2Tuple_u32ScriptZ*)(owner & ~1); + LDKCVec_u8Z ret_var = C2Tuple_u32ScriptZ_get_b(owner_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NoneAPIErrorZ_get_err(uint32_t arg) { - LDKCResult_NoneAPIErrorZ *val = (LDKCResult_NoneAPIErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint64_t err_ref = ((uint64_t)&(*val->contents.err)) | 1; - return err_ref; + +static inline struct LDKThirtyTwoBytes C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_a(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ *NONNULL_PTR owner){ + return ThirtyTwoBytes_clone(&owner->a); } -static inline LDKCVec_CResult_NoneAPIErrorZZ CVec_CResult_NoneAPIErrorZZ_clone(const LDKCVec_CResult_NoneAPIErrorZZ *orig) { - LDKCVec_CResult_NoneAPIErrorZZ ret = { .data = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ) * orig->datalen, "LDKCVec_CResult_NoneAPIErrorZZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = CResult_NoneAPIErrorZ_clone(&orig->data[i]); +int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_a(uint32_t owner) { + LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* owner_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_a(owner_conv).data, 32); + return ret_arr; +} + +static inline struct LDKCVec_C2Tuple_u32ScriptZZ C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_b(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ *NONNULL_PTR owner){ + return owner->b; +} +uint32_tArray __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_b(uint32_t owner) { + LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* owner_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ*)(owner & ~1); + LDKCVec_C2Tuple_u32ScriptZZ ret_var = C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_b(owner_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t v = 0; v < ret_var.datalen; v++) { + LDKC2Tuple_u32ScriptZ* ret_conv_21_conv = MALLOC(sizeof(LDKC2Tuple_u32ScriptZ), "LDKC2Tuple_u32ScriptZ"); + *ret_conv_21_conv = ret_var.data[v]; + ret_arr_ptr[v] = ((uint64_t)ret_conv_21_conv); } - return ret; + + FREE(ret_var.data); + return ret_arr; } -static inline LDKCVec_APIErrorZ CVec_APIErrorZ_clone(const LDKCVec_APIErrorZ *orig) { - LDKCVec_APIErrorZ ret = { .data = MALLOC(sizeof(LDKAPIError) * orig->datalen, "LDKCVec_APIErrorZ clone bytes"), .datalen = orig->datalen }; + +static inline LDKCVec_MonitorEventZ CVec_MonitorEventZ_clone(const LDKCVec_MonitorEventZ *orig) { + LDKCVec_MonitorEventZ ret = { .data = MALLOC(sizeof(LDKMonitorEvent) * orig->datalen, "LDKCVec_MonitorEventZ clone bytes"), .datalen = orig->datalen }; for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = APIError_clone(&orig->data[i]); + ret.data[i] = MonitorEvent_clone(&orig->data[i]); } return ret; } -int8_tArray __attribute__((visibility("default"))) TS_LDKCResult__u832APIErrorZ_get_ok(uint32_t arg) { - LDKCResult__u832APIErrorZ *val = (LDKCResult__u832APIErrorZ*)(arg & ~1); - CHECK(val->result_ok); - int8_tArray res_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(res_arr + 4), (*val->contents.result).data, 32); - return res_arr; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult__u832APIErrorZ_get_err(uint32_t arg) { - LDKCResult__u832APIErrorZ *val = (LDKCResult__u832APIErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint64_t err_ref = ((uint64_t)&(*val->contents.err)) | 1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKPaymentSendFailure_ref_from_ptr(uint32_t ptr) { - LDKPaymentSendFailure *obj = (LDKPaymentSendFailure*)(ptr & ~1); +uint32_t __attribute__((visibility("default"))) TS_LDKPaymentPurpose_ref_from_ptr(uint32_t ptr) { + LDKPaymentPurpose *obj = (LDKPaymentPurpose*)(ptr & ~1); switch(obj->tag) { - case LDKPaymentSendFailure_ParameterError: { - uint64_t parameter_error_ref = ((uint64_t)&obj->parameter_error) | 1; - return 0 /* LDKPaymentSendFailure - ParameterError */; (void) parameter_error_ref; + case LDKPaymentPurpose_InvoicePayment: { + int8_tArray payment_preimage_arr = init_int8_tArray(32); + memcpy(payment_preimage_arr->elems, obj->invoice_payment.payment_preimage.data, 32); + int8_tArray payment_secret_arr = init_int8_tArray(32); + memcpy(payment_secret_arr->elems, obj->invoice_payment.payment_secret.data, 32); + return 0 /* LDKPaymentPurpose - InvoicePayment */; (void) payment_preimage_arr; (void) payment_secret_arr; } - case LDKPaymentSendFailure_PathParameterError: { - LDKCVec_CResult_NoneAPIErrorZZ path_parameter_error_var = obj->path_parameter_error; - uint32_tArray path_parameter_error_arr = NULL; - path_parameter_error_arr = init_arr(path_parameter_error_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *path_parameter_error_arr_ptr = (uint32_t*)(path_parameter_error_arr + 4); - for (size_t w = 0; w < path_parameter_error_var.datalen; w++) { - LDKCResult_NoneAPIErrorZ* path_parameter_error_conv_22_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); - *path_parameter_error_conv_22_conv = path_parameter_error_var.data[w]; - *path_parameter_error_conv_22_conv = CResult_NoneAPIErrorZ_clone(path_parameter_error_conv_22_conv); - path_parameter_error_arr_ptr[w] = (uint64_t)path_parameter_error_conv_22_conv; - } - - return 0 /* LDKPaymentSendFailure - PathParameterError */; (void) path_parameter_error_arr; + case LDKPaymentPurpose_SpontaneousPayment: { + int8_tArray spontaneous_payment_arr = init_int8_tArray(32); + memcpy(spontaneous_payment_arr->elems, obj->spontaneous_payment.data, 32); + return 0 /* LDKPaymentPurpose - SpontaneousPayment */; (void) spontaneous_payment_arr; } - case LDKPaymentSendFailure_AllFailedRetrySafe: { - LDKCVec_APIErrorZ all_failed_retry_safe_var = obj->all_failed_retry_safe; - uint32_tArray all_failed_retry_safe_arr = NULL; - all_failed_retry_safe_arr = init_arr(all_failed_retry_safe_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *all_failed_retry_safe_arr_ptr = (uint32_t*)(all_failed_retry_safe_arr + 4); - for (size_t k = 0; k < all_failed_retry_safe_var.datalen; k++) { - uint64_t all_failed_retry_safe_conv_10_ref = ((uint64_t)&all_failed_retry_safe_var.data[k]) | 1; - all_failed_retry_safe_arr_ptr[k] = all_failed_retry_safe_conv_10_ref; - } - - return 0 /* LDKPaymentSendFailure - AllFailedRetrySafe */; (void) all_failed_retry_safe_arr; + default: abort(); + } +} +uint32_t __attribute__((visibility("default"))) TS_LDKCOption_u64Z_ref_from_ptr(uint32_t ptr) { + LDKCOption_u64Z *obj = (LDKCOption_u64Z*)(ptr & ~1); + switch(obj->tag) { + case LDKCOption_u64Z_Some: { + return 0 /* LDKCOption_u64Z - Some */; (void) obj->some; } - case LDKPaymentSendFailure_PartialFailure: { - LDKCVec_CResult_NoneAPIErrorZZ results_var = obj->partial_failure.results; - uint32_tArray results_arr = NULL; - results_arr = init_arr(results_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *results_arr_ptr = (uint32_t*)(results_arr + 4); - for (size_t w = 0; w < results_var.datalen; w++) { - LDKCResult_NoneAPIErrorZ* results_conv_22_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); - *results_conv_22_conv = results_var.data[w]; - *results_conv_22_conv = CResult_NoneAPIErrorZ_clone(results_conv_22_conv); - results_arr_ptr[w] = (uint64_t)results_conv_22_conv; - } - - LDKRouteParameters failed_paths_retry_var = obj->partial_failure.failed_paths_retry; - uint64_t failed_paths_retry_ref = 0; - if ((uint64_t)failed_paths_retry_var.inner > 4096) { - CHECK((((uint64_t)failed_paths_retry_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&failed_paths_retry_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(failed_paths_retry_var); - failed_paths_retry_ref = (uint64_t)failed_paths_retry_var.inner & ~1; - } - int8_tArray payment_id_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_id_arr + 4), obj->partial_failure.payment_id.data, 32); - return 0 /* LDKPaymentSendFailure - PartialFailure */; (void) results_arr; (void) failed_paths_retry_ref; (void) payment_id_arr; + case LDKCOption_u64Z_None: { + return 0 /* LDKCOption_u64Z - None */; } default: abort(); } } -int8_tArray __attribute__((visibility("default"))) TS_LDKCResult_PaymentIdPaymentSendFailureZ_get_ok(uint32_t arg) { - LDKCResult_PaymentIdPaymentSendFailureZ *val = (LDKCResult_PaymentIdPaymentSendFailureZ*)(arg & ~1); - CHECK(val->result_ok); - int8_tArray res_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(res_arr + 4), (*val->contents.result).data, 32); - return res_arr; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PaymentIdPaymentSendFailureZ_get_err(uint32_t arg) { - LDKCResult_PaymentIdPaymentSendFailureZ *val = (LDKCResult_PaymentIdPaymentSendFailureZ*)(arg & ~1); - CHECK(!val->result_ok); - uint64_t err_ref = ((uint64_t)&(*val->contents.err)) | 1; - return err_ref; -} -void __attribute__((visibility("default"))) TS_LDKCResult_NonePaymentSendFailureZ_get_ok(uint32_t arg) { - LDKCResult_NonePaymentSendFailureZ *val = (LDKCResult_NonePaymentSendFailureZ*)(arg & ~1); - CHECK(val->result_ok); - return *val->contents.result; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NonePaymentSendFailureZ_get_err(uint32_t arg) { - LDKCResult_NonePaymentSendFailureZ *val = (LDKCResult_NonePaymentSendFailureZ*)(arg & ~1); - CHECK(!val->result_ok); - uint64_t err_ref = ((uint64_t)&(*val->contents.err)) | 1; - return err_ref; -} -static inline struct LDKThirtyTwoBytes C2Tuple_PaymentHashPaymentIdZ_get_a(LDKC2Tuple_PaymentHashPaymentIdZ *NONNULL_PTR tuple){ - return ThirtyTwoBytes_clone(&tuple->a); -} -int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentIdZ_get_a(uint32_t tuple) { - LDKC2Tuple_PaymentHashPaymentIdZ* tuple_conv = (LDKC2Tuple_PaymentHashPaymentIdZ*)(tuple & ~1); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), C2Tuple_PaymentHashPaymentIdZ_get_a(tuple_conv).data, 32); - return ret_arr; -} - -static inline struct LDKThirtyTwoBytes C2Tuple_PaymentHashPaymentIdZ_get_b(LDKC2Tuple_PaymentHashPaymentIdZ *NONNULL_PTR tuple){ - return ThirtyTwoBytes_clone(&tuple->b); -} -int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentIdZ_get_b(uint32_t tuple) { - LDKC2Tuple_PaymentHashPaymentIdZ* tuple_conv = (LDKC2Tuple_PaymentHashPaymentIdZ*)(tuple & ~1); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), C2Tuple_PaymentHashPaymentIdZ_get_b(tuple_conv).data, 32); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_get_ok(uint32_t arg) { - LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ *val = (LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ*)(arg & ~1); - CHECK(val->result_ok); - LDKC2Tuple_PaymentHashPaymentIdZ* res_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentIdZ), "LDKC2Tuple_PaymentHashPaymentIdZ"); - *res_conv = (*val->contents.result); - *res_conv = C2Tuple_PaymentHashPaymentIdZ_clone(res_conv); - return ((uint64_t)res_conv); -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_get_err(uint32_t arg) { - LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ *val = (LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ*)(arg & ~1); - CHECK(!val->result_ok); - uint64_t err_ref = ((uint64_t)&(*val->contents.err)) | 1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKNetAddress_ref_from_ptr(uint32_t ptr) { - LDKNetAddress *obj = (LDKNetAddress*)(ptr & ~1); +uint32_t __attribute__((visibility("default"))) TS_LDKNetworkUpdate_ref_from_ptr(uint32_t ptr) { + LDKNetworkUpdate *obj = (LDKNetworkUpdate*)(ptr & ~1); switch(obj->tag) { - case LDKNetAddress_IPv4: { - int8_tArray addr_arr = init_arr(4, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(addr_arr + 4), obj->i_pv4.addr.data, 4); - return 0 /* LDKNetAddress - IPv4 */; (void) addr_arr; (void) obj->i_pv4.port; - } - case LDKNetAddress_IPv6: { - int8_tArray addr_arr = init_arr(16, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(addr_arr + 4), obj->i_pv6.addr.data, 16); - return 0 /* LDKNetAddress - IPv6 */; (void) addr_arr; (void) obj->i_pv6.port; + case LDKNetworkUpdate_ChannelUpdateMessage: { + LDKChannelUpdate msg_var = obj->channel_update_message.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKNetworkUpdate - ChannelUpdateMessage */; (void) msg_ref; } - case LDKNetAddress_OnionV2: { - int8_tArray onion_v2_arr = init_arr(12, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(onion_v2_arr + 4), obj->onion_v2.data, 12); - return 0 /* LDKNetAddress - OnionV2 */; (void) onion_v2_arr; + case LDKNetworkUpdate_ChannelClosed: { + return 0 /* LDKNetworkUpdate - ChannelClosed */; (void) obj->channel_closed.short_channel_id; (void) obj->channel_closed.is_permanent; } - case LDKNetAddress_OnionV3: { - int8_tArray ed25519_pubkey_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ed25519_pubkey_arr + 4), obj->onion_v3.ed25519_pubkey.data, 32); - return 0 /* LDKNetAddress - OnionV3 */; (void) ed25519_pubkey_arr; (void) obj->onion_v3.checksum; (void) obj->onion_v3.version; (void) obj->onion_v3.port; + case LDKNetworkUpdate_NodeFailure: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->node_failure.node_id.compressed_form, 33); + return 0 /* LDKNetworkUpdate - NodeFailure */; (void) node_id_arr; (void) obj->node_failure.is_permanent; } default: abort(); } } -static inline LDKCVec_NetAddressZ CVec_NetAddressZ_clone(const LDKCVec_NetAddressZ *orig) { - LDKCVec_NetAddressZ ret = { .data = MALLOC(sizeof(LDKNetAddress) * orig->datalen, "LDKCVec_NetAddressZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = NetAddress_clone(&orig->data[i]); +uint32_t __attribute__((visibility("default"))) TS_LDKCOption_NetworkUpdateZ_ref_from_ptr(uint32_t ptr) { + LDKCOption_NetworkUpdateZ *obj = (LDKCOption_NetworkUpdateZ*)(ptr & ~1); + switch(obj->tag) { + case LDKCOption_NetworkUpdateZ_Some: { + uint64_t some_ref = ((uint64_t)&obj->some) | 1; + return 0 /* LDKCOption_NetworkUpdateZ - Some */; (void) some_ref; + } + case LDKCOption_NetworkUpdateZ_None: { + return 0 /* LDKCOption_NetworkUpdateZ - None */; + } + default: abort(); } - return ret; } -static inline struct LDKThirtyTwoBytes C2Tuple_PaymentHashPaymentSecretZ_get_a(LDKC2Tuple_PaymentHashPaymentSecretZ *NONNULL_PTR tuple){ - return ThirtyTwoBytes_clone(&tuple->a); -} -int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentSecretZ_get_a(uint32_t tuple) { - LDKC2Tuple_PaymentHashPaymentSecretZ* tuple_conv = (LDKC2Tuple_PaymentHashPaymentSecretZ*)(tuple & ~1); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), C2Tuple_PaymentHashPaymentSecretZ_get_a(tuple_conv).data, 32); - return ret_arr; -} - -static inline struct LDKThirtyTwoBytes C2Tuple_PaymentHashPaymentSecretZ_get_b(LDKC2Tuple_PaymentHashPaymentSecretZ *NONNULL_PTR tuple){ - return ThirtyTwoBytes_clone(&tuple->b); -} -int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentSecretZ_get_b(uint32_t tuple) { - LDKC2Tuple_PaymentHashPaymentSecretZ* tuple_conv = (LDKC2Tuple_PaymentHashPaymentSecretZ*)(tuple & ~1); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), C2Tuple_PaymentHashPaymentSecretZ_get_b(tuple_conv).data, 32); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_get_ok(uint32_t arg) { - LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ *val = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ*)(arg & ~1); - CHECK(val->result_ok); - LDKC2Tuple_PaymentHashPaymentSecretZ* res_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentSecretZ), "LDKC2Tuple_PaymentHashPaymentSecretZ"); - *res_conv = (*val->contents.result); - *res_conv = C2Tuple_PaymentHashPaymentSecretZ_clone(res_conv); - return ((uint64_t)res_conv); -} -void __attribute__((visibility("default"))) TS_LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_get_err(uint32_t arg) { - LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ *val = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_get_ok(uint32_t arg) { - LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ *val = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKC2Tuple_PaymentHashPaymentSecretZ* res_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentSecretZ), "LDKC2Tuple_PaymentHashPaymentSecretZ"); - *res_conv = (*val->contents.result); - *res_conv = C2Tuple_PaymentHashPaymentSecretZ_clone(res_conv); - return ((uint64_t)res_conv); -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_get_err(uint32_t arg) { - LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ *val = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint64_t err_ref = ((uint64_t)&(*val->contents.err)) | 1; - return err_ref; -} -int8_tArray __attribute__((visibility("default"))) TS_LDKCResult_PaymentSecretNoneZ_get_ok(uint32_t arg) { - LDKCResult_PaymentSecretNoneZ *val = (LDKCResult_PaymentSecretNoneZ*)(arg & ~1); - CHECK(val->result_ok); - int8_tArray res_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(res_arr + 4), (*val->contents.result).data, 32); - return res_arr; -} -void __attribute__((visibility("default"))) TS_LDKCResult_PaymentSecretNoneZ_get_err(uint32_t arg) { - LDKCResult_PaymentSecretNoneZ *val = (LDKCResult_PaymentSecretNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; -} -int8_tArray __attribute__((visibility("default"))) TS_LDKCResult_PaymentSecretAPIErrorZ_get_ok(uint32_t arg) { - LDKCResult_PaymentSecretAPIErrorZ *val = (LDKCResult_PaymentSecretAPIErrorZ*)(arg & ~1); - CHECK(val->result_ok); - int8_tArray res_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(res_arr + 4), (*val->contents.result).data, 32); - return res_arr; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PaymentSecretAPIErrorZ_get_err(uint32_t arg) { - LDKCResult_PaymentSecretAPIErrorZ *val = (LDKCResult_PaymentSecretAPIErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint64_t err_ref = ((uint64_t)&(*val->contents.err)) | 1; - return err_ref; -} -int8_tArray __attribute__((visibility("default"))) TS_LDKCResult_PaymentPreimageAPIErrorZ_get_ok(uint32_t arg) { - LDKCResult_PaymentPreimageAPIErrorZ *val = (LDKCResult_PaymentPreimageAPIErrorZ*)(arg & ~1); - CHECK(val->result_ok); - int8_tArray res_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(res_arr + 4), (*val->contents.result).data, 32); - return res_arr; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PaymentPreimageAPIErrorZ_get_err(uint32_t arg) { - LDKCResult_PaymentPreimageAPIErrorZ *val = (LDKCResult_PaymentPreimageAPIErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint64_t err_ref = ((uint64_t)&(*val->contents.err)) | 1; - return err_ref; -} -static inline LDKCVec_ChannelMonitorZ CVec_ChannelMonitorZ_clone(const LDKCVec_ChannelMonitorZ *orig) { - LDKCVec_ChannelMonitorZ ret = { .data = MALLOC(sizeof(LDKChannelMonitor) * orig->datalen, "LDKCVec_ChannelMonitorZ clone bytes"), .datalen = orig->datalen }; +static inline LDKCVec_RouteHopZ CVec_RouteHopZ_clone(const LDKCVec_RouteHopZ *orig) { + LDKCVec_RouteHopZ ret = { .data = MALLOC(sizeof(LDKRouteHop) * orig->datalen, "LDKCVec_RouteHopZ clone bytes"), .datalen = orig->datalen }; for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = ChannelMonitor_clone(&orig->data[i]); + ret.data[i] = RouteHop_clone(&orig->data[i]); } return ret; } -typedef struct LDKWatch_JCalls { - atomic_size_t refcnt; - uint32_t watch_channel_meth; - uint32_t update_channel_meth; - uint32_t release_pending_monitor_events_meth; -} LDKWatch_JCalls; -static void LDKWatch_JCalls_free(void* this_arg) { - LDKWatch_JCalls *j_calls = (LDKWatch_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->watch_channel_meth); - js_free(j_calls->update_channel_meth); - js_free(j_calls->release_pending_monitor_events_meth); - FREE(j_calls); +uint32_t __attribute__((visibility("default"))) TS_LDKSpendableOutputDescriptor_ref_from_ptr(uint32_t ptr) { + LDKSpendableOutputDescriptor *obj = (LDKSpendableOutputDescriptor*)(ptr & ~1); + switch(obj->tag) { + case LDKSpendableOutputDescriptor_StaticOutput: { + LDKOutPoint outpoint_var = obj->static_output.outpoint; + uint64_t outpoint_ref = 0; + CHECK((((uint64_t)outpoint_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&outpoint_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(outpoint_var); + outpoint_ref = (uint64_t)outpoint_var.inner & ~1; + uint64_t output_ref = ((uint64_t)&obj->static_output.output) | 1; + return 0 /* LDKSpendableOutputDescriptor - StaticOutput */; (void) outpoint_ref; (void) (uint64_t)output_ref; + } + case LDKSpendableOutputDescriptor_DelayedPaymentOutput: { + LDKDelayedPaymentOutputDescriptor delayed_payment_output_var = obj->delayed_payment_output; + uint64_t delayed_payment_output_ref = 0; + CHECK((((uint64_t)delayed_payment_output_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&delayed_payment_output_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(delayed_payment_output_var); + delayed_payment_output_ref = (uint64_t)delayed_payment_output_var.inner & ~1; + return 0 /* LDKSpendableOutputDescriptor - DelayedPaymentOutput */; (void) delayed_payment_output_ref; + } + case LDKSpendableOutputDescriptor_StaticPaymentOutput: { + LDKStaticPaymentOutputDescriptor static_payment_output_var = obj->static_payment_output; + uint64_t static_payment_output_ref = 0; + CHECK((((uint64_t)static_payment_output_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&static_payment_output_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(static_payment_output_var); + static_payment_output_ref = (uint64_t)static_payment_output_var.inner & ~1; + return 0 /* LDKSpendableOutputDescriptor - StaticPaymentOutput */; (void) static_payment_output_ref; + } + default: abort(); } } -LDKCResult_NoneChannelMonitorUpdateErrZ watch_channel_LDKWatch_jcall(const void* this_arg, LDKOutPoint funding_txo, LDKChannelMonitor monitor) { - LDKWatch_JCalls *j_calls = (LDKWatch_JCalls*) this_arg; - LDKOutPoint funding_txo_var = funding_txo; - uint64_t funding_txo_ref = 0; - CHECK((((uint64_t)funding_txo_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&funding_txo_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_var); - funding_txo_ref = (uint64_t)funding_txo_var.inner; - if (funding_txo_var.is_owned) { - funding_txo_ref |= 1; - } - LDKChannelMonitor monitor_var = monitor; - uint64_t monitor_ref = 0; - CHECK((((uint64_t)monitor_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&monitor_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(monitor_var); - monitor_ref = (uint64_t)monitor_var.inner; - if (monitor_var.is_owned) { - monitor_ref |= 1; +static inline LDKCVec_SpendableOutputDescriptorZ CVec_SpendableOutputDescriptorZ_clone(const LDKCVec_SpendableOutputDescriptorZ *orig) { + LDKCVec_SpendableOutputDescriptorZ ret = { .data = MALLOC(sizeof(LDKSpendableOutputDescriptor) * orig->datalen, "LDKCVec_SpendableOutputDescriptorZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = SpendableOutputDescriptor_clone(&orig->data[i]); } - uint32_t ret = js_invoke_function_2(j_calls->watch_channel_meth, funding_txo_ref, monitor_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_NoneChannelMonitorUpdateErrZ ret_conv = *(LDKCResult_NoneChannelMonitorUpdateErrZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; + return ret; } -LDKCResult_NoneChannelMonitorUpdateErrZ update_channel_LDKWatch_jcall(const void* this_arg, LDKOutPoint funding_txo, LDKChannelMonitorUpdate update) { - LDKWatch_JCalls *j_calls = (LDKWatch_JCalls*) this_arg; - LDKOutPoint funding_txo_var = funding_txo; - uint64_t funding_txo_ref = 0; - CHECK((((uint64_t)funding_txo_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&funding_txo_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_var); - funding_txo_ref = (uint64_t)funding_txo_var.inner; - if (funding_txo_var.is_owned) { - funding_txo_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_LDKClosureReason_ref_from_ptr(uint32_t ptr) { + LDKClosureReason *obj = (LDKClosureReason*)(ptr & ~1); + switch(obj->tag) { + case LDKClosureReason_CounterpartyForceClosed: { + LDKStr peer_msg_str = obj->counterparty_force_closed.peer_msg; + jstring peer_msg_conv = str_ref_to_ts(peer_msg_str.chars, peer_msg_str.len); + return 0 /* LDKClosureReason - CounterpartyForceClosed */; (void) peer_msg_conv; + } + case LDKClosureReason_HolderForceClosed: { + return 0 /* LDKClosureReason - HolderForceClosed */; + } + case LDKClosureReason_CooperativeClosure: { + return 0 /* LDKClosureReason - CooperativeClosure */; + } + case LDKClosureReason_CommitmentTxConfirmed: { + return 0 /* LDKClosureReason - CommitmentTxConfirmed */; + } + case LDKClosureReason_FundingTimedOut: { + return 0 /* LDKClosureReason - FundingTimedOut */; + } + case LDKClosureReason_ProcessingError: { + LDKStr err_str = obj->processing_error.err; + jstring err_conv = str_ref_to_ts(err_str.chars, err_str.len); + return 0 /* LDKClosureReason - ProcessingError */; (void) err_conv; + } + case LDKClosureReason_DisconnectedPeer: { + return 0 /* LDKClosureReason - DisconnectedPeer */; + } + case LDKClosureReason_OutdatedChannelManager: { + return 0 /* LDKClosureReason - OutdatedChannelManager */; + } + default: abort(); } - LDKChannelMonitorUpdate update_var = update; - uint64_t update_ref = 0; - CHECK((((uint64_t)update_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&update_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_var); - update_ref = (uint64_t)update_var.inner; - if (update_var.is_owned) { - update_ref |= 1; +} +uint32_t __attribute__((visibility("default"))) TS_LDKEvent_ref_from_ptr(uint32_t ptr) { + LDKEvent *obj = (LDKEvent*)(ptr & ~1); + switch(obj->tag) { + case LDKEvent_FundingGenerationReady: { + int8_tArray temporary_channel_id_arr = init_int8_tArray(32); + memcpy(temporary_channel_id_arr->elems, obj->funding_generation_ready.temporary_channel_id.data, 32); + LDKCVec_u8Z output_script_var = obj->funding_generation_ready.output_script; + int8_tArray output_script_arr = init_int8_tArray(output_script_var.datalen); + memcpy(output_script_arr->elems, output_script_var.data, output_script_var.datalen); + return 0 /* LDKEvent - FundingGenerationReady */; (void) temporary_channel_id_arr; (void) obj->funding_generation_ready.channel_value_satoshis; (void) output_script_arr; (void) obj->funding_generation_ready.user_channel_id; + } + case LDKEvent_PaymentReceived: { + int8_tArray payment_hash_arr = init_int8_tArray(32); + memcpy(payment_hash_arr->elems, obj->payment_received.payment_hash.data, 32); + uint64_t purpose_ref = ((uint64_t)&obj->payment_received.purpose) | 1; + return 0 /* LDKEvent - PaymentReceived */; (void) payment_hash_arr; (void) obj->payment_received.amt; (void) purpose_ref; + } + case LDKEvent_PaymentSent: { + int8_tArray payment_id_arr = init_int8_tArray(32); + memcpy(payment_id_arr->elems, obj->payment_sent.payment_id.data, 32); + int8_tArray payment_preimage_arr = init_int8_tArray(32); + memcpy(payment_preimage_arr->elems, obj->payment_sent.payment_preimage.data, 32); + int8_tArray payment_hash_arr = init_int8_tArray(32); + memcpy(payment_hash_arr->elems, obj->payment_sent.payment_hash.data, 32); + uint64_t fee_paid_msat_ref = ((uint64_t)&obj->payment_sent.fee_paid_msat) | 1; + return 0 /* LDKEvent - PaymentSent */; (void) payment_id_arr; (void) payment_preimage_arr; (void) payment_hash_arr; (void) fee_paid_msat_ref; + } + case LDKEvent_PaymentPathFailed: { + int8_tArray payment_id_arr = init_int8_tArray(32); + memcpy(payment_id_arr->elems, obj->payment_path_failed.payment_id.data, 32); + int8_tArray payment_hash_arr = init_int8_tArray(32); + memcpy(payment_hash_arr->elems, obj->payment_path_failed.payment_hash.data, 32); + uint64_t network_update_ref = ((uint64_t)&obj->payment_path_failed.network_update) | 1; + LDKCVec_RouteHopZ path_var = obj->payment_path_failed.path; + uint32_tArray path_arr = NULL; + path_arr = init_uint32_tArray(path_var.datalen); + uint32_t *path_arr_ptr = (uint32_t*)(path_arr + 4); + for (size_t k = 0; k < path_var.datalen; k++) { + LDKRouteHop path_conv_10_var = path_var.data[k]; + uint64_t path_conv_10_ref = 0; + CHECK((((uint64_t)path_conv_10_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&path_conv_10_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_var); + path_conv_10_ref = (uint64_t)path_conv_10_var.inner & ~1; + path_arr_ptr[k] = path_conv_10_ref; + } + + uint64_t short_channel_id_ref = ((uint64_t)&obj->payment_path_failed.short_channel_id) | 1; + LDKRouteParameters retry_var = obj->payment_path_failed.retry; + uint64_t retry_ref = 0; + if ((uint64_t)retry_var.inner > 4096) { + CHECK((((uint64_t)retry_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&retry_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(retry_var); + retry_ref = (uint64_t)retry_var.inner & ~1; + } + return 0 /* LDKEvent - PaymentPathFailed */; (void) payment_id_arr; (void) payment_hash_arr; (void) obj->payment_path_failed.rejected_by_dest; (void) network_update_ref; (void) obj->payment_path_failed.all_paths_failed; (void) path_arr; (void) short_channel_id_ref; (void) retry_ref; + } + case LDKEvent_PaymentFailed: { + int8_tArray payment_id_arr = init_int8_tArray(32); + memcpy(payment_id_arr->elems, obj->payment_failed.payment_id.data, 32); + int8_tArray payment_hash_arr = init_int8_tArray(32); + memcpy(payment_hash_arr->elems, obj->payment_failed.payment_hash.data, 32); + return 0 /* LDKEvent - PaymentFailed */; (void) payment_id_arr; (void) payment_hash_arr; + } + case LDKEvent_PendingHTLCsForwardable: { + return 0 /* LDKEvent - PendingHTLCsForwardable */; (void) obj->pending_htl_cs_forwardable.time_forwardable; + } + case LDKEvent_SpendableOutputs: { + LDKCVec_SpendableOutputDescriptorZ outputs_var = obj->spendable_outputs.outputs; + uint32_tArray outputs_arr = NULL; + outputs_arr = init_uint32_tArray(outputs_var.datalen); + uint32_t *outputs_arr_ptr = (uint32_t*)(outputs_arr + 4); + for (size_t b = 0; b < outputs_var.datalen; b++) { + uint64_t outputs_conv_27_ref = ((uint64_t)&outputs_var.data[b]) | 1; + outputs_arr_ptr[b] = outputs_conv_27_ref; + } + + return 0 /* LDKEvent - SpendableOutputs */; (void) outputs_arr; + } + case LDKEvent_PaymentForwarded: { + uint64_t fee_earned_msat_ref = ((uint64_t)&obj->payment_forwarded.fee_earned_msat) | 1; + return 0 /* LDKEvent - PaymentForwarded */; (void) fee_earned_msat_ref; (void) obj->payment_forwarded.claim_from_onchain_tx; + } + case LDKEvent_ChannelClosed: { + int8_tArray channel_id_arr = init_int8_tArray(32); + memcpy(channel_id_arr->elems, obj->channel_closed.channel_id.data, 32); + uint64_t reason_ref = ((uint64_t)&obj->channel_closed.reason) | 1; + return 0 /* LDKEvent - ChannelClosed */; (void) channel_id_arr; (void) obj->channel_closed.user_channel_id; (void) reason_ref; + } + case LDKEvent_DiscardFunding: { + int8_tArray channel_id_arr = init_int8_tArray(32); + memcpy(channel_id_arr->elems, obj->discard_funding.channel_id.data, 32); + LDKTransaction transaction_var = obj->discard_funding.transaction; + int8_tArray transaction_arr = init_int8_tArray(transaction_var.datalen); + memcpy(transaction_arr->elems, transaction_var.data, transaction_var.datalen); + return 0 /* LDKEvent - DiscardFunding */; (void) channel_id_arr; (void) transaction_arr; + } + case LDKEvent_PaymentPathSuccessful: { + int8_tArray payment_id_arr = init_int8_tArray(32); + memcpy(payment_id_arr->elems, obj->payment_path_successful.payment_id.data, 32); + int8_tArray payment_hash_arr = init_int8_tArray(32); + memcpy(payment_hash_arr->elems, obj->payment_path_successful.payment_hash.data, 32); + LDKCVec_RouteHopZ path_var = obj->payment_path_successful.path; + uint32_tArray path_arr = NULL; + path_arr = init_uint32_tArray(path_var.datalen); + uint32_t *path_arr_ptr = (uint32_t*)(path_arr + 4); + for (size_t k = 0; k < path_var.datalen; k++) { + LDKRouteHop path_conv_10_var = path_var.data[k]; + uint64_t path_conv_10_ref = 0; + CHECK((((uint64_t)path_conv_10_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&path_conv_10_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_var); + path_conv_10_ref = (uint64_t)path_conv_10_var.inner & ~1; + path_arr_ptr[k] = path_conv_10_ref; + } + + return 0 /* LDKEvent - PaymentPathSuccessful */; (void) payment_id_arr; (void) payment_hash_arr; (void) path_arr; + } + default: abort(); } - uint32_t ret = js_invoke_function_2(j_calls->update_channel_meth, funding_txo_ref, update_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_NoneChannelMonitorUpdateErrZ ret_conv = *(LDKCResult_NoneChannelMonitorUpdateErrZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; } -LDKCVec_MonitorEventZ release_pending_monitor_events_LDKWatch_jcall(const void* this_arg) { - LDKWatch_JCalls *j_calls = (LDKWatch_JCalls*) this_arg; - uint32_tArray ret = js_invoke_function_0(j_calls->release_pending_monitor_events_meth); - LDKCVec_MonitorEventZ ret_constr; - ret_constr.datalen = *((uint32_t*)ret); - if (ret_constr.datalen > 0) - ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKMonitorEvent), "LDKCVec_MonitorEventZ Elements"); - else - ret_constr.data = NULL; - uint32_t* ret_vals = (uint32_t*)(ret + 4); - for (size_t o = 0; o < ret_constr.datalen; o++) { - uint32_t ret_conv_14 = ret_vals[o]; - void* ret_conv_14_ptr = (void*)(((uint64_t)ret_conv_14) & ~1); - CHECK_ACCESS(ret_conv_14_ptr); - LDKMonitorEvent ret_conv_14_conv = *(LDKMonitorEvent*)(ret_conv_14_ptr); - FREE((void*)ret_conv_14); - ret_constr.data[o] = ret_conv_14_conv; +static inline LDKCVec_EventZ CVec_EventZ_clone(const LDKCVec_EventZ *orig) { + LDKCVec_EventZ ret = { .data = MALLOC(sizeof(LDKEvent) * orig->datalen, "LDKCVec_EventZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = Event_clone(&orig->data[i]); } - return ret_constr; + return ret; } -static void LDKWatch_JCalls_cloned(LDKWatch* new_obj) { - LDKWatch_JCalls *j_calls = (LDKWatch_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); +static inline uintptr_t C2Tuple_usizeTransactionZ_get_a(LDKC2Tuple_usizeTransactionZ *NONNULL_PTR owner){ + return owner->a; +} +int64_t __attribute__((visibility("default"))) TS_C2Tuple_usizeTransactionZ_get_a(uint32_t owner) { + LDKC2Tuple_usizeTransactionZ* owner_conv = (LDKC2Tuple_usizeTransactionZ*)(owner & ~1); + int64_t ret_val = C2Tuple_usizeTransactionZ_get_a(owner_conv); + return ret_val; } -static inline LDKWatch LDKWatch_init (/*TODO: JS Object Reference */void* o) { - LDKWatch_JCalls *calls = MALLOC(sizeof(LDKWatch_JCalls), "LDKWatch_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - LDKWatch ret = { - .this_arg = (void*) calls, - .watch_channel = watch_channel_LDKWatch_jcall, - .update_channel = update_channel_LDKWatch_jcall, - .release_pending_monitor_events = release_pending_monitor_events_LDKWatch_jcall, - .free = LDKWatch_JCalls_free, - }; +static inline struct LDKTransaction C2Tuple_usizeTransactionZ_get_b(LDKC2Tuple_usizeTransactionZ *NONNULL_PTR owner){ + return owner->b; +} +int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_usizeTransactionZ_get_b(uint32_t owner) { + LDKC2Tuple_usizeTransactionZ* owner_conv = (LDKC2Tuple_usizeTransactionZ*)(owner & ~1); + LDKTransaction ret_var = C2Tuple_usizeTransactionZ_get_b(owner_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + Transaction_free(ret_var); + return ret_arr; +} + +static inline LDKCVec_C2Tuple_usizeTransactionZZ CVec_C2Tuple_usizeTransactionZZ_clone(const LDKCVec_C2Tuple_usizeTransactionZZ *orig) { + LDKCVec_C2Tuple_usizeTransactionZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_usizeTransactionZ) * orig->datalen, "LDKCVec_C2Tuple_usizeTransactionZZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = C2Tuple_usizeTransactionZ_clone(&orig->data[i]); + } return ret; } -long __attribute__((visibility("default"))) TS_LDKWatch_new(/*TODO: JS Object Reference */void* o) { - LDKWatch *res_ptr = MALLOC(sizeof(LDKWatch), "LDKWatch"); - *res_ptr = LDKWatch_init(o); - return (long)res_ptr; +static inline uint32_t C2Tuple_u32TxOutZ_get_a(LDKC2Tuple_u32TxOutZ *NONNULL_PTR owner){ + return owner->a; } -uint32_t __attribute__((visibility("default"))) TS_Watch_watch_channel(uint32_t this_arg, uint32_t funding_txo, uint32_t monitor) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKWatch* this_arg_conv = (LDKWatch*)this_arg_ptr; - LDKOutPoint funding_txo_conv; - funding_txo_conv.inner = (void*)(funding_txo & (~1)); - funding_txo_conv.is_owned = (funding_txo & 1) || (funding_txo == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_conv); - funding_txo_conv = OutPoint_clone(&funding_txo_conv); - LDKChannelMonitor monitor_conv; - monitor_conv.inner = (void*)(monitor & (~1)); - monitor_conv.is_owned = (monitor & 1) || (monitor == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(monitor_conv); - monitor_conv = ChannelMonitor_clone(&monitor_conv); - LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); - *ret_conv = (this_arg_conv->watch_channel)(this_arg_conv->this_arg, funding_txo_conv, monitor_conv); - return (uint64_t)ret_conv; +int32_t __attribute__((visibility("default"))) TS_C2Tuple_u32TxOutZ_get_a(uint32_t owner) { + LDKC2Tuple_u32TxOutZ* owner_conv = (LDKC2Tuple_u32TxOutZ*)(owner & ~1); + int32_t ret_val = C2Tuple_u32TxOutZ_get_a(owner_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Watch_update_channel(uint32_t this_arg, uint32_t funding_txo, uint32_t update) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKWatch* this_arg_conv = (LDKWatch*)this_arg_ptr; - LDKOutPoint funding_txo_conv; - funding_txo_conv.inner = (void*)(funding_txo & (~1)); - funding_txo_conv.is_owned = (funding_txo & 1) || (funding_txo == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_conv); - funding_txo_conv = OutPoint_clone(&funding_txo_conv); - LDKChannelMonitorUpdate update_conv; - update_conv.inner = (void*)(update & (~1)); - update_conv.is_owned = (update & 1) || (update == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_conv); - update_conv = ChannelMonitorUpdate_clone(&update_conv); - LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); - *ret_conv = (this_arg_conv->update_channel)(this_arg_conv->this_arg, funding_txo_conv, update_conv); - return (uint64_t)ret_conv; +static inline struct LDKTxOut C2Tuple_u32TxOutZ_get_b(LDKC2Tuple_u32TxOutZ *NONNULL_PTR owner){ + return TxOut_clone(&owner->b); +} +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_u32TxOutZ_get_b(uint32_t owner) { + LDKC2Tuple_u32TxOutZ* owner_conv = (LDKC2Tuple_u32TxOutZ*)(owner & ~1); + LDKTxOut* ret_ref = MALLOC(sizeof(LDKTxOut), "LDKTxOut"); + *ret_ref = C2Tuple_u32TxOutZ_get_b(owner_conv); + return (uint64_t)ret_ref; } -uint32_tArray __attribute__((visibility("default"))) TS_Watch_release_pending_monitor_events(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKWatch* this_arg_conv = (LDKWatch*)this_arg_ptr; - LDKCVec_MonitorEventZ ret_var = (this_arg_conv->release_pending_monitor_events)(this_arg_conv->this_arg); +static inline LDKCVec_C2Tuple_u32TxOutZZ CVec_C2Tuple_u32TxOutZZ_clone(const LDKCVec_C2Tuple_u32TxOutZZ *orig) { + LDKCVec_C2Tuple_u32TxOutZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_u32TxOutZ) * orig->datalen, "LDKCVec_C2Tuple_u32TxOutZZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = C2Tuple_u32TxOutZ_clone(&orig->data[i]); + } + return ret; +} +static inline struct LDKThirtyTwoBytes C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_a(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ *NONNULL_PTR owner){ + return ThirtyTwoBytes_clone(&owner->a); +} +int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_a(uint32_t owner) { + LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* owner_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_a(owner_conv).data, 32); + return ret_arr; +} + +static inline struct LDKCVec_C2Tuple_u32TxOutZZ C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_b(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ *NONNULL_PTR owner){ + return CVec_C2Tuple_u32TxOutZZ_clone(&owner->b); +} +uint32_tArray __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_b(uint32_t owner) { + LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* owner_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ*)(owner & ~1); + LDKCVec_C2Tuple_u32TxOutZZ ret_var = C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_b(owner_conv); uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); + ret_arr = init_uint32_tArray(ret_var.datalen); uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t o = 0; o < ret_var.datalen; o++) { - LDKMonitorEvent *ret_conv_14_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); - *ret_conv_14_copy = ret_var.data[o]; - uint64_t ret_conv_14_ref = (uint64_t)ret_conv_14_copy; - ret_arr_ptr[o] = ret_conv_14_ref; + for (size_t u = 0; u < ret_var.datalen; u++) { + LDKC2Tuple_u32TxOutZ* ret_conv_20_conv = MALLOC(sizeof(LDKC2Tuple_u32TxOutZ), "LDKC2Tuple_u32TxOutZ"); + *ret_conv_20_conv = ret_var.data[u]; + ret_arr_ptr[u] = ((uint64_t)ret_conv_20_conv); } FREE(ret_var.data); return ret_arr; } -typedef struct LDKBroadcasterInterface_JCalls { - atomic_size_t refcnt; - uint32_t broadcast_transaction_meth; -} LDKBroadcasterInterface_JCalls; -static void LDKBroadcasterInterface_JCalls_free(void* this_arg) { - LDKBroadcasterInterface_JCalls *j_calls = (LDKBroadcasterInterface_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->broadcast_transaction_meth); - FREE(j_calls); +static inline LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ CVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ_clone(const LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ *orig) { + LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ) * orig->datalen, "LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(&orig->data[i]); } + return ret; } -void broadcast_transaction_LDKBroadcasterInterface_jcall(const void* this_arg, LDKTransaction tx) { - LDKBroadcasterInterface_JCalls *j_calls = (LDKBroadcasterInterface_JCalls*) this_arg; - LDKTransaction tx_var = tx; - int8_tArray tx_arr = init_arr(tx_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(tx_arr + 4), tx_var.data, tx_var.datalen); - Transaction_free(tx_var); - js_invoke_function_1(j_calls->broadcast_transaction_meth, tx_arr); +static inline LDKCVec_TxidZ CVec_ThirtyTwoBytesZ_clone(const LDKCVec_TxidZ *orig) { + LDKCVec_TxidZ ret = { .data = MALLOC(sizeof(LDKThirtyTwoBytes) * orig->datalen, "LDKCVec_TxidZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = ThirtyTwoBytes_clone(&orig->data[i]); + } + return ret; } -static void LDKBroadcasterInterface_JCalls_cloned(LDKBroadcasterInterface* new_obj) { - LDKBroadcasterInterface_JCalls *j_calls = (LDKBroadcasterInterface_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); +uint32_t __attribute__((visibility("default"))) TS_LDKBalance_ref_from_ptr(uint32_t ptr) { + LDKBalance *obj = (LDKBalance*)(ptr & ~1); + switch(obj->tag) { + case LDKBalance_ClaimableOnChannelClose: { + return 0 /* LDKBalance - ClaimableOnChannelClose */; (void) obj->claimable_on_channel_close.claimable_amount_satoshis; + } + case LDKBalance_ClaimableAwaitingConfirmations: { + return 0 /* LDKBalance - ClaimableAwaitingConfirmations */; (void) obj->claimable_awaiting_confirmations.claimable_amount_satoshis; (void) obj->claimable_awaiting_confirmations.confirmation_height; + } + case LDKBalance_ContentiousClaimable: { + return 0 /* LDKBalance - ContentiousClaimable */; (void) obj->contentious_claimable.claimable_amount_satoshis; (void) obj->contentious_claimable.timeout_height; + } + case LDKBalance_MaybeClaimableHTLCAwaitingTimeout: { + return 0 /* LDKBalance - MaybeClaimableHTLCAwaitingTimeout */; (void) obj->maybe_claimable_htlc_awaiting_timeout.claimable_amount_satoshis; (void) obj->maybe_claimable_htlc_awaiting_timeout.claimable_height; + } + default: abort(); + } } -static inline LDKBroadcasterInterface LDKBroadcasterInterface_init (/*TODO: JS Object Reference */void* o) { - LDKBroadcasterInterface_JCalls *calls = MALLOC(sizeof(LDKBroadcasterInterface_JCalls), "LDKBroadcasterInterface_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - - LDKBroadcasterInterface ret = { - .this_arg = (void*) calls, - .broadcast_transaction = broadcast_transaction_LDKBroadcasterInterface_jcall, - .free = LDKBroadcasterInterface_JCalls_free, - }; +static inline LDKCVec_BalanceZ CVec_BalanceZ_clone(const LDKCVec_BalanceZ *orig) { + LDKCVec_BalanceZ ret = { .data = MALLOC(sizeof(LDKBalance) * orig->datalen, "LDKCVec_BalanceZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = Balance_clone(&orig->data[i]); + } return ret; } -long __attribute__((visibility("default"))) TS_LDKBroadcasterInterface_new(/*TODO: JS Object Reference */void* o) { - LDKBroadcasterInterface *res_ptr = MALLOC(sizeof(LDKBroadcasterInterface), "LDKBroadcasterInterface"); - *res_ptr = LDKBroadcasterInterface_init(o); - return (long)res_ptr; +static inline struct LDKSignature C2Tuple_SignatureCVec_SignatureZZ_get_a(LDKC2Tuple_SignatureCVec_SignatureZZ *NONNULL_PTR owner){ + return owner->a; } -void __attribute__((visibility("default"))) TS_BroadcasterInterface_broadcast_transaction(uint32_t this_arg, int8_tArray tx) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKBroadcasterInterface* this_arg_conv = (LDKBroadcasterInterface*)this_arg_ptr; - LDKTransaction tx_ref; - tx_ref.datalen = *((uint32_t*)tx); - tx_ref.data = MALLOC(tx_ref.datalen, "LDKTransaction Bytes"); - memcpy(tx_ref.data, (uint8_t*)(tx + 4), tx_ref.datalen); - tx_ref.data_is_owned = true; - (this_arg_conv->broadcast_transaction)(this_arg_conv->this_arg, tx_ref); +int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_SignatureCVec_SignatureZZ_get_a(uint32_t owner) { + LDKC2Tuple_SignatureCVec_SignatureZZ* owner_conv = (LDKC2Tuple_SignatureCVec_SignatureZZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, C2Tuple_SignatureCVec_SignatureZZ_get_a(owner_conv).compact_form, 64); + return ret_arr; } -typedef struct LDKKeysInterface_JCalls { +static inline struct LDKCVec_SignatureZ C2Tuple_SignatureCVec_SignatureZZ_get_b(LDKC2Tuple_SignatureCVec_SignatureZZ *NONNULL_PTR owner){ + return owner->b; +} +ptrArray __attribute__((visibility("default"))) TS_C2Tuple_SignatureCVec_SignatureZZ_get_b(uint32_t owner) { + LDKC2Tuple_SignatureCVec_SignatureZZ* owner_conv = (LDKC2Tuple_SignatureCVec_SignatureZZ*)(owner & ~1); + LDKCVec_SignatureZ ret_var = C2Tuple_SignatureCVec_SignatureZZ_get_b(owner_conv); + ptrArray ret_arr = NULL; + ret_arr = init_ptrArray(ret_var.datalen); + int8_tArray *ret_arr_ptr = (int8_tArray*)(ret_arr + 4); + for (size_t m = 0; m < ret_var.datalen; m++) { + int8_tArray ret_conv_12_arr = init_int8_tArray(64); + memcpy(ret_conv_12_arr->elems, ret_var.data[m].compact_form, 64); + ret_arr_ptr[m] = ret_conv_12_arr; + } + + FREE(ret_var.data); + return ret_arr; +} + +static inline struct LDKC2Tuple_SignatureCVec_SignatureZZ CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_ok(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return C2Tuple_SignatureCVec_SignatureZZ_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_ok(uint32_t owner) { + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* owner_conv = (LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(owner & ~1); + LDKC2Tuple_SignatureCVec_SignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_SignatureCVec_SignatureZZ), "LDKC2Tuple_SignatureCVec_SignatureZZ"); + *ret_conv = CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_ok(owner_conv); + return ((uint64_t)ret_conv); +} + +static inline void CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_err(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; +} +void __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_err(uint32_t owner) { + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* owner_conv = (LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(owner & ~1); + CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_err(owner_conv); +} + +static inline struct LDKSignature CResult_SignatureNoneZ_get_ok(LDKCResult_SignatureNoneZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; +} +int8_tArray __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_get_ok(uint32_t owner) { + LDKCResult_SignatureNoneZ* owner_conv = (LDKCResult_SignatureNoneZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, CResult_SignatureNoneZ_get_ok(owner_conv).compact_form, 64); + return ret_arr; +} + +static inline void CResult_SignatureNoneZ_get_err(LDKCResult_SignatureNoneZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; +} +void __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_get_err(uint32_t owner) { + LDKCResult_SignatureNoneZ* owner_conv = (LDKCResult_SignatureNoneZ*)(owner & ~1); + CResult_SignatureNoneZ_get_err(owner_conv); +} + +typedef struct LDKBaseSign_JCalls { atomic_size_t refcnt; - uint32_t get_node_secret_meth; - uint32_t get_destination_script_meth; - uint32_t get_shutdown_scriptpubkey_meth; - uint32_t get_channel_signer_meth; - uint32_t get_secure_random_bytes_meth; - uint32_t read_chan_signer_meth; - uint32_t sign_invoice_meth; - uint32_t get_inbound_payment_key_material_meth; -} LDKKeysInterface_JCalls; -static void LDKKeysInterface_JCalls_free(void* this_arg) { - LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; + uint32_t get_per_commitment_point_meth; + uint32_t release_commitment_secret_meth; + uint32_t validate_holder_commitment_meth; + uint32_t channel_keys_id_meth; + uint32_t sign_counterparty_commitment_meth; + uint32_t validate_counterparty_revocation_meth; + uint32_t sign_holder_commitment_and_htlcs_meth; + uint32_t sign_justice_revoked_output_meth; + uint32_t sign_justice_revoked_htlc_meth; + uint32_t sign_counterparty_htlc_transaction_meth; + uint32_t sign_closing_transaction_meth; + uint32_t sign_channel_announcement_meth; + uint32_t ready_channel_meth; +} LDKBaseSign_JCalls; +static void LDKBaseSign_JCalls_free(void* this_arg) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->get_node_secret_meth); - js_free(j_calls->get_destination_script_meth); - js_free(j_calls->get_shutdown_scriptpubkey_meth); - js_free(j_calls->get_channel_signer_meth); - js_free(j_calls->get_secure_random_bytes_meth); - js_free(j_calls->read_chan_signer_meth); - js_free(j_calls->sign_invoice_meth); - js_free(j_calls->get_inbound_payment_key_material_meth); + js_free_function_ptr(j_calls->get_per_commitment_point_meth); + js_free_function_ptr(j_calls->release_commitment_secret_meth); + js_free_function_ptr(j_calls->validate_holder_commitment_meth); + js_free_function_ptr(j_calls->channel_keys_id_meth); + js_free_function_ptr(j_calls->sign_counterparty_commitment_meth); + js_free_function_ptr(j_calls->validate_counterparty_revocation_meth); + js_free_function_ptr(j_calls->sign_holder_commitment_and_htlcs_meth); + js_free_function_ptr(j_calls->sign_justice_revoked_output_meth); + js_free_function_ptr(j_calls->sign_justice_revoked_htlc_meth); + js_free_function_ptr(j_calls->sign_counterparty_htlc_transaction_meth); + js_free_function_ptr(j_calls->sign_closing_transaction_meth); + js_free_function_ptr(j_calls->sign_channel_announcement_meth); + js_free_function_ptr(j_calls->ready_channel_meth); FREE(j_calls); } } -LDKSecretKey get_node_secret_LDKKeysInterface_jcall(const void* this_arg) { - LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; - int8_tArray ret = js_invoke_function_0(j_calls->get_node_secret_meth); - LDKSecretKey ret_ref; - CHECK(*((uint32_t*)ret) == 32); - memcpy(ret_ref.bytes, (uint8_t*)(ret + 4), 32); +LDKPublicKey get_per_commitment_point_LDKBaseSign_jcall(const void* this_arg, uint64_t idx) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + int8_tArray ret = (int8_tArray)js_invoke_function_1(j_calls->get_per_commitment_point_meth, (uint32_t)idx); + LDKPublicKey ret_ref; + CHECK(ret->arr_len == 33); + memcpy(ret_ref.compressed_form, ret->elems, 33); return ret_ref; } -LDKCVec_u8Z get_destination_script_LDKKeysInterface_jcall(const void* this_arg) { - LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; - int8_tArray ret = js_invoke_function_0(j_calls->get_destination_script_meth); - LDKCVec_u8Z ret_ref; - ret_ref.datalen = *((uint32_t*)ret); - ret_ref.data = MALLOC(ret_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(ret_ref.data, (uint8_t*)(ret + 4), ret_ref.datalen); +LDKThirtyTwoBytes release_commitment_secret_LDKBaseSign_jcall(const void* this_arg, uint64_t idx) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + int8_tArray ret = (int8_tArray)js_invoke_function_1(j_calls->release_commitment_secret_meth, (uint32_t)idx); + LDKThirtyTwoBytes ret_ref; + CHECK(ret->arr_len == 32); + memcpy(ret_ref.data, ret->elems, 32); return ret_ref; } -LDKShutdownScript get_shutdown_scriptpubkey_LDKKeysInterface_jcall(const void* this_arg) { - LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; - uint32_t ret = js_invoke_function_0(j_calls->get_shutdown_scriptpubkey_meth); - LDKShutdownScript ret_conv; - ret_conv.inner = (void*)(ret & (~1)); - ret_conv.is_owned = (ret & 1) || (ret == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv); - return ret_conv; -} -LDKSign get_channel_signer_LDKKeysInterface_jcall(const void* this_arg, bool inbound, uint64_t channel_value_satoshis) { - LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; - uint32_t ret = js_invoke_function_2(j_calls->get_channel_signer_meth, inbound, channel_value_satoshis); +LDKCResult_NoneNoneZ validate_holder_commitment_LDKBaseSign_jcall(const void* this_arg, const LDKHolderCommitmentTransaction * holder_tx) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + LDKHolderCommitmentTransaction holder_tx_var = *holder_tx; + uint64_t holder_tx_ref = 0; + holder_tx_var = HolderCommitmentTransaction_clone(holder_tx); + CHECK((((uint64_t)holder_tx_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&holder_tx_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(holder_tx_var); + holder_tx_ref = (uint64_t)holder_tx_var.inner; + if (holder_tx_var.is_owned) { + holder_tx_ref |= 1; + } + uint32_t ret = js_invoke_function_1(j_calls->validate_holder_commitment_meth, (uint32_t)holder_tx_ref); void* ret_ptr = (void*)(((uint64_t)ret) & ~1); CHECK_ACCESS(ret_ptr); - LDKSign ret_conv = *(LDKSign*)(ret_ptr); + LDKCResult_NoneNoneZ ret_conv = *(LDKCResult_NoneNoneZ*)(ret_ptr); FREE((void*)ret); return ret_conv; } -LDKThirtyTwoBytes get_secure_random_bytes_LDKKeysInterface_jcall(const void* this_arg) { - LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; - int8_tArray ret = js_invoke_function_0(j_calls->get_secure_random_bytes_meth); +LDKThirtyTwoBytes channel_keys_id_LDKBaseSign_jcall(const void* this_arg) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + int8_tArray ret = (int8_tArray)js_invoke_function_0(j_calls->channel_keys_id_meth); LDKThirtyTwoBytes ret_ref; - CHECK(*((uint32_t*)ret) == 32); - memcpy(ret_ref.data, (uint8_t*)(ret + 4), 32); + CHECK(ret->arr_len == 32); + memcpy(ret_ref.data, ret->elems, 32); return ret_ref; } -LDKCResult_SignDecodeErrorZ read_chan_signer_LDKKeysInterface_jcall(const void* this_arg, LDKu8slice reader) { - LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; - LDKu8slice reader_var = reader; - int8_tArray reader_arr = init_arr(reader_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(reader_arr + 4), reader_var.data, reader_var.datalen); - uint32_t ret = js_invoke_function_1(j_calls->read_chan_signer_meth, reader_arr); +LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ sign_counterparty_commitment_LDKBaseSign_jcall(const void* this_arg, const LDKCommitmentTransaction * commitment_tx) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + LDKCommitmentTransaction commitment_tx_var = *commitment_tx; + uint64_t commitment_tx_ref = 0; + commitment_tx_var = CommitmentTransaction_clone(commitment_tx); + CHECK((((uint64_t)commitment_tx_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&commitment_tx_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_var); + commitment_tx_ref = (uint64_t)commitment_tx_var.inner; + if (commitment_tx_var.is_owned) { + commitment_tx_ref |= 1; + } + uint32_t ret = js_invoke_function_1(j_calls->sign_counterparty_commitment_meth, (uint32_t)commitment_tx_ref); void* ret_ptr = (void*)(((uint64_t)ret) & ~1); CHECK_ACCESS(ret_ptr); - LDKCResult_SignDecodeErrorZ ret_conv = *(LDKCResult_SignDecodeErrorZ*)(ret_ptr); + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ ret_conv = *(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(ret_ptr); FREE((void*)ret); return ret_conv; } -LDKCResult_RecoverableSignatureNoneZ sign_invoice_LDKKeysInterface_jcall(const void* this_arg, LDKCVec_u8Z invoice_preimage) { - LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; - LDKCVec_u8Z invoice_preimage_var = invoice_preimage; - int8_tArray invoice_preimage_arr = init_arr(invoice_preimage_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(invoice_preimage_arr + 4), invoice_preimage_var.data, invoice_preimage_var.datalen); - CVec_u8Z_free(invoice_preimage_var); - uint32_t ret = js_invoke_function_1(j_calls->sign_invoice_meth, invoice_preimage_arr); +LDKCResult_NoneNoneZ validate_counterparty_revocation_LDKBaseSign_jcall(const void* this_arg, uint64_t idx, const uint8_t (* secret)[32]) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + int8_tArray secret_arr = init_int8_tArray(32); + memcpy(secret_arr->elems, *secret, 32); + uint32_t ret = js_invoke_function_2(j_calls->validate_counterparty_revocation_meth, (uint32_t)idx, (uint32_t)secret_arr); void* ret_ptr = (void*)(((uint64_t)ret) & ~1); CHECK_ACCESS(ret_ptr); - LDKCResult_RecoverableSignatureNoneZ ret_conv = *(LDKCResult_RecoverableSignatureNoneZ*)(ret_ptr); + LDKCResult_NoneNoneZ ret_conv = *(LDKCResult_NoneNoneZ*)(ret_ptr); FREE((void*)ret); return ret_conv; } -LDKThirtyTwoBytes get_inbound_payment_key_material_LDKKeysInterface_jcall(const void* this_arg) { - LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; - int8_tArray ret = js_invoke_function_0(j_calls->get_inbound_payment_key_material_meth); - LDKThirtyTwoBytes ret_ref; - CHECK(*((uint32_t*)ret) == 32); - memcpy(ret_ref.data, (uint8_t*)(ret + 4), 32); - return ret_ref; -} -static void LDKKeysInterface_JCalls_cloned(LDKKeysInterface* new_obj) { - LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); -} -static inline LDKKeysInterface LDKKeysInterface_init (/*TODO: JS Object Reference */void* o) { - LDKKeysInterface_JCalls *calls = MALLOC(sizeof(LDKKeysInterface_JCalls), "LDKKeysInterface_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - - LDKKeysInterface ret = { - .this_arg = (void*) calls, - .get_node_secret = get_node_secret_LDKKeysInterface_jcall, - .get_destination_script = get_destination_script_LDKKeysInterface_jcall, - .get_shutdown_scriptpubkey = get_shutdown_scriptpubkey_LDKKeysInterface_jcall, - .get_channel_signer = get_channel_signer_LDKKeysInterface_jcall, - .get_secure_random_bytes = get_secure_random_bytes_LDKKeysInterface_jcall, - .read_chan_signer = read_chan_signer_LDKKeysInterface_jcall, - .sign_invoice = sign_invoice_LDKKeysInterface_jcall, - .get_inbound_payment_key_material = get_inbound_payment_key_material_LDKKeysInterface_jcall, - .free = LDKKeysInterface_JCalls_free, - }; - return ret; -} -long __attribute__((visibility("default"))) TS_LDKKeysInterface_new(/*TODO: JS Object Reference */void* o) { - LDKKeysInterface *res_ptr = MALLOC(sizeof(LDKKeysInterface), "LDKKeysInterface"); - *res_ptr = LDKKeysInterface_init(o); - return (long)res_ptr; +LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ sign_holder_commitment_and_htlcs_LDKBaseSign_jcall(const void* this_arg, const LDKHolderCommitmentTransaction * commitment_tx) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + LDKHolderCommitmentTransaction commitment_tx_var = *commitment_tx; + uint64_t commitment_tx_ref = 0; + commitment_tx_var = HolderCommitmentTransaction_clone(commitment_tx); + CHECK((((uint64_t)commitment_tx_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&commitment_tx_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_var); + commitment_tx_ref = (uint64_t)commitment_tx_var.inner; + if (commitment_tx_var.is_owned) { + commitment_tx_ref |= 1; + } + uint32_t ret = js_invoke_function_1(j_calls->sign_holder_commitment_and_htlcs_meth, (uint32_t)commitment_tx_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ ret_conv = *(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_KeysInterface_get_node_secret(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), (this_arg_conv->get_node_secret)(this_arg_conv->this_arg).bytes, 32); - return ret_arr; +LDKCResult_SignatureNoneZ sign_justice_revoked_output_LDKBaseSign_jcall(const void* this_arg, LDKTransaction justice_tx, uintptr_t input, uint64_t amount, const uint8_t (* per_commitment_key)[32]) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + LDKTransaction justice_tx_var = justice_tx; + int8_tArray justice_tx_arr = init_int8_tArray(justice_tx_var.datalen); + memcpy(justice_tx_arr->elems, justice_tx_var.data, justice_tx_var.datalen); + Transaction_free(justice_tx_var); + int8_tArray per_commitment_key_arr = init_int8_tArray(32); + memcpy(per_commitment_key_arr->elems, *per_commitment_key, 32); + uint32_t ret = js_invoke_function_4(j_calls->sign_justice_revoked_output_meth, (uint32_t)justice_tx_arr, (uint32_t)input, (uint32_t)amount, (uint32_t)per_commitment_key_arr); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_SignatureNoneZ ret_conv = *(LDKCResult_SignatureNoneZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } - -int8_tArray __attribute__((visibility("default"))) TS_KeysInterface_get_destination_script(uint32_t this_arg) { +LDKCResult_SignatureNoneZ sign_justice_revoked_htlc_LDKBaseSign_jcall(const void* this_arg, LDKTransaction justice_tx, uintptr_t input, uint64_t amount, const uint8_t (* per_commitment_key)[32], const LDKHTLCOutputInCommitment * htlc) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + LDKTransaction justice_tx_var = justice_tx; + int8_tArray justice_tx_arr = init_int8_tArray(justice_tx_var.datalen); + memcpy(justice_tx_arr->elems, justice_tx_var.data, justice_tx_var.datalen); + Transaction_free(justice_tx_var); + int8_tArray per_commitment_key_arr = init_int8_tArray(32); + memcpy(per_commitment_key_arr->elems, *per_commitment_key, 32); + LDKHTLCOutputInCommitment htlc_var = *htlc; + uint64_t htlc_ref = 0; + htlc_var = HTLCOutputInCommitment_clone(htlc); + CHECK((((uint64_t)htlc_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&htlc_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_var); + htlc_ref = (uint64_t)htlc_var.inner; + if (htlc_var.is_owned) { + htlc_ref |= 1; + } + uint32_t ret = js_invoke_function_5(j_calls->sign_justice_revoked_htlc_meth, (uint32_t)justice_tx_arr, (uint32_t)input, (uint32_t)amount, (uint32_t)per_commitment_key_arr, (uint32_t)htlc_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_SignatureNoneZ ret_conv = *(LDKCResult_SignatureNoneZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; +} +LDKCResult_SignatureNoneZ sign_counterparty_htlc_transaction_LDKBaseSign_jcall(const void* this_arg, LDKTransaction htlc_tx, uintptr_t input, uint64_t amount, LDKPublicKey per_commitment_point, const LDKHTLCOutputInCommitment * htlc) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + LDKTransaction htlc_tx_var = htlc_tx; + int8_tArray htlc_tx_arr = init_int8_tArray(htlc_tx_var.datalen); + memcpy(htlc_tx_arr->elems, htlc_tx_var.data, htlc_tx_var.datalen); + Transaction_free(htlc_tx_var); + int8_tArray per_commitment_point_arr = init_int8_tArray(33); + memcpy(per_commitment_point_arr->elems, per_commitment_point.compressed_form, 33); + LDKHTLCOutputInCommitment htlc_var = *htlc; + uint64_t htlc_ref = 0; + htlc_var = HTLCOutputInCommitment_clone(htlc); + CHECK((((uint64_t)htlc_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&htlc_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_var); + htlc_ref = (uint64_t)htlc_var.inner; + if (htlc_var.is_owned) { + htlc_ref |= 1; + } + uint32_t ret = js_invoke_function_5(j_calls->sign_counterparty_htlc_transaction_meth, (uint32_t)htlc_tx_arr, (uint32_t)input, (uint32_t)amount, (uint32_t)per_commitment_point_arr, (uint32_t)htlc_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_SignatureNoneZ ret_conv = *(LDKCResult_SignatureNoneZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; +} +LDKCResult_SignatureNoneZ sign_closing_transaction_LDKBaseSign_jcall(const void* this_arg, const LDKClosingTransaction * closing_tx) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + LDKClosingTransaction closing_tx_var = *closing_tx; + uint64_t closing_tx_ref = 0; + closing_tx_var = ClosingTransaction_clone(closing_tx); + CHECK((((uint64_t)closing_tx_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&closing_tx_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(closing_tx_var); + closing_tx_ref = (uint64_t)closing_tx_var.inner; + if (closing_tx_var.is_owned) { + closing_tx_ref |= 1; + } + uint32_t ret = js_invoke_function_1(j_calls->sign_closing_transaction_meth, (uint32_t)closing_tx_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_SignatureNoneZ ret_conv = *(LDKCResult_SignatureNoneZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; +} +LDKCResult_SignatureNoneZ sign_channel_announcement_LDKBaseSign_jcall(const void* this_arg, const LDKUnsignedChannelAnnouncement * msg) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + LDKUnsignedChannelAnnouncement msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = UnsignedChannelAnnouncement_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + uint32_t ret = js_invoke_function_1(j_calls->sign_channel_announcement_meth, (uint32_t)msg_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_SignatureNoneZ ret_conv = *(LDKCResult_SignatureNoneZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; +} +void ready_channel_LDKBaseSign_jcall(void* this_arg, const LDKChannelTransactionParameters * channel_parameters) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) this_arg; + LDKChannelTransactionParameters channel_parameters_var = *channel_parameters; + uint64_t channel_parameters_ref = 0; + channel_parameters_var = ChannelTransactionParameters_clone(channel_parameters); + CHECK((((uint64_t)channel_parameters_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&channel_parameters_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_parameters_var); + channel_parameters_ref = (uint64_t)channel_parameters_var.inner; + if (channel_parameters_var.is_owned) { + channel_parameters_ref |= 1; + } + js_invoke_function_1(j_calls->ready_channel_meth, (uint32_t)channel_parameters_ref); +} +static void LDKBaseSign_JCalls_cloned(LDKBaseSign* new_obj) { + LDKBaseSign_JCalls *j_calls = (LDKBaseSign_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); +} +static inline LDKBaseSign LDKBaseSign_init (/*TODO: JS Object Reference */void* o, uint32_t pubkeys) { + LDKBaseSign_JCalls *calls = MALLOC(sizeof(LDKBaseSign_JCalls), "LDKBaseSign_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o + + LDKChannelPublicKeys pubkeys_conv; + pubkeys_conv.inner = (void*)(pubkeys & (~1)); + pubkeys_conv.is_owned = (pubkeys & 1) || (pubkeys == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(pubkeys_conv); + + LDKBaseSign ret = { + .this_arg = (void*) calls, + .get_per_commitment_point = get_per_commitment_point_LDKBaseSign_jcall, + .release_commitment_secret = release_commitment_secret_LDKBaseSign_jcall, + .validate_holder_commitment = validate_holder_commitment_LDKBaseSign_jcall, + .channel_keys_id = channel_keys_id_LDKBaseSign_jcall, + .sign_counterparty_commitment = sign_counterparty_commitment_LDKBaseSign_jcall, + .validate_counterparty_revocation = validate_counterparty_revocation_LDKBaseSign_jcall, + .sign_holder_commitment_and_htlcs = sign_holder_commitment_and_htlcs_LDKBaseSign_jcall, + .sign_justice_revoked_output = sign_justice_revoked_output_LDKBaseSign_jcall, + .sign_justice_revoked_htlc = sign_justice_revoked_htlc_LDKBaseSign_jcall, + .sign_counterparty_htlc_transaction = sign_counterparty_htlc_transaction_LDKBaseSign_jcall, + .sign_closing_transaction = sign_closing_transaction_LDKBaseSign_jcall, + .sign_channel_announcement = sign_channel_announcement_LDKBaseSign_jcall, + .ready_channel = ready_channel_LDKBaseSign_jcall, + .free = LDKBaseSign_JCalls_free, + .pubkeys = pubkeys_conv, + .set_pubkeys = NULL, + }; + return ret; +} +long __attribute__((visibility("default"))) TS_LDKBaseSign_new(/*TODO: JS Object Reference */void* o, uint32_t pubkeys) { + LDKBaseSign *res_ptr = MALLOC(sizeof(LDKBaseSign), "LDKBaseSign"); + *res_ptr = LDKBaseSign_init(o, pubkeys); + return (long)res_ptr; +} +int8_tArray __attribute__((visibility("default"))) TS_BaseSign_get_per_commitment_point(uint32_t this_arg, int64_t idx) { void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; - LDKCVec_u8Z ret_var = (this_arg_conv->get_destination_script)(this_arg_conv->this_arg); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, (this_arg_conv->get_per_commitment_point)(this_arg_conv->this_arg, idx).compressed_form, 33); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_KeysInterface_get_shutdown_scriptpubkey(uint32_t this_arg) { +int8_tArray __attribute__((visibility("default"))) TS_BaseSign_release_commitment_secret(uint32_t this_arg, int64_t idx) { void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; - LDKShutdownScript ret_var = (this_arg_conv->get_shutdown_scriptpubkey)(this_arg_conv->this_arg); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, (this_arg_conv->release_commitment_secret)(this_arg_conv->this_arg, idx).data, 32); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_KeysInterface_get_channel_signer(uint32_t this_arg, jboolean inbound, int64_t channel_value_satoshis) { +uint32_t __attribute__((visibility("default"))) TS_BaseSign_validate_holder_commitment(uint32_t this_arg, uint32_t holder_tx) { void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; - LDKSign* ret_ret = MALLOC(sizeof(LDKSign), "LDKSign"); - *ret_ret = (this_arg_conv->get_channel_signer)(this_arg_conv->this_arg, inbound, channel_value_satoshis); - return (uint64_t)ret_ret; + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + LDKHolderCommitmentTransaction holder_tx_conv; + holder_tx_conv.inner = (void*)(holder_tx & (~1)); + holder_tx_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(holder_tx_conv); + LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); + *ret_conv = (this_arg_conv->validate_holder_commitment)(this_arg_conv->this_arg, &holder_tx_conv); + return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_KeysInterface_get_secure_random_bytes(uint32_t this_arg) { +int8_tArray __attribute__((visibility("default"))) TS_BaseSign_channel_keys_id(uint32_t this_arg) { void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), (this_arg_conv->get_secure_random_bytes)(this_arg_conv->this_arg).data, 32); + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, (this_arg_conv->channel_keys_id)(this_arg_conv->this_arg).data, 32); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_KeysInterface_read_chan_signer(uint32_t this_arg, int8_tArray reader) { +uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_counterparty_commitment(uint32_t this_arg, uint32_t commitment_tx) { void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; - LDKu8slice reader_ref; - reader_ref.datalen = *((uint32_t*)reader); - reader_ref.data = (int8_t*)(reader + 4); - LDKCResult_SignDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SignDecodeErrorZ), "LDKCResult_SignDecodeErrorZ"); - *ret_conv = (this_arg_conv->read_chan_signer)(this_arg_conv->this_arg, reader_ref); + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + LDKCommitmentTransaction commitment_tx_conv; + commitment_tx_conv.inner = (void*)(commitment_tx & (~1)); + commitment_tx_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_conv); + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ), "LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ"); + *ret_conv = (this_arg_conv->sign_counterparty_commitment)(this_arg_conv->this_arg, &commitment_tx_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_KeysInterface_sign_invoice(uint32_t this_arg, int8_tArray invoice_preimage) { +uint32_t __attribute__((visibility("default"))) TS_BaseSign_validate_counterparty_revocation(uint32_t this_arg, int64_t idx, int8_tArray secret) { void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; - LDKCVec_u8Z invoice_preimage_ref; - invoice_preimage_ref.datalen = *((uint32_t*)invoice_preimage); - invoice_preimage_ref.data = MALLOC(invoice_preimage_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(invoice_preimage_ref.data, (uint8_t*)(invoice_preimage + 4), invoice_preimage_ref.datalen); - LDKCResult_RecoverableSignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_RecoverableSignatureNoneZ), "LDKCResult_RecoverableSignatureNoneZ"); - *ret_conv = (this_arg_conv->sign_invoice)(this_arg_conv->this_arg, invoice_preimage_ref); + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + unsigned char secret_arr[32]; + CHECK(secret->arr_len == 32); + memcpy(secret_arr, secret->elems, 32); + unsigned char (*secret_ref)[32] = &secret_arr; + LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); + *ret_conv = (this_arg_conv->validate_counterparty_revocation)(this_arg_conv->this_arg, idx, secret_ref); return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_KeysInterface_get_inbound_payment_key_material(uint32_t this_arg) { +uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_holder_commitment_and_htlcs(uint32_t this_arg, uint32_t commitment_tx) { void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), (this_arg_conv->get_inbound_payment_key_material)(this_arg_conv->this_arg).data, 32); - return ret_arr; -} - -typedef struct LDKFeeEstimator_JCalls { - atomic_size_t refcnt; - uint32_t get_est_sat_per_1000_weight_meth; -} LDKFeeEstimator_JCalls; -static void LDKFeeEstimator_JCalls_free(void* this_arg) { - LDKFeeEstimator_JCalls *j_calls = (LDKFeeEstimator_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->get_est_sat_per_1000_weight_meth); - FREE(j_calls); - } -} -uint32_t get_est_sat_per_1000_weight_LDKFeeEstimator_jcall(const void* this_arg, LDKConfirmationTarget confirmation_target) { - LDKFeeEstimator_JCalls *j_calls = (LDKFeeEstimator_JCalls*) this_arg; - uint32_t confirmation_target_conv = LDKConfirmationTarget_to_js(confirmation_target); - return js_invoke_function_1(j_calls->get_est_sat_per_1000_weight_meth, confirmation_target_conv); -} -static void LDKFeeEstimator_JCalls_cloned(LDKFeeEstimator* new_obj) { - LDKFeeEstimator_JCalls *j_calls = (LDKFeeEstimator_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + LDKHolderCommitmentTransaction commitment_tx_conv; + commitment_tx_conv.inner = (void*)(commitment_tx & (~1)); + commitment_tx_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_conv); + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ), "LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ"); + *ret_conv = (this_arg_conv->sign_holder_commitment_and_htlcs)(this_arg_conv->this_arg, &commitment_tx_conv); + return (uint64_t)ret_conv; } -static inline LDKFeeEstimator LDKFeeEstimator_init (/*TODO: JS Object Reference */void* o) { - LDKFeeEstimator_JCalls *calls = MALLOC(sizeof(LDKFeeEstimator_JCalls), "LDKFeeEstimator_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - LDKFeeEstimator ret = { - .this_arg = (void*) calls, - .get_est_sat_per_1000_weight = get_est_sat_per_1000_weight_LDKFeeEstimator_jcall, - .free = LDKFeeEstimator_JCalls_free, - }; - return ret; -} -long __attribute__((visibility("default"))) TS_LDKFeeEstimator_new(/*TODO: JS Object Reference */void* o) { - LDKFeeEstimator *res_ptr = MALLOC(sizeof(LDKFeeEstimator), "LDKFeeEstimator"); - *res_ptr = LDKFeeEstimator_init(o); - return (long)res_ptr; -} -int32_t __attribute__((visibility("default"))) TS_FeeEstimator_get_est_sat_per_1000_weight(uint32_t this_arg, uint32_t confirmation_target) { +uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_justice_revoked_output(uint32_t this_arg, int8_tArray justice_tx, int64_t input, int64_t amount, int8_tArray per_commitment_key) { void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKFeeEstimator* this_arg_conv = (LDKFeeEstimator*)this_arg_ptr; - LDKConfirmationTarget confirmation_target_conv = LDKConfirmationTarget_from_js(confirmation_target); - int32_t ret_val = (this_arg_conv->get_est_sat_per_1000_weight)(this_arg_conv->this_arg, confirmation_target_conv); - return ret_val; + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + LDKTransaction justice_tx_ref; + justice_tx_ref.datalen = justice_tx->arr_len; + justice_tx_ref.data = MALLOC(justice_tx_ref.datalen, "LDKTransaction Bytes"); + memcpy(justice_tx_ref.data, justice_tx->elems, justice_tx_ref.datalen); + justice_tx_ref.data_is_owned = true; + unsigned char per_commitment_key_arr[32]; + CHECK(per_commitment_key->arr_len == 32); + memcpy(per_commitment_key_arr, per_commitment_key->elems, 32); + unsigned char (*per_commitment_key_ref)[32] = &per_commitment_key_arr; + LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); + *ret_conv = (this_arg_conv->sign_justice_revoked_output)(this_arg_conv->this_arg, justice_tx_ref, input, amount, per_commitment_key_ref); + return (uint64_t)ret_conv; } -typedef struct LDKLogger_JCalls { - atomic_size_t refcnt; - uint32_t log_meth; -} LDKLogger_JCalls; -static void LDKLogger_JCalls_free(void* this_arg) { - LDKLogger_JCalls *j_calls = (LDKLogger_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->log_meth); - FREE(j_calls); - } -} -void log_LDKLogger_jcall(const void* this_arg, const LDKRecord * record) { - LDKLogger_JCalls *j_calls = (LDKLogger_JCalls*) this_arg; - LDKRecord record_var = *record; - uint64_t record_ref = 0; - record_var = Record_clone(record); - CHECK((((uint64_t)record_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&record_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(record_var); - record_ref = (uint64_t)record_var.inner; - if (record_var.is_owned) { - record_ref |= 1; - } - js_invoke_function_1(j_calls->log_meth, record_ref); -} -static void LDKLogger_JCalls_cloned(LDKLogger* new_obj) { - LDKLogger_JCalls *j_calls = (LDKLogger_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); +uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_justice_revoked_htlc(uint32_t this_arg, int8_tArray justice_tx, int64_t input, int64_t amount, int8_tArray per_commitment_key, uint32_t htlc) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + LDKTransaction justice_tx_ref; + justice_tx_ref.datalen = justice_tx->arr_len; + justice_tx_ref.data = MALLOC(justice_tx_ref.datalen, "LDKTransaction Bytes"); + memcpy(justice_tx_ref.data, justice_tx->elems, justice_tx_ref.datalen); + justice_tx_ref.data_is_owned = true; + unsigned char per_commitment_key_arr[32]; + CHECK(per_commitment_key->arr_len == 32); + memcpy(per_commitment_key_arr, per_commitment_key->elems, 32); + unsigned char (*per_commitment_key_ref)[32] = &per_commitment_key_arr; + LDKHTLCOutputInCommitment htlc_conv; + htlc_conv.inner = (void*)(htlc & (~1)); + htlc_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_conv); + LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); + *ret_conv = (this_arg_conv->sign_justice_revoked_htlc)(this_arg_conv->this_arg, justice_tx_ref, input, amount, per_commitment_key_ref, &htlc_conv); + return (uint64_t)ret_conv; } -static inline LDKLogger LDKLogger_init (/*TODO: JS Object Reference */void* o) { - LDKLogger_JCalls *calls = MALLOC(sizeof(LDKLogger_JCalls), "LDKLogger_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - LDKLogger ret = { - .this_arg = (void*) calls, - .log = log_LDKLogger_jcall, - .free = LDKLogger_JCalls_free, - }; - return ret; +uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_counterparty_htlc_transaction(uint32_t this_arg, int8_tArray htlc_tx, int64_t input, int64_t amount, int8_tArray per_commitment_point, uint32_t htlc) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + LDKTransaction htlc_tx_ref; + htlc_tx_ref.datalen = htlc_tx->arr_len; + htlc_tx_ref.data = MALLOC(htlc_tx_ref.datalen, "LDKTransaction Bytes"); + memcpy(htlc_tx_ref.data, htlc_tx->elems, htlc_tx_ref.datalen); + htlc_tx_ref.data_is_owned = true; + LDKPublicKey per_commitment_point_ref; + CHECK(per_commitment_point->arr_len == 33); + memcpy(per_commitment_point_ref.compressed_form, per_commitment_point->elems, 33); + LDKHTLCOutputInCommitment htlc_conv; + htlc_conv.inner = (void*)(htlc & (~1)); + htlc_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_conv); + LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); + *ret_conv = (this_arg_conv->sign_counterparty_htlc_transaction)(this_arg_conv->this_arg, htlc_tx_ref, input, amount, per_commitment_point_ref, &htlc_conv); + return (uint64_t)ret_conv; } -long __attribute__((visibility("default"))) TS_LDKLogger_new(/*TODO: JS Object Reference */void* o) { - LDKLogger *res_ptr = MALLOC(sizeof(LDKLogger), "LDKLogger"); - *res_ptr = LDKLogger_init(o); - return (long)res_ptr; + +uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_closing_transaction(uint32_t this_arg, uint32_t closing_tx) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + LDKClosingTransaction closing_tx_conv; + closing_tx_conv.inner = (void*)(closing_tx & (~1)); + closing_tx_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(closing_tx_conv); + LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); + *ret_conv = (this_arg_conv->sign_closing_transaction)(this_arg_conv->this_arg, &closing_tx_conv); + return (uint64_t)ret_conv; } -static inline struct LDKThirtyTwoBytes C2Tuple_BlockHashChannelManagerZ_get_a(LDKC2Tuple_BlockHashChannelManagerZ *NONNULL_PTR tuple){ - return ThirtyTwoBytes_clone(&tuple->a); + +uint32_t __attribute__((visibility("default"))) TS_BaseSign_sign_channel_announcement(uint32_t this_arg, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + LDKUnsignedChannelAnnouncement msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); + *ret_conv = (this_arg_conv->sign_channel_announcement)(this_arg_conv->this_arg, &msg_conv); + return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelManagerZ_get_a(uint32_t tuple) { - LDKC2Tuple_BlockHashChannelManagerZ* tuple_conv = (LDKC2Tuple_BlockHashChannelManagerZ*)(tuple & ~1); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), C2Tuple_BlockHashChannelManagerZ_get_a(tuple_conv).data, 32); - return ret_arr; + +void __attribute__((visibility("default"))) TS_BaseSign_ready_channel(uint32_t this_arg, uint32_t channel_parameters) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + LDKChannelTransactionParameters channel_parameters_conv; + channel_parameters_conv.inner = (void*)(channel_parameters & (~1)); + channel_parameters_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_parameters_conv); + (this_arg_conv->ready_channel)(this_arg_conv->this_arg, &channel_parameters_conv); } -static inline struct LDKChannelManager *C2Tuple_BlockHashChannelManagerZ_get_b(LDKC2Tuple_BlockHashChannelManagerZ *NONNULL_PTR tuple){ - return &tuple->b; +LDKChannelPublicKeys LDKBaseSign_set_get_pubkeys(LDKBaseSign* this_arg) { + if (this_arg->set_pubkeys != NULL) + this_arg->set_pubkeys(this_arg); + return this_arg->pubkeys; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelManagerZ_get_b(uint32_t tuple) { - LDKC2Tuple_BlockHashChannelManagerZ* tuple_conv = (LDKC2Tuple_BlockHashChannelManagerZ*)(tuple & ~1); - LDKChannelManager ret_var = *C2Tuple_BlockHashChannelManagerZ_get_b(tuple_conv); +uint32_t __attribute__((visibility("default"))) TS_BaseSign_get_pubkeys(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKBaseSign* this_arg_conv = (LDKBaseSign*)this_arg_ptr; + LDKChannelPublicKeys ret_var = LDKBaseSign_set_get_pubkeys(this_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner & ~1; + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ *val = (LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKC2Tuple_BlockHashChannelManagerZ* res_conv = &(*val->contents.result); - // Warning: we really need to clone here, but no clone is available for LDKC2Tuple_BlockHashChannelManagerZ - return ((uint64_t)res_conv) | 1; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ *val = (LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelConfigDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ChannelConfigDecodeErrorZ *val = (LDKCResult_ChannelConfigDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKChannelConfig res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelConfigDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ChannelConfigDecodeErrorZ *val = (LDKCResult_ChannelConfigDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_OutPointDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_OutPointDecodeErrorZ *val = (LDKCResult_OutPointDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKOutPoint res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_OutPointDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_OutPointDecodeErrorZ *val = (LDKCResult_OutPointDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -typedef struct LDKType_JCalls { +typedef struct LDKSign_JCalls { atomic_size_t refcnt; - uint32_t type_id_meth; - uint32_t debug_str_meth; + LDKBaseSign_JCalls* BaseSign; uint32_t write_meth; -} LDKType_JCalls; -static void LDKType_JCalls_free(void* this_arg) { - LDKType_JCalls *j_calls = (LDKType_JCalls*) this_arg; +} LDKSign_JCalls; +static void LDKSign_JCalls_free(void* this_arg) { + LDKSign_JCalls *j_calls = (LDKSign_JCalls*) this_arg; if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->type_id_meth); - js_free(j_calls->debug_str_meth); - js_free(j_calls->write_meth); + js_free_function_ptr(j_calls->write_meth); FREE(j_calls); } } -uint16_t type_id_LDKType_jcall(const void* this_arg) { - LDKType_JCalls *j_calls = (LDKType_JCalls*) this_arg; - return js_invoke_function_0(j_calls->type_id_meth); -} -LDKStr debug_str_LDKType_jcall(const void* this_arg) { - LDKType_JCalls *j_calls = (LDKType_JCalls*) this_arg; - uint32_t ret = js_invoke_function_0(j_calls->debug_str_meth); - LDKStr ret_conv = str_ref_to_owned_c(ret); - return ret_conv; -} -LDKCVec_u8Z write_LDKType_jcall(const void* this_arg) { - LDKType_JCalls *j_calls = (LDKType_JCalls*) this_arg; - int8_tArray ret = js_invoke_function_0(j_calls->write_meth); +LDKCVec_u8Z write_LDKSign_jcall(const void* this_arg) { + LDKSign_JCalls *j_calls = (LDKSign_JCalls*) this_arg; + int8_tArray ret = (int8_tArray)js_invoke_function_0(j_calls->write_meth); LDKCVec_u8Z ret_ref; - ret_ref.datalen = *((uint32_t*)ret); + ret_ref.datalen = ret->arr_len; ret_ref.data = MALLOC(ret_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(ret_ref.data, (uint8_t*)(ret + 4), ret_ref.datalen); + memcpy(ret_ref.data, ret->elems, ret_ref.datalen); return ret_ref; } -static void LDKType_JCalls_cloned(LDKType* new_obj) { - LDKType_JCalls *j_calls = (LDKType_JCalls*) new_obj->this_arg; +static void LDKSign_JCalls_cloned(LDKSign* new_obj) { + LDKSign_JCalls *j_calls = (LDKSign_JCalls*) new_obj->this_arg; atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); + atomic_fetch_add_explicit(&j_calls->BaseSign->refcnt, 1, memory_order_release); } -static inline LDKType LDKType_init (/*TODO: JS Object Reference */void* o) { - LDKType_JCalls *calls = MALLOC(sizeof(LDKType_JCalls), "LDKType_JCalls"); +static inline LDKSign LDKSign_init (/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */void* BaseSign, uint32_t pubkeys) { + LDKSign_JCalls *calls = MALLOC(sizeof(LDKSign_JCalls), "LDKSign_JCalls"); atomic_init(&calls->refcnt, 1); //TODO: Assign calls->o from o - LDKType ret = { + LDKChannelPublicKeys pubkeys_conv; + pubkeys_conv.inner = (void*)(pubkeys & (~1)); + pubkeys_conv.is_owned = (pubkeys & 1) || (pubkeys == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(pubkeys_conv); + + LDKSign ret = { .this_arg = (void*) calls, - .type_id = type_id_LDKType_jcall, - .debug_str = debug_str_LDKType_jcall, - .write = write_LDKType_jcall, - .cloned = LDKType_JCalls_cloned, - .free = LDKType_JCalls_free, + .write = write_LDKSign_jcall, + .cloned = LDKSign_JCalls_cloned, + .free = LDKSign_JCalls_free, + .BaseSign = LDKBaseSign_init(BaseSign, pubkeys), }; + calls->BaseSign = ret.BaseSign.this_arg; return ret; } -long __attribute__((visibility("default"))) TS_LDKType_new(/*TODO: JS Object Reference */void* o) { - LDKType *res_ptr = MALLOC(sizeof(LDKType), "LDKType"); - *res_ptr = LDKType_init(o); +long __attribute__((visibility("default"))) TS_LDKSign_new(/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */ void* BaseSign, uint32_t pubkeys) { + LDKSign *res_ptr = MALLOC(sizeof(LDKSign), "LDKSign"); + *res_ptr = LDKSign_init(o, BaseSign, pubkeys); return (long)res_ptr; } -int16_t __attribute__((visibility("default"))) TS_Type_type_id(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKType* this_arg_conv = (LDKType*)this_arg_ptr; - int16_t ret_val = (this_arg_conv->type_id)(this_arg_conv->this_arg); - return ret_val; -} - -jstring __attribute__((visibility("default"))) TS_Type_debug_str(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKType* this_arg_conv = (LDKType*)this_arg_ptr; - LDKStr ret_str = (this_arg_conv->debug_str)(this_arg_conv->this_arg); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; -} - -int8_tArray __attribute__((visibility("default"))) TS_Type_write(uint32_t this_arg) { +int8_tArray __attribute__((visibility("default"))) TS_Sign_write(uint32_t this_arg) { void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKType* this_arg_conv = (LDKType*)this_arg_ptr; + LDKSign* this_arg_conv = (LDKSign*)this_arg_ptr; LDKCVec_u8Z ret_var = (this_arg_conv->write)(this_arg_conv->this_arg); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_LDKCOption_TypeZ_ref_from_ptr(uint32_t ptr) { - LDKCOption_TypeZ *obj = (LDKCOption_TypeZ*)(ptr & ~1); - switch(obj->tag) { - case LDKCOption_TypeZ_Some: { - LDKType* some_ret = MALLOC(sizeof(LDKType), "LDKType"); - *some_ret = Type_clone(&obj->some); - return 0 /* LDKCOption_TypeZ - Some */; (void) (uint64_t)some_ret; - } - case LDKCOption_TypeZ_None: { - return 0 /* LDKCOption_TypeZ - None */; - } - default: abort(); - } -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_COption_TypeZDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_COption_TypeZDecodeErrorZ *val = (LDKCResult_COption_TypeZDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - uint64_t res_ref = ((uint64_t)&(*val->contents.result)) | 1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_COption_TypeZDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_COption_TypeZDecodeErrorZ *val = (LDKCResult_COption_TypeZDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKPaymentError_ref_from_ptr(uint32_t ptr) { - LDKPaymentError *obj = (LDKPaymentError*)(ptr & ~1); - switch(obj->tag) { - case LDKPaymentError_Invoice: { - LDKStr invoice_str = obj->invoice; - jstring invoice_conv = str_ref_to_ts(invoice_str.chars, invoice_str.len); - return 0 /* LDKPaymentError - Invoice */; (void) invoice_conv; - } - case LDKPaymentError_Routing: { - LDKLightningError routing_var = obj->routing; - uint64_t routing_ref = 0; - CHECK((((uint64_t)routing_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&routing_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(routing_var); - routing_ref = (uint64_t)routing_var.inner & ~1; - return 0 /* LDKPaymentError - Routing */; (void) routing_ref; - } - case LDKPaymentError_Sending: { - uint64_t sending_ref = ((uint64_t)&obj->sending) | 1; - return 0 /* LDKPaymentError - Sending */; (void) sending_ref; - } - default: abort(); - } -} -int8_tArray __attribute__((visibility("default"))) TS_LDKCResult_PaymentIdPaymentErrorZ_get_ok(uint32_t arg) { - LDKCResult_PaymentIdPaymentErrorZ *val = (LDKCResult_PaymentIdPaymentErrorZ*)(arg & ~1); - CHECK(val->result_ok); - int8_tArray res_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(res_arr + 4), (*val->contents.result).data, 32); - return res_arr; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PaymentIdPaymentErrorZ_get_err(uint32_t arg) { - LDKCResult_PaymentIdPaymentErrorZ *val = (LDKCResult_PaymentIdPaymentErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint64_t err_ref = ((uint64_t)&(*val->contents.err)) | 1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_SiPrefixNoneZ_get_ok(uint32_t arg) { - LDKCResult_SiPrefixNoneZ *val = (LDKCResult_SiPrefixNoneZ*)(arg & ~1); - CHECK(val->result_ok); - uint32_t res_conv = LDKSiPrefix_to_js((*val->contents.result)); - return res_conv; -} -void __attribute__((visibility("default"))) TS_LDKCResult_SiPrefixNoneZ_get_err(uint32_t arg) { - LDKCResult_SiPrefixNoneZ *val = (LDKCResult_SiPrefixNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_InvoiceNoneZ_get_ok(uint32_t arg) { - LDKCResult_InvoiceNoneZ *val = (LDKCResult_InvoiceNoneZ*)(arg & ~1); - CHECK(val->result_ok); - LDKInvoice res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -void __attribute__((visibility("default"))) TS_LDKCResult_InvoiceNoneZ_get_err(uint32_t arg) { - LDKCResult_InvoiceNoneZ *val = (LDKCResult_InvoiceNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; +static inline struct LDKThirtyTwoBytes C2Tuple_BlockHashChannelMonitorZ_get_a(LDKC2Tuple_BlockHashChannelMonitorZ *NONNULL_PTR owner){ + return ThirtyTwoBytes_clone(&owner->a); } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_SignedRawInvoiceNoneZ_get_ok(uint32_t arg) { - LDKCResult_SignedRawInvoiceNoneZ *val = (LDKCResult_SignedRawInvoiceNoneZ*)(arg & ~1); - CHECK(val->result_ok); - LDKSignedRawInvoice res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -void __attribute__((visibility("default"))) TS_LDKCResult_SignedRawInvoiceNoneZ_get_err(uint32_t arg) { - LDKCResult_SignedRawInvoiceNoneZ *val = (LDKCResult_SignedRawInvoiceNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; +int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_get_a(uint32_t owner) { + LDKC2Tuple_BlockHashChannelMonitorZ* owner_conv = (LDKC2Tuple_BlockHashChannelMonitorZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, C2Tuple_BlockHashChannelMonitorZ_get_a(owner_conv).data, 32); + return ret_arr; } -static inline struct LDKRawInvoice C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_a(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ *NONNULL_PTR tuple){ - return RawInvoice_clone(&tuple->a); + +static inline struct LDKChannelMonitor C2Tuple_BlockHashChannelMonitorZ_get_b(LDKC2Tuple_BlockHashChannelMonitorZ *NONNULL_PTR owner){ + return ChannelMonitor_clone(&owner->b); } -uint32_t __attribute__((visibility("default"))) TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_a(uint32_t tuple) { - LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ* tuple_conv = (LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ*)(tuple & ~1); - LDKRawInvoice ret_var = C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_a(tuple_conv); +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_get_b(uint32_t owner) { + LDKC2Tuple_BlockHashChannelMonitorZ* owner_conv = (LDKC2Tuple_BlockHashChannelMonitorZ*)(owner & ~1); + LDKChannelMonitor ret_var = C2Tuple_BlockHashChannelMonitorZ_get_b(owner_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -3715,22 +2264,24 @@ uint32_t __attribute__((visibility("default"))) TS_C3Tuple_RawInvoice_u832Invoi return ret_ref; } -static inline struct LDKThirtyTwoBytes C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_b(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ *NONNULL_PTR tuple){ - return ThirtyTwoBytes_clone(&tuple->b); +static inline struct LDKC2Tuple_BlockHashChannelMonitorZ CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_ok(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return C2Tuple_BlockHashChannelMonitorZ_clone(&*owner->contents.result); } -int8_tArray __attribute__((visibility("default"))) TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_b(uint32_t tuple) { - LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ* tuple_conv = (LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ*)(tuple & ~1); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_b(tuple_conv).data, 32); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* owner_conv = (LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ*)(owner & ~1); + LDKC2Tuple_BlockHashChannelMonitorZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlockHashChannelMonitorZ), "LDKC2Tuple_BlockHashChannelMonitorZ"); + *ret_conv = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_ok(owner_conv); + return ((uint64_t)ret_conv); } -static inline struct LDKInvoiceSignature C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_c(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ *NONNULL_PTR tuple){ - return InvoiceSignature_clone(&tuple->c); +static inline struct LDKDecodeError CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_err(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -uint32_t __attribute__((visibility("default"))) TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_c(uint32_t tuple) { - LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ* tuple_conv = (LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ*)(tuple & ~1); - LDKInvoiceSignature ret_var = C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_c(tuple_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* owner_conv = (LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_err(owner_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -3742,219 +2293,13 @@ uint32_t __attribute__((visibility("default"))) TS_C3Tuple_RawInvoice_u832Invoi return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PayeePubKeyErrorZ_get_ok(uint32_t arg) { - LDKCResult_PayeePubKeyErrorZ *val = (LDKCResult_PayeePubKeyErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKPayeePubKey res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PayeePubKeyErrorZ_get_err(uint32_t arg) { - LDKCResult_PayeePubKeyErrorZ *val = (LDKCResult_PayeePubKeyErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKSecp256k1Error_to_js((*val->contents.err)); - return err_conv; -} -static inline LDKCVec_PrivateRouteZ CVec_PrivateRouteZ_clone(const LDKCVec_PrivateRouteZ *orig) { - LDKCVec_PrivateRouteZ ret = { .data = MALLOC(sizeof(LDKPrivateRoute) * orig->datalen, "LDKCVec_PrivateRouteZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = PrivateRoute_clone(&orig->data[i]); - } - return ret; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PositiveTimestampCreationErrorZ_get_ok(uint32_t arg) { - LDKCResult_PositiveTimestampCreationErrorZ *val = (LDKCResult_PositiveTimestampCreationErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKPositiveTimestamp res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PositiveTimestampCreationErrorZ_get_err(uint32_t arg) { - LDKCResult_PositiveTimestampCreationErrorZ *val = (LDKCResult_PositiveTimestampCreationErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKCreationError_to_js((*val->contents.err)); - return err_conv; -} -void __attribute__((visibility("default"))) TS_LDKCResult_NoneSemanticErrorZ_get_ok(uint32_t arg) { - LDKCResult_NoneSemanticErrorZ *val = (LDKCResult_NoneSemanticErrorZ*)(arg & ~1); - CHECK(val->result_ok); - return *val->contents.result; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NoneSemanticErrorZ_get_err(uint32_t arg) { - LDKCResult_NoneSemanticErrorZ *val = (LDKCResult_NoneSemanticErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKSemanticError_to_js((*val->contents.err)); - return err_conv; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_InvoiceSemanticErrorZ_get_ok(uint32_t arg) { - LDKCResult_InvoiceSemanticErrorZ *val = (LDKCResult_InvoiceSemanticErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKInvoice res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_InvoiceSemanticErrorZ_get_err(uint32_t arg) { - LDKCResult_InvoiceSemanticErrorZ *val = (LDKCResult_InvoiceSemanticErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKSemanticError_to_js((*val->contents.err)); - return err_conv; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_DescriptionCreationErrorZ_get_ok(uint32_t arg) { - LDKCResult_DescriptionCreationErrorZ *val = (LDKCResult_DescriptionCreationErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKDescription res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_DescriptionCreationErrorZ_get_err(uint32_t arg) { - LDKCResult_DescriptionCreationErrorZ *val = (LDKCResult_DescriptionCreationErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKCreationError_to_js((*val->contents.err)); - return err_conv; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ExpiryTimeCreationErrorZ_get_ok(uint32_t arg) { - LDKCResult_ExpiryTimeCreationErrorZ *val = (LDKCResult_ExpiryTimeCreationErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKExpiryTime res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ExpiryTimeCreationErrorZ_get_err(uint32_t arg) { - LDKCResult_ExpiryTimeCreationErrorZ *val = (LDKCResult_ExpiryTimeCreationErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKCreationError_to_js((*val->contents.err)); - return err_conv; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PrivateRouteCreationErrorZ_get_ok(uint32_t arg) { - LDKCResult_PrivateRouteCreationErrorZ *val = (LDKCResult_PrivateRouteCreationErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKPrivateRoute res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PrivateRouteCreationErrorZ_get_err(uint32_t arg) { - LDKCResult_PrivateRouteCreationErrorZ *val = (LDKCResult_PrivateRouteCreationErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKCreationError_to_js((*val->contents.err)); - return err_conv; -} -jstring __attribute__((visibility("default"))) TS_LDKCResult_StringErrorZ_get_ok(uint32_t arg) { - LDKCResult_StringErrorZ *val = (LDKCResult_StringErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKStr res_str = (*val->contents.result); - jstring res_conv = str_ref_to_ts(res_str.chars, res_str.len); - return res_conv; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_StringErrorZ_get_err(uint32_t arg) { - LDKCResult_StringErrorZ *val = (LDKCResult_StringErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint32_t err_conv = LDKSecp256k1Error_to_js((*val->contents.err)); - return err_conv; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelMonitorUpdateDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ChannelMonitorUpdateDecodeErrorZ *val = (LDKCResult_ChannelMonitorUpdateDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKChannelMonitorUpdate res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelMonitorUpdateDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ChannelMonitorUpdateDecodeErrorZ *val = (LDKCResult_ChannelMonitorUpdateDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCOption_MonitorEventZ_ref_from_ptr(uint32_t ptr) { - LDKCOption_MonitorEventZ *obj = (LDKCOption_MonitorEventZ*)(ptr & ~1); - switch(obj->tag) { - case LDKCOption_MonitorEventZ_Some: { - uint64_t some_ref = ((uint64_t)&obj->some) | 1; - return 0 /* LDKCOption_MonitorEventZ - Some */; (void) some_ref; - } - case LDKCOption_MonitorEventZ_None: { - return 0 /* LDKCOption_MonitorEventZ - None */; - } - default: abort(); - } -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_COption_MonitorEventZDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_COption_MonitorEventZDecodeErrorZ *val = (LDKCResult_COption_MonitorEventZDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - uint64_t res_ref = ((uint64_t)&(*val->contents.result)) | 1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_COption_MonitorEventZDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_COption_MonitorEventZDecodeErrorZ *val = (LDKCResult_COption_MonitorEventZDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_HTLCUpdateDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_HTLCUpdateDecodeErrorZ *val = (LDKCResult_HTLCUpdateDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKHTLCUpdate res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; +static inline struct LDKRouteHop CResult_RouteHopDecodeErrorZ_get_ok(LDKCResult_RouteHopDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return RouteHop_clone(&*owner->contents.result); } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_HTLCUpdateDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_HTLCUpdateDecodeErrorZ *val = (LDKCResult_HTLCUpdateDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -static inline struct LDKOutPoint C2Tuple_OutPointScriptZ_get_a(LDKC2Tuple_OutPointScriptZ *NONNULL_PTR tuple){ - return OutPoint_clone(&tuple->a); -} -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_OutPointScriptZ_get_a(uint32_t tuple) { - LDKC2Tuple_OutPointScriptZ* tuple_conv = (LDKC2Tuple_OutPointScriptZ*)(tuple & ~1); - LDKOutPoint ret_var = C2Tuple_OutPointScriptZ_get_a(tuple_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_RouteHopDecodeErrorZ* owner_conv = (LDKCResult_RouteHopDecodeErrorZ*)(owner & ~1); + LDKRouteHop ret_var = CResult_RouteHopDecodeErrorZ_get_ok(owner_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -3966,260 +2311,178 @@ uint32_t __attribute__((visibility("default"))) TS_C2Tuple_OutPointScriptZ_get_ return ret_ref; } -static inline struct LDKCVec_u8Z C2Tuple_OutPointScriptZ_get_b(LDKC2Tuple_OutPointScriptZ *NONNULL_PTR tuple){ - return CVec_u8Z_clone(&tuple->b); +static inline struct LDKDecodeError CResult_RouteHopDecodeErrorZ_get_err(LDKCResult_RouteHopDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_OutPointScriptZ_get_b(uint32_t tuple) { - LDKC2Tuple_OutPointScriptZ* tuple_conv = (LDKC2Tuple_OutPointScriptZ*)(tuple & ~1); - LDKCVec_u8Z ret_var = C2Tuple_OutPointScriptZ_get_b(tuple_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -static inline uint32_t C2Tuple_u32ScriptZ_get_a(LDKC2Tuple_u32ScriptZ *NONNULL_PTR tuple){ - return tuple->a; -} -int32_t __attribute__((visibility("default"))) TS_C2Tuple_u32ScriptZ_get_a(uint32_t tuple) { - LDKC2Tuple_u32ScriptZ* tuple_conv = (LDKC2Tuple_u32ScriptZ*)(tuple & ~1); - int32_t ret_val = C2Tuple_u32ScriptZ_get_a(tuple_conv); - return ret_val; -} - -static inline struct LDKCVec_u8Z C2Tuple_u32ScriptZ_get_b(LDKC2Tuple_u32ScriptZ *NONNULL_PTR tuple){ - return CVec_u8Z_clone(&tuple->b); -} -int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_u32ScriptZ_get_b(uint32_t tuple) { - LDKC2Tuple_u32ScriptZ* tuple_conv = (LDKC2Tuple_u32ScriptZ*)(tuple & ~1); - LDKCVec_u8Z ret_var = C2Tuple_u32ScriptZ_get_b(tuple_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_RouteHopDecodeErrorZ* owner_conv = (LDKCResult_RouteHopDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_RouteHopDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline LDKCVec_C2Tuple_u32ScriptZZ CVec_C2Tuple_u32ScriptZZ_clone(const LDKCVec_C2Tuple_u32ScriptZZ *orig) { - LDKCVec_C2Tuple_u32ScriptZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_u32ScriptZ) * orig->datalen, "LDKCVec_C2Tuple_u32ScriptZZ clone bytes"), .datalen = orig->datalen }; +static inline LDKCVec_CVec_RouteHopZZ CVec_CVec_RouteHopZZ_clone(const LDKCVec_CVec_RouteHopZZ *orig) { + LDKCVec_CVec_RouteHopZZ ret = { .data = MALLOC(sizeof(LDKCVec_RouteHopZ) * orig->datalen, "LDKCVec_CVec_RouteHopZZ clone bytes"), .datalen = orig->datalen }; for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = C2Tuple_u32ScriptZ_clone(&orig->data[i]); + ret.data[i] = CVec_RouteHopZ_clone(&orig->data[i]); } return ret; } -static inline struct LDKThirtyTwoBytes C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_a(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ *NONNULL_PTR tuple){ - return ThirtyTwoBytes_clone(&tuple->a); +static inline struct LDKRoute CResult_RouteDecodeErrorZ_get_ok(LDKCResult_RouteDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return Route_clone(&*owner->contents.result); } -int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_a(uint32_t tuple) { - LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* tuple_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ*)(tuple & ~1); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_a(tuple_conv).data, 32); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_RouteDecodeErrorZ* owner_conv = (LDKCResult_RouteDecodeErrorZ*)(owner & ~1); + LDKRoute ret_var = CResult_RouteDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline struct LDKCVec_C2Tuple_u32ScriptZZ C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_b(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ *NONNULL_PTR tuple){ - return CVec_C2Tuple_u32ScriptZZ_clone(&tuple->b); +static inline struct LDKDecodeError CResult_RouteDecodeErrorZ_get_err(LDKCResult_RouteDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -uint32_tArray __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_b(uint32_t tuple) { - LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* tuple_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ*)(tuple & ~1); - LDKCVec_C2Tuple_u32ScriptZZ ret_var = C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_b(tuple_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t v = 0; v < ret_var.datalen; v++) { - LDKC2Tuple_u32ScriptZ* ret_conv_21_conv = MALLOC(sizeof(LDKC2Tuple_u32ScriptZ), "LDKC2Tuple_u32ScriptZ"); - *ret_conv_21_conv = ret_var.data[v]; - ret_arr_ptr[v] = ((uint64_t)ret_conv_21_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_RouteDecodeErrorZ* owner_conv = (LDKCResult_RouteDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_RouteDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - - FREE(ret_var.data); - return ret_arr; + return ret_ref; } -static inline LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ_clone(const LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ *orig) { - LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ) * orig->datalen, "LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone(&orig->data[i]); - } - return ret; +static inline struct LDKRouteParameters CResult_RouteParametersDecodeErrorZ_get_ok(LDKCResult_RouteParametersDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return RouteParameters_clone(&*owner->contents.result); } -static inline LDKCVec_EventZ CVec_EventZ_clone(const LDKCVec_EventZ *orig) { - LDKCVec_EventZ ret = { .data = MALLOC(sizeof(LDKEvent) * orig->datalen, "LDKCVec_EventZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = Event_clone(&orig->data[i]); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_RouteParametersDecodeErrorZ* owner_conv = (LDKCResult_RouteParametersDecodeErrorZ*)(owner & ~1); + LDKRouteParameters ret_var = CResult_RouteParametersDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; -} -static inline uint32_t C2Tuple_u32TxOutZ_get_a(LDKC2Tuple_u32TxOutZ *NONNULL_PTR tuple){ - return tuple->a; -} -int32_t __attribute__((visibility("default"))) TS_C2Tuple_u32TxOutZ_get_a(uint32_t tuple) { - LDKC2Tuple_u32TxOutZ* tuple_conv = (LDKC2Tuple_u32TxOutZ*)(tuple & ~1); - int32_t ret_val = C2Tuple_u32TxOutZ_get_a(tuple_conv); - return ret_val; + return ret_ref; } -static inline struct LDKTxOut C2Tuple_u32TxOutZ_get_b(LDKC2Tuple_u32TxOutZ *NONNULL_PTR tuple){ - return TxOut_clone(&tuple->b); +static inline struct LDKDecodeError CResult_RouteParametersDecodeErrorZ_get_err(LDKCResult_RouteParametersDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_u32TxOutZ_get_b(uint32_t tuple) { - LDKC2Tuple_u32TxOutZ* tuple_conv = (LDKC2Tuple_u32TxOutZ*)(tuple & ~1); - LDKTxOut* ret_ref = MALLOC(sizeof(LDKTxOut), "LDKTxOut"); - *ret_ref = C2Tuple_u32TxOutZ_get_b(tuple_conv); - return (uint64_t)ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_RouteParametersDecodeErrorZ* owner_conv = (LDKCResult_RouteParametersDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_RouteParametersDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline LDKCVec_C2Tuple_u32TxOutZZ CVec_C2Tuple_u32TxOutZZ_clone(const LDKCVec_C2Tuple_u32TxOutZZ *orig) { - LDKCVec_C2Tuple_u32TxOutZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_u32TxOutZ) * orig->datalen, "LDKCVec_C2Tuple_u32TxOutZZ clone bytes"), .datalen = orig->datalen }; +static inline LDKCVec_RouteHintZ CVec_RouteHintZ_clone(const LDKCVec_RouteHintZ *orig) { + LDKCVec_RouteHintZ ret = { .data = MALLOC(sizeof(LDKRouteHint) * orig->datalen, "LDKCVec_RouteHintZ clone bytes"), .datalen = orig->datalen }; for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = C2Tuple_u32TxOutZ_clone(&orig->data[i]); + ret.data[i] = RouteHint_clone(&orig->data[i]); } return ret; } -static inline struct LDKThirtyTwoBytes C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_a(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ *NONNULL_PTR tuple){ - return ThirtyTwoBytes_clone(&tuple->a); +static inline struct LDKPayee CResult_PayeeDecodeErrorZ_get_ok(LDKCResult_PayeeDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return Payee_clone(&*owner->contents.result); } -int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_a(uint32_t tuple) { - LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* tuple_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ*)(tuple & ~1); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_a(tuple_conv).data, 32); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_PayeeDecodeErrorZ* owner_conv = (LDKCResult_PayeeDecodeErrorZ*)(owner & ~1); + LDKPayee ret_var = CResult_PayeeDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline struct LDKCVec_C2Tuple_u32TxOutZZ C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_b(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ *NONNULL_PTR tuple){ - return CVec_C2Tuple_u32TxOutZZ_clone(&tuple->b); +static inline struct LDKDecodeError CResult_PayeeDecodeErrorZ_get_err(LDKCResult_PayeeDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -uint32_tArray __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_b(uint32_t tuple) { - LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* tuple_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ*)(tuple & ~1); - LDKCVec_C2Tuple_u32TxOutZZ ret_var = C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_b(tuple_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t u = 0; u < ret_var.datalen; u++) { - LDKC2Tuple_u32TxOutZ* ret_conv_20_conv = MALLOC(sizeof(LDKC2Tuple_u32TxOutZ), "LDKC2Tuple_u32TxOutZ"); - *ret_conv_20_conv = ret_var.data[u]; - ret_arr_ptr[u] = ((uint64_t)ret_conv_20_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_PayeeDecodeErrorZ* owner_conv = (LDKCResult_PayeeDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_PayeeDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - - FREE(ret_var.data); - return ret_arr; + return ret_ref; } -static inline LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ CVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ_clone(const LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ *orig) { - LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ) * orig->datalen, "LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ clone bytes"), .datalen = orig->datalen }; +static inline LDKCVec_RouteHintHopZ CVec_RouteHintHopZ_clone(const LDKCVec_RouteHintHopZ *orig) { + LDKCVec_RouteHintHopZ ret = { .data = MALLOC(sizeof(LDKRouteHintHop) * orig->datalen, "LDKCVec_RouteHintHopZ clone bytes"), .datalen = orig->datalen }; for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(&orig->data[i]); + ret.data[i] = RouteHintHop_clone(&orig->data[i]); } return ret; } -uint32_t __attribute__((visibility("default"))) TS_LDKBalance_ref_from_ptr(uint32_t ptr) { - LDKBalance *obj = (LDKBalance*)(ptr & ~1); - switch(obj->tag) { - case LDKBalance_ClaimableOnChannelClose: { - return 0 /* LDKBalance - ClaimableOnChannelClose */; (void) obj->claimable_on_channel_close.claimable_amount_satoshis; - } - case LDKBalance_ClaimableAwaitingConfirmations: { - return 0 /* LDKBalance - ClaimableAwaitingConfirmations */; (void) obj->claimable_awaiting_confirmations.claimable_amount_satoshis; (void) obj->claimable_awaiting_confirmations.confirmation_height; - } - case LDKBalance_ContentiousClaimable: { - return 0 /* LDKBalance - ContentiousClaimable */; (void) obj->contentious_claimable.claimable_amount_satoshis; (void) obj->contentious_claimable.timeout_height; - } - case LDKBalance_MaybeClaimableHTLCAwaitingTimeout: { - return 0 /* LDKBalance - MaybeClaimableHTLCAwaitingTimeout */; (void) obj->maybe_claimable_htlc_awaiting_timeout.claimable_amount_satoshis; (void) obj->maybe_claimable_htlc_awaiting_timeout.claimable_height; - } - default: abort(); - } +static inline struct LDKRouteHint CResult_RouteHintDecodeErrorZ_get_ok(LDKCResult_RouteHintDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return RouteHint_clone(&*owner->contents.result); } -static inline LDKCVec_BalanceZ CVec_BalanceZ_clone(const LDKCVec_BalanceZ *orig) { - LDKCVec_BalanceZ ret = { .data = MALLOC(sizeof(LDKBalance) * orig->datalen, "LDKCVec_BalanceZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = Balance_clone(&orig->data[i]); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_RouteHintDecodeErrorZ* owner_conv = (LDKCResult_RouteHintDecodeErrorZ*)(owner & ~1); + LDKRouteHint ret_var = CResult_RouteHintDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ *val = (LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKC2Tuple_BlockHashChannelMonitorZ* res_conv = MALLOC(sizeof(LDKC2Tuple_BlockHashChannelMonitorZ), "LDKC2Tuple_BlockHashChannelMonitorZ"); - *res_conv = (*val->contents.result); - *res_conv = C2Tuple_BlockHashChannelMonitorZ_clone(res_conv); - return ((uint64_t)res_conv); -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ *val = (LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -void __attribute__((visibility("default"))) TS_LDKCResult_NoneLightningErrorZ_get_ok(uint32_t arg) { - LDKCResult_NoneLightningErrorZ *val = (LDKCResult_NoneLightningErrorZ*)(arg & ~1); - CHECK(val->result_ok); - return *val->contents.result; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NoneLightningErrorZ_get_err(uint32_t arg) { - LDKCResult_NoneLightningErrorZ *val = (LDKCResult_NoneLightningErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKLightningError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -static inline struct LDKPublicKey C2Tuple_PublicKeyTypeZ_get_a(LDKC2Tuple_PublicKeyTypeZ *NONNULL_PTR tuple){ - return tuple->a; -} -int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_PublicKeyTypeZ_get_a(uint32_t tuple) { - LDKC2Tuple_PublicKeyTypeZ* tuple_conv = (LDKC2Tuple_PublicKeyTypeZ*)(tuple & ~1); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), C2Tuple_PublicKeyTypeZ_get_a(tuple_conv).compressed_form, 33); - return ret_arr; -} - -static inline struct LDKType C2Tuple_PublicKeyTypeZ_get_b(LDKC2Tuple_PublicKeyTypeZ *NONNULL_PTR tuple){ - return Type_clone(&tuple->b); -} -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PublicKeyTypeZ_get_b(uint32_t tuple) { - LDKC2Tuple_PublicKeyTypeZ* tuple_conv = (LDKC2Tuple_PublicKeyTypeZ*)(tuple & ~1); - LDKType* ret_ret = MALLOC(sizeof(LDKType), "LDKType"); - *ret_ret = C2Tuple_PublicKeyTypeZ_get_b(tuple_conv); - return (uint64_t)ret_ret; + return ret_ref; } -static inline LDKCVec_C2Tuple_PublicKeyTypeZZ CVec_C2Tuple_PublicKeyTypeZZ_clone(const LDKCVec_C2Tuple_PublicKeyTypeZZ *orig) { - LDKCVec_C2Tuple_PublicKeyTypeZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_PublicKeyTypeZ) * orig->datalen, "LDKCVec_C2Tuple_PublicKeyTypeZZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = C2Tuple_PublicKeyTypeZ_clone(&orig->data[i]); - } - return ret; +static inline struct LDKDecodeError CResult_RouteHintDecodeErrorZ_get_err(LDKCResult_RouteHintDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -jboolean __attribute__((visibility("default"))) TS_LDKCResult_boolLightningErrorZ_get_ok(uint32_t arg) { - LDKCResult_boolLightningErrorZ *val = (LDKCResult_boolLightningErrorZ*)(arg & ~1); - CHECK(val->result_ok); - return *val->contents.result; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_boolLightningErrorZ_get_err(uint32_t arg) { - LDKCResult_boolLightningErrorZ *val = (LDKCResult_boolLightningErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKLightningError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -static inline struct LDKChannelAnnouncement C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_a(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ *NONNULL_PTR tuple){ - return ChannelAnnouncement_clone(&tuple->a); -} -uint32_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_a(uint32_t tuple) { - LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* tuple_conv = (LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(tuple & ~1); - LDKChannelAnnouncement ret_var = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_a(tuple_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_RouteHintDecodeErrorZ* owner_conv = (LDKCResult_RouteHintDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_RouteHintDecodeErrorZ_get_err(owner_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -4231,12 +2494,13 @@ uint32_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementC return ret_ref; } -static inline struct LDKChannelUpdate C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_b(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ *NONNULL_PTR tuple){ - return ChannelUpdate_clone(&tuple->b); +static inline struct LDKRouteHintHop CResult_RouteHintHopDecodeErrorZ_get_ok(LDKCResult_RouteHintHopDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return RouteHintHop_clone(&*owner->contents.result); } -uint32_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_b(uint32_t tuple) { - LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* tuple_conv = (LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(tuple & ~1); - LDKChannelUpdate ret_var = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_b(tuple_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_RouteHintHopDecodeErrorZ* owner_conv = (LDKCResult_RouteHintHopDecodeErrorZ*)(owner & ~1); + LDKRouteHintHop ret_var = CResult_RouteHintHopDecodeErrorZ_get_ok(owner_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -4248,12 +2512,13 @@ uint32_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementC return ret_ref; } -static inline struct LDKChannelUpdate C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_c(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ *NONNULL_PTR tuple){ - return ChannelUpdate_clone(&tuple->c); +static inline struct LDKDecodeError CResult_RouteHintHopDecodeErrorZ_get_err(LDKCResult_RouteHintHopDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -uint32_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_c(uint32_t tuple) { - LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* tuple_conv = (LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(tuple & ~1); - LDKChannelUpdate ret_var = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_c(tuple_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_RouteHintHopDecodeErrorZ* owner_conv = (LDKCResult_RouteHintHopDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_RouteHintHopDecodeErrorZ_get_err(owner_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -4265,9645 +2530,9391 @@ uint32_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementC return ret_ref; } -static inline LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_clone(const LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ *orig) { - LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ ret = { .data = MALLOC(sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ) * orig->datalen, "LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ clone bytes"), .datalen = orig->datalen }; +static inline LDKCVec_ChannelDetailsZ CVec_ChannelDetailsZ_clone(const LDKCVec_ChannelDetailsZ *orig) { + LDKCVec_ChannelDetailsZ ret = { .data = MALLOC(sizeof(LDKChannelDetails) * orig->datalen, "LDKCVec_ChannelDetailsZ clone bytes"), .datalen = orig->datalen }; for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone(&orig->data[i]); + ret.data[i] = ChannelDetails_clone(&orig->data[i]); } return ret; } -static inline LDKCVec_NodeAnnouncementZ CVec_NodeAnnouncementZ_clone(const LDKCVec_NodeAnnouncementZ *orig) { - LDKCVec_NodeAnnouncementZ ret = { .data = MALLOC(sizeof(LDKNodeAnnouncement) * orig->datalen, "LDKCVec_NodeAnnouncementZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = NodeAnnouncement_clone(&orig->data[i]); +static inline struct LDKRoute CResult_RouteLightningErrorZ_get_ok(LDKCResult_RouteLightningErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return Route_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_get_ok(uint32_t owner) { + LDKCResult_RouteLightningErrorZ* owner_conv = (LDKCResult_RouteLightningErrorZ*)(owner & ~1); + LDKRoute ret_var = CResult_RouteLightningErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret; + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_LDKCResult_CVec_u8ZPeerHandleErrorZ_get_ok(uint32_t arg) { - LDKCResult_CVec_u8ZPeerHandleErrorZ *val = (LDKCResult_CVec_u8ZPeerHandleErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKCVec_u8Z res_var = (*val->contents.result); - int8_tArray res_arr = init_arr(res_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(res_arr + 4), res_var.data, res_var.datalen); - return res_arr; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_CVec_u8ZPeerHandleErrorZ_get_err(uint32_t arg) { - LDKCResult_CVec_u8ZPeerHandleErrorZ *val = (LDKCResult_CVec_u8ZPeerHandleErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKPeerHandleError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -void __attribute__((visibility("default"))) TS_LDKCResult_NonePeerHandleErrorZ_get_ok(uint32_t arg) { - LDKCResult_NonePeerHandleErrorZ *val = (LDKCResult_NonePeerHandleErrorZ*)(arg & ~1); - CHECK(val->result_ok); - return *val->contents.result; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NonePeerHandleErrorZ_get_err(uint32_t arg) { - LDKCResult_NonePeerHandleErrorZ *val = (LDKCResult_NonePeerHandleErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKPeerHandleError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -jboolean __attribute__((visibility("default"))) TS_LDKCResult_boolPeerHandleErrorZ_get_ok(uint32_t arg) { - LDKCResult_boolPeerHandleErrorZ *val = (LDKCResult_boolPeerHandleErrorZ*)(arg & ~1); - CHECK(val->result_ok); - return *val->contents.result; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_boolPeerHandleErrorZ_get_err(uint32_t arg) { - LDKCResult_boolPeerHandleErrorZ *val = (LDKCResult_boolPeerHandleErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKPeerHandleError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NodeIdDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_NodeIdDecodeErrorZ *val = (LDKCResult_NodeIdDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKNodeId res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NodeIdDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_NodeIdDecodeErrorZ *val = (LDKCResult_NodeIdDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_COption_NetworkUpdateZDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_COption_NetworkUpdateZDecodeErrorZ *val = (LDKCResult_COption_NetworkUpdateZDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - uint64_t res_ref = ((uint64_t)&(*val->contents.result)) | 1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_COption_NetworkUpdateZDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_COption_NetworkUpdateZDecodeErrorZ *val = (LDKCResult_COption_NetworkUpdateZDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; + +static inline struct LDKLightningError CResult_RouteLightningErrorZ_get_err(LDKCResult_RouteLightningErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return LightningError_clone(&*owner->contents.err); } -typedef struct LDKAccess_JCalls { - atomic_size_t refcnt; - uint32_t get_utxo_meth; -} LDKAccess_JCalls; -static void LDKAccess_JCalls_free(void* this_arg) { - LDKAccess_JCalls *j_calls = (LDKAccess_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->get_utxo_meth); - FREE(j_calls); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_get_err(uint32_t owner) { + LDKCResult_RouteLightningErrorZ* owner_conv = (LDKCResult_RouteLightningErrorZ*)(owner & ~1); + LDKLightningError ret_var = CResult_RouteLightningErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -LDKCResult_TxOutAccessErrorZ get_utxo_LDKAccess_jcall(const void* this_arg, const uint8_t (* genesis_hash)[32], uint64_t short_channel_id) { - LDKAccess_JCalls *j_calls = (LDKAccess_JCalls*) this_arg; - int8_tArray genesis_hash_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(genesis_hash_arr + 4), *genesis_hash, 32); - uint32_t ret = js_invoke_function_2(j_calls->get_utxo_meth, genesis_hash_arr, short_channel_id); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_TxOutAccessErrorZ ret_conv = *(LDKCResult_TxOutAccessErrorZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; + +static inline void CResult_NoneLightningErrorZ_get_ok(LDKCResult_NoneLightningErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; } -static void LDKAccess_JCalls_cloned(LDKAccess* new_obj) { - LDKAccess_JCalls *j_calls = (LDKAccess_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); +void __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_get_ok(uint32_t owner) { + LDKCResult_NoneLightningErrorZ* owner_conv = (LDKCResult_NoneLightningErrorZ*)(owner & ~1); + CResult_NoneLightningErrorZ_get_ok(owner_conv); } -static inline LDKAccess LDKAccess_init (/*TODO: JS Object Reference */void* o) { - LDKAccess_JCalls *calls = MALLOC(sizeof(LDKAccess_JCalls), "LDKAccess_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - LDKAccess ret = { - .this_arg = (void*) calls, - .get_utxo = get_utxo_LDKAccess_jcall, - .free = LDKAccess_JCalls_free, - }; - return ret; -} -long __attribute__((visibility("default"))) TS_LDKAccess_new(/*TODO: JS Object Reference */void* o) { - LDKAccess *res_ptr = MALLOC(sizeof(LDKAccess), "LDKAccess"); - *res_ptr = LDKAccess_init(o); - return (long)res_ptr; +static inline struct LDKLightningError CResult_NoneLightningErrorZ_get_err(LDKCResult_NoneLightningErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return LightningError_clone(&*owner->contents.err); } -uint32_t __attribute__((visibility("default"))) TS_Access_get_utxo(uint32_t this_arg, int8_tArray genesis_hash, int64_t short_channel_id) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKAccess* this_arg_conv = (LDKAccess*)this_arg_ptr; - unsigned char genesis_hash_arr[32]; - CHECK(*((uint32_t*)genesis_hash) == 32); - memcpy(genesis_hash_arr, (uint8_t*)(genesis_hash + 4), 32); - unsigned char (*genesis_hash_ref)[32] = &genesis_hash_arr; - LDKCResult_TxOutAccessErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxOutAccessErrorZ), "LDKCResult_TxOutAccessErrorZ"); - *ret_conv = (this_arg_conv->get_utxo)(this_arg_conv->this_arg, genesis_hash_ref, short_channel_id); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_get_err(uint32_t owner) { + LDKCResult_NoneLightningErrorZ* owner_conv = (LDKCResult_NoneLightningErrorZ*)(owner & ~1); + LDKLightningError ret_var = CResult_NoneLightningErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKCOption_AccessZ_ref_from_ptr(uint32_t ptr) { - LDKCOption_AccessZ *obj = (LDKCOption_AccessZ*)(ptr & ~1); - switch(obj->tag) { - case LDKCOption_AccessZ_Some: { - LDKAccess* some_ret = MALLOC(sizeof(LDKAccess), "LDKAccess"); - *some_ret = obj->some; - // Warning: We likely need to clone here, but no clone is available, so we just do it for Java instances - return 0 /* LDKCOption_AccessZ - Some */; (void) (uint64_t)some_ret; - } - case LDKCOption_AccessZ_None: { - return 0 /* LDKCOption_AccessZ - None */; - } - default: abort(); - } +static inline struct LDKPublicKey C2Tuple_PublicKeyTypeZ_get_a(LDKC2Tuple_PublicKeyTypeZ *NONNULL_PTR owner){ + return owner->a; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_DirectionalChannelInfoDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_DirectionalChannelInfoDecodeErrorZ *val = (LDKCResult_DirectionalChannelInfoDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKDirectionalChannelInfo res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_DirectionalChannelInfoDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_DirectionalChannelInfoDecodeErrorZ *val = (LDKCResult_DirectionalChannelInfoDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelInfoDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ChannelInfoDecodeErrorZ *val = (LDKCResult_ChannelInfoDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKChannelInfo res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelInfoDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ChannelInfoDecodeErrorZ *val = (LDKCResult_ChannelInfoDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RoutingFeesDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_RoutingFeesDecodeErrorZ *val = (LDKCResult_RoutingFeesDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKRoutingFees res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RoutingFeesDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_RoutingFeesDecodeErrorZ *val = (LDKCResult_RoutingFeesDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NodeAnnouncementInfoDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_NodeAnnouncementInfoDecodeErrorZ *val = (LDKCResult_NodeAnnouncementInfoDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKNodeAnnouncementInfo res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NodeAnnouncementInfoDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_NodeAnnouncementInfoDecodeErrorZ *val = (LDKCResult_NodeAnnouncementInfoDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; +int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_PublicKeyTypeZ_get_a(uint32_t owner) { + LDKC2Tuple_PublicKeyTypeZ* owner_conv = (LDKC2Tuple_PublicKeyTypeZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, C2Tuple_PublicKeyTypeZ_get_a(owner_conv).compressed_form, 33); + return ret_arr; } -static inline LDKCVec_u64Z CVec_u64Z_clone(const LDKCVec_u64Z *orig) { - LDKCVec_u64Z ret = { .data = MALLOC(sizeof(int64_t) * orig->datalen, "LDKCVec_u64Z clone bytes"), .datalen = orig->datalen }; - memcpy(ret.data, orig->data, sizeof(int64_t) * ret.datalen); - return ret; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NodeInfoDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_NodeInfoDecodeErrorZ *val = (LDKCResult_NodeInfoDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKNodeInfo res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NodeInfoDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_NodeInfoDecodeErrorZ *val = (LDKCResult_NodeInfoDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NetworkGraphDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_NetworkGraphDecodeErrorZ *val = (LDKCResult_NetworkGraphDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKNetworkGraph res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NetworkGraphDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_NetworkGraphDecodeErrorZ *val = (LDKCResult_NetworkGraphDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCOption_CVec_NetAddressZZ_ref_from_ptr(uint32_t ptr) { - LDKCOption_CVec_NetAddressZZ *obj = (LDKCOption_CVec_NetAddressZZ*)(ptr & ~1); - switch(obj->tag) { - case LDKCOption_CVec_NetAddressZZ_Some: { - LDKCVec_NetAddressZ some_var = obj->some; - uint32_tArray some_arr = NULL; - some_arr = init_arr(some_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *some_arr_ptr = (uint32_t*)(some_arr + 4); - for (size_t m = 0; m < some_var.datalen; m++) { - uint64_t some_conv_12_ref = ((uint64_t)&some_var.data[m]) | 1; - some_arr_ptr[m] = some_conv_12_ref; - } - - return 0 /* LDKCOption_CVec_NetAddressZZ - Some */; (void) some_arr; - } - case LDKCOption_CVec_NetAddressZZ_None: { - return 0 /* LDKCOption_CVec_NetAddressZZ - None */; - } - default: abort(); - } -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NetAddressDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_NetAddressDecodeErrorZ *val = (LDKCResult_NetAddressDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - uint64_t res_ref = ((uint64_t)&(*val->contents.result)) | 1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NetAddressDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_NetAddressDecodeErrorZ *val = (LDKCResult_NetAddressDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -static inline LDKCVec_UpdateAddHTLCZ CVec_UpdateAddHTLCZ_clone(const LDKCVec_UpdateAddHTLCZ *orig) { - LDKCVec_UpdateAddHTLCZ ret = { .data = MALLOC(sizeof(LDKUpdateAddHTLC) * orig->datalen, "LDKCVec_UpdateAddHTLCZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = UpdateAddHTLC_clone(&orig->data[i]); - } - return ret; -} -static inline LDKCVec_UpdateFulfillHTLCZ CVec_UpdateFulfillHTLCZ_clone(const LDKCVec_UpdateFulfillHTLCZ *orig) { - LDKCVec_UpdateFulfillHTLCZ ret = { .data = MALLOC(sizeof(LDKUpdateFulfillHTLC) * orig->datalen, "LDKCVec_UpdateFulfillHTLCZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = UpdateFulfillHTLC_clone(&orig->data[i]); - } - return ret; + +static inline struct LDKType C2Tuple_PublicKeyTypeZ_get_b(LDKC2Tuple_PublicKeyTypeZ *NONNULL_PTR owner){ + return Type_clone(&owner->b); } -static inline LDKCVec_UpdateFailHTLCZ CVec_UpdateFailHTLCZ_clone(const LDKCVec_UpdateFailHTLCZ *orig) { - LDKCVec_UpdateFailHTLCZ ret = { .data = MALLOC(sizeof(LDKUpdateFailHTLC) * orig->datalen, "LDKCVec_UpdateFailHTLCZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = UpdateFailHTLC_clone(&orig->data[i]); - } - return ret; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PublicKeyTypeZ_get_b(uint32_t owner) { + LDKC2Tuple_PublicKeyTypeZ* owner_conv = (LDKC2Tuple_PublicKeyTypeZ*)(owner & ~1); + LDKType* ret_ret = MALLOC(sizeof(LDKType), "LDKType"); + *ret_ret = C2Tuple_PublicKeyTypeZ_get_b(owner_conv); + return (uint64_t)ret_ret; } -static inline LDKCVec_UpdateFailMalformedHTLCZ CVec_UpdateFailMalformedHTLCZ_clone(const LDKCVec_UpdateFailMalformedHTLCZ *orig) { - LDKCVec_UpdateFailMalformedHTLCZ ret = { .data = MALLOC(sizeof(LDKUpdateFailMalformedHTLC) * orig->datalen, "LDKCVec_UpdateFailMalformedHTLCZ clone bytes"), .datalen = orig->datalen }; + +static inline LDKCVec_C2Tuple_PublicKeyTypeZZ CVec_C2Tuple_PublicKeyTypeZZ_clone(const LDKCVec_C2Tuple_PublicKeyTypeZZ *orig) { + LDKCVec_C2Tuple_PublicKeyTypeZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_PublicKeyTypeZ) * orig->datalen, "LDKCVec_C2Tuple_PublicKeyTypeZZ clone bytes"), .datalen = orig->datalen }; for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = UpdateFailMalformedHTLC_clone(&orig->data[i]); + ret.data[i] = C2Tuple_PublicKeyTypeZ_clone(&orig->data[i]); } return ret; } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_AcceptChannelDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_AcceptChannelDecodeErrorZ *val = (LDKCResult_AcceptChannelDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKAcceptChannel res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_AcceptChannelDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_AcceptChannelDecodeErrorZ *val = (LDKCResult_AcceptChannelDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_AnnouncementSignaturesDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_AnnouncementSignaturesDecodeErrorZ *val = (LDKCResult_AnnouncementSignaturesDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKAnnouncementSignatures res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_AnnouncementSignaturesDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_AnnouncementSignaturesDecodeErrorZ *val = (LDKCResult_AnnouncementSignaturesDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelReestablishDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ChannelReestablishDecodeErrorZ *val = (LDKCResult_ChannelReestablishDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKChannelReestablish res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelReestablishDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ChannelReestablishDecodeErrorZ *val = (LDKCResult_ChannelReestablishDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ClosingSignedDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ClosingSignedDecodeErrorZ *val = (LDKCResult_ClosingSignedDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKClosingSigned res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ClosingSignedDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ClosingSignedDecodeErrorZ *val = (LDKCResult_ClosingSignedDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ClosingSignedFeeRangeDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ClosingSignedFeeRangeDecodeErrorZ *val = (LDKCResult_ClosingSignedFeeRangeDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKClosingSignedFeeRange res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ClosingSignedFeeRangeDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ClosingSignedFeeRangeDecodeErrorZ *val = (LDKCResult_ClosingSignedFeeRangeDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_CommitmentSignedDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_CommitmentSignedDecodeErrorZ *val = (LDKCResult_CommitmentSignedDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKCommitmentSigned res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_CommitmentSignedDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_CommitmentSignedDecodeErrorZ *val = (LDKCResult_CommitmentSignedDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_FundingCreatedDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_FundingCreatedDecodeErrorZ *val = (LDKCResult_FundingCreatedDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKFundingCreated res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_FundingCreatedDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_FundingCreatedDecodeErrorZ *val = (LDKCResult_FundingCreatedDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_FundingSignedDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_FundingSignedDecodeErrorZ *val = (LDKCResult_FundingSignedDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKFundingSigned res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_FundingSignedDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_FundingSignedDecodeErrorZ *val = (LDKCResult_FundingSignedDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_FundingLockedDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_FundingLockedDecodeErrorZ *val = (LDKCResult_FundingLockedDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKFundingLocked res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_FundingLockedDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_FundingLockedDecodeErrorZ *val = (LDKCResult_FundingLockedDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_InitDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_InitDecodeErrorZ *val = (LDKCResult_InitDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKInit res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_InitDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_InitDecodeErrorZ *val = (LDKCResult_InitDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_OpenChannelDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_OpenChannelDecodeErrorZ *val = (LDKCResult_OpenChannelDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKOpenChannel res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_OpenChannelDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_OpenChannelDecodeErrorZ *val = (LDKCResult_OpenChannelDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RevokeAndACKDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_RevokeAndACKDecodeErrorZ *val = (LDKCResult_RevokeAndACKDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKRevokeAndACK res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_RevokeAndACKDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_RevokeAndACKDecodeErrorZ *val = (LDKCResult_RevokeAndACKDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ShutdownDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ShutdownDecodeErrorZ *val = (LDKCResult_ShutdownDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKShutdown res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ShutdownDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ShutdownDecodeErrorZ *val = (LDKCResult_ShutdownDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UpdateFailHTLCDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_UpdateFailHTLCDecodeErrorZ *val = (LDKCResult_UpdateFailHTLCDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKUpdateFailHTLC res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UpdateFailHTLCDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_UpdateFailHTLCDecodeErrorZ *val = (LDKCResult_UpdateFailHTLCDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ *val = (LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKUpdateFailMalformedHTLC res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ *val = (LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UpdateFeeDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_UpdateFeeDecodeErrorZ *val = (LDKCResult_UpdateFeeDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKUpdateFee res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UpdateFeeDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_UpdateFeeDecodeErrorZ *val = (LDKCResult_UpdateFeeDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UpdateFulfillHTLCDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_UpdateFulfillHTLCDecodeErrorZ *val = (LDKCResult_UpdateFulfillHTLCDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKUpdateFulfillHTLC res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UpdateFulfillHTLCDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_UpdateFulfillHTLCDecodeErrorZ *val = (LDKCResult_UpdateFulfillHTLCDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UpdateAddHTLCDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_UpdateAddHTLCDecodeErrorZ *val = (LDKCResult_UpdateAddHTLCDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKUpdateAddHTLC res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UpdateAddHTLCDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_UpdateAddHTLCDecodeErrorZ *val = (LDKCResult_UpdateAddHTLCDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PingDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_PingDecodeErrorZ *val = (LDKCResult_PingDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKPing res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PingDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_PingDecodeErrorZ *val = (LDKCResult_PingDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PongDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_PongDecodeErrorZ *val = (LDKCResult_PongDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKPong res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_PongDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_PongDecodeErrorZ *val = (LDKCResult_PongDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ *val = (LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKUnsignedChannelAnnouncement res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ *val = (LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelAnnouncementDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ChannelAnnouncementDecodeErrorZ *val = (LDKCResult_ChannelAnnouncementDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKChannelAnnouncement res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelAnnouncementDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ChannelAnnouncementDecodeErrorZ *val = (LDKCResult_ChannelAnnouncementDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UnsignedChannelUpdateDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_UnsignedChannelUpdateDecodeErrorZ *val = (LDKCResult_UnsignedChannelUpdateDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKUnsignedChannelUpdate res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UnsignedChannelUpdateDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_UnsignedChannelUpdateDecodeErrorZ *val = (LDKCResult_UnsignedChannelUpdateDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelUpdateDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ChannelUpdateDecodeErrorZ *val = (LDKCResult_ChannelUpdateDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKChannelUpdate res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ChannelUpdateDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ChannelUpdateDecodeErrorZ *val = (LDKCResult_ChannelUpdateDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ErrorMessageDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ErrorMessageDecodeErrorZ *val = (LDKCResult_ErrorMessageDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKErrorMessage res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ErrorMessageDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ErrorMessageDecodeErrorZ *val = (LDKCResult_ErrorMessageDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ *val = (LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKUnsignedNodeAnnouncement res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ *val = (LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NodeAnnouncementDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_NodeAnnouncementDecodeErrorZ *val = (LDKCResult_NodeAnnouncementDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKNodeAnnouncement res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_NodeAnnouncementDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_NodeAnnouncementDecodeErrorZ *val = (LDKCResult_NodeAnnouncementDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_QueryShortChannelIdsDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_QueryShortChannelIdsDecodeErrorZ *val = (LDKCResult_QueryShortChannelIdsDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKQueryShortChannelIds res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_QueryShortChannelIdsDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_QueryShortChannelIdsDecodeErrorZ *val = (LDKCResult_QueryShortChannelIdsDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ *val = (LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKReplyShortChannelIdsEnd res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ *val = (LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_QueryChannelRangeDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_QueryChannelRangeDecodeErrorZ *val = (LDKCResult_QueryChannelRangeDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKQueryChannelRange res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_QueryChannelRangeDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_QueryChannelRangeDecodeErrorZ *val = (LDKCResult_QueryChannelRangeDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ReplyChannelRangeDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_ReplyChannelRangeDecodeErrorZ *val = (LDKCResult_ReplyChannelRangeDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKReplyChannelRange res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_ReplyChannelRangeDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_ReplyChannelRangeDecodeErrorZ *val = (LDKCResult_ReplyChannelRangeDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_GossipTimestampFilterDecodeErrorZ_get_ok(uint32_t arg) { - LDKCResult_GossipTimestampFilterDecodeErrorZ *val = (LDKCResult_GossipTimestampFilterDecodeErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKGossipTimestampFilter res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_GossipTimestampFilterDecodeErrorZ_get_err(uint32_t arg) { - LDKCResult_GossipTimestampFilterDecodeErrorZ *val = (LDKCResult_GossipTimestampFilterDecodeErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - LDKDecodeError err_var = (*val->contents.err); - uint64_t err_ref = 0; - CHECK((((uint64_t)err_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&err_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(err_var); - err_ref = (uint64_t)err_var.inner & ~1; - return err_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKSignOrCreationError_ref_from_ptr(uint32_t ptr) { - LDKSignOrCreationError *obj = (LDKSignOrCreationError*)(ptr & ~1); +uint32_t __attribute__((visibility("default"))) TS_LDKErrorAction_ref_from_ptr(uint32_t ptr) { + LDKErrorAction *obj = (LDKErrorAction*)(ptr & ~1); switch(obj->tag) { - case LDKSignOrCreationError_SignError: { - return 0 /* LDKSignOrCreationError - SignError */; + case LDKErrorAction_DisconnectPeer: { + LDKErrorMessage msg_var = obj->disconnect_peer.msg; + uint64_t msg_ref = 0; + if ((uint64_t)msg_var.inner > 4096) { + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + } + return 0 /* LDKErrorAction - DisconnectPeer */; (void) msg_ref; + } + case LDKErrorAction_IgnoreError: { + return 0 /* LDKErrorAction - IgnoreError */; + } + case LDKErrorAction_IgnoreAndLog: { + uint32_t ignore_and_log_conv = LDKLevel_to_js(obj->ignore_and_log); + return 0 /* LDKErrorAction - IgnoreAndLog */; (void) ignore_and_log_conv; + } + case LDKErrorAction_IgnoreDuplicateGossip: { + return 0 /* LDKErrorAction - IgnoreDuplicateGossip */; } - case LDKSignOrCreationError_CreationError: { - uint32_t creation_error_conv = LDKCreationError_to_js(obj->creation_error); - return 0 /* LDKSignOrCreationError - CreationError */; (void) creation_error_conv; + case LDKErrorAction_SendErrorMessage: { + LDKErrorMessage msg_var = obj->send_error_message.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKErrorAction - SendErrorMessage */; (void) msg_ref; } default: abort(); } } -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_InvoiceSignOrCreationErrorZ_get_ok(uint32_t arg) { - LDKCResult_InvoiceSignOrCreationErrorZ *val = (LDKCResult_InvoiceSignOrCreationErrorZ*)(arg & ~1); - CHECK(val->result_ok); - LDKInvoice res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_InvoiceSignOrCreationErrorZ_get_err(uint32_t arg) { - LDKCResult_InvoiceSignOrCreationErrorZ *val = (LDKCResult_InvoiceSignOrCreationErrorZ*)(arg & ~1); - CHECK(!val->result_ok); - uint64_t err_ref = ((uint64_t)&(*val->contents.err)) | 1; - return err_ref; -} -typedef struct LDKFilter_JCalls { - atomic_size_t refcnt; - uint32_t register_tx_meth; - uint32_t register_output_meth; -} LDKFilter_JCalls; -static void LDKFilter_JCalls_free(void* this_arg) { - LDKFilter_JCalls *j_calls = (LDKFilter_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->register_tx_meth); - js_free(j_calls->register_output_meth); - FREE(j_calls); - } -} -void register_tx_LDKFilter_jcall(const void* this_arg, const uint8_t (* txid)[32], LDKu8slice script_pubkey) { - LDKFilter_JCalls *j_calls = (LDKFilter_JCalls*) this_arg; - int8_tArray txid_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(txid_arr + 4), *txid, 32); - LDKu8slice script_pubkey_var = script_pubkey; - int8_tArray script_pubkey_arr = init_arr(script_pubkey_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(script_pubkey_arr + 4), script_pubkey_var.data, script_pubkey_var.datalen); - js_invoke_function_2(j_calls->register_tx_meth, txid_arr, script_pubkey_arr); -} -LDKCOption_C2Tuple_usizeTransactionZZ register_output_LDKFilter_jcall(const void* this_arg, LDKWatchedOutput output) { - LDKFilter_JCalls *j_calls = (LDKFilter_JCalls*) this_arg; - LDKWatchedOutput output_var = output; - uint64_t output_ref = 0; - CHECK((((uint64_t)output_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&output_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(output_var); - output_ref = (uint64_t)output_var.inner; - if (output_var.is_owned) { - output_ref |= 1; - } - uint32_t ret = js_invoke_function_1(j_calls->register_output_meth, output_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCOption_C2Tuple_usizeTransactionZZ ret_conv = *(LDKCOption_C2Tuple_usizeTransactionZZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; -} -static void LDKFilter_JCalls_cloned(LDKFilter* new_obj) { - LDKFilter_JCalls *j_calls = (LDKFilter_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); -} -static inline LDKFilter LDKFilter_init (/*TODO: JS Object Reference */void* o) { - LDKFilter_JCalls *calls = MALLOC(sizeof(LDKFilter_JCalls), "LDKFilter_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - - LDKFilter ret = { - .this_arg = (void*) calls, - .register_tx = register_tx_LDKFilter_jcall, - .register_output = register_output_LDKFilter_jcall, - .free = LDKFilter_JCalls_free, - }; - return ret; -} -long __attribute__((visibility("default"))) TS_LDKFilter_new(/*TODO: JS Object Reference */void* o) { - LDKFilter *res_ptr = MALLOC(sizeof(LDKFilter), "LDKFilter"); - *res_ptr = LDKFilter_init(o); - return (long)res_ptr; -} -void __attribute__((visibility("default"))) TS_Filter_register_tx(uint32_t this_arg, int8_tArray txid, int8_tArray script_pubkey) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKFilter* this_arg_conv = (LDKFilter*)this_arg_ptr; - unsigned char txid_arr[32]; - CHECK(*((uint32_t*)txid) == 32); - memcpy(txid_arr, (uint8_t*)(txid + 4), 32); - unsigned char (*txid_ref)[32] = &txid_arr; - LDKu8slice script_pubkey_ref; - script_pubkey_ref.datalen = *((uint32_t*)script_pubkey); - script_pubkey_ref.data = (int8_t*)(script_pubkey + 4); - (this_arg_conv->register_tx)(this_arg_conv->this_arg, txid_ref, script_pubkey_ref); -} - -uint32_t __attribute__((visibility("default"))) TS_Filter_register_output(uint32_t this_arg, uint32_t output) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKFilter* this_arg_conv = (LDKFilter*)this_arg_ptr; - LDKWatchedOutput output_conv; - output_conv.inner = (void*)(output & (~1)); - output_conv.is_owned = (output & 1) || (output == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(output_conv); - output_conv = WatchedOutput_clone(&output_conv); - LDKCOption_C2Tuple_usizeTransactionZZ *ret_copy = MALLOC(sizeof(LDKCOption_C2Tuple_usizeTransactionZZ), "LDKCOption_C2Tuple_usizeTransactionZZ"); - *ret_copy = (this_arg_conv->register_output)(this_arg_conv->this_arg, output_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_LDKCOption_FilterZ_ref_from_ptr(uint32_t ptr) { - LDKCOption_FilterZ *obj = (LDKCOption_FilterZ*)(ptr & ~1); +uint32_t __attribute__((visibility("default"))) TS_LDKMessageSendEvent_ref_from_ptr(uint32_t ptr) { + LDKMessageSendEvent *obj = (LDKMessageSendEvent*)(ptr & ~1); switch(obj->tag) { - case LDKCOption_FilterZ_Some: { - LDKFilter* some_ret = MALLOC(sizeof(LDKFilter), "LDKFilter"); - *some_ret = obj->some; - // Warning: We likely need to clone here, but no clone is available, so we just do it for Java instances - return 0 /* LDKCOption_FilterZ - Some */; (void) (uint64_t)some_ret; + case LDKMessageSendEvent_SendAcceptChannel: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_accept_channel.node_id.compressed_form, 33); + LDKAcceptChannel msg_var = obj->send_accept_channel.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendAcceptChannel */; (void) node_id_arr; (void) msg_ref; } - case LDKCOption_FilterZ_None: { - return 0 /* LDKCOption_FilterZ - None */; + case LDKMessageSendEvent_SendOpenChannel: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_open_channel.node_id.compressed_form, 33); + LDKOpenChannel msg_var = obj->send_open_channel.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendOpenChannel */; (void) node_id_arr; (void) msg_ref; } - default: abort(); - } -} -uint32_t __attribute__((visibility("default"))) TS_LDKCResult_LockedChannelMonitorNoneZ_get_ok(uint32_t arg) { - LDKCResult_LockedChannelMonitorNoneZ *val = (LDKCResult_LockedChannelMonitorNoneZ*)(arg & ~1); - CHECK(val->result_ok); - LDKLockedChannelMonitor res_var = (*val->contents.result); - uint64_t res_ref = 0; - CHECK((((uint64_t)res_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&res_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(res_var); - res_ref = (uint64_t)res_var.inner & ~1; - return res_ref; -} -void __attribute__((visibility("default"))) TS_LDKCResult_LockedChannelMonitorNoneZ_get_err(uint32_t arg) { - LDKCResult_LockedChannelMonitorNoneZ *val = (LDKCResult_LockedChannelMonitorNoneZ*)(arg & ~1); - CHECK(!val->result_ok); - return *val->contents.err; -} -static inline LDKCVec_OutPointZ CVec_OutPointZ_clone(const LDKCVec_OutPointZ *orig) { - LDKCVec_OutPointZ ret = { .data = MALLOC(sizeof(LDKOutPoint) * orig->datalen, "LDKCVec_OutPointZ clone bytes"), .datalen = orig->datalen }; - for (size_t i = 0; i < ret.datalen; i++) { - ret.data[i] = OutPoint_clone(&orig->data[i]); - } - return ret; -} -typedef struct LDKMessageSendEventsProvider_JCalls { - atomic_size_t refcnt; - uint32_t get_and_clear_pending_msg_events_meth; -} LDKMessageSendEventsProvider_JCalls; -static void LDKMessageSendEventsProvider_JCalls_free(void* this_arg) { - LDKMessageSendEventsProvider_JCalls *j_calls = (LDKMessageSendEventsProvider_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->get_and_clear_pending_msg_events_meth); - FREE(j_calls); - } -} -LDKCVec_MessageSendEventZ get_and_clear_pending_msg_events_LDKMessageSendEventsProvider_jcall(const void* this_arg) { - LDKMessageSendEventsProvider_JCalls *j_calls = (LDKMessageSendEventsProvider_JCalls*) this_arg; - uint32_tArray ret = js_invoke_function_0(j_calls->get_and_clear_pending_msg_events_meth); - LDKCVec_MessageSendEventZ ret_constr; - ret_constr.datalen = *((uint32_t*)ret); - if (ret_constr.datalen > 0) - ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKMessageSendEvent), "LDKCVec_MessageSendEventZ Elements"); - else - ret_constr.data = NULL; - uint32_t* ret_vals = (uint32_t*)(ret + 4); - for (size_t s = 0; s < ret_constr.datalen; s++) { - uint32_t ret_conv_18 = ret_vals[s]; - void* ret_conv_18_ptr = (void*)(((uint64_t)ret_conv_18) & ~1); - CHECK_ACCESS(ret_conv_18_ptr); - LDKMessageSendEvent ret_conv_18_conv = *(LDKMessageSendEvent*)(ret_conv_18_ptr); - FREE((void*)ret_conv_18); - ret_constr.data[s] = ret_conv_18_conv; - } - return ret_constr; -} -static void LDKMessageSendEventsProvider_JCalls_cloned(LDKMessageSendEventsProvider* new_obj) { - LDKMessageSendEventsProvider_JCalls *j_calls = (LDKMessageSendEventsProvider_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); -} -static inline LDKMessageSendEventsProvider LDKMessageSendEventsProvider_init (/*TODO: JS Object Reference */void* o) { - LDKMessageSendEventsProvider_JCalls *calls = MALLOC(sizeof(LDKMessageSendEventsProvider_JCalls), "LDKMessageSendEventsProvider_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - - LDKMessageSendEventsProvider ret = { - .this_arg = (void*) calls, - .get_and_clear_pending_msg_events = get_and_clear_pending_msg_events_LDKMessageSendEventsProvider_jcall, - .free = LDKMessageSendEventsProvider_JCalls_free, - }; - return ret; -} -long __attribute__((visibility("default"))) TS_LDKMessageSendEventsProvider_new(/*TODO: JS Object Reference */void* o) { - LDKMessageSendEventsProvider *res_ptr = MALLOC(sizeof(LDKMessageSendEventsProvider), "LDKMessageSendEventsProvider"); - *res_ptr = LDKMessageSendEventsProvider_init(o); - return (long)res_ptr; -} -uint32_tArray __attribute__((visibility("default"))) TS_MessageSendEventsProvider_get_and_clear_pending_msg_events(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKMessageSendEventsProvider* this_arg_conv = (LDKMessageSendEventsProvider*)this_arg_ptr; - LDKCVec_MessageSendEventZ ret_var = (this_arg_conv->get_and_clear_pending_msg_events)(this_arg_conv->this_arg); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t s = 0; s < ret_var.datalen; s++) { - LDKMessageSendEvent *ret_conv_18_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_conv_18_copy = ret_var.data[s]; - uint64_t ret_conv_18_ref = (uint64_t)ret_conv_18_copy; - ret_arr_ptr[s] = ret_conv_18_ref; - } - - FREE(ret_var.data); - return ret_arr; -} - -typedef struct LDKEventHandler_JCalls { - atomic_size_t refcnt; - uint32_t handle_event_meth; -} LDKEventHandler_JCalls; -static void LDKEventHandler_JCalls_free(void* this_arg) { - LDKEventHandler_JCalls *j_calls = (LDKEventHandler_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->handle_event_meth); - FREE(j_calls); - } -} -void handle_event_LDKEventHandler_jcall(const void* this_arg, const LDKEvent * event) { - LDKEventHandler_JCalls *j_calls = (LDKEventHandler_JCalls*) this_arg; - LDKEvent *ret_event = MALLOC(sizeof(LDKEvent), "LDKEvent ret conversion"); - *ret_event = Event_clone(event); - js_invoke_function_1(j_calls->handle_event_meth, (uint64_t)ret_event); -} -static void LDKEventHandler_JCalls_cloned(LDKEventHandler* new_obj) { - LDKEventHandler_JCalls *j_calls = (LDKEventHandler_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); -} -static inline LDKEventHandler LDKEventHandler_init (/*TODO: JS Object Reference */void* o) { - LDKEventHandler_JCalls *calls = MALLOC(sizeof(LDKEventHandler_JCalls), "LDKEventHandler_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - - LDKEventHandler ret = { - .this_arg = (void*) calls, - .handle_event = handle_event_LDKEventHandler_jcall, - .free = LDKEventHandler_JCalls_free, - }; - return ret; -} -long __attribute__((visibility("default"))) TS_LDKEventHandler_new(/*TODO: JS Object Reference */void* o) { - LDKEventHandler *res_ptr = MALLOC(sizeof(LDKEventHandler), "LDKEventHandler"); - *res_ptr = LDKEventHandler_init(o); - return (long)res_ptr; -} -void __attribute__((visibility("default"))) TS_EventHandler_handle_event(uint32_t this_arg, uint32_t event) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKEventHandler* this_arg_conv = (LDKEventHandler*)this_arg_ptr; - LDKEvent* event_conv = (LDKEvent*)event; - (this_arg_conv->handle_event)(this_arg_conv->this_arg, event_conv); -} - -typedef struct LDKEventsProvider_JCalls { - atomic_size_t refcnt; - uint32_t process_pending_events_meth; -} LDKEventsProvider_JCalls; -static void LDKEventsProvider_JCalls_free(void* this_arg) { - LDKEventsProvider_JCalls *j_calls = (LDKEventsProvider_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->process_pending_events_meth); - FREE(j_calls); - } -} -void process_pending_events_LDKEventsProvider_jcall(const void* this_arg, LDKEventHandler handler) { - LDKEventsProvider_JCalls *j_calls = (LDKEventsProvider_JCalls*) this_arg; - LDKEventHandler* handler_ret = MALLOC(sizeof(LDKEventHandler), "LDKEventHandler"); - *handler_ret = handler; - js_invoke_function_1(j_calls->process_pending_events_meth, (uint64_t)handler_ret); -} -static void LDKEventsProvider_JCalls_cloned(LDKEventsProvider* new_obj) { - LDKEventsProvider_JCalls *j_calls = (LDKEventsProvider_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); -} -static inline LDKEventsProvider LDKEventsProvider_init (/*TODO: JS Object Reference */void* o) { - LDKEventsProvider_JCalls *calls = MALLOC(sizeof(LDKEventsProvider_JCalls), "LDKEventsProvider_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - - LDKEventsProvider ret = { - .this_arg = (void*) calls, - .process_pending_events = process_pending_events_LDKEventsProvider_jcall, - .free = LDKEventsProvider_JCalls_free, - }; - return ret; -} -long __attribute__((visibility("default"))) TS_LDKEventsProvider_new(/*TODO: JS Object Reference */void* o) { - LDKEventsProvider *res_ptr = MALLOC(sizeof(LDKEventsProvider), "LDKEventsProvider"); - *res_ptr = LDKEventsProvider_init(o); - return (long)res_ptr; -} -void __attribute__((visibility("default"))) TS_EventsProvider_process_pending_events(uint32_t this_arg, uint32_t handler) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKEventsProvider* this_arg_conv = (LDKEventsProvider*)this_arg_ptr; - void* handler_ptr = (void*)(((uint64_t)handler) & ~1); - CHECK_ACCESS(handler_ptr); - LDKEventHandler handler_conv = *(LDKEventHandler*)(handler_ptr); - (this_arg_conv->process_pending_events)(this_arg_conv->this_arg, handler_conv); -} - -typedef struct LDKListen_JCalls { - atomic_size_t refcnt; - uint32_t block_connected_meth; - uint32_t block_disconnected_meth; -} LDKListen_JCalls; -static void LDKListen_JCalls_free(void* this_arg) { - LDKListen_JCalls *j_calls = (LDKListen_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->block_connected_meth); - js_free(j_calls->block_disconnected_meth); - FREE(j_calls); - } -} -void block_connected_LDKListen_jcall(const void* this_arg, LDKu8slice block, uint32_t height) { - LDKListen_JCalls *j_calls = (LDKListen_JCalls*) this_arg; - LDKu8slice block_var = block; - int8_tArray block_arr = init_arr(block_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(block_arr + 4), block_var.data, block_var.datalen); - js_invoke_function_2(j_calls->block_connected_meth, block_arr, height); -} -void block_disconnected_LDKListen_jcall(const void* this_arg, const uint8_t (* header)[80], uint32_t height) { - LDKListen_JCalls *j_calls = (LDKListen_JCalls*) this_arg; - int8_tArray header_arr = init_arr(80, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(header_arr + 4), *header, 80); - js_invoke_function_2(j_calls->block_disconnected_meth, header_arr, height); -} -static void LDKListen_JCalls_cloned(LDKListen* new_obj) { - LDKListen_JCalls *j_calls = (LDKListen_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); -} -static inline LDKListen LDKListen_init (/*TODO: JS Object Reference */void* o) { - LDKListen_JCalls *calls = MALLOC(sizeof(LDKListen_JCalls), "LDKListen_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - - LDKListen ret = { - .this_arg = (void*) calls, - .block_connected = block_connected_LDKListen_jcall, - .block_disconnected = block_disconnected_LDKListen_jcall, - .free = LDKListen_JCalls_free, - }; - return ret; -} -long __attribute__((visibility("default"))) TS_LDKListen_new(/*TODO: JS Object Reference */void* o) { - LDKListen *res_ptr = MALLOC(sizeof(LDKListen), "LDKListen"); - *res_ptr = LDKListen_init(o); - return (long)res_ptr; -} -void __attribute__((visibility("default"))) TS_Listen_block_connected(uint32_t this_arg, int8_tArray block, int32_t height) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKListen* this_arg_conv = (LDKListen*)this_arg_ptr; - LDKu8slice block_ref; - block_ref.datalen = *((uint32_t*)block); - block_ref.data = (int8_t*)(block + 4); - (this_arg_conv->block_connected)(this_arg_conv->this_arg, block_ref, height); -} - -void __attribute__((visibility("default"))) TS_Listen_block_disconnected(uint32_t this_arg, int8_tArray header, int32_t height) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKListen* this_arg_conv = (LDKListen*)this_arg_ptr; - unsigned char header_arr[80]; - CHECK(*((uint32_t*)header) == 80); - memcpy(header_arr, (uint8_t*)(header + 4), 80); - unsigned char (*header_ref)[80] = &header_arr; - (this_arg_conv->block_disconnected)(this_arg_conv->this_arg, header_ref, height); -} - -typedef struct LDKConfirm_JCalls { - atomic_size_t refcnt; - uint32_t transactions_confirmed_meth; - uint32_t transaction_unconfirmed_meth; - uint32_t best_block_updated_meth; - uint32_t get_relevant_txids_meth; -} LDKConfirm_JCalls; -static void LDKConfirm_JCalls_free(void* this_arg) { - LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->transactions_confirmed_meth); - js_free(j_calls->transaction_unconfirmed_meth); - js_free(j_calls->best_block_updated_meth); - js_free(j_calls->get_relevant_txids_meth); - FREE(j_calls); - } -} -void transactions_confirmed_LDKConfirm_jcall(const void* this_arg, const uint8_t (* header)[80], LDKCVec_C2Tuple_usizeTransactionZZ txdata, uint32_t height) { - LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) this_arg; - int8_tArray header_arr = init_arr(80, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(header_arr + 4), *header, 80); - LDKCVec_C2Tuple_usizeTransactionZZ txdata_var = txdata; - uint32_tArray txdata_arr = NULL; - txdata_arr = init_arr(txdata_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *txdata_arr_ptr = (uint32_t*)(txdata_arr + 4); - for (size_t c = 0; c < txdata_var.datalen; c++) { - LDKC2Tuple_usizeTransactionZ* txdata_conv_28_conv = MALLOC(sizeof(LDKC2Tuple_usizeTransactionZ), "LDKC2Tuple_usizeTransactionZ"); - *txdata_conv_28_conv = txdata_var.data[c]; - txdata_arr_ptr[c] = ((uint64_t)txdata_conv_28_conv); - } - - FREE(txdata_var.data); - js_invoke_function_3(j_calls->transactions_confirmed_meth, header_arr, txdata_arr, height); -} -void transaction_unconfirmed_LDKConfirm_jcall(const void* this_arg, const uint8_t (* txid)[32]) { - LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) this_arg; - int8_tArray txid_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(txid_arr + 4), *txid, 32); - js_invoke_function_1(j_calls->transaction_unconfirmed_meth, txid_arr); -} -void best_block_updated_LDKConfirm_jcall(const void* this_arg, const uint8_t (* header)[80], uint32_t height) { - LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) this_arg; - int8_tArray header_arr = init_arr(80, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(header_arr + 4), *header, 80); - js_invoke_function_2(j_calls->best_block_updated_meth, header_arr, height); -} -LDKCVec_TxidZ get_relevant_txids_LDKConfirm_jcall(const void* this_arg) { - LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) this_arg; - ptrArray ret = js_invoke_function_0(j_calls->get_relevant_txids_meth); - LDKCVec_TxidZ ret_constr; - ret_constr.datalen = *((uint32_t*)ret); - if (ret_constr.datalen > 0) - ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKThirtyTwoBytes), "LDKCVec_TxidZ Elements"); - else - ret_constr.data = NULL; - int8_tArray* ret_vals = (int8_tArray*)(ret + 4); - for (size_t m = 0; m < ret_constr.datalen; m++) { - int8_tArray ret_conv_12 = ret_vals[m]; - LDKThirtyTwoBytes ret_conv_12_ref; - CHECK(*((uint32_t*)ret_conv_12) == 32); - memcpy(ret_conv_12_ref.data, (uint8_t*)(ret_conv_12 + 4), 32); - ret_constr.data[m] = ret_conv_12_ref; - } - return ret_constr; -} -static void LDKConfirm_JCalls_cloned(LDKConfirm* new_obj) { - LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); -} -static inline LDKConfirm LDKConfirm_init (/*TODO: JS Object Reference */void* o) { - LDKConfirm_JCalls *calls = MALLOC(sizeof(LDKConfirm_JCalls), "LDKConfirm_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - - LDKConfirm ret = { - .this_arg = (void*) calls, - .transactions_confirmed = transactions_confirmed_LDKConfirm_jcall, - .transaction_unconfirmed = transaction_unconfirmed_LDKConfirm_jcall, - .best_block_updated = best_block_updated_LDKConfirm_jcall, - .get_relevant_txids = get_relevant_txids_LDKConfirm_jcall, - .free = LDKConfirm_JCalls_free, - }; - return ret; -} -long __attribute__((visibility("default"))) TS_LDKConfirm_new(/*TODO: JS Object Reference */void* o) { - LDKConfirm *res_ptr = MALLOC(sizeof(LDKConfirm), "LDKConfirm"); - *res_ptr = LDKConfirm_init(o); - return (long)res_ptr; -} -void __attribute__((visibility("default"))) TS_Confirm_transactions_confirmed(uint32_t this_arg, int8_tArray header, uint32_tArray txdata, int32_t height) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKConfirm* this_arg_conv = (LDKConfirm*)this_arg_ptr; - unsigned char header_arr[80]; - CHECK(*((uint32_t*)header) == 80); - memcpy(header_arr, (uint8_t*)(header + 4), 80); - unsigned char (*header_ref)[80] = &header_arr; - LDKCVec_C2Tuple_usizeTransactionZZ txdata_constr; - txdata_constr.datalen = *((uint32_t*)txdata); - if (txdata_constr.datalen > 0) - txdata_constr.data = MALLOC(txdata_constr.datalen * sizeof(LDKC2Tuple_usizeTransactionZ), "LDKCVec_C2Tuple_usizeTransactionZZ Elements"); - else - txdata_constr.data = NULL; - uint32_t* txdata_vals = (uint32_t*)(txdata + 4); - for (size_t c = 0; c < txdata_constr.datalen; c++) { - uint32_t txdata_conv_28 = txdata_vals[c]; - void* txdata_conv_28_ptr = (void*)(((uint64_t)txdata_conv_28) & ~1); - CHECK_ACCESS(txdata_conv_28_ptr); - LDKC2Tuple_usizeTransactionZ txdata_conv_28_conv = *(LDKC2Tuple_usizeTransactionZ*)(txdata_conv_28_ptr); - txdata_conv_28_conv = C2Tuple_usizeTransactionZ_clone((LDKC2Tuple_usizeTransactionZ*)(((uint64_t)txdata_conv_28) & ~1)); - txdata_constr.data[c] = txdata_conv_28_conv; - } - (this_arg_conv->transactions_confirmed)(this_arg_conv->this_arg, header_ref, txdata_constr, height); -} - -void __attribute__((visibility("default"))) TS_Confirm_transaction_unconfirmed(uint32_t this_arg, int8_tArray txid) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKConfirm* this_arg_conv = (LDKConfirm*)this_arg_ptr; - unsigned char txid_arr[32]; - CHECK(*((uint32_t*)txid) == 32); - memcpy(txid_arr, (uint8_t*)(txid + 4), 32); - unsigned char (*txid_ref)[32] = &txid_arr; - (this_arg_conv->transaction_unconfirmed)(this_arg_conv->this_arg, txid_ref); -} - -void __attribute__((visibility("default"))) TS_Confirm_best_block_updated(uint32_t this_arg, int8_tArray header, int32_t height) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKConfirm* this_arg_conv = (LDKConfirm*)this_arg_ptr; - unsigned char header_arr[80]; - CHECK(*((uint32_t*)header) == 80); - memcpy(header_arr, (uint8_t*)(header + 4), 80); - unsigned char (*header_ref)[80] = &header_arr; - (this_arg_conv->best_block_updated)(this_arg_conv->this_arg, header_ref, height); -} - -ptrArray __attribute__((visibility("default"))) TS_Confirm_get_relevant_txids(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKConfirm* this_arg_conv = (LDKConfirm*)this_arg_ptr; - LDKCVec_TxidZ ret_var = (this_arg_conv->get_relevant_txids)(this_arg_conv->this_arg); - ptrArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native ptrArray Bytes"); - int8_tArray *ret_arr_ptr = (int8_tArray*)(ret_arr + 4); - for (size_t m = 0; m < ret_var.datalen; m++) { - int8_tArray ret_conv_12_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_conv_12_arr + 4), ret_var.data[m].data, 32); - ret_arr_ptr[m] = ret_conv_12_arr; - } - - FREE(ret_var.data); - return ret_arr; -} - -typedef struct LDKPersist_JCalls { - atomic_size_t refcnt; - uint32_t persist_new_channel_meth; - uint32_t update_persisted_channel_meth; -} LDKPersist_JCalls; -static void LDKPersist_JCalls_free(void* this_arg) { - LDKPersist_JCalls *j_calls = (LDKPersist_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->persist_new_channel_meth); - js_free(j_calls->update_persisted_channel_meth); - FREE(j_calls); - } -} -LDKCResult_NoneChannelMonitorUpdateErrZ persist_new_channel_LDKPersist_jcall(const void* this_arg, LDKOutPoint channel_id, const LDKChannelMonitor * data, LDKMonitorUpdateId update_id) { - LDKPersist_JCalls *j_calls = (LDKPersist_JCalls*) this_arg; - LDKOutPoint channel_id_var = channel_id; - uint64_t channel_id_ref = 0; - CHECK((((uint64_t)channel_id_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&channel_id_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_id_var); - channel_id_ref = (uint64_t)channel_id_var.inner; - if (channel_id_var.is_owned) { - channel_id_ref |= 1; - } - LDKChannelMonitor data_var = *data; - uint64_t data_ref = 0; - data_var = ChannelMonitor_clone(data); - CHECK((((uint64_t)data_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&data_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(data_var); - data_ref = (uint64_t)data_var.inner; - if (data_var.is_owned) { - data_ref |= 1; - } - LDKMonitorUpdateId update_id_var = update_id; - uint64_t update_id_ref = 0; - CHECK((((uint64_t)update_id_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&update_id_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_id_var); - update_id_ref = (uint64_t)update_id_var.inner; - if (update_id_var.is_owned) { - update_id_ref |= 1; - } - uint32_t ret = js_invoke_function_3(j_calls->persist_new_channel_meth, channel_id_ref, data_ref, update_id_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_NoneChannelMonitorUpdateErrZ ret_conv = *(LDKCResult_NoneChannelMonitorUpdateErrZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; -} -LDKCResult_NoneChannelMonitorUpdateErrZ update_persisted_channel_LDKPersist_jcall(const void* this_arg, LDKOutPoint channel_id, const LDKChannelMonitorUpdate * update, const LDKChannelMonitor * data, LDKMonitorUpdateId update_id) { - LDKPersist_JCalls *j_calls = (LDKPersist_JCalls*) this_arg; - LDKOutPoint channel_id_var = channel_id; - uint64_t channel_id_ref = 0; - CHECK((((uint64_t)channel_id_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&channel_id_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_id_var); - channel_id_ref = (uint64_t)channel_id_var.inner; - if (channel_id_var.is_owned) { - channel_id_ref |= 1; - } - LDKChannelMonitorUpdate update_var = *update; - uint64_t update_ref = 0; - if ((uint64_t)update_var.inner > 4096) { - update_var = ChannelMonitorUpdate_clone(update); - CHECK((((uint64_t)update_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&update_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_var); - update_ref = (uint64_t)update_var.inner; - if (update_var.is_owned) { - update_ref |= 1; - } - } - LDKChannelMonitor data_var = *data; - uint64_t data_ref = 0; - data_var = ChannelMonitor_clone(data); - CHECK((((uint64_t)data_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&data_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(data_var); - data_ref = (uint64_t)data_var.inner; - if (data_var.is_owned) { - data_ref |= 1; - } - LDKMonitorUpdateId update_id_var = update_id; - uint64_t update_id_ref = 0; - CHECK((((uint64_t)update_id_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&update_id_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_id_var); - update_id_ref = (uint64_t)update_id_var.inner; - if (update_id_var.is_owned) { - update_id_ref |= 1; - } - uint32_t ret = js_invoke_function_4(j_calls->update_persisted_channel_meth, channel_id_ref, update_ref, data_ref, update_id_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_NoneChannelMonitorUpdateErrZ ret_conv = *(LDKCResult_NoneChannelMonitorUpdateErrZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; -} -static void LDKPersist_JCalls_cloned(LDKPersist* new_obj) { - LDKPersist_JCalls *j_calls = (LDKPersist_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); -} -static inline LDKPersist LDKPersist_init (/*TODO: JS Object Reference */void* o) { - LDKPersist_JCalls *calls = MALLOC(sizeof(LDKPersist_JCalls), "LDKPersist_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - - LDKPersist ret = { - .this_arg = (void*) calls, - .persist_new_channel = persist_new_channel_LDKPersist_jcall, - .update_persisted_channel = update_persisted_channel_LDKPersist_jcall, - .free = LDKPersist_JCalls_free, - }; - return ret; -} -long __attribute__((visibility("default"))) TS_LDKPersist_new(/*TODO: JS Object Reference */void* o) { - LDKPersist *res_ptr = MALLOC(sizeof(LDKPersist), "LDKPersist"); - *res_ptr = LDKPersist_init(o); - return (long)res_ptr; -} -uint32_t __attribute__((visibility("default"))) TS_Persist_persist_new_channel(uint32_t this_arg, uint32_t channel_id, uint32_t data, uint32_t update_id) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKPersist* this_arg_conv = (LDKPersist*)this_arg_ptr; - LDKOutPoint channel_id_conv; - channel_id_conv.inner = (void*)(channel_id & (~1)); - channel_id_conv.is_owned = (channel_id & 1) || (channel_id == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_id_conv); - channel_id_conv = OutPoint_clone(&channel_id_conv); - LDKChannelMonitor data_conv; - data_conv.inner = (void*)(data & (~1)); - data_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(data_conv); - LDKMonitorUpdateId update_id_conv; - update_id_conv.inner = (void*)(update_id & (~1)); - update_id_conv.is_owned = (update_id & 1) || (update_id == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_id_conv); - update_id_conv = MonitorUpdateId_clone(&update_id_conv); - LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); - *ret_conv = (this_arg_conv->persist_new_channel)(this_arg_conv->this_arg, channel_id_conv, &data_conv, update_id_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_Persist_update_persisted_channel(uint32_t this_arg, uint32_t channel_id, uint32_t update, uint32_t data, uint32_t update_id) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKPersist* this_arg_conv = (LDKPersist*)this_arg_ptr; - LDKOutPoint channel_id_conv; - channel_id_conv.inner = (void*)(channel_id & (~1)); - channel_id_conv.is_owned = (channel_id & 1) || (channel_id == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_id_conv); - channel_id_conv = OutPoint_clone(&channel_id_conv); - LDKChannelMonitorUpdate update_conv; - update_conv.inner = (void*)(update & (~1)); - update_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_conv); - LDKChannelMonitor data_conv; - data_conv.inner = (void*)(data & (~1)); - data_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(data_conv); - LDKMonitorUpdateId update_id_conv; - update_id_conv.inner = (void*)(update_id & (~1)); - update_id_conv.is_owned = (update_id & 1) || (update_id == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_id_conv); - update_id_conv = MonitorUpdateId_clone(&update_id_conv); - LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); - *ret_conv = (this_arg_conv->update_persisted_channel)(this_arg_conv->this_arg, channel_id_conv, &update_conv, &data_conv, update_id_conv); - return (uint64_t)ret_conv; -} - -typedef struct LDKChannelMessageHandler_JCalls { - atomic_size_t refcnt; - LDKMessageSendEventsProvider_JCalls* MessageSendEventsProvider; - uint32_t handle_open_channel_meth; - uint32_t handle_accept_channel_meth; - uint32_t handle_funding_created_meth; - uint32_t handle_funding_signed_meth; - uint32_t handle_funding_locked_meth; - uint32_t handle_shutdown_meth; - uint32_t handle_closing_signed_meth; - uint32_t handle_update_add_htlc_meth; - uint32_t handle_update_fulfill_htlc_meth; - uint32_t handle_update_fail_htlc_meth; - uint32_t handle_update_fail_malformed_htlc_meth; - uint32_t handle_commitment_signed_meth; - uint32_t handle_revoke_and_ack_meth; - uint32_t handle_update_fee_meth; - uint32_t handle_announcement_signatures_meth; - uint32_t peer_disconnected_meth; - uint32_t peer_connected_meth; - uint32_t handle_channel_reestablish_meth; - uint32_t handle_channel_update_meth; - uint32_t handle_error_meth; -} LDKChannelMessageHandler_JCalls; -static void LDKChannelMessageHandler_JCalls_free(void* this_arg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->handle_open_channel_meth); - js_free(j_calls->handle_accept_channel_meth); - js_free(j_calls->handle_funding_created_meth); - js_free(j_calls->handle_funding_signed_meth); - js_free(j_calls->handle_funding_locked_meth); - js_free(j_calls->handle_shutdown_meth); - js_free(j_calls->handle_closing_signed_meth); - js_free(j_calls->handle_update_add_htlc_meth); - js_free(j_calls->handle_update_fulfill_htlc_meth); - js_free(j_calls->handle_update_fail_htlc_meth); - js_free(j_calls->handle_update_fail_malformed_htlc_meth); - js_free(j_calls->handle_commitment_signed_meth); - js_free(j_calls->handle_revoke_and_ack_meth); - js_free(j_calls->handle_update_fee_meth); - js_free(j_calls->handle_announcement_signatures_meth); - js_free(j_calls->peer_disconnected_meth); - js_free(j_calls->peer_connected_meth); - js_free(j_calls->handle_channel_reestablish_meth); - js_free(j_calls->handle_channel_update_meth); - js_free(j_calls->handle_error_meth); - FREE(j_calls); - } -} -void handle_open_channel_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, LDKInitFeatures their_features, const LDKOpenChannel * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKInitFeatures their_features_var = their_features; - uint64_t their_features_ref = 0; - CHECK((((uint64_t)their_features_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&their_features_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(their_features_var); - their_features_ref = (uint64_t)their_features_var.inner; - if (their_features_var.is_owned) { - their_features_ref |= 1; - } - LDKOpenChannel msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = OpenChannel_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - js_invoke_function_3(j_calls->handle_open_channel_meth, their_node_id_arr, their_features_ref, msg_ref); -} -void handle_accept_channel_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, LDKInitFeatures their_features, const LDKAcceptChannel * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKInitFeatures their_features_var = their_features; - uint64_t their_features_ref = 0; - CHECK((((uint64_t)their_features_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&their_features_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(their_features_var); - their_features_ref = (uint64_t)their_features_var.inner; - if (their_features_var.is_owned) { - their_features_ref |= 1; - } - LDKAcceptChannel msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = AcceptChannel_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - js_invoke_function_3(j_calls->handle_accept_channel_meth, their_node_id_arr, their_features_ref, msg_ref); -} -void handle_funding_created_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKFundingCreated * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKFundingCreated msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = FundingCreated_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - js_invoke_function_2(j_calls->handle_funding_created_meth, their_node_id_arr, msg_ref); -} -void handle_funding_signed_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKFundingSigned * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKFundingSigned msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = FundingSigned_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - js_invoke_function_2(j_calls->handle_funding_signed_meth, their_node_id_arr, msg_ref); -} -void handle_funding_locked_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKFundingLocked * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKFundingLocked msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = FundingLocked_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - js_invoke_function_2(j_calls->handle_funding_locked_meth, their_node_id_arr, msg_ref); -} -void handle_shutdown_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKInitFeatures * their_features, const LDKShutdown * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKInitFeatures their_features_var = *their_features; - uint64_t their_features_ref = 0; - their_features_var = InitFeatures_clone(their_features); - CHECK((((uint64_t)their_features_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&their_features_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(their_features_var); - their_features_ref = (uint64_t)their_features_var.inner; - if (their_features_var.is_owned) { - their_features_ref |= 1; - } - LDKShutdown msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = Shutdown_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - js_invoke_function_3(j_calls->handle_shutdown_meth, their_node_id_arr, their_features_ref, msg_ref); -} -void handle_closing_signed_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKClosingSigned * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKClosingSigned msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = ClosingSigned_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - js_invoke_function_2(j_calls->handle_closing_signed_meth, their_node_id_arr, msg_ref); -} -void handle_update_add_htlc_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateAddHTLC * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKUpdateAddHTLC msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = UpdateAddHTLC_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; + case LDKMessageSendEvent_SendFundingCreated: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_funding_created.node_id.compressed_form, 33); + LDKFundingCreated msg_var = obj->send_funding_created.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendFundingCreated */; (void) node_id_arr; (void) msg_ref; + } + case LDKMessageSendEvent_SendFundingSigned: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_funding_signed.node_id.compressed_form, 33); + LDKFundingSigned msg_var = obj->send_funding_signed.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendFundingSigned */; (void) node_id_arr; (void) msg_ref; + } + case LDKMessageSendEvent_SendFundingLocked: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_funding_locked.node_id.compressed_form, 33); + LDKFundingLocked msg_var = obj->send_funding_locked.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendFundingLocked */; (void) node_id_arr; (void) msg_ref; + } + case LDKMessageSendEvent_SendAnnouncementSignatures: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_announcement_signatures.node_id.compressed_form, 33); + LDKAnnouncementSignatures msg_var = obj->send_announcement_signatures.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendAnnouncementSignatures */; (void) node_id_arr; (void) msg_ref; + } + case LDKMessageSendEvent_UpdateHTLCs: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->update_htl_cs.node_id.compressed_form, 33); + LDKCommitmentUpdate updates_var = obj->update_htl_cs.updates; + uint64_t updates_ref = 0; + CHECK((((uint64_t)updates_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&updates_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(updates_var); + updates_ref = (uint64_t)updates_var.inner & ~1; + return 0 /* LDKMessageSendEvent - UpdateHTLCs */; (void) node_id_arr; (void) updates_ref; + } + case LDKMessageSendEvent_SendRevokeAndACK: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_revoke_and_ack.node_id.compressed_form, 33); + LDKRevokeAndACK msg_var = obj->send_revoke_and_ack.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendRevokeAndACK */; (void) node_id_arr; (void) msg_ref; + } + case LDKMessageSendEvent_SendClosingSigned: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_closing_signed.node_id.compressed_form, 33); + LDKClosingSigned msg_var = obj->send_closing_signed.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendClosingSigned */; (void) node_id_arr; (void) msg_ref; + } + case LDKMessageSendEvent_SendShutdown: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_shutdown.node_id.compressed_form, 33); + LDKShutdown msg_var = obj->send_shutdown.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendShutdown */; (void) node_id_arr; (void) msg_ref; + } + case LDKMessageSendEvent_SendChannelReestablish: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_channel_reestablish.node_id.compressed_form, 33); + LDKChannelReestablish msg_var = obj->send_channel_reestablish.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendChannelReestablish */; (void) node_id_arr; (void) msg_ref; + } + case LDKMessageSendEvent_BroadcastChannelAnnouncement: { + LDKChannelAnnouncement msg_var = obj->broadcast_channel_announcement.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + LDKChannelUpdate update_msg_var = obj->broadcast_channel_announcement.update_msg; + uint64_t update_msg_ref = 0; + CHECK((((uint64_t)update_msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&update_msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_msg_var); + update_msg_ref = (uint64_t)update_msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - BroadcastChannelAnnouncement */; (void) msg_ref; (void) update_msg_ref; + } + case LDKMessageSendEvent_BroadcastNodeAnnouncement: { + LDKNodeAnnouncement msg_var = obj->broadcast_node_announcement.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - BroadcastNodeAnnouncement */; (void) msg_ref; + } + case LDKMessageSendEvent_BroadcastChannelUpdate: { + LDKChannelUpdate msg_var = obj->broadcast_channel_update.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - BroadcastChannelUpdate */; (void) msg_ref; + } + case LDKMessageSendEvent_SendChannelUpdate: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_channel_update.node_id.compressed_form, 33); + LDKChannelUpdate msg_var = obj->send_channel_update.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendChannelUpdate */; (void) node_id_arr; (void) msg_ref; + } + case LDKMessageSendEvent_HandleError: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->handle_error.node_id.compressed_form, 33); + uint64_t action_ref = ((uint64_t)&obj->handle_error.action) | 1; + return 0 /* LDKMessageSendEvent - HandleError */; (void) node_id_arr; (void) action_ref; + } + case LDKMessageSendEvent_SendChannelRangeQuery: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_channel_range_query.node_id.compressed_form, 33); + LDKQueryChannelRange msg_var = obj->send_channel_range_query.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendChannelRangeQuery */; (void) node_id_arr; (void) msg_ref; + } + case LDKMessageSendEvent_SendShortIdsQuery: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_short_ids_query.node_id.compressed_form, 33); + LDKQueryShortChannelIds msg_var = obj->send_short_ids_query.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendShortIdsQuery */; (void) node_id_arr; (void) msg_ref; + } + case LDKMessageSendEvent_SendReplyChannelRange: { + int8_tArray node_id_arr = init_int8_tArray(33); + memcpy(node_id_arr->elems, obj->send_reply_channel_range.node_id.compressed_form, 33); + LDKReplyChannelRange msg_var = obj->send_reply_channel_range.msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner & ~1; + return 0 /* LDKMessageSendEvent - SendReplyChannelRange */; (void) node_id_arr; (void) msg_ref; + } + default: abort(); } - js_invoke_function_2(j_calls->handle_update_add_htlc_meth, their_node_id_arr, msg_ref); } -void handle_update_fulfill_htlc_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateFulfillHTLC * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKUpdateFulfillHTLC msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = UpdateFulfillHTLC_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; +static inline LDKCVec_MessageSendEventZ CVec_MessageSendEventZ_clone(const LDKCVec_MessageSendEventZ *orig) { + LDKCVec_MessageSendEventZ ret = { .data = MALLOC(sizeof(LDKMessageSendEvent) * orig->datalen, "LDKCVec_MessageSendEventZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = MessageSendEvent_clone(&orig->data[i]); } - js_invoke_function_2(j_calls->handle_update_fulfill_htlc_meth, their_node_id_arr, msg_ref); + return ret; } -void handle_update_fail_htlc_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateFailHTLC * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKUpdateFailHTLC msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = UpdateFailHTLC_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - js_invoke_function_2(j_calls->handle_update_fail_htlc_meth, their_node_id_arr, msg_ref); +static inline bool CResult_boolLightningErrorZ_get_ok(LDKCResult_boolLightningErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; } -void handle_update_fail_malformed_htlc_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateFailMalformedHTLC * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKUpdateFailMalformedHTLC msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = UpdateFailMalformedHTLC_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - js_invoke_function_2(j_calls->handle_update_fail_malformed_htlc_meth, their_node_id_arr, msg_ref); +jboolean __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_get_ok(uint32_t owner) { + LDKCResult_boolLightningErrorZ* owner_conv = (LDKCResult_boolLightningErrorZ*)(owner & ~1); + jboolean ret_val = CResult_boolLightningErrorZ_get_ok(owner_conv); + return ret_val; } -void handle_commitment_signed_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKCommitmentSigned * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKCommitmentSigned msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = CommitmentSigned_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - js_invoke_function_2(j_calls->handle_commitment_signed_meth, their_node_id_arr, msg_ref); + +static inline struct LDKLightningError CResult_boolLightningErrorZ_get_err(LDKCResult_boolLightningErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return LightningError_clone(&*owner->contents.err); } -void handle_revoke_and_ack_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKRevokeAndACK * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKRevokeAndACK msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = RevokeAndACK_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_get_err(uint32_t owner) { + LDKCResult_boolLightningErrorZ* owner_conv = (LDKCResult_boolLightningErrorZ*)(owner & ~1); + LDKLightningError ret_var = CResult_boolLightningErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - js_invoke_function_2(j_calls->handle_revoke_and_ack_meth, their_node_id_arr, msg_ref); + return ret_ref; } -void handle_update_fee_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateFee * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKUpdateFee msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = UpdateFee_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - js_invoke_function_2(j_calls->handle_update_fee_meth, their_node_id_arr, msg_ref); + +static inline struct LDKChannelAnnouncement C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_a(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ *NONNULL_PTR owner){ + return ChannelAnnouncement_clone(&owner->a); } -void handle_announcement_signatures_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKAnnouncementSignatures * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKAnnouncementSignatures msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = AnnouncementSignatures_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_a(uint32_t owner) { + LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* owner_conv = (LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(owner & ~1); + LDKChannelAnnouncement ret_var = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_a(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - js_invoke_function_2(j_calls->handle_announcement_signatures_meth, their_node_id_arr, msg_ref); -} -void peer_disconnected_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, bool no_connection_possible) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - js_invoke_function_2(j_calls->peer_disconnected_meth, their_node_id_arr, no_connection_possible); + return ret_ref; } -void peer_connected_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKInit * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKInit msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = Init_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - js_invoke_function_2(j_calls->peer_connected_meth, their_node_id_arr, msg_ref); + +static inline struct LDKChannelUpdate C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_b(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ *NONNULL_PTR owner){ + return ChannelUpdate_clone(&owner->b); } -void handle_channel_reestablish_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKChannelReestablish * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKChannelReestablish msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = ChannelReestablish_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_b(uint32_t owner) { + LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* owner_conv = (LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(owner & ~1); + LDKChannelUpdate ret_var = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_b(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - js_invoke_function_2(j_calls->handle_channel_reestablish_meth, their_node_id_arr, msg_ref); + return ret_ref; } -void handle_channel_update_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKChannelUpdate * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKChannelUpdate msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = ChannelUpdate_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - js_invoke_function_2(j_calls->handle_channel_update_meth, their_node_id_arr, msg_ref); + +static inline struct LDKChannelUpdate C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_c(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ *NONNULL_PTR owner){ + return ChannelUpdate_clone(&owner->c); } -void handle_error_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKErrorMessage * msg) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKErrorMessage msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = ErrorMessage_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_c(uint32_t owner) { + LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* owner_conv = (LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(owner & ~1); + LDKChannelUpdate ret_var = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_c(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - js_invoke_function_2(j_calls->handle_error_meth, their_node_id_arr, msg_ref); -} -static void LDKChannelMessageHandler_JCalls_cloned(LDKChannelMessageHandler* new_obj) { - LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); - atomic_fetch_add_explicit(&j_calls->MessageSendEventsProvider->refcnt, 1, memory_order_release); + return ret_ref; } -static inline LDKChannelMessageHandler LDKChannelMessageHandler_init (/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */void* MessageSendEventsProvider) { - LDKChannelMessageHandler_JCalls *calls = MALLOC(sizeof(LDKChannelMessageHandler_JCalls), "LDKChannelMessageHandler_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - LDKChannelMessageHandler ret = { - .this_arg = (void*) calls, - .handle_open_channel = handle_open_channel_LDKChannelMessageHandler_jcall, - .handle_accept_channel = handle_accept_channel_LDKChannelMessageHandler_jcall, - .handle_funding_created = handle_funding_created_LDKChannelMessageHandler_jcall, - .handle_funding_signed = handle_funding_signed_LDKChannelMessageHandler_jcall, - .handle_funding_locked = handle_funding_locked_LDKChannelMessageHandler_jcall, - .handle_shutdown = handle_shutdown_LDKChannelMessageHandler_jcall, - .handle_closing_signed = handle_closing_signed_LDKChannelMessageHandler_jcall, - .handle_update_add_htlc = handle_update_add_htlc_LDKChannelMessageHandler_jcall, - .handle_update_fulfill_htlc = handle_update_fulfill_htlc_LDKChannelMessageHandler_jcall, - .handle_update_fail_htlc = handle_update_fail_htlc_LDKChannelMessageHandler_jcall, - .handle_update_fail_malformed_htlc = handle_update_fail_malformed_htlc_LDKChannelMessageHandler_jcall, - .handle_commitment_signed = handle_commitment_signed_LDKChannelMessageHandler_jcall, - .handle_revoke_and_ack = handle_revoke_and_ack_LDKChannelMessageHandler_jcall, - .handle_update_fee = handle_update_fee_LDKChannelMessageHandler_jcall, - .handle_announcement_signatures = handle_announcement_signatures_LDKChannelMessageHandler_jcall, - .peer_disconnected = peer_disconnected_LDKChannelMessageHandler_jcall, - .peer_connected = peer_connected_LDKChannelMessageHandler_jcall, - .handle_channel_reestablish = handle_channel_reestablish_LDKChannelMessageHandler_jcall, - .handle_channel_update = handle_channel_update_LDKChannelMessageHandler_jcall, - .handle_error = handle_error_LDKChannelMessageHandler_jcall, - .free = LDKChannelMessageHandler_JCalls_free, - .MessageSendEventsProvider = LDKMessageSendEventsProvider_init(MessageSendEventsProvider), - }; - calls->MessageSendEventsProvider = ret.MessageSendEventsProvider.this_arg; +static inline LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_clone(const LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ *orig) { + LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ ret = { .data = MALLOC(sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ) * orig->datalen, "LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone(&orig->data[i]); + } return ret; } -long __attribute__((visibility("default"))) TS_LDKChannelMessageHandler_new(/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */ void* MessageSendEventsProvider) { - LDKChannelMessageHandler *res_ptr = MALLOC(sizeof(LDKChannelMessageHandler), "LDKChannelMessageHandler"); - *res_ptr = LDKChannelMessageHandler_init(o, MessageSendEventsProvider); - return (long)res_ptr; -} -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_open_channel(uint32_t this_arg, int8_tArray their_node_id, uint32_t their_features, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKInitFeatures their_features_conv; - their_features_conv.inner = (void*)(their_features & (~1)); - their_features_conv.is_owned = (their_features & 1) || (their_features == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(their_features_conv); - their_features_conv = InitFeatures_clone(&their_features_conv); - LDKOpenChannel msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_open_channel)(this_arg_conv->this_arg, their_node_id_ref, their_features_conv, &msg_conv); -} - -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_accept_channel(uint32_t this_arg, int8_tArray their_node_id, uint32_t their_features, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKInitFeatures their_features_conv; - their_features_conv.inner = (void*)(their_features & (~1)); - their_features_conv.is_owned = (their_features & 1) || (their_features == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(their_features_conv); - their_features_conv = InitFeatures_clone(&their_features_conv); - LDKAcceptChannel msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_accept_channel)(this_arg_conv->this_arg, their_node_id_ref, their_features_conv, &msg_conv); +static inline LDKCVec_NodeAnnouncementZ CVec_NodeAnnouncementZ_clone(const LDKCVec_NodeAnnouncementZ *orig) { + LDKCVec_NodeAnnouncementZ ret = { .data = MALLOC(sizeof(LDKNodeAnnouncement) * orig->datalen, "LDKCVec_NodeAnnouncementZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = NodeAnnouncement_clone(&orig->data[i]); + } + return ret; } - -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_funding_created(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKFundingCreated msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_funding_created)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline struct LDKCVec_u8Z CResult_CVec_u8ZPeerHandleErrorZ_get_ok(LDKCResult_CVec_u8ZPeerHandleErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return CVec_u8Z_clone(&*owner->contents.result); +} +int8_tArray __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_get_ok(uint32_t owner) { + LDKCResult_CVec_u8ZPeerHandleErrorZ* owner_conv = (LDKCResult_CVec_u8ZPeerHandleErrorZ*)(owner & ~1); + LDKCVec_u8Z ret_var = CResult_CVec_u8ZPeerHandleErrorZ_get_ok(owner_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_funding_signed(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKFundingSigned msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_funding_signed)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline struct LDKPeerHandleError CResult_CVec_u8ZPeerHandleErrorZ_get_err(LDKCResult_CVec_u8ZPeerHandleErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return PeerHandleError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_get_err(uint32_t owner) { + LDKCResult_CVec_u8ZPeerHandleErrorZ* owner_conv = (LDKCResult_CVec_u8ZPeerHandleErrorZ*)(owner & ~1); + LDKPeerHandleError ret_var = CResult_CVec_u8ZPeerHandleErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_funding_locked(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKFundingLocked msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_funding_locked)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline void CResult_NonePeerHandleErrorZ_get_ok(LDKCResult_NonePeerHandleErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; +} +void __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_get_ok(uint32_t owner) { + LDKCResult_NonePeerHandleErrorZ* owner_conv = (LDKCResult_NonePeerHandleErrorZ*)(owner & ~1); + CResult_NonePeerHandleErrorZ_get_ok(owner_conv); } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_shutdown(uint32_t this_arg, int8_tArray their_node_id, uint32_t their_features, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKInitFeatures their_features_conv; - their_features_conv.inner = (void*)(their_features & (~1)); - their_features_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(their_features_conv); - LDKShutdown msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_shutdown)(this_arg_conv->this_arg, their_node_id_ref, &their_features_conv, &msg_conv); +static inline struct LDKPeerHandleError CResult_NonePeerHandleErrorZ_get_err(LDKCResult_NonePeerHandleErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return PeerHandleError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_get_err(uint32_t owner) { + LDKCResult_NonePeerHandleErrorZ* owner_conv = (LDKCResult_NonePeerHandleErrorZ*)(owner & ~1); + LDKPeerHandleError ret_var = CResult_NonePeerHandleErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_closing_signed(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKClosingSigned msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_closing_signed)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline bool CResult_boolPeerHandleErrorZ_get_ok(LDKCResult_boolPeerHandleErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; +} +jboolean __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_get_ok(uint32_t owner) { + LDKCResult_boolPeerHandleErrorZ* owner_conv = (LDKCResult_boolPeerHandleErrorZ*)(owner & ~1); + jboolean ret_val = CResult_boolPeerHandleErrorZ_get_ok(owner_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_update_add_htlc(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKUpdateAddHTLC msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_update_add_htlc)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline struct LDKPeerHandleError CResult_boolPeerHandleErrorZ_get_err(LDKCResult_boolPeerHandleErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return PeerHandleError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_get_err(uint32_t owner) { + LDKCResult_boolPeerHandleErrorZ* owner_conv = (LDKCResult_boolPeerHandleErrorZ*)(owner & ~1); + LDKPeerHandleError ret_var = CResult_boolPeerHandleErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_update_fulfill_htlc(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKUpdateFulfillHTLC msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_update_fulfill_htlc)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline struct LDKTxOut CResult_TxOutAccessErrorZ_get_ok(LDKCResult_TxOutAccessErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return TxOut_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_get_ok(uint32_t owner) { + LDKCResult_TxOutAccessErrorZ* owner_conv = (LDKCResult_TxOutAccessErrorZ*)(owner & ~1); + LDKTxOut* ret_ref = MALLOC(sizeof(LDKTxOut), "LDKTxOut"); + *ret_ref = CResult_TxOutAccessErrorZ_get_ok(owner_conv); + return (uint64_t)ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_update_fail_htlc(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKUpdateFailHTLC msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_update_fail_htlc)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline enum LDKAccessError CResult_TxOutAccessErrorZ_get_err(LDKCResult_TxOutAccessErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return AccessError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_get_err(uint32_t owner) { + LDKCResult_TxOutAccessErrorZ* owner_conv = (LDKCResult_TxOutAccessErrorZ*)(owner & ~1); + uint32_t ret_conv = LDKAccessError_to_js(CResult_TxOutAccessErrorZ_get_err(owner_conv)); + return ret_conv; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_update_fail_malformed_htlc(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKUpdateFailMalformedHTLC msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_update_fail_malformed_htlc)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline void CResult_NoneChannelMonitorUpdateErrZ_get_ok(LDKCResult_NoneChannelMonitorUpdateErrZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; +} +void __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_get_ok(uint32_t owner) { + LDKCResult_NoneChannelMonitorUpdateErrZ* owner_conv = (LDKCResult_NoneChannelMonitorUpdateErrZ*)(owner & ~1); + CResult_NoneChannelMonitorUpdateErrZ_get_ok(owner_conv); } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_commitment_signed(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKCommitmentSigned msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_commitment_signed)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline enum LDKChannelMonitorUpdateErr CResult_NoneChannelMonitorUpdateErrZ_get_err(LDKCResult_NoneChannelMonitorUpdateErrZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return ChannelMonitorUpdateErr_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_get_err(uint32_t owner) { + LDKCResult_NoneChannelMonitorUpdateErrZ* owner_conv = (LDKCResult_NoneChannelMonitorUpdateErrZ*)(owner & ~1); + uint32_t ret_conv = LDKChannelMonitorUpdateErr_to_js(CResult_NoneChannelMonitorUpdateErrZ_get_err(owner_conv)); + return ret_conv; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_revoke_and_ack(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKRevokeAndACK msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_revoke_and_ack)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +uint32_t __attribute__((visibility("default"))) TS_LDKCOption_C2Tuple_usizeTransactionZZ_ref_from_ptr(uint32_t ptr) { + LDKCOption_C2Tuple_usizeTransactionZZ *obj = (LDKCOption_C2Tuple_usizeTransactionZZ*)(ptr & ~1); + switch(obj->tag) { + case LDKCOption_C2Tuple_usizeTransactionZZ_Some: { + LDKC2Tuple_usizeTransactionZ* some_conv = MALLOC(sizeof(LDKC2Tuple_usizeTransactionZ), "LDKC2Tuple_usizeTransactionZ"); + *some_conv = obj->some; + *some_conv = C2Tuple_usizeTransactionZ_clone(some_conv); + return 0 /* LDKCOption_C2Tuple_usizeTransactionZZ - Some */; (void) ((uint64_t)some_conv); + } + case LDKCOption_C2Tuple_usizeTransactionZZ_None: { + return 0 /* LDKCOption_C2Tuple_usizeTransactionZZ - None */; + } + default: abort(); + } +} +uint32_t __attribute__((visibility("default"))) TS_LDKCOption_ClosureReasonZ_ref_from_ptr(uint32_t ptr) { + LDKCOption_ClosureReasonZ *obj = (LDKCOption_ClosureReasonZ*)(ptr & ~1); + switch(obj->tag) { + case LDKCOption_ClosureReasonZ_Some: { + uint64_t some_ref = ((uint64_t)&obj->some) | 1; + return 0 /* LDKCOption_ClosureReasonZ - Some */; (void) some_ref; + } + case LDKCOption_ClosureReasonZ_None: { + return 0 /* LDKCOption_ClosureReasonZ - None */; + } + default: abort(); + } +} +static inline struct LDKCOption_ClosureReasonZ CResult_COption_ClosureReasonZDecodeErrorZ_get_ok(LDKCResult_COption_ClosureReasonZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return COption_ClosureReasonZ_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_COption_ClosureReasonZDecodeErrorZ* owner_conv = (LDKCResult_COption_ClosureReasonZDecodeErrorZ*)(owner & ~1); + LDKCOption_ClosureReasonZ *ret_copy = MALLOC(sizeof(LDKCOption_ClosureReasonZ), "LDKCOption_ClosureReasonZ"); + *ret_copy = CResult_COption_ClosureReasonZDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_update_fee(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKUpdateFee msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_update_fee)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline struct LDKDecodeError CResult_COption_ClosureReasonZDecodeErrorZ_get_err(LDKCResult_COption_ClosureReasonZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_COption_ClosureReasonZDecodeErrorZ* owner_conv = (LDKCResult_COption_ClosureReasonZDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_COption_ClosureReasonZDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_announcement_signatures(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKAnnouncementSignatures msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_announcement_signatures)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +uint32_t __attribute__((visibility("default"))) TS_LDKCOption_EventZ_ref_from_ptr(uint32_t ptr) { + LDKCOption_EventZ *obj = (LDKCOption_EventZ*)(ptr & ~1); + switch(obj->tag) { + case LDKCOption_EventZ_Some: { + uint64_t some_ref = ((uint64_t)&obj->some) | 1; + return 0 /* LDKCOption_EventZ - Some */; (void) some_ref; + } + case LDKCOption_EventZ_None: { + return 0 /* LDKCOption_EventZ - None */; + } + default: abort(); + } +} +static inline struct LDKCOption_EventZ CResult_COption_EventZDecodeErrorZ_get_ok(LDKCResult_COption_EventZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return COption_EventZ_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_COption_EventZDecodeErrorZ* owner_conv = (LDKCResult_COption_EventZDecodeErrorZ*)(owner & ~1); + LDKCOption_EventZ *ret_copy = MALLOC(sizeof(LDKCOption_EventZ), "LDKCOption_EventZ"); + *ret_copy = CResult_COption_EventZDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_peer_disconnected(uint32_t this_arg, int8_tArray their_node_id, jboolean no_connection_possible) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - (this_arg_conv->peer_disconnected)(this_arg_conv->this_arg, their_node_id_ref, no_connection_possible); +static inline struct LDKDecodeError CResult_COption_EventZDecodeErrorZ_get_err(LDKCResult_COption_EventZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_COption_EventZDecodeErrorZ* owner_conv = (LDKCResult_COption_EventZDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_COption_EventZDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_peer_connected(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKInit msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->peer_connected)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline struct LDKNodeId CResult_NodeIdDecodeErrorZ_get_ok(LDKCResult_NodeIdDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return NodeId_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeIdDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_NodeIdDecodeErrorZ* owner_conv = (LDKCResult_NodeIdDecodeErrorZ*)(owner & ~1); + LDKNodeId ret_var = CResult_NodeIdDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_channel_reestablish(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKChannelReestablish msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_channel_reestablish)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline struct LDKDecodeError CResult_NodeIdDecodeErrorZ_get_err(LDKCResult_NodeIdDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeIdDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_NodeIdDecodeErrorZ* owner_conv = (LDKCResult_NodeIdDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_NodeIdDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_channel_update(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKChannelUpdate msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_channel_update)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline struct LDKCOption_NetworkUpdateZ CResult_COption_NetworkUpdateZDecodeErrorZ_get_ok(LDKCResult_COption_NetworkUpdateZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return COption_NetworkUpdateZ_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_NetworkUpdateZDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_COption_NetworkUpdateZDecodeErrorZ* owner_conv = (LDKCResult_COption_NetworkUpdateZDecodeErrorZ*)(owner & ~1); + LDKCOption_NetworkUpdateZ *ret_copy = MALLOC(sizeof(LDKCOption_NetworkUpdateZ), "LDKCOption_NetworkUpdateZ"); + *ret_copy = CResult_COption_NetworkUpdateZDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_error(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKErrorMessage msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - (this_arg_conv->handle_error)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); +static inline struct LDKDecodeError CResult_COption_NetworkUpdateZDecodeErrorZ_get_err(LDKCResult_COption_NetworkUpdateZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_NetworkUpdateZDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_COption_NetworkUpdateZDecodeErrorZ* owner_conv = (LDKCResult_COption_NetworkUpdateZDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_COption_NetworkUpdateZDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -typedef struct LDKRoutingMessageHandler_JCalls { +typedef struct LDKAccess_JCalls { atomic_size_t refcnt; - LDKMessageSendEventsProvider_JCalls* MessageSendEventsProvider; - uint32_t handle_node_announcement_meth; - uint32_t handle_channel_announcement_meth; - uint32_t handle_channel_update_meth; - uint32_t get_next_channel_announcements_meth; - uint32_t get_next_node_announcements_meth; - uint32_t sync_routing_table_meth; - uint32_t handle_reply_channel_range_meth; - uint32_t handle_reply_short_channel_ids_end_meth; - uint32_t handle_query_channel_range_meth; - uint32_t handle_query_short_channel_ids_meth; -} LDKRoutingMessageHandler_JCalls; -static void LDKRoutingMessageHandler_JCalls_free(void* this_arg) { - LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; + uint32_t get_utxo_meth; +} LDKAccess_JCalls; +static void LDKAccess_JCalls_free(void* this_arg) { + LDKAccess_JCalls *j_calls = (LDKAccess_JCalls*) this_arg; if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->handle_node_announcement_meth); - js_free(j_calls->handle_channel_announcement_meth); - js_free(j_calls->handle_channel_update_meth); - js_free(j_calls->get_next_channel_announcements_meth); - js_free(j_calls->get_next_node_announcements_meth); - js_free(j_calls->sync_routing_table_meth); - js_free(j_calls->handle_reply_channel_range_meth); - js_free(j_calls->handle_reply_short_channel_ids_end_meth); - js_free(j_calls->handle_query_channel_range_meth); - js_free(j_calls->handle_query_short_channel_ids_meth); + js_free_function_ptr(j_calls->get_utxo_meth); FREE(j_calls); } } -LDKCResult_boolLightningErrorZ handle_node_announcement_LDKRoutingMessageHandler_jcall(const void* this_arg, const LDKNodeAnnouncement * msg) { - LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; - LDKNodeAnnouncement msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = NodeAnnouncement_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; - } - uint32_t ret = js_invoke_function_1(j_calls->handle_node_announcement_meth, msg_ref); +LDKCResult_TxOutAccessErrorZ get_utxo_LDKAccess_jcall(const void* this_arg, const uint8_t (* genesis_hash)[32], uint64_t short_channel_id) { + LDKAccess_JCalls *j_calls = (LDKAccess_JCalls*) this_arg; + int8_tArray genesis_hash_arr = init_int8_tArray(32); + memcpy(genesis_hash_arr->elems, *genesis_hash, 32); + uint32_t ret = js_invoke_function_2(j_calls->get_utxo_meth, (uint32_t)genesis_hash_arr, (uint32_t)short_channel_id); void* ret_ptr = (void*)(((uint64_t)ret) & ~1); CHECK_ACCESS(ret_ptr); - LDKCResult_boolLightningErrorZ ret_conv = *(LDKCResult_boolLightningErrorZ*)(ret_ptr); + LDKCResult_TxOutAccessErrorZ ret_conv = *(LDKCResult_TxOutAccessErrorZ*)(ret_ptr); FREE((void*)ret); return ret_conv; } -LDKCResult_boolLightningErrorZ handle_channel_announcement_LDKRoutingMessageHandler_jcall(const void* this_arg, const LDKChannelAnnouncement * msg) { - LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; - LDKChannelAnnouncement msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = ChannelAnnouncement_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; +static void LDKAccess_JCalls_cloned(LDKAccess* new_obj) { + LDKAccess_JCalls *j_calls = (LDKAccess_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); +} +static inline LDKAccess LDKAccess_init (/*TODO: JS Object Reference */void* o) { + LDKAccess_JCalls *calls = MALLOC(sizeof(LDKAccess_JCalls), "LDKAccess_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o + + LDKAccess ret = { + .this_arg = (void*) calls, + .get_utxo = get_utxo_LDKAccess_jcall, + .free = LDKAccess_JCalls_free, + }; + return ret; +} +long __attribute__((visibility("default"))) TS_LDKAccess_new(/*TODO: JS Object Reference */void* o) { + LDKAccess *res_ptr = MALLOC(sizeof(LDKAccess), "LDKAccess"); + *res_ptr = LDKAccess_init(o); + return (long)res_ptr; +} +uint32_t __attribute__((visibility("default"))) TS_Access_get_utxo(uint32_t this_arg, int8_tArray genesis_hash, int64_t short_channel_id) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKAccess* this_arg_conv = (LDKAccess*)this_arg_ptr; + unsigned char genesis_hash_arr[32]; + CHECK(genesis_hash->arr_len == 32); + memcpy(genesis_hash_arr, genesis_hash->elems, 32); + unsigned char (*genesis_hash_ref)[32] = &genesis_hash_arr; + LDKCResult_TxOutAccessErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxOutAccessErrorZ), "LDKCResult_TxOutAccessErrorZ"); + *ret_conv = (this_arg_conv->get_utxo)(this_arg_conv->this_arg, genesis_hash_ref, short_channel_id); + return (uint64_t)ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_LDKCOption_AccessZ_ref_from_ptr(uint32_t ptr) { + LDKCOption_AccessZ *obj = (LDKCOption_AccessZ*)(ptr & ~1); + switch(obj->tag) { + case LDKCOption_AccessZ_Some: { + LDKAccess* some_ret = MALLOC(sizeof(LDKAccess), "LDKAccess"); + *some_ret = obj->some; + // Warning: We likely need to clone here, but no clone is available, so we just do it for Java instances + return 0 /* LDKCOption_AccessZ - Some */; (void) (uint64_t)some_ret; + } + case LDKCOption_AccessZ_None: { + return 0 /* LDKCOption_AccessZ - None */; + } + default: abort(); } - uint32_t ret = js_invoke_function_1(j_calls->handle_channel_announcement_meth, msg_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_boolLightningErrorZ ret_conv = *(LDKCResult_boolLightningErrorZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; } -LDKCResult_boolLightningErrorZ handle_channel_update_LDKRoutingMessageHandler_jcall(const void* this_arg, const LDKChannelUpdate * msg) { - LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; - LDKChannelUpdate msg_var = *msg; - uint64_t msg_ref = 0; - msg_var = ChannelUpdate_clone(msg); - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; +static inline struct LDKDirectionalChannelInfo CResult_DirectionalChannelInfoDecodeErrorZ_get_ok(LDKCResult_DirectionalChannelInfoDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return DirectionalChannelInfo_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_DirectionalChannelInfoDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_DirectionalChannelInfoDecodeErrorZ* owner_conv = (LDKCResult_DirectionalChannelInfoDecodeErrorZ*)(owner & ~1); + LDKDirectionalChannelInfo ret_var = CResult_DirectionalChannelInfoDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - uint32_t ret = js_invoke_function_1(j_calls->handle_channel_update_meth, msg_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_boolLightningErrorZ ret_conv = *(LDKCResult_boolLightningErrorZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; + return ret_ref; } -LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ get_next_channel_announcements_LDKRoutingMessageHandler_jcall(const void* this_arg, uint64_t starting_point, uint8_t batch_amount) { - LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; - uint32_tArray ret = js_invoke_function_2(j_calls->get_next_channel_announcements_meth, starting_point, batch_amount); - LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ ret_constr; - ret_constr.datalen = *((uint32_t*)ret); - if (ret_constr.datalen > 0) - ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ), "LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ Elements"); - else - ret_constr.data = NULL; - uint32_t* ret_vals = (uint32_t*)(ret + 4); - for (size_t h = 0; h < ret_constr.datalen; h++) { - uint32_t ret_conv_59 = ret_vals[h]; - void* ret_conv_59_ptr = (void*)(((uint64_t)ret_conv_59) & ~1); - CHECK_ACCESS(ret_conv_59_ptr); - LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ ret_conv_59_conv = *(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(ret_conv_59_ptr); - FREE((void*)ret_conv_59); - ret_constr.data[h] = ret_conv_59_conv; + +static inline struct LDKDecodeError CResult_DirectionalChannelInfoDecodeErrorZ_get_err(LDKCResult_DirectionalChannelInfoDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_DirectionalChannelInfoDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_DirectionalChannelInfoDecodeErrorZ* owner_conv = (LDKCResult_DirectionalChannelInfoDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_DirectionalChannelInfoDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +static inline struct LDKChannelInfo CResult_ChannelInfoDecodeErrorZ_get_ok(LDKCResult_ChannelInfoDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ChannelInfo_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelInfoDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ChannelInfoDecodeErrorZ* owner_conv = (LDKCResult_ChannelInfoDecodeErrorZ*)(owner & ~1); + LDKChannelInfo ret_var = CResult_ChannelInfoDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +static inline struct LDKDecodeError CResult_ChannelInfoDecodeErrorZ_get_err(LDKCResult_ChannelInfoDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelInfoDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ChannelInfoDecodeErrorZ* owner_conv = (LDKCResult_ChannelInfoDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ChannelInfoDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +static inline struct LDKRoutingFees CResult_RoutingFeesDecodeErrorZ_get_ok(LDKCResult_RoutingFeesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return RoutingFees_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_RoutingFeesDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_RoutingFeesDecodeErrorZ* owner_conv = (LDKCResult_RoutingFeesDecodeErrorZ*)(owner & ~1); + LDKRoutingFees ret_var = CResult_RoutingFeesDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret_constr; + return ret_ref; } -LDKCVec_NodeAnnouncementZ get_next_node_announcements_LDKRoutingMessageHandler_jcall(const void* this_arg, LDKPublicKey starting_point, uint8_t batch_amount) { - LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; - int8_tArray starting_point_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(starting_point_arr + 4), starting_point.compressed_form, 33); - uint32_tArray ret = js_invoke_function_2(j_calls->get_next_node_announcements_meth, starting_point_arr, batch_amount); - LDKCVec_NodeAnnouncementZ ret_constr; - ret_constr.datalen = *((uint32_t*)ret); - if (ret_constr.datalen > 0) - ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKNodeAnnouncement), "LDKCVec_NodeAnnouncementZ Elements"); - else - ret_constr.data = NULL; - uint32_t* ret_vals = (uint32_t*)(ret + 4); - for (size_t s = 0; s < ret_constr.datalen; s++) { - uint32_t ret_conv_18 = ret_vals[s]; - LDKNodeAnnouncement ret_conv_18_conv; - ret_conv_18_conv.inner = (void*)(ret_conv_18 & (~1)); - ret_conv_18_conv.is_owned = (ret_conv_18 & 1) || (ret_conv_18 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_18_conv); - ret_constr.data[s] = ret_conv_18_conv; + +static inline struct LDKDecodeError CResult_RoutingFeesDecodeErrorZ_get_err(LDKCResult_RoutingFeesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_RoutingFeesDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_RoutingFeesDecodeErrorZ* owner_conv = (LDKCResult_RoutingFeesDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_RoutingFeesDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret_constr; + return ret_ref; } -void sync_routing_table_LDKRoutingMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKInit * init) { - LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKInit init_var = *init; - uint64_t init_ref = 0; - init_var = Init_clone(init); - CHECK((((uint64_t)init_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&init_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(init_var); - init_ref = (uint64_t)init_var.inner; - if (init_var.is_owned) { - init_ref |= 1; + +uint32_t __attribute__((visibility("default"))) TS_LDKNetAddress_ref_from_ptr(uint32_t ptr) { + LDKNetAddress *obj = (LDKNetAddress*)(ptr & ~1); + switch(obj->tag) { + case LDKNetAddress_IPv4: { + int8_tArray addr_arr = init_int8_tArray(4); + memcpy(addr_arr->elems, obj->i_pv4.addr.data, 4); + return 0 /* LDKNetAddress - IPv4 */; (void) addr_arr; (void) obj->i_pv4.port; + } + case LDKNetAddress_IPv6: { + int8_tArray addr_arr = init_int8_tArray(16); + memcpy(addr_arr->elems, obj->i_pv6.addr.data, 16); + return 0 /* LDKNetAddress - IPv6 */; (void) addr_arr; (void) obj->i_pv6.port; + } + case LDKNetAddress_OnionV2: { + int8_tArray onion_v2_arr = init_int8_tArray(12); + memcpy(onion_v2_arr->elems, obj->onion_v2.data, 12); + return 0 /* LDKNetAddress - OnionV2 */; (void) onion_v2_arr; + } + case LDKNetAddress_OnionV3: { + int8_tArray ed25519_pubkey_arr = init_int8_tArray(32); + memcpy(ed25519_pubkey_arr->elems, obj->onion_v3.ed25519_pubkey.data, 32); + return 0 /* LDKNetAddress - OnionV3 */; (void) ed25519_pubkey_arr; (void) obj->onion_v3.checksum; (void) obj->onion_v3.version; (void) obj->onion_v3.port; + } + default: abort(); } - js_invoke_function_2(j_calls->sync_routing_table_meth, their_node_id_arr, init_ref); } -LDKCResult_NoneLightningErrorZ handle_reply_channel_range_LDKRoutingMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, LDKReplyChannelRange msg) { - LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKReplyChannelRange msg_var = msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; +static inline LDKCVec_NetAddressZ CVec_NetAddressZ_clone(const LDKCVec_NetAddressZ *orig) { + LDKCVec_NetAddressZ ret = { .data = MALLOC(sizeof(LDKNetAddress) * orig->datalen, "LDKCVec_NetAddressZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = NetAddress_clone(&orig->data[i]); } - uint32_t ret = js_invoke_function_2(j_calls->handle_reply_channel_range_meth, their_node_id_arr, msg_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; + return ret; } -LDKCResult_NoneLightningErrorZ handle_reply_short_channel_ids_end_LDKRoutingMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, LDKReplyShortChannelIdsEnd msg) { - LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKReplyShortChannelIdsEnd msg_var = msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; +static inline struct LDKNodeAnnouncementInfo CResult_NodeAnnouncementInfoDecodeErrorZ_get_ok(LDKCResult_NodeAnnouncementInfoDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return NodeAnnouncementInfo_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementInfoDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_NodeAnnouncementInfoDecodeErrorZ* owner_conv = (LDKCResult_NodeAnnouncementInfoDecodeErrorZ*)(owner & ~1); + LDKNodeAnnouncementInfo ret_var = CResult_NodeAnnouncementInfoDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - uint32_t ret = js_invoke_function_2(j_calls->handle_reply_short_channel_ids_end_meth, their_node_id_arr, msg_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; + return ret_ref; } -LDKCResult_NoneLightningErrorZ handle_query_channel_range_LDKRoutingMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, LDKQueryChannelRange msg) { - LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKQueryChannelRange msg_var = msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; + +static inline struct LDKDecodeError CResult_NodeAnnouncementInfoDecodeErrorZ_get_err(LDKCResult_NodeAnnouncementInfoDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementInfoDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_NodeAnnouncementInfoDecodeErrorZ* owner_conv = (LDKCResult_NodeAnnouncementInfoDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_NodeAnnouncementInfoDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - uint32_t ret = js_invoke_function_2(j_calls->handle_query_channel_range_meth, their_node_id_arr, msg_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; + return ret_ref; } -LDKCResult_NoneLightningErrorZ handle_query_short_channel_ids_LDKRoutingMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, LDKQueryShortChannelIds msg) { - LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; - int8_tArray their_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(their_node_id_arr + 4), their_node_id.compressed_form, 33); - LDKQueryShortChannelIds msg_var = msg; - uint64_t msg_ref = 0; - CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); - msg_ref = (uint64_t)msg_var.inner; - if (msg_var.is_owned) { - msg_ref |= 1; + +static inline LDKCVec_u64Z CVec_u64Z_clone(const LDKCVec_u64Z *orig) { + LDKCVec_u64Z ret = { .data = MALLOC(sizeof(int64_t) * orig->datalen, "LDKCVec_u64Z clone bytes"), .datalen = orig->datalen }; + memcpy(ret.data, orig->data, sizeof(int64_t) * ret.datalen); + return ret; +} +static inline struct LDKNodeInfo CResult_NodeInfoDecodeErrorZ_get_ok(LDKCResult_NodeInfoDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return NodeInfo_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeInfoDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_NodeInfoDecodeErrorZ* owner_conv = (LDKCResult_NodeInfoDecodeErrorZ*)(owner & ~1); + LDKNodeInfo ret_var = CResult_NodeInfoDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - uint32_t ret = js_invoke_function_2(j_calls->handle_query_short_channel_ids_meth, their_node_id_arr, msg_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; + return ret_ref; } -static void LDKRoutingMessageHandler_JCalls_cloned(LDKRoutingMessageHandler* new_obj) { - LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); - atomic_fetch_add_explicit(&j_calls->MessageSendEventsProvider->refcnt, 1, memory_order_release); + +static inline struct LDKDecodeError CResult_NodeInfoDecodeErrorZ_get_err(LDKCResult_NodeInfoDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeInfoDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_NodeInfoDecodeErrorZ* owner_conv = (LDKCResult_NodeInfoDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_NodeInfoDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline LDKRoutingMessageHandler LDKRoutingMessageHandler_init (/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */void* MessageSendEventsProvider) { - LDKRoutingMessageHandler_JCalls *calls = MALLOC(sizeof(LDKRoutingMessageHandler_JCalls), "LDKRoutingMessageHandler_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - LDKRoutingMessageHandler ret = { - .this_arg = (void*) calls, - .handle_node_announcement = handle_node_announcement_LDKRoutingMessageHandler_jcall, - .handle_channel_announcement = handle_channel_announcement_LDKRoutingMessageHandler_jcall, - .handle_channel_update = handle_channel_update_LDKRoutingMessageHandler_jcall, - .get_next_channel_announcements = get_next_channel_announcements_LDKRoutingMessageHandler_jcall, - .get_next_node_announcements = get_next_node_announcements_LDKRoutingMessageHandler_jcall, - .sync_routing_table = sync_routing_table_LDKRoutingMessageHandler_jcall, - .handle_reply_channel_range = handle_reply_channel_range_LDKRoutingMessageHandler_jcall, - .handle_reply_short_channel_ids_end = handle_reply_short_channel_ids_end_LDKRoutingMessageHandler_jcall, - .handle_query_channel_range = handle_query_channel_range_LDKRoutingMessageHandler_jcall, - .handle_query_short_channel_ids = handle_query_short_channel_ids_LDKRoutingMessageHandler_jcall, - .free = LDKRoutingMessageHandler_JCalls_free, - .MessageSendEventsProvider = LDKMessageSendEventsProvider_init(MessageSendEventsProvider), - }; - calls->MessageSendEventsProvider = ret.MessageSendEventsProvider.this_arg; - return ret; +static inline struct LDKNetworkGraph CResult_NetworkGraphDecodeErrorZ_get_ok(LDKCResult_NetworkGraphDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return NetworkGraph_clone(&*owner->contents.result); } -long __attribute__((visibility("default"))) TS_LDKRoutingMessageHandler_new(/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */ void* MessageSendEventsProvider) { - LDKRoutingMessageHandler *res_ptr = MALLOC(sizeof(LDKRoutingMessageHandler), "LDKRoutingMessageHandler"); - *res_ptr = LDKRoutingMessageHandler_init(o, MessageSendEventsProvider); - return (long)res_ptr; +uint32_t __attribute__((visibility("default"))) TS_CResult_NetworkGraphDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_NetworkGraphDecodeErrorZ* owner_conv = (LDKCResult_NetworkGraphDecodeErrorZ*)(owner & ~1); + LDKNetworkGraph ret_var = CResult_NetworkGraphDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_node_announcement(uint32_t this_arg, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; - LDKNodeAnnouncement msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); - *ret_conv = (this_arg_conv->handle_node_announcement)(this_arg_conv->this_arg, &msg_conv); - return (uint64_t)ret_conv; + +static inline struct LDKDecodeError CResult_NetworkGraphDecodeErrorZ_get_err(LDKCResult_NetworkGraphDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_NetworkGraphDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_NetworkGraphDecodeErrorZ* owner_conv = (LDKCResult_NetworkGraphDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_NetworkGraphDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_channel_announcement(uint32_t this_arg, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; - LDKChannelAnnouncement msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); - *ret_conv = (this_arg_conv->handle_channel_announcement)(this_arg_conv->this_arg, &msg_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_LDKCOption_CVec_NetAddressZZ_ref_from_ptr(uint32_t ptr) { + LDKCOption_CVec_NetAddressZZ *obj = (LDKCOption_CVec_NetAddressZZ*)(ptr & ~1); + switch(obj->tag) { + case LDKCOption_CVec_NetAddressZZ_Some: { + LDKCVec_NetAddressZ some_var = obj->some; + uint32_tArray some_arr = NULL; + some_arr = init_uint32_tArray(some_var.datalen); + uint32_t *some_arr_ptr = (uint32_t*)(some_arr + 4); + for (size_t m = 0; m < some_var.datalen; m++) { + uint64_t some_conv_12_ref = ((uint64_t)&some_var.data[m]) | 1; + some_arr_ptr[m] = some_conv_12_ref; + } + + return 0 /* LDKCOption_CVec_NetAddressZZ - Some */; (void) some_arr; + } + case LDKCOption_CVec_NetAddressZZ_None: { + return 0 /* LDKCOption_CVec_NetAddressZZ - None */; + } + default: abort(); + } +} +static inline struct LDKScoringParameters *CResult_ScoringParametersDecodeErrorZ_get_ok(LDKCResult_ScoringParametersDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return &*owner->contents.result; +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ScoringParametersDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ScoringParametersDecodeErrorZ* owner_conv = (LDKCResult_ScoringParametersDecodeErrorZ*)(owner & ~1); + LDKScoringParameters ret_var = *CResult_ScoringParametersDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner & ~1; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_channel_update(uint32_t this_arg, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; - LDKChannelUpdate msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); - *ret_conv = (this_arg_conv->handle_channel_update)(this_arg_conv->this_arg, &msg_conv); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_ScoringParametersDecodeErrorZ_get_err(LDKCResult_ScoringParametersDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ScoringParametersDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ScoringParametersDecodeErrorZ* owner_conv = (LDKCResult_ScoringParametersDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ScoringParametersDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_tArray __attribute__((visibility("default"))) TS_RoutingMessageHandler_get_next_channel_announcements(uint32_t this_arg, int64_t starting_point, int8_t batch_amount) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; - LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ ret_var = (this_arg_conv->get_next_channel_announcements)(this_arg_conv->this_arg, starting_point, batch_amount); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t h = 0; h < ret_var.datalen; h++) { - LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* ret_conv_59_conv = MALLOC(sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ), "LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ"); - *ret_conv_59_conv = ret_var.data[h]; - ret_arr_ptr[h] = ((uint64_t)ret_conv_59_conv); +static inline struct LDKInitFeatures CResult_InitFeaturesDecodeErrorZ_get_ok(LDKCResult_InitFeaturesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return InitFeatures_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_InitFeaturesDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_InitFeaturesDecodeErrorZ* owner_conv = (LDKCResult_InitFeaturesDecodeErrorZ*)(owner & ~1); + LDKInitFeatures ret_var = CResult_InitFeaturesDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - - FREE(ret_var.data); - return ret_arr; + return ret_ref; } -uint32_tArray __attribute__((visibility("default"))) TS_RoutingMessageHandler_get_next_node_announcements(uint32_t this_arg, int8_tArray starting_point, int8_t batch_amount) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; - LDKPublicKey starting_point_ref; - CHECK(*((uint32_t*)starting_point) == 33); - memcpy(starting_point_ref.compressed_form, (uint8_t*)(starting_point + 4), 33); - LDKCVec_NodeAnnouncementZ ret_var = (this_arg_conv->get_next_node_announcements)(this_arg_conv->this_arg, starting_point_ref, batch_amount); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t s = 0; s < ret_var.datalen; s++) { - LDKNodeAnnouncement ret_conv_18_var = ret_var.data[s]; - uint64_t ret_conv_18_ref = 0; - CHECK((((uint64_t)ret_conv_18_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_18_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_18_var); - ret_conv_18_ref = (uint64_t)ret_conv_18_var.inner; - if (ret_conv_18_var.is_owned) { - ret_conv_18_ref |= 1; - } - ret_arr_ptr[s] = ret_conv_18_ref; +static inline struct LDKDecodeError CResult_InitFeaturesDecodeErrorZ_get_err(LDKCResult_InitFeaturesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_InitFeaturesDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_InitFeaturesDecodeErrorZ* owner_conv = (LDKCResult_InitFeaturesDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_InitFeaturesDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - - FREE(ret_var.data); - return ret_arr; + return ret_ref; } -void __attribute__((visibility("default"))) TS_RoutingMessageHandler_sync_routing_table(uint32_t this_arg, int8_tArray their_node_id, uint32_t init) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKInit init_conv; - init_conv.inner = (void*)(init & (~1)); - init_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(init_conv); - (this_arg_conv->sync_routing_table)(this_arg_conv->this_arg, their_node_id_ref, &init_conv); +static inline struct LDKChannelFeatures CResult_ChannelFeaturesDecodeErrorZ_get_ok(LDKCResult_ChannelFeaturesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ChannelFeatures_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelFeaturesDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ChannelFeaturesDecodeErrorZ* owner_conv = (LDKCResult_ChannelFeaturesDecodeErrorZ*)(owner & ~1); + LDKChannelFeatures ret_var = CResult_ChannelFeaturesDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_reply_channel_range(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKReplyChannelRange msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = ReplyChannelRange_clone(&msg_conv); - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = (this_arg_conv->handle_reply_channel_range)(this_arg_conv->this_arg, their_node_id_ref, msg_conv); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_ChannelFeaturesDecodeErrorZ_get_err(LDKCResult_ChannelFeaturesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelFeaturesDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ChannelFeaturesDecodeErrorZ* owner_conv = (LDKCResult_ChannelFeaturesDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ChannelFeaturesDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_reply_short_channel_ids_end(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKReplyShortChannelIdsEnd msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = ReplyShortChannelIdsEnd_clone(&msg_conv); - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = (this_arg_conv->handle_reply_short_channel_ids_end)(this_arg_conv->this_arg, their_node_id_ref, msg_conv); - return (uint64_t)ret_conv; +static inline struct LDKNodeFeatures CResult_NodeFeaturesDecodeErrorZ_get_ok(LDKCResult_NodeFeaturesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return NodeFeatures_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeFeaturesDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_NodeFeaturesDecodeErrorZ* owner_conv = (LDKCResult_NodeFeaturesDecodeErrorZ*)(owner & ~1); + LDKNodeFeatures ret_var = CResult_NodeFeaturesDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_query_channel_range(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKQueryChannelRange msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = QueryChannelRange_clone(&msg_conv); - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = (this_arg_conv->handle_query_channel_range)(this_arg_conv->this_arg, their_node_id_ref, msg_conv); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_NodeFeaturesDecodeErrorZ_get_err(LDKCResult_NodeFeaturesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeFeaturesDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_NodeFeaturesDecodeErrorZ* owner_conv = (LDKCResult_NodeFeaturesDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_NodeFeaturesDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_query_short_channel_ids(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - LDKQueryShortChannelIds msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = QueryShortChannelIds_clone(&msg_conv); - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = (this_arg_conv->handle_query_short_channel_ids)(this_arg_conv->this_arg, their_node_id_ref, msg_conv); - return (uint64_t)ret_conv; +static inline struct LDKInvoiceFeatures CResult_InvoiceFeaturesDecodeErrorZ_get_ok(LDKCResult_InvoiceFeaturesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return InvoiceFeatures_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceFeaturesDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_InvoiceFeaturesDecodeErrorZ* owner_conv = (LDKCResult_InvoiceFeaturesDecodeErrorZ*)(owner & ~1); + LDKInvoiceFeatures ret_var = CResult_InvoiceFeaturesDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -typedef struct LDKCustomMessageReader_JCalls { - atomic_size_t refcnt; - uint32_t read_meth; -} LDKCustomMessageReader_JCalls; -static void LDKCustomMessageReader_JCalls_free(void* this_arg) { - LDKCustomMessageReader_JCalls *j_calls = (LDKCustomMessageReader_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->read_meth); - FREE(j_calls); +static inline struct LDKDecodeError CResult_InvoiceFeaturesDecodeErrorZ_get_err(LDKCResult_InvoiceFeaturesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceFeaturesDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_InvoiceFeaturesDecodeErrorZ* owner_conv = (LDKCResult_InvoiceFeaturesDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_InvoiceFeaturesDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -LDKCResult_COption_TypeZDecodeErrorZ read_LDKCustomMessageReader_jcall(const void* this_arg, uint16_t message_type, LDKu8slice buffer) { - LDKCustomMessageReader_JCalls *j_calls = (LDKCustomMessageReader_JCalls*) this_arg; - LDKu8slice buffer_var = buffer; - int8_tArray buffer_arr = init_arr(buffer_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(buffer_arr + 4), buffer_var.data, buffer_var.datalen); - uint32_t ret = js_invoke_function_2(j_calls->read_meth, message_type, buffer_arr); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_COption_TypeZDecodeErrorZ ret_conv = *(LDKCResult_COption_TypeZDecodeErrorZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; + +static inline struct LDKChannelTypeFeatures CResult_ChannelTypeFeaturesDecodeErrorZ_get_ok(LDKCResult_ChannelTypeFeaturesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ChannelTypeFeatures_clone(&*owner->contents.result); } -static void LDKCustomMessageReader_JCalls_cloned(LDKCustomMessageReader* new_obj) { - LDKCustomMessageReader_JCalls *j_calls = (LDKCustomMessageReader_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTypeFeaturesDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ChannelTypeFeaturesDecodeErrorZ* owner_conv = (LDKCResult_ChannelTypeFeaturesDecodeErrorZ*)(owner & ~1); + LDKChannelTypeFeatures ret_var = CResult_ChannelTypeFeaturesDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline LDKCustomMessageReader LDKCustomMessageReader_init (/*TODO: JS Object Reference */void* o) { - LDKCustomMessageReader_JCalls *calls = MALLOC(sizeof(LDKCustomMessageReader_JCalls), "LDKCustomMessageReader_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - LDKCustomMessageReader ret = { - .this_arg = (void*) calls, - .read = read_LDKCustomMessageReader_jcall, - .free = LDKCustomMessageReader_JCalls_free, - }; - return ret; +static inline struct LDKDecodeError CResult_ChannelTypeFeaturesDecodeErrorZ_get_err(LDKCResult_ChannelTypeFeaturesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -long __attribute__((visibility("default"))) TS_LDKCustomMessageReader_new(/*TODO: JS Object Reference */void* o) { - LDKCustomMessageReader *res_ptr = MALLOC(sizeof(LDKCustomMessageReader), "LDKCustomMessageReader"); - *res_ptr = LDKCustomMessageReader_init(o); - return (long)res_ptr; +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTypeFeaturesDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ChannelTypeFeaturesDecodeErrorZ* owner_conv = (LDKCResult_ChannelTypeFeaturesDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ChannelTypeFeaturesDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CustomMessageReader_read(uint32_t this_arg, int16_t message_type, int8_tArray buffer) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKCustomMessageReader* this_arg_conv = (LDKCustomMessageReader*)this_arg_ptr; - LDKu8slice buffer_ref; - buffer_ref.datalen = *((uint32_t*)buffer); - buffer_ref.data = (int8_t*)(buffer + 4); - LDKCResult_COption_TypeZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_TypeZDecodeErrorZ), "LDKCResult_COption_TypeZDecodeErrorZ"); - *ret_conv = (this_arg_conv->read)(this_arg_conv->this_arg, message_type, buffer_ref); - return (uint64_t)ret_conv; + +static inline struct LDKNetAddress CResult_NetAddressDecodeErrorZ_get_ok(LDKCResult_NetAddressDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return NetAddress_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_NetAddressDecodeErrorZ* owner_conv = (LDKCResult_NetAddressDecodeErrorZ*)(owner & ~1); + LDKNetAddress *ret_copy = MALLOC(sizeof(LDKNetAddress), "LDKNetAddress"); + *ret_copy = CResult_NetAddressDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -typedef struct LDKCustomMessageHandler_JCalls { - atomic_size_t refcnt; - LDKCustomMessageReader_JCalls* CustomMessageReader; - uint32_t handle_custom_message_meth; - uint32_t get_and_clear_pending_msg_meth; -} LDKCustomMessageHandler_JCalls; -static void LDKCustomMessageHandler_JCalls_free(void* this_arg) { - LDKCustomMessageHandler_JCalls *j_calls = (LDKCustomMessageHandler_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->handle_custom_message_meth); - js_free(j_calls->get_and_clear_pending_msg_meth); - FREE(j_calls); +static inline struct LDKDecodeError CResult_NetAddressDecodeErrorZ_get_err(LDKCResult_NetAddressDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_NetAddressDecodeErrorZ* owner_conv = (LDKCResult_NetAddressDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_NetAddressDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -LDKCResult_NoneLightningErrorZ handle_custom_message_LDKCustomMessageHandler_jcall(const void* this_arg, LDKType msg, LDKPublicKey sender_node_id) { - LDKCustomMessageHandler_JCalls *j_calls = (LDKCustomMessageHandler_JCalls*) this_arg; - LDKType* msg_ret = MALLOC(sizeof(LDKType), "LDKType"); - *msg_ret = msg; - int8_tArray sender_node_id_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(sender_node_id_arr + 4), sender_node_id.compressed_form, 33); - uint32_t ret = js_invoke_function_2(j_calls->handle_custom_message_meth, (uint64_t)msg_ret, sender_node_id_arr); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; + +static inline LDKCVec_UpdateAddHTLCZ CVec_UpdateAddHTLCZ_clone(const LDKCVec_UpdateAddHTLCZ *orig) { + LDKCVec_UpdateAddHTLCZ ret = { .data = MALLOC(sizeof(LDKUpdateAddHTLC) * orig->datalen, "LDKCVec_UpdateAddHTLCZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = UpdateAddHTLC_clone(&orig->data[i]); + } + return ret; } -LDKCVec_C2Tuple_PublicKeyTypeZZ get_and_clear_pending_msg_LDKCustomMessageHandler_jcall(const void* this_arg) { - LDKCustomMessageHandler_JCalls *j_calls = (LDKCustomMessageHandler_JCalls*) this_arg; - uint32_tArray ret = js_invoke_function_0(j_calls->get_and_clear_pending_msg_meth); - LDKCVec_C2Tuple_PublicKeyTypeZZ ret_constr; - ret_constr.datalen = *((uint32_t*)ret); - if (ret_constr.datalen > 0) - ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKC2Tuple_PublicKeyTypeZ), "LDKCVec_C2Tuple_PublicKeyTypeZZ Elements"); - else - ret_constr.data = NULL; - uint32_t* ret_vals = (uint32_t*)(ret + 4); - for (size_t z = 0; z < ret_constr.datalen; z++) { - uint32_t ret_conv_25 = ret_vals[z]; - void* ret_conv_25_ptr = (void*)(((uint64_t)ret_conv_25) & ~1); - CHECK_ACCESS(ret_conv_25_ptr); - LDKC2Tuple_PublicKeyTypeZ ret_conv_25_conv = *(LDKC2Tuple_PublicKeyTypeZ*)(ret_conv_25_ptr); - FREE((void*)ret_conv_25); - ret_constr.data[z] = ret_conv_25_conv; +static inline LDKCVec_UpdateFulfillHTLCZ CVec_UpdateFulfillHTLCZ_clone(const LDKCVec_UpdateFulfillHTLCZ *orig) { + LDKCVec_UpdateFulfillHTLCZ ret = { .data = MALLOC(sizeof(LDKUpdateFulfillHTLC) * orig->datalen, "LDKCVec_UpdateFulfillHTLCZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = UpdateFulfillHTLC_clone(&orig->data[i]); } - return ret_constr; + return ret; } -static void LDKCustomMessageHandler_JCalls_cloned(LDKCustomMessageHandler* new_obj) { - LDKCustomMessageHandler_JCalls *j_calls = (LDKCustomMessageHandler_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); - atomic_fetch_add_explicit(&j_calls->CustomMessageReader->refcnt, 1, memory_order_release); +static inline LDKCVec_UpdateFailHTLCZ CVec_UpdateFailHTLCZ_clone(const LDKCVec_UpdateFailHTLCZ *orig) { + LDKCVec_UpdateFailHTLCZ ret = { .data = MALLOC(sizeof(LDKUpdateFailHTLC) * orig->datalen, "LDKCVec_UpdateFailHTLCZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = UpdateFailHTLC_clone(&orig->data[i]); + } + return ret; } -static inline LDKCustomMessageHandler LDKCustomMessageHandler_init (/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */void* CustomMessageReader) { - LDKCustomMessageHandler_JCalls *calls = MALLOC(sizeof(LDKCustomMessageHandler_JCalls), "LDKCustomMessageHandler_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - - LDKCustomMessageHandler ret = { - .this_arg = (void*) calls, - .handle_custom_message = handle_custom_message_LDKCustomMessageHandler_jcall, - .get_and_clear_pending_msg = get_and_clear_pending_msg_LDKCustomMessageHandler_jcall, - .free = LDKCustomMessageHandler_JCalls_free, - .CustomMessageReader = LDKCustomMessageReader_init(CustomMessageReader), - }; - calls->CustomMessageReader = ret.CustomMessageReader.this_arg; +static inline LDKCVec_UpdateFailMalformedHTLCZ CVec_UpdateFailMalformedHTLCZ_clone(const LDKCVec_UpdateFailMalformedHTLCZ *orig) { + LDKCVec_UpdateFailMalformedHTLCZ ret = { .data = MALLOC(sizeof(LDKUpdateFailMalformedHTLC) * orig->datalen, "LDKCVec_UpdateFailMalformedHTLCZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = UpdateFailMalformedHTLC_clone(&orig->data[i]); + } return ret; } -long __attribute__((visibility("default"))) TS_LDKCustomMessageHandler_new(/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */ void* CustomMessageReader) { - LDKCustomMessageHandler *res_ptr = MALLOC(sizeof(LDKCustomMessageHandler), "LDKCustomMessageHandler"); - *res_ptr = LDKCustomMessageHandler_init(o, CustomMessageReader); - return (long)res_ptr; +static inline struct LDKAcceptChannel CResult_AcceptChannelDecodeErrorZ_get_ok(LDKCResult_AcceptChannelDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return AcceptChannel_clone(&*owner->contents.result); } -uint32_t __attribute__((visibility("default"))) TS_CustomMessageHandler_handle_custom_message(uint32_t this_arg, uint32_t msg, int8_tArray sender_node_id) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKCustomMessageHandler* this_arg_conv = (LDKCustomMessageHandler*)this_arg_ptr; - void* msg_ptr = (void*)(((uint64_t)msg) & ~1); - CHECK_ACCESS(msg_ptr); - LDKType msg_conv = *(LDKType*)(msg_ptr); - LDKPublicKey sender_node_id_ref; - CHECK(*((uint32_t*)sender_node_id) == 33); - memcpy(sender_node_id_ref.compressed_form, (uint8_t*)(sender_node_id + 4), 33); - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = (this_arg_conv->handle_custom_message)(this_arg_conv->this_arg, msg_conv, sender_node_id_ref); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_AcceptChannelDecodeErrorZ* owner_conv = (LDKCResult_AcceptChannelDecodeErrorZ*)(owner & ~1); + LDKAcceptChannel ret_var = CResult_AcceptChannelDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_tArray __attribute__((visibility("default"))) TS_CustomMessageHandler_get_and_clear_pending_msg(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKCustomMessageHandler* this_arg_conv = (LDKCustomMessageHandler*)this_arg_ptr; - LDKCVec_C2Tuple_PublicKeyTypeZZ ret_var = (this_arg_conv->get_and_clear_pending_msg)(this_arg_conv->this_arg); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t z = 0; z < ret_var.datalen; z++) { - LDKC2Tuple_PublicKeyTypeZ* ret_conv_25_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyTypeZ), "LDKC2Tuple_PublicKeyTypeZ"); - *ret_conv_25_conv = ret_var.data[z]; - ret_arr_ptr[z] = ((uint64_t)ret_conv_25_conv); +static inline struct LDKDecodeError CResult_AcceptChannelDecodeErrorZ_get_err(LDKCResult_AcceptChannelDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_AcceptChannelDecodeErrorZ* owner_conv = (LDKCResult_AcceptChannelDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_AcceptChannelDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - - FREE(ret_var.data); - return ret_arr; + return ret_ref; } -typedef struct LDKSocketDescriptor_JCalls { - atomic_size_t refcnt; - uint32_t send_data_meth; - uint32_t disconnect_socket_meth; - uint32_t eq_meth; - uint32_t hash_meth; -} LDKSocketDescriptor_JCalls; -static void LDKSocketDescriptor_JCalls_free(void* this_arg) { - LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->send_data_meth); - js_free(j_calls->disconnect_socket_meth); - js_free(j_calls->eq_meth); - js_free(j_calls->hash_meth); - FREE(j_calls); +static inline struct LDKAnnouncementSignatures CResult_AnnouncementSignaturesDecodeErrorZ_get_ok(LDKCResult_AnnouncementSignaturesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return AnnouncementSignatures_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_AnnouncementSignaturesDecodeErrorZ* owner_conv = (LDKCResult_AnnouncementSignaturesDecodeErrorZ*)(owner & ~1); + LDKAnnouncementSignatures ret_var = CResult_AnnouncementSignaturesDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -uintptr_t send_data_LDKSocketDescriptor_jcall(void* this_arg, LDKu8slice data, bool resume_read) { - LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) this_arg; - LDKu8slice data_var = data; - int8_tArray data_arr = init_arr(data_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(data_arr + 4), data_var.data, data_var.datalen); - return js_invoke_function_2(j_calls->send_data_meth, data_arr, resume_read); + +static inline struct LDKDecodeError CResult_AnnouncementSignaturesDecodeErrorZ_get_err(LDKCResult_AnnouncementSignaturesDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -void disconnect_socket_LDKSocketDescriptor_jcall(void* this_arg) { - LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) this_arg; - js_invoke_function_0(j_calls->disconnect_socket_meth); +uint32_t __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_AnnouncementSignaturesDecodeErrorZ* owner_conv = (LDKCResult_AnnouncementSignaturesDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_AnnouncementSignaturesDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -bool eq_LDKSocketDescriptor_jcall(const void* this_arg, const LDKSocketDescriptor * other_arg) { - LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) this_arg; - LDKSocketDescriptor *other_arg_clone = MALLOC(sizeof(LDKSocketDescriptor), "LDKSocketDescriptor"); - *other_arg_clone = SocketDescriptor_clone(other_arg); - return js_invoke_function_1(j_calls->eq_meth, (uint64_t)other_arg_clone); + +static inline struct LDKChannelReestablish CResult_ChannelReestablishDecodeErrorZ_get_ok(LDKCResult_ChannelReestablishDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ChannelReestablish_clone(&*owner->contents.result); } -uint64_t hash_LDKSocketDescriptor_jcall(const void* this_arg) { - LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) this_arg; - return js_invoke_function_0(j_calls->hash_meth); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ChannelReestablishDecodeErrorZ* owner_conv = (LDKCResult_ChannelReestablishDecodeErrorZ*)(owner & ~1); + LDKChannelReestablish ret_var = CResult_ChannelReestablishDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static void LDKSocketDescriptor_JCalls_cloned(LDKSocketDescriptor* new_obj) { - LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); + +static inline struct LDKDecodeError CResult_ChannelReestablishDecodeErrorZ_get_err(LDKCResult_ChannelReestablishDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ChannelReestablishDecodeErrorZ* owner_conv = (LDKCResult_ChannelReestablishDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ChannelReestablishDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline LDKSocketDescriptor LDKSocketDescriptor_init (/*TODO: JS Object Reference */void* o) { - LDKSocketDescriptor_JCalls *calls = MALLOC(sizeof(LDKSocketDescriptor_JCalls), "LDKSocketDescriptor_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - LDKSocketDescriptor ret = { - .this_arg = (void*) calls, - .send_data = send_data_LDKSocketDescriptor_jcall, - .disconnect_socket = disconnect_socket_LDKSocketDescriptor_jcall, - .eq = eq_LDKSocketDescriptor_jcall, - .hash = hash_LDKSocketDescriptor_jcall, - .cloned = LDKSocketDescriptor_JCalls_cloned, - .free = LDKSocketDescriptor_JCalls_free, - }; - return ret; +static inline struct LDKClosingSigned CResult_ClosingSignedDecodeErrorZ_get_ok(LDKCResult_ClosingSignedDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ClosingSigned_clone(&*owner->contents.result); } -long __attribute__((visibility("default"))) TS_LDKSocketDescriptor_new(/*TODO: JS Object Reference */void* o) { - LDKSocketDescriptor *res_ptr = MALLOC(sizeof(LDKSocketDescriptor), "LDKSocketDescriptor"); - *res_ptr = LDKSocketDescriptor_init(o); - return (long)res_ptr; +uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ClosingSignedDecodeErrorZ* owner_conv = (LDKCResult_ClosingSignedDecodeErrorZ*)(owner & ~1); + LDKClosingSigned ret_var = CResult_ClosingSignedDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_SocketDescriptor_send_data(uint32_t this_arg, int8_tArray data, jboolean resume_read) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKSocketDescriptor* this_arg_conv = (LDKSocketDescriptor*)this_arg_ptr; - LDKu8slice data_ref; - data_ref.datalen = *((uint32_t*)data); - data_ref.data = (int8_t*)(data + 4); - int64_t ret_val = (this_arg_conv->send_data)(this_arg_conv->this_arg, data_ref, resume_read); - return ret_val; + +static inline struct LDKDecodeError CResult_ClosingSignedDecodeErrorZ_get_err(LDKCResult_ClosingSignedDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ClosingSignedDecodeErrorZ* owner_conv = (LDKCResult_ClosingSignedDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ClosingSignedDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_SocketDescriptor_disconnect_socket(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKSocketDescriptor* this_arg_conv = (LDKSocketDescriptor*)this_arg_ptr; - (this_arg_conv->disconnect_socket)(this_arg_conv->this_arg); +static inline struct LDKClosingSignedFeeRange CResult_ClosingSignedFeeRangeDecodeErrorZ_get_ok(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ClosingSignedFeeRange_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* owner_conv = (LDKCResult_ClosingSignedFeeRangeDecodeErrorZ*)(owner & ~1); + LDKClosingSignedFeeRange ret_var = CResult_ClosingSignedFeeRangeDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_SocketDescriptor_hash(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKSocketDescriptor* this_arg_conv = (LDKSocketDescriptor*)this_arg_ptr; - int64_t ret_val = (this_arg_conv->hash)(this_arg_conv->this_arg); - return ret_val; +static inline struct LDKDecodeError CResult_ClosingSignedFeeRangeDecodeErrorZ_get_err(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* owner_conv = (LDKCResult_ClosingSignedFeeRangeDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ClosingSignedFeeRangeDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -typedef struct LDKScore_JCalls { - atomic_size_t refcnt; - uint32_t channel_penalty_msat_meth; - uint32_t payment_path_failed_meth; - uint32_t payment_path_successful_meth; - uint32_t write_meth; -} LDKScore_JCalls; -static void LDKScore_JCalls_free(void* this_arg) { - LDKScore_JCalls *j_calls = (LDKScore_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->channel_penalty_msat_meth); - js_free(j_calls->payment_path_failed_meth); - js_free(j_calls->payment_path_successful_meth); - js_free(j_calls->write_meth); - FREE(j_calls); +static inline struct LDKCommitmentSigned CResult_CommitmentSignedDecodeErrorZ_get_ok(LDKCResult_CommitmentSignedDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return CommitmentSigned_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_CommitmentSignedDecodeErrorZ* owner_conv = (LDKCResult_CommitmentSignedDecodeErrorZ*)(owner & ~1); + LDKCommitmentSigned ret_var = CResult_CommitmentSignedDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -uint64_t channel_penalty_msat_LDKScore_jcall(const void* this_arg, uint64_t short_channel_id, uint64_t send_amt_msat, LDKCOption_u64Z channel_capacity_msat, const LDKNodeId * source, const LDKNodeId * target) { - LDKScore_JCalls *j_calls = (LDKScore_JCalls*) this_arg; - LDKCOption_u64Z *channel_capacity_msat_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *channel_capacity_msat_copy = channel_capacity_msat; - uint64_t channel_capacity_msat_ref = (uint64_t)channel_capacity_msat_copy; - LDKNodeId source_var = *source; - uint64_t source_ref = 0; - source_var = NodeId_clone(source); - CHECK((((uint64_t)source_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&source_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(source_var); - source_ref = (uint64_t)source_var.inner; - if (source_var.is_owned) { - source_ref |= 1; + +static inline struct LDKDecodeError CResult_CommitmentSignedDecodeErrorZ_get_err(LDKCResult_CommitmentSignedDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_CommitmentSignedDecodeErrorZ* owner_conv = (LDKCResult_CommitmentSignedDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_CommitmentSignedDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - LDKNodeId target_var = *target; - uint64_t target_ref = 0; - target_var = NodeId_clone(target); - CHECK((((uint64_t)target_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&target_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(target_var); - target_ref = (uint64_t)target_var.inner; - if (target_var.is_owned) { - target_ref |= 1; + return ret_ref; +} + +static inline struct LDKFundingCreated CResult_FundingCreatedDecodeErrorZ_get_ok(LDKCResult_FundingCreatedDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return FundingCreated_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_FundingCreatedDecodeErrorZ* owner_conv = (LDKCResult_FundingCreatedDecodeErrorZ*)(owner & ~1); + LDKFundingCreated ret_var = CResult_FundingCreatedDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return js_invoke_function_5(j_calls->channel_penalty_msat_meth, short_channel_id, send_amt_msat, channel_capacity_msat_ref, source_ref, target_ref); + return ret_ref; } -void payment_path_failed_LDKScore_jcall(void* this_arg, LDKCVec_RouteHopZ path, uint64_t short_channel_id) { - LDKScore_JCalls *j_calls = (LDKScore_JCalls*) this_arg; - LDKCVec_RouteHopZ path_var = path; - uint32_tArray path_arr = NULL; - path_arr = init_arr(path_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *path_arr_ptr = (uint32_t*)(path_arr + 4); - for (size_t k = 0; k < path_var.datalen; k++) { - LDKRouteHop path_conv_10_var = path_var.data[k]; - uint64_t path_conv_10_ref = 0; - CHECK((((uint64_t)path_conv_10_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&path_conv_10_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_var); - path_conv_10_ref = (uint64_t)path_conv_10_var.inner; - if (path_conv_10_var.is_owned) { - path_conv_10_ref |= 1; - } - path_arr_ptr[k] = path_conv_10_ref; + +static inline struct LDKDecodeError CResult_FundingCreatedDecodeErrorZ_get_err(LDKCResult_FundingCreatedDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_FundingCreatedDecodeErrorZ* owner_conv = (LDKCResult_FundingCreatedDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_FundingCreatedDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - - FREE(path_var.data); - js_invoke_function_2(j_calls->payment_path_failed_meth, path_arr, short_channel_id); + return ret_ref; } -void payment_path_successful_LDKScore_jcall(void* this_arg, LDKCVec_RouteHopZ path) { - LDKScore_JCalls *j_calls = (LDKScore_JCalls*) this_arg; - LDKCVec_RouteHopZ path_var = path; - uint32_tArray path_arr = NULL; - path_arr = init_arr(path_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *path_arr_ptr = (uint32_t*)(path_arr + 4); - for (size_t k = 0; k < path_var.datalen; k++) { - LDKRouteHop path_conv_10_var = path_var.data[k]; - uint64_t path_conv_10_ref = 0; - CHECK((((uint64_t)path_conv_10_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&path_conv_10_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_var); - path_conv_10_ref = (uint64_t)path_conv_10_var.inner; - if (path_conv_10_var.is_owned) { - path_conv_10_ref |= 1; - } - path_arr_ptr[k] = path_conv_10_ref; + +static inline struct LDKFundingSigned CResult_FundingSignedDecodeErrorZ_get_ok(LDKCResult_FundingSignedDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return FundingSigned_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_FundingSignedDecodeErrorZ* owner_conv = (LDKCResult_FundingSignedDecodeErrorZ*)(owner & ~1); + LDKFundingSigned ret_var = CResult_FundingSignedDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - - FREE(path_var.data); - js_invoke_function_1(j_calls->payment_path_successful_meth, path_arr); + return ret_ref; } -LDKCVec_u8Z write_LDKScore_jcall(const void* this_arg) { - LDKScore_JCalls *j_calls = (LDKScore_JCalls*) this_arg; - int8_tArray ret = js_invoke_function_0(j_calls->write_meth); - LDKCVec_u8Z ret_ref; - ret_ref.datalen = *((uint32_t*)ret); - ret_ref.data = MALLOC(ret_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(ret_ref.data, (uint8_t*)(ret + 4), ret_ref.datalen); + +static inline struct LDKDecodeError CResult_FundingSignedDecodeErrorZ_get_err(LDKCResult_FundingSignedDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_FundingSignedDecodeErrorZ* owner_conv = (LDKCResult_FundingSignedDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_FundingSignedDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -static void LDKScore_JCalls_cloned(LDKScore* new_obj) { - LDKScore_JCalls *j_calls = (LDKScore_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); + +static inline struct LDKFundingLocked CResult_FundingLockedDecodeErrorZ_get_ok(LDKCResult_FundingLockedDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return FundingLocked_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_FundingLockedDecodeErrorZ* owner_conv = (LDKCResult_FundingLockedDecodeErrorZ*)(owner & ~1); + LDKFundingLocked ret_var = CResult_FundingLockedDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline LDKScore LDKScore_init (/*TODO: JS Object Reference */void* o) { - LDKScore_JCalls *calls = MALLOC(sizeof(LDKScore_JCalls), "LDKScore_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - LDKScore ret = { - .this_arg = (void*) calls, - .channel_penalty_msat = channel_penalty_msat_LDKScore_jcall, - .payment_path_failed = payment_path_failed_LDKScore_jcall, - .payment_path_successful = payment_path_successful_LDKScore_jcall, - .write = write_LDKScore_jcall, - .free = LDKScore_JCalls_free, - }; - return ret; +static inline struct LDKDecodeError CResult_FundingLockedDecodeErrorZ_get_err(LDKCResult_FundingLockedDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -long __attribute__((visibility("default"))) TS_LDKScore_new(/*TODO: JS Object Reference */void* o) { - LDKScore *res_ptr = MALLOC(sizeof(LDKScore), "LDKScore"); - *res_ptr = LDKScore_init(o); - return (long)res_ptr; +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_FundingLockedDecodeErrorZ* owner_conv = (LDKCResult_FundingLockedDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_FundingLockedDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_Score_channel_penalty_msat(uint32_t this_arg, int64_t short_channel_id, int64_t send_amt_msat, uint32_t channel_capacity_msat, uint32_t source, uint32_t target) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKScore* this_arg_conv = (LDKScore*)this_arg_ptr; - void* channel_capacity_msat_ptr = (void*)(((uint64_t)channel_capacity_msat) & ~1); - CHECK_ACCESS(channel_capacity_msat_ptr); - LDKCOption_u64Z channel_capacity_msat_conv = *(LDKCOption_u64Z*)(channel_capacity_msat_ptr); - channel_capacity_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)channel_capacity_msat) & ~1)); - LDKNodeId source_conv; - source_conv.inner = (void*)(source & (~1)); - source_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(source_conv); - LDKNodeId target_conv; - target_conv.inner = (void*)(target & (~1)); - target_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(target_conv); - int64_t ret_val = (this_arg_conv->channel_penalty_msat)(this_arg_conv->this_arg, short_channel_id, send_amt_msat, channel_capacity_msat_conv, &source_conv, &target_conv); - return ret_val; + +static inline struct LDKInit CResult_InitDecodeErrorZ_get_ok(LDKCResult_InitDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return Init_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_InitDecodeErrorZ* owner_conv = (LDKCResult_InitDecodeErrorZ*)(owner & ~1); + LDKInit ret_var = CResult_InitDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_Score_payment_path_failed(uint32_t this_arg, uint32_tArray path, int64_t short_channel_id) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKScore* this_arg_conv = (LDKScore*)this_arg_ptr; - LDKCVec_RouteHopZ path_constr; - path_constr.datalen = *((uint32_t*)path); - if (path_constr.datalen > 0) - path_constr.data = MALLOC(path_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); - else - path_constr.data = NULL; - uint32_t* path_vals = (uint32_t*)(path + 4); - for (size_t k = 0; k < path_constr.datalen; k++) { - uint32_t path_conv_10 = path_vals[k]; - LDKRouteHop path_conv_10_conv; - path_conv_10_conv.inner = (void*)(path_conv_10 & (~1)); - path_conv_10_conv.is_owned = (path_conv_10 & 1) || (path_conv_10 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_conv); - path_conv_10_conv = RouteHop_clone(&path_conv_10_conv); - path_constr.data[k] = path_conv_10_conv; +static inline struct LDKDecodeError CResult_InitDecodeErrorZ_get_err(LDKCResult_InitDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_InitDecodeErrorZ* owner_conv = (LDKCResult_InitDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_InitDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - (this_arg_conv->payment_path_failed)(this_arg_conv->this_arg, path_constr, short_channel_id); + return ret_ref; } -void __attribute__((visibility("default"))) TS_Score_payment_path_successful(uint32_t this_arg, uint32_tArray path) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKScore* this_arg_conv = (LDKScore*)this_arg_ptr; - LDKCVec_RouteHopZ path_constr; - path_constr.datalen = *((uint32_t*)path); - if (path_constr.datalen > 0) - path_constr.data = MALLOC(path_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); - else - path_constr.data = NULL; - uint32_t* path_vals = (uint32_t*)(path + 4); - for (size_t k = 0; k < path_constr.datalen; k++) { - uint32_t path_conv_10 = path_vals[k]; - LDKRouteHop path_conv_10_conv; - path_conv_10_conv.inner = (void*)(path_conv_10 & (~1)); - path_conv_10_conv.is_owned = (path_conv_10 & 1) || (path_conv_10 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_conv); - path_conv_10_conv = RouteHop_clone(&path_conv_10_conv); - path_constr.data[k] = path_conv_10_conv; +static inline struct LDKOpenChannel CResult_OpenChannelDecodeErrorZ_get_ok(LDKCResult_OpenChannelDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return OpenChannel_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_OpenChannelDecodeErrorZ* owner_conv = (LDKCResult_OpenChannelDecodeErrorZ*)(owner & ~1); + LDKOpenChannel ret_var = CResult_OpenChannelDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - (this_arg_conv->payment_path_successful)(this_arg_conv->this_arg, path_constr); + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_Score_write(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKScore* this_arg_conv = (LDKScore*)this_arg_ptr; - LDKCVec_u8Z ret_var = (this_arg_conv->write)(this_arg_conv->this_arg); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +static inline struct LDKDecodeError CResult_OpenChannelDecodeErrorZ_get_err(LDKCResult_OpenChannelDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } - -typedef struct LDKLockableScore_JCalls { - atomic_size_t refcnt; - uint32_t lock_meth; -} LDKLockableScore_JCalls; -static void LDKLockableScore_JCalls_free(void* this_arg) { - LDKLockableScore_JCalls *j_calls = (LDKLockableScore_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->lock_meth); - FREE(j_calls); +uint32_t __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_OpenChannelDecodeErrorZ* owner_conv = (LDKCResult_OpenChannelDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_OpenChannelDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -LDKScore lock_LDKLockableScore_jcall(const void* this_arg) { - LDKLockableScore_JCalls *j_calls = (LDKLockableScore_JCalls*) this_arg; - uint32_t ret = js_invoke_function_0(j_calls->lock_meth); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKScore ret_conv = *(LDKScore*)(ret_ptr);// Warning: we may need a move here but no clone is available for LDKScore - - return ret_conv; + +static inline struct LDKRevokeAndACK CResult_RevokeAndACKDecodeErrorZ_get_ok(LDKCResult_RevokeAndACKDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return RevokeAndACK_clone(&*owner->contents.result); } -static void LDKLockableScore_JCalls_cloned(LDKLockableScore* new_obj) { - LDKLockableScore_JCalls *j_calls = (LDKLockableScore_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); +uint32_t __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_RevokeAndACKDecodeErrorZ* owner_conv = (LDKCResult_RevokeAndACKDecodeErrorZ*)(owner & ~1); + LDKRevokeAndACK ret_var = CResult_RevokeAndACKDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline LDKLockableScore LDKLockableScore_init (/*TODO: JS Object Reference */void* o) { - LDKLockableScore_JCalls *calls = MALLOC(sizeof(LDKLockableScore_JCalls), "LDKLockableScore_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - LDKLockableScore ret = { - .this_arg = (void*) calls, - .lock = lock_LDKLockableScore_jcall, - .free = LDKLockableScore_JCalls_free, - }; - return ret; -} -long __attribute__((visibility("default"))) TS_LDKLockableScore_new(/*TODO: JS Object Reference */void* o) { - LDKLockableScore *res_ptr = MALLOC(sizeof(LDKLockableScore), "LDKLockableScore"); - *res_ptr = LDKLockableScore_init(o); - return (long)res_ptr; +static inline struct LDKDecodeError CResult_RevokeAndACKDecodeErrorZ_get_err(LDKCResult_RevokeAndACKDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -uint32_t __attribute__((visibility("default"))) TS_LockableScore_lock(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKLockableScore* this_arg_conv = (LDKLockableScore*)this_arg_ptr; - LDKScore* ret_ret = MALLOC(sizeof(LDKScore), "LDKScore"); - *ret_ret = (this_arg_conv->lock)(this_arg_conv->this_arg); - return (uint64_t)ret_ret; +uint32_t __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_RevokeAndACKDecodeErrorZ* owner_conv = (LDKCResult_RevokeAndACKDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_RevokeAndACKDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -typedef struct LDKChannelManagerPersister_JCalls { - atomic_size_t refcnt; - uint32_t persist_manager_meth; -} LDKChannelManagerPersister_JCalls; -static void LDKChannelManagerPersister_JCalls_free(void* this_arg) { - LDKChannelManagerPersister_JCalls *j_calls = (LDKChannelManagerPersister_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->persist_manager_meth); - FREE(j_calls); +static inline struct LDKShutdown CResult_ShutdownDecodeErrorZ_get_ok(LDKCResult_ShutdownDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return Shutdown_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ShutdownDecodeErrorZ* owner_conv = (LDKCResult_ShutdownDecodeErrorZ*)(owner & ~1); + LDKShutdown ret_var = CResult_ShutdownDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -LDKCResult_NoneErrorZ persist_manager_LDKChannelManagerPersister_jcall(const void* this_arg, const LDKChannelManager * channel_manager) { - LDKChannelManagerPersister_JCalls *j_calls = (LDKChannelManagerPersister_JCalls*) this_arg; - LDKChannelManager channel_manager_var = *channel_manager; - uint64_t channel_manager_ref = 0; - // Warning: we may need a move here but no clone is available for LDKChannelManager - CHECK((((uint64_t)channel_manager_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&channel_manager_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_manager_var); - channel_manager_ref = (uint64_t)channel_manager_var.inner; - if (channel_manager_var.is_owned) { - channel_manager_ref |= 1; + +static inline struct LDKDecodeError CResult_ShutdownDecodeErrorZ_get_err(LDKCResult_ShutdownDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ShutdownDecodeErrorZ* owner_conv = (LDKCResult_ShutdownDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ShutdownDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - uint32_t ret = js_invoke_function_1(j_calls->persist_manager_meth, channel_manager_ref); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_NoneErrorZ ret_conv = *(LDKCResult_NoneErrorZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; + return ret_ref; } -static void LDKChannelManagerPersister_JCalls_cloned(LDKChannelManagerPersister* new_obj) { - LDKChannelManagerPersister_JCalls *j_calls = (LDKChannelManagerPersister_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); + +static inline struct LDKUpdateFailHTLC CResult_UpdateFailHTLCDecodeErrorZ_get_ok(LDKCResult_UpdateFailHTLCDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return UpdateFailHTLC_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_UpdateFailHTLCDecodeErrorZ* owner_conv = (LDKCResult_UpdateFailHTLCDecodeErrorZ*)(owner & ~1); + LDKUpdateFailHTLC ret_var = CResult_UpdateFailHTLCDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline LDKChannelManagerPersister LDKChannelManagerPersister_init (/*TODO: JS Object Reference */void* o) { - LDKChannelManagerPersister_JCalls *calls = MALLOC(sizeof(LDKChannelManagerPersister_JCalls), "LDKChannelManagerPersister_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - LDKChannelManagerPersister ret = { - .this_arg = (void*) calls, - .persist_manager = persist_manager_LDKChannelManagerPersister_jcall, - .free = LDKChannelManagerPersister_JCalls_free, - }; - return ret; +static inline struct LDKDecodeError CResult_UpdateFailHTLCDecodeErrorZ_get_err(LDKCResult_UpdateFailHTLCDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -long __attribute__((visibility("default"))) TS_LDKChannelManagerPersister_new(/*TODO: JS Object Reference */void* o) { - LDKChannelManagerPersister *res_ptr = MALLOC(sizeof(LDKChannelManagerPersister), "LDKChannelManagerPersister"); - *res_ptr = LDKChannelManagerPersister_init(o); - return (long)res_ptr; +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_UpdateFailHTLCDecodeErrorZ* owner_conv = (LDKCResult_UpdateFailHTLCDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_UpdateFailHTLCDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManagerPersister_persist_manager(uint32_t this_arg, uint32_t channel_manager) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKChannelManagerPersister* this_arg_conv = (LDKChannelManagerPersister*)this_arg_ptr; - LDKChannelManager channel_manager_conv; - channel_manager_conv.inner = (void*)(channel_manager & (~1)); - channel_manager_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_manager_conv); - LDKCResult_NoneErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneErrorZ), "LDKCResult_NoneErrorZ"); - *ret_conv = (this_arg_conv->persist_manager)(this_arg_conv->this_arg, &channel_manager_conv); - return (uint64_t)ret_conv; + +static inline struct LDKUpdateFailMalformedHTLC CResult_UpdateFailMalformedHTLCDecodeErrorZ_get_ok(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return UpdateFailMalformedHTLC_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* owner_conv = (LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ*)(owner & ~1); + LDKUpdateFailMalformedHTLC ret_var = CResult_UpdateFailMalformedHTLCDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_LDKFallback_ref_from_ptr(uint32_t ptr) { - LDKFallback *obj = (LDKFallback*)(ptr & ~1); - switch(obj->tag) { - case LDKFallback_SegWitProgram: { - uint8_t version_val = obj->seg_wit_program.version._0; - LDKCVec_u8Z program_var = obj->seg_wit_program.program; - int8_tArray program_arr = init_arr(program_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(program_arr + 4), program_var.data, program_var.datalen); - return 0 /* LDKFallback - SegWitProgram */; (void) version_val; (void) program_arr; - } - case LDKFallback_PubKeyHash: { - int8_tArray pub_key_hash_arr = init_arr(20, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(pub_key_hash_arr + 4), obj->pub_key_hash.data, 20); - return 0 /* LDKFallback - PubKeyHash */; (void) pub_key_hash_arr; - } - case LDKFallback_ScriptHash: { - int8_tArray script_hash_arr = init_arr(20, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(script_hash_arr + 4), obj->script_hash.data, 20); - return 0 /* LDKFallback - ScriptHash */; (void) script_hash_arr; - } - default: abort(); +static inline struct LDKDecodeError CResult_UpdateFailMalformedHTLCDecodeErrorZ_get_err(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* owner_conv = (LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_UpdateFailMalformedHTLCDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -typedef struct LDKPayer_JCalls { - atomic_size_t refcnt; - uint32_t node_id_meth; - uint32_t first_hops_meth; - uint32_t send_payment_meth; - uint32_t send_spontaneous_payment_meth; - uint32_t retry_payment_meth; - uint32_t abandon_payment_meth; -} LDKPayer_JCalls; -static void LDKPayer_JCalls_free(void* this_arg) { - LDKPayer_JCalls *j_calls = (LDKPayer_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->node_id_meth); - js_free(j_calls->first_hops_meth); - js_free(j_calls->send_payment_meth); - js_free(j_calls->send_spontaneous_payment_meth); - js_free(j_calls->retry_payment_meth); - js_free(j_calls->abandon_payment_meth); - FREE(j_calls); + +static inline struct LDKUpdateFee CResult_UpdateFeeDecodeErrorZ_get_ok(LDKCResult_UpdateFeeDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return UpdateFee_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_UpdateFeeDecodeErrorZ* owner_conv = (LDKCResult_UpdateFeeDecodeErrorZ*)(owner & ~1); + LDKUpdateFee ret_var = CResult_UpdateFeeDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } + return ret_ref; } -LDKPublicKey node_id_LDKPayer_jcall(const void* this_arg) { - LDKPayer_JCalls *j_calls = (LDKPayer_JCalls*) this_arg; - int8_tArray ret = js_invoke_function_0(j_calls->node_id_meth); - LDKPublicKey ret_ref; - CHECK(*((uint32_t*)ret) == 33); - memcpy(ret_ref.compressed_form, (uint8_t*)(ret + 4), 33); + +static inline struct LDKDecodeError CResult_UpdateFeeDecodeErrorZ_get_err(LDKCResult_UpdateFeeDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_UpdateFeeDecodeErrorZ* owner_conv = (LDKCResult_UpdateFeeDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_UpdateFeeDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -LDKCVec_ChannelDetailsZ first_hops_LDKPayer_jcall(const void* this_arg) { - LDKPayer_JCalls *j_calls = (LDKPayer_JCalls*) this_arg; - uint32_tArray ret = js_invoke_function_0(j_calls->first_hops_meth); - LDKCVec_ChannelDetailsZ ret_constr; - ret_constr.datalen = *((uint32_t*)ret); - if (ret_constr.datalen > 0) - ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKChannelDetails), "LDKCVec_ChannelDetailsZ Elements"); - else - ret_constr.data = NULL; - uint32_t* ret_vals = (uint32_t*)(ret + 4); - for (size_t q = 0; q < ret_constr.datalen; q++) { - uint32_t ret_conv_16 = ret_vals[q]; - LDKChannelDetails ret_conv_16_conv; - ret_conv_16_conv.inner = (void*)(ret_conv_16 & (~1)); - ret_conv_16_conv.is_owned = (ret_conv_16 & 1) || (ret_conv_16 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_16_conv); - ret_constr.data[q] = ret_conv_16_conv; + +static inline struct LDKUpdateFulfillHTLC CResult_UpdateFulfillHTLCDecodeErrorZ_get_ok(LDKCResult_UpdateFulfillHTLCDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return UpdateFulfillHTLC_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_UpdateFulfillHTLCDecodeErrorZ* owner_conv = (LDKCResult_UpdateFulfillHTLCDecodeErrorZ*)(owner & ~1); + LDKUpdateFulfillHTLC ret_var = CResult_UpdateFulfillHTLCDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - return ret_constr; + return ret_ref; } -LDKCResult_PaymentIdPaymentSendFailureZ send_payment_LDKPayer_jcall(const void* this_arg, const LDKRoute * route, LDKThirtyTwoBytes payment_hash, LDKThirtyTwoBytes payment_secret) { - LDKPayer_JCalls *j_calls = (LDKPayer_JCalls*) this_arg; - LDKRoute route_var = *route; - uint64_t route_ref = 0; - route_var = Route_clone(route); - CHECK((((uint64_t)route_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&route_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(route_var); - route_ref = (uint64_t)route_var.inner; - if (route_var.is_owned) { - route_ref |= 1; - } - int8_tArray payment_hash_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_hash_arr + 4), payment_hash.data, 32); - int8_tArray payment_secret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_secret_arr + 4), payment_secret.data, 32); - uint32_t ret = js_invoke_function_3(j_calls->send_payment_meth, route_ref, payment_hash_arr, payment_secret_arr); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_PaymentIdPaymentSendFailureZ ret_conv = *(LDKCResult_PaymentIdPaymentSendFailureZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; + +static inline struct LDKDecodeError CResult_UpdateFulfillHTLCDecodeErrorZ_get_err(LDKCResult_UpdateFulfillHTLCDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -LDKCResult_PaymentIdPaymentSendFailureZ send_spontaneous_payment_LDKPayer_jcall(const void* this_arg, const LDKRoute * route, LDKThirtyTwoBytes payment_preimage) { - LDKPayer_JCalls *j_calls = (LDKPayer_JCalls*) this_arg; - LDKRoute route_var = *route; - uint64_t route_ref = 0; - route_var = Route_clone(route); - CHECK((((uint64_t)route_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&route_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(route_var); - route_ref = (uint64_t)route_var.inner; - if (route_var.is_owned) { - route_ref |= 1; - } - int8_tArray payment_preimage_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_preimage_arr + 4), payment_preimage.data, 32); - uint32_t ret = js_invoke_function_2(j_calls->send_spontaneous_payment_meth, route_ref, payment_preimage_arr); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_PaymentIdPaymentSendFailureZ ret_conv = *(LDKCResult_PaymentIdPaymentSendFailureZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_UpdateFulfillHTLCDecodeErrorZ* owner_conv = (LDKCResult_UpdateFulfillHTLCDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_UpdateFulfillHTLCDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -LDKCResult_NonePaymentSendFailureZ retry_payment_LDKPayer_jcall(const void* this_arg, const LDKRoute * route, LDKThirtyTwoBytes payment_id) { - LDKPayer_JCalls *j_calls = (LDKPayer_JCalls*) this_arg; - LDKRoute route_var = *route; - uint64_t route_ref = 0; - route_var = Route_clone(route); - CHECK((((uint64_t)route_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&route_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(route_var); - route_ref = (uint64_t)route_var.inner; - if (route_var.is_owned) { - route_ref |= 1; - } - int8_tArray payment_id_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_id_arr + 4), payment_id.data, 32); - uint32_t ret = js_invoke_function_2(j_calls->retry_payment_meth, route_ref, payment_id_arr); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_NonePaymentSendFailureZ ret_conv = *(LDKCResult_NonePaymentSendFailureZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; + +static inline struct LDKUpdateAddHTLC CResult_UpdateAddHTLCDecodeErrorZ_get_ok(LDKCResult_UpdateAddHTLCDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return UpdateAddHTLC_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_UpdateAddHTLCDecodeErrorZ* owner_conv = (LDKCResult_UpdateAddHTLCDecodeErrorZ*)(owner & ~1); + LDKUpdateAddHTLC ret_var = CResult_UpdateAddHTLCDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void abandon_payment_LDKPayer_jcall(const void* this_arg, LDKThirtyTwoBytes payment_id) { - LDKPayer_JCalls *j_calls = (LDKPayer_JCalls*) this_arg; - int8_tArray payment_id_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_id_arr + 4), payment_id.data, 32); - js_invoke_function_1(j_calls->abandon_payment_meth, payment_id_arr); + +static inline struct LDKDecodeError CResult_UpdateAddHTLCDecodeErrorZ_get_err(LDKCResult_UpdateAddHTLCDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -static void LDKPayer_JCalls_cloned(LDKPayer* new_obj) { - LDKPayer_JCalls *j_calls = (LDKPayer_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_UpdateAddHTLCDecodeErrorZ* owner_conv = (LDKCResult_UpdateAddHTLCDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_UpdateAddHTLCDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline LDKPayer LDKPayer_init (/*TODO: JS Object Reference */void* o) { - LDKPayer_JCalls *calls = MALLOC(sizeof(LDKPayer_JCalls), "LDKPayer_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - LDKPayer ret = { - .this_arg = (void*) calls, - .node_id = node_id_LDKPayer_jcall, - .first_hops = first_hops_LDKPayer_jcall, - .send_payment = send_payment_LDKPayer_jcall, - .send_spontaneous_payment = send_spontaneous_payment_LDKPayer_jcall, - .retry_payment = retry_payment_LDKPayer_jcall, - .abandon_payment = abandon_payment_LDKPayer_jcall, - .free = LDKPayer_JCalls_free, - }; - return ret; +static inline struct LDKPing CResult_PingDecodeErrorZ_get_ok(LDKCResult_PingDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return Ping_clone(&*owner->contents.result); } -long __attribute__((visibility("default"))) TS_LDKPayer_new(/*TODO: JS Object Reference */void* o) { - LDKPayer *res_ptr = MALLOC(sizeof(LDKPayer), "LDKPayer"); - *res_ptr = LDKPayer_init(o); - return (long)res_ptr; -} -int8_tArray __attribute__((visibility("default"))) TS_Payer_node_id(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKPayer* this_arg_conv = (LDKPayer*)this_arg_ptr; - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), (this_arg_conv->node_id)(this_arg_conv->this_arg).compressed_form, 33); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_PingDecodeErrorZ* owner_conv = (LDKCResult_PingDecodeErrorZ*)(owner & ~1); + LDKPing ret_var = CResult_PingDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_tArray __attribute__((visibility("default"))) TS_Payer_first_hops(uint32_t this_arg) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKPayer* this_arg_conv = (LDKPayer*)this_arg_ptr; - LDKCVec_ChannelDetailsZ ret_var = (this_arg_conv->first_hops)(this_arg_conv->this_arg); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t q = 0; q < ret_var.datalen; q++) { - LDKChannelDetails ret_conv_16_var = ret_var.data[q]; - uint64_t ret_conv_16_ref = 0; - CHECK((((uint64_t)ret_conv_16_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_16_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_16_var); - ret_conv_16_ref = (uint64_t)ret_conv_16_var.inner; - if (ret_conv_16_var.is_owned) { - ret_conv_16_ref |= 1; - } - ret_arr_ptr[q] = ret_conv_16_ref; +static inline struct LDKDecodeError CResult_PingDecodeErrorZ_get_err(LDKCResult_PingDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_PingDecodeErrorZ* owner_conv = (LDKCResult_PingDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_PingDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - - FREE(ret_var.data); - return ret_arr; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_Payer_send_payment(uint32_t this_arg, uint32_t route, int8_tArray payment_hash, int8_tArray payment_secret) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKPayer* this_arg_conv = (LDKPayer*)this_arg_ptr; - LDKRoute route_conv; - route_conv.inner = (void*)(route & (~1)); - route_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(route_conv); - LDKThirtyTwoBytes payment_hash_ref; - CHECK(*((uint32_t*)payment_hash) == 32); - memcpy(payment_hash_ref.data, (uint8_t*)(payment_hash + 4), 32); - LDKThirtyTwoBytes payment_secret_ref; - CHECK(*((uint32_t*)payment_secret) == 32); - memcpy(payment_secret_ref.data, (uint8_t*)(payment_secret + 4), 32); - LDKCResult_PaymentIdPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentSendFailureZ), "LDKCResult_PaymentIdPaymentSendFailureZ"); - *ret_conv = (this_arg_conv->send_payment)(this_arg_conv->this_arg, &route_conv, payment_hash_ref, payment_secret_ref); - return (uint64_t)ret_conv; +static inline struct LDKPong CResult_PongDecodeErrorZ_get_ok(LDKCResult_PongDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return Pong_clone(&*owner->contents.result); } - -uint32_t __attribute__((visibility("default"))) TS_Payer_send_spontaneous_payment(uint32_t this_arg, uint32_t route, int8_tArray payment_preimage) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKPayer* this_arg_conv = (LDKPayer*)this_arg_ptr; - LDKRoute route_conv; - route_conv.inner = (void*)(route & (~1)); - route_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(route_conv); - LDKThirtyTwoBytes payment_preimage_ref; - CHECK(*((uint32_t*)payment_preimage) == 32); - memcpy(payment_preimage_ref.data, (uint8_t*)(payment_preimage + 4), 32); - LDKCResult_PaymentIdPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentSendFailureZ), "LDKCResult_PaymentIdPaymentSendFailureZ"); - *ret_conv = (this_arg_conv->send_spontaneous_payment)(this_arg_conv->this_arg, &route_conv, payment_preimage_ref); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_PongDecodeErrorZ* owner_conv = (LDKCResult_PongDecodeErrorZ*)(owner & ~1); + LDKPong ret_var = CResult_PongDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_Payer_retry_payment(uint32_t this_arg, uint32_t route, int8_tArray payment_id) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKPayer* this_arg_conv = (LDKPayer*)this_arg_ptr; - LDKRoute route_conv; - route_conv.inner = (void*)(route & (~1)); - route_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(route_conv); - LDKThirtyTwoBytes payment_id_ref; - CHECK(*((uint32_t*)payment_id) == 32); - memcpy(payment_id_ref.data, (uint8_t*)(payment_id + 4), 32); - LDKCResult_NonePaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentSendFailureZ), "LDKCResult_NonePaymentSendFailureZ"); - *ret_conv = (this_arg_conv->retry_payment)(this_arg_conv->this_arg, &route_conv, payment_id_ref); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_PongDecodeErrorZ_get_err(LDKCResult_PongDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } - -void __attribute__((visibility("default"))) TS_Payer_abandon_payment(uint32_t this_arg, int8_tArray payment_id) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKPayer* this_arg_conv = (LDKPayer*)this_arg_ptr; - LDKThirtyTwoBytes payment_id_ref; - CHECK(*((uint32_t*)payment_id) == 32); - memcpy(payment_id_ref.data, (uint8_t*)(payment_id + 4), 32); - (this_arg_conv->abandon_payment)(this_arg_conv->this_arg, payment_id_ref); +uint32_t __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_PongDecodeErrorZ* owner_conv = (LDKCResult_PongDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_PongDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -typedef struct LDKRouter_JCalls { - atomic_size_t refcnt; - uint32_t find_route_meth; -} LDKRouter_JCalls; -static void LDKRouter_JCalls_free(void* this_arg) { - LDKRouter_JCalls *j_calls = (LDKRouter_JCalls*) this_arg; - if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { - js_free(j_calls->find_route_meth); - FREE(j_calls); - } +static inline struct LDKUnsignedChannelAnnouncement CResult_UnsignedChannelAnnouncementDecodeErrorZ_get_ok(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return UnsignedChannelAnnouncement_clone(&*owner->contents.result); } -LDKCResult_RouteLightningErrorZ find_route_LDKRouter_jcall(const void* this_arg, LDKPublicKey payer, const LDKRouteParameters * params, const uint8_t (* payment_hash)[32], LDKCVec_ChannelDetailsZ * first_hops, const LDKScore * scorer) { - LDKRouter_JCalls *j_calls = (LDKRouter_JCalls*) this_arg; - int8_tArray payer_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payer_arr + 4), payer.compressed_form, 33); - LDKRouteParameters params_var = *params; - uint64_t params_ref = 0; - params_var = RouteParameters_clone(params); - CHECK((((uint64_t)params_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)¶ms_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(params_var); - params_ref = (uint64_t)params_var.inner; - if (params_var.is_owned) { - params_ref |= 1; - } - int8_tArray payment_hash_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(payment_hash_arr + 4), *payment_hash, 32); - LDKCVec_ChannelDetailsZ *first_hops_var_ptr = first_hops; - uint32_tArray first_hops_arr = NULL; - if (first_hops != NULL) { - LDKCVec_ChannelDetailsZ first_hops_var = *first_hops_var_ptr; - first_hops_arr = init_arr(first_hops_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *first_hops_arr_ptr = (uint32_t*)(first_hops_arr + 4); - for (size_t q = 0; q < first_hops_var.datalen; q++) { - LDKChannelDetails first_hops_conv_16_var = first_hops_var.data[q]; - uint64_t first_hops_conv_16_ref = 0; - CHECK((((uint64_t)first_hops_conv_16_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&first_hops_conv_16_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(first_hops_conv_16_var); - first_hops_conv_16_ref = (uint64_t)first_hops_conv_16_var.inner; - if (first_hops_conv_16_var.is_owned) { - first_hops_conv_16_ref |= 1; - } - first_hops_arr_ptr[q] = first_hops_conv_16_ref; - } - +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* owner_conv = (LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ*)(owner & ~1); + LDKUnsignedChannelAnnouncement ret_var = CResult_UnsignedChannelAnnouncementDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - // WARNING: This object doesn't live past this scope, needs clone! - uint64_t ret_scorer = ((uint64_t)scorer) | 1; - uint32_t ret = js_invoke_function_5(j_calls->find_route_meth, payer_arr, params_ref, payment_hash_arr, first_hops_arr, ret_scorer); - void* ret_ptr = (void*)(((uint64_t)ret) & ~1); - CHECK_ACCESS(ret_ptr); - LDKCResult_RouteLightningErrorZ ret_conv = *(LDKCResult_RouteLightningErrorZ*)(ret_ptr); - FREE((void*)ret); - return ret_conv; -} -static void LDKRouter_JCalls_cloned(LDKRouter* new_obj) { - LDKRouter_JCalls *j_calls = (LDKRouter_JCalls*) new_obj->this_arg; - atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); + return ret_ref; } -static inline LDKRouter LDKRouter_init (/*TODO: JS Object Reference */void* o) { - LDKRouter_JCalls *calls = MALLOC(sizeof(LDKRouter_JCalls), "LDKRouter_JCalls"); - atomic_init(&calls->refcnt, 1); - //TODO: Assign calls->o from o - LDKRouter ret = { - .this_arg = (void*) calls, - .find_route = find_route_LDKRouter_jcall, - .free = LDKRouter_JCalls_free, - }; - return ret; -} -long __attribute__((visibility("default"))) TS_LDKRouter_new(/*TODO: JS Object Reference */void* o) { - LDKRouter *res_ptr = MALLOC(sizeof(LDKRouter), "LDKRouter"); - *res_ptr = LDKRouter_init(o); - return (long)res_ptr; +static inline struct LDKDecodeError CResult_UnsignedChannelAnnouncementDecodeErrorZ_get_err(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -uint32_t __attribute__((visibility("default"))) TS_Router_find_route(uint32_t this_arg, int8_tArray payer, uint32_t params, int8_tArray payment_hash, uint32_tArray first_hops, uint32_t scorer) { - void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); - if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } - LDKRouter* this_arg_conv = (LDKRouter*)this_arg_ptr; - LDKPublicKey payer_ref; - CHECK(*((uint32_t*)payer) == 33); - memcpy(payer_ref.compressed_form, (uint8_t*)(payer + 4), 33); - LDKRouteParameters params_conv; - params_conv.inner = (void*)(params & (~1)); - params_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(params_conv); - unsigned char payment_hash_arr[32]; - CHECK(*((uint32_t*)payment_hash) == 32); - memcpy(payment_hash_arr, (uint8_t*)(payment_hash + 4), 32); - unsigned char (*payment_hash_ref)[32] = &payment_hash_arr; - LDKCVec_ChannelDetailsZ first_hops_constr; - LDKCVec_ChannelDetailsZ *first_hops_ptr = NULL; - if (first_hops != 0) { - first_hops_constr.datalen = *((uint32_t*)first_hops); - if (first_hops_constr.datalen > 0) - first_hops_constr.data = MALLOC(first_hops_constr.datalen * sizeof(LDKChannelDetails), "LDKCVec_ChannelDetailsZ Elements"); - else - first_hops_constr.data = NULL; - uint32_t* first_hops_vals = (uint32_t*)(first_hops + 4); - for (size_t q = 0; q < first_hops_constr.datalen; q++) { - uint32_t first_hops_conv_16 = first_hops_vals[q]; - LDKChannelDetails first_hops_conv_16_conv; - first_hops_conv_16_conv.inner = (void*)(first_hops_conv_16 & (~1)); - first_hops_conv_16_conv.is_owned = (first_hops_conv_16 & 1) || (first_hops_conv_16 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(first_hops_conv_16_conv); - first_hops_constr.data[q] = first_hops_conv_16_conv; - } - first_hops_ptr = &first_hops_constr; +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* owner_conv = (LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_UnsignedChannelAnnouncementDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - void* scorer_ptr = (void*)(((uint64_t)scorer) & ~1); - if (!(scorer & 1)) { CHECK_ACCESS(scorer_ptr); } - LDKScore* scorer_conv = (LDKScore*)scorer_ptr; - LDKCResult_RouteLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteLightningErrorZ), "LDKCResult_RouteLightningErrorZ"); - *ret_conv = (this_arg_conv->find_route)(this_arg_conv->this_arg, payer_ref, ¶ms_conv, payment_hash_ref, first_hops_ptr, scorer_conv); - if (first_hops_ptr != NULL) { FREE(first_hops_constr.data); } - return (uint64_t)ret_conv; + return ret_ref; } -jstring __attribute__((visibility("default"))) TS__ldk_get_compiled_version() { - LDKStr ret_str = _ldk_get_compiled_version(); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; +static inline struct LDKChannelAnnouncement CResult_ChannelAnnouncementDecodeErrorZ_get_ok(LDKCResult_ChannelAnnouncementDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ChannelAnnouncement_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ChannelAnnouncementDecodeErrorZ* owner_conv = (LDKCResult_ChannelAnnouncementDecodeErrorZ*)(owner & ~1); + LDKChannelAnnouncement ret_var = CResult_ChannelAnnouncementDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -jstring __attribute__((visibility("default"))) TS__ldk_c_bindings_get_compiled_version() { - LDKStr ret_str = _ldk_c_bindings_get_compiled_version(); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; +static inline struct LDKDecodeError CResult_ChannelAnnouncementDecodeErrorZ_get_err(LDKCResult_ChannelAnnouncementDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ChannelAnnouncementDecodeErrorZ* owner_conv = (LDKCResult_ChannelAnnouncementDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ChannelAnnouncementDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_Transaction_free(int8_tArray _res) { - LDKTransaction _res_ref; - _res_ref.datalen = *((uint32_t*)_res); - _res_ref.data = MALLOC(_res_ref.datalen, "LDKTransaction Bytes"); - memcpy(_res_ref.data, (uint8_t*)(_res + 4), _res_ref.datalen); - _res_ref.data_is_owned = true; - Transaction_free(_res_ref); +static inline struct LDKUnsignedChannelUpdate CResult_UnsignedChannelUpdateDecodeErrorZ_get_ok(LDKCResult_UnsignedChannelUpdateDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return UnsignedChannelUpdate_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_UnsignedChannelUpdateDecodeErrorZ* owner_conv = (LDKCResult_UnsignedChannelUpdateDecodeErrorZ*)(owner & ~1); + LDKUnsignedChannelUpdate ret_var = CResult_UnsignedChannelUpdateDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_TxOut_new(int8_tArray script_pubkey, int64_t value) { - LDKCVec_u8Z script_pubkey_ref; - script_pubkey_ref.datalen = *((uint32_t*)script_pubkey); - script_pubkey_ref.data = MALLOC(script_pubkey_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(script_pubkey_ref.data, (uint8_t*)(script_pubkey + 4), script_pubkey_ref.datalen); - LDKTxOut* ret_ref = MALLOC(sizeof(LDKTxOut), "LDKTxOut"); - *ret_ref = TxOut_new(script_pubkey_ref, value); - return (uint64_t)ret_ref; +static inline struct LDKDecodeError CResult_UnsignedChannelUpdateDecodeErrorZ_get_err(LDKCResult_UnsignedChannelUpdateDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_UnsignedChannelUpdateDecodeErrorZ* owner_conv = (LDKCResult_UnsignedChannelUpdateDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_UnsignedChannelUpdateDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_TxOut_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKTxOut _res_conv = *(LDKTxOut*)(_res_ptr); - FREE((void*)_res); - TxOut_free(_res_conv); +static inline struct LDKChannelUpdate CResult_ChannelUpdateDecodeErrorZ_get_ok(LDKCResult_ChannelUpdateDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ChannelUpdate_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ChannelUpdateDecodeErrorZ* owner_conv = (LDKCResult_ChannelUpdateDecodeErrorZ*)(owner & ~1); + LDKChannelUpdate ret_var = CResult_ChannelUpdateDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline uint64_t TxOut_clone_ptr(LDKTxOut *NONNULL_PTR arg) { - LDKTxOut* ret_ref = MALLOC(sizeof(LDKTxOut), "LDKTxOut"); - *ret_ref = TxOut_clone(arg); - return (uint64_t)ret_ref; +static inline struct LDKDecodeError CResult_ChannelUpdateDecodeErrorZ_get_err(LDKCResult_ChannelUpdateDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -int64_t __attribute__((visibility("default"))) TS_TxOut_clone_ptr(uint32_t arg) { - LDKTxOut* arg_conv = (LDKTxOut*)(arg & ~1); - int64_t ret_val = TxOut_clone_ptr(arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ChannelUpdateDecodeErrorZ* owner_conv = (LDKCResult_ChannelUpdateDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ChannelUpdateDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_TxOut_clone(uint32_t orig) { - LDKTxOut* orig_conv = (LDKTxOut*)(orig & ~1); - LDKTxOut* ret_ref = MALLOC(sizeof(LDKTxOut), "LDKTxOut"); - *ret_ref = TxOut_clone(orig_conv); - return (uint64_t)ret_ref; +static inline struct LDKErrorMessage CResult_ErrorMessageDecodeErrorZ_get_ok(LDKCResult_ErrorMessageDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ErrorMessage_clone(&*owner->contents.result); } - -void __attribute__((visibility("default"))) TS_Str_free(jstring _res) { - LDKStr dummy = { .chars = NULL, .len = 0, .chars_is_owned = false }; - Str_free(dummy); +uint32_t __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ErrorMessageDecodeErrorZ* owner_conv = (LDKCResult_ErrorMessageDecodeErrorZ*)(owner & ~1); + LDKErrorMessage ret_var = CResult_ErrorMessageDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_SecretKeyErrorZ_ok(int8_tArray o) { - LDKSecretKey o_ref; - CHECK(*((uint32_t*)o) == 32); - memcpy(o_ref.bytes, (uint8_t*)(o + 4), 32); - LDKCResult_SecretKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SecretKeyErrorZ), "LDKCResult_SecretKeyErrorZ"); - *ret_conv = CResult_SecretKeyErrorZ_ok(o_ref); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_ErrorMessageDecodeErrorZ_get_err(LDKCResult_ErrorMessageDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_SecretKeyErrorZ_err(uint32_t e) { - LDKSecp256k1Error e_conv = LDKSecp256k1Error_from_js(e); - LDKCResult_SecretKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SecretKeyErrorZ), "LDKCResult_SecretKeyErrorZ"); - *ret_conv = CResult_SecretKeyErrorZ_err(e_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ErrorMessageDecodeErrorZ* owner_conv = (LDKCResult_ErrorMessageDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ErrorMessageDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_CResult_SecretKeyErrorZ_is_ok(uint32_t o) { - LDKCResult_SecretKeyErrorZ* o_conv = (LDKCResult_SecretKeyErrorZ*)(o & ~1); - jboolean ret_val = CResult_SecretKeyErrorZ_is_ok(o_conv); - return ret_val; +static inline struct LDKUnsignedNodeAnnouncement CResult_UnsignedNodeAnnouncementDecodeErrorZ_get_ok(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return UnsignedNodeAnnouncement_clone(&*owner->contents.result); } - -void __attribute__((visibility("default"))) TS_CResult_SecretKeyErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_SecretKeyErrorZ _res_conv = *(LDKCResult_SecretKeyErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_SecretKeyErrorZ_free(_res_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* owner_conv = (LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ*)(owner & ~1); + LDKUnsignedNodeAnnouncement ret_var = CResult_UnsignedNodeAnnouncementDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_ok(int8_tArray o) { - LDKPublicKey o_ref; - CHECK(*((uint32_t*)o) == 33); - memcpy(o_ref.compressed_form, (uint8_t*)(o + 4), 33); - LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); - *ret_conv = CResult_PublicKeyErrorZ_ok(o_ref); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_UnsignedNodeAnnouncementDecodeErrorZ_get_err(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_err(uint32_t e) { - LDKSecp256k1Error e_conv = LDKSecp256k1Error_from_js(e); - LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); - *ret_conv = CResult_PublicKeyErrorZ_err(e_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* owner_conv = (LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_UnsignedNodeAnnouncementDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_is_ok(uint32_t o) { - LDKCResult_PublicKeyErrorZ* o_conv = (LDKCResult_PublicKeyErrorZ*)(o & ~1); - jboolean ret_val = CResult_PublicKeyErrorZ_is_ok(o_conv); - return ret_val; +static inline struct LDKNodeAnnouncement CResult_NodeAnnouncementDecodeErrorZ_get_ok(LDKCResult_NodeAnnouncementDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return NodeAnnouncement_clone(&*owner->contents.result); } - -void __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_PublicKeyErrorZ _res_conv = *(LDKCResult_PublicKeyErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_PublicKeyErrorZ_free(_res_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_NodeAnnouncementDecodeErrorZ* owner_conv = (LDKCResult_NodeAnnouncementDecodeErrorZ*)(owner & ~1); + LDKNodeAnnouncement ret_var = CResult_NodeAnnouncementDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline uint64_t CResult_PublicKeyErrorZ_clone_ptr(LDKCResult_PublicKeyErrorZ *NONNULL_PTR arg) { - LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); - *ret_conv = CResult_PublicKeyErrorZ_clone(arg); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_NodeAnnouncementDecodeErrorZ_get_err(LDKCResult_NodeAnnouncementDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -int64_t __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_PublicKeyErrorZ* arg_conv = (LDKCResult_PublicKeyErrorZ*)(arg & ~1); - int64_t ret_val = CResult_PublicKeyErrorZ_clone_ptr(arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_NodeAnnouncementDecodeErrorZ* owner_conv = (LDKCResult_NodeAnnouncementDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_NodeAnnouncementDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_clone(uint32_t orig) { - LDKCResult_PublicKeyErrorZ* orig_conv = (LDKCResult_PublicKeyErrorZ*)(orig & ~1); - LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); - *ret_conv = CResult_PublicKeyErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +static inline struct LDKQueryShortChannelIds CResult_QueryShortChannelIdsDecodeErrorZ_get_ok(LDKCResult_QueryShortChannelIdsDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return QueryShortChannelIds_clone(&*owner->contents.result); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_ok(uint32_t o) { - LDKTxCreationKeys o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = TxCreationKeys_clone(&o_conv); - LDKCResult_TxCreationKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysDecodeErrorZ), "LDKCResult_TxCreationKeysDecodeErrorZ"); - *ret_conv = CResult_TxCreationKeysDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_QueryShortChannelIdsDecodeErrorZ* owner_conv = (LDKCResult_QueryShortChannelIdsDecodeErrorZ*)(owner & ~1); + LDKQueryShortChannelIds ret_var = CResult_QueryShortChannelIdsDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_TxCreationKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysDecodeErrorZ), "LDKCResult_TxCreationKeysDecodeErrorZ"); - *ret_conv = CResult_TxCreationKeysDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_QueryShortChannelIdsDecodeErrorZ_get_err(LDKCResult_QueryShortChannelIdsDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } - -jboolean __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_TxCreationKeysDecodeErrorZ* o_conv = (LDKCResult_TxCreationKeysDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_TxCreationKeysDecodeErrorZ_is_ok(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_QueryShortChannelIdsDecodeErrorZ* owner_conv = (LDKCResult_QueryShortChannelIdsDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_QueryShortChannelIdsDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_TxCreationKeysDecodeErrorZ _res_conv = *(LDKCResult_TxCreationKeysDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_TxCreationKeysDecodeErrorZ_free(_res_conv); +static inline struct LDKReplyShortChannelIdsEnd CResult_ReplyShortChannelIdsEndDecodeErrorZ_get_ok(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ReplyShortChannelIdsEnd_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* owner_conv = (LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ*)(owner & ~1); + LDKReplyShortChannelIdsEnd ret_var = CResult_ReplyShortChannelIdsEndDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline uint64_t CResult_TxCreationKeysDecodeErrorZ_clone_ptr(LDKCResult_TxCreationKeysDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_TxCreationKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysDecodeErrorZ), "LDKCResult_TxCreationKeysDecodeErrorZ"); - *ret_conv = CResult_TxCreationKeysDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_ReplyShortChannelIdsEndDecodeErrorZ_get_err(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -int64_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_TxCreationKeysDecodeErrorZ* arg_conv = (LDKCResult_TxCreationKeysDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_TxCreationKeysDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* owner_conv = (LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ReplyShortChannelIdsEndDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_TxCreationKeysDecodeErrorZ* orig_conv = (LDKCResult_TxCreationKeysDecodeErrorZ*)(orig & ~1); - LDKCResult_TxCreationKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysDecodeErrorZ), "LDKCResult_TxCreationKeysDecodeErrorZ"); - *ret_conv = CResult_TxCreationKeysDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +static inline struct LDKQueryChannelRange CResult_QueryChannelRangeDecodeErrorZ_get_ok(LDKCResult_QueryChannelRangeDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return QueryChannelRange_clone(&*owner->contents.result); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_ok(uint32_t o) { - LDKChannelPublicKeys o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ChannelPublicKeys_clone(&o_conv); - LDKCResult_ChannelPublicKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelPublicKeysDecodeErrorZ), "LDKCResult_ChannelPublicKeysDecodeErrorZ"); - *ret_conv = CResult_ChannelPublicKeysDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_QueryChannelRangeDecodeErrorZ* owner_conv = (LDKCResult_QueryChannelRangeDecodeErrorZ*)(owner & ~1); + LDKQueryChannelRange ret_var = CResult_QueryChannelRangeDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_ChannelPublicKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelPublicKeysDecodeErrorZ), "LDKCResult_ChannelPublicKeysDecodeErrorZ"); - *ret_conv = CResult_ChannelPublicKeysDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_QueryChannelRangeDecodeErrorZ_get_err(LDKCResult_QueryChannelRangeDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_QueryChannelRangeDecodeErrorZ* owner_conv = (LDKCResult_QueryChannelRangeDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_QueryChannelRangeDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ChannelPublicKeysDecodeErrorZ* o_conv = (LDKCResult_ChannelPublicKeysDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ChannelPublicKeysDecodeErrorZ_is_ok(o_conv); - return ret_val; +static inline struct LDKReplyChannelRange CResult_ReplyChannelRangeDecodeErrorZ_get_ok(LDKCResult_ReplyChannelRangeDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ReplyChannelRange_clone(&*owner->contents.result); } - -void __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_ChannelPublicKeysDecodeErrorZ _res_conv = *(LDKCResult_ChannelPublicKeysDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_ChannelPublicKeysDecodeErrorZ_free(_res_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_ReplyChannelRangeDecodeErrorZ* owner_conv = (LDKCResult_ReplyChannelRangeDecodeErrorZ*)(owner & ~1); + LDKReplyChannelRange ret_var = CResult_ReplyChannelRangeDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline uint64_t CResult_ChannelPublicKeysDecodeErrorZ_clone_ptr(LDKCResult_ChannelPublicKeysDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ChannelPublicKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelPublicKeysDecodeErrorZ), "LDKCResult_ChannelPublicKeysDecodeErrorZ"); - *ret_conv = CResult_ChannelPublicKeysDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_ReplyChannelRangeDecodeErrorZ_get_err(LDKCResult_ReplyChannelRangeDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -int64_t __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ChannelPublicKeysDecodeErrorZ* arg_conv = (LDKCResult_ChannelPublicKeysDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ChannelPublicKeysDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_ReplyChannelRangeDecodeErrorZ* owner_conv = (LDKCResult_ReplyChannelRangeDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_ReplyChannelRangeDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ChannelPublicKeysDecodeErrorZ* orig_conv = (LDKCResult_ChannelPublicKeysDecodeErrorZ*)(orig & ~1); - LDKCResult_ChannelPublicKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelPublicKeysDecodeErrorZ), "LDKCResult_ChannelPublicKeysDecodeErrorZ"); - *ret_conv = CResult_ChannelPublicKeysDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +static inline struct LDKGossipTimestampFilter CResult_GossipTimestampFilterDecodeErrorZ_get_ok(LDKCResult_GossipTimestampFilterDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return GossipTimestampFilter_clone(&*owner->contents.result); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_ok(uint32_t o) { - LDKTxCreationKeys o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = TxCreationKeys_clone(&o_conv); - LDKCResult_TxCreationKeysErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysErrorZ), "LDKCResult_TxCreationKeysErrorZ"); - *ret_conv = CResult_TxCreationKeysErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_GossipTimestampFilterDecodeErrorZ* owner_conv = (LDKCResult_GossipTimestampFilterDecodeErrorZ*)(owner & ~1); + LDKGossipTimestampFilter ret_var = CResult_GossipTimestampFilterDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_err(uint32_t e) { - LDKSecp256k1Error e_conv = LDKSecp256k1Error_from_js(e); - LDKCResult_TxCreationKeysErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysErrorZ), "LDKCResult_TxCreationKeysErrorZ"); - *ret_conv = CResult_TxCreationKeysErrorZ_err(e_conv); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_GossipTimestampFilterDecodeErrorZ_get_err(LDKCResult_GossipTimestampFilterDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } - -jboolean __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_is_ok(uint32_t o) { - LDKCResult_TxCreationKeysErrorZ* o_conv = (LDKCResult_TxCreationKeysErrorZ*)(o & ~1); - jboolean ret_val = CResult_TxCreationKeysErrorZ_is_ok(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_GossipTimestampFilterDecodeErrorZ* owner_conv = (LDKCResult_GossipTimestampFilterDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_GossipTimestampFilterDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_TxCreationKeysErrorZ _res_conv = *(LDKCResult_TxCreationKeysErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_TxCreationKeysErrorZ_free(_res_conv); +static inline struct LDKDelayedPaymentOutputDescriptor CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_get_ok(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return DelayedPaymentOutputDescriptor_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* owner_conv = (LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ*)(owner & ~1); + LDKDelayedPaymentOutputDescriptor ret_var = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline uint64_t CResult_TxCreationKeysErrorZ_clone_ptr(LDKCResult_TxCreationKeysErrorZ *NONNULL_PTR arg) { - LDKCResult_TxCreationKeysErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysErrorZ), "LDKCResult_TxCreationKeysErrorZ"); - *ret_conv = CResult_TxCreationKeysErrorZ_clone(arg); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_get_err(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -int64_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_TxCreationKeysErrorZ* arg_conv = (LDKCResult_TxCreationKeysErrorZ*)(arg & ~1); - int64_t ret_val = CResult_TxCreationKeysErrorZ_clone_ptr(arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* owner_conv = (LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_clone(uint32_t orig) { - LDKCResult_TxCreationKeysErrorZ* orig_conv = (LDKCResult_TxCreationKeysErrorZ*)(orig & ~1); - LDKCResult_TxCreationKeysErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysErrorZ), "LDKCResult_TxCreationKeysErrorZ"); - *ret_conv = CResult_TxCreationKeysErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +static inline struct LDKStaticPaymentOutputDescriptor CResult_StaticPaymentOutputDescriptorDecodeErrorZ_get_ok(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return StaticPaymentOutputDescriptor_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* owner_conv = (LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ*)(owner & ~1); + LDKStaticPaymentOutputDescriptor ret_var = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_COption_u32Z_some(int32_t o) { - LDKCOption_u32Z *ret_copy = MALLOC(sizeof(LDKCOption_u32Z), "LDKCOption_u32Z"); - *ret_copy = COption_u32Z_some(o); - uint64_t ret_ref = (uint64_t)ret_copy; +static inline struct LDKDecodeError CResult_StaticPaymentOutputDescriptorDecodeErrorZ_get_err(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* owner_conv = (LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_COption_u32Z_none() { - LDKCOption_u32Z *ret_copy = MALLOC(sizeof(LDKCOption_u32Z), "LDKCOption_u32Z"); - *ret_copy = COption_u32Z_none(); +static inline struct LDKSpendableOutputDescriptor CResult_SpendableOutputDescriptorDecodeErrorZ_get_ok(LDKCResult_SpendableOutputDescriptorDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return SpendableOutputDescriptor_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_SpendableOutputDescriptorDecodeErrorZ* owner_conv = (LDKCResult_SpendableOutputDescriptorDecodeErrorZ*)(owner & ~1); + LDKSpendableOutputDescriptor *ret_copy = MALLOC(sizeof(LDKSpendableOutputDescriptor), "LDKSpendableOutputDescriptor"); + *ret_copy = CResult_SpendableOutputDescriptorDecodeErrorZ_get_ok(owner_conv); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -void __attribute__((visibility("default"))) TS_COption_u32Z_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCOption_u32Z _res_conv = *(LDKCOption_u32Z*)(_res_ptr); - FREE((void*)_res); - COption_u32Z_free(_res_conv); +static inline struct LDKDecodeError CResult_SpendableOutputDescriptorDecodeErrorZ_get_err(LDKCResult_SpendableOutputDescriptorDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } - -static inline uint64_t COption_u32Z_clone_ptr(LDKCOption_u32Z *NONNULL_PTR arg) { - LDKCOption_u32Z *ret_copy = MALLOC(sizeof(LDKCOption_u32Z), "LDKCOption_u32Z"); - *ret_copy = COption_u32Z_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; +uint32_t __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_SpendableOutputDescriptorDecodeErrorZ* owner_conv = (LDKCResult_SpendableOutputDescriptorDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_SpendableOutputDescriptorDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_COption_u32Z_clone_ptr(uint32_t arg) { - LDKCOption_u32Z* arg_conv = (LDKCOption_u32Z*)arg; - int64_t ret_val = COption_u32Z_clone_ptr(arg_conv); - return ret_val; + +static inline struct LDKSign CResult_SignDecodeErrorZ_get_ok(LDKCResult_SignDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return Sign_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_SignDecodeErrorZ* owner_conv = (LDKCResult_SignDecodeErrorZ*)(owner & ~1); + LDKSign* ret_ret = MALLOC(sizeof(LDKSign), "LDKSign"); + *ret_ret = CResult_SignDecodeErrorZ_get_ok(owner_conv); + return (uint64_t)ret_ret; } -uint32_t __attribute__((visibility("default"))) TS_COption_u32Z_clone(uint32_t orig) { - LDKCOption_u32Z* orig_conv = (LDKCOption_u32Z*)orig; - LDKCOption_u32Z *ret_copy = MALLOC(sizeof(LDKCOption_u32Z), "LDKCOption_u32Z"); - *ret_copy = COption_u32Z_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; +static inline struct LDKDecodeError CResult_SignDecodeErrorZ_get_err(LDKCResult_SignDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_SignDecodeErrorZ* owner_conv = (LDKCResult_SignDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_SignDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_ok(uint32_t o) { - LDKHTLCOutputInCommitment o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = HTLCOutputInCommitment_clone(&o_conv); - LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ), "LDKCResult_HTLCOutputInCommitmentDecodeErrorZ"); - *ret_conv = CResult_HTLCOutputInCommitmentDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +static inline struct LDKRecoverableSignature CResult_RecoverableSignatureNoneZ_get_ok(LDKCResult_RecoverableSignatureNoneZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; +} +int8_tArray __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_get_ok(uint32_t owner) { + LDKCResult_RecoverableSignatureNoneZ* owner_conv = (LDKCResult_RecoverableSignatureNoneZ*)(owner & ~1); + int8_tArray et_arr = init_int8_tArray(68); + memcpy(et_arr->elems, CResult_RecoverableSignatureNoneZ_get_ok(owner_conv).serialized_form, 68); + return et_arr; } -uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ), "LDKCResult_HTLCOutputInCommitmentDecodeErrorZ"); - *ret_conv = CResult_HTLCOutputInCommitmentDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +static inline void CResult_RecoverableSignatureNoneZ_get_err(LDKCResult_RecoverableSignatureNoneZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; +} +void __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_get_err(uint32_t owner) { + LDKCResult_RecoverableSignatureNoneZ* owner_conv = (LDKCResult_RecoverableSignatureNoneZ*)(owner & ~1); + CResult_RecoverableSignatureNoneZ_get_err(owner_conv); } -jboolean __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* o_conv = (LDKCResult_HTLCOutputInCommitmentDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_HTLCOutputInCommitmentDecodeErrorZ_is_ok(o_conv); - return ret_val; +static inline LDKCVec_CVec_u8ZZ CVec_CVec_u8ZZ_clone(const LDKCVec_CVec_u8ZZ *orig) { + LDKCVec_CVec_u8ZZ ret = { .data = MALLOC(sizeof(LDKCVec_u8Z) * orig->datalen, "LDKCVec_CVec_u8ZZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = CVec_u8Z_clone(&orig->data[i]); + } + return ret; +} +static inline struct LDKCVec_CVec_u8ZZ CResult_CVec_CVec_u8ZZNoneZ_get_ok(LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return CVec_CVec_u8ZZ_clone(&*owner->contents.result); +} +ptrArray __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_get_ok(uint32_t owner) { + LDKCResult_CVec_CVec_u8ZZNoneZ* owner_conv = (LDKCResult_CVec_CVec_u8ZZNoneZ*)(owner & ~1); + LDKCVec_CVec_u8ZZ ret_var = CResult_CVec_CVec_u8ZZNoneZ_get_ok(owner_conv); + ptrArray ret_arr = NULL; + ret_arr = init_ptrArray(ret_var.datalen); + int8_tArray *ret_arr_ptr = (int8_tArray*)(ret_arr + 4); + for (size_t m = 0; m < ret_var.datalen; m++) { + LDKCVec_u8Z ret_conv_12_var = ret_var.data[m]; + int8_tArray ret_conv_12_arr = init_int8_tArray(ret_conv_12_var.datalen); + memcpy(ret_conv_12_arr->elems, ret_conv_12_var.data, ret_conv_12_var.datalen); + CVec_u8Z_free(ret_conv_12_var); + ret_arr_ptr[m] = ret_conv_12_arr; + } + + FREE(ret_var.data); + return ret_arr; } -void __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_HTLCOutputInCommitmentDecodeErrorZ _res_conv = *(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_HTLCOutputInCommitmentDecodeErrorZ_free(_res_conv); +static inline void CResult_CVec_CVec_u8ZZNoneZ_get_err(LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; +} +void __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_get_err(uint32_t owner) { + LDKCResult_CVec_CVec_u8ZZNoneZ* owner_conv = (LDKCResult_CVec_CVec_u8ZZNoneZ*)(owner & ~1); + CResult_CVec_CVec_u8ZZNoneZ_get_err(owner_conv); } -static inline uint64_t CResult_HTLCOutputInCommitmentDecodeErrorZ_clone_ptr(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ), "LDKCResult_HTLCOutputInCommitmentDecodeErrorZ"); - *ret_conv = CResult_HTLCOutputInCommitmentDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +static inline struct LDKInMemorySigner CResult_InMemorySignerDecodeErrorZ_get_ok(LDKCResult_InMemorySignerDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return InMemorySigner_clone(&*owner->contents.result); } -int64_t __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* arg_conv = (LDKCResult_HTLCOutputInCommitmentDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_HTLCOutputInCommitmentDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_InMemorySignerDecodeErrorZ* owner_conv = (LDKCResult_InMemorySignerDecodeErrorZ*)(owner & ~1); + LDKInMemorySigner ret_var = CResult_InMemorySignerDecodeErrorZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* orig_conv = (LDKCResult_HTLCOutputInCommitmentDecodeErrorZ*)(orig & ~1); - LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ), "LDKCResult_HTLCOutputInCommitmentDecodeErrorZ"); - *ret_conv = CResult_HTLCOutputInCommitmentDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_InMemorySignerDecodeErrorZ_get_err(LDKCResult_InMemorySignerDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } - -uint32_t __attribute__((visibility("default"))) TS_COption_NoneZ_some() { - uint32_t ret_conv = LDKCOption_NoneZ_to_js(COption_NoneZ_some()); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_InMemorySignerDecodeErrorZ* owner_conv = (LDKCResult_InMemorySignerDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_InMemorySignerDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_COption_NoneZ_none() { - uint32_t ret_conv = LDKCOption_NoneZ_to_js(COption_NoneZ_none()); - return ret_conv; +static inline LDKCVec_TxOutZ CVec_TxOutZ_clone(const LDKCVec_TxOutZ *orig) { + LDKCVec_TxOutZ ret = { .data = MALLOC(sizeof(LDKTxOut) * orig->datalen, "LDKCVec_TxOutZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = TxOut_clone(&orig->data[i]); + } + return ret; } - -void __attribute__((visibility("default"))) TS_COption_NoneZ_free(uint32_t _res) { - LDKCOption_NoneZ _res_conv = LDKCOption_NoneZ_from_js(_res); - COption_NoneZ_free(_res_conv); +static inline struct LDKTransaction CResult_TransactionNoneZ_get_ok(LDKCResult_TransactionNoneZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_ok(uint32_t o) { - LDKCounterpartyChannelTransactionParameters o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = CounterpartyChannelTransactionParameters_clone(&o_conv); - LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ), "LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ"); - *ret_conv = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +int8_tArray __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_get_ok(uint32_t owner) { + LDKCResult_TransactionNoneZ* owner_conv = (LDKCResult_TransactionNoneZ*)(owner & ~1); + LDKTransaction ret_var = CResult_TransactionNoneZ_get_ok(owner_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + Transaction_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ), "LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ"); - *ret_conv = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +static inline void CResult_TransactionNoneZ_get_err(LDKCResult_TransactionNoneZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; } - -jboolean __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* o_conv = (LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_is_ok(o_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_get_err(uint32_t owner) { + LDKCResult_TransactionNoneZ* owner_conv = (LDKCResult_TransactionNoneZ*)(owner & ~1); + CResult_TransactionNoneZ_get_err(owner_conv); } -void __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ _res_conv = *(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_free(_res_conv); +typedef struct LDKFilter_JCalls { + atomic_size_t refcnt; + uint32_t register_tx_meth; + uint32_t register_output_meth; +} LDKFilter_JCalls; +static void LDKFilter_JCalls_free(void* this_arg) { + LDKFilter_JCalls *j_calls = (LDKFilter_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->register_tx_meth); + js_free_function_ptr(j_calls->register_output_meth); + FREE(j_calls); + } } - -static inline uint64_t CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone_ptr(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ), "LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ"); - *ret_conv = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +void register_tx_LDKFilter_jcall(const void* this_arg, const uint8_t (* txid)[32], LDKu8slice script_pubkey) { + LDKFilter_JCalls *j_calls = (LDKFilter_JCalls*) this_arg; + int8_tArray txid_arr = init_int8_tArray(32); + memcpy(txid_arr->elems, *txid, 32); + LDKu8slice script_pubkey_var = script_pubkey; + int8_tArray script_pubkey_arr = init_int8_tArray(script_pubkey_var.datalen); + memcpy(script_pubkey_arr->elems, script_pubkey_var.data, script_pubkey_var.datalen); + js_invoke_function_2(j_calls->register_tx_meth, (uint32_t)txid_arr, (uint32_t)script_pubkey_arr); } -int64_t __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* arg_conv = (LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +LDKCOption_C2Tuple_usizeTransactionZZ register_output_LDKFilter_jcall(const void* this_arg, LDKWatchedOutput output) { + LDKFilter_JCalls *j_calls = (LDKFilter_JCalls*) this_arg; + LDKWatchedOutput output_var = output; + uint64_t output_ref = 0; + CHECK((((uint64_t)output_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&output_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(output_var); + output_ref = (uint64_t)output_var.inner; + if (output_var.is_owned) { + output_ref |= 1; + } + uint32_t ret = js_invoke_function_1(j_calls->register_output_meth, (uint32_t)output_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCOption_C2Tuple_usizeTransactionZZ ret_conv = *(LDKCOption_C2Tuple_usizeTransactionZZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* orig_conv = (LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ*)(orig & ~1); - LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ), "LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ"); - *ret_conv = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +static void LDKFilter_JCalls_cloned(LDKFilter* new_obj) { + LDKFilter_JCalls *j_calls = (LDKFilter_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKFilter LDKFilter_init (/*TODO: JS Object Reference */void* o) { + LDKFilter_JCalls *calls = MALLOC(sizeof(LDKFilter_JCalls), "LDKFilter_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_ok(uint32_t o) { - LDKChannelTransactionParameters o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ChannelTransactionParameters_clone(&o_conv); - LDKCResult_ChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTransactionParametersDecodeErrorZ), "LDKCResult_ChannelTransactionParametersDecodeErrorZ"); - *ret_conv = CResult_ChannelTransactionParametersDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; + LDKFilter ret = { + .this_arg = (void*) calls, + .register_tx = register_tx_LDKFilter_jcall, + .register_output = register_output_LDKFilter_jcall, + .free = LDKFilter_JCalls_free, + }; + return ret; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_ChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTransactionParametersDecodeErrorZ), "LDKCResult_ChannelTransactionParametersDecodeErrorZ"); - *ret_conv = CResult_ChannelTransactionParametersDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +long __attribute__((visibility("default"))) TS_LDKFilter_new(/*TODO: JS Object Reference */void* o) { + LDKFilter *res_ptr = MALLOC(sizeof(LDKFilter), "LDKFilter"); + *res_ptr = LDKFilter_init(o); + return (long)res_ptr; } - -jboolean __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ChannelTransactionParametersDecodeErrorZ* o_conv = (LDKCResult_ChannelTransactionParametersDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ChannelTransactionParametersDecodeErrorZ_is_ok(o_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_Filter_register_tx(uint32_t this_arg, int8_tArray txid, int8_tArray script_pubkey) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKFilter* this_arg_conv = (LDKFilter*)this_arg_ptr; + unsigned char txid_arr[32]; + CHECK(txid->arr_len == 32); + memcpy(txid_arr, txid->elems, 32); + unsigned char (*txid_ref)[32] = &txid_arr; + LDKu8slice script_pubkey_ref; + script_pubkey_ref.datalen = script_pubkey->arr_len; + script_pubkey_ref.data = script_pubkey->elems; + (this_arg_conv->register_tx)(this_arg_conv->this_arg, txid_ref, script_pubkey_ref); } -void __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_ChannelTransactionParametersDecodeErrorZ _res_conv = *(LDKCResult_ChannelTransactionParametersDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_ChannelTransactionParametersDecodeErrorZ_free(_res_conv); +uint32_t __attribute__((visibility("default"))) TS_Filter_register_output(uint32_t this_arg, uint32_t output) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKFilter* this_arg_conv = (LDKFilter*)this_arg_ptr; + LDKWatchedOutput output_conv; + output_conv.inner = (void*)(output & (~1)); + output_conv.is_owned = (output & 1) || (output == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(output_conv); + output_conv = WatchedOutput_clone(&output_conv); + LDKCOption_C2Tuple_usizeTransactionZZ *ret_copy = MALLOC(sizeof(LDKCOption_C2Tuple_usizeTransactionZZ), "LDKCOption_C2Tuple_usizeTransactionZZ"); + *ret_copy = (this_arg_conv->register_output)(this_arg_conv->this_arg, output_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -static inline uint64_t CResult_ChannelTransactionParametersDecodeErrorZ_clone_ptr(LDKCResult_ChannelTransactionParametersDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTransactionParametersDecodeErrorZ), "LDKCResult_ChannelTransactionParametersDecodeErrorZ"); - *ret_conv = CResult_ChannelTransactionParametersDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_LDKCOption_FilterZ_ref_from_ptr(uint32_t ptr) { + LDKCOption_FilterZ *obj = (LDKCOption_FilterZ*)(ptr & ~1); + switch(obj->tag) { + case LDKCOption_FilterZ_Some: { + LDKFilter* some_ret = MALLOC(sizeof(LDKFilter), "LDKFilter"); + *some_ret = obj->some; + // Warning: We likely need to clone here, but no clone is available, so we just do it for Java instances + return 0 /* LDKCOption_FilterZ - Some */; (void) (uint64_t)some_ret; + } + case LDKCOption_FilterZ_None: { + return 0 /* LDKCOption_FilterZ - None */; + } + default: abort(); + } } -int64_t __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ChannelTransactionParametersDecodeErrorZ* arg_conv = (LDKCResult_ChannelTransactionParametersDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ChannelTransactionParametersDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +static inline struct LDKLockedChannelMonitor *CResult_LockedChannelMonitorNoneZ_get_ok(LDKCResult_LockedChannelMonitorNoneZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return &*owner->contents.result; +} +uint32_t __attribute__((visibility("default"))) TS_CResult_LockedChannelMonitorNoneZ_get_ok(uint32_t owner) { + LDKCResult_LockedChannelMonitorNoneZ* owner_conv = (LDKCResult_LockedChannelMonitorNoneZ*)(owner & ~1); + LDKLockedChannelMonitor ret_var = *CResult_LockedChannelMonitorNoneZ_get_ok(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner & ~1; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ChannelTransactionParametersDecodeErrorZ* orig_conv = (LDKCResult_ChannelTransactionParametersDecodeErrorZ*)(orig & ~1); - LDKCResult_ChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTransactionParametersDecodeErrorZ), "LDKCResult_ChannelTransactionParametersDecodeErrorZ"); - *ret_conv = CResult_ChannelTransactionParametersDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +static inline void CResult_LockedChannelMonitorNoneZ_get_err(LDKCResult_LockedChannelMonitorNoneZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; +} +void __attribute__((visibility("default"))) TS_CResult_LockedChannelMonitorNoneZ_get_err(uint32_t owner) { + LDKCResult_LockedChannelMonitorNoneZ* owner_conv = (LDKCResult_LockedChannelMonitorNoneZ*)(owner & ~1); + CResult_LockedChannelMonitorNoneZ_get_err(owner_conv); } -void __attribute__((visibility("default"))) TS_CVec_SignatureZ_free(ptrArray _res) { - LDKCVec_SignatureZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); - else - _res_constr.data = NULL; - int8_tArray* _res_vals = (int8_tArray*)(_res + 4); - for (size_t m = 0; m < _res_constr.datalen; m++) { - int8_tArray _res_conv_12 = _res_vals[m]; - LDKSignature _res_conv_12_ref; - CHECK(*((uint32_t*)_res_conv_12) == 64); - memcpy(_res_conv_12_ref.compact_form, (uint8_t*)(_res_conv_12 + 4), 64); - _res_constr.data[m] = _res_conv_12_ref; +static inline LDKCVec_OutPointZ CVec_OutPointZ_clone(const LDKCVec_OutPointZ *orig) { + LDKCVec_OutPointZ ret = { .data = MALLOC(sizeof(LDKOutPoint) * orig->datalen, "LDKCVec_OutPointZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = OutPoint_clone(&orig->data[i]); + } + return ret; +} +uint32_t __attribute__((visibility("default"))) TS_LDKAPIError_ref_from_ptr(uint32_t ptr) { + LDKAPIError *obj = (LDKAPIError*)(ptr & ~1); + switch(obj->tag) { + case LDKAPIError_APIMisuseError: { + LDKStr err_str = obj->api_misuse_error.err; + jstring err_conv = str_ref_to_ts(err_str.chars, err_str.len); + return 0 /* LDKAPIError - APIMisuseError */; (void) err_conv; + } + case LDKAPIError_FeeRateTooHigh: { + LDKStr err_str = obj->fee_rate_too_high.err; + jstring err_conv = str_ref_to_ts(err_str.chars, err_str.len); + return 0 /* LDKAPIError - FeeRateTooHigh */; (void) err_conv; (void) obj->fee_rate_too_high.feerate; + } + case LDKAPIError_RouteError: { + LDKStr err_str = obj->route_error.err; + jstring err_conv = str_ref_to_ts(err_str.chars, err_str.len); + return 0 /* LDKAPIError - RouteError */; (void) err_conv; + } + case LDKAPIError_ChannelUnavailable: { + LDKStr err_str = obj->channel_unavailable.err; + jstring err_conv = str_ref_to_ts(err_str.chars, err_str.len); + return 0 /* LDKAPIError - ChannelUnavailable */; (void) err_conv; + } + case LDKAPIError_MonitorUpdateFailed: { + return 0 /* LDKAPIError - MonitorUpdateFailed */; + } + case LDKAPIError_IncompatibleShutdownScript: { + LDKShutdownScript script_var = obj->incompatible_shutdown_script.script; + uint64_t script_ref = 0; + CHECK((((uint64_t)script_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&script_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(script_var); + script_ref = (uint64_t)script_var.inner & ~1; + return 0 /* LDKAPIError - IncompatibleShutdownScript */; (void) script_ref; + } + default: abort(); } - CVec_SignatureZ_free(_res_constr); -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_ok(uint32_t o) { - LDKHolderCommitmentTransaction o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = HolderCommitmentTransaction_clone(&o_conv); - LDKCResult_HolderCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HolderCommitmentTransactionDecodeErrorZ), "LDKCResult_HolderCommitmentTransactionDecodeErrorZ"); - *ret_conv = CResult_HolderCommitmentTransactionDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_HolderCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HolderCommitmentTransactionDecodeErrorZ), "LDKCResult_HolderCommitmentTransactionDecodeErrorZ"); - *ret_conv = CResult_HolderCommitmentTransactionDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; } - -jboolean __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_HolderCommitmentTransactionDecodeErrorZ* o_conv = (LDKCResult_HolderCommitmentTransactionDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_HolderCommitmentTransactionDecodeErrorZ_is_ok(o_conv); - return ret_val; +static inline void CResult_NoneAPIErrorZ_get_ok(LDKCResult_NoneAPIErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; } - -void __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_HolderCommitmentTransactionDecodeErrorZ _res_conv = *(LDKCResult_HolderCommitmentTransactionDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_HolderCommitmentTransactionDecodeErrorZ_free(_res_conv); +void __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_get_ok(uint32_t owner) { + LDKCResult_NoneAPIErrorZ* owner_conv = (LDKCResult_NoneAPIErrorZ*)(owner & ~1); + CResult_NoneAPIErrorZ_get_ok(owner_conv); } -static inline uint64_t CResult_HolderCommitmentTransactionDecodeErrorZ_clone_ptr(LDKCResult_HolderCommitmentTransactionDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_HolderCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HolderCommitmentTransactionDecodeErrorZ), "LDKCResult_HolderCommitmentTransactionDecodeErrorZ"); - *ret_conv = CResult_HolderCommitmentTransactionDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +static inline struct LDKAPIError CResult_NoneAPIErrorZ_get_err(LDKCResult_NoneAPIErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return APIError_clone(&*owner->contents.err); } -int64_t __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_HolderCommitmentTransactionDecodeErrorZ* arg_conv = (LDKCResult_HolderCommitmentTransactionDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_HolderCommitmentTransactionDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_get_err(uint32_t owner) { + LDKCResult_NoneAPIErrorZ* owner_conv = (LDKCResult_NoneAPIErrorZ*)(owner & ~1); + LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); + *ret_copy = CResult_NoneAPIErrorZ_get_err(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_HolderCommitmentTransactionDecodeErrorZ* orig_conv = (LDKCResult_HolderCommitmentTransactionDecodeErrorZ*)(orig & ~1); - LDKCResult_HolderCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HolderCommitmentTransactionDecodeErrorZ), "LDKCResult_HolderCommitmentTransactionDecodeErrorZ"); - *ret_conv = CResult_HolderCommitmentTransactionDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_LDKCOption_u16Z_ref_from_ptr(uint32_t ptr) { + LDKCOption_u16Z *obj = (LDKCOption_u16Z*)(ptr & ~1); + switch(obj->tag) { + case LDKCOption_u16Z_Some: { + return 0 /* LDKCOption_u16Z - Some */; (void) obj->some; + } + case LDKCOption_u16Z_None: { + return 0 /* LDKCOption_u16Z - None */; + } + default: abort(); + } } - -uint32_t __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_ok(uint32_t o) { - LDKBuiltCommitmentTransaction o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = BuiltCommitmentTransaction_clone(&o_conv); - LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ), "LDKCResult_BuiltCommitmentTransactionDecodeErrorZ"); - *ret_conv = CResult_BuiltCommitmentTransactionDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +static inline LDKCVec_CResult_NoneAPIErrorZZ CVec_CResult_NoneAPIErrorZZ_clone(const LDKCVec_CResult_NoneAPIErrorZZ *orig) { + LDKCVec_CResult_NoneAPIErrorZZ ret = { .data = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ) * orig->datalen, "LDKCVec_CResult_NoneAPIErrorZZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = CResult_NoneAPIErrorZ_clone(&orig->data[i]); + } + return ret; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ), "LDKCResult_BuiltCommitmentTransactionDecodeErrorZ"); - *ret_conv = CResult_BuiltCommitmentTransactionDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +static inline LDKCVec_APIErrorZ CVec_APIErrorZ_clone(const LDKCVec_APIErrorZ *orig) { + LDKCVec_APIErrorZ ret = { .data = MALLOC(sizeof(LDKAPIError) * orig->datalen, "LDKCVec_APIErrorZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = APIError_clone(&orig->data[i]); + } + return ret; } - -jboolean __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* o_conv = (LDKCResult_BuiltCommitmentTransactionDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_BuiltCommitmentTransactionDecodeErrorZ_is_ok(o_conv); - return ret_val; +static inline struct LDKThirtyTwoBytes CResult__u832APIErrorZ_get_ok(LDKCResult__u832APIErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ThirtyTwoBytes_clone(&*owner->contents.result); } - -void __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_BuiltCommitmentTransactionDecodeErrorZ _res_conv = *(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_BuiltCommitmentTransactionDecodeErrorZ_free(_res_conv); +int8_tArray __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_get_ok(uint32_t owner) { + LDKCResult__u832APIErrorZ* owner_conv = (LDKCResult__u832APIErrorZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, CResult__u832APIErrorZ_get_ok(owner_conv).data, 32); + return ret_arr; } -static inline uint64_t CResult_BuiltCommitmentTransactionDecodeErrorZ_clone_ptr(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ), "LDKCResult_BuiltCommitmentTransactionDecodeErrorZ"); - *ret_conv = CResult_BuiltCommitmentTransactionDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +static inline struct LDKAPIError CResult__u832APIErrorZ_get_err(LDKCResult__u832APIErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return APIError_clone(&*owner->contents.err); } -int64_t __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* arg_conv = (LDKCResult_BuiltCommitmentTransactionDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_BuiltCommitmentTransactionDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_get_err(uint32_t owner) { + LDKCResult__u832APIErrorZ* owner_conv = (LDKCResult__u832APIErrorZ*)(owner & ~1); + LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); + *ret_copy = CResult__u832APIErrorZ_get_err(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* orig_conv = (LDKCResult_BuiltCommitmentTransactionDecodeErrorZ*)(orig & ~1); - LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ), "LDKCResult_BuiltCommitmentTransactionDecodeErrorZ"); - *ret_conv = CResult_BuiltCommitmentTransactionDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_LDKPaymentSendFailure_ref_from_ptr(uint32_t ptr) { + LDKPaymentSendFailure *obj = (LDKPaymentSendFailure*)(ptr & ~1); + switch(obj->tag) { + case LDKPaymentSendFailure_ParameterError: { + uint64_t parameter_error_ref = ((uint64_t)&obj->parameter_error) | 1; + return 0 /* LDKPaymentSendFailure - ParameterError */; (void) parameter_error_ref; + } + case LDKPaymentSendFailure_PathParameterError: { + LDKCVec_CResult_NoneAPIErrorZZ path_parameter_error_var = obj->path_parameter_error; + uint32_tArray path_parameter_error_arr = NULL; + path_parameter_error_arr = init_uint32_tArray(path_parameter_error_var.datalen); + uint32_t *path_parameter_error_arr_ptr = (uint32_t*)(path_parameter_error_arr + 4); + for (size_t w = 0; w < path_parameter_error_var.datalen; w++) { + LDKCResult_NoneAPIErrorZ* path_parameter_error_conv_22_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); + *path_parameter_error_conv_22_conv = path_parameter_error_var.data[w]; + *path_parameter_error_conv_22_conv = CResult_NoneAPIErrorZ_clone(path_parameter_error_conv_22_conv); + path_parameter_error_arr_ptr[w] = (uint64_t)path_parameter_error_conv_22_conv; + } + + return 0 /* LDKPaymentSendFailure - PathParameterError */; (void) path_parameter_error_arr; + } + case LDKPaymentSendFailure_AllFailedRetrySafe: { + LDKCVec_APIErrorZ all_failed_retry_safe_var = obj->all_failed_retry_safe; + uint32_tArray all_failed_retry_safe_arr = NULL; + all_failed_retry_safe_arr = init_uint32_tArray(all_failed_retry_safe_var.datalen); + uint32_t *all_failed_retry_safe_arr_ptr = (uint32_t*)(all_failed_retry_safe_arr + 4); + for (size_t k = 0; k < all_failed_retry_safe_var.datalen; k++) { + uint64_t all_failed_retry_safe_conv_10_ref = ((uint64_t)&all_failed_retry_safe_var.data[k]) | 1; + all_failed_retry_safe_arr_ptr[k] = all_failed_retry_safe_conv_10_ref; + } + + return 0 /* LDKPaymentSendFailure - AllFailedRetrySafe */; (void) all_failed_retry_safe_arr; + } + case LDKPaymentSendFailure_PartialFailure: { + LDKCVec_CResult_NoneAPIErrorZZ results_var = obj->partial_failure.results; + uint32_tArray results_arr = NULL; + results_arr = init_uint32_tArray(results_var.datalen); + uint32_t *results_arr_ptr = (uint32_t*)(results_arr + 4); + for (size_t w = 0; w < results_var.datalen; w++) { + LDKCResult_NoneAPIErrorZ* results_conv_22_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); + *results_conv_22_conv = results_var.data[w]; + *results_conv_22_conv = CResult_NoneAPIErrorZ_clone(results_conv_22_conv); + results_arr_ptr[w] = (uint64_t)results_conv_22_conv; + } + + LDKRouteParameters failed_paths_retry_var = obj->partial_failure.failed_paths_retry; + uint64_t failed_paths_retry_ref = 0; + if ((uint64_t)failed_paths_retry_var.inner > 4096) { + CHECK((((uint64_t)failed_paths_retry_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&failed_paths_retry_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(failed_paths_retry_var); + failed_paths_retry_ref = (uint64_t)failed_paths_retry_var.inner & ~1; + } + int8_tArray payment_id_arr = init_int8_tArray(32); + memcpy(payment_id_arr->elems, obj->partial_failure.payment_id.data, 32); + return 0 /* LDKPaymentSendFailure - PartialFailure */; (void) results_arr; (void) failed_paths_retry_ref; (void) payment_id_arr; + } + default: abort(); + } } - -uint32_t __attribute__((visibility("default"))) TS_CResult_TrustedClosingTransactionNoneZ_ok(uint32_t o) { - LDKTrustedClosingTransaction o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - // Warning: we need a move here but no clone is available for LDKTrustedClosingTransaction - LDKCResult_TrustedClosingTransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TrustedClosingTransactionNoneZ), "LDKCResult_TrustedClosingTransactionNoneZ"); - *ret_conv = CResult_TrustedClosingTransactionNoneZ_ok(o_conv); - return (uint64_t)ret_conv; +static inline struct LDKThirtyTwoBytes CResult_PaymentIdPaymentSendFailureZ_get_ok(LDKCResult_PaymentIdPaymentSendFailureZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ThirtyTwoBytes_clone(&*owner->contents.result); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_TrustedClosingTransactionNoneZ_err() { - LDKCResult_TrustedClosingTransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TrustedClosingTransactionNoneZ), "LDKCResult_TrustedClosingTransactionNoneZ"); - *ret_conv = CResult_TrustedClosingTransactionNoneZ_err(); - return (uint64_t)ret_conv; +int8_tArray __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_get_ok(uint32_t owner) { + LDKCResult_PaymentIdPaymentSendFailureZ* owner_conv = (LDKCResult_PaymentIdPaymentSendFailureZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, CResult_PaymentIdPaymentSendFailureZ_get_ok(owner_conv).data, 32); + return ret_arr; } -jboolean __attribute__((visibility("default"))) TS_CResult_TrustedClosingTransactionNoneZ_is_ok(uint32_t o) { - LDKCResult_TrustedClosingTransactionNoneZ* o_conv = (LDKCResult_TrustedClosingTransactionNoneZ*)(o & ~1); - jboolean ret_val = CResult_TrustedClosingTransactionNoneZ_is_ok(o_conv); - return ret_val; +static inline struct LDKPaymentSendFailure CResult_PaymentIdPaymentSendFailureZ_get_err(LDKCResult_PaymentIdPaymentSendFailureZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return PaymentSendFailure_clone(&*owner->contents.err); } - -void __attribute__((visibility("default"))) TS_CResult_TrustedClosingTransactionNoneZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_TrustedClosingTransactionNoneZ _res_conv = *(LDKCResult_TrustedClosingTransactionNoneZ*)(_res_ptr); - FREE((void*)_res); - CResult_TrustedClosingTransactionNoneZ_free(_res_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_get_err(uint32_t owner) { + LDKCResult_PaymentIdPaymentSendFailureZ* owner_conv = (LDKCResult_PaymentIdPaymentSendFailureZ*)(owner & ~1); + LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); + *ret_copy = CResult_PaymentIdPaymentSendFailureZ_get_err(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_ok(uint32_t o) { - LDKCommitmentTransaction o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = CommitmentTransaction_clone(&o_conv); - LDKCResult_CommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentTransactionDecodeErrorZ), "LDKCResult_CommitmentTransactionDecodeErrorZ"); - *ret_conv = CResult_CommitmentTransactionDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +static inline void CResult_NonePaymentSendFailureZ_get_ok(LDKCResult_NonePaymentSendFailureZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return *owner->contents.result; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_CommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentTransactionDecodeErrorZ), "LDKCResult_CommitmentTransactionDecodeErrorZ"); - *ret_conv = CResult_CommitmentTransactionDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_get_ok(uint32_t owner) { + LDKCResult_NonePaymentSendFailureZ* owner_conv = (LDKCResult_NonePaymentSendFailureZ*)(owner & ~1); + CResult_NonePaymentSendFailureZ_get_ok(owner_conv); } -jboolean __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_CommitmentTransactionDecodeErrorZ* o_conv = (LDKCResult_CommitmentTransactionDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_CommitmentTransactionDecodeErrorZ_is_ok(o_conv); - return ret_val; +static inline struct LDKPaymentSendFailure CResult_NonePaymentSendFailureZ_get_err(LDKCResult_NonePaymentSendFailureZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return PaymentSendFailure_clone(&*owner->contents.err); } - -void __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_CommitmentTransactionDecodeErrorZ _res_conv = *(LDKCResult_CommitmentTransactionDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_CommitmentTransactionDecodeErrorZ_free(_res_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_get_err(uint32_t owner) { + LDKCResult_NonePaymentSendFailureZ* owner_conv = (LDKCResult_NonePaymentSendFailureZ*)(owner & ~1); + LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); + *ret_copy = CResult_NonePaymentSendFailureZ_get_err(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -static inline uint64_t CResult_CommitmentTransactionDecodeErrorZ_clone_ptr(LDKCResult_CommitmentTransactionDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_CommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentTransactionDecodeErrorZ), "LDKCResult_CommitmentTransactionDecodeErrorZ"); - *ret_conv = CResult_CommitmentTransactionDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +static inline struct LDKThirtyTwoBytes C2Tuple_PaymentHashPaymentIdZ_get_a(LDKC2Tuple_PaymentHashPaymentIdZ *NONNULL_PTR owner){ + return ThirtyTwoBytes_clone(&owner->a); } -int64_t __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_CommitmentTransactionDecodeErrorZ* arg_conv = (LDKCResult_CommitmentTransactionDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_CommitmentTransactionDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentIdZ_get_a(uint32_t owner) { + LDKC2Tuple_PaymentHashPaymentIdZ* owner_conv = (LDKC2Tuple_PaymentHashPaymentIdZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, C2Tuple_PaymentHashPaymentIdZ_get_a(owner_conv).data, 32); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_CommitmentTransactionDecodeErrorZ* orig_conv = (LDKCResult_CommitmentTransactionDecodeErrorZ*)(orig & ~1); - LDKCResult_CommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentTransactionDecodeErrorZ), "LDKCResult_CommitmentTransactionDecodeErrorZ"); - *ret_conv = CResult_CommitmentTransactionDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +static inline struct LDKThirtyTwoBytes C2Tuple_PaymentHashPaymentIdZ_get_b(LDKC2Tuple_PaymentHashPaymentIdZ *NONNULL_PTR owner){ + return ThirtyTwoBytes_clone(&owner->b); +} +int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentIdZ_get_b(uint32_t owner) { + LDKC2Tuple_PaymentHashPaymentIdZ* owner_conv = (LDKC2Tuple_PaymentHashPaymentIdZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, C2Tuple_PaymentHashPaymentIdZ_get_b(owner_conv).data, 32); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CResult_TrustedCommitmentTransactionNoneZ_ok(uint32_t o) { - LDKTrustedCommitmentTransaction o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - // Warning: we need a move here but no clone is available for LDKTrustedCommitmentTransaction - LDKCResult_TrustedCommitmentTransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TrustedCommitmentTransactionNoneZ), "LDKCResult_TrustedCommitmentTransactionNoneZ"); - *ret_conv = CResult_TrustedCommitmentTransactionNoneZ_ok(o_conv); - return (uint64_t)ret_conv; +static inline struct LDKC2Tuple_PaymentHashPaymentIdZ CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_get_ok(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return C2Tuple_PaymentHashPaymentIdZ_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_get_ok(uint32_t owner) { + LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* owner_conv = (LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ*)(owner & ~1); + LDKC2Tuple_PaymentHashPaymentIdZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentIdZ), "LDKC2Tuple_PaymentHashPaymentIdZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_get_ok(owner_conv); + return ((uint64_t)ret_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_TrustedCommitmentTransactionNoneZ_err() { - LDKCResult_TrustedCommitmentTransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TrustedCommitmentTransactionNoneZ), "LDKCResult_TrustedCommitmentTransactionNoneZ"); - *ret_conv = CResult_TrustedCommitmentTransactionNoneZ_err(); - return (uint64_t)ret_conv; +static inline struct LDKPaymentSendFailure CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_get_err(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return PaymentSendFailure_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_get_err(uint32_t owner) { + LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* owner_conv = (LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ*)(owner & ~1); + LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); + *ret_copy = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_get_err(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_CResult_TrustedCommitmentTransactionNoneZ_is_ok(uint32_t o) { - LDKCResult_TrustedCommitmentTransactionNoneZ* o_conv = (LDKCResult_TrustedCommitmentTransactionNoneZ*)(o & ~1); - jboolean ret_val = CResult_TrustedCommitmentTransactionNoneZ_is_ok(o_conv); - return ret_val; +static inline struct LDKThirtyTwoBytes C2Tuple_PaymentHashPaymentSecretZ_get_a(LDKC2Tuple_PaymentHashPaymentSecretZ *NONNULL_PTR owner){ + return ThirtyTwoBytes_clone(&owner->a); +} +int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentSecretZ_get_a(uint32_t owner) { + LDKC2Tuple_PaymentHashPaymentSecretZ* owner_conv = (LDKC2Tuple_PaymentHashPaymentSecretZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, C2Tuple_PaymentHashPaymentSecretZ_get_a(owner_conv).data, 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_CResult_TrustedCommitmentTransactionNoneZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_TrustedCommitmentTransactionNoneZ _res_conv = *(LDKCResult_TrustedCommitmentTransactionNoneZ*)(_res_ptr); - FREE((void*)_res); - CResult_TrustedCommitmentTransactionNoneZ_free(_res_conv); +static inline struct LDKThirtyTwoBytes C2Tuple_PaymentHashPaymentSecretZ_get_b(LDKC2Tuple_PaymentHashPaymentSecretZ *NONNULL_PTR owner){ + return ThirtyTwoBytes_clone(&owner->b); +} +int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentSecretZ_get_b(uint32_t owner) { + LDKC2Tuple_PaymentHashPaymentSecretZ* owner_conv = (LDKC2Tuple_PaymentHashPaymentSecretZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, C2Tuple_PaymentHashPaymentSecretZ_get_b(owner_conv).data, 32); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_ok(ptrArray o) { - LDKCVec_SignatureZ o_constr; - o_constr.datalen = *((uint32_t*)o); - if (o_constr.datalen > 0) - o_constr.data = MALLOC(o_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); - else - o_constr.data = NULL; - int8_tArray* o_vals = (int8_tArray*)(o + 4); - for (size_t m = 0; m < o_constr.datalen; m++) { - int8_tArray o_conv_12 = o_vals[m]; - LDKSignature o_conv_12_ref; - CHECK(*((uint32_t*)o_conv_12) == 64); - memcpy(o_conv_12_ref.compact_form, (uint8_t*)(o_conv_12 + 4), 64); - o_constr.data[m] = o_conv_12_ref; - } - LDKCResult_CVec_SignatureZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_SignatureZNoneZ), "LDKCResult_CVec_SignatureZNoneZ"); - *ret_conv = CResult_CVec_SignatureZNoneZ_ok(o_constr); - return (uint64_t)ret_conv; +static inline struct LDKC2Tuple_PaymentHashPaymentSecretZ CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_get_ok(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return C2Tuple_PaymentHashPaymentSecretZ_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_get_ok(uint32_t owner) { + LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* owner_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ*)(owner & ~1); + LDKC2Tuple_PaymentHashPaymentSecretZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentSecretZ), "LDKC2Tuple_PaymentHashPaymentSecretZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_get_ok(owner_conv); + return ((uint64_t)ret_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_err() { - LDKCResult_CVec_SignatureZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_SignatureZNoneZ), "LDKCResult_CVec_SignatureZNoneZ"); - *ret_conv = CResult_CVec_SignatureZNoneZ_err(); - return (uint64_t)ret_conv; +static inline void CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_get_err(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; +} +void __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_get_err(uint32_t owner) { + LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* owner_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ*)(owner & ~1); + CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_get_err(owner_conv); } -jboolean __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_is_ok(uint32_t o) { - LDKCResult_CVec_SignatureZNoneZ* o_conv = (LDKCResult_CVec_SignatureZNoneZ*)(o & ~1); - jboolean ret_val = CResult_CVec_SignatureZNoneZ_is_ok(o_conv); - return ret_val; +static inline struct LDKC2Tuple_PaymentHashPaymentSecretZ CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_get_ok(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return C2Tuple_PaymentHashPaymentSecretZ_clone(&*owner->contents.result); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_get_ok(uint32_t owner) { + LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* owner_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ*)(owner & ~1); + LDKC2Tuple_PaymentHashPaymentSecretZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentSecretZ), "LDKC2Tuple_PaymentHashPaymentSecretZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_get_ok(owner_conv); + return ((uint64_t)ret_conv); } -void __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_CVec_SignatureZNoneZ _res_conv = *(LDKCResult_CVec_SignatureZNoneZ*)(_res_ptr); - FREE((void*)_res); - CResult_CVec_SignatureZNoneZ_free(_res_conv); +static inline struct LDKAPIError CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_get_err(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return APIError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_get_err(uint32_t owner) { + LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* owner_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ*)(owner & ~1); + LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); + *ret_copy = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_get_err(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -static inline uint64_t CResult_CVec_SignatureZNoneZ_clone_ptr(LDKCResult_CVec_SignatureZNoneZ *NONNULL_PTR arg) { - LDKCResult_CVec_SignatureZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_SignatureZNoneZ), "LDKCResult_CVec_SignatureZNoneZ"); - *ret_conv = CResult_CVec_SignatureZNoneZ_clone(arg); - return (uint64_t)ret_conv; +static inline struct LDKThirtyTwoBytes CResult_PaymentSecretNoneZ_get_ok(LDKCResult_PaymentSecretNoneZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ThirtyTwoBytes_clone(&*owner->contents.result); } -int64_t __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_clone_ptr(uint32_t arg) { - LDKCResult_CVec_SignatureZNoneZ* arg_conv = (LDKCResult_CVec_SignatureZNoneZ*)(arg & ~1); - int64_t ret_val = CResult_CVec_SignatureZNoneZ_clone_ptr(arg_conv); - return ret_val; +int8_tArray __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_get_ok(uint32_t owner) { + LDKCResult_PaymentSecretNoneZ* owner_conv = (LDKCResult_PaymentSecretNoneZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, CResult_PaymentSecretNoneZ_get_ok(owner_conv).data, 32); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_clone(uint32_t orig) { - LDKCResult_CVec_SignatureZNoneZ* orig_conv = (LDKCResult_CVec_SignatureZNoneZ*)(orig & ~1); - LDKCResult_CVec_SignatureZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_SignatureZNoneZ), "LDKCResult_CVec_SignatureZNoneZ"); - *ret_conv = CResult_CVec_SignatureZNoneZ_clone(orig_conv); - return (uint64_t)ret_conv; +static inline void CResult_PaymentSecretNoneZ_get_err(LDKCResult_PaymentSecretNoneZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return *owner->contents.err; +} +void __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_get_err(uint32_t owner) { + LDKCResult_PaymentSecretNoneZ* owner_conv = (LDKCResult_PaymentSecretNoneZ*)(owner & ~1); + CResult_PaymentSecretNoneZ_get_err(owner_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_ok(uint32_t o) { - LDKShutdownScript o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ShutdownScript_clone(&o_conv); - LDKCResult_ShutdownScriptDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptDecodeErrorZ), "LDKCResult_ShutdownScriptDecodeErrorZ"); - *ret_conv = CResult_ShutdownScriptDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +static inline struct LDKThirtyTwoBytes CResult_PaymentSecretAPIErrorZ_get_ok(LDKCResult_PaymentSecretAPIErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ThirtyTwoBytes_clone(&*owner->contents.result); +} +int8_tArray __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_get_ok(uint32_t owner) { + LDKCResult_PaymentSecretAPIErrorZ* owner_conv = (LDKCResult_PaymentSecretAPIErrorZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, CResult_PaymentSecretAPIErrorZ_get_ok(owner_conv).data, 32); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_ShutdownScriptDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptDecodeErrorZ), "LDKCResult_ShutdownScriptDecodeErrorZ"); - *ret_conv = CResult_ShutdownScriptDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +static inline struct LDKAPIError CResult_PaymentSecretAPIErrorZ_get_err(LDKCResult_PaymentSecretAPIErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return APIError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_get_err(uint32_t owner) { + LDKCResult_PaymentSecretAPIErrorZ* owner_conv = (LDKCResult_PaymentSecretAPIErrorZ*)(owner & ~1); + LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); + *ret_copy = CResult_PaymentSecretAPIErrorZ_get_err(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ShutdownScriptDecodeErrorZ* o_conv = (LDKCResult_ShutdownScriptDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ShutdownScriptDecodeErrorZ_is_ok(o_conv); - return ret_val; +static inline struct LDKThirtyTwoBytes CResult_PaymentPreimageAPIErrorZ_get_ok(LDKCResult_PaymentPreimageAPIErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return ThirtyTwoBytes_clone(&*owner->contents.result); +} +int8_tArray __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_get_ok(uint32_t owner) { + LDKCResult_PaymentPreimageAPIErrorZ* owner_conv = (LDKCResult_PaymentPreimageAPIErrorZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, CResult_PaymentPreimageAPIErrorZ_get_ok(owner_conv).data, 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_ShutdownScriptDecodeErrorZ _res_conv = *(LDKCResult_ShutdownScriptDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_ShutdownScriptDecodeErrorZ_free(_res_conv); +static inline struct LDKAPIError CResult_PaymentPreimageAPIErrorZ_get_err(LDKCResult_PaymentPreimageAPIErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return APIError_clone(&*owner->contents.err); +} +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_get_err(uint32_t owner) { + LDKCResult_PaymentPreimageAPIErrorZ* owner_conv = (LDKCResult_PaymentPreimageAPIErrorZ*)(owner & ~1); + LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); + *ret_copy = CResult_PaymentPreimageAPIErrorZ_get_err(owner_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -static inline uint64_t CResult_ShutdownScriptDecodeErrorZ_clone_ptr(LDKCResult_ShutdownScriptDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ShutdownScriptDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptDecodeErrorZ), "LDKCResult_ShutdownScriptDecodeErrorZ"); - *ret_conv = CResult_ShutdownScriptDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +static inline LDKCVec_ChannelMonitorZ CVec_ChannelMonitorZ_clone(const LDKCVec_ChannelMonitorZ *orig) { + LDKCVec_ChannelMonitorZ ret = { .data = MALLOC(sizeof(LDKChannelMonitor) * orig->datalen, "LDKCVec_ChannelMonitorZ clone bytes"), .datalen = orig->datalen }; + for (size_t i = 0; i < ret.datalen; i++) { + ret.data[i] = ChannelMonitor_clone(&orig->data[i]); + } + return ret; } -int64_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ShutdownScriptDecodeErrorZ* arg_conv = (LDKCResult_ShutdownScriptDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ShutdownScriptDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +typedef struct LDKWatch_JCalls { + atomic_size_t refcnt; + uint32_t watch_channel_meth; + uint32_t update_channel_meth; + uint32_t release_pending_monitor_events_meth; +} LDKWatch_JCalls; +static void LDKWatch_JCalls_free(void* this_arg) { + LDKWatch_JCalls *j_calls = (LDKWatch_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->watch_channel_meth); + js_free_function_ptr(j_calls->update_channel_meth); + js_free_function_ptr(j_calls->release_pending_monitor_events_meth); + FREE(j_calls); + } +} +LDKCResult_NoneChannelMonitorUpdateErrZ watch_channel_LDKWatch_jcall(const void* this_arg, LDKOutPoint funding_txo, LDKChannelMonitor monitor) { + LDKWatch_JCalls *j_calls = (LDKWatch_JCalls*) this_arg; + LDKOutPoint funding_txo_var = funding_txo; + uint64_t funding_txo_ref = 0; + CHECK((((uint64_t)funding_txo_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&funding_txo_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_var); + funding_txo_ref = (uint64_t)funding_txo_var.inner; + if (funding_txo_var.is_owned) { + funding_txo_ref |= 1; + } + LDKChannelMonitor monitor_var = monitor; + uint64_t monitor_ref = 0; + CHECK((((uint64_t)monitor_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&monitor_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(monitor_var); + monitor_ref = (uint64_t)monitor_var.inner; + if (monitor_var.is_owned) { + monitor_ref |= 1; + } + uint32_t ret = js_invoke_function_2(j_calls->watch_channel_meth, (uint32_t)funding_txo_ref, (uint32_t)monitor_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_NoneChannelMonitorUpdateErrZ ret_conv = *(LDKCResult_NoneChannelMonitorUpdateErrZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; +} +LDKCResult_NoneChannelMonitorUpdateErrZ update_channel_LDKWatch_jcall(const void* this_arg, LDKOutPoint funding_txo, LDKChannelMonitorUpdate update) { + LDKWatch_JCalls *j_calls = (LDKWatch_JCalls*) this_arg; + LDKOutPoint funding_txo_var = funding_txo; + uint64_t funding_txo_ref = 0; + CHECK((((uint64_t)funding_txo_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&funding_txo_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_var); + funding_txo_ref = (uint64_t)funding_txo_var.inner; + if (funding_txo_var.is_owned) { + funding_txo_ref |= 1; + } + LDKChannelMonitorUpdate update_var = update; + uint64_t update_ref = 0; + CHECK((((uint64_t)update_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&update_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_var); + update_ref = (uint64_t)update_var.inner; + if (update_var.is_owned) { + update_ref |= 1; + } + uint32_t ret = js_invoke_function_2(j_calls->update_channel_meth, (uint32_t)funding_txo_ref, (uint32_t)update_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_NoneChannelMonitorUpdateErrZ ret_conv = *(LDKCResult_NoneChannelMonitorUpdateErrZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; +} +LDKCVec_MonitorEventZ release_pending_monitor_events_LDKWatch_jcall(const void* this_arg) { + LDKWatch_JCalls *j_calls = (LDKWatch_JCalls*) this_arg; + uint32_tArray ret = (uint32_tArray)js_invoke_function_0(j_calls->release_pending_monitor_events_meth); + LDKCVec_MonitorEventZ ret_constr; + ret_constr.datalen = ret->arr_len; + if (ret_constr.datalen > 0) + ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKMonitorEvent), "LDKCVec_MonitorEventZ Elements"); + else + ret_constr.data = NULL; + uint32_t* ret_vals = ret->elems; + for (size_t o = 0; o < ret_constr.datalen; o++) { + uint32_t ret_conv_14 = ret_vals[o]; + void* ret_conv_14_ptr = (void*)(((uint64_t)ret_conv_14) & ~1); + CHECK_ACCESS(ret_conv_14_ptr); + LDKMonitorEvent ret_conv_14_conv = *(LDKMonitorEvent*)(ret_conv_14_ptr); + FREE((void*)ret_conv_14); + ret_constr.data[o] = ret_conv_14_conv; + } + return ret_constr; +} +static void LDKWatch_JCalls_cloned(LDKWatch* new_obj) { + LDKWatch_JCalls *j_calls = (LDKWatch_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); +} +static inline LDKWatch LDKWatch_init (/*TODO: JS Object Reference */void* o) { + LDKWatch_JCalls *calls = MALLOC(sizeof(LDKWatch_JCalls), "LDKWatch_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o + + LDKWatch ret = { + .this_arg = (void*) calls, + .watch_channel = watch_channel_LDKWatch_jcall, + .update_channel = update_channel_LDKWatch_jcall, + .release_pending_monitor_events = release_pending_monitor_events_LDKWatch_jcall, + .free = LDKWatch_JCalls_free, + }; + return ret; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ShutdownScriptDecodeErrorZ* orig_conv = (LDKCResult_ShutdownScriptDecodeErrorZ*)(orig & ~1); - LDKCResult_ShutdownScriptDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptDecodeErrorZ), "LDKCResult_ShutdownScriptDecodeErrorZ"); - *ret_conv = CResult_ShutdownScriptDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +long __attribute__((visibility("default"))) TS_LDKWatch_new(/*TODO: JS Object Reference */void* o) { + LDKWatch *res_ptr = MALLOC(sizeof(LDKWatch), "LDKWatch"); + *res_ptr = LDKWatch_init(o); + return (long)res_ptr; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_ok(uint32_t o) { - LDKShutdownScript o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ShutdownScript_clone(&o_conv); - LDKCResult_ShutdownScriptInvalidShutdownScriptZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptInvalidShutdownScriptZ), "LDKCResult_ShutdownScriptInvalidShutdownScriptZ"); - *ret_conv = CResult_ShutdownScriptInvalidShutdownScriptZ_ok(o_conv); +uint32_t __attribute__((visibility("default"))) TS_Watch_watch_channel(uint32_t this_arg, uint32_t funding_txo, uint32_t monitor) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKWatch* this_arg_conv = (LDKWatch*)this_arg_ptr; + LDKOutPoint funding_txo_conv; + funding_txo_conv.inner = (void*)(funding_txo & (~1)); + funding_txo_conv.is_owned = (funding_txo & 1) || (funding_txo == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_conv); + funding_txo_conv = OutPoint_clone(&funding_txo_conv); + LDKChannelMonitor monitor_conv; + monitor_conv.inner = (void*)(monitor & (~1)); + monitor_conv.is_owned = (monitor & 1) || (monitor == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(monitor_conv); + monitor_conv = ChannelMonitor_clone(&monitor_conv); + LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); + *ret_conv = (this_arg_conv->watch_channel)(this_arg_conv->this_arg, funding_txo_conv, monitor_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_err(uint32_t e) { - LDKInvalidShutdownScript e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = InvalidShutdownScript_clone(&e_conv); - LDKCResult_ShutdownScriptInvalidShutdownScriptZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptInvalidShutdownScriptZ), "LDKCResult_ShutdownScriptInvalidShutdownScriptZ"); - *ret_conv = CResult_ShutdownScriptInvalidShutdownScriptZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_Watch_update_channel(uint32_t this_arg, uint32_t funding_txo, uint32_t update) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKWatch* this_arg_conv = (LDKWatch*)this_arg_ptr; + LDKOutPoint funding_txo_conv; + funding_txo_conv.inner = (void*)(funding_txo & (~1)); + funding_txo_conv.is_owned = (funding_txo & 1) || (funding_txo == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_conv); + funding_txo_conv = OutPoint_clone(&funding_txo_conv); + LDKChannelMonitorUpdate update_conv; + update_conv.inner = (void*)(update & (~1)); + update_conv.is_owned = (update & 1) || (update == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_conv); + update_conv = ChannelMonitorUpdate_clone(&update_conv); + LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); + *ret_conv = (this_arg_conv->update_channel)(this_arg_conv->this_arg, funding_txo_conv, update_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_is_ok(uint32_t o) { - LDKCResult_ShutdownScriptInvalidShutdownScriptZ* o_conv = (LDKCResult_ShutdownScriptInvalidShutdownScriptZ*)(o & ~1); - jboolean ret_val = CResult_ShutdownScriptInvalidShutdownScriptZ_is_ok(o_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_ShutdownScriptInvalidShutdownScriptZ _res_conv = *(LDKCResult_ShutdownScriptInvalidShutdownScriptZ*)(_res_ptr); - FREE((void*)_res); - CResult_ShutdownScriptInvalidShutdownScriptZ_free(_res_conv); +uint32_tArray __attribute__((visibility("default"))) TS_Watch_release_pending_monitor_events(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKWatch* this_arg_conv = (LDKWatch*)this_arg_ptr; + LDKCVec_MonitorEventZ ret_var = (this_arg_conv->release_pending_monitor_events)(this_arg_conv->this_arg); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t o = 0; o < ret_var.datalen; o++) { + LDKMonitorEvent *ret_conv_14_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); + *ret_conv_14_copy = ret_var.data[o]; + uint64_t ret_conv_14_ref = (uint64_t)ret_conv_14_copy; + ret_arr_ptr[o] = ret_conv_14_ref; + } + + FREE(ret_var.data); + return ret_arr; } -static inline uint64_t CResult_ShutdownScriptInvalidShutdownScriptZ_clone_ptr(LDKCResult_ShutdownScriptInvalidShutdownScriptZ *NONNULL_PTR arg) { - LDKCResult_ShutdownScriptInvalidShutdownScriptZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptInvalidShutdownScriptZ), "LDKCResult_ShutdownScriptInvalidShutdownScriptZ"); - *ret_conv = CResult_ShutdownScriptInvalidShutdownScriptZ_clone(arg); - return (uint64_t)ret_conv; +typedef struct LDKBroadcasterInterface_JCalls { + atomic_size_t refcnt; + uint32_t broadcast_transaction_meth; +} LDKBroadcasterInterface_JCalls; +static void LDKBroadcasterInterface_JCalls_free(void* this_arg) { + LDKBroadcasterInterface_JCalls *j_calls = (LDKBroadcasterInterface_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->broadcast_transaction_meth); + FREE(j_calls); + } } -int64_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_clone_ptr(uint32_t arg) { - LDKCResult_ShutdownScriptInvalidShutdownScriptZ* arg_conv = (LDKCResult_ShutdownScriptInvalidShutdownScriptZ*)(arg & ~1); - int64_t ret_val = CResult_ShutdownScriptInvalidShutdownScriptZ_clone_ptr(arg_conv); - return ret_val; +void broadcast_transaction_LDKBroadcasterInterface_jcall(const void* this_arg, LDKTransaction tx) { + LDKBroadcasterInterface_JCalls *j_calls = (LDKBroadcasterInterface_JCalls*) this_arg; + LDKTransaction tx_var = tx; + int8_tArray tx_arr = init_int8_tArray(tx_var.datalen); + memcpy(tx_arr->elems, tx_var.data, tx_var.datalen); + Transaction_free(tx_var); + js_invoke_function_1(j_calls->broadcast_transaction_meth, (uint32_t)tx_arr); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_clone(uint32_t orig) { - LDKCResult_ShutdownScriptInvalidShutdownScriptZ* orig_conv = (LDKCResult_ShutdownScriptInvalidShutdownScriptZ*)(orig & ~1); - LDKCResult_ShutdownScriptInvalidShutdownScriptZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptInvalidShutdownScriptZ), "LDKCResult_ShutdownScriptInvalidShutdownScriptZ"); - *ret_conv = CResult_ShutdownScriptInvalidShutdownScriptZ_clone(orig_conv); - return (uint64_t)ret_conv; +static void LDKBroadcasterInterface_JCalls_cloned(LDKBroadcasterInterface* new_obj) { + LDKBroadcasterInterface_JCalls *j_calls = (LDKBroadcasterInterface_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKBroadcasterInterface LDKBroadcasterInterface_init (/*TODO: JS Object Reference */void* o) { + LDKBroadcasterInterface_JCalls *calls = MALLOC(sizeof(LDKBroadcasterInterface_JCalls), "LDKBroadcasterInterface_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneErrorZ_ok() { - LDKCResult_NoneErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneErrorZ), "LDKCResult_NoneErrorZ"); - *ret_conv = CResult_NoneErrorZ_ok(); - return (uint64_t)ret_conv; + LDKBroadcasterInterface ret = { + .this_arg = (void*) calls, + .broadcast_transaction = broadcast_transaction_LDKBroadcasterInterface_jcall, + .free = LDKBroadcasterInterface_JCalls_free, + }; + return ret; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneErrorZ_err(uint32_t e) { - LDKIOError e_conv = LDKIOError_from_js(e); - LDKCResult_NoneErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneErrorZ), "LDKCResult_NoneErrorZ"); - *ret_conv = CResult_NoneErrorZ_err(e_conv); - return (uint64_t)ret_conv; +long __attribute__((visibility("default"))) TS_LDKBroadcasterInterface_new(/*TODO: JS Object Reference */void* o) { + LDKBroadcasterInterface *res_ptr = MALLOC(sizeof(LDKBroadcasterInterface), "LDKBroadcasterInterface"); + *res_ptr = LDKBroadcasterInterface_init(o); + return (long)res_ptr; } - -jboolean __attribute__((visibility("default"))) TS_CResult_NoneErrorZ_is_ok(uint32_t o) { - LDKCResult_NoneErrorZ* o_conv = (LDKCResult_NoneErrorZ*)(o & ~1); - jboolean ret_val = CResult_NoneErrorZ_is_ok(o_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_BroadcasterInterface_broadcast_transaction(uint32_t this_arg, int8_tArray tx) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKBroadcasterInterface* this_arg_conv = (LDKBroadcasterInterface*)this_arg_ptr; + LDKTransaction tx_ref; + tx_ref.datalen = tx->arr_len; + tx_ref.data = MALLOC(tx_ref.datalen, "LDKTransaction Bytes"); + memcpy(tx_ref.data, tx->elems, tx_ref.datalen); + tx_ref.data_is_owned = true; + (this_arg_conv->broadcast_transaction)(this_arg_conv->this_arg, tx_ref); } -void __attribute__((visibility("default"))) TS_CResult_NoneErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_NoneErrorZ _res_conv = *(LDKCResult_NoneErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_NoneErrorZ_free(_res_conv); +typedef struct LDKKeysInterface_JCalls { + atomic_size_t refcnt; + uint32_t get_node_secret_meth; + uint32_t get_destination_script_meth; + uint32_t get_shutdown_scriptpubkey_meth; + uint32_t get_channel_signer_meth; + uint32_t get_secure_random_bytes_meth; + uint32_t read_chan_signer_meth; + uint32_t sign_invoice_meth; + uint32_t get_inbound_payment_key_material_meth; +} LDKKeysInterface_JCalls; +static void LDKKeysInterface_JCalls_free(void* this_arg) { + LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->get_node_secret_meth); + js_free_function_ptr(j_calls->get_destination_script_meth); + js_free_function_ptr(j_calls->get_shutdown_scriptpubkey_meth); + js_free_function_ptr(j_calls->get_channel_signer_meth); + js_free_function_ptr(j_calls->get_secure_random_bytes_meth); + js_free_function_ptr(j_calls->read_chan_signer_meth); + js_free_function_ptr(j_calls->sign_invoice_meth); + js_free_function_ptr(j_calls->get_inbound_payment_key_material_meth); + FREE(j_calls); + } } - -static inline uint64_t CResult_NoneErrorZ_clone_ptr(LDKCResult_NoneErrorZ *NONNULL_PTR arg) { - LDKCResult_NoneErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneErrorZ), "LDKCResult_NoneErrorZ"); - *ret_conv = CResult_NoneErrorZ_clone(arg); - return (uint64_t)ret_conv; +LDKSecretKey get_node_secret_LDKKeysInterface_jcall(const void* this_arg) { + LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; + int8_tArray ret = (int8_tArray)js_invoke_function_0(j_calls->get_node_secret_meth); + LDKSecretKey ret_ref; + CHECK(ret->arr_len == 32); + memcpy(ret_ref.bytes, ret->elems, 32); + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_CResult_NoneErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_NoneErrorZ* arg_conv = (LDKCResult_NoneErrorZ*)(arg & ~1); - int64_t ret_val = CResult_NoneErrorZ_clone_ptr(arg_conv); - return ret_val; +LDKCVec_u8Z get_destination_script_LDKKeysInterface_jcall(const void* this_arg) { + LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; + int8_tArray ret = (int8_tArray)js_invoke_function_0(j_calls->get_destination_script_meth); + LDKCVec_u8Z ret_ref; + ret_ref.datalen = ret->arr_len; + ret_ref.data = MALLOC(ret_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(ret_ref.data, ret->elems, ret_ref.datalen); + return ret_ref; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneErrorZ_clone(uint32_t orig) { - LDKCResult_NoneErrorZ* orig_conv = (LDKCResult_NoneErrorZ*)(orig & ~1); - LDKCResult_NoneErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneErrorZ), "LDKCResult_NoneErrorZ"); - *ret_conv = CResult_NoneErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +LDKShutdownScript get_shutdown_scriptpubkey_LDKKeysInterface_jcall(const void* this_arg) { + LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; + uint32_t ret = js_invoke_function_0(j_calls->get_shutdown_scriptpubkey_meth); + LDKShutdownScript ret_conv; + ret_conv.inner = (void*)(ret & (~1)); + ret_conv.is_owned = (ret & 1) || (ret == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv); + return ret_conv; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_ok(uint32_t o) { - LDKRouteHop o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = RouteHop_clone(&o_conv); - LDKCResult_RouteHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHopDecodeErrorZ), "LDKCResult_RouteHopDecodeErrorZ"); - *ret_conv = CResult_RouteHopDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +LDKSign get_channel_signer_LDKKeysInterface_jcall(const void* this_arg, bool inbound, uint64_t channel_value_satoshis) { + LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; + uint32_t ret = js_invoke_function_2(j_calls->get_channel_signer_meth, (uint32_t)inbound, (uint32_t)channel_value_satoshis); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKSign ret_conv = *(LDKSign*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_RouteHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHopDecodeErrorZ), "LDKCResult_RouteHopDecodeErrorZ"); - *ret_conv = CResult_RouteHopDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +LDKThirtyTwoBytes get_secure_random_bytes_LDKKeysInterface_jcall(const void* this_arg) { + LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; + int8_tArray ret = (int8_tArray)js_invoke_function_0(j_calls->get_secure_random_bytes_meth); + LDKThirtyTwoBytes ret_ref; + CHECK(ret->arr_len == 32); + memcpy(ret_ref.data, ret->elems, 32); + return ret_ref; } - -jboolean __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_RouteHopDecodeErrorZ* o_conv = (LDKCResult_RouteHopDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_RouteHopDecodeErrorZ_is_ok(o_conv); - return ret_val; +LDKCResult_SignDecodeErrorZ read_chan_signer_LDKKeysInterface_jcall(const void* this_arg, LDKu8slice reader) { + LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; + LDKu8slice reader_var = reader; + int8_tArray reader_arr = init_int8_tArray(reader_var.datalen); + memcpy(reader_arr->elems, reader_var.data, reader_var.datalen); + uint32_t ret = js_invoke_function_1(j_calls->read_chan_signer_meth, (uint32_t)reader_arr); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_SignDecodeErrorZ ret_conv = *(LDKCResult_SignDecodeErrorZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } - -void __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_RouteHopDecodeErrorZ _res_conv = *(LDKCResult_RouteHopDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_RouteHopDecodeErrorZ_free(_res_conv); +LDKCResult_RecoverableSignatureNoneZ sign_invoice_LDKKeysInterface_jcall(const void* this_arg, LDKCVec_u8Z invoice_preimage) { + LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; + LDKCVec_u8Z invoice_preimage_var = invoice_preimage; + int8_tArray invoice_preimage_arr = init_int8_tArray(invoice_preimage_var.datalen); + memcpy(invoice_preimage_arr->elems, invoice_preimage_var.data, invoice_preimage_var.datalen); + CVec_u8Z_free(invoice_preimage_var); + uint32_t ret = js_invoke_function_1(j_calls->sign_invoice_meth, (uint32_t)invoice_preimage_arr); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_RecoverableSignatureNoneZ ret_conv = *(LDKCResult_RecoverableSignatureNoneZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } - -static inline uint64_t CResult_RouteHopDecodeErrorZ_clone_ptr(LDKCResult_RouteHopDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_RouteHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHopDecodeErrorZ), "LDKCResult_RouteHopDecodeErrorZ"); - *ret_conv = CResult_RouteHopDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +LDKThirtyTwoBytes get_inbound_payment_key_material_LDKKeysInterface_jcall(const void* this_arg) { + LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) this_arg; + int8_tArray ret = (int8_tArray)js_invoke_function_0(j_calls->get_inbound_payment_key_material_meth); + LDKThirtyTwoBytes ret_ref; + CHECK(ret->arr_len == 32); + memcpy(ret_ref.data, ret->elems, 32); + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_RouteHopDecodeErrorZ* arg_conv = (LDKCResult_RouteHopDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_RouteHopDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +static void LDKKeysInterface_JCalls_cloned(LDKKeysInterface* new_obj) { + LDKKeysInterface_JCalls *j_calls = (LDKKeysInterface_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKKeysInterface LDKKeysInterface_init (/*TODO: JS Object Reference */void* o) { + LDKKeysInterface_JCalls *calls = MALLOC(sizeof(LDKKeysInterface_JCalls), "LDKKeysInterface_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_RouteHopDecodeErrorZ* orig_conv = (LDKCResult_RouteHopDecodeErrorZ*)(orig & ~1); - LDKCResult_RouteHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHopDecodeErrorZ), "LDKCResult_RouteHopDecodeErrorZ"); - *ret_conv = CResult_RouteHopDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; + LDKKeysInterface ret = { + .this_arg = (void*) calls, + .get_node_secret = get_node_secret_LDKKeysInterface_jcall, + .get_destination_script = get_destination_script_LDKKeysInterface_jcall, + .get_shutdown_scriptpubkey = get_shutdown_scriptpubkey_LDKKeysInterface_jcall, + .get_channel_signer = get_channel_signer_LDKKeysInterface_jcall, + .get_secure_random_bytes = get_secure_random_bytes_LDKKeysInterface_jcall, + .read_chan_signer = read_chan_signer_LDKKeysInterface_jcall, + .sign_invoice = sign_invoice_LDKKeysInterface_jcall, + .get_inbound_payment_key_material = get_inbound_payment_key_material_LDKKeysInterface_jcall, + .free = LDKKeysInterface_JCalls_free, + }; + return ret; } - -void __attribute__((visibility("default"))) TS_CVec_RouteHopZ_free(uint32_tArray _res) { - LDKCVec_RouteHopZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t k = 0; k < _res_constr.datalen; k++) { - uint32_t _res_conv_10 = _res_vals[k]; - LDKRouteHop _res_conv_10_conv; - _res_conv_10_conv.inner = (void*)(_res_conv_10 & (~1)); - _res_conv_10_conv.is_owned = (_res_conv_10 & 1) || (_res_conv_10 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_10_conv); - _res_constr.data[k] = _res_conv_10_conv; - } - CVec_RouteHopZ_free(_res_constr); +long __attribute__((visibility("default"))) TS_LDKKeysInterface_new(/*TODO: JS Object Reference */void* o) { + LDKKeysInterface *res_ptr = MALLOC(sizeof(LDKKeysInterface), "LDKKeysInterface"); + *res_ptr = LDKKeysInterface_init(o); + return (long)res_ptr; } - -void __attribute__((visibility("default"))) TS_CVec_CVec_RouteHopZZ_free(ptrArray _res) { - LDKCVec_CVec_RouteHopZZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKCVec_RouteHopZ), "LDKCVec_CVec_RouteHopZZ Elements"); - else - _res_constr.data = NULL; - uint32_tArray* _res_vals = (uint32_tArray*)(_res + 4); - for (size_t m = 0; m < _res_constr.datalen; m++) { - uint32_tArray _res_conv_12 = _res_vals[m]; - LDKCVec_RouteHopZ _res_conv_12_constr; - _res_conv_12_constr.datalen = *((uint32_t*)_res_conv_12); - if (_res_conv_12_constr.datalen > 0) - _res_conv_12_constr.data = MALLOC(_res_conv_12_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); - else - _res_conv_12_constr.data = NULL; - uint32_t* _res_conv_12_vals = (uint32_t*)(_res_conv_12 + 4); - for (size_t k = 0; k < _res_conv_12_constr.datalen; k++) { - uint32_t _res_conv_12_conv_10 = _res_conv_12_vals[k]; - LDKRouteHop _res_conv_12_conv_10_conv; - _res_conv_12_conv_10_conv.inner = (void*)(_res_conv_12_conv_10 & (~1)); - _res_conv_12_conv_10_conv.is_owned = (_res_conv_12_conv_10 & 1) || (_res_conv_12_conv_10 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_12_conv_10_conv); - _res_conv_12_constr.data[k] = _res_conv_12_conv_10_conv; - } - _res_constr.data[m] = _res_conv_12_constr; - } - CVec_CVec_RouteHopZZ_free(_res_constr); +int8_tArray __attribute__((visibility("default"))) TS_KeysInterface_get_node_secret(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, (this_arg_conv->get_node_secret)(this_arg_conv->this_arg).bytes, 32); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_ok(uint32_t o) { - LDKRoute o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = Route_clone(&o_conv); - LDKCResult_RouteDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteDecodeErrorZ), "LDKCResult_RouteDecodeErrorZ"); - *ret_conv = CResult_RouteDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +int8_tArray __attribute__((visibility("default"))) TS_KeysInterface_get_destination_script(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; + LDKCVec_u8Z ret_var = (this_arg_conv->get_destination_script)(this_arg_conv->this_arg); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_RouteDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteDecodeErrorZ), "LDKCResult_RouteDecodeErrorZ"); - *ret_conv = CResult_RouteDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_KeysInterface_get_shutdown_scriptpubkey(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; + LDKShutdownScript ret_var = (this_arg_conv->get_shutdown_scriptpubkey)(this_arg_conv->this_arg); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_RouteDecodeErrorZ* o_conv = (LDKCResult_RouteDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_RouteDecodeErrorZ_is_ok(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_KeysInterface_get_channel_signer(uint32_t this_arg, jboolean inbound, int64_t channel_value_satoshis) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; + LDKSign* ret_ret = MALLOC(sizeof(LDKSign), "LDKSign"); + *ret_ret = (this_arg_conv->get_channel_signer)(this_arg_conv->this_arg, inbound, channel_value_satoshis); + return (uint64_t)ret_ret; } -void __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_RouteDecodeErrorZ _res_conv = *(LDKCResult_RouteDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_RouteDecodeErrorZ_free(_res_conv); +int8_tArray __attribute__((visibility("default"))) TS_KeysInterface_get_secure_random_bytes(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, (this_arg_conv->get_secure_random_bytes)(this_arg_conv->this_arg).data, 32); + return ret_arr; } -static inline uint64_t CResult_RouteDecodeErrorZ_clone_ptr(LDKCResult_RouteDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_RouteDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteDecodeErrorZ), "LDKCResult_RouteDecodeErrorZ"); - *ret_conv = CResult_RouteDecodeErrorZ_clone(arg); +uint32_t __attribute__((visibility("default"))) TS_KeysInterface_read_chan_signer(uint32_t this_arg, int8_tArray reader) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; + LDKu8slice reader_ref; + reader_ref.datalen = reader->arr_len; + reader_ref.data = reader->elems; + LDKCResult_SignDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SignDecodeErrorZ), "LDKCResult_SignDecodeErrorZ"); + *ret_conv = (this_arg_conv->read_chan_signer)(this_arg_conv->this_arg, reader_ref); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_RouteDecodeErrorZ* arg_conv = (LDKCResult_RouteDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_RouteDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; -} -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_RouteDecodeErrorZ* orig_conv = (LDKCResult_RouteDecodeErrorZ*)(orig & ~1); - LDKCResult_RouteDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteDecodeErrorZ), "LDKCResult_RouteDecodeErrorZ"); - *ret_conv = CResult_RouteDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_KeysInterface_sign_invoice(uint32_t this_arg, int8_tArray invoice_preimage) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; + LDKCVec_u8Z invoice_preimage_ref; + invoice_preimage_ref.datalen = invoice_preimage->arr_len; + invoice_preimage_ref.data = MALLOC(invoice_preimage_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(invoice_preimage_ref.data, invoice_preimage->elems, invoice_preimage_ref.datalen); + LDKCResult_RecoverableSignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_RecoverableSignatureNoneZ), "LDKCResult_RecoverableSignatureNoneZ"); + *ret_conv = (this_arg_conv->sign_invoice)(this_arg_conv->this_arg, invoice_preimage_ref); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_ok(uint32_t o) { - LDKRouteParameters o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = RouteParameters_clone(&o_conv); - LDKCResult_RouteParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteParametersDecodeErrorZ), "LDKCResult_RouteParametersDecodeErrorZ"); - *ret_conv = CResult_RouteParametersDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +int8_tArray __attribute__((visibility("default"))) TS_KeysInterface_get_inbound_payment_key_material(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKKeysInterface* this_arg_conv = (LDKKeysInterface*)this_arg_ptr; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, (this_arg_conv->get_inbound_payment_key_material)(this_arg_conv->this_arg).data, 32); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_RouteParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteParametersDecodeErrorZ), "LDKCResult_RouteParametersDecodeErrorZ"); - *ret_conv = CResult_RouteParametersDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +typedef struct LDKFeeEstimator_JCalls { + atomic_size_t refcnt; + uint32_t get_est_sat_per_1000_weight_meth; +} LDKFeeEstimator_JCalls; +static void LDKFeeEstimator_JCalls_free(void* this_arg) { + LDKFeeEstimator_JCalls *j_calls = (LDKFeeEstimator_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->get_est_sat_per_1000_weight_meth); + FREE(j_calls); + } } - -jboolean __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_RouteParametersDecodeErrorZ* o_conv = (LDKCResult_RouteParametersDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_RouteParametersDecodeErrorZ_is_ok(o_conv); - return ret_val; +uint32_t get_est_sat_per_1000_weight_LDKFeeEstimator_jcall(const void* this_arg, LDKConfirmationTarget confirmation_target) { + LDKFeeEstimator_JCalls *j_calls = (LDKFeeEstimator_JCalls*) this_arg; + uint32_t confirmation_target_conv = LDKConfirmationTarget_to_js(confirmation_target); + return js_invoke_function_1(j_calls->get_est_sat_per_1000_weight_meth, (uint32_t)confirmation_target_conv); } - -void __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_RouteParametersDecodeErrorZ _res_conv = *(LDKCResult_RouteParametersDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_RouteParametersDecodeErrorZ_free(_res_conv); +static void LDKFeeEstimator_JCalls_cloned(LDKFeeEstimator* new_obj) { + LDKFeeEstimator_JCalls *j_calls = (LDKFeeEstimator_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKFeeEstimator LDKFeeEstimator_init (/*TODO: JS Object Reference */void* o) { + LDKFeeEstimator_JCalls *calls = MALLOC(sizeof(LDKFeeEstimator_JCalls), "LDKFeeEstimator_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -static inline uint64_t CResult_RouteParametersDecodeErrorZ_clone_ptr(LDKCResult_RouteParametersDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_RouteParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteParametersDecodeErrorZ), "LDKCResult_RouteParametersDecodeErrorZ"); - *ret_conv = CResult_RouteParametersDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; + LDKFeeEstimator ret = { + .this_arg = (void*) calls, + .get_est_sat_per_1000_weight = get_est_sat_per_1000_weight_LDKFeeEstimator_jcall, + .free = LDKFeeEstimator_JCalls_free, + }; + return ret; } -int64_t __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_RouteParametersDecodeErrorZ* arg_conv = (LDKCResult_RouteParametersDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_RouteParametersDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +long __attribute__((visibility("default"))) TS_LDKFeeEstimator_new(/*TODO: JS Object Reference */void* o) { + LDKFeeEstimator *res_ptr = MALLOC(sizeof(LDKFeeEstimator), "LDKFeeEstimator"); + *res_ptr = LDKFeeEstimator_init(o); + return (long)res_ptr; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_RouteParametersDecodeErrorZ* orig_conv = (LDKCResult_RouteParametersDecodeErrorZ*)(orig & ~1); - LDKCResult_RouteParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteParametersDecodeErrorZ), "LDKCResult_RouteParametersDecodeErrorZ"); - *ret_conv = CResult_RouteParametersDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +int32_t __attribute__((visibility("default"))) TS_FeeEstimator_get_est_sat_per_1000_weight(uint32_t this_arg, uint32_t confirmation_target) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKFeeEstimator* this_arg_conv = (LDKFeeEstimator*)this_arg_ptr; + LDKConfirmationTarget confirmation_target_conv = LDKConfirmationTarget_from_js(confirmation_target); + int32_t ret_val = (this_arg_conv->get_est_sat_per_1000_weight)(this_arg_conv->this_arg, confirmation_target_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_CVec_RouteHintZ_free(uint32_tArray _res) { - LDKCVec_RouteHintZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKRouteHint), "LDKCVec_RouteHintZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t l = 0; l < _res_constr.datalen; l++) { - uint32_t _res_conv_11 = _res_vals[l]; - LDKRouteHint _res_conv_11_conv; - _res_conv_11_conv.inner = (void*)(_res_conv_11 & (~1)); - _res_conv_11_conv.is_owned = (_res_conv_11 & 1) || (_res_conv_11 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_11_conv); - _res_constr.data[l] = _res_conv_11_conv; +typedef struct LDKLogger_JCalls { + atomic_size_t refcnt; + uint32_t log_meth; +} LDKLogger_JCalls; +static void LDKLogger_JCalls_free(void* this_arg) { + LDKLogger_JCalls *j_calls = (LDKLogger_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->log_meth); + FREE(j_calls); } - CVec_RouteHintZ_free(_res_constr); } - -uint32_t __attribute__((visibility("default"))) TS_COption_u64Z_some(int64_t o) { - LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *ret_copy = COption_u64Z_some(o); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void log_LDKLogger_jcall(const void* this_arg, const LDKRecord * record) { + LDKLogger_JCalls *j_calls = (LDKLogger_JCalls*) this_arg; + LDKRecord record_var = *record; + uint64_t record_ref = 0; + record_var = Record_clone(record); + CHECK((((uint64_t)record_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&record_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(record_var); + record_ref = (uint64_t)record_var.inner; + if (record_var.is_owned) { + record_ref |= 1; + } + js_invoke_function_1(j_calls->log_meth, (uint32_t)record_ref); } - -uint32_t __attribute__((visibility("default"))) TS_COption_u64Z_none() { - LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *ret_copy = COption_u64Z_none(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +static void LDKLogger_JCalls_cloned(LDKLogger* new_obj) { + LDKLogger_JCalls *j_calls = (LDKLogger_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKLogger LDKLogger_init (/*TODO: JS Object Reference */void* o) { + LDKLogger_JCalls *calls = MALLOC(sizeof(LDKLogger_JCalls), "LDKLogger_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -void __attribute__((visibility("default"))) TS_COption_u64Z_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCOption_u64Z _res_conv = *(LDKCOption_u64Z*)(_res_ptr); - FREE((void*)_res); - COption_u64Z_free(_res_conv); + LDKLogger ret = { + .this_arg = (void*) calls, + .log = log_LDKLogger_jcall, + .free = LDKLogger_JCalls_free, + }; + return ret; } - -static inline uint64_t COption_u64Z_clone_ptr(LDKCOption_u64Z *NONNULL_PTR arg) { - LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *ret_copy = COption_u64Z_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +long __attribute__((visibility("default"))) TS_LDKLogger_new(/*TODO: JS Object Reference */void* o) { + LDKLogger *res_ptr = MALLOC(sizeof(LDKLogger), "LDKLogger"); + *res_ptr = LDKLogger_init(o); + return (long)res_ptr; } -int64_t __attribute__((visibility("default"))) TS_COption_u64Z_clone_ptr(uint32_t arg) { - LDKCOption_u64Z* arg_conv = (LDKCOption_u64Z*)arg; - int64_t ret_val = COption_u64Z_clone_ptr(arg_conv); - return ret_val; +static inline struct LDKThirtyTwoBytes C2Tuple_BlockHashChannelManagerZ_get_a(LDKC2Tuple_BlockHashChannelManagerZ *NONNULL_PTR owner){ + return ThirtyTwoBytes_clone(&owner->a); } - -uint32_t __attribute__((visibility("default"))) TS_COption_u64Z_clone(uint32_t orig) { - LDKCOption_u64Z* orig_conv = (LDKCOption_u64Z*)orig; - LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *ret_copy = COption_u64Z_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelManagerZ_get_a(uint32_t owner) { + LDKC2Tuple_BlockHashChannelManagerZ* owner_conv = (LDKC2Tuple_BlockHashChannelManagerZ*)(owner & ~1); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, C2Tuple_BlockHashChannelManagerZ_get_a(owner_conv).data, 32); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_ok(uint32_t o) { - LDKPayee o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = Payee_clone(&o_conv); - LDKCResult_PayeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeeDecodeErrorZ), "LDKCResult_PayeeDecodeErrorZ"); - *ret_conv = CResult_PayeeDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +static inline struct LDKChannelManager *C2Tuple_BlockHashChannelManagerZ_get_b(LDKC2Tuple_BlockHashChannelManagerZ *NONNULL_PTR owner){ + return &owner->b; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_PayeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeeDecodeErrorZ), "LDKCResult_PayeeDecodeErrorZ"); - *ret_conv = CResult_PayeeDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelManagerZ_get_b(uint32_t owner) { + LDKC2Tuple_BlockHashChannelManagerZ* owner_conv = (LDKC2Tuple_BlockHashChannelManagerZ*)(owner & ~1); + LDKChannelManager ret_var = *C2Tuple_BlockHashChannelManagerZ_get_b(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner & ~1; + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_PayeeDecodeErrorZ* o_conv = (LDKCResult_PayeeDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_PayeeDecodeErrorZ_is_ok(o_conv); - return ret_val; +static inline struct LDKC2Tuple_BlockHashChannelManagerZ *CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_ok(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(owner->result_ok); + return &*owner->contents.result; } - -void __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_PayeeDecodeErrorZ _res_conv = *(LDKCResult_PayeeDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_PayeeDecodeErrorZ_free(_res_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_ok(uint32_t owner) { + LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ* owner_conv = (LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ*)(owner & ~1); + uint64_t ret_ret = (uint64_t)CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_ok(owner_conv); + return ret_ret; } -static inline uint64_t CResult_PayeeDecodeErrorZ_clone_ptr(LDKCResult_PayeeDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_PayeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeeDecodeErrorZ), "LDKCResult_PayeeDecodeErrorZ"); - *ret_conv = CResult_PayeeDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +static inline struct LDKDecodeError CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_err(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ *NONNULL_PTR owner){ +CHECK(!owner->result_ok); + return DecodeError_clone(&*owner->contents.err); } -int64_t __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_PayeeDecodeErrorZ* arg_conv = (LDKCResult_PayeeDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_PayeeDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_err(uint32_t owner) { + LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ* owner_conv = (LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ*)(owner & ~1); + LDKDecodeError ret_var = CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_err(owner_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_PayeeDecodeErrorZ* orig_conv = (LDKCResult_PayeeDecodeErrorZ*)(orig & ~1); - LDKCResult_PayeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeeDecodeErrorZ), "LDKCResult_PayeeDecodeErrorZ"); - *ret_conv = CResult_PayeeDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +typedef struct LDKMessageSendEventsProvider_JCalls { + atomic_size_t refcnt; + uint32_t get_and_clear_pending_msg_events_meth; +} LDKMessageSendEventsProvider_JCalls; +static void LDKMessageSendEventsProvider_JCalls_free(void* this_arg) { + LDKMessageSendEventsProvider_JCalls *j_calls = (LDKMessageSendEventsProvider_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->get_and_clear_pending_msg_events_meth); + FREE(j_calls); + } } - -void __attribute__((visibility("default"))) TS_CVec_RouteHintHopZ_free(uint32_tArray _res) { - LDKCVec_RouteHintHopZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKRouteHintHop), "LDKCVec_RouteHintHopZ Elements"); +LDKCVec_MessageSendEventZ get_and_clear_pending_msg_events_LDKMessageSendEventsProvider_jcall(const void* this_arg) { + LDKMessageSendEventsProvider_JCalls *j_calls = (LDKMessageSendEventsProvider_JCalls*) this_arg; + uint32_tArray ret = (uint32_tArray)js_invoke_function_0(j_calls->get_and_clear_pending_msg_events_meth); + LDKCVec_MessageSendEventZ ret_constr; + ret_constr.datalen = ret->arr_len; + if (ret_constr.datalen > 0) + ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKMessageSendEvent), "LDKCVec_MessageSendEventZ Elements"); else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t o = 0; o < _res_constr.datalen; o++) { - uint32_t _res_conv_14 = _res_vals[o]; - LDKRouteHintHop _res_conv_14_conv; - _res_conv_14_conv.inner = (void*)(_res_conv_14 & (~1)); - _res_conv_14_conv.is_owned = (_res_conv_14 & 1) || (_res_conv_14 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_14_conv); - _res_constr.data[o] = _res_conv_14_conv; + ret_constr.data = NULL; + uint32_t* ret_vals = ret->elems; + for (size_t s = 0; s < ret_constr.datalen; s++) { + uint32_t ret_conv_18 = ret_vals[s]; + void* ret_conv_18_ptr = (void*)(((uint64_t)ret_conv_18) & ~1); + CHECK_ACCESS(ret_conv_18_ptr); + LDKMessageSendEvent ret_conv_18_conv = *(LDKMessageSendEvent*)(ret_conv_18_ptr); + FREE((void*)ret_conv_18); + ret_constr.data[s] = ret_conv_18_conv; } - CVec_RouteHintHopZ_free(_res_constr); + return ret_constr; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_ok(uint32_t o) { - LDKRouteHint o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = RouteHint_clone(&o_conv); - LDKCResult_RouteHintDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintDecodeErrorZ), "LDKCResult_RouteHintDecodeErrorZ"); - *ret_conv = CResult_RouteHintDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +static void LDKMessageSendEventsProvider_JCalls_cloned(LDKMessageSendEventsProvider* new_obj) { + LDKMessageSendEventsProvider_JCalls *j_calls = (LDKMessageSendEventsProvider_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKMessageSendEventsProvider LDKMessageSendEventsProvider_init (/*TODO: JS Object Reference */void* o) { + LDKMessageSendEventsProvider_JCalls *calls = MALLOC(sizeof(LDKMessageSendEventsProvider_JCalls), "LDKMessageSendEventsProvider_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_RouteHintDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintDecodeErrorZ), "LDKCResult_RouteHintDecodeErrorZ"); - *ret_conv = CResult_RouteHintDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; + LDKMessageSendEventsProvider ret = { + .this_arg = (void*) calls, + .get_and_clear_pending_msg_events = get_and_clear_pending_msg_events_LDKMessageSendEventsProvider_jcall, + .free = LDKMessageSendEventsProvider_JCalls_free, + }; + return ret; } - -jboolean __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_RouteHintDecodeErrorZ* o_conv = (LDKCResult_RouteHintDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_RouteHintDecodeErrorZ_is_ok(o_conv); - return ret_val; +long __attribute__((visibility("default"))) TS_LDKMessageSendEventsProvider_new(/*TODO: JS Object Reference */void* o) { + LDKMessageSendEventsProvider *res_ptr = MALLOC(sizeof(LDKMessageSendEventsProvider), "LDKMessageSendEventsProvider"); + *res_ptr = LDKMessageSendEventsProvider_init(o); + return (long)res_ptr; +} +uint32_tArray __attribute__((visibility("default"))) TS_MessageSendEventsProvider_get_and_clear_pending_msg_events(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKMessageSendEventsProvider* this_arg_conv = (LDKMessageSendEventsProvider*)this_arg_ptr; + LDKCVec_MessageSendEventZ ret_var = (this_arg_conv->get_and_clear_pending_msg_events)(this_arg_conv->this_arg); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t s = 0; s < ret_var.datalen; s++) { + LDKMessageSendEvent *ret_conv_18_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_conv_18_copy = ret_var.data[s]; + uint64_t ret_conv_18_ref = (uint64_t)ret_conv_18_copy; + ret_arr_ptr[s] = ret_conv_18_ref; + } + + FREE(ret_var.data); + return ret_arr; } -void __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_RouteHintDecodeErrorZ _res_conv = *(LDKCResult_RouteHintDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_RouteHintDecodeErrorZ_free(_res_conv); +typedef struct LDKEventHandler_JCalls { + atomic_size_t refcnt; + uint32_t handle_event_meth; +} LDKEventHandler_JCalls; +static void LDKEventHandler_JCalls_free(void* this_arg) { + LDKEventHandler_JCalls *j_calls = (LDKEventHandler_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->handle_event_meth); + FREE(j_calls); + } } - -static inline uint64_t CResult_RouteHintDecodeErrorZ_clone_ptr(LDKCResult_RouteHintDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_RouteHintDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintDecodeErrorZ), "LDKCResult_RouteHintDecodeErrorZ"); - *ret_conv = CResult_RouteHintDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +void handle_event_LDKEventHandler_jcall(const void* this_arg, const LDKEvent * event) { + LDKEventHandler_JCalls *j_calls = (LDKEventHandler_JCalls*) this_arg; + LDKEvent *ret_event = MALLOC(sizeof(LDKEvent), "LDKEvent ret conversion"); + *ret_event = Event_clone(event); + js_invoke_function_1(j_calls->handle_event_meth, (uint32_t)(uint64_t)ret_event); } -int64_t __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_RouteHintDecodeErrorZ* arg_conv = (LDKCResult_RouteHintDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_RouteHintDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +static void LDKEventHandler_JCalls_cloned(LDKEventHandler* new_obj) { + LDKEventHandler_JCalls *j_calls = (LDKEventHandler_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKEventHandler LDKEventHandler_init (/*TODO: JS Object Reference */void* o) { + LDKEventHandler_JCalls *calls = MALLOC(sizeof(LDKEventHandler_JCalls), "LDKEventHandler_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_RouteHintDecodeErrorZ* orig_conv = (LDKCResult_RouteHintDecodeErrorZ*)(orig & ~1); - LDKCResult_RouteHintDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintDecodeErrorZ), "LDKCResult_RouteHintDecodeErrorZ"); - *ret_conv = CResult_RouteHintDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; + LDKEventHandler ret = { + .this_arg = (void*) calls, + .handle_event = handle_event_LDKEventHandler_jcall, + .free = LDKEventHandler_JCalls_free, + }; + return ret; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_ok(uint32_t o) { - LDKRouteHintHop o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = RouteHintHop_clone(&o_conv); - LDKCResult_RouteHintHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintHopDecodeErrorZ), "LDKCResult_RouteHintHopDecodeErrorZ"); - *ret_conv = CResult_RouteHintHopDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +long __attribute__((visibility("default"))) TS_LDKEventHandler_new(/*TODO: JS Object Reference */void* o) { + LDKEventHandler *res_ptr = MALLOC(sizeof(LDKEventHandler), "LDKEventHandler"); + *res_ptr = LDKEventHandler_init(o); + return (long)res_ptr; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_RouteHintHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintHopDecodeErrorZ), "LDKCResult_RouteHintHopDecodeErrorZ"); - *ret_conv = CResult_RouteHintHopDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_EventHandler_handle_event(uint32_t this_arg, uint32_t event) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKEventHandler* this_arg_conv = (LDKEventHandler*)this_arg_ptr; + LDKEvent* event_conv = (LDKEvent*)event; + (this_arg_conv->handle_event)(this_arg_conv->this_arg, event_conv); } -jboolean __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_RouteHintHopDecodeErrorZ* o_conv = (LDKCResult_RouteHintHopDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_RouteHintHopDecodeErrorZ_is_ok(o_conv); - return ret_val; +typedef struct LDKEventsProvider_JCalls { + atomic_size_t refcnt; + uint32_t process_pending_events_meth; +} LDKEventsProvider_JCalls; +static void LDKEventsProvider_JCalls_free(void* this_arg) { + LDKEventsProvider_JCalls *j_calls = (LDKEventsProvider_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->process_pending_events_meth); + FREE(j_calls); + } } - -void __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_RouteHintHopDecodeErrorZ _res_conv = *(LDKCResult_RouteHintHopDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_RouteHintHopDecodeErrorZ_free(_res_conv); +void process_pending_events_LDKEventsProvider_jcall(const void* this_arg, LDKEventHandler handler) { + LDKEventsProvider_JCalls *j_calls = (LDKEventsProvider_JCalls*) this_arg; + LDKEventHandler* handler_ret = MALLOC(sizeof(LDKEventHandler), "LDKEventHandler"); + *handler_ret = handler; + js_invoke_function_1(j_calls->process_pending_events_meth, (uint32_t)(uint64_t)handler_ret); +} +static void LDKEventsProvider_JCalls_cloned(LDKEventsProvider* new_obj) { + LDKEventsProvider_JCalls *j_calls = (LDKEventsProvider_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKEventsProvider LDKEventsProvider_init (/*TODO: JS Object Reference */void* o) { + LDKEventsProvider_JCalls *calls = MALLOC(sizeof(LDKEventsProvider_JCalls), "LDKEventsProvider_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -static inline uint64_t CResult_RouteHintHopDecodeErrorZ_clone_ptr(LDKCResult_RouteHintHopDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_RouteHintHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintHopDecodeErrorZ), "LDKCResult_RouteHintHopDecodeErrorZ"); - *ret_conv = CResult_RouteHintHopDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; + LDKEventsProvider ret = { + .this_arg = (void*) calls, + .process_pending_events = process_pending_events_LDKEventsProvider_jcall, + .free = LDKEventsProvider_JCalls_free, + }; + return ret; } -int64_t __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_RouteHintHopDecodeErrorZ* arg_conv = (LDKCResult_RouteHintHopDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_RouteHintHopDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +long __attribute__((visibility("default"))) TS_LDKEventsProvider_new(/*TODO: JS Object Reference */void* o) { + LDKEventsProvider *res_ptr = MALLOC(sizeof(LDKEventsProvider), "LDKEventsProvider"); + *res_ptr = LDKEventsProvider_init(o); + return (long)res_ptr; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_RouteHintHopDecodeErrorZ* orig_conv = (LDKCResult_RouteHintHopDecodeErrorZ*)(orig & ~1); - LDKCResult_RouteHintHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintHopDecodeErrorZ), "LDKCResult_RouteHintHopDecodeErrorZ"); - *ret_conv = CResult_RouteHintHopDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_EventsProvider_process_pending_events(uint32_t this_arg, uint32_t handler) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKEventsProvider* this_arg_conv = (LDKEventsProvider*)this_arg_ptr; + void* handler_ptr = (void*)(((uint64_t)handler) & ~1); + CHECK_ACCESS(handler_ptr); + LDKEventHandler handler_conv = *(LDKEventHandler*)(handler_ptr); + (this_arg_conv->process_pending_events)(this_arg_conv->this_arg, handler_conv); } -void __attribute__((visibility("default"))) TS_CVec_ChannelDetailsZ_free(uint32_tArray _res) { - LDKCVec_ChannelDetailsZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKChannelDetails), "LDKCVec_ChannelDetailsZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t q = 0; q < _res_constr.datalen; q++) { - uint32_t _res_conv_16 = _res_vals[q]; - LDKChannelDetails _res_conv_16_conv; - _res_conv_16_conv.inner = (void*)(_res_conv_16 & (~1)); - _res_conv_16_conv.is_owned = (_res_conv_16 & 1) || (_res_conv_16 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_16_conv); - _res_constr.data[q] = _res_conv_16_conv; +typedef struct LDKListen_JCalls { + atomic_size_t refcnt; + uint32_t block_connected_meth; + uint32_t block_disconnected_meth; +} LDKListen_JCalls; +static void LDKListen_JCalls_free(void* this_arg) { + LDKListen_JCalls *j_calls = (LDKListen_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->block_connected_meth); + js_free_function_ptr(j_calls->block_disconnected_meth); + FREE(j_calls); } - CVec_ChannelDetailsZ_free(_res_constr); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_ok(uint32_t o) { - LDKRoute o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = Route_clone(&o_conv); - LDKCResult_RouteLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteLightningErrorZ), "LDKCResult_RouteLightningErrorZ"); - *ret_conv = CResult_RouteLightningErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +void block_connected_LDKListen_jcall(const void* this_arg, LDKu8slice block, uint32_t height) { + LDKListen_JCalls *j_calls = (LDKListen_JCalls*) this_arg; + LDKu8slice block_var = block; + int8_tArray block_arr = init_int8_tArray(block_var.datalen); + memcpy(block_arr->elems, block_var.data, block_var.datalen); + js_invoke_function_2(j_calls->block_connected_meth, (uint32_t)block_arr, (uint32_t)height); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_err(uint32_t e) { - LDKLightningError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = LightningError_clone(&e_conv); - LDKCResult_RouteLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteLightningErrorZ), "LDKCResult_RouteLightningErrorZ"); - *ret_conv = CResult_RouteLightningErrorZ_err(e_conv); - return (uint64_t)ret_conv; +void block_disconnected_LDKListen_jcall(const void* this_arg, const uint8_t (* header)[80], uint32_t height) { + LDKListen_JCalls *j_calls = (LDKListen_JCalls*) this_arg; + int8_tArray header_arr = init_int8_tArray(80); + memcpy(header_arr->elems, *header, 80); + js_invoke_function_2(j_calls->block_disconnected_meth, (uint32_t)header_arr, (uint32_t)height); } - -jboolean __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_is_ok(uint32_t o) { - LDKCResult_RouteLightningErrorZ* o_conv = (LDKCResult_RouteLightningErrorZ*)(o & ~1); - jboolean ret_val = CResult_RouteLightningErrorZ_is_ok(o_conv); - return ret_val; +static void LDKListen_JCalls_cloned(LDKListen* new_obj) { + LDKListen_JCalls *j_calls = (LDKListen_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKListen LDKListen_init (/*TODO: JS Object Reference */void* o) { + LDKListen_JCalls *calls = MALLOC(sizeof(LDKListen_JCalls), "LDKListen_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -void __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_RouteLightningErrorZ _res_conv = *(LDKCResult_RouteLightningErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_RouteLightningErrorZ_free(_res_conv); + LDKListen ret = { + .this_arg = (void*) calls, + .block_connected = block_connected_LDKListen_jcall, + .block_disconnected = block_disconnected_LDKListen_jcall, + .free = LDKListen_JCalls_free, + }; + return ret; } - -static inline uint64_t CResult_RouteLightningErrorZ_clone_ptr(LDKCResult_RouteLightningErrorZ *NONNULL_PTR arg) { - LDKCResult_RouteLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteLightningErrorZ), "LDKCResult_RouteLightningErrorZ"); - *ret_conv = CResult_RouteLightningErrorZ_clone(arg); - return (uint64_t)ret_conv; +long __attribute__((visibility("default"))) TS_LDKListen_new(/*TODO: JS Object Reference */void* o) { + LDKListen *res_ptr = MALLOC(sizeof(LDKListen), "LDKListen"); + *res_ptr = LDKListen_init(o); + return (long)res_ptr; } -int64_t __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_RouteLightningErrorZ* arg_conv = (LDKCResult_RouteLightningErrorZ*)(arg & ~1); - int64_t ret_val = CResult_RouteLightningErrorZ_clone_ptr(arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_Listen_block_connected(uint32_t this_arg, int8_tArray block, int32_t height) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKListen* this_arg_conv = (LDKListen*)this_arg_ptr; + LDKu8slice block_ref; + block_ref.datalen = block->arr_len; + block_ref.data = block->elems; + (this_arg_conv->block_connected)(this_arg_conv->this_arg, block_ref, height); } -uint32_t __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_clone(uint32_t orig) { - LDKCResult_RouteLightningErrorZ* orig_conv = (LDKCResult_RouteLightningErrorZ*)(orig & ~1); - LDKCResult_RouteLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteLightningErrorZ), "LDKCResult_RouteLightningErrorZ"); - *ret_conv = CResult_RouteLightningErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_Listen_block_disconnected(uint32_t this_arg, int8_tArray header, int32_t height) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKListen* this_arg_conv = (LDKListen*)this_arg_ptr; + unsigned char header_arr[80]; + CHECK(header->arr_len == 80); + memcpy(header_arr, header->elems, 80); + unsigned char (*header_ref)[80] = &header_arr; + (this_arg_conv->block_disconnected)(this_arg_conv->this_arg, header_ref, height); } -uint32_t __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_ok(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKTxOut o_conv = *(LDKTxOut*)(o_ptr); - o_conv = TxOut_clone((LDKTxOut*)(((uint64_t)o) & ~1)); - LDKCResult_TxOutAccessErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxOutAccessErrorZ), "LDKCResult_TxOutAccessErrorZ"); - *ret_conv = CResult_TxOutAccessErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +typedef struct LDKConfirm_JCalls { + atomic_size_t refcnt; + uint32_t transactions_confirmed_meth; + uint32_t transaction_unconfirmed_meth; + uint32_t best_block_updated_meth; + uint32_t get_relevant_txids_meth; +} LDKConfirm_JCalls; +static void LDKConfirm_JCalls_free(void* this_arg) { + LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->transactions_confirmed_meth); + js_free_function_ptr(j_calls->transaction_unconfirmed_meth); + js_free_function_ptr(j_calls->best_block_updated_meth); + js_free_function_ptr(j_calls->get_relevant_txids_meth); + FREE(j_calls); + } } - -uint32_t __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_err(uint32_t e) { - LDKAccessError e_conv = LDKAccessError_from_js(e); - LDKCResult_TxOutAccessErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxOutAccessErrorZ), "LDKCResult_TxOutAccessErrorZ"); - *ret_conv = CResult_TxOutAccessErrorZ_err(e_conv); - return (uint64_t)ret_conv; +void transactions_confirmed_LDKConfirm_jcall(const void* this_arg, const uint8_t (* header)[80], LDKCVec_C2Tuple_usizeTransactionZZ txdata, uint32_t height) { + LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) this_arg; + int8_tArray header_arr = init_int8_tArray(80); + memcpy(header_arr->elems, *header, 80); + LDKCVec_C2Tuple_usizeTransactionZZ txdata_var = txdata; + uint32_tArray txdata_arr = NULL; + txdata_arr = init_uint32_tArray(txdata_var.datalen); + uint32_t *txdata_arr_ptr = (uint32_t*)(txdata_arr + 4); + for (size_t c = 0; c < txdata_var.datalen; c++) { + LDKC2Tuple_usizeTransactionZ* txdata_conv_28_conv = MALLOC(sizeof(LDKC2Tuple_usizeTransactionZ), "LDKC2Tuple_usizeTransactionZ"); + *txdata_conv_28_conv = txdata_var.data[c]; + txdata_arr_ptr[c] = ((uint64_t)txdata_conv_28_conv); + } + + FREE(txdata_var.data); + js_invoke_function_3(j_calls->transactions_confirmed_meth, (uint32_t)header_arr, (uint32_t)txdata_arr, (uint32_t)height); } - -jboolean __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_is_ok(uint32_t o) { - LDKCResult_TxOutAccessErrorZ* o_conv = (LDKCResult_TxOutAccessErrorZ*)(o & ~1); - jboolean ret_val = CResult_TxOutAccessErrorZ_is_ok(o_conv); - return ret_val; +void transaction_unconfirmed_LDKConfirm_jcall(const void* this_arg, const uint8_t (* txid)[32]) { + LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) this_arg; + int8_tArray txid_arr = init_int8_tArray(32); + memcpy(txid_arr->elems, *txid, 32); + js_invoke_function_1(j_calls->transaction_unconfirmed_meth, (uint32_t)txid_arr); } - -void __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_TxOutAccessErrorZ _res_conv = *(LDKCResult_TxOutAccessErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_TxOutAccessErrorZ_free(_res_conv); +void best_block_updated_LDKConfirm_jcall(const void* this_arg, const uint8_t (* header)[80], uint32_t height) { + LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) this_arg; + int8_tArray header_arr = init_int8_tArray(80); + memcpy(header_arr->elems, *header, 80); + js_invoke_function_2(j_calls->best_block_updated_meth, (uint32_t)header_arr, (uint32_t)height); } - -static inline uint64_t CResult_TxOutAccessErrorZ_clone_ptr(LDKCResult_TxOutAccessErrorZ *NONNULL_PTR arg) { - LDKCResult_TxOutAccessErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxOutAccessErrorZ), "LDKCResult_TxOutAccessErrorZ"); - *ret_conv = CResult_TxOutAccessErrorZ_clone(arg); - return (uint64_t)ret_conv; +LDKCVec_TxidZ get_relevant_txids_LDKConfirm_jcall(const void* this_arg) { + LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) this_arg; + ptrArray ret = (ptrArray)js_invoke_function_0(j_calls->get_relevant_txids_meth); + LDKCVec_TxidZ ret_constr; + ret_constr.datalen = ret->arr_len; + if (ret_constr.datalen > 0) + ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKThirtyTwoBytes), "LDKCVec_TxidZ Elements"); + else + ret_constr.data = NULL; + int8_tArray* ret_vals = (void*) ret->elems; + for (size_t m = 0; m < ret_constr.datalen; m++) { + int8_tArray ret_conv_12 = ret_vals[m]; + LDKThirtyTwoBytes ret_conv_12_ref; + CHECK(ret_conv_12->arr_len == 32); + memcpy(ret_conv_12_ref.data, ret_conv_12->elems, 32); + ret_constr.data[m] = ret_conv_12_ref; + } + return ret_constr; } -int64_t __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_TxOutAccessErrorZ* arg_conv = (LDKCResult_TxOutAccessErrorZ*)(arg & ~1); - int64_t ret_val = CResult_TxOutAccessErrorZ_clone_ptr(arg_conv); - return ret_val; +static void LDKConfirm_JCalls_cloned(LDKConfirm* new_obj) { + LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKConfirm LDKConfirm_init (/*TODO: JS Object Reference */void* o) { + LDKConfirm_JCalls *calls = MALLOC(sizeof(LDKConfirm_JCalls), "LDKConfirm_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -uint32_t __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_clone(uint32_t orig) { - LDKCResult_TxOutAccessErrorZ* orig_conv = (LDKCResult_TxOutAccessErrorZ*)(orig & ~1); - LDKCResult_TxOutAccessErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxOutAccessErrorZ), "LDKCResult_TxOutAccessErrorZ"); - *ret_conv = CResult_TxOutAccessErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; + LDKConfirm ret = { + .this_arg = (void*) calls, + .transactions_confirmed = transactions_confirmed_LDKConfirm_jcall, + .transaction_unconfirmed = transaction_unconfirmed_LDKConfirm_jcall, + .best_block_updated = best_block_updated_LDKConfirm_jcall, + .get_relevant_txids = get_relevant_txids_LDKConfirm_jcall, + .free = LDKConfirm_JCalls_free, + }; + return ret; } - -static inline uint64_t C2Tuple_usizeTransactionZ_clone_ptr(LDKC2Tuple_usizeTransactionZ *NONNULL_PTR arg) { - LDKC2Tuple_usizeTransactionZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_usizeTransactionZ), "LDKC2Tuple_usizeTransactionZ"); - *ret_conv = C2Tuple_usizeTransactionZ_clone(arg); - return ((uint64_t)ret_conv); +long __attribute__((visibility("default"))) TS_LDKConfirm_new(/*TODO: JS Object Reference */void* o) { + LDKConfirm *res_ptr = MALLOC(sizeof(LDKConfirm), "LDKConfirm"); + *res_ptr = LDKConfirm_init(o); + return (long)res_ptr; } -int64_t __attribute__((visibility("default"))) TS_C2Tuple_usizeTransactionZ_clone_ptr(uint32_t arg) { - LDKC2Tuple_usizeTransactionZ* arg_conv = (LDKC2Tuple_usizeTransactionZ*)(arg & ~1); - int64_t ret_val = C2Tuple_usizeTransactionZ_clone_ptr(arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_Confirm_transactions_confirmed(uint32_t this_arg, int8_tArray header, uint32_tArray txdata, int32_t height) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKConfirm* this_arg_conv = (LDKConfirm*)this_arg_ptr; + unsigned char header_arr[80]; + CHECK(header->arr_len == 80); + memcpy(header_arr, header->elems, 80); + unsigned char (*header_ref)[80] = &header_arr; + LDKCVec_C2Tuple_usizeTransactionZZ txdata_constr; + txdata_constr.datalen = txdata->arr_len; + if (txdata_constr.datalen > 0) + txdata_constr.data = MALLOC(txdata_constr.datalen * sizeof(LDKC2Tuple_usizeTransactionZ), "LDKCVec_C2Tuple_usizeTransactionZZ Elements"); + else + txdata_constr.data = NULL; + uint32_t* txdata_vals = txdata->elems; + for (size_t c = 0; c < txdata_constr.datalen; c++) { + uint32_t txdata_conv_28 = txdata_vals[c]; + void* txdata_conv_28_ptr = (void*)(((uint64_t)txdata_conv_28) & ~1); + CHECK_ACCESS(txdata_conv_28_ptr); + LDKC2Tuple_usizeTransactionZ txdata_conv_28_conv = *(LDKC2Tuple_usizeTransactionZ*)(txdata_conv_28_ptr); + txdata_conv_28_conv = C2Tuple_usizeTransactionZ_clone((LDKC2Tuple_usizeTransactionZ*)(((uint64_t)txdata_conv_28) & ~1)); + txdata_constr.data[c] = txdata_conv_28_conv; + } + (this_arg_conv->transactions_confirmed)(this_arg_conv->this_arg, header_ref, txdata_constr, height); } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_usizeTransactionZ_clone(uint32_t orig) { - LDKC2Tuple_usizeTransactionZ* orig_conv = (LDKC2Tuple_usizeTransactionZ*)(orig & ~1); - LDKC2Tuple_usizeTransactionZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_usizeTransactionZ), "LDKC2Tuple_usizeTransactionZ"); - *ret_conv = C2Tuple_usizeTransactionZ_clone(orig_conv); - return ((uint64_t)ret_conv); +void __attribute__((visibility("default"))) TS_Confirm_transaction_unconfirmed(uint32_t this_arg, int8_tArray txid) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKConfirm* this_arg_conv = (LDKConfirm*)this_arg_ptr; + unsigned char txid_arr[32]; + CHECK(txid->arr_len == 32); + memcpy(txid_arr, txid->elems, 32); + unsigned char (*txid_ref)[32] = &txid_arr; + (this_arg_conv->transaction_unconfirmed)(this_arg_conv->this_arg, txid_ref); } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_usizeTransactionZ_new(int64_t a, int8_tArray b) { - LDKTransaction b_ref; - b_ref.datalen = *((uint32_t*)b); - b_ref.data = MALLOC(b_ref.datalen, "LDKTransaction Bytes"); - memcpy(b_ref.data, (uint8_t*)(b + 4), b_ref.datalen); - b_ref.data_is_owned = true; - LDKC2Tuple_usizeTransactionZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_usizeTransactionZ), "LDKC2Tuple_usizeTransactionZ"); - *ret_conv = C2Tuple_usizeTransactionZ_new(a, b_ref); - return ((uint64_t)ret_conv); +void __attribute__((visibility("default"))) TS_Confirm_best_block_updated(uint32_t this_arg, int8_tArray header, int32_t height) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKConfirm* this_arg_conv = (LDKConfirm*)this_arg_ptr; + unsigned char header_arr[80]; + CHECK(header->arr_len == 80); + memcpy(header_arr, header->elems, 80); + unsigned char (*header_ref)[80] = &header_arr; + (this_arg_conv->best_block_updated)(this_arg_conv->this_arg, header_ref, height); } -void __attribute__((visibility("default"))) TS_C2Tuple_usizeTransactionZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKC2Tuple_usizeTransactionZ _res_conv = *(LDKC2Tuple_usizeTransactionZ*)(_res_ptr); - FREE((void*)_res); - C2Tuple_usizeTransactionZ_free(_res_conv); +ptrArray __attribute__((visibility("default"))) TS_Confirm_get_relevant_txids(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKConfirm* this_arg_conv = (LDKConfirm*)this_arg_ptr; + LDKCVec_TxidZ ret_var = (this_arg_conv->get_relevant_txids)(this_arg_conv->this_arg); + ptrArray ret_arr = NULL; + ret_arr = init_ptrArray(ret_var.datalen); + int8_tArray *ret_arr_ptr = (int8_tArray*)(ret_arr + 4); + for (size_t m = 0; m < ret_var.datalen; m++) { + int8_tArray ret_conv_12_arr = init_int8_tArray(32); + memcpy(ret_conv_12_arr->elems, ret_var.data[m].data, 32); + ret_arr_ptr[m] = ret_conv_12_arr; + } + + FREE(ret_var.data); + return ret_arr; } -void __attribute__((visibility("default"))) TS_CVec_C2Tuple_usizeTransactionZZ_free(uint32_tArray _res) { - LDKCVec_C2Tuple_usizeTransactionZZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_usizeTransactionZ), "LDKCVec_C2Tuple_usizeTransactionZZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t c = 0; c < _res_constr.datalen; c++) { - uint32_t _res_conv_28 = _res_vals[c]; - void* _res_conv_28_ptr = (void*)(((uint64_t)_res_conv_28) & ~1); - CHECK_ACCESS(_res_conv_28_ptr); - LDKC2Tuple_usizeTransactionZ _res_conv_28_conv = *(LDKC2Tuple_usizeTransactionZ*)(_res_conv_28_ptr); - FREE((void*)_res_conv_28); - _res_constr.data[c] = _res_conv_28_conv; +typedef struct LDKPersist_JCalls { + atomic_size_t refcnt; + uint32_t persist_new_channel_meth; + uint32_t update_persisted_channel_meth; +} LDKPersist_JCalls; +static void LDKPersist_JCalls_free(void* this_arg) { + LDKPersist_JCalls *j_calls = (LDKPersist_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->persist_new_channel_meth); + js_free_function_ptr(j_calls->update_persisted_channel_meth); + FREE(j_calls); + } +} +LDKCResult_NoneChannelMonitorUpdateErrZ persist_new_channel_LDKPersist_jcall(const void* this_arg, LDKOutPoint channel_id, const LDKChannelMonitor * data, LDKMonitorUpdateId update_id) { + LDKPersist_JCalls *j_calls = (LDKPersist_JCalls*) this_arg; + LDKOutPoint channel_id_var = channel_id; + uint64_t channel_id_ref = 0; + CHECK((((uint64_t)channel_id_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&channel_id_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_id_var); + channel_id_ref = (uint64_t)channel_id_var.inner; + if (channel_id_var.is_owned) { + channel_id_ref |= 1; + } + LDKChannelMonitor data_var = *data; + uint64_t data_ref = 0; + data_var = ChannelMonitor_clone(data); + CHECK((((uint64_t)data_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&data_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(data_var); + data_ref = (uint64_t)data_var.inner; + if (data_var.is_owned) { + data_ref |= 1; + } + LDKMonitorUpdateId update_id_var = update_id; + uint64_t update_id_ref = 0; + CHECK((((uint64_t)update_id_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&update_id_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_id_var); + update_id_ref = (uint64_t)update_id_var.inner; + if (update_id_var.is_owned) { + update_id_ref |= 1; + } + uint32_t ret = js_invoke_function_3(j_calls->persist_new_channel_meth, (uint32_t)channel_id_ref, (uint32_t)data_ref, (uint32_t)update_id_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_NoneChannelMonitorUpdateErrZ ret_conv = *(LDKCResult_NoneChannelMonitorUpdateErrZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; +} +LDKCResult_NoneChannelMonitorUpdateErrZ update_persisted_channel_LDKPersist_jcall(const void* this_arg, LDKOutPoint channel_id, const LDKChannelMonitorUpdate * update, const LDKChannelMonitor * data, LDKMonitorUpdateId update_id) { + LDKPersist_JCalls *j_calls = (LDKPersist_JCalls*) this_arg; + LDKOutPoint channel_id_var = channel_id; + uint64_t channel_id_ref = 0; + CHECK((((uint64_t)channel_id_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&channel_id_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_id_var); + channel_id_ref = (uint64_t)channel_id_var.inner; + if (channel_id_var.is_owned) { + channel_id_ref |= 1; + } + LDKChannelMonitorUpdate update_var = *update; + uint64_t update_ref = 0; + if ((uint64_t)update_var.inner > 4096) { + update_var = ChannelMonitorUpdate_clone(update); + CHECK((((uint64_t)update_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&update_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_var); + update_ref = (uint64_t)update_var.inner; + if (update_var.is_owned) { + update_ref |= 1; + } + } + LDKChannelMonitor data_var = *data; + uint64_t data_ref = 0; + data_var = ChannelMonitor_clone(data); + CHECK((((uint64_t)data_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&data_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(data_var); + data_ref = (uint64_t)data_var.inner; + if (data_var.is_owned) { + data_ref |= 1; + } + LDKMonitorUpdateId update_id_var = update_id; + uint64_t update_id_ref = 0; + CHECK((((uint64_t)update_id_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&update_id_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_id_var); + update_id_ref = (uint64_t)update_id_var.inner; + if (update_id_var.is_owned) { + update_id_ref |= 1; } - CVec_C2Tuple_usizeTransactionZZ_free(_res_constr); + uint32_t ret = js_invoke_function_4(j_calls->update_persisted_channel_meth, (uint32_t)channel_id_ref, (uint32_t)update_ref, (uint32_t)data_ref, (uint32_t)update_id_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_NoneChannelMonitorUpdateErrZ ret_conv = *(LDKCResult_NoneChannelMonitorUpdateErrZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } - -void __attribute__((visibility("default"))) TS_CVec_TxidZ_free(ptrArray _res) { - LDKCVec_TxidZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKThirtyTwoBytes), "LDKCVec_TxidZ Elements"); - else - _res_constr.data = NULL; - int8_tArray* _res_vals = (int8_tArray*)(_res + 4); - for (size_t m = 0; m < _res_constr.datalen; m++) { - int8_tArray _res_conv_12 = _res_vals[m]; - LDKThirtyTwoBytes _res_conv_12_ref; - CHECK(*((uint32_t*)_res_conv_12) == 32); - memcpy(_res_conv_12_ref.data, (uint8_t*)(_res_conv_12 + 4), 32); - _res_constr.data[m] = _res_conv_12_ref; - } - CVec_TxidZ_free(_res_constr); +static void LDKPersist_JCalls_cloned(LDKPersist* new_obj) { + LDKPersist_JCalls *j_calls = (LDKPersist_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKPersist LDKPersist_init (/*TODO: JS Object Reference */void* o) { + LDKPersist_JCalls *calls = MALLOC(sizeof(LDKPersist_JCalls), "LDKPersist_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_ok() { + LDKPersist ret = { + .this_arg = (void*) calls, + .persist_new_channel = persist_new_channel_LDKPersist_jcall, + .update_persisted_channel = update_persisted_channel_LDKPersist_jcall, + .free = LDKPersist_JCalls_free, + }; + return ret; +} +long __attribute__((visibility("default"))) TS_LDKPersist_new(/*TODO: JS Object Reference */void* o) { + LDKPersist *res_ptr = MALLOC(sizeof(LDKPersist), "LDKPersist"); + *res_ptr = LDKPersist_init(o); + return (long)res_ptr; +} +uint32_t __attribute__((visibility("default"))) TS_Persist_persist_new_channel(uint32_t this_arg, uint32_t channel_id, uint32_t data, uint32_t update_id) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKPersist* this_arg_conv = (LDKPersist*)this_arg_ptr; + LDKOutPoint channel_id_conv; + channel_id_conv.inner = (void*)(channel_id & (~1)); + channel_id_conv.is_owned = (channel_id & 1) || (channel_id == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_id_conv); + channel_id_conv = OutPoint_clone(&channel_id_conv); + LDKChannelMonitor data_conv; + data_conv.inner = (void*)(data & (~1)); + data_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(data_conv); + LDKMonitorUpdateId update_id_conv; + update_id_conv.inner = (void*)(update_id & (~1)); + update_id_conv.is_owned = (update_id & 1) || (update_id == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_id_conv); + update_id_conv = MonitorUpdateId_clone(&update_id_conv); LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); - *ret_conv = CResult_NoneChannelMonitorUpdateErrZ_ok(); + *ret_conv = (this_arg_conv->persist_new_channel)(this_arg_conv->this_arg, channel_id_conv, &data_conv, update_id_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_err(uint32_t e) { - LDKChannelMonitorUpdateErr e_conv = LDKChannelMonitorUpdateErr_from_js(e); +uint32_t __attribute__((visibility("default"))) TS_Persist_update_persisted_channel(uint32_t this_arg, uint32_t channel_id, uint32_t update, uint32_t data, uint32_t update_id) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKPersist* this_arg_conv = (LDKPersist*)this_arg_ptr; + LDKOutPoint channel_id_conv; + channel_id_conv.inner = (void*)(channel_id & (~1)); + channel_id_conv.is_owned = (channel_id & 1) || (channel_id == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_id_conv); + channel_id_conv = OutPoint_clone(&channel_id_conv); + LDKChannelMonitorUpdate update_conv; + update_conv.inner = (void*)(update & (~1)); + update_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_conv); + LDKChannelMonitor data_conv; + data_conv.inner = (void*)(data & (~1)); + data_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(data_conv); + LDKMonitorUpdateId update_id_conv; + update_id_conv.inner = (void*)(update_id & (~1)); + update_id_conv.is_owned = (update_id & 1) || (update_id == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_id_conv); + update_id_conv = MonitorUpdateId_clone(&update_id_conv); LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); - *ret_conv = CResult_NoneChannelMonitorUpdateErrZ_err(e_conv); + *ret_conv = (this_arg_conv->update_persisted_channel)(this_arg_conv->this_arg, channel_id_conv, &update_conv, &data_conv, update_id_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_is_ok(uint32_t o) { - LDKCResult_NoneChannelMonitorUpdateErrZ* o_conv = (LDKCResult_NoneChannelMonitorUpdateErrZ*)(o & ~1); - jboolean ret_val = CResult_NoneChannelMonitorUpdateErrZ_is_ok(o_conv); - return ret_val; +typedef struct LDKChannelMessageHandler_JCalls { + atomic_size_t refcnt; + LDKMessageSendEventsProvider_JCalls* MessageSendEventsProvider; + uint32_t handle_open_channel_meth; + uint32_t handle_accept_channel_meth; + uint32_t handle_funding_created_meth; + uint32_t handle_funding_signed_meth; + uint32_t handle_funding_locked_meth; + uint32_t handle_shutdown_meth; + uint32_t handle_closing_signed_meth; + uint32_t handle_update_add_htlc_meth; + uint32_t handle_update_fulfill_htlc_meth; + uint32_t handle_update_fail_htlc_meth; + uint32_t handle_update_fail_malformed_htlc_meth; + uint32_t handle_commitment_signed_meth; + uint32_t handle_revoke_and_ack_meth; + uint32_t handle_update_fee_meth; + uint32_t handle_announcement_signatures_meth; + uint32_t peer_disconnected_meth; + uint32_t peer_connected_meth; + uint32_t handle_channel_reestablish_meth; + uint32_t handle_channel_update_meth; + uint32_t handle_error_meth; +} LDKChannelMessageHandler_JCalls; +static void LDKChannelMessageHandler_JCalls_free(void* this_arg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->handle_open_channel_meth); + js_free_function_ptr(j_calls->handle_accept_channel_meth); + js_free_function_ptr(j_calls->handle_funding_created_meth); + js_free_function_ptr(j_calls->handle_funding_signed_meth); + js_free_function_ptr(j_calls->handle_funding_locked_meth); + js_free_function_ptr(j_calls->handle_shutdown_meth); + js_free_function_ptr(j_calls->handle_closing_signed_meth); + js_free_function_ptr(j_calls->handle_update_add_htlc_meth); + js_free_function_ptr(j_calls->handle_update_fulfill_htlc_meth); + js_free_function_ptr(j_calls->handle_update_fail_htlc_meth); + js_free_function_ptr(j_calls->handle_update_fail_malformed_htlc_meth); + js_free_function_ptr(j_calls->handle_commitment_signed_meth); + js_free_function_ptr(j_calls->handle_revoke_and_ack_meth); + js_free_function_ptr(j_calls->handle_update_fee_meth); + js_free_function_ptr(j_calls->handle_announcement_signatures_meth); + js_free_function_ptr(j_calls->peer_disconnected_meth); + js_free_function_ptr(j_calls->peer_connected_meth); + js_free_function_ptr(j_calls->handle_channel_reestablish_meth); + js_free_function_ptr(j_calls->handle_channel_update_meth); + js_free_function_ptr(j_calls->handle_error_meth); + FREE(j_calls); + } } - -void __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_NoneChannelMonitorUpdateErrZ _res_conv = *(LDKCResult_NoneChannelMonitorUpdateErrZ*)(_res_ptr); - FREE((void*)_res); - CResult_NoneChannelMonitorUpdateErrZ_free(_res_conv); +void handle_open_channel_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, LDKInitFeatures their_features, const LDKOpenChannel * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKInitFeatures their_features_var = their_features; + uint64_t their_features_ref = 0; + CHECK((((uint64_t)their_features_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&their_features_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(their_features_var); + their_features_ref = (uint64_t)their_features_var.inner; + if (their_features_var.is_owned) { + their_features_ref |= 1; + } + LDKOpenChannel msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = OpenChannel_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_3(j_calls->handle_open_channel_meth, (uint32_t)their_node_id_arr, (uint32_t)their_features_ref, (uint32_t)msg_ref); } - -static inline uint64_t CResult_NoneChannelMonitorUpdateErrZ_clone_ptr(LDKCResult_NoneChannelMonitorUpdateErrZ *NONNULL_PTR arg) { - LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); - *ret_conv = CResult_NoneChannelMonitorUpdateErrZ_clone(arg); - return (uint64_t)ret_conv; +void handle_accept_channel_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, LDKInitFeatures their_features, const LDKAcceptChannel * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKInitFeatures their_features_var = their_features; + uint64_t their_features_ref = 0; + CHECK((((uint64_t)their_features_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&their_features_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(their_features_var); + their_features_ref = (uint64_t)their_features_var.inner; + if (their_features_var.is_owned) { + their_features_ref |= 1; + } + LDKAcceptChannel msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = AcceptChannel_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_3(j_calls->handle_accept_channel_meth, (uint32_t)their_node_id_arr, (uint32_t)their_features_ref, (uint32_t)msg_ref); } -int64_t __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_clone_ptr(uint32_t arg) { - LDKCResult_NoneChannelMonitorUpdateErrZ* arg_conv = (LDKCResult_NoneChannelMonitorUpdateErrZ*)(arg & ~1); - int64_t ret_val = CResult_NoneChannelMonitorUpdateErrZ_clone_ptr(arg_conv); - return ret_val; +void handle_funding_created_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKFundingCreated * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKFundingCreated msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = FundingCreated_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_funding_created_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_clone(uint32_t orig) { - LDKCResult_NoneChannelMonitorUpdateErrZ* orig_conv = (LDKCResult_NoneChannelMonitorUpdateErrZ*)(orig & ~1); - LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); - *ret_conv = CResult_NoneChannelMonitorUpdateErrZ_clone(orig_conv); - return (uint64_t)ret_conv; +void handle_funding_signed_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKFundingSigned * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKFundingSigned msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = FundingSigned_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_funding_signed_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); +} +void handle_funding_locked_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKFundingLocked * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKFundingLocked msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = FundingLocked_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_funding_locked_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); +} +void handle_shutdown_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKInitFeatures * their_features, const LDKShutdown * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKInitFeatures their_features_var = *their_features; + uint64_t their_features_ref = 0; + their_features_var = InitFeatures_clone(their_features); + CHECK((((uint64_t)their_features_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&their_features_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(their_features_var); + their_features_ref = (uint64_t)their_features_var.inner; + if (their_features_var.is_owned) { + their_features_ref |= 1; + } + LDKShutdown msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = Shutdown_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_3(j_calls->handle_shutdown_meth, (uint32_t)their_node_id_arr, (uint32_t)their_features_ref, (uint32_t)msg_ref); +} +void handle_closing_signed_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKClosingSigned * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKClosingSigned msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = ClosingSigned_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_closing_signed_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } - -void __attribute__((visibility("default"))) TS_CVec_MonitorEventZ_free(uint32_tArray _res) { - LDKCVec_MonitorEventZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKMonitorEvent), "LDKCVec_MonitorEventZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t o = 0; o < _res_constr.datalen; o++) { - uint32_t _res_conv_14 = _res_vals[o]; - void* _res_conv_14_ptr = (void*)(((uint64_t)_res_conv_14) & ~1); - CHECK_ACCESS(_res_conv_14_ptr); - LDKMonitorEvent _res_conv_14_conv = *(LDKMonitorEvent*)(_res_conv_14_ptr); - FREE((void*)_res_conv_14); - _res_constr.data[o] = _res_conv_14_conv; +void handle_update_add_htlc_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateAddHTLC * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKUpdateAddHTLC msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = UpdateAddHTLC_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; } - CVec_MonitorEventZ_free(_res_constr); + js_invoke_function_2(j_calls->handle_update_add_htlc_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } - -uint32_t __attribute__((visibility("default"))) TS_COption_C2Tuple_usizeTransactionZZ_some(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKC2Tuple_usizeTransactionZ o_conv = *(LDKC2Tuple_usizeTransactionZ*)(o_ptr); - o_conv = C2Tuple_usizeTransactionZ_clone((LDKC2Tuple_usizeTransactionZ*)(((uint64_t)o) & ~1)); - LDKCOption_C2Tuple_usizeTransactionZZ *ret_copy = MALLOC(sizeof(LDKCOption_C2Tuple_usizeTransactionZZ), "LDKCOption_C2Tuple_usizeTransactionZZ"); - *ret_copy = COption_C2Tuple_usizeTransactionZZ_some(o_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void handle_update_fulfill_htlc_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateFulfillHTLC * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKUpdateFulfillHTLC msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = UpdateFulfillHTLC_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_update_fulfill_htlc_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } - -uint32_t __attribute__((visibility("default"))) TS_COption_C2Tuple_usizeTransactionZZ_none() { - LDKCOption_C2Tuple_usizeTransactionZZ *ret_copy = MALLOC(sizeof(LDKCOption_C2Tuple_usizeTransactionZZ), "LDKCOption_C2Tuple_usizeTransactionZZ"); - *ret_copy = COption_C2Tuple_usizeTransactionZZ_none(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void handle_update_fail_htlc_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateFailHTLC * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKUpdateFailHTLC msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = UpdateFailHTLC_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_update_fail_htlc_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } - -void __attribute__((visibility("default"))) TS_COption_C2Tuple_usizeTransactionZZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCOption_C2Tuple_usizeTransactionZZ _res_conv = *(LDKCOption_C2Tuple_usizeTransactionZZ*)(_res_ptr); - FREE((void*)_res); - COption_C2Tuple_usizeTransactionZZ_free(_res_conv); +void handle_update_fail_malformed_htlc_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateFailMalformedHTLC * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKUpdateFailMalformedHTLC msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = UpdateFailMalformedHTLC_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_update_fail_malformed_htlc_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } - -static inline uint64_t COption_C2Tuple_usizeTransactionZZ_clone_ptr(LDKCOption_C2Tuple_usizeTransactionZZ *NONNULL_PTR arg) { - LDKCOption_C2Tuple_usizeTransactionZZ *ret_copy = MALLOC(sizeof(LDKCOption_C2Tuple_usizeTransactionZZ), "LDKCOption_C2Tuple_usizeTransactionZZ"); - *ret_copy = COption_C2Tuple_usizeTransactionZZ_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void handle_commitment_signed_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKCommitmentSigned * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKCommitmentSigned msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = CommitmentSigned_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_commitment_signed_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } -int64_t __attribute__((visibility("default"))) TS_COption_C2Tuple_usizeTransactionZZ_clone_ptr(uint32_t arg) { - LDKCOption_C2Tuple_usizeTransactionZZ* arg_conv = (LDKCOption_C2Tuple_usizeTransactionZZ*)arg; - int64_t ret_val = COption_C2Tuple_usizeTransactionZZ_clone_ptr(arg_conv); - return ret_val; +void handle_revoke_and_ack_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKRevokeAndACK * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKRevokeAndACK msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = RevokeAndACK_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_revoke_and_ack_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } - -uint32_t __attribute__((visibility("default"))) TS_COption_C2Tuple_usizeTransactionZZ_clone(uint32_t orig) { - LDKCOption_C2Tuple_usizeTransactionZZ* orig_conv = (LDKCOption_C2Tuple_usizeTransactionZZ*)orig; - LDKCOption_C2Tuple_usizeTransactionZZ *ret_copy = MALLOC(sizeof(LDKCOption_C2Tuple_usizeTransactionZZ), "LDKCOption_C2Tuple_usizeTransactionZZ"); - *ret_copy = COption_C2Tuple_usizeTransactionZZ_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void handle_update_fee_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateFee * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKUpdateFee msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = UpdateFee_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_update_fee_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } - -uint32_t __attribute__((visibility("default"))) TS_COption_ClosureReasonZ_some(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKClosureReason o_conv = *(LDKClosureReason*)(o_ptr); - o_conv = ClosureReason_clone((LDKClosureReason*)(((uint64_t)o) & ~1)); - LDKCOption_ClosureReasonZ *ret_copy = MALLOC(sizeof(LDKCOption_ClosureReasonZ), "LDKCOption_ClosureReasonZ"); - *ret_copy = COption_ClosureReasonZ_some(o_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void handle_announcement_signatures_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKAnnouncementSignatures * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKAnnouncementSignatures msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = AnnouncementSignatures_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_announcement_signatures_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } - -uint32_t __attribute__((visibility("default"))) TS_COption_ClosureReasonZ_none() { - LDKCOption_ClosureReasonZ *ret_copy = MALLOC(sizeof(LDKCOption_ClosureReasonZ), "LDKCOption_ClosureReasonZ"); - *ret_copy = COption_ClosureReasonZ_none(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void peer_disconnected_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, bool no_connection_possible) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + js_invoke_function_2(j_calls->peer_disconnected_meth, (uint32_t)their_node_id_arr, (uint32_t)no_connection_possible); } - -void __attribute__((visibility("default"))) TS_COption_ClosureReasonZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCOption_ClosureReasonZ _res_conv = *(LDKCOption_ClosureReasonZ*)(_res_ptr); - FREE((void*)_res); - COption_ClosureReasonZ_free(_res_conv); +void peer_connected_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKInit * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKInit msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = Init_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->peer_connected_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } - -static inline uint64_t COption_ClosureReasonZ_clone_ptr(LDKCOption_ClosureReasonZ *NONNULL_PTR arg) { - LDKCOption_ClosureReasonZ *ret_copy = MALLOC(sizeof(LDKCOption_ClosureReasonZ), "LDKCOption_ClosureReasonZ"); - *ret_copy = COption_ClosureReasonZ_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void handle_channel_reestablish_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKChannelReestablish * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKChannelReestablish msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = ChannelReestablish_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_channel_reestablish_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } -int64_t __attribute__((visibility("default"))) TS_COption_ClosureReasonZ_clone_ptr(uint32_t arg) { - LDKCOption_ClosureReasonZ* arg_conv = (LDKCOption_ClosureReasonZ*)arg; - int64_t ret_val = COption_ClosureReasonZ_clone_ptr(arg_conv); - return ret_val; +void handle_channel_update_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKChannelUpdate * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKChannelUpdate msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = ChannelUpdate_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_channel_update_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } - -uint32_t __attribute__((visibility("default"))) TS_COption_ClosureReasonZ_clone(uint32_t orig) { - LDKCOption_ClosureReasonZ* orig_conv = (LDKCOption_ClosureReasonZ*)orig; - LDKCOption_ClosureReasonZ *ret_copy = MALLOC(sizeof(LDKCOption_ClosureReasonZ), "LDKCOption_ClosureReasonZ"); - *ret_copy = COption_ClosureReasonZ_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void handle_error_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKErrorMessage * msg) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKErrorMessage msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = ErrorMessage_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + js_invoke_function_2(j_calls->handle_error_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_ok(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKCOption_ClosureReasonZ o_conv = *(LDKCOption_ClosureReasonZ*)(o_ptr); - o_conv = COption_ClosureReasonZ_clone((LDKCOption_ClosureReasonZ*)(((uint64_t)o) & ~1)); - LDKCResult_COption_ClosureReasonZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_ClosureReasonZDecodeErrorZ), "LDKCResult_COption_ClosureReasonZDecodeErrorZ"); - *ret_conv = CResult_COption_ClosureReasonZDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +static void LDKChannelMessageHandler_JCalls_cloned(LDKChannelMessageHandler* new_obj) { + LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); + atomic_fetch_add_explicit(&j_calls->MessageSendEventsProvider->refcnt, 1, memory_order_release); } +static inline LDKChannelMessageHandler LDKChannelMessageHandler_init (/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */void* MessageSendEventsProvider) { + LDKChannelMessageHandler_JCalls *calls = MALLOC(sizeof(LDKChannelMessageHandler_JCalls), "LDKChannelMessageHandler_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -uint32_t __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_COption_ClosureReasonZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_ClosureReasonZDecodeErrorZ), "LDKCResult_COption_ClosureReasonZDecodeErrorZ"); - *ret_conv = CResult_COption_ClosureReasonZDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; + LDKChannelMessageHandler ret = { + .this_arg = (void*) calls, + .handle_open_channel = handle_open_channel_LDKChannelMessageHandler_jcall, + .handle_accept_channel = handle_accept_channel_LDKChannelMessageHandler_jcall, + .handle_funding_created = handle_funding_created_LDKChannelMessageHandler_jcall, + .handle_funding_signed = handle_funding_signed_LDKChannelMessageHandler_jcall, + .handle_funding_locked = handle_funding_locked_LDKChannelMessageHandler_jcall, + .handle_shutdown = handle_shutdown_LDKChannelMessageHandler_jcall, + .handle_closing_signed = handle_closing_signed_LDKChannelMessageHandler_jcall, + .handle_update_add_htlc = handle_update_add_htlc_LDKChannelMessageHandler_jcall, + .handle_update_fulfill_htlc = handle_update_fulfill_htlc_LDKChannelMessageHandler_jcall, + .handle_update_fail_htlc = handle_update_fail_htlc_LDKChannelMessageHandler_jcall, + .handle_update_fail_malformed_htlc = handle_update_fail_malformed_htlc_LDKChannelMessageHandler_jcall, + .handle_commitment_signed = handle_commitment_signed_LDKChannelMessageHandler_jcall, + .handle_revoke_and_ack = handle_revoke_and_ack_LDKChannelMessageHandler_jcall, + .handle_update_fee = handle_update_fee_LDKChannelMessageHandler_jcall, + .handle_announcement_signatures = handle_announcement_signatures_LDKChannelMessageHandler_jcall, + .peer_disconnected = peer_disconnected_LDKChannelMessageHandler_jcall, + .peer_connected = peer_connected_LDKChannelMessageHandler_jcall, + .handle_channel_reestablish = handle_channel_reestablish_LDKChannelMessageHandler_jcall, + .handle_channel_update = handle_channel_update_LDKChannelMessageHandler_jcall, + .handle_error = handle_error_LDKChannelMessageHandler_jcall, + .free = LDKChannelMessageHandler_JCalls_free, + .MessageSendEventsProvider = LDKMessageSendEventsProvider_init(MessageSendEventsProvider), + }; + calls->MessageSendEventsProvider = ret.MessageSendEventsProvider.this_arg; + return ret; } - -jboolean __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_COption_ClosureReasonZDecodeErrorZ* o_conv = (LDKCResult_COption_ClosureReasonZDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_COption_ClosureReasonZDecodeErrorZ_is_ok(o_conv); - return ret_val; +long __attribute__((visibility("default"))) TS_LDKChannelMessageHandler_new(/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */ void* MessageSendEventsProvider) { + LDKChannelMessageHandler *res_ptr = MALLOC(sizeof(LDKChannelMessageHandler), "LDKChannelMessageHandler"); + *res_ptr = LDKChannelMessageHandler_init(o, MessageSendEventsProvider); + return (long)res_ptr; } - -void __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_COption_ClosureReasonZDecodeErrorZ _res_conv = *(LDKCResult_COption_ClosureReasonZDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_COption_ClosureReasonZDecodeErrorZ_free(_res_conv); +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_open_channel(uint32_t this_arg, int8_tArray their_node_id, uint32_t their_features, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKInitFeatures their_features_conv; + their_features_conv.inner = (void*)(their_features & (~1)); + their_features_conv.is_owned = (their_features & 1) || (their_features == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(their_features_conv); + their_features_conv = InitFeatures_clone(&their_features_conv); + LDKOpenChannel msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_open_channel)(this_arg_conv->this_arg, their_node_id_ref, their_features_conv, &msg_conv); } -static inline uint64_t CResult_COption_ClosureReasonZDecodeErrorZ_clone_ptr(LDKCResult_COption_ClosureReasonZDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_COption_ClosureReasonZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_ClosureReasonZDecodeErrorZ), "LDKCResult_COption_ClosureReasonZDecodeErrorZ"); - *ret_conv = CResult_COption_ClosureReasonZDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_COption_ClosureReasonZDecodeErrorZ* arg_conv = (LDKCResult_COption_ClosureReasonZDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_COption_ClosureReasonZDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_accept_channel(uint32_t this_arg, int8_tArray their_node_id, uint32_t their_features, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKInitFeatures their_features_conv; + their_features_conv.inner = (void*)(their_features & (~1)); + their_features_conv.is_owned = (their_features & 1) || (their_features == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(their_features_conv); + their_features_conv = InitFeatures_clone(&their_features_conv); + LDKAcceptChannel msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_accept_channel)(this_arg_conv->this_arg, their_node_id_ref, their_features_conv, &msg_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_COption_ClosureReasonZDecodeErrorZ* orig_conv = (LDKCResult_COption_ClosureReasonZDecodeErrorZ*)(orig & ~1); - LDKCResult_COption_ClosureReasonZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_ClosureReasonZDecodeErrorZ), "LDKCResult_COption_ClosureReasonZDecodeErrorZ"); - *ret_conv = CResult_COption_ClosureReasonZDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_funding_created(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKFundingCreated msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_funding_created)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -uint32_t __attribute__((visibility("default"))) TS_COption_NetworkUpdateZ_some(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKNetworkUpdate o_conv = *(LDKNetworkUpdate*)(o_ptr); - o_conv = NetworkUpdate_clone((LDKNetworkUpdate*)(((uint64_t)o) & ~1)); - LDKCOption_NetworkUpdateZ *ret_copy = MALLOC(sizeof(LDKCOption_NetworkUpdateZ), "LDKCOption_NetworkUpdateZ"); - *ret_copy = COption_NetworkUpdateZ_some(o_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_funding_signed(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKFundingSigned msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_funding_signed)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -uint32_t __attribute__((visibility("default"))) TS_COption_NetworkUpdateZ_none() { - LDKCOption_NetworkUpdateZ *ret_copy = MALLOC(sizeof(LDKCOption_NetworkUpdateZ), "LDKCOption_NetworkUpdateZ"); - *ret_copy = COption_NetworkUpdateZ_none(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_funding_locked(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKFundingLocked msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_funding_locked)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -void __attribute__((visibility("default"))) TS_COption_NetworkUpdateZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCOption_NetworkUpdateZ _res_conv = *(LDKCOption_NetworkUpdateZ*)(_res_ptr); - FREE((void*)_res); - COption_NetworkUpdateZ_free(_res_conv); +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_shutdown(uint32_t this_arg, int8_tArray their_node_id, uint32_t their_features, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKInitFeatures their_features_conv; + their_features_conv.inner = (void*)(their_features & (~1)); + their_features_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(their_features_conv); + LDKShutdown msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_shutdown)(this_arg_conv->this_arg, their_node_id_ref, &their_features_conv, &msg_conv); } -static inline uint64_t COption_NetworkUpdateZ_clone_ptr(LDKCOption_NetworkUpdateZ *NONNULL_PTR arg) { - LDKCOption_NetworkUpdateZ *ret_copy = MALLOC(sizeof(LDKCOption_NetworkUpdateZ), "LDKCOption_NetworkUpdateZ"); - *ret_copy = COption_NetworkUpdateZ_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_closing_signed(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKClosingSigned msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_closing_signed)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -int64_t __attribute__((visibility("default"))) TS_COption_NetworkUpdateZ_clone_ptr(uint32_t arg) { - LDKCOption_NetworkUpdateZ* arg_conv = (LDKCOption_NetworkUpdateZ*)arg; - int64_t ret_val = COption_NetworkUpdateZ_clone_ptr(arg_conv); - return ret_val; + +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_update_add_htlc(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKUpdateAddHTLC msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_update_add_htlc)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -uint32_t __attribute__((visibility("default"))) TS_COption_NetworkUpdateZ_clone(uint32_t orig) { - LDKCOption_NetworkUpdateZ* orig_conv = (LDKCOption_NetworkUpdateZ*)orig; - LDKCOption_NetworkUpdateZ *ret_copy = MALLOC(sizeof(LDKCOption_NetworkUpdateZ), "LDKCOption_NetworkUpdateZ"); - *ret_copy = COption_NetworkUpdateZ_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_update_fulfill_htlc(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKUpdateFulfillHTLC msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_update_fulfill_htlc)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -void __attribute__((visibility("default"))) TS_CVec_SpendableOutputDescriptorZ_free(uint32_tArray _res) { - LDKCVec_SpendableOutputDescriptorZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKSpendableOutputDescriptor), "LDKCVec_SpendableOutputDescriptorZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t b = 0; b < _res_constr.datalen; b++) { - uint32_t _res_conv_27 = _res_vals[b]; - void* _res_conv_27_ptr = (void*)(((uint64_t)_res_conv_27) & ~1); - CHECK_ACCESS(_res_conv_27_ptr); - LDKSpendableOutputDescriptor _res_conv_27_conv = *(LDKSpendableOutputDescriptor*)(_res_conv_27_ptr); - FREE((void*)_res_conv_27); - _res_constr.data[b] = _res_conv_27_conv; - } - CVec_SpendableOutputDescriptorZ_free(_res_constr); +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_update_fail_htlc(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKUpdateFailHTLC msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_update_fail_htlc)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -uint32_t __attribute__((visibility("default"))) TS_COption_EventZ_some(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKEvent o_conv = *(LDKEvent*)(o_ptr); - o_conv = Event_clone((LDKEvent*)(((uint64_t)o) & ~1)); - LDKCOption_EventZ *ret_copy = MALLOC(sizeof(LDKCOption_EventZ), "LDKCOption_EventZ"); - *ret_copy = COption_EventZ_some(o_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_update_fail_malformed_htlc(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKUpdateFailMalformedHTLC msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_update_fail_malformed_htlc)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -uint32_t __attribute__((visibility("default"))) TS_COption_EventZ_none() { - LDKCOption_EventZ *ret_copy = MALLOC(sizeof(LDKCOption_EventZ), "LDKCOption_EventZ"); - *ret_copy = COption_EventZ_none(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_commitment_signed(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKCommitmentSigned msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_commitment_signed)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -void __attribute__((visibility("default"))) TS_COption_EventZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCOption_EventZ _res_conv = *(LDKCOption_EventZ*)(_res_ptr); - FREE((void*)_res); - COption_EventZ_free(_res_conv); +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_revoke_and_ack(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKRevokeAndACK msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_revoke_and_ack)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -static inline uint64_t COption_EventZ_clone_ptr(LDKCOption_EventZ *NONNULL_PTR arg) { - LDKCOption_EventZ *ret_copy = MALLOC(sizeof(LDKCOption_EventZ), "LDKCOption_EventZ"); - *ret_copy = COption_EventZ_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_update_fee(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKUpdateFee msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_update_fee)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -int64_t __attribute__((visibility("default"))) TS_COption_EventZ_clone_ptr(uint32_t arg) { - LDKCOption_EventZ* arg_conv = (LDKCOption_EventZ*)arg; - int64_t ret_val = COption_EventZ_clone_ptr(arg_conv); - return ret_val; + +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_announcement_signatures(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKAnnouncementSignatures msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_announcement_signatures)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -uint32_t __attribute__((visibility("default"))) TS_COption_EventZ_clone(uint32_t orig) { - LDKCOption_EventZ* orig_conv = (LDKCOption_EventZ*)orig; - LDKCOption_EventZ *ret_copy = MALLOC(sizeof(LDKCOption_EventZ), "LDKCOption_EventZ"); - *ret_copy = COption_EventZ_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_peer_disconnected(uint32_t this_arg, int8_tArray their_node_id, jboolean no_connection_possible) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + (this_arg_conv->peer_disconnected)(this_arg_conv->this_arg, their_node_id_ref, no_connection_possible); } -uint32_t __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_ok(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKCOption_EventZ o_conv = *(LDKCOption_EventZ*)(o_ptr); - o_conv = COption_EventZ_clone((LDKCOption_EventZ*)(((uint64_t)o) & ~1)); - LDKCResult_COption_EventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_EventZDecodeErrorZ), "LDKCResult_COption_EventZDecodeErrorZ"); - *ret_conv = CResult_COption_EventZDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_peer_connected(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKInit msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->peer_connected)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_COption_EventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_EventZDecodeErrorZ), "LDKCResult_COption_EventZDecodeErrorZ"); - *ret_conv = CResult_COption_EventZDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_channel_reestablish(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKChannelReestablish msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_channel_reestablish)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -jboolean __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_COption_EventZDecodeErrorZ* o_conv = (LDKCResult_COption_EventZDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_COption_EventZDecodeErrorZ_is_ok(o_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_channel_update(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKChannelUpdate msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_channel_update)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -void __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_COption_EventZDecodeErrorZ _res_conv = *(LDKCResult_COption_EventZDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_COption_EventZDecodeErrorZ_free(_res_conv); +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_handle_error(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKErrorMessage msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + (this_arg_conv->handle_error)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv); } -static inline uint64_t CResult_COption_EventZDecodeErrorZ_clone_ptr(LDKCResult_COption_EventZDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_COption_EventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_EventZDecodeErrorZ), "LDKCResult_COption_EventZDecodeErrorZ"); - *ret_conv = CResult_COption_EventZDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +typedef struct LDKRoutingMessageHandler_JCalls { + atomic_size_t refcnt; + LDKMessageSendEventsProvider_JCalls* MessageSendEventsProvider; + uint32_t handle_node_announcement_meth; + uint32_t handle_channel_announcement_meth; + uint32_t handle_channel_update_meth; + uint32_t get_next_channel_announcements_meth; + uint32_t get_next_node_announcements_meth; + uint32_t sync_routing_table_meth; + uint32_t handle_reply_channel_range_meth; + uint32_t handle_reply_short_channel_ids_end_meth; + uint32_t handle_query_channel_range_meth; + uint32_t handle_query_short_channel_ids_meth; +} LDKRoutingMessageHandler_JCalls; +static void LDKRoutingMessageHandler_JCalls_free(void* this_arg) { + LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->handle_node_announcement_meth); + js_free_function_ptr(j_calls->handle_channel_announcement_meth); + js_free_function_ptr(j_calls->handle_channel_update_meth); + js_free_function_ptr(j_calls->get_next_channel_announcements_meth); + js_free_function_ptr(j_calls->get_next_node_announcements_meth); + js_free_function_ptr(j_calls->sync_routing_table_meth); + js_free_function_ptr(j_calls->handle_reply_channel_range_meth); + js_free_function_ptr(j_calls->handle_reply_short_channel_ids_end_meth); + js_free_function_ptr(j_calls->handle_query_channel_range_meth); + js_free_function_ptr(j_calls->handle_query_short_channel_ids_meth); + FREE(j_calls); + } } -int64_t __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_COption_EventZDecodeErrorZ* arg_conv = (LDKCResult_COption_EventZDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_COption_EventZDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +LDKCResult_boolLightningErrorZ handle_node_announcement_LDKRoutingMessageHandler_jcall(const void* this_arg, const LDKNodeAnnouncement * msg) { + LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; + LDKNodeAnnouncement msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = NodeAnnouncement_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + uint32_t ret = js_invoke_function_1(j_calls->handle_node_announcement_meth, (uint32_t)msg_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_boolLightningErrorZ ret_conv = *(LDKCResult_boolLightningErrorZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_COption_EventZDecodeErrorZ* orig_conv = (LDKCResult_COption_EventZDecodeErrorZ*)(orig & ~1); - LDKCResult_COption_EventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_EventZDecodeErrorZ), "LDKCResult_COption_EventZDecodeErrorZ"); - *ret_conv = CResult_COption_EventZDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +LDKCResult_boolLightningErrorZ handle_channel_announcement_LDKRoutingMessageHandler_jcall(const void* this_arg, const LDKChannelAnnouncement * msg) { + LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; + LDKChannelAnnouncement msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = ChannelAnnouncement_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + uint32_t ret = js_invoke_function_1(j_calls->handle_channel_announcement_meth, (uint32_t)msg_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_boolLightningErrorZ ret_conv = *(LDKCResult_boolLightningErrorZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } - -void __attribute__((visibility("default"))) TS_CVec_MessageSendEventZ_free(uint32_tArray _res) { - LDKCVec_MessageSendEventZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKMessageSendEvent), "LDKCVec_MessageSendEventZ Elements"); +LDKCResult_boolLightningErrorZ handle_channel_update_LDKRoutingMessageHandler_jcall(const void* this_arg, const LDKChannelUpdate * msg) { + LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; + LDKChannelUpdate msg_var = *msg; + uint64_t msg_ref = 0; + msg_var = ChannelUpdate_clone(msg); + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + uint32_t ret = js_invoke_function_1(j_calls->handle_channel_update_meth, (uint32_t)msg_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_boolLightningErrorZ ret_conv = *(LDKCResult_boolLightningErrorZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; +} +LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ get_next_channel_announcements_LDKRoutingMessageHandler_jcall(const void* this_arg, uint64_t starting_point, uint8_t batch_amount) { + LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; + uint32_tArray ret = (uint32_tArray)js_invoke_function_2(j_calls->get_next_channel_announcements_meth, (uint32_t)starting_point, (uint32_t)batch_amount); + LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ ret_constr; + ret_constr.datalen = ret->arr_len; + if (ret_constr.datalen > 0) + ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ), "LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ Elements"); + else + ret_constr.data = NULL; + uint32_t* ret_vals = ret->elems; + for (size_t h = 0; h < ret_constr.datalen; h++) { + uint32_t ret_conv_59 = ret_vals[h]; + void* ret_conv_59_ptr = (void*)(((uint64_t)ret_conv_59) & ~1); + CHECK_ACCESS(ret_conv_59_ptr); + LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ ret_conv_59_conv = *(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(ret_conv_59_ptr); + FREE((void*)ret_conv_59); + ret_constr.data[h] = ret_conv_59_conv; + } + return ret_constr; +} +LDKCVec_NodeAnnouncementZ get_next_node_announcements_LDKRoutingMessageHandler_jcall(const void* this_arg, LDKPublicKey starting_point, uint8_t batch_amount) { + LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; + int8_tArray starting_point_arr = init_int8_tArray(33); + memcpy(starting_point_arr->elems, starting_point.compressed_form, 33); + uint32_tArray ret = (uint32_tArray)js_invoke_function_2(j_calls->get_next_node_announcements_meth, (uint32_t)starting_point_arr, (uint32_t)batch_amount); + LDKCVec_NodeAnnouncementZ ret_constr; + ret_constr.datalen = ret->arr_len; + if (ret_constr.datalen > 0) + ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKNodeAnnouncement), "LDKCVec_NodeAnnouncementZ Elements"); else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t s = 0; s < _res_constr.datalen; s++) { - uint32_t _res_conv_18 = _res_vals[s]; - void* _res_conv_18_ptr = (void*)(((uint64_t)_res_conv_18) & ~1); - CHECK_ACCESS(_res_conv_18_ptr); - LDKMessageSendEvent _res_conv_18_conv = *(LDKMessageSendEvent*)(_res_conv_18_ptr); - FREE((void*)_res_conv_18); - _res_constr.data[s] = _res_conv_18_conv; + ret_constr.data = NULL; + uint32_t* ret_vals = ret->elems; + for (size_t s = 0; s < ret_constr.datalen; s++) { + uint32_t ret_conv_18 = ret_vals[s]; + LDKNodeAnnouncement ret_conv_18_conv; + ret_conv_18_conv.inner = (void*)(ret_conv_18 & (~1)); + ret_conv_18_conv.is_owned = (ret_conv_18 & 1) || (ret_conv_18 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_18_conv); + ret_constr.data[s] = ret_conv_18_conv; } - CVec_MessageSendEventZ_free(_res_constr); + return ret_constr; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_ScoringParametersDecodeErrorZ_ok(uint32_t o) { - LDKScoringParameters o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - // Warning: we need a move here but no clone is available for LDKScoringParameters - LDKCResult_ScoringParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ScoringParametersDecodeErrorZ), "LDKCResult_ScoringParametersDecodeErrorZ"); - *ret_conv = CResult_ScoringParametersDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +void sync_routing_table_LDKRoutingMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKInit * init) { + LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKInit init_var = *init; + uint64_t init_ref = 0; + init_var = Init_clone(init); + CHECK((((uint64_t)init_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&init_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(init_var); + init_ref = (uint64_t)init_var.inner; + if (init_var.is_owned) { + init_ref |= 1; + } + js_invoke_function_2(j_calls->sync_routing_table_meth, (uint32_t)their_node_id_arr, (uint32_t)init_ref); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_ScoringParametersDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_ScoringParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ScoringParametersDecodeErrorZ), "LDKCResult_ScoringParametersDecodeErrorZ"); - *ret_conv = CResult_ScoringParametersDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +LDKCResult_NoneLightningErrorZ handle_reply_channel_range_LDKRoutingMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, LDKReplyChannelRange msg) { + LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKReplyChannelRange msg_var = msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + uint32_t ret = js_invoke_function_2(j_calls->handle_reply_channel_range_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } - -jboolean __attribute__((visibility("default"))) TS_CResult_ScoringParametersDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ScoringParametersDecodeErrorZ* o_conv = (LDKCResult_ScoringParametersDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ScoringParametersDecodeErrorZ_is_ok(o_conv); - return ret_val; +LDKCResult_NoneLightningErrorZ handle_reply_short_channel_ids_end_LDKRoutingMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, LDKReplyShortChannelIdsEnd msg) { + LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKReplyShortChannelIdsEnd msg_var = msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + uint32_t ret = js_invoke_function_2(j_calls->handle_reply_short_channel_ids_end_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } - -void __attribute__((visibility("default"))) TS_CResult_ScoringParametersDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_ScoringParametersDecodeErrorZ _res_conv = *(LDKCResult_ScoringParametersDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_ScoringParametersDecodeErrorZ_free(_res_conv); +LDKCResult_NoneLightningErrorZ handle_query_channel_range_LDKRoutingMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, LDKQueryChannelRange msg) { + LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKQueryChannelRange msg_var = msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + uint32_t ret = js_invoke_function_2(j_calls->handle_query_channel_range_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_ScorerDecodeErrorZ_ok(uint32_t o) { - LDKScorer o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - // Warning: we need a move here but no clone is available for LDKScorer - LDKCResult_ScorerDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ScorerDecodeErrorZ), "LDKCResult_ScorerDecodeErrorZ"); - *ret_conv = CResult_ScorerDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +LDKCResult_NoneLightningErrorZ handle_query_short_channel_ids_LDKRoutingMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, LDKQueryShortChannelIds msg) { + LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg; + int8_tArray their_node_id_arr = init_int8_tArray(33); + memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33); + LDKQueryShortChannelIds msg_var = msg; + uint64_t msg_ref = 0; + CHECK((((uint64_t)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var); + msg_ref = (uint64_t)msg_var.inner; + if (msg_var.is_owned) { + msg_ref |= 1; + } + uint32_t ret = js_invoke_function_2(j_calls->handle_query_short_channel_ids_meth, (uint32_t)their_node_id_arr, (uint32_t)msg_ref); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_ScorerDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_ScorerDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ScorerDecodeErrorZ), "LDKCResult_ScorerDecodeErrorZ"); - *ret_conv = CResult_ScorerDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +static void LDKRoutingMessageHandler_JCalls_cloned(LDKRoutingMessageHandler* new_obj) { + LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); + atomic_fetch_add_explicit(&j_calls->MessageSendEventsProvider->refcnt, 1, memory_order_release); } +static inline LDKRoutingMessageHandler LDKRoutingMessageHandler_init (/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */void* MessageSendEventsProvider) { + LDKRoutingMessageHandler_JCalls *calls = MALLOC(sizeof(LDKRoutingMessageHandler_JCalls), "LDKRoutingMessageHandler_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -jboolean __attribute__((visibility("default"))) TS_CResult_ScorerDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ScorerDecodeErrorZ* o_conv = (LDKCResult_ScorerDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ScorerDecodeErrorZ_is_ok(o_conv); - return ret_val; + LDKRoutingMessageHandler ret = { + .this_arg = (void*) calls, + .handle_node_announcement = handle_node_announcement_LDKRoutingMessageHandler_jcall, + .handle_channel_announcement = handle_channel_announcement_LDKRoutingMessageHandler_jcall, + .handle_channel_update = handle_channel_update_LDKRoutingMessageHandler_jcall, + .get_next_channel_announcements = get_next_channel_announcements_LDKRoutingMessageHandler_jcall, + .get_next_node_announcements = get_next_node_announcements_LDKRoutingMessageHandler_jcall, + .sync_routing_table = sync_routing_table_LDKRoutingMessageHandler_jcall, + .handle_reply_channel_range = handle_reply_channel_range_LDKRoutingMessageHandler_jcall, + .handle_reply_short_channel_ids_end = handle_reply_short_channel_ids_end_LDKRoutingMessageHandler_jcall, + .handle_query_channel_range = handle_query_channel_range_LDKRoutingMessageHandler_jcall, + .handle_query_short_channel_ids = handle_query_short_channel_ids_LDKRoutingMessageHandler_jcall, + .free = LDKRoutingMessageHandler_JCalls_free, + .MessageSendEventsProvider = LDKMessageSendEventsProvider_init(MessageSendEventsProvider), + }; + calls->MessageSendEventsProvider = ret.MessageSendEventsProvider.this_arg; + return ret; } - -void __attribute__((visibility("default"))) TS_CResult_ScorerDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_ScorerDecodeErrorZ _res_conv = *(LDKCResult_ScorerDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_ScorerDecodeErrorZ_free(_res_conv); +long __attribute__((visibility("default"))) TS_LDKRoutingMessageHandler_new(/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */ void* MessageSendEventsProvider) { + LDKRoutingMessageHandler *res_ptr = MALLOC(sizeof(LDKRoutingMessageHandler), "LDKRoutingMessageHandler"); + *res_ptr = LDKRoutingMessageHandler_init(o, MessageSendEventsProvider); + return (long)res_ptr; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_InitFeaturesDecodeErrorZ_ok(uint32_t o) { - LDKInitFeatures o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = InitFeatures_clone(&o_conv); - LDKCResult_InitFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitFeaturesDecodeErrorZ), "LDKCResult_InitFeaturesDecodeErrorZ"); - *ret_conv = CResult_InitFeaturesDecodeErrorZ_ok(o_conv); +uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_node_announcement(uint32_t this_arg, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; + LDKNodeAnnouncement msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); + *ret_conv = (this_arg_conv->handle_node_announcement)(this_arg_conv->this_arg, &msg_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InitFeaturesDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_InitFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitFeaturesDecodeErrorZ), "LDKCResult_InitFeaturesDecodeErrorZ"); - *ret_conv = CResult_InitFeaturesDecodeErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_channel_announcement(uint32_t this_arg, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; + LDKChannelAnnouncement msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); + *ret_conv = (this_arg_conv->handle_channel_announcement)(this_arg_conv->this_arg, &msg_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_InitFeaturesDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_InitFeaturesDecodeErrorZ* o_conv = (LDKCResult_InitFeaturesDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_InitFeaturesDecodeErrorZ_is_ok(o_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_CResult_InitFeaturesDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_InitFeaturesDecodeErrorZ _res_conv = *(LDKCResult_InitFeaturesDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_InitFeaturesDecodeErrorZ_free(_res_conv); +uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_channel_update(uint32_t this_arg, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; + LDKChannelUpdate msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); + *ret_conv = (this_arg_conv->handle_channel_update)(this_arg_conv->this_arg, &msg_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelFeaturesDecodeErrorZ_ok(uint32_t o) { - LDKChannelFeatures o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ChannelFeatures_clone(&o_conv); - LDKCResult_ChannelFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelFeaturesDecodeErrorZ), "LDKCResult_ChannelFeaturesDecodeErrorZ"); - *ret_conv = CResult_ChannelFeaturesDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +uint32_tArray __attribute__((visibility("default"))) TS_RoutingMessageHandler_get_next_channel_announcements(uint32_t this_arg, int64_t starting_point, int8_t batch_amount) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; + LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ ret_var = (this_arg_conv->get_next_channel_announcements)(this_arg_conv->this_arg, starting_point, batch_amount); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t h = 0; h < ret_var.datalen; h++) { + LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* ret_conv_59_conv = MALLOC(sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ), "LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ"); + *ret_conv_59_conv = ret_var.data[h]; + ret_arr_ptr[h] = ((uint64_t)ret_conv_59_conv); + } + + FREE(ret_var.data); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelFeaturesDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_ChannelFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelFeaturesDecodeErrorZ), "LDKCResult_ChannelFeaturesDecodeErrorZ"); - *ret_conv = CResult_ChannelFeaturesDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +uint32_tArray __attribute__((visibility("default"))) TS_RoutingMessageHandler_get_next_node_announcements(uint32_t this_arg, int8_tArray starting_point, int8_t batch_amount) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; + LDKPublicKey starting_point_ref; + CHECK(starting_point->arr_len == 33); + memcpy(starting_point_ref.compressed_form, starting_point->elems, 33); + LDKCVec_NodeAnnouncementZ ret_var = (this_arg_conv->get_next_node_announcements)(this_arg_conv->this_arg, starting_point_ref, batch_amount); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t s = 0; s < ret_var.datalen; s++) { + LDKNodeAnnouncement ret_conv_18_var = ret_var.data[s]; + uint64_t ret_conv_18_ref = 0; + CHECK((((uint64_t)ret_conv_18_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_conv_18_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_18_var); + ret_conv_18_ref = (uint64_t)ret_conv_18_var.inner; + if (ret_conv_18_var.is_owned) { + ret_conv_18_ref |= 1; + } + ret_arr_ptr[s] = ret_conv_18_ref; + } + + FREE(ret_var.data); + return ret_arr; } -jboolean __attribute__((visibility("default"))) TS_CResult_ChannelFeaturesDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ChannelFeaturesDecodeErrorZ* o_conv = (LDKCResult_ChannelFeaturesDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ChannelFeaturesDecodeErrorZ_is_ok(o_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_RoutingMessageHandler_sync_routing_table(uint32_t this_arg, int8_tArray their_node_id, uint32_t init) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKInit init_conv; + init_conv.inner = (void*)(init & (~1)); + init_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(init_conv); + (this_arg_conv->sync_routing_table)(this_arg_conv->this_arg, their_node_id_ref, &init_conv); } -void __attribute__((visibility("default"))) TS_CResult_ChannelFeaturesDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_ChannelFeaturesDecodeErrorZ _res_conv = *(LDKCResult_ChannelFeaturesDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_ChannelFeaturesDecodeErrorZ_free(_res_conv); +uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_reply_channel_range(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKReplyChannelRange msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = ReplyChannelRange_clone(&msg_conv); + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = (this_arg_conv->handle_reply_channel_range)(this_arg_conv->this_arg, their_node_id_ref, msg_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NodeFeaturesDecodeErrorZ_ok(uint32_t o) { - LDKNodeFeatures o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = NodeFeatures_clone(&o_conv); - LDKCResult_NodeFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeFeaturesDecodeErrorZ), "LDKCResult_NodeFeaturesDecodeErrorZ"); - *ret_conv = CResult_NodeFeaturesDecodeErrorZ_ok(o_conv); +uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_reply_short_channel_ids_end(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKReplyShortChannelIdsEnd msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = ReplyShortChannelIdsEnd_clone(&msg_conv); + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = (this_arg_conv->handle_reply_short_channel_ids_end)(this_arg_conv->this_arg, their_node_id_ref, msg_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NodeFeaturesDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_NodeFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeFeaturesDecodeErrorZ), "LDKCResult_NodeFeaturesDecodeErrorZ"); - *ret_conv = CResult_NodeFeaturesDecodeErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_query_channel_range(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKQueryChannelRange msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = QueryChannelRange_clone(&msg_conv); + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = (this_arg_conv->handle_query_channel_range)(this_arg_conv->this_arg, their_node_id_ref, msg_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_NodeFeaturesDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_NodeFeaturesDecodeErrorZ* o_conv = (LDKCResult_NodeFeaturesDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_NodeFeaturesDecodeErrorZ_is_ok(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_RoutingMessageHandler_handle_query_short_channel_ids(uint32_t this_arg, int8_tArray their_node_id, uint32_t msg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKRoutingMessageHandler* this_arg_conv = (LDKRoutingMessageHandler*)this_arg_ptr; + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + LDKQueryShortChannelIds msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = QueryShortChannelIds_clone(&msg_conv); + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = (this_arg_conv->handle_query_short_channel_ids)(this_arg_conv->this_arg, their_node_id_ref, msg_conv); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_CResult_NodeFeaturesDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_NodeFeaturesDecodeErrorZ _res_conv = *(LDKCResult_NodeFeaturesDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_NodeFeaturesDecodeErrorZ_free(_res_conv); +typedef struct LDKCustomMessageReader_JCalls { + atomic_size_t refcnt; + uint32_t read_meth; +} LDKCustomMessageReader_JCalls; +static void LDKCustomMessageReader_JCalls_free(void* this_arg) { + LDKCustomMessageReader_JCalls *j_calls = (LDKCustomMessageReader_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->read_meth); + FREE(j_calls); + } } - -uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceFeaturesDecodeErrorZ_ok(uint32_t o) { - LDKInvoiceFeatures o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = InvoiceFeatures_clone(&o_conv); - LDKCResult_InvoiceFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceFeaturesDecodeErrorZ), "LDKCResult_InvoiceFeaturesDecodeErrorZ"); - *ret_conv = CResult_InvoiceFeaturesDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +LDKCResult_COption_TypeZDecodeErrorZ read_LDKCustomMessageReader_jcall(const void* this_arg, uint16_t message_type, LDKu8slice buffer) { + LDKCustomMessageReader_JCalls *j_calls = (LDKCustomMessageReader_JCalls*) this_arg; + LDKu8slice buffer_var = buffer; + int8_tArray buffer_arr = init_int8_tArray(buffer_var.datalen); + memcpy(buffer_arr->elems, buffer_var.data, buffer_var.datalen); + uint32_t ret = js_invoke_function_2(j_calls->read_meth, (uint32_t)message_type, (uint32_t)buffer_arr); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_COption_TypeZDecodeErrorZ ret_conv = *(LDKCResult_COption_TypeZDecodeErrorZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceFeaturesDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_InvoiceFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceFeaturesDecodeErrorZ), "LDKCResult_InvoiceFeaturesDecodeErrorZ"); - *ret_conv = CResult_InvoiceFeaturesDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +static void LDKCustomMessageReader_JCalls_cloned(LDKCustomMessageReader* new_obj) { + LDKCustomMessageReader_JCalls *j_calls = (LDKCustomMessageReader_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKCustomMessageReader LDKCustomMessageReader_init (/*TODO: JS Object Reference */void* o) { + LDKCustomMessageReader_JCalls *calls = MALLOC(sizeof(LDKCustomMessageReader_JCalls), "LDKCustomMessageReader_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -jboolean __attribute__((visibility("default"))) TS_CResult_InvoiceFeaturesDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_InvoiceFeaturesDecodeErrorZ* o_conv = (LDKCResult_InvoiceFeaturesDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_InvoiceFeaturesDecodeErrorZ_is_ok(o_conv); - return ret_val; + LDKCustomMessageReader ret = { + .this_arg = (void*) calls, + .read = read_LDKCustomMessageReader_jcall, + .free = LDKCustomMessageReader_JCalls_free, + }; + return ret; } - -void __attribute__((visibility("default"))) TS_CResult_InvoiceFeaturesDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_InvoiceFeaturesDecodeErrorZ _res_conv = *(LDKCResult_InvoiceFeaturesDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_InvoiceFeaturesDecodeErrorZ_free(_res_conv); +long __attribute__((visibility("default"))) TS_LDKCustomMessageReader_new(/*TODO: JS Object Reference */void* o) { + LDKCustomMessageReader *res_ptr = MALLOC(sizeof(LDKCustomMessageReader), "LDKCustomMessageReader"); + *res_ptr = LDKCustomMessageReader_init(o); + return (long)res_ptr; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTypeFeaturesDecodeErrorZ_ok(uint32_t o) { - LDKChannelTypeFeatures o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ChannelTypeFeatures_clone(&o_conv); - LDKCResult_ChannelTypeFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTypeFeaturesDecodeErrorZ), "LDKCResult_ChannelTypeFeaturesDecodeErrorZ"); - *ret_conv = CResult_ChannelTypeFeaturesDecodeErrorZ_ok(o_conv); +uint32_t __attribute__((visibility("default"))) TS_CustomMessageReader_read(uint32_t this_arg, int16_t message_type, int8_tArray buffer) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKCustomMessageReader* this_arg_conv = (LDKCustomMessageReader*)this_arg_ptr; + LDKu8slice buffer_ref; + buffer_ref.datalen = buffer->arr_len; + buffer_ref.data = buffer->elems; + LDKCResult_COption_TypeZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_TypeZDecodeErrorZ), "LDKCResult_COption_TypeZDecodeErrorZ"); + *ret_conv = (this_arg_conv->read)(this_arg_conv->this_arg, message_type, buffer_ref); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTypeFeaturesDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_ChannelTypeFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTypeFeaturesDecodeErrorZ), "LDKCResult_ChannelTypeFeaturesDecodeErrorZ"); - *ret_conv = CResult_ChannelTypeFeaturesDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +typedef struct LDKCustomMessageHandler_JCalls { + atomic_size_t refcnt; + LDKCustomMessageReader_JCalls* CustomMessageReader; + uint32_t handle_custom_message_meth; + uint32_t get_and_clear_pending_msg_meth; +} LDKCustomMessageHandler_JCalls; +static void LDKCustomMessageHandler_JCalls_free(void* this_arg) { + LDKCustomMessageHandler_JCalls *j_calls = (LDKCustomMessageHandler_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->handle_custom_message_meth); + js_free_function_ptr(j_calls->get_and_clear_pending_msg_meth); + FREE(j_calls); + } +} +LDKCResult_NoneLightningErrorZ handle_custom_message_LDKCustomMessageHandler_jcall(const void* this_arg, LDKType msg, LDKPublicKey sender_node_id) { + LDKCustomMessageHandler_JCalls *j_calls = (LDKCustomMessageHandler_JCalls*) this_arg; + LDKType* msg_ret = MALLOC(sizeof(LDKType), "LDKType"); + *msg_ret = msg; + int8_tArray sender_node_id_arr = init_int8_tArray(33); + memcpy(sender_node_id_arr->elems, sender_node_id.compressed_form, 33); + uint32_t ret = js_invoke_function_2(j_calls->handle_custom_message_meth, (uint32_t)(uint64_t)msg_ret, (uint32_t)sender_node_id_arr); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr); + FREE((void*)ret); + return ret_conv; +} +LDKCVec_C2Tuple_PublicKeyTypeZZ get_and_clear_pending_msg_LDKCustomMessageHandler_jcall(const void* this_arg) { + LDKCustomMessageHandler_JCalls *j_calls = (LDKCustomMessageHandler_JCalls*) this_arg; + uint32_tArray ret = (uint32_tArray)js_invoke_function_0(j_calls->get_and_clear_pending_msg_meth); + LDKCVec_C2Tuple_PublicKeyTypeZZ ret_constr; + ret_constr.datalen = ret->arr_len; + if (ret_constr.datalen > 0) + ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKC2Tuple_PublicKeyTypeZ), "LDKCVec_C2Tuple_PublicKeyTypeZZ Elements"); + else + ret_constr.data = NULL; + uint32_t* ret_vals = ret->elems; + for (size_t z = 0; z < ret_constr.datalen; z++) { + uint32_t ret_conv_25 = ret_vals[z]; + void* ret_conv_25_ptr = (void*)(((uint64_t)ret_conv_25) & ~1); + CHECK_ACCESS(ret_conv_25_ptr); + LDKC2Tuple_PublicKeyTypeZ ret_conv_25_conv = *(LDKC2Tuple_PublicKeyTypeZ*)(ret_conv_25_ptr); + FREE((void*)ret_conv_25); + ret_constr.data[z] = ret_conv_25_conv; + } + return ret_constr; } - -jboolean __attribute__((visibility("default"))) TS_CResult_ChannelTypeFeaturesDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ChannelTypeFeaturesDecodeErrorZ* o_conv = (LDKCResult_ChannelTypeFeaturesDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ChannelTypeFeaturesDecodeErrorZ_is_ok(o_conv); - return ret_val; +static void LDKCustomMessageHandler_JCalls_cloned(LDKCustomMessageHandler* new_obj) { + LDKCustomMessageHandler_JCalls *j_calls = (LDKCustomMessageHandler_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); + atomic_fetch_add_explicit(&j_calls->CustomMessageReader->refcnt, 1, memory_order_release); } +static inline LDKCustomMessageHandler LDKCustomMessageHandler_init (/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */void* CustomMessageReader) { + LDKCustomMessageHandler_JCalls *calls = MALLOC(sizeof(LDKCustomMessageHandler_JCalls), "LDKCustomMessageHandler_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -void __attribute__((visibility("default"))) TS_CResult_ChannelTypeFeaturesDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_ChannelTypeFeaturesDecodeErrorZ _res_conv = *(LDKCResult_ChannelTypeFeaturesDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_ChannelTypeFeaturesDecodeErrorZ_free(_res_conv); + LDKCustomMessageHandler ret = { + .this_arg = (void*) calls, + .handle_custom_message = handle_custom_message_LDKCustomMessageHandler_jcall, + .get_and_clear_pending_msg = get_and_clear_pending_msg_LDKCustomMessageHandler_jcall, + .free = LDKCustomMessageHandler_JCalls_free, + .CustomMessageReader = LDKCustomMessageReader_init(CustomMessageReader), + }; + calls->CustomMessageReader = ret.CustomMessageReader.this_arg; + return ret; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_ok(uint32_t o) { - LDKDelayedPaymentOutputDescriptor o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = DelayedPaymentOutputDescriptor_clone(&o_conv); - LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ"); - *ret_conv = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +long __attribute__((visibility("default"))) TS_LDKCustomMessageHandler_new(/*TODO: JS Object Reference */void* o, /*TODO: JS Object Reference */ void* CustomMessageReader) { + LDKCustomMessageHandler *res_ptr = MALLOC(sizeof(LDKCustomMessageHandler), "LDKCustomMessageHandler"); + *res_ptr = LDKCustomMessageHandler_init(o, CustomMessageReader); + return (long)res_ptr; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ"); - *ret_conv = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CustomMessageHandler_handle_custom_message(uint32_t this_arg, uint32_t msg, int8_tArray sender_node_id) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKCustomMessageHandler* this_arg_conv = (LDKCustomMessageHandler*)this_arg_ptr; + void* msg_ptr = (void*)(((uint64_t)msg) & ~1); + CHECK_ACCESS(msg_ptr); + LDKType msg_conv = *(LDKType*)(msg_ptr); + LDKPublicKey sender_node_id_ref; + CHECK(sender_node_id->arr_len == 33); + memcpy(sender_node_id_ref.compressed_form, sender_node_id->elems, 33); + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = (this_arg_conv->handle_custom_message)(this_arg_conv->this_arg, msg_conv, sender_node_id_ref); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* o_conv = (LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_is_ok(o_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ _res_conv = *(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_free(_res_conv); +uint32_tArray __attribute__((visibility("default"))) TS_CustomMessageHandler_get_and_clear_pending_msg(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKCustomMessageHandler* this_arg_conv = (LDKCustomMessageHandler*)this_arg_ptr; + LDKCVec_C2Tuple_PublicKeyTypeZZ ret_var = (this_arg_conv->get_and_clear_pending_msg)(this_arg_conv->this_arg); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t z = 0; z < ret_var.datalen; z++) { + LDKC2Tuple_PublicKeyTypeZ* ret_conv_25_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyTypeZ), "LDKC2Tuple_PublicKeyTypeZ"); + *ret_conv_25_conv = ret_var.data[z]; + ret_arr_ptr[z] = ((uint64_t)ret_conv_25_conv); + } + + FREE(ret_var.data); + return ret_arr; } -static inline uint64_t CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone_ptr(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ"); - *ret_conv = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +typedef struct LDKSocketDescriptor_JCalls { + atomic_size_t refcnt; + uint32_t send_data_meth; + uint32_t disconnect_socket_meth; + uint32_t eq_meth; + uint32_t hash_meth; +} LDKSocketDescriptor_JCalls; +static void LDKSocketDescriptor_JCalls_free(void* this_arg) { + LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->send_data_meth); + js_free_function_ptr(j_calls->disconnect_socket_meth); + js_free_function_ptr(j_calls->eq_meth); + js_free_function_ptr(j_calls->hash_meth); + FREE(j_calls); + } } -int64_t __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* arg_conv = (LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +uintptr_t send_data_LDKSocketDescriptor_jcall(void* this_arg, LDKu8slice data, bool resume_read) { + LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) this_arg; + LDKu8slice data_var = data; + int8_tArray data_arr = init_int8_tArray(data_var.datalen); + memcpy(data_arr->elems, data_var.data, data_var.datalen); + return js_invoke_function_2(j_calls->send_data_meth, (uint32_t)data_arr, (uint32_t)resume_read); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* orig_conv = (LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ*)(orig & ~1); - LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ"); - *ret_conv = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +void disconnect_socket_LDKSocketDescriptor_jcall(void* this_arg) { + LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) this_arg; + js_invoke_function_0(j_calls->disconnect_socket_meth); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_ok(uint32_t o) { - LDKStaticPaymentOutputDescriptor o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = StaticPaymentOutputDescriptor_clone(&o_conv); - LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ"); - *ret_conv = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +bool eq_LDKSocketDescriptor_jcall(const void* this_arg, const LDKSocketDescriptor * other_arg) { + LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) this_arg; + LDKSocketDescriptor *other_arg_clone = MALLOC(sizeof(LDKSocketDescriptor), "LDKSocketDescriptor"); + *other_arg_clone = SocketDescriptor_clone(other_arg); + return js_invoke_function_1(j_calls->eq_meth, (uint32_t)(uint64_t)other_arg_clone); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ"); - *ret_conv = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +uint64_t hash_LDKSocketDescriptor_jcall(const void* this_arg) { + LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) this_arg; + return js_invoke_function_0(j_calls->hash_meth); } - -jboolean __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* o_conv = (LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_is_ok(o_conv); - return ret_val; +static void LDKSocketDescriptor_JCalls_cloned(LDKSocketDescriptor* new_obj) { + LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKSocketDescriptor LDKSocketDescriptor_init (/*TODO: JS Object Reference */void* o) { + LDKSocketDescriptor_JCalls *calls = MALLOC(sizeof(LDKSocketDescriptor_JCalls), "LDKSocketDescriptor_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -void __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ _res_conv = *(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_StaticPaymentOutputDescriptorDecodeErrorZ_free(_res_conv); + LDKSocketDescriptor ret = { + .this_arg = (void*) calls, + .send_data = send_data_LDKSocketDescriptor_jcall, + .disconnect_socket = disconnect_socket_LDKSocketDescriptor_jcall, + .eq = eq_LDKSocketDescriptor_jcall, + .hash = hash_LDKSocketDescriptor_jcall, + .cloned = LDKSocketDescriptor_JCalls_cloned, + .free = LDKSocketDescriptor_JCalls_free, + }; + return ret; } - -static inline uint64_t CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone_ptr(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ"); - *ret_conv = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +long __attribute__((visibility("default"))) TS_LDKSocketDescriptor_new(/*TODO: JS Object Reference */void* o) { + LDKSocketDescriptor *res_ptr = MALLOC(sizeof(LDKSocketDescriptor), "LDKSocketDescriptor"); + *res_ptr = LDKSocketDescriptor_init(o); + return (long)res_ptr; } -int64_t __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* arg_conv = (LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_SocketDescriptor_send_data(uint32_t this_arg, int8_tArray data, jboolean resume_read) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKSocketDescriptor* this_arg_conv = (LDKSocketDescriptor*)this_arg_ptr; + LDKu8slice data_ref; + data_ref.datalen = data->arr_len; + data_ref.data = data->elems; + int64_t ret_val = (this_arg_conv->send_data)(this_arg_conv->this_arg, data_ref, resume_read); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* orig_conv = (LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ*)(orig & ~1); - LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ"); - *ret_conv = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_SocketDescriptor_disconnect_socket(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKSocketDescriptor* this_arg_conv = (LDKSocketDescriptor*)this_arg_ptr; + (this_arg_conv->disconnect_socket)(this_arg_conv->this_arg); } -uint32_t __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_ok(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKSpendableOutputDescriptor o_conv = *(LDKSpendableOutputDescriptor*)(o_ptr); - o_conv = SpendableOutputDescriptor_clone((LDKSpendableOutputDescriptor*)(((uint64_t)o) & ~1)); - LDKCResult_SpendableOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpendableOutputDescriptorDecodeErrorZ), "LDKCResult_SpendableOutputDescriptorDecodeErrorZ"); - *ret_conv = CResult_SpendableOutputDescriptorDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +int64_t __attribute__((visibility("default"))) TS_SocketDescriptor_hash(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKSocketDescriptor* this_arg_conv = (LDKSocketDescriptor*)this_arg_ptr; + int64_t ret_val = (this_arg_conv->hash)(this_arg_conv->this_arg); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_SpendableOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpendableOutputDescriptorDecodeErrorZ), "LDKCResult_SpendableOutputDescriptorDecodeErrorZ"); - *ret_conv = CResult_SpendableOutputDescriptorDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +typedef struct LDKScore_JCalls { + atomic_size_t refcnt; + uint32_t channel_penalty_msat_meth; + uint32_t payment_path_failed_meth; + uint32_t payment_path_successful_meth; + uint32_t write_meth; +} LDKScore_JCalls; +static void LDKScore_JCalls_free(void* this_arg) { + LDKScore_JCalls *j_calls = (LDKScore_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->channel_penalty_msat_meth); + js_free_function_ptr(j_calls->payment_path_failed_meth); + js_free_function_ptr(j_calls->payment_path_successful_meth); + js_free_function_ptr(j_calls->write_meth); + FREE(j_calls); + } } - -jboolean __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_SpendableOutputDescriptorDecodeErrorZ* o_conv = (LDKCResult_SpendableOutputDescriptorDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_SpendableOutputDescriptorDecodeErrorZ_is_ok(o_conv); - return ret_val; +uint64_t channel_penalty_msat_LDKScore_jcall(const void* this_arg, uint64_t short_channel_id, uint64_t send_amt_msat, LDKCOption_u64Z channel_capacity_msat, const LDKNodeId * source, const LDKNodeId * target) { + LDKScore_JCalls *j_calls = (LDKScore_JCalls*) this_arg; + LDKCOption_u64Z *channel_capacity_msat_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); + *channel_capacity_msat_copy = channel_capacity_msat; + uint64_t channel_capacity_msat_ref = (uint64_t)channel_capacity_msat_copy; + LDKNodeId source_var = *source; + uint64_t source_ref = 0; + source_var = NodeId_clone(source); + CHECK((((uint64_t)source_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&source_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(source_var); + source_ref = (uint64_t)source_var.inner; + if (source_var.is_owned) { + source_ref |= 1; + } + LDKNodeId target_var = *target; + uint64_t target_ref = 0; + target_var = NodeId_clone(target); + CHECK((((uint64_t)target_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&target_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(target_var); + target_ref = (uint64_t)target_var.inner; + if (target_var.is_owned) { + target_ref |= 1; + } + return js_invoke_function_5(j_calls->channel_penalty_msat_meth, (uint32_t)short_channel_id, (uint32_t)send_amt_msat, (uint32_t)channel_capacity_msat_ref, (uint32_t)source_ref, (uint32_t)target_ref); } - -void __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_SpendableOutputDescriptorDecodeErrorZ _res_conv = *(LDKCResult_SpendableOutputDescriptorDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_SpendableOutputDescriptorDecodeErrorZ_free(_res_conv); +void payment_path_failed_LDKScore_jcall(void* this_arg, LDKCVec_RouteHopZ path, uint64_t short_channel_id) { + LDKScore_JCalls *j_calls = (LDKScore_JCalls*) this_arg; + LDKCVec_RouteHopZ path_var = path; + uint32_tArray path_arr = NULL; + path_arr = init_uint32_tArray(path_var.datalen); + uint32_t *path_arr_ptr = (uint32_t*)(path_arr + 4); + for (size_t k = 0; k < path_var.datalen; k++) { + LDKRouteHop path_conv_10_var = path_var.data[k]; + uint64_t path_conv_10_ref = 0; + CHECK((((uint64_t)path_conv_10_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&path_conv_10_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_var); + path_conv_10_ref = (uint64_t)path_conv_10_var.inner; + if (path_conv_10_var.is_owned) { + path_conv_10_ref |= 1; + } + path_arr_ptr[k] = path_conv_10_ref; + } + + FREE(path_var.data); + js_invoke_function_2(j_calls->payment_path_failed_meth, (uint32_t)path_arr, (uint32_t)short_channel_id); } - -static inline uint64_t CResult_SpendableOutputDescriptorDecodeErrorZ_clone_ptr(LDKCResult_SpendableOutputDescriptorDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_SpendableOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpendableOutputDescriptorDecodeErrorZ), "LDKCResult_SpendableOutputDescriptorDecodeErrorZ"); - *ret_conv = CResult_SpendableOutputDescriptorDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; +void payment_path_successful_LDKScore_jcall(void* this_arg, LDKCVec_RouteHopZ path) { + LDKScore_JCalls *j_calls = (LDKScore_JCalls*) this_arg; + LDKCVec_RouteHopZ path_var = path; + uint32_tArray path_arr = NULL; + path_arr = init_uint32_tArray(path_var.datalen); + uint32_t *path_arr_ptr = (uint32_t*)(path_arr + 4); + for (size_t k = 0; k < path_var.datalen; k++) { + LDKRouteHop path_conv_10_var = path_var.data[k]; + uint64_t path_conv_10_ref = 0; + CHECK((((uint64_t)path_conv_10_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&path_conv_10_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_var); + path_conv_10_ref = (uint64_t)path_conv_10_var.inner; + if (path_conv_10_var.is_owned) { + path_conv_10_ref |= 1; + } + path_arr_ptr[k] = path_conv_10_ref; + } + + FREE(path_var.data); + js_invoke_function_1(j_calls->payment_path_successful_meth, (uint32_t)path_arr); } -int64_t __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_SpendableOutputDescriptorDecodeErrorZ* arg_conv = (LDKCResult_SpendableOutputDescriptorDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_SpendableOutputDescriptorDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; +LDKCVec_u8Z write_LDKScore_jcall(const void* this_arg) { + LDKScore_JCalls *j_calls = (LDKScore_JCalls*) this_arg; + int8_tArray ret = (int8_tArray)js_invoke_function_0(j_calls->write_meth); + LDKCVec_u8Z ret_ref; + ret_ref.datalen = ret->arr_len; + ret_ref.data = MALLOC(ret_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(ret_ref.data, ret->elems, ret_ref.datalen); + return ret_ref; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_SpendableOutputDescriptorDecodeErrorZ* orig_conv = (LDKCResult_SpendableOutputDescriptorDecodeErrorZ*)(orig & ~1); - LDKCResult_SpendableOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpendableOutputDescriptorDecodeErrorZ), "LDKCResult_SpendableOutputDescriptorDecodeErrorZ"); - *ret_conv = CResult_SpendableOutputDescriptorDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +static void LDKScore_JCalls_cloned(LDKScore* new_obj) { + LDKScore_JCalls *j_calls = (LDKScore_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } +static inline LDKScore LDKScore_init (/*TODO: JS Object Reference */void* o) { + LDKScore_JCalls *calls = MALLOC(sizeof(LDKScore_JCalls), "LDKScore_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_ok() { - LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); - *ret_conv = CResult_NoneNoneZ_ok(); - return (uint64_t)ret_conv; + LDKScore ret = { + .this_arg = (void*) calls, + .channel_penalty_msat = channel_penalty_msat_LDKScore_jcall, + .payment_path_failed = payment_path_failed_LDKScore_jcall, + .payment_path_successful = payment_path_successful_LDKScore_jcall, + .write = write_LDKScore_jcall, + .free = LDKScore_JCalls_free, + }; + return ret; } - -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_err() { - LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); - *ret_conv = CResult_NoneNoneZ_err(); - return (uint64_t)ret_conv; +long __attribute__((visibility("default"))) TS_LDKScore_new(/*TODO: JS Object Reference */void* o) { + LDKScore *res_ptr = MALLOC(sizeof(LDKScore), "LDKScore"); + *res_ptr = LDKScore_init(o); + return (long)res_ptr; } - -jboolean __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_is_ok(uint32_t o) { - LDKCResult_NoneNoneZ* o_conv = (LDKCResult_NoneNoneZ*)(o & ~1); - jboolean ret_val = CResult_NoneNoneZ_is_ok(o_conv); +int64_t __attribute__((visibility("default"))) TS_Score_channel_penalty_msat(uint32_t this_arg, int64_t short_channel_id, int64_t send_amt_msat, uint32_t channel_capacity_msat, uint32_t source, uint32_t target) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKScore* this_arg_conv = (LDKScore*)this_arg_ptr; + void* channel_capacity_msat_ptr = (void*)(((uint64_t)channel_capacity_msat) & ~1); + CHECK_ACCESS(channel_capacity_msat_ptr); + LDKCOption_u64Z channel_capacity_msat_conv = *(LDKCOption_u64Z*)(channel_capacity_msat_ptr); + channel_capacity_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)channel_capacity_msat) & ~1)); + LDKNodeId source_conv; + source_conv.inner = (void*)(source & (~1)); + source_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(source_conv); + LDKNodeId target_conv; + target_conv.inner = (void*)(target & (~1)); + target_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(target_conv); + int64_t ret_val = (this_arg_conv->channel_penalty_msat)(this_arg_conv->this_arg, short_channel_id, send_amt_msat, channel_capacity_msat_conv, &source_conv, &target_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_NoneNoneZ _res_conv = *(LDKCResult_NoneNoneZ*)(_res_ptr); - FREE((void*)_res); - CResult_NoneNoneZ_free(_res_conv); +void __attribute__((visibility("default"))) TS_Score_payment_path_failed(uint32_t this_arg, uint32_tArray path, int64_t short_channel_id) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKScore* this_arg_conv = (LDKScore*)this_arg_ptr; + LDKCVec_RouteHopZ path_constr; + path_constr.datalen = path->arr_len; + if (path_constr.datalen > 0) + path_constr.data = MALLOC(path_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); + else + path_constr.data = NULL; + uint32_t* path_vals = path->elems; + for (size_t k = 0; k < path_constr.datalen; k++) { + uint32_t path_conv_10 = path_vals[k]; + LDKRouteHop path_conv_10_conv; + path_conv_10_conv.inner = (void*)(path_conv_10 & (~1)); + path_conv_10_conv.is_owned = (path_conv_10 & 1) || (path_conv_10 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_conv); + path_conv_10_conv = RouteHop_clone(&path_conv_10_conv); + path_constr.data[k] = path_conv_10_conv; + } + (this_arg_conv->payment_path_failed)(this_arg_conv->this_arg, path_constr, short_channel_id); } -static inline uint64_t CResult_NoneNoneZ_clone_ptr(LDKCResult_NoneNoneZ *NONNULL_PTR arg) { - LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); - *ret_conv = CResult_NoneNoneZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_clone_ptr(uint32_t arg) { - LDKCResult_NoneNoneZ* arg_conv = (LDKCResult_NoneNoneZ*)(arg & ~1); - int64_t ret_val = CResult_NoneNoneZ_clone_ptr(arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_Score_payment_path_successful(uint32_t this_arg, uint32_tArray path) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKScore* this_arg_conv = (LDKScore*)this_arg_ptr; + LDKCVec_RouteHopZ path_constr; + path_constr.datalen = path->arr_len; + if (path_constr.datalen > 0) + path_constr.data = MALLOC(path_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); + else + path_constr.data = NULL; + uint32_t* path_vals = path->elems; + for (size_t k = 0; k < path_constr.datalen; k++) { + uint32_t path_conv_10 = path_vals[k]; + LDKRouteHop path_conv_10_conv; + path_conv_10_conv.inner = (void*)(path_conv_10 & (~1)); + path_conv_10_conv.is_owned = (path_conv_10 & 1) || (path_conv_10 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_conv); + path_conv_10_conv = RouteHop_clone(&path_conv_10_conv); + path_constr.data[k] = path_conv_10_conv; + } + (this_arg_conv->payment_path_successful)(this_arg_conv->this_arg, path_constr); } -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_clone(uint32_t orig) { - LDKCResult_NoneNoneZ* orig_conv = (LDKCResult_NoneNoneZ*)(orig & ~1); - LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); - *ret_conv = CResult_NoneNoneZ_clone(orig_conv); - return (uint64_t)ret_conv; +int8_tArray __attribute__((visibility("default"))) TS_Score_write(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKScore* this_arg_conv = (LDKScore*)this_arg_ptr; + LDKCVec_u8Z ret_var = (this_arg_conv->write)(this_arg_conv->this_arg); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -static inline uint64_t C2Tuple_SignatureCVec_SignatureZZ_clone_ptr(LDKC2Tuple_SignatureCVec_SignatureZZ *NONNULL_PTR arg) { - LDKC2Tuple_SignatureCVec_SignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_SignatureCVec_SignatureZZ), "LDKC2Tuple_SignatureCVec_SignatureZZ"); - *ret_conv = C2Tuple_SignatureCVec_SignatureZZ_clone(arg); - return ((uint64_t)ret_conv); +typedef struct LDKLockableScore_JCalls { + atomic_size_t refcnt; + uint32_t lock_meth; +} LDKLockableScore_JCalls; +static void LDKLockableScore_JCalls_free(void* this_arg) { + LDKLockableScore_JCalls *j_calls = (LDKLockableScore_JCalls*) this_arg; + if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) { + js_free_function_ptr(j_calls->lock_meth); + FREE(j_calls); + } } -int64_t __attribute__((visibility("default"))) TS_C2Tuple_SignatureCVec_SignatureZZ_clone_ptr(uint32_t arg) { - LDKC2Tuple_SignatureCVec_SignatureZZ* arg_conv = (LDKC2Tuple_SignatureCVec_SignatureZZ*)(arg & ~1); - int64_t ret_val = C2Tuple_SignatureCVec_SignatureZZ_clone_ptr(arg_conv); - return ret_val; +LDKScore lock_LDKLockableScore_jcall(const void* this_arg) { + LDKLockableScore_JCalls *j_calls = (LDKLockableScore_JCalls*) this_arg; + uint32_t ret = js_invoke_function_0(j_calls->lock_meth); + void* ret_ptr = (void*)(((uint64_t)ret) & ~1); + CHECK_ACCESS(ret_ptr); + LDKScore ret_conv = *(LDKScore*)(ret_ptr);// Warning: we may need a move here but no clone is available for LDKScore + + return ret_conv; } - -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_SignatureCVec_SignatureZZ_clone(uint32_t orig) { - LDKC2Tuple_SignatureCVec_SignatureZZ* orig_conv = (LDKC2Tuple_SignatureCVec_SignatureZZ*)(orig & ~1); - LDKC2Tuple_SignatureCVec_SignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_SignatureCVec_SignatureZZ), "LDKC2Tuple_SignatureCVec_SignatureZZ"); - *ret_conv = C2Tuple_SignatureCVec_SignatureZZ_clone(orig_conv); - return ((uint64_t)ret_conv); +static void LDKLockableScore_JCalls_cloned(LDKLockableScore* new_obj) { + LDKLockableScore_JCalls *j_calls = (LDKLockableScore_JCalls*) new_obj->this_arg; + atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release); } - -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_SignatureCVec_SignatureZZ_new(int8_tArray a, ptrArray b) { - LDKSignature a_ref; - CHECK(*((uint32_t*)a) == 64); - memcpy(a_ref.compact_form, (uint8_t*)(a + 4), 64); - LDKCVec_SignatureZ b_constr; - b_constr.datalen = *((uint32_t*)b); - if (b_constr.datalen > 0) - b_constr.data = MALLOC(b_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); - else - b_constr.data = NULL; - int8_tArray* b_vals = (int8_tArray*)(b + 4); - for (size_t m = 0; m < b_constr.datalen; m++) { - int8_tArray b_conv_12 = b_vals[m]; - LDKSignature b_conv_12_ref; - CHECK(*((uint32_t*)b_conv_12) == 64); - memcpy(b_conv_12_ref.compact_form, (uint8_t*)(b_conv_12 + 4), 64); - b_constr.data[m] = b_conv_12_ref; - } - LDKC2Tuple_SignatureCVec_SignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_SignatureCVec_SignatureZZ), "LDKC2Tuple_SignatureCVec_SignatureZZ"); - *ret_conv = C2Tuple_SignatureCVec_SignatureZZ_new(a_ref, b_constr); - return ((uint64_t)ret_conv); +static inline LDKLockableScore LDKLockableScore_init (/*TODO: JS Object Reference */void* o) { + LDKLockableScore_JCalls *calls = MALLOC(sizeof(LDKLockableScore_JCalls), "LDKLockableScore_JCalls"); + atomic_init(&calls->refcnt, 1); + //TODO: Assign calls->o from o + + LDKLockableScore ret = { + .this_arg = (void*) calls, + .lock = lock_LDKLockableScore_jcall, + .free = LDKLockableScore_JCalls_free, + }; + return ret; +} +long __attribute__((visibility("default"))) TS_LDKLockableScore_new(/*TODO: JS Object Reference */void* o) { + LDKLockableScore *res_ptr = MALLOC(sizeof(LDKLockableScore), "LDKLockableScore"); + *res_ptr = LDKLockableScore_init(o); + return (long)res_ptr; +} +uint32_t __attribute__((visibility("default"))) TS_LockableScore_lock(uint32_t this_arg) { + void* this_arg_ptr = (void*)(((uint64_t)this_arg) & ~1); + if (!(this_arg & 1)) { CHECK_ACCESS(this_arg_ptr); } + LDKLockableScore* this_arg_conv = (LDKLockableScore*)this_arg_ptr; + LDKScore* ret_ret = MALLOC(sizeof(LDKScore), "LDKScore"); + *ret_ret = (this_arg_conv->lock)(this_arg_conv->this_arg); + return (uint64_t)ret_ret; } -void __attribute__((visibility("default"))) TS_C2Tuple_SignatureCVec_SignatureZZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKC2Tuple_SignatureCVec_SignatureZZ _res_conv = *(LDKC2Tuple_SignatureCVec_SignatureZZ*)(_res_ptr); - FREE((void*)_res); - C2Tuple_SignatureCVec_SignatureZZ_free(_res_conv); +jstring __attribute__((visibility("default"))) TS__ldk_get_compiled_version() { + LDKStr ret_str = _ldk_get_compiled_version(); + jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); + Str_free(ret_str); + return ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_ok(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKC2Tuple_SignatureCVec_SignatureZZ o_conv = *(LDKC2Tuple_SignatureCVec_SignatureZZ*)(o_ptr); - o_conv = C2Tuple_SignatureCVec_SignatureZZ_clone((LDKC2Tuple_SignatureCVec_SignatureZZ*)(((uint64_t)o) & ~1)); - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ), "LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ"); - *ret_conv = CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_ok(o_conv); - return (uint64_t)ret_conv; +jstring __attribute__((visibility("default"))) TS__ldk_c_bindings_get_compiled_version() { + LDKStr ret_str = _ldk_c_bindings_get_compiled_version(); + jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); + Str_free(ret_str); + return ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_err() { - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ), "LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ"); - *ret_conv = CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_err(); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_Transaction_free(int8_tArray _res) { + LDKTransaction _res_ref; + _res_ref.datalen = _res->arr_len; + _res_ref.data = MALLOC(_res_ref.datalen, "LDKTransaction Bytes"); + memcpy(_res_ref.data, _res->elems, _res_ref.datalen); + _res_ref.data_is_owned = true; + Transaction_free(_res_ref); } -jboolean __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_is_ok(uint32_t o) { - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* o_conv = (LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(o & ~1); - jboolean ret_val = CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_is_ok(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_TxOut_new(int8_tArray script_pubkey, int64_t value) { + LDKCVec_u8Z script_pubkey_ref; + script_pubkey_ref.datalen = script_pubkey->arr_len; + script_pubkey_ref.data = MALLOC(script_pubkey_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(script_pubkey_ref.data, script_pubkey->elems, script_pubkey_ref.datalen); + LDKTxOut* ret_ref = MALLOC(sizeof(LDKTxOut), "LDKTxOut"); + *ret_ref = TxOut_new(script_pubkey_ref, value); + return (uint64_t)ret_ref; } -void __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_TxOut_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ _res_conv = *(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(_res_ptr); + LDKTxOut _res_conv = *(LDKTxOut*)(_res_ptr); FREE((void*)_res); - CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_free(_res_conv); + TxOut_free(_res_conv); } -static inline uint64_t CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone_ptr(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ *NONNULL_PTR arg) { - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ), "LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ"); - *ret_conv = CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone(arg); - return (uint64_t)ret_conv; +static inline uint64_t TxOut_clone_ptr(LDKTxOut *NONNULL_PTR arg) { + LDKTxOut* ret_ref = MALLOC(sizeof(LDKTxOut), "LDKTxOut"); + *ret_ref = TxOut_clone(arg); + return (uint64_t)ret_ref; } -int64_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone_ptr(uint32_t arg) { - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* arg_conv = (LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(arg & ~1); - int64_t ret_val = CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_TxOut_clone_ptr(uint32_t arg) { + LDKTxOut* arg_conv = (LDKTxOut*)(arg & ~1); + int64_t ret_val = TxOut_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone(uint32_t orig) { - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* orig_conv = (LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(orig & ~1); - LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ), "LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ"); - *ret_conv = CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone(orig_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_TxOut_clone(uint32_t orig) { + LDKTxOut* orig_conv = (LDKTxOut*)(orig & ~1); + LDKTxOut* ret_ref = MALLOC(sizeof(LDKTxOut), "LDKTxOut"); + *ret_ref = TxOut_clone(orig_conv); + return (uint64_t)ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_ok(int8_tArray o) { - LDKSignature o_ref; - CHECK(*((uint32_t*)o) == 64); - memcpy(o_ref.compact_form, (uint8_t*)(o + 4), 64); - LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); - *ret_conv = CResult_SignatureNoneZ_ok(o_ref); +void __attribute__((visibility("default"))) TS_Str_free(jstring _res) { + LDKStr dummy = { .chars = NULL, .len = 0, .chars_is_owned = false }; + Str_free(dummy); +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_ok(uint32_t o) { + LDKChannelConfig o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = ChannelConfig_clone(&o_conv); + LDKCResult_ChannelConfigDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelConfigDecodeErrorZ), "LDKCResult_ChannelConfigDecodeErrorZ"); + *ret_conv = CResult_ChannelConfigDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_err() { - LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); - *ret_conv = CResult_SignatureNoneZ_err(); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_ChannelConfigDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelConfigDecodeErrorZ), "LDKCResult_ChannelConfigDecodeErrorZ"); + *ret_conv = CResult_ChannelConfigDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_is_ok(uint32_t o) { - LDKCResult_SignatureNoneZ* o_conv = (LDKCResult_SignatureNoneZ*)(o & ~1); - jboolean ret_val = CResult_SignatureNoneZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ChannelConfigDecodeErrorZ* o_conv = (LDKCResult_ChannelConfigDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ChannelConfigDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_SignatureNoneZ _res_conv = *(LDKCResult_SignatureNoneZ*)(_res_ptr); + LDKCResult_ChannelConfigDecodeErrorZ _res_conv = *(LDKCResult_ChannelConfigDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_SignatureNoneZ_free(_res_conv); + CResult_ChannelConfigDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_SignatureNoneZ_clone_ptr(LDKCResult_SignatureNoneZ *NONNULL_PTR arg) { - LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); - *ret_conv = CResult_SignatureNoneZ_clone(arg); +static inline uint64_t CResult_ChannelConfigDecodeErrorZ_clone_ptr(LDKCResult_ChannelConfigDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ChannelConfigDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelConfigDecodeErrorZ), "LDKCResult_ChannelConfigDecodeErrorZ"); + *ret_conv = CResult_ChannelConfigDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_clone_ptr(uint32_t arg) { - LDKCResult_SignatureNoneZ* arg_conv = (LDKCResult_SignatureNoneZ*)(arg & ~1); - int64_t ret_val = CResult_SignatureNoneZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ChannelConfigDecodeErrorZ* arg_conv = (LDKCResult_ChannelConfigDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ChannelConfigDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_clone(uint32_t orig) { - LDKCResult_SignatureNoneZ* orig_conv = (LDKCResult_SignatureNoneZ*)(orig & ~1); - LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); - *ret_conv = CResult_SignatureNoneZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ChannelConfigDecodeErrorZ* orig_conv = (LDKCResult_ChannelConfigDecodeErrorZ*)(orig & ~1); + LDKCResult_ChannelConfigDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelConfigDecodeErrorZ), "LDKCResult_ChannelConfigDecodeErrorZ"); + *ret_conv = CResult_ChannelConfigDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_ok(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKSign o_conv = *(LDKSign*)(o_ptr); - LDKCResult_SignDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SignDecodeErrorZ), "LDKCResult_SignDecodeErrorZ"); - *ret_conv = CResult_SignDecodeErrorZ_ok(o_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_ok(uint32_t o) { + LDKOutPoint o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = OutPoint_clone(&o_conv); + LDKCResult_OutPointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OutPointDecodeErrorZ), "LDKCResult_OutPointDecodeErrorZ"); + *ret_conv = CResult_OutPointDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_SignDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SignDecodeErrorZ), "LDKCResult_SignDecodeErrorZ"); - *ret_conv = CResult_SignDecodeErrorZ_err(e_conv); + LDKCResult_OutPointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OutPointDecodeErrorZ), "LDKCResult_OutPointDecodeErrorZ"); + *ret_conv = CResult_OutPointDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_SignDecodeErrorZ* o_conv = (LDKCResult_SignDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_SignDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_OutPointDecodeErrorZ* o_conv = (LDKCResult_OutPointDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_OutPointDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_SignDecodeErrorZ _res_conv = *(LDKCResult_SignDecodeErrorZ*)(_res_ptr); + LDKCResult_OutPointDecodeErrorZ _res_conv = *(LDKCResult_OutPointDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_SignDecodeErrorZ_free(_res_conv); + CResult_OutPointDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_SignDecodeErrorZ_clone_ptr(LDKCResult_SignDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_SignDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SignDecodeErrorZ), "LDKCResult_SignDecodeErrorZ"); - *ret_conv = CResult_SignDecodeErrorZ_clone(arg); +static inline uint64_t CResult_OutPointDecodeErrorZ_clone_ptr(LDKCResult_OutPointDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_OutPointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OutPointDecodeErrorZ), "LDKCResult_OutPointDecodeErrorZ"); + *ret_conv = CResult_OutPointDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_SignDecodeErrorZ* arg_conv = (LDKCResult_SignDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_SignDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_OutPointDecodeErrorZ* arg_conv = (LDKCResult_OutPointDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_OutPointDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_SignDecodeErrorZ* orig_conv = (LDKCResult_SignDecodeErrorZ*)(orig & ~1); - LDKCResult_SignDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SignDecodeErrorZ), "LDKCResult_SignDecodeErrorZ"); - *ret_conv = CResult_SignDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_OutPointDecodeErrorZ* orig_conv = (LDKCResult_OutPointDecodeErrorZ*)(orig & ~1); + LDKCResult_OutPointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OutPointDecodeErrorZ), "LDKCResult_OutPointDecodeErrorZ"); + *ret_conv = CResult_OutPointDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_CVec_u8Z_free(int8_tArray _res) { - LDKCVec_u8Z _res_ref; - _res_ref.datalen = *((uint32_t*)_res); - _res_ref.data = MALLOC(_res_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(_res_ref.data, (uint8_t*)(_res + 4), _res_ref.datalen); - CVec_u8Z_free(_res_ref); +uint32_t __attribute__((visibility("default"))) TS_CResult_SecretKeyErrorZ_ok(int8_tArray o) { + LDKSecretKey o_ref; + CHECK(o->arr_len == 32); + memcpy(o_ref.bytes, o->elems, 32); + LDKCResult_SecretKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SecretKeyErrorZ), "LDKCResult_SecretKeyErrorZ"); + *ret_conv = CResult_SecretKeyErrorZ_ok(o_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_ok(int8_tArray arg) { - LDKRecoverableSignature arg_ref; - CHECK(*((uint32_t*)arg) == 68); - memcpy(arg_ref.serialized_form, (uint8_t*)(arg + 4), 68); - LDKCResult_RecoverableSignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_RecoverableSignatureNoneZ), "LDKCResult_RecoverableSignatureNoneZ"); - *ret_conv = CResult_RecoverableSignatureNoneZ_ok(arg_ref); +uint32_t __attribute__((visibility("default"))) TS_CResult_SecretKeyErrorZ_err(uint32_t e) { + LDKSecp256k1Error e_conv = LDKSecp256k1Error_from_js(e); + LDKCResult_SecretKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SecretKeyErrorZ), "LDKCResult_SecretKeyErrorZ"); + *ret_conv = CResult_SecretKeyErrorZ_err(e_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_err() { - LDKCResult_RecoverableSignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_RecoverableSignatureNoneZ), "LDKCResult_RecoverableSignatureNoneZ"); - *ret_conv = CResult_RecoverableSignatureNoneZ_err(); +jboolean __attribute__((visibility("default"))) TS_CResult_SecretKeyErrorZ_is_ok(uint32_t o) { + LDKCResult_SecretKeyErrorZ* o_conv = (LDKCResult_SecretKeyErrorZ*)(o & ~1); + jboolean ret_val = CResult_SecretKeyErrorZ_is_ok(o_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_CResult_SecretKeyErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_SecretKeyErrorZ _res_conv = *(LDKCResult_SecretKeyErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_SecretKeyErrorZ_free(_res_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_ok(int8_tArray o) { + LDKPublicKey o_ref; + CHECK(o->arr_len == 33); + memcpy(o_ref.compressed_form, o->elems, 33); + LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); + *ret_conv = CResult_PublicKeyErrorZ_ok(o_ref); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_is_ok(uint32_t o) { - LDKCResult_RecoverableSignatureNoneZ* o_conv = (LDKCResult_RecoverableSignatureNoneZ*)(o & ~1); - jboolean ret_val = CResult_RecoverableSignatureNoneZ_is_ok(o_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_err(uint32_t e) { + LDKSecp256k1Error e_conv = LDKSecp256k1Error_from_js(e); + LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); + *ret_conv = CResult_PublicKeyErrorZ_err(e_conv); + return (uint64_t)ret_conv; +} + +jboolean __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_is_ok(uint32_t o) { + LDKCResult_PublicKeyErrorZ* o_conv = (LDKCResult_PublicKeyErrorZ*)(o & ~1); + jboolean ret_val = CResult_PublicKeyErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_RecoverableSignatureNoneZ _res_conv = *(LDKCResult_RecoverableSignatureNoneZ*)(_res_ptr); + LDKCResult_PublicKeyErrorZ _res_conv = *(LDKCResult_PublicKeyErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_RecoverableSignatureNoneZ_free(_res_conv); + CResult_PublicKeyErrorZ_free(_res_conv); } -static inline uint64_t CResult_RecoverableSignatureNoneZ_clone_ptr(LDKCResult_RecoverableSignatureNoneZ *NONNULL_PTR arg) { - LDKCResult_RecoverableSignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_RecoverableSignatureNoneZ), "LDKCResult_RecoverableSignatureNoneZ"); - *ret_conv = CResult_RecoverableSignatureNoneZ_clone(arg); +static inline uint64_t CResult_PublicKeyErrorZ_clone_ptr(LDKCResult_PublicKeyErrorZ *NONNULL_PTR arg) { + LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); + *ret_conv = CResult_PublicKeyErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_clone_ptr(uint32_t arg) { - LDKCResult_RecoverableSignatureNoneZ* arg_conv = (LDKCResult_RecoverableSignatureNoneZ*)(arg & ~1); - int64_t ret_val = CResult_RecoverableSignatureNoneZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_PublicKeyErrorZ* arg_conv = (LDKCResult_PublicKeyErrorZ*)(arg & ~1); + int64_t ret_val = CResult_PublicKeyErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_clone(uint32_t orig) { - LDKCResult_RecoverableSignatureNoneZ* orig_conv = (LDKCResult_RecoverableSignatureNoneZ*)(orig & ~1); - LDKCResult_RecoverableSignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_RecoverableSignatureNoneZ), "LDKCResult_RecoverableSignatureNoneZ"); - *ret_conv = CResult_RecoverableSignatureNoneZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_PublicKeyErrorZ_clone(uint32_t orig) { + LDKCResult_PublicKeyErrorZ* orig_conv = (LDKCResult_PublicKeyErrorZ*)(orig & ~1); + LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); + *ret_conv = CResult_PublicKeyErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_CVec_CVec_u8ZZ_free(ptrArray _res) { - LDKCVec_CVec_u8ZZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKCVec_u8Z), "LDKCVec_CVec_u8ZZ Elements"); - else - _res_constr.data = NULL; - int8_tArray* _res_vals = (int8_tArray*)(_res + 4); - for (size_t m = 0; m < _res_constr.datalen; m++) { - int8_tArray _res_conv_12 = _res_vals[m]; - LDKCVec_u8Z _res_conv_12_ref; - _res_conv_12_ref.datalen = *((uint32_t*)_res_conv_12); - _res_conv_12_ref.data = MALLOC(_res_conv_12_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(_res_conv_12_ref.data, (uint8_t*)(_res_conv_12 + 4), _res_conv_12_ref.datalen); - _res_constr.data[m] = _res_conv_12_ref; - } - CVec_CVec_u8ZZ_free(_res_constr); -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_ok(ptrArray o) { - LDKCVec_CVec_u8ZZ o_constr; - o_constr.datalen = *((uint32_t*)o); - if (o_constr.datalen > 0) - o_constr.data = MALLOC(o_constr.datalen * sizeof(LDKCVec_u8Z), "LDKCVec_CVec_u8ZZ Elements"); - else - o_constr.data = NULL; - int8_tArray* o_vals = (int8_tArray*)(o + 4); - for (size_t m = 0; m < o_constr.datalen; m++) { - int8_tArray o_conv_12 = o_vals[m]; - LDKCVec_u8Z o_conv_12_ref; - o_conv_12_ref.datalen = *((uint32_t*)o_conv_12); - o_conv_12_ref.data = MALLOC(o_conv_12_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(o_conv_12_ref.data, (uint8_t*)(o_conv_12 + 4), o_conv_12_ref.datalen); - o_constr.data[m] = o_conv_12_ref; - } - LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ"); - *ret_conv = CResult_CVec_CVec_u8ZZNoneZ_ok(o_constr); +uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_ok(uint32_t o) { + LDKTxCreationKeys o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = TxCreationKeys_clone(&o_conv); + LDKCResult_TxCreationKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysDecodeErrorZ), "LDKCResult_TxCreationKeysDecodeErrorZ"); + *ret_conv = CResult_TxCreationKeysDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_err() { - LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ"); - *ret_conv = CResult_CVec_CVec_u8ZZNoneZ_err(); +uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_TxCreationKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysDecodeErrorZ), "LDKCResult_TxCreationKeysDecodeErrorZ"); + *ret_conv = CResult_TxCreationKeysDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_is_ok(uint32_t o) { - LDKCResult_CVec_CVec_u8ZZNoneZ* o_conv = (LDKCResult_CVec_CVec_u8ZZNoneZ*)(o & ~1); - jboolean ret_val = CResult_CVec_CVec_u8ZZNoneZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_TxCreationKeysDecodeErrorZ* o_conv = (LDKCResult_TxCreationKeysDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_TxCreationKeysDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_CVec_CVec_u8ZZNoneZ _res_conv = *(LDKCResult_CVec_CVec_u8ZZNoneZ*)(_res_ptr); + LDKCResult_TxCreationKeysDecodeErrorZ _res_conv = *(LDKCResult_TxCreationKeysDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_CVec_CVec_u8ZZNoneZ_free(_res_conv); + CResult_TxCreationKeysDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR arg) { - LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ"); - *ret_conv = CResult_CVec_CVec_u8ZZNoneZ_clone(arg); +static inline uint64_t CResult_TxCreationKeysDecodeErrorZ_clone_ptr(LDKCResult_TxCreationKeysDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_TxCreationKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysDecodeErrorZ), "LDKCResult_TxCreationKeysDecodeErrorZ"); + *ret_conv = CResult_TxCreationKeysDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(uint32_t arg) { - LDKCResult_CVec_CVec_u8ZZNoneZ* arg_conv = (LDKCResult_CVec_CVec_u8ZZNoneZ*)(arg & ~1); - int64_t ret_val = CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_TxCreationKeysDecodeErrorZ* arg_conv = (LDKCResult_TxCreationKeysDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_TxCreationKeysDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_clone(uint32_t orig) { - LDKCResult_CVec_CVec_u8ZZNoneZ* orig_conv = (LDKCResult_CVec_CVec_u8ZZNoneZ*)(orig & ~1); - LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ"); - *ret_conv = CResult_CVec_CVec_u8ZZNoneZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_TxCreationKeysDecodeErrorZ* orig_conv = (LDKCResult_TxCreationKeysDecodeErrorZ*)(orig & ~1); + LDKCResult_TxCreationKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysDecodeErrorZ), "LDKCResult_TxCreationKeysDecodeErrorZ"); + *ret_conv = CResult_TxCreationKeysDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_ok(uint32_t o) { - LDKInMemorySigner o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_ok(uint32_t o) { + LDKChannelPublicKeys o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = InMemorySigner_clone(&o_conv); - LDKCResult_InMemorySignerDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InMemorySignerDecodeErrorZ), "LDKCResult_InMemorySignerDecodeErrorZ"); - *ret_conv = CResult_InMemorySignerDecodeErrorZ_ok(o_conv); + o_conv = ChannelPublicKeys_clone(&o_conv); + LDKCResult_ChannelPublicKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelPublicKeysDecodeErrorZ), "LDKCResult_ChannelPublicKeysDecodeErrorZ"); + *ret_conv = CResult_ChannelPublicKeysDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_InMemorySignerDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InMemorySignerDecodeErrorZ), "LDKCResult_InMemorySignerDecodeErrorZ"); - *ret_conv = CResult_InMemorySignerDecodeErrorZ_err(e_conv); + LDKCResult_ChannelPublicKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelPublicKeysDecodeErrorZ), "LDKCResult_ChannelPublicKeysDecodeErrorZ"); + *ret_conv = CResult_ChannelPublicKeysDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_InMemorySignerDecodeErrorZ* o_conv = (LDKCResult_InMemorySignerDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_InMemorySignerDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ChannelPublicKeysDecodeErrorZ* o_conv = (LDKCResult_ChannelPublicKeysDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ChannelPublicKeysDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_InMemorySignerDecodeErrorZ _res_conv = *(LDKCResult_InMemorySignerDecodeErrorZ*)(_res_ptr); + LDKCResult_ChannelPublicKeysDecodeErrorZ _res_conv = *(LDKCResult_ChannelPublicKeysDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_InMemorySignerDecodeErrorZ_free(_res_conv); + CResult_ChannelPublicKeysDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_InMemorySignerDecodeErrorZ_clone_ptr(LDKCResult_InMemorySignerDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_InMemorySignerDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InMemorySignerDecodeErrorZ), "LDKCResult_InMemorySignerDecodeErrorZ"); - *ret_conv = CResult_InMemorySignerDecodeErrorZ_clone(arg); +static inline uint64_t CResult_ChannelPublicKeysDecodeErrorZ_clone_ptr(LDKCResult_ChannelPublicKeysDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ChannelPublicKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelPublicKeysDecodeErrorZ), "LDKCResult_ChannelPublicKeysDecodeErrorZ"); + *ret_conv = CResult_ChannelPublicKeysDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_InMemorySignerDecodeErrorZ* arg_conv = (LDKCResult_InMemorySignerDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_InMemorySignerDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ChannelPublicKeysDecodeErrorZ* arg_conv = (LDKCResult_ChannelPublicKeysDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ChannelPublicKeysDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_InMemorySignerDecodeErrorZ* orig_conv = (LDKCResult_InMemorySignerDecodeErrorZ*)(orig & ~1); - LDKCResult_InMemorySignerDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InMemorySignerDecodeErrorZ), "LDKCResult_InMemorySignerDecodeErrorZ"); - *ret_conv = CResult_InMemorySignerDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelPublicKeysDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ChannelPublicKeysDecodeErrorZ* orig_conv = (LDKCResult_ChannelPublicKeysDecodeErrorZ*)(orig & ~1); + LDKCResult_ChannelPublicKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelPublicKeysDecodeErrorZ), "LDKCResult_ChannelPublicKeysDecodeErrorZ"); + *ret_conv = CResult_ChannelPublicKeysDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_CVec_TxOutZ_free(uint32_tArray _res) { - LDKCVec_TxOutZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKTxOut), "LDKCVec_TxOutZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t h = 0; h < _res_constr.datalen; h++) { - uint32_t _res_conv_7 = _res_vals[h]; - void* _res_conv_7_ptr = (void*)(((uint64_t)_res_conv_7) & ~1); - CHECK_ACCESS(_res_conv_7_ptr); - LDKTxOut _res_conv_7_conv = *(LDKTxOut*)(_res_conv_7_ptr); - FREE((void*)_res_conv_7); - _res_constr.data[h] = _res_conv_7_conv; - } - CVec_TxOutZ_free(_res_constr); -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_ok(int8_tArray o) { - LDKTransaction o_ref; - o_ref.datalen = *((uint32_t*)o); - o_ref.data = MALLOC(o_ref.datalen, "LDKTransaction Bytes"); - memcpy(o_ref.data, (uint8_t*)(o + 4), o_ref.datalen); - o_ref.data_is_owned = true; - LDKCResult_TransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TransactionNoneZ), "LDKCResult_TransactionNoneZ"); - *ret_conv = CResult_TransactionNoneZ_ok(o_ref); +uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_ok(uint32_t o) { + LDKTxCreationKeys o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = TxCreationKeys_clone(&o_conv); + LDKCResult_TxCreationKeysErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysErrorZ), "LDKCResult_TxCreationKeysErrorZ"); + *ret_conv = CResult_TxCreationKeysErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_err() { - LDKCResult_TransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TransactionNoneZ), "LDKCResult_TransactionNoneZ"); - *ret_conv = CResult_TransactionNoneZ_err(); +uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_err(uint32_t e) { + LDKSecp256k1Error e_conv = LDKSecp256k1Error_from_js(e); + LDKCResult_TxCreationKeysErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysErrorZ), "LDKCResult_TxCreationKeysErrorZ"); + *ret_conv = CResult_TxCreationKeysErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_is_ok(uint32_t o) { - LDKCResult_TransactionNoneZ* o_conv = (LDKCResult_TransactionNoneZ*)(o & ~1); - jboolean ret_val = CResult_TransactionNoneZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_is_ok(uint32_t o) { + LDKCResult_TxCreationKeysErrorZ* o_conv = (LDKCResult_TxCreationKeysErrorZ*)(o & ~1); + jboolean ret_val = CResult_TxCreationKeysErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_TransactionNoneZ _res_conv = *(LDKCResult_TransactionNoneZ*)(_res_ptr); + LDKCResult_TxCreationKeysErrorZ _res_conv = *(LDKCResult_TxCreationKeysErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_TransactionNoneZ_free(_res_conv); + CResult_TxCreationKeysErrorZ_free(_res_conv); } -static inline uint64_t CResult_TransactionNoneZ_clone_ptr(LDKCResult_TransactionNoneZ *NONNULL_PTR arg) { - LDKCResult_TransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TransactionNoneZ), "LDKCResult_TransactionNoneZ"); - *ret_conv = CResult_TransactionNoneZ_clone(arg); +static inline uint64_t CResult_TxCreationKeysErrorZ_clone_ptr(LDKCResult_TxCreationKeysErrorZ *NONNULL_PTR arg) { + LDKCResult_TxCreationKeysErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysErrorZ), "LDKCResult_TxCreationKeysErrorZ"); + *ret_conv = CResult_TxCreationKeysErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_clone_ptr(uint32_t arg) { - LDKCResult_TransactionNoneZ* arg_conv = (LDKCResult_TransactionNoneZ*)(arg & ~1); - int64_t ret_val = CResult_TransactionNoneZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_TxCreationKeysErrorZ* arg_conv = (LDKCResult_TxCreationKeysErrorZ*)(arg & ~1); + int64_t ret_val = CResult_TxCreationKeysErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_clone(uint32_t orig) { - LDKCResult_TransactionNoneZ* orig_conv = (LDKCResult_TransactionNoneZ*)(orig & ~1); - LDKCResult_TransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TransactionNoneZ), "LDKCResult_TransactionNoneZ"); - *ret_conv = CResult_TransactionNoneZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_TxCreationKeysErrorZ_clone(uint32_t orig) { + LDKCResult_TxCreationKeysErrorZ* orig_conv = (LDKCResult_TxCreationKeysErrorZ*)(orig & ~1); + LDKCResult_TxCreationKeysErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysErrorZ), "LDKCResult_TxCreationKeysErrorZ"); + *ret_conv = CResult_TxCreationKeysErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -static inline uint64_t C2Tuple_BlockHashChannelMonitorZ_clone_ptr(LDKC2Tuple_BlockHashChannelMonitorZ *NONNULL_PTR arg) { - LDKC2Tuple_BlockHashChannelMonitorZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlockHashChannelMonitorZ), "LDKC2Tuple_BlockHashChannelMonitorZ"); - *ret_conv = C2Tuple_BlockHashChannelMonitorZ_clone(arg); - return ((uint64_t)ret_conv); -} -int64_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_clone_ptr(uint32_t arg) { - LDKC2Tuple_BlockHashChannelMonitorZ* arg_conv = (LDKC2Tuple_BlockHashChannelMonitorZ*)(arg & ~1); - int64_t ret_val = C2Tuple_BlockHashChannelMonitorZ_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_clone(uint32_t orig) { - LDKC2Tuple_BlockHashChannelMonitorZ* orig_conv = (LDKC2Tuple_BlockHashChannelMonitorZ*)(orig & ~1); - LDKC2Tuple_BlockHashChannelMonitorZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlockHashChannelMonitorZ), "LDKC2Tuple_BlockHashChannelMonitorZ"); - *ret_conv = C2Tuple_BlockHashChannelMonitorZ_clone(orig_conv); - return ((uint64_t)ret_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_new(int8_tArray a, uint32_t b) { - LDKThirtyTwoBytes a_ref; - CHECK(*((uint32_t*)a) == 32); - memcpy(a_ref.data, (uint8_t*)(a + 4), 32); - LDKChannelMonitor b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = (b & 1) || (b == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - b_conv = ChannelMonitor_clone(&b_conv); - LDKC2Tuple_BlockHashChannelMonitorZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlockHashChannelMonitorZ), "LDKC2Tuple_BlockHashChannelMonitorZ"); - *ret_conv = C2Tuple_BlockHashChannelMonitorZ_new(a_ref, b_conv); - return ((uint64_t)ret_conv); +uint32_t __attribute__((visibility("default"))) TS_COption_u32Z_some(int32_t o) { + LDKCOption_u32Z *ret_copy = MALLOC(sizeof(LDKCOption_u32Z), "LDKCOption_u32Z"); + *ret_copy = COption_u32Z_some(o); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_free(uint32_t _res) { +uint32_t __attribute__((visibility("default"))) TS_COption_u32Z_none() { + LDKCOption_u32Z *ret_copy = MALLOC(sizeof(LDKCOption_u32Z), "LDKCOption_u32Z"); + *ret_copy = COption_u32Z_none(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +void __attribute__((visibility("default"))) TS_COption_u32Z_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKC2Tuple_BlockHashChannelMonitorZ _res_conv = *(LDKC2Tuple_BlockHashChannelMonitorZ*)(_res_ptr); + LDKCOption_u32Z _res_conv = *(LDKCOption_u32Z*)(_res_ptr); FREE((void*)_res); - C2Tuple_BlockHashChannelMonitorZ_free(_res_conv); + COption_u32Z_free(_res_conv); } -void __attribute__((visibility("default"))) TS_CVec_C2Tuple_BlockHashChannelMonitorZZ_free(uint32_tArray _res) { - LDKCVec_C2Tuple_BlockHashChannelMonitorZZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_BlockHashChannelMonitorZ), "LDKCVec_C2Tuple_BlockHashChannelMonitorZZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t j = 0; j < _res_constr.datalen; j++) { - uint32_t _res_conv_35 = _res_vals[j]; - void* _res_conv_35_ptr = (void*)(((uint64_t)_res_conv_35) & ~1); - CHECK_ACCESS(_res_conv_35_ptr); - LDKC2Tuple_BlockHashChannelMonitorZ _res_conv_35_conv = *(LDKC2Tuple_BlockHashChannelMonitorZ*)(_res_conv_35_ptr); - FREE((void*)_res_conv_35); - _res_constr.data[j] = _res_conv_35_conv; - } - CVec_C2Tuple_BlockHashChannelMonitorZZ_free(_res_constr); +static inline uint64_t COption_u32Z_clone_ptr(LDKCOption_u32Z *NONNULL_PTR arg) { + LDKCOption_u32Z *ret_copy = MALLOC(sizeof(LDKCOption_u32Z), "LDKCOption_u32Z"); + *ret_copy = COption_u32Z_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_COption_u32Z_clone_ptr(uint32_t arg) { + LDKCOption_u32Z* arg_conv = (LDKCOption_u32Z*)arg; + int64_t ret_val = COption_u32Z_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_ok(uint32_tArray o) { - LDKCVec_C2Tuple_BlockHashChannelMonitorZZ o_constr; - o_constr.datalen = *((uint32_t*)o); - if (o_constr.datalen > 0) - o_constr.data = MALLOC(o_constr.datalen * sizeof(LDKC2Tuple_BlockHashChannelMonitorZ), "LDKCVec_C2Tuple_BlockHashChannelMonitorZZ Elements"); - else - o_constr.data = NULL; - uint32_t* o_vals = (uint32_t*)(o + 4); - for (size_t j = 0; j < o_constr.datalen; j++) { - uint32_t o_conv_35 = o_vals[j]; - void* o_conv_35_ptr = (void*)(((uint64_t)o_conv_35) & ~1); - CHECK_ACCESS(o_conv_35_ptr); - LDKC2Tuple_BlockHashChannelMonitorZ o_conv_35_conv = *(LDKC2Tuple_BlockHashChannelMonitorZ*)(o_conv_35_ptr); - o_conv_35_conv = C2Tuple_BlockHashChannelMonitorZ_clone((LDKC2Tuple_BlockHashChannelMonitorZ*)(((uint64_t)o_conv_35) & ~1)); - o_constr.data[j] = o_conv_35_conv; - } - LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ), "LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ"); - *ret_conv = CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_ok(o_constr); +uint32_t __attribute__((visibility("default"))) TS_COption_u32Z_clone(uint32_t orig) { + LDKCOption_u32Z* orig_conv = (LDKCOption_u32Z*)orig; + LDKCOption_u32Z *ret_copy = MALLOC(sizeof(LDKCOption_u32Z), "LDKCOption_u32Z"); + *ret_copy = COption_u32Z_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_ok(uint32_t o) { + LDKHTLCOutputInCommitment o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = HTLCOutputInCommitment_clone(&o_conv); + LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ), "LDKCResult_HTLCOutputInCommitmentDecodeErrorZ"); + *ret_conv = CResult_HTLCOutputInCommitmentDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_err(uint32_t e) { - LDKIOError e_conv = LDKIOError_from_js(e); - LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ), "LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ"); - *ret_conv = CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ), "LDKCResult_HTLCOutputInCommitmentDecodeErrorZ"); + *ret_conv = CResult_HTLCOutputInCommitmentDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_is_ok(uint32_t o) { - LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ* o_conv = (LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ*)(o & ~1); - jboolean ret_val = CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* o_conv = (LDKCResult_HTLCOutputInCommitmentDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_HTLCOutputInCommitmentDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ _res_conv = *(LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ*)(_res_ptr); + LDKCResult_HTLCOutputInCommitmentDecodeErrorZ _res_conv = *(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_free(_res_conv); + CResult_HTLCOutputInCommitmentDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_clone_ptr(LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ *NONNULL_PTR arg) { - LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ), "LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ"); - *ret_conv = CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_clone(arg); +static inline uint64_t CResult_HTLCOutputInCommitmentDecodeErrorZ_clone_ptr(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ), "LDKCResult_HTLCOutputInCommitmentDecodeErrorZ"); + *ret_conv = CResult_HTLCOutputInCommitmentDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ* arg_conv = (LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ*)(arg & ~1); - int64_t ret_val = CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* arg_conv = (LDKCResult_HTLCOutputInCommitmentDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_HTLCOutputInCommitmentDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_clone(uint32_t orig) { - LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ* orig_conv = (LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ*)(orig & ~1); - LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ), "LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ"); - *ret_conv = CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* orig_conv = (LDKCResult_HTLCOutputInCommitmentDecodeErrorZ*)(orig & ~1); + LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ), "LDKCResult_HTLCOutputInCommitmentDecodeErrorZ"); + *ret_conv = CResult_HTLCOutputInCommitmentDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_COption_u16Z_some(int16_t o) { - LDKCOption_u16Z *ret_copy = MALLOC(sizeof(LDKCOption_u16Z), "LDKCOption_u16Z"); - *ret_copy = COption_u16Z_some(o); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_COption_NoneZ_some() { + uint32_t ret_conv = LDKCOption_NoneZ_to_js(COption_NoneZ_some()); + return ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_COption_u16Z_none() { - LDKCOption_u16Z *ret_copy = MALLOC(sizeof(LDKCOption_u16Z), "LDKCOption_u16Z"); - *ret_copy = COption_u16Z_none(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_COption_NoneZ_none() { + uint32_t ret_conv = LDKCOption_NoneZ_to_js(COption_NoneZ_none()); + return ret_conv; } -void __attribute__((visibility("default"))) TS_COption_u16Z_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_COption_NoneZ_free(uint32_t _res) { + LDKCOption_NoneZ _res_conv = LDKCOption_NoneZ_from_js(_res); + COption_NoneZ_free(_res_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_ok(uint32_t o) { + LDKCounterpartyChannelTransactionParameters o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = CounterpartyChannelTransactionParameters_clone(&o_conv); + LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ), "LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ"); + *ret_conv = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_ok(o_conv); + return (uint64_t)ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ), "LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ"); + *ret_conv = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_err(e_conv); + return (uint64_t)ret_conv; +} + +jboolean __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* o_conv = (LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_is_ok(o_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCOption_u16Z _res_conv = *(LDKCOption_u16Z*)(_res_ptr); + LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ _res_conv = *(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - COption_u16Z_free(_res_conv); + CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_free(_res_conv); } -static inline uint64_t COption_u16Z_clone_ptr(LDKCOption_u16Z *NONNULL_PTR arg) { - LDKCOption_u16Z *ret_copy = MALLOC(sizeof(LDKCOption_u16Z), "LDKCOption_u16Z"); - *ret_copy = COption_u16Z_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +static inline uint64_t CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone_ptr(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ), "LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ"); + *ret_conv = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone(arg); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_COption_u16Z_clone_ptr(uint32_t arg) { - LDKCOption_u16Z* arg_conv = (LDKCOption_u16Z*)arg; - int64_t ret_val = COption_u16Z_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* arg_conv = (LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_COption_u16Z_clone(uint32_t orig) { - LDKCOption_u16Z* orig_conv = (LDKCOption_u16Z*)orig; - LDKCOption_u16Z *ret_copy = MALLOC(sizeof(LDKCOption_u16Z), "LDKCOption_u16Z"); - *ret_copy = COption_u16Z_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* orig_conv = (LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ*)(orig & ~1); + LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ), "LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ"); + *ret_conv = CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_ok() { - LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); - *ret_conv = CResult_NoneAPIErrorZ_ok(); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_ok(uint32_t o) { + LDKChannelTransactionParameters o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = ChannelTransactionParameters_clone(&o_conv); + LDKCResult_ChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTransactionParametersDecodeErrorZ), "LDKCResult_ChannelTransactionParametersDecodeErrorZ"); + *ret_conv = CResult_ChannelTransactionParametersDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_err(uint32_t e) { - void* e_ptr = (void*)(((uint64_t)e) & ~1); - CHECK_ACCESS(e_ptr); - LDKAPIError e_conv = *(LDKAPIError*)(e_ptr); - e_conv = APIError_clone((LDKAPIError*)(((uint64_t)e) & ~1)); - LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); - *ret_conv = CResult_NoneAPIErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_ChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTransactionParametersDecodeErrorZ), "LDKCResult_ChannelTransactionParametersDecodeErrorZ"); + *ret_conv = CResult_ChannelTransactionParametersDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_is_ok(uint32_t o) { - LDKCResult_NoneAPIErrorZ* o_conv = (LDKCResult_NoneAPIErrorZ*)(o & ~1); - jboolean ret_val = CResult_NoneAPIErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ChannelTransactionParametersDecodeErrorZ* o_conv = (LDKCResult_ChannelTransactionParametersDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ChannelTransactionParametersDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_NoneAPIErrorZ _res_conv = *(LDKCResult_NoneAPIErrorZ*)(_res_ptr); + LDKCResult_ChannelTransactionParametersDecodeErrorZ _res_conv = *(LDKCResult_ChannelTransactionParametersDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_NoneAPIErrorZ_free(_res_conv); + CResult_ChannelTransactionParametersDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_NoneAPIErrorZ_clone_ptr(LDKCResult_NoneAPIErrorZ *NONNULL_PTR arg) { - LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); - *ret_conv = CResult_NoneAPIErrorZ_clone(arg); +static inline uint64_t CResult_ChannelTransactionParametersDecodeErrorZ_clone_ptr(LDKCResult_ChannelTransactionParametersDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTransactionParametersDecodeErrorZ), "LDKCResult_ChannelTransactionParametersDecodeErrorZ"); + *ret_conv = CResult_ChannelTransactionParametersDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_NoneAPIErrorZ* arg_conv = (LDKCResult_NoneAPIErrorZ*)(arg & ~1); - int64_t ret_val = CResult_NoneAPIErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ChannelTransactionParametersDecodeErrorZ* arg_conv = (LDKCResult_ChannelTransactionParametersDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ChannelTransactionParametersDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_clone(uint32_t orig) { - LDKCResult_NoneAPIErrorZ* orig_conv = (LDKCResult_NoneAPIErrorZ*)(orig & ~1); - LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); - *ret_conv = CResult_NoneAPIErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTransactionParametersDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ChannelTransactionParametersDecodeErrorZ* orig_conv = (LDKCResult_ChannelTransactionParametersDecodeErrorZ*)(orig & ~1); + LDKCResult_ChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTransactionParametersDecodeErrorZ), "LDKCResult_ChannelTransactionParametersDecodeErrorZ"); + *ret_conv = CResult_ChannelTransactionParametersDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_CVec_CResult_NoneAPIErrorZZ_free(uint32_tArray _res) { - LDKCVec_CResult_NoneAPIErrorZZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKCResult_NoneAPIErrorZ), "LDKCVec_CResult_NoneAPIErrorZZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t w = 0; w < _res_constr.datalen; w++) { - uint32_t _res_conv_22 = _res_vals[w]; - void* _res_conv_22_ptr = (void*)(((uint64_t)_res_conv_22) & ~1); - CHECK_ACCESS(_res_conv_22_ptr); - LDKCResult_NoneAPIErrorZ _res_conv_22_conv = *(LDKCResult_NoneAPIErrorZ*)(_res_conv_22_ptr); - FREE((void*)_res_conv_22); - _res_constr.data[w] = _res_conv_22_conv; - } - CVec_CResult_NoneAPIErrorZZ_free(_res_constr); -} - -void __attribute__((visibility("default"))) TS_CVec_APIErrorZ_free(uint32_tArray _res) { - LDKCVec_APIErrorZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); +void __attribute__((visibility("default"))) TS_CVec_SignatureZ_free(ptrArray _res) { + LDKCVec_SignatureZ _res_constr; + _res_constr.datalen = _res->arr_len; if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKAPIError), "LDKCVec_APIErrorZ Elements"); + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); else _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t k = 0; k < _res_constr.datalen; k++) { - uint32_t _res_conv_10 = _res_vals[k]; - void* _res_conv_10_ptr = (void*)(((uint64_t)_res_conv_10) & ~1); - CHECK_ACCESS(_res_conv_10_ptr); - LDKAPIError _res_conv_10_conv = *(LDKAPIError*)(_res_conv_10_ptr); - FREE((void*)_res_conv_10); - _res_constr.data[k] = _res_conv_10_conv; + int8_tArray* _res_vals = (void*) _res->elems; + for (size_t m = 0; m < _res_constr.datalen; m++) { + int8_tArray _res_conv_12 = _res_vals[m]; + LDKSignature _res_conv_12_ref; + CHECK(_res_conv_12->arr_len == 64); + memcpy(_res_conv_12_ref.compact_form, _res_conv_12->elems, 64); + _res_constr.data[m] = _res_conv_12_ref; } - CVec_APIErrorZ_free(_res_constr); + CVec_SignatureZ_free(_res_constr); } - -uint32_t __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_ok(int8_tArray o) { - LDKThirtyTwoBytes o_ref; - CHECK(*((uint32_t*)o) == 32); - memcpy(o_ref.data, (uint8_t*)(o + 4), 32); - LDKCResult__u832APIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult__u832APIErrorZ), "LDKCResult__u832APIErrorZ"); - *ret_conv = CResult__u832APIErrorZ_ok(o_ref); + +uint32_t __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_ok(uint32_t o) { + LDKHolderCommitmentTransaction o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = HolderCommitmentTransaction_clone(&o_conv); + LDKCResult_HolderCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HolderCommitmentTransactionDecodeErrorZ), "LDKCResult_HolderCommitmentTransactionDecodeErrorZ"); + *ret_conv = CResult_HolderCommitmentTransactionDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_err(uint32_t e) { - void* e_ptr = (void*)(((uint64_t)e) & ~1); - CHECK_ACCESS(e_ptr); - LDKAPIError e_conv = *(LDKAPIError*)(e_ptr); - e_conv = APIError_clone((LDKAPIError*)(((uint64_t)e) & ~1)); - LDKCResult__u832APIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult__u832APIErrorZ), "LDKCResult__u832APIErrorZ"); - *ret_conv = CResult__u832APIErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_HolderCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HolderCommitmentTransactionDecodeErrorZ), "LDKCResult_HolderCommitmentTransactionDecodeErrorZ"); + *ret_conv = CResult_HolderCommitmentTransactionDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_is_ok(uint32_t o) { - LDKCResult__u832APIErrorZ* o_conv = (LDKCResult__u832APIErrorZ*)(o & ~1); - jboolean ret_val = CResult__u832APIErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_HolderCommitmentTransactionDecodeErrorZ* o_conv = (LDKCResult_HolderCommitmentTransactionDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_HolderCommitmentTransactionDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult__u832APIErrorZ _res_conv = *(LDKCResult__u832APIErrorZ*)(_res_ptr); + LDKCResult_HolderCommitmentTransactionDecodeErrorZ _res_conv = *(LDKCResult_HolderCommitmentTransactionDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult__u832APIErrorZ_free(_res_conv); + CResult_HolderCommitmentTransactionDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult__u832APIErrorZ_clone_ptr(LDKCResult__u832APIErrorZ *NONNULL_PTR arg) { - LDKCResult__u832APIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult__u832APIErrorZ), "LDKCResult__u832APIErrorZ"); - *ret_conv = CResult__u832APIErrorZ_clone(arg); +static inline uint64_t CResult_HolderCommitmentTransactionDecodeErrorZ_clone_ptr(LDKCResult_HolderCommitmentTransactionDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_HolderCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HolderCommitmentTransactionDecodeErrorZ), "LDKCResult_HolderCommitmentTransactionDecodeErrorZ"); + *ret_conv = CResult_HolderCommitmentTransactionDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_clone_ptr(uint32_t arg) { - LDKCResult__u832APIErrorZ* arg_conv = (LDKCResult__u832APIErrorZ*)(arg & ~1); - int64_t ret_val = CResult__u832APIErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_HolderCommitmentTransactionDecodeErrorZ* arg_conv = (LDKCResult_HolderCommitmentTransactionDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_HolderCommitmentTransactionDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_clone(uint32_t orig) { - LDKCResult__u832APIErrorZ* orig_conv = (LDKCResult__u832APIErrorZ*)(orig & ~1); - LDKCResult__u832APIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult__u832APIErrorZ), "LDKCResult__u832APIErrorZ"); - *ret_conv = CResult__u832APIErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_HolderCommitmentTransactionDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_HolderCommitmentTransactionDecodeErrorZ* orig_conv = (LDKCResult_HolderCommitmentTransactionDecodeErrorZ*)(orig & ~1); + LDKCResult_HolderCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HolderCommitmentTransactionDecodeErrorZ), "LDKCResult_HolderCommitmentTransactionDecodeErrorZ"); + *ret_conv = CResult_HolderCommitmentTransactionDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_ok(int8_tArray o) { - LDKThirtyTwoBytes o_ref; - CHECK(*((uint32_t*)o) == 32); - memcpy(o_ref.data, (uint8_t*)(o + 4), 32); - LDKCResult_PaymentIdPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentSendFailureZ), "LDKCResult_PaymentIdPaymentSendFailureZ"); - *ret_conv = CResult_PaymentIdPaymentSendFailureZ_ok(o_ref); +uint32_t __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_ok(uint32_t o) { + LDKBuiltCommitmentTransaction o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = BuiltCommitmentTransaction_clone(&o_conv); + LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ), "LDKCResult_BuiltCommitmentTransactionDecodeErrorZ"); + *ret_conv = CResult_BuiltCommitmentTransactionDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_err(uint32_t e) { - void* e_ptr = (void*)(((uint64_t)e) & ~1); - CHECK_ACCESS(e_ptr); - LDKPaymentSendFailure e_conv = *(LDKPaymentSendFailure*)(e_ptr); - e_conv = PaymentSendFailure_clone((LDKPaymentSendFailure*)(((uint64_t)e) & ~1)); - LDKCResult_PaymentIdPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentSendFailureZ), "LDKCResult_PaymentIdPaymentSendFailureZ"); - *ret_conv = CResult_PaymentIdPaymentSendFailureZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ), "LDKCResult_BuiltCommitmentTransactionDecodeErrorZ"); + *ret_conv = CResult_BuiltCommitmentTransactionDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_is_ok(uint32_t o) { - LDKCResult_PaymentIdPaymentSendFailureZ* o_conv = (LDKCResult_PaymentIdPaymentSendFailureZ*)(o & ~1); - jboolean ret_val = CResult_PaymentIdPaymentSendFailureZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* o_conv = (LDKCResult_BuiltCommitmentTransactionDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_BuiltCommitmentTransactionDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_PaymentIdPaymentSendFailureZ _res_conv = *(LDKCResult_PaymentIdPaymentSendFailureZ*)(_res_ptr); + LDKCResult_BuiltCommitmentTransactionDecodeErrorZ _res_conv = *(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_PaymentIdPaymentSendFailureZ_free(_res_conv); + CResult_BuiltCommitmentTransactionDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_PaymentIdPaymentSendFailureZ_clone_ptr(LDKCResult_PaymentIdPaymentSendFailureZ *NONNULL_PTR arg) { - LDKCResult_PaymentIdPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentSendFailureZ), "LDKCResult_PaymentIdPaymentSendFailureZ"); - *ret_conv = CResult_PaymentIdPaymentSendFailureZ_clone(arg); +static inline uint64_t CResult_BuiltCommitmentTransactionDecodeErrorZ_clone_ptr(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ), "LDKCResult_BuiltCommitmentTransactionDecodeErrorZ"); + *ret_conv = CResult_BuiltCommitmentTransactionDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_clone_ptr(uint32_t arg) { - LDKCResult_PaymentIdPaymentSendFailureZ* arg_conv = (LDKCResult_PaymentIdPaymentSendFailureZ*)(arg & ~1); - int64_t ret_val = CResult_PaymentIdPaymentSendFailureZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* arg_conv = (LDKCResult_BuiltCommitmentTransactionDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_BuiltCommitmentTransactionDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_clone(uint32_t orig) { - LDKCResult_PaymentIdPaymentSendFailureZ* orig_conv = (LDKCResult_PaymentIdPaymentSendFailureZ*)(orig & ~1); - LDKCResult_PaymentIdPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentSendFailureZ), "LDKCResult_PaymentIdPaymentSendFailureZ"); - *ret_conv = CResult_PaymentIdPaymentSendFailureZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* orig_conv = (LDKCResult_BuiltCommitmentTransactionDecodeErrorZ*)(orig & ~1); + LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ), "LDKCResult_BuiltCommitmentTransactionDecodeErrorZ"); + *ret_conv = CResult_BuiltCommitmentTransactionDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_ok() { - LDKCResult_NonePaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentSendFailureZ), "LDKCResult_NonePaymentSendFailureZ"); - *ret_conv = CResult_NonePaymentSendFailureZ_ok(); +uint32_t __attribute__((visibility("default"))) TS_CResult_TrustedClosingTransactionNoneZ_ok(uint32_t o) { + LDKTrustedClosingTransaction o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + // Warning: we need a move here but no clone is available for LDKTrustedClosingTransaction + LDKCResult_TrustedClosingTransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TrustedClosingTransactionNoneZ), "LDKCResult_TrustedClosingTransactionNoneZ"); + *ret_conv = CResult_TrustedClosingTransactionNoneZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_err(uint32_t e) { - void* e_ptr = (void*)(((uint64_t)e) & ~1); - CHECK_ACCESS(e_ptr); - LDKPaymentSendFailure e_conv = *(LDKPaymentSendFailure*)(e_ptr); - e_conv = PaymentSendFailure_clone((LDKPaymentSendFailure*)(((uint64_t)e) & ~1)); - LDKCResult_NonePaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentSendFailureZ), "LDKCResult_NonePaymentSendFailureZ"); - *ret_conv = CResult_NonePaymentSendFailureZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_TrustedClosingTransactionNoneZ_err() { + LDKCResult_TrustedClosingTransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TrustedClosingTransactionNoneZ), "LDKCResult_TrustedClosingTransactionNoneZ"); + *ret_conv = CResult_TrustedClosingTransactionNoneZ_err(); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_is_ok(uint32_t o) { - LDKCResult_NonePaymentSendFailureZ* o_conv = (LDKCResult_NonePaymentSendFailureZ*)(o & ~1); - jboolean ret_val = CResult_NonePaymentSendFailureZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_TrustedClosingTransactionNoneZ_is_ok(uint32_t o) { + LDKCResult_TrustedClosingTransactionNoneZ* o_conv = (LDKCResult_TrustedClosingTransactionNoneZ*)(o & ~1); + jboolean ret_val = CResult_TrustedClosingTransactionNoneZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_TrustedClosingTransactionNoneZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_NonePaymentSendFailureZ _res_conv = *(LDKCResult_NonePaymentSendFailureZ*)(_res_ptr); + LDKCResult_TrustedClosingTransactionNoneZ _res_conv = *(LDKCResult_TrustedClosingTransactionNoneZ*)(_res_ptr); FREE((void*)_res); - CResult_NonePaymentSendFailureZ_free(_res_conv); + CResult_TrustedClosingTransactionNoneZ_free(_res_conv); } -static inline uint64_t CResult_NonePaymentSendFailureZ_clone_ptr(LDKCResult_NonePaymentSendFailureZ *NONNULL_PTR arg) { - LDKCResult_NonePaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentSendFailureZ), "LDKCResult_NonePaymentSendFailureZ"); - *ret_conv = CResult_NonePaymentSendFailureZ_clone(arg); +uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_ok(uint32_t o) { + LDKCommitmentTransaction o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = CommitmentTransaction_clone(&o_conv); + LDKCResult_CommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentTransactionDecodeErrorZ), "LDKCResult_CommitmentTransactionDecodeErrorZ"); + *ret_conv = CResult_CommitmentTransactionDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_clone_ptr(uint32_t arg) { - LDKCResult_NonePaymentSendFailureZ* arg_conv = (LDKCResult_NonePaymentSendFailureZ*)(arg & ~1); - int64_t ret_val = CResult_NonePaymentSendFailureZ_clone_ptr(arg_conv); + +uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_CommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentTransactionDecodeErrorZ), "LDKCResult_CommitmentTransactionDecodeErrorZ"); + *ret_conv = CResult_CommitmentTransactionDecodeErrorZ_err(e_conv); + return (uint64_t)ret_conv; +} + +jboolean __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_CommitmentTransactionDecodeErrorZ* o_conv = (LDKCResult_CommitmentTransactionDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_CommitmentTransactionDecodeErrorZ_is_ok(o_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_clone(uint32_t orig) { - LDKCResult_NonePaymentSendFailureZ* orig_conv = (LDKCResult_NonePaymentSendFailureZ*)(orig & ~1); - LDKCResult_NonePaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentSendFailureZ), "LDKCResult_NonePaymentSendFailureZ"); - *ret_conv = CResult_NonePaymentSendFailureZ_clone(orig_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_CommitmentTransactionDecodeErrorZ _res_conv = *(LDKCResult_CommitmentTransactionDecodeErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_CommitmentTransactionDecodeErrorZ_free(_res_conv); } -static inline uint64_t C2Tuple_PaymentHashPaymentIdZ_clone_ptr(LDKC2Tuple_PaymentHashPaymentIdZ *NONNULL_PTR arg) { - LDKC2Tuple_PaymentHashPaymentIdZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentIdZ), "LDKC2Tuple_PaymentHashPaymentIdZ"); - *ret_conv = C2Tuple_PaymentHashPaymentIdZ_clone(arg); - return ((uint64_t)ret_conv); +static inline uint64_t CResult_CommitmentTransactionDecodeErrorZ_clone_ptr(LDKCResult_CommitmentTransactionDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_CommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentTransactionDecodeErrorZ), "LDKCResult_CommitmentTransactionDecodeErrorZ"); + *ret_conv = CResult_CommitmentTransactionDecodeErrorZ_clone(arg); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentIdZ_clone_ptr(uint32_t arg) { - LDKC2Tuple_PaymentHashPaymentIdZ* arg_conv = (LDKC2Tuple_PaymentHashPaymentIdZ*)(arg & ~1); - int64_t ret_val = C2Tuple_PaymentHashPaymentIdZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_CommitmentTransactionDecodeErrorZ* arg_conv = (LDKCResult_CommitmentTransactionDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_CommitmentTransactionDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentIdZ_clone(uint32_t orig) { - LDKC2Tuple_PaymentHashPaymentIdZ* orig_conv = (LDKC2Tuple_PaymentHashPaymentIdZ*)(orig & ~1); - LDKC2Tuple_PaymentHashPaymentIdZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentIdZ), "LDKC2Tuple_PaymentHashPaymentIdZ"); - *ret_conv = C2Tuple_PaymentHashPaymentIdZ_clone(orig_conv); - return ((uint64_t)ret_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentTransactionDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_CommitmentTransactionDecodeErrorZ* orig_conv = (LDKCResult_CommitmentTransactionDecodeErrorZ*)(orig & ~1); + LDKCResult_CommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentTransactionDecodeErrorZ), "LDKCResult_CommitmentTransactionDecodeErrorZ"); + *ret_conv = CResult_CommitmentTransactionDecodeErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentIdZ_new(int8_tArray a, int8_tArray b) { - LDKThirtyTwoBytes a_ref; - CHECK(*((uint32_t*)a) == 32); - memcpy(a_ref.data, (uint8_t*)(a + 4), 32); - LDKThirtyTwoBytes b_ref; - CHECK(*((uint32_t*)b) == 32); - memcpy(b_ref.data, (uint8_t*)(b + 4), 32); - LDKC2Tuple_PaymentHashPaymentIdZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentIdZ), "LDKC2Tuple_PaymentHashPaymentIdZ"); - *ret_conv = C2Tuple_PaymentHashPaymentIdZ_new(a_ref, b_ref); - return ((uint64_t)ret_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_TrustedCommitmentTransactionNoneZ_ok(uint32_t o) { + LDKTrustedCommitmentTransaction o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + // Warning: we need a move here but no clone is available for LDKTrustedCommitmentTransaction + LDKCResult_TrustedCommitmentTransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TrustedCommitmentTransactionNoneZ), "LDKCResult_TrustedCommitmentTransactionNoneZ"); + *ret_conv = CResult_TrustedCommitmentTransactionNoneZ_ok(o_conv); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentIdZ_free(uint32_t _res) { +uint32_t __attribute__((visibility("default"))) TS_CResult_TrustedCommitmentTransactionNoneZ_err() { + LDKCResult_TrustedCommitmentTransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TrustedCommitmentTransactionNoneZ), "LDKCResult_TrustedCommitmentTransactionNoneZ"); + *ret_conv = CResult_TrustedCommitmentTransactionNoneZ_err(); + return (uint64_t)ret_conv; +} + +jboolean __attribute__((visibility("default"))) TS_CResult_TrustedCommitmentTransactionNoneZ_is_ok(uint32_t o) { + LDKCResult_TrustedCommitmentTransactionNoneZ* o_conv = (LDKCResult_TrustedCommitmentTransactionNoneZ*)(o & ~1); + jboolean ret_val = CResult_TrustedCommitmentTransactionNoneZ_is_ok(o_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_CResult_TrustedCommitmentTransactionNoneZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKC2Tuple_PaymentHashPaymentIdZ _res_conv = *(LDKC2Tuple_PaymentHashPaymentIdZ*)(_res_ptr); + LDKCResult_TrustedCommitmentTransactionNoneZ _res_conv = *(LDKCResult_TrustedCommitmentTransactionNoneZ*)(_res_ptr); FREE((void*)_res); - C2Tuple_PaymentHashPaymentIdZ_free(_res_conv); + CResult_TrustedCommitmentTransactionNoneZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_ok(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKC2Tuple_PaymentHashPaymentIdZ o_conv = *(LDKC2Tuple_PaymentHashPaymentIdZ*)(o_ptr); - o_conv = C2Tuple_PaymentHashPaymentIdZ_clone((LDKC2Tuple_PaymentHashPaymentIdZ*)(((uint64_t)o) & ~1)); - LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ), "LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ"); - *ret_conv = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_ok(o_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_ok(ptrArray o) { + LDKCVec_SignatureZ o_constr; + o_constr.datalen = o->arr_len; + if (o_constr.datalen > 0) + o_constr.data = MALLOC(o_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); + else + o_constr.data = NULL; + int8_tArray* o_vals = (void*) o->elems; + for (size_t m = 0; m < o_constr.datalen; m++) { + int8_tArray o_conv_12 = o_vals[m]; + LDKSignature o_conv_12_ref; + CHECK(o_conv_12->arr_len == 64); + memcpy(o_conv_12_ref.compact_form, o_conv_12->elems, 64); + o_constr.data[m] = o_conv_12_ref; + } + LDKCResult_CVec_SignatureZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_SignatureZNoneZ), "LDKCResult_CVec_SignatureZNoneZ"); + *ret_conv = CResult_CVec_SignatureZNoneZ_ok(o_constr); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_err(uint32_t e) { - void* e_ptr = (void*)(((uint64_t)e) & ~1); - CHECK_ACCESS(e_ptr); - LDKPaymentSendFailure e_conv = *(LDKPaymentSendFailure*)(e_ptr); - e_conv = PaymentSendFailure_clone((LDKPaymentSendFailure*)(((uint64_t)e) & ~1)); - LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ), "LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ"); - *ret_conv = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_err() { + LDKCResult_CVec_SignatureZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_SignatureZNoneZ), "LDKCResult_CVec_SignatureZNoneZ"); + *ret_conv = CResult_CVec_SignatureZNoneZ_err(); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_is_ok(uint32_t o) { - LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* o_conv = (LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ*)(o & ~1); - jboolean ret_val = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_is_ok(uint32_t o) { + LDKCResult_CVec_SignatureZNoneZ* o_conv = (LDKCResult_CVec_SignatureZNoneZ*)(o & ~1); + jboolean ret_val = CResult_CVec_SignatureZNoneZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ _res_conv = *(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ*)(_res_ptr); + LDKCResult_CVec_SignatureZNoneZ _res_conv = *(LDKCResult_CVec_SignatureZNoneZ*)(_res_ptr); FREE((void*)_res); - CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_free(_res_conv); + CResult_CVec_SignatureZNoneZ_free(_res_conv); } -static inline uint64_t CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone_ptr(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ *NONNULL_PTR arg) { - LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ), "LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ"); - *ret_conv = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone(arg); +static inline uint64_t CResult_CVec_SignatureZNoneZ_clone_ptr(LDKCResult_CVec_SignatureZNoneZ *NONNULL_PTR arg) { + LDKCResult_CVec_SignatureZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_SignatureZNoneZ), "LDKCResult_CVec_SignatureZNoneZ"); + *ret_conv = CResult_CVec_SignatureZNoneZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone_ptr(uint32_t arg) { - LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* arg_conv = (LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ*)(arg & ~1); - int64_t ret_val = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_clone_ptr(uint32_t arg) { + LDKCResult_CVec_SignatureZNoneZ* arg_conv = (LDKCResult_CVec_SignatureZNoneZ*)(arg & ~1); + int64_t ret_val = CResult_CVec_SignatureZNoneZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone(uint32_t orig) { - LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* orig_conv = (LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ*)(orig & ~1); - LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ), "LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ"); - *ret_conv = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_SignatureZNoneZ_clone(uint32_t orig) { + LDKCResult_CVec_SignatureZNoneZ* orig_conv = (LDKCResult_CVec_SignatureZNoneZ*)(orig & ~1); + LDKCResult_CVec_SignatureZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_SignatureZNoneZ), "LDKCResult_CVec_SignatureZNoneZ"); + *ret_conv = CResult_CVec_SignatureZNoneZ_clone(orig_conv); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_CVec_NetAddressZ_free(uint32_tArray _res) { - LDKCVec_NetAddressZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKNetAddress), "LDKCVec_NetAddressZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t m = 0; m < _res_constr.datalen; m++) { - uint32_t _res_conv_12 = _res_vals[m]; - void* _res_conv_12_ptr = (void*)(((uint64_t)_res_conv_12) & ~1); - CHECK_ACCESS(_res_conv_12_ptr); - LDKNetAddress _res_conv_12_conv = *(LDKNetAddress*)(_res_conv_12_ptr); - FREE((void*)_res_conv_12); - _res_constr.data[m] = _res_conv_12_conv; - } - CVec_NetAddressZ_free(_res_constr); -} - -static inline uint64_t C2Tuple_PaymentHashPaymentSecretZ_clone_ptr(LDKC2Tuple_PaymentHashPaymentSecretZ *NONNULL_PTR arg) { - LDKC2Tuple_PaymentHashPaymentSecretZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentSecretZ), "LDKC2Tuple_PaymentHashPaymentSecretZ"); - *ret_conv = C2Tuple_PaymentHashPaymentSecretZ_clone(arg); - return ((uint64_t)ret_conv); -} -int64_t __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentSecretZ_clone_ptr(uint32_t arg) { - LDKC2Tuple_PaymentHashPaymentSecretZ* arg_conv = (LDKC2Tuple_PaymentHashPaymentSecretZ*)(arg & ~1); - int64_t ret_val = C2Tuple_PaymentHashPaymentSecretZ_clone_ptr(arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_ok(uint32_t o) { + LDKShutdownScript o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = ShutdownScript_clone(&o_conv); + LDKCResult_ShutdownScriptDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptDecodeErrorZ), "LDKCResult_ShutdownScriptDecodeErrorZ"); + *ret_conv = CResult_ShutdownScriptDecodeErrorZ_ok(o_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentSecretZ_clone(uint32_t orig) { - LDKC2Tuple_PaymentHashPaymentSecretZ* orig_conv = (LDKC2Tuple_PaymentHashPaymentSecretZ*)(orig & ~1); - LDKC2Tuple_PaymentHashPaymentSecretZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentSecretZ), "LDKC2Tuple_PaymentHashPaymentSecretZ"); - *ret_conv = C2Tuple_PaymentHashPaymentSecretZ_clone(orig_conv); - return ((uint64_t)ret_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_ShutdownScriptDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptDecodeErrorZ), "LDKCResult_ShutdownScriptDecodeErrorZ"); + *ret_conv = CResult_ShutdownScriptDecodeErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentSecretZ_new(int8_tArray a, int8_tArray b) { - LDKThirtyTwoBytes a_ref; - CHECK(*((uint32_t*)a) == 32); - memcpy(a_ref.data, (uint8_t*)(a + 4), 32); - LDKThirtyTwoBytes b_ref; - CHECK(*((uint32_t*)b) == 32); - memcpy(b_ref.data, (uint8_t*)(b + 4), 32); - LDKC2Tuple_PaymentHashPaymentSecretZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentSecretZ), "LDKC2Tuple_PaymentHashPaymentSecretZ"); - *ret_conv = C2Tuple_PaymentHashPaymentSecretZ_new(a_ref, b_ref); - return ((uint64_t)ret_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ShutdownScriptDecodeErrorZ* o_conv = (LDKCResult_ShutdownScriptDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ShutdownScriptDecodeErrorZ_is_ok(o_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentSecretZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKC2Tuple_PaymentHashPaymentSecretZ _res_conv = *(LDKC2Tuple_PaymentHashPaymentSecretZ*)(_res_ptr); + LDKCResult_ShutdownScriptDecodeErrorZ _res_conv = *(LDKCResult_ShutdownScriptDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - C2Tuple_PaymentHashPaymentSecretZ_free(_res_conv); + CResult_ShutdownScriptDecodeErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_ok(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKC2Tuple_PaymentHashPaymentSecretZ o_conv = *(LDKC2Tuple_PaymentHashPaymentSecretZ*)(o_ptr); - o_conv = C2Tuple_PaymentHashPaymentSecretZ_clone((LDKC2Tuple_PaymentHashPaymentSecretZ*)(((uint64_t)o) & ~1)); - LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ"); - *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_ok(o_conv); +static inline uint64_t CResult_ShutdownScriptDecodeErrorZ_clone_ptr(LDKCResult_ShutdownScriptDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ShutdownScriptDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptDecodeErrorZ), "LDKCResult_ShutdownScriptDecodeErrorZ"); + *ret_conv = CResult_ShutdownScriptDecodeErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ShutdownScriptDecodeErrorZ* arg_conv = (LDKCResult_ShutdownScriptDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ShutdownScriptDecodeErrorZ_clone_ptr(arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ShutdownScriptDecodeErrorZ* orig_conv = (LDKCResult_ShutdownScriptDecodeErrorZ*)(orig & ~1); + LDKCResult_ShutdownScriptDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptDecodeErrorZ), "LDKCResult_ShutdownScriptDecodeErrorZ"); + *ret_conv = CResult_ShutdownScriptDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_err() { - LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ"); - *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_err(); +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_ok(uint32_t o) { + LDKShutdownScript o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = ShutdownScript_clone(&o_conv); + LDKCResult_ShutdownScriptInvalidShutdownScriptZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptInvalidShutdownScriptZ), "LDKCResult_ShutdownScriptInvalidShutdownScriptZ"); + *ret_conv = CResult_ShutdownScriptInvalidShutdownScriptZ_ok(o_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_is_ok(uint32_t o) { - LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* o_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ*)(o & ~1); - jboolean ret_val = CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_is_ok(o_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_err(uint32_t e) { + LDKInvalidShutdownScript e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = InvalidShutdownScript_clone(&e_conv); + LDKCResult_ShutdownScriptInvalidShutdownScriptZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptInvalidShutdownScriptZ), "LDKCResult_ShutdownScriptInvalidShutdownScriptZ"); + *ret_conv = CResult_ShutdownScriptInvalidShutdownScriptZ_err(e_conv); + return (uint64_t)ret_conv; +} + +jboolean __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_is_ok(uint32_t o) { + LDKCResult_ShutdownScriptInvalidShutdownScriptZ* o_conv = (LDKCResult_ShutdownScriptInvalidShutdownScriptZ*)(o & ~1); + jboolean ret_val = CResult_ShutdownScriptInvalidShutdownScriptZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ _res_conv = *(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ*)(_res_ptr); + LDKCResult_ShutdownScriptInvalidShutdownScriptZ _res_conv = *(LDKCResult_ShutdownScriptInvalidShutdownScriptZ*)(_res_ptr); FREE((void*)_res); - CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_free(_res_conv); + CResult_ShutdownScriptInvalidShutdownScriptZ_free(_res_conv); } -static inline uint64_t CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone_ptr(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ *NONNULL_PTR arg) { - LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ"); - *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone(arg); +static inline uint64_t CResult_ShutdownScriptInvalidShutdownScriptZ_clone_ptr(LDKCResult_ShutdownScriptInvalidShutdownScriptZ *NONNULL_PTR arg) { + LDKCResult_ShutdownScriptInvalidShutdownScriptZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptInvalidShutdownScriptZ), "LDKCResult_ShutdownScriptInvalidShutdownScriptZ"); + *ret_conv = CResult_ShutdownScriptInvalidShutdownScriptZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone_ptr(uint32_t arg) { - LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* arg_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ*)(arg & ~1); - int64_t ret_val = CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_clone_ptr(uint32_t arg) { + LDKCResult_ShutdownScriptInvalidShutdownScriptZ* arg_conv = (LDKCResult_ShutdownScriptInvalidShutdownScriptZ*)(arg & ~1); + int64_t ret_val = CResult_ShutdownScriptInvalidShutdownScriptZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone(uint32_t orig) { - LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* orig_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ*)(orig & ~1); - LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ"); - *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownScriptInvalidShutdownScriptZ_clone(uint32_t orig) { + LDKCResult_ShutdownScriptInvalidShutdownScriptZ* orig_conv = (LDKCResult_ShutdownScriptInvalidShutdownScriptZ*)(orig & ~1); + LDKCResult_ShutdownScriptInvalidShutdownScriptZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptInvalidShutdownScriptZ), "LDKCResult_ShutdownScriptInvalidShutdownScriptZ"); + *ret_conv = CResult_ShutdownScriptInvalidShutdownScriptZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_ok(uint32_t o) { +uint32_t __attribute__((visibility("default"))) TS_COption_TypeZ_some(uint32_t o) { void* o_ptr = (void*)(((uint64_t)o) & ~1); CHECK_ACCESS(o_ptr); - LDKC2Tuple_PaymentHashPaymentSecretZ o_conv = *(LDKC2Tuple_PaymentHashPaymentSecretZ*)(o_ptr); - o_conv = C2Tuple_PaymentHashPaymentSecretZ_clone((LDKC2Tuple_PaymentHashPaymentSecretZ*)(((uint64_t)o) & ~1)); - LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ"); - *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_ok(o_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_err(uint32_t e) { - void* e_ptr = (void*)(((uint64_t)e) & ~1); - CHECK_ACCESS(e_ptr); - LDKAPIError e_conv = *(LDKAPIError*)(e_ptr); - e_conv = APIError_clone((LDKAPIError*)(((uint64_t)e) & ~1)); - LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ"); - *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_err(e_conv); - return (uint64_t)ret_conv; + LDKType o_conv = *(LDKType*)(o_ptr); + LDKCOption_TypeZ *ret_copy = MALLOC(sizeof(LDKCOption_TypeZ), "LDKCOption_TypeZ"); + *ret_copy = COption_TypeZ_some(o_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_is_ok(uint32_t o) { - LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* o_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ*)(o & ~1); - jboolean ret_val = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_is_ok(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_COption_TypeZ_none() { + LDKCOption_TypeZ *ret_copy = MALLOC(sizeof(LDKCOption_TypeZ), "LDKCOption_TypeZ"); + *ret_copy = COption_TypeZ_none(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_COption_TypeZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ _res_conv = *(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ*)(_res_ptr); + LDKCOption_TypeZ _res_conv = *(LDKCOption_TypeZ*)(_res_ptr); FREE((void*)_res); - CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_free(_res_conv); + COption_TypeZ_free(_res_conv); } -static inline uint64_t CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone_ptr(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ *NONNULL_PTR arg) { - LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ"); - *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone(arg); - return (uint64_t)ret_conv; +static inline uint64_t COption_TypeZ_clone_ptr(LDKCOption_TypeZ *NONNULL_PTR arg) { + LDKCOption_TypeZ *ret_copy = MALLOC(sizeof(LDKCOption_TypeZ), "LDKCOption_TypeZ"); + *ret_copy = COption_TypeZ_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* arg_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ*)(arg & ~1); - int64_t ret_val = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_COption_TypeZ_clone_ptr(uint32_t arg) { + LDKCOption_TypeZ* arg_conv = (LDKCOption_TypeZ*)arg; + int64_t ret_val = COption_TypeZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone(uint32_t orig) { - LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* orig_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ*)(orig & ~1); - LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ"); - *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_COption_TypeZ_clone(uint32_t orig) { + LDKCOption_TypeZ* orig_conv = (LDKCOption_TypeZ*)orig; + LDKCOption_TypeZ *ret_copy = MALLOC(sizeof(LDKCOption_TypeZ), "LDKCOption_TypeZ"); + *ret_copy = COption_TypeZ_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_ok(int8_tArray o) { - LDKThirtyTwoBytes o_ref; - CHECK(*((uint32_t*)o) == 32); - memcpy(o_ref.data, (uint8_t*)(o + 4), 32); - LDKCResult_PaymentSecretNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretNoneZ), "LDKCResult_PaymentSecretNoneZ"); - *ret_conv = CResult_PaymentSecretNoneZ_ok(o_ref); +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKCOption_TypeZ o_conv = *(LDKCOption_TypeZ*)(o_ptr); + o_conv = COption_TypeZ_clone((LDKCOption_TypeZ*)(((uint64_t)o) & ~1)); + LDKCResult_COption_TypeZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_TypeZDecodeErrorZ), "LDKCResult_COption_TypeZDecodeErrorZ"); + *ret_conv = CResult_COption_TypeZDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_err() { - LDKCResult_PaymentSecretNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretNoneZ), "LDKCResult_PaymentSecretNoneZ"); - *ret_conv = CResult_PaymentSecretNoneZ_err(); +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_COption_TypeZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_TypeZDecodeErrorZ), "LDKCResult_COption_TypeZDecodeErrorZ"); + *ret_conv = CResult_COption_TypeZDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_is_ok(uint32_t o) { - LDKCResult_PaymentSecretNoneZ* o_conv = (LDKCResult_PaymentSecretNoneZ*)(o & ~1); - jboolean ret_val = CResult_PaymentSecretNoneZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_COption_TypeZDecodeErrorZ* o_conv = (LDKCResult_COption_TypeZDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_COption_TypeZDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_PaymentSecretNoneZ _res_conv = *(LDKCResult_PaymentSecretNoneZ*)(_res_ptr); + LDKCResult_COption_TypeZDecodeErrorZ _res_conv = *(LDKCResult_COption_TypeZDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_PaymentSecretNoneZ_free(_res_conv); + CResult_COption_TypeZDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_PaymentSecretNoneZ_clone_ptr(LDKCResult_PaymentSecretNoneZ *NONNULL_PTR arg) { - LDKCResult_PaymentSecretNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretNoneZ), "LDKCResult_PaymentSecretNoneZ"); - *ret_conv = CResult_PaymentSecretNoneZ_clone(arg); +static inline uint64_t CResult_COption_TypeZDecodeErrorZ_clone_ptr(LDKCResult_COption_TypeZDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_COption_TypeZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_TypeZDecodeErrorZ), "LDKCResult_COption_TypeZDecodeErrorZ"); + *ret_conv = CResult_COption_TypeZDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_clone_ptr(uint32_t arg) { - LDKCResult_PaymentSecretNoneZ* arg_conv = (LDKCResult_PaymentSecretNoneZ*)(arg & ~1); - int64_t ret_val = CResult_PaymentSecretNoneZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_COption_TypeZDecodeErrorZ* arg_conv = (LDKCResult_COption_TypeZDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_COption_TypeZDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_clone(uint32_t orig) { - LDKCResult_PaymentSecretNoneZ* orig_conv = (LDKCResult_PaymentSecretNoneZ*)(orig & ~1); - LDKCResult_PaymentSecretNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretNoneZ), "LDKCResult_PaymentSecretNoneZ"); - *ret_conv = CResult_PaymentSecretNoneZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_COption_TypeZDecodeErrorZ* orig_conv = (LDKCResult_COption_TypeZDecodeErrorZ*)(orig & ~1); + LDKCResult_COption_TypeZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_TypeZDecodeErrorZ), "LDKCResult_COption_TypeZDecodeErrorZ"); + *ret_conv = CResult_COption_TypeZDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_ok(int8_tArray o) { - LDKThirtyTwoBytes o_ref; - CHECK(*((uint32_t*)o) == 32); - memcpy(o_ref.data, (uint8_t*)(o + 4), 32); - LDKCResult_PaymentSecretAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretAPIErrorZ), "LDKCResult_PaymentSecretAPIErrorZ"); - *ret_conv = CResult_PaymentSecretAPIErrorZ_ok(o_ref); +uint32_t __attribute__((visibility("default"))) TS_CResult_StringErrorZ_ok(jstring o) { + LDKStr o_conv = str_ref_to_owned_c(o); + LDKCResult_StringErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StringErrorZ), "LDKCResult_StringErrorZ"); + *ret_conv = CResult_StringErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_err(uint32_t e) { - void* e_ptr = (void*)(((uint64_t)e) & ~1); - CHECK_ACCESS(e_ptr); - LDKAPIError e_conv = *(LDKAPIError*)(e_ptr); - e_conv = APIError_clone((LDKAPIError*)(((uint64_t)e) & ~1)); - LDKCResult_PaymentSecretAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretAPIErrorZ), "LDKCResult_PaymentSecretAPIErrorZ"); - *ret_conv = CResult_PaymentSecretAPIErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_StringErrorZ_err(uint32_t e) { + LDKSecp256k1Error e_conv = LDKSecp256k1Error_from_js(e); + LDKCResult_StringErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StringErrorZ), "LDKCResult_StringErrorZ"); + *ret_conv = CResult_StringErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_is_ok(uint32_t o) { - LDKCResult_PaymentSecretAPIErrorZ* o_conv = (LDKCResult_PaymentSecretAPIErrorZ*)(o & ~1); - jboolean ret_val = CResult_PaymentSecretAPIErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_StringErrorZ_is_ok(uint32_t o) { + LDKCResult_StringErrorZ* o_conv = (LDKCResult_StringErrorZ*)(o & ~1); + jboolean ret_val = CResult_StringErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_StringErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_PaymentSecretAPIErrorZ _res_conv = *(LDKCResult_PaymentSecretAPIErrorZ*)(_res_ptr); + LDKCResult_StringErrorZ _res_conv = *(LDKCResult_StringErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_PaymentSecretAPIErrorZ_free(_res_conv); -} - -static inline uint64_t CResult_PaymentSecretAPIErrorZ_clone_ptr(LDKCResult_PaymentSecretAPIErrorZ *NONNULL_PTR arg) { - LDKCResult_PaymentSecretAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretAPIErrorZ), "LDKCResult_PaymentSecretAPIErrorZ"); - *ret_conv = CResult_PaymentSecretAPIErrorZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_PaymentSecretAPIErrorZ* arg_conv = (LDKCResult_PaymentSecretAPIErrorZ*)(arg & ~1); - int64_t ret_val = CResult_PaymentSecretAPIErrorZ_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_clone(uint32_t orig) { - LDKCResult_PaymentSecretAPIErrorZ* orig_conv = (LDKCResult_PaymentSecretAPIErrorZ*)(orig & ~1); - LDKCResult_PaymentSecretAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretAPIErrorZ), "LDKCResult_PaymentSecretAPIErrorZ"); - *ret_conv = CResult_PaymentSecretAPIErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; + CResult_StringErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_ok(int8_tArray o) { - LDKThirtyTwoBytes o_ref; - CHECK(*((uint32_t*)o) == 32); - memcpy(o_ref.data, (uint8_t*)(o + 4), 32); - LDKCResult_PaymentPreimageAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentPreimageAPIErrorZ), "LDKCResult_PaymentPreimageAPIErrorZ"); - *ret_conv = CResult_PaymentPreimageAPIErrorZ_ok(o_ref); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_ok(uint32_t o) { + LDKChannelMonitorUpdate o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = ChannelMonitorUpdate_clone(&o_conv); + LDKCResult_ChannelMonitorUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelMonitorUpdateDecodeErrorZ), "LDKCResult_ChannelMonitorUpdateDecodeErrorZ"); + *ret_conv = CResult_ChannelMonitorUpdateDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_err(uint32_t e) { - void* e_ptr = (void*)(((uint64_t)e) & ~1); - CHECK_ACCESS(e_ptr); - LDKAPIError e_conv = *(LDKAPIError*)(e_ptr); - e_conv = APIError_clone((LDKAPIError*)(((uint64_t)e) & ~1)); - LDKCResult_PaymentPreimageAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentPreimageAPIErrorZ), "LDKCResult_PaymentPreimageAPIErrorZ"); - *ret_conv = CResult_PaymentPreimageAPIErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_ChannelMonitorUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelMonitorUpdateDecodeErrorZ), "LDKCResult_ChannelMonitorUpdateDecodeErrorZ"); + *ret_conv = CResult_ChannelMonitorUpdateDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_is_ok(uint32_t o) { - LDKCResult_PaymentPreimageAPIErrorZ* o_conv = (LDKCResult_PaymentPreimageAPIErrorZ*)(o & ~1); - jboolean ret_val = CResult_PaymentPreimageAPIErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ChannelMonitorUpdateDecodeErrorZ* o_conv = (LDKCResult_ChannelMonitorUpdateDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ChannelMonitorUpdateDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_PaymentPreimageAPIErrorZ _res_conv = *(LDKCResult_PaymentPreimageAPIErrorZ*)(_res_ptr); + LDKCResult_ChannelMonitorUpdateDecodeErrorZ _res_conv = *(LDKCResult_ChannelMonitorUpdateDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_PaymentPreimageAPIErrorZ_free(_res_conv); + CResult_ChannelMonitorUpdateDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_PaymentPreimageAPIErrorZ_clone_ptr(LDKCResult_PaymentPreimageAPIErrorZ *NONNULL_PTR arg) { - LDKCResult_PaymentPreimageAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentPreimageAPIErrorZ), "LDKCResult_PaymentPreimageAPIErrorZ"); - *ret_conv = CResult_PaymentPreimageAPIErrorZ_clone(arg); +static inline uint64_t CResult_ChannelMonitorUpdateDecodeErrorZ_clone_ptr(LDKCResult_ChannelMonitorUpdateDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ChannelMonitorUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelMonitorUpdateDecodeErrorZ), "LDKCResult_ChannelMonitorUpdateDecodeErrorZ"); + *ret_conv = CResult_ChannelMonitorUpdateDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_PaymentPreimageAPIErrorZ* arg_conv = (LDKCResult_PaymentPreimageAPIErrorZ*)(arg & ~1); - int64_t ret_val = CResult_PaymentPreimageAPIErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ChannelMonitorUpdateDecodeErrorZ* arg_conv = (LDKCResult_ChannelMonitorUpdateDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ChannelMonitorUpdateDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_clone(uint32_t orig) { - LDKCResult_PaymentPreimageAPIErrorZ* orig_conv = (LDKCResult_PaymentPreimageAPIErrorZ*)(orig & ~1); - LDKCResult_PaymentPreimageAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentPreimageAPIErrorZ), "LDKCResult_PaymentPreimageAPIErrorZ"); - *ret_conv = CResult_PaymentPreimageAPIErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ChannelMonitorUpdateDecodeErrorZ* orig_conv = (LDKCResult_ChannelMonitorUpdateDecodeErrorZ*)(orig & ~1); + LDKCResult_ChannelMonitorUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelMonitorUpdateDecodeErrorZ), "LDKCResult_ChannelMonitorUpdateDecodeErrorZ"); + *ret_conv = CResult_ChannelMonitorUpdateDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_CVec_ChannelMonitorZ_free(uint32_tArray _res) { - LDKCVec_ChannelMonitorZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKChannelMonitor), "LDKCVec_ChannelMonitorZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t q = 0; q < _res_constr.datalen; q++) { - uint32_t _res_conv_16 = _res_vals[q]; - LDKChannelMonitor _res_conv_16_conv; - _res_conv_16_conv.inner = (void*)(_res_conv_16 & (~1)); - _res_conv_16_conv.is_owned = (_res_conv_16 & 1) || (_res_conv_16 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_16_conv); - _res_constr.data[q] = _res_conv_16_conv; - } - CVec_ChannelMonitorZ_free(_res_constr); +uint32_t __attribute__((visibility("default"))) TS_COption_MonitorEventZ_some(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKMonitorEvent o_conv = *(LDKMonitorEvent*)(o_ptr); + o_conv = MonitorEvent_clone((LDKMonitorEvent*)(((uint64_t)o) & ~1)); + LDKCOption_MonitorEventZ *ret_copy = MALLOC(sizeof(LDKCOption_MonitorEventZ), "LDKCOption_MonitorEventZ"); + *ret_copy = COption_MonitorEventZ_some(o_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelManagerZ_new(int8_tArray a, uint32_t b) { - LDKThirtyTwoBytes a_ref; - CHECK(*((uint32_t*)a) == 32); - memcpy(a_ref.data, (uint8_t*)(a + 4), 32); - LDKChannelManager b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = (b & 1) || (b == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - // Warning: we need a move here but no clone is available for LDKChannelManager - LDKC2Tuple_BlockHashChannelManagerZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlockHashChannelManagerZ), "LDKC2Tuple_BlockHashChannelManagerZ"); - *ret_conv = C2Tuple_BlockHashChannelManagerZ_new(a_ref, b_conv); - return ((uint64_t)ret_conv); +uint32_t __attribute__((visibility("default"))) TS_COption_MonitorEventZ_none() { + LDKCOption_MonitorEventZ *ret_copy = MALLOC(sizeof(LDKCOption_MonitorEventZ), "LDKCOption_MonitorEventZ"); + *ret_copy = COption_MonitorEventZ_none(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelManagerZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_COption_MonitorEventZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKC2Tuple_BlockHashChannelManagerZ _res_conv = *(LDKC2Tuple_BlockHashChannelManagerZ*)(_res_ptr); + LDKCOption_MonitorEventZ _res_conv = *(LDKCOption_MonitorEventZ*)(_res_ptr); FREE((void*)_res); - C2Tuple_BlockHashChannelManagerZ_free(_res_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_ok(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKC2Tuple_BlockHashChannelManagerZ o_conv = *(LDKC2Tuple_BlockHashChannelManagerZ*)(o_ptr); - // Warning: we may need a move here but no clone is available for LDKC2Tuple_BlockHashChannelManagerZ - LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ"); - *ret_conv = CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; + COption_MonitorEventZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ"); - *ret_conv = CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; +static inline uint64_t COption_MonitorEventZ_clone_ptr(LDKCOption_MonitorEventZ *NONNULL_PTR arg) { + LDKCOption_MonitorEventZ *ret_copy = MALLOC(sizeof(LDKCOption_MonitorEventZ), "LDKCOption_MonitorEventZ"); + *ret_copy = COption_MonitorEventZ_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } - -jboolean __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ* o_conv = (LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_is_ok(o_conv); +int64_t __attribute__((visibility("default"))) TS_COption_MonitorEventZ_clone_ptr(uint32_t arg) { + LDKCOption_MonitorEventZ* arg_conv = (LDKCOption_MonitorEventZ*)arg; + int64_t ret_val = COption_MonitorEventZ_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ _res_conv = *(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_free(_res_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_ok(uint32_t o) { - LDKChannelConfig o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ChannelConfig_clone(&o_conv); - LDKCResult_ChannelConfigDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelConfigDecodeErrorZ), "LDKCResult_ChannelConfigDecodeErrorZ"); - *ret_conv = CResult_ChannelConfigDecodeErrorZ_ok(o_conv); +uint32_t __attribute__((visibility("default"))) TS_COption_MonitorEventZ_clone(uint32_t orig) { + LDKCOption_MonitorEventZ* orig_conv = (LDKCOption_MonitorEventZ*)orig; + LDKCOption_MonitorEventZ *ret_copy = MALLOC(sizeof(LDKCOption_MonitorEventZ), "LDKCOption_MonitorEventZ"); + *ret_copy = COption_MonitorEventZ_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKCOption_MonitorEventZ o_conv = *(LDKCOption_MonitorEventZ*)(o_ptr); + o_conv = COption_MonitorEventZ_clone((LDKCOption_MonitorEventZ*)(((uint64_t)o) & ~1)); + LDKCResult_COption_MonitorEventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_MonitorEventZDecodeErrorZ), "LDKCResult_COption_MonitorEventZDecodeErrorZ"); + *ret_conv = CResult_COption_MonitorEventZDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_ChannelConfigDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelConfigDecodeErrorZ), "LDKCResult_ChannelConfigDecodeErrorZ"); - *ret_conv = CResult_ChannelConfigDecodeErrorZ_err(e_conv); + LDKCResult_COption_MonitorEventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_MonitorEventZDecodeErrorZ), "LDKCResult_COption_MonitorEventZDecodeErrorZ"); + *ret_conv = CResult_COption_MonitorEventZDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ChannelConfigDecodeErrorZ* o_conv = (LDKCResult_ChannelConfigDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ChannelConfigDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_COption_MonitorEventZDecodeErrorZ* o_conv = (LDKCResult_COption_MonitorEventZDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_COption_MonitorEventZDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_ChannelConfigDecodeErrorZ _res_conv = *(LDKCResult_ChannelConfigDecodeErrorZ*)(_res_ptr); + LDKCResult_COption_MonitorEventZDecodeErrorZ _res_conv = *(LDKCResult_COption_MonitorEventZDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_ChannelConfigDecodeErrorZ_free(_res_conv); + CResult_COption_MonitorEventZDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_ChannelConfigDecodeErrorZ_clone_ptr(LDKCResult_ChannelConfigDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ChannelConfigDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelConfigDecodeErrorZ), "LDKCResult_ChannelConfigDecodeErrorZ"); - *ret_conv = CResult_ChannelConfigDecodeErrorZ_clone(arg); +static inline uint64_t CResult_COption_MonitorEventZDecodeErrorZ_clone_ptr(LDKCResult_COption_MonitorEventZDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_COption_MonitorEventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_MonitorEventZDecodeErrorZ), "LDKCResult_COption_MonitorEventZDecodeErrorZ"); + *ret_conv = CResult_COption_MonitorEventZDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ChannelConfigDecodeErrorZ* arg_conv = (LDKCResult_ChannelConfigDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ChannelConfigDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_COption_MonitorEventZDecodeErrorZ* arg_conv = (LDKCResult_COption_MonitorEventZDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_COption_MonitorEventZDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelConfigDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ChannelConfigDecodeErrorZ* orig_conv = (LDKCResult_ChannelConfigDecodeErrorZ*)(orig & ~1); - LDKCResult_ChannelConfigDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelConfigDecodeErrorZ), "LDKCResult_ChannelConfigDecodeErrorZ"); - *ret_conv = CResult_ChannelConfigDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_COption_MonitorEventZDecodeErrorZ* orig_conv = (LDKCResult_COption_MonitorEventZDecodeErrorZ*)(orig & ~1); + LDKCResult_COption_MonitorEventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_MonitorEventZDecodeErrorZ), "LDKCResult_COption_MonitorEventZDecodeErrorZ"); + *ret_conv = CResult_COption_MonitorEventZDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_ok(uint32_t o) { - LDKOutPoint o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_ok(uint32_t o) { + LDKHTLCUpdate o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = OutPoint_clone(&o_conv); - LDKCResult_OutPointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OutPointDecodeErrorZ), "LDKCResult_OutPointDecodeErrorZ"); - *ret_conv = CResult_OutPointDecodeErrorZ_ok(o_conv); + o_conv = HTLCUpdate_clone(&o_conv); + LDKCResult_HTLCUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCUpdateDecodeErrorZ), "LDKCResult_HTLCUpdateDecodeErrorZ"); + *ret_conv = CResult_HTLCUpdateDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_OutPointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OutPointDecodeErrorZ), "LDKCResult_OutPointDecodeErrorZ"); - *ret_conv = CResult_OutPointDecodeErrorZ_err(e_conv); + LDKCResult_HTLCUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCUpdateDecodeErrorZ), "LDKCResult_HTLCUpdateDecodeErrorZ"); + *ret_conv = CResult_HTLCUpdateDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_OutPointDecodeErrorZ* o_conv = (LDKCResult_OutPointDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_OutPointDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_HTLCUpdateDecodeErrorZ* o_conv = (LDKCResult_HTLCUpdateDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_HTLCUpdateDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_OutPointDecodeErrorZ _res_conv = *(LDKCResult_OutPointDecodeErrorZ*)(_res_ptr); + LDKCResult_HTLCUpdateDecodeErrorZ _res_conv = *(LDKCResult_HTLCUpdateDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_OutPointDecodeErrorZ_free(_res_conv); + CResult_HTLCUpdateDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_OutPointDecodeErrorZ_clone_ptr(LDKCResult_OutPointDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_OutPointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OutPointDecodeErrorZ), "LDKCResult_OutPointDecodeErrorZ"); - *ret_conv = CResult_OutPointDecodeErrorZ_clone(arg); +static inline uint64_t CResult_HTLCUpdateDecodeErrorZ_clone_ptr(LDKCResult_HTLCUpdateDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_HTLCUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCUpdateDecodeErrorZ), "LDKCResult_HTLCUpdateDecodeErrorZ"); + *ret_conv = CResult_HTLCUpdateDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_OutPointDecodeErrorZ* arg_conv = (LDKCResult_OutPointDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_OutPointDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_HTLCUpdateDecodeErrorZ* arg_conv = (LDKCResult_HTLCUpdateDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_HTLCUpdateDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_OutPointDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_OutPointDecodeErrorZ* orig_conv = (LDKCResult_OutPointDecodeErrorZ*)(orig & ~1); - LDKCResult_OutPointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OutPointDecodeErrorZ), "LDKCResult_OutPointDecodeErrorZ"); - *ret_conv = CResult_OutPointDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_HTLCUpdateDecodeErrorZ* orig_conv = (LDKCResult_HTLCUpdateDecodeErrorZ*)(orig & ~1); + LDKCResult_HTLCUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCUpdateDecodeErrorZ), "LDKCResult_HTLCUpdateDecodeErrorZ"); + *ret_conv = CResult_HTLCUpdateDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_COption_TypeZ_some(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKType o_conv = *(LDKType*)(o_ptr); - LDKCOption_TypeZ *ret_copy = MALLOC(sizeof(LDKCOption_TypeZ), "LDKCOption_TypeZ"); - *ret_copy = COption_TypeZ_some(o_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_ok() { + LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); + *ret_conv = CResult_NoneNoneZ_ok(); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_COption_TypeZ_none() { - LDKCOption_TypeZ *ret_copy = MALLOC(sizeof(LDKCOption_TypeZ), "LDKCOption_TypeZ"); - *ret_copy = COption_TypeZ_none(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_err() { + LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); + *ret_conv = CResult_NoneNoneZ_err(); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_COption_TypeZ_free(uint32_t _res) { +jboolean __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_is_ok(uint32_t o) { + LDKCResult_NoneNoneZ* o_conv = (LDKCResult_NoneNoneZ*)(o & ~1); + jboolean ret_val = CResult_NoneNoneZ_is_ok(o_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCOption_TypeZ _res_conv = *(LDKCOption_TypeZ*)(_res_ptr); + LDKCResult_NoneNoneZ _res_conv = *(LDKCResult_NoneNoneZ*)(_res_ptr); FREE((void*)_res); - COption_TypeZ_free(_res_conv); + CResult_NoneNoneZ_free(_res_conv); } -static inline uint64_t COption_TypeZ_clone_ptr(LDKCOption_TypeZ *NONNULL_PTR arg) { - LDKCOption_TypeZ *ret_copy = MALLOC(sizeof(LDKCOption_TypeZ), "LDKCOption_TypeZ"); - *ret_copy = COption_TypeZ_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +static inline uint64_t CResult_NoneNoneZ_clone_ptr(LDKCResult_NoneNoneZ *NONNULL_PTR arg) { + LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); + *ret_conv = CResult_NoneNoneZ_clone(arg); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_COption_TypeZ_clone_ptr(uint32_t arg) { - LDKCOption_TypeZ* arg_conv = (LDKCOption_TypeZ*)arg; - int64_t ret_val = COption_TypeZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_clone_ptr(uint32_t arg) { + LDKCResult_NoneNoneZ* arg_conv = (LDKCResult_NoneNoneZ*)(arg & ~1); + int64_t ret_val = CResult_NoneNoneZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_COption_TypeZ_clone(uint32_t orig) { - LDKCOption_TypeZ* orig_conv = (LDKCOption_TypeZ*)orig; - LDKCOption_TypeZ *ret_copy = MALLOC(sizeof(LDKCOption_TypeZ), "LDKCOption_TypeZ"); - *ret_copy = COption_TypeZ_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_ok(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKCOption_TypeZ o_conv = *(LDKCOption_TypeZ*)(o_ptr); - o_conv = COption_TypeZ_clone((LDKCOption_TypeZ*)(((uint64_t)o) & ~1)); - LDKCResult_COption_TypeZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_TypeZDecodeErrorZ), "LDKCResult_COption_TypeZDecodeErrorZ"); - *ret_conv = CResult_COption_TypeZDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_COption_TypeZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_TypeZDecodeErrorZ), "LDKCResult_COption_TypeZDecodeErrorZ"); - *ret_conv = CResult_COption_TypeZDecodeErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneNoneZ_clone(uint32_t orig) { + LDKCResult_NoneNoneZ* orig_conv = (LDKCResult_NoneNoneZ*)(orig & ~1); + LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); + *ret_conv = CResult_NoneNoneZ_clone(orig_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_COption_TypeZDecodeErrorZ* o_conv = (LDKCResult_COption_TypeZDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_COption_TypeZDecodeErrorZ_is_ok(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_OutPointScriptZ_new(uint32_t a, int8_tArray b) { + LDKOutPoint a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = (a & 1) || (a == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + a_conv = OutPoint_clone(&a_conv); + LDKCVec_u8Z b_ref; + b_ref.datalen = b->arr_len; + b_ref.data = MALLOC(b_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(b_ref.data, b->elems, b_ref.datalen); + LDKC2Tuple_OutPointScriptZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_OutPointScriptZ), "LDKC2Tuple_OutPointScriptZ"); + *ret_conv = C2Tuple_OutPointScriptZ_new(a_conv, b_ref); + return ((uint64_t)ret_conv); } -void __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_C2Tuple_OutPointScriptZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_COption_TypeZDecodeErrorZ _res_conv = *(LDKCResult_COption_TypeZDecodeErrorZ*)(_res_ptr); + LDKC2Tuple_OutPointScriptZ _res_conv = *(LDKC2Tuple_OutPointScriptZ*)(_res_ptr); FREE((void*)_res); - CResult_COption_TypeZDecodeErrorZ_free(_res_conv); -} - -static inline uint64_t CResult_COption_TypeZDecodeErrorZ_clone_ptr(LDKCResult_COption_TypeZDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_COption_TypeZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_TypeZDecodeErrorZ), "LDKCResult_COption_TypeZDecodeErrorZ"); - *ret_conv = CResult_COption_TypeZDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_COption_TypeZDecodeErrorZ* arg_conv = (LDKCResult_COption_TypeZDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_COption_TypeZDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; + C2Tuple_OutPointScriptZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_COption_TypeZDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_COption_TypeZDecodeErrorZ* orig_conv = (LDKCResult_COption_TypeZDecodeErrorZ*)(orig & ~1); - LDKCResult_COption_TypeZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_TypeZDecodeErrorZ), "LDKCResult_COption_TypeZDecodeErrorZ"); - *ret_conv = CResult_COption_TypeZDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_u32ScriptZ_new(int32_t a, int8_tArray b) { + LDKCVec_u8Z b_ref; + b_ref.datalen = b->arr_len; + b_ref.data = MALLOC(b_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(b_ref.data, b->elems, b_ref.datalen); + LDKC2Tuple_u32ScriptZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_u32ScriptZ), "LDKC2Tuple_u32ScriptZ"); + *ret_conv = C2Tuple_u32ScriptZ_new(a, b_ref); + return ((uint64_t)ret_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentErrorZ_ok(int8_tArray o) { - LDKThirtyTwoBytes o_ref; - CHECK(*((uint32_t*)o) == 32); - memcpy(o_ref.data, (uint8_t*)(o + 4), 32); - LDKCResult_PaymentIdPaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentErrorZ), "LDKCResult_PaymentIdPaymentErrorZ"); - *ret_conv = CResult_PaymentIdPaymentErrorZ_ok(o_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_C2Tuple_u32ScriptZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKC2Tuple_u32ScriptZ _res_conv = *(LDKC2Tuple_u32ScriptZ*)(_res_ptr); + FREE((void*)_res); + C2Tuple_u32ScriptZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentErrorZ_err(uint32_t e) { - void* e_ptr = (void*)(((uint64_t)e) & ~1); - CHECK_ACCESS(e_ptr); - LDKPaymentError e_conv = *(LDKPaymentError*)(e_ptr); - e_conv = PaymentError_clone((LDKPaymentError*)(((uint64_t)e) & ~1)); - LDKCResult_PaymentIdPaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentErrorZ), "LDKCResult_PaymentIdPaymentErrorZ"); - *ret_conv = CResult_PaymentIdPaymentErrorZ_err(e_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_CVec_C2Tuple_u32ScriptZZ_free(uint32_tArray _res) { + LDKCVec_C2Tuple_u32ScriptZZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_u32ScriptZ), "LDKCVec_C2Tuple_u32ScriptZZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t v = 0; v < _res_constr.datalen; v++) { + uint32_t _res_conv_21 = _res_vals[v]; + void* _res_conv_21_ptr = (void*)(((uint64_t)_res_conv_21) & ~1); + CHECK_ACCESS(_res_conv_21_ptr); + LDKC2Tuple_u32ScriptZ _res_conv_21_conv = *(LDKC2Tuple_u32ScriptZ*)(_res_conv_21_ptr); + FREE((void*)_res_conv_21); + _res_constr.data[v] = _res_conv_21_conv; + } + CVec_C2Tuple_u32ScriptZZ_free(_res_constr); } -jboolean __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentErrorZ_is_ok(uint32_t o) { - LDKCResult_PaymentIdPaymentErrorZ* o_conv = (LDKCResult_PaymentIdPaymentErrorZ*)(o & ~1); - jboolean ret_val = CResult_PaymentIdPaymentErrorZ_is_ok(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_new(int8_tArray a, uint32_tArray b) { + LDKThirtyTwoBytes a_ref; + CHECK(a->arr_len == 32); + memcpy(a_ref.data, a->elems, 32); + LDKCVec_C2Tuple_u32ScriptZZ b_constr; + b_constr.datalen = b->arr_len; + if (b_constr.datalen > 0) + b_constr.data = MALLOC(b_constr.datalen * sizeof(LDKC2Tuple_u32ScriptZ), "LDKCVec_C2Tuple_u32ScriptZZ Elements"); + else + b_constr.data = NULL; + uint32_t* b_vals = b->elems; + for (size_t v = 0; v < b_constr.datalen; v++) { + uint32_t b_conv_21 = b_vals[v]; + void* b_conv_21_ptr = (void*)(((uint64_t)b_conv_21) & ~1); + CHECK_ACCESS(b_conv_21_ptr); + LDKC2Tuple_u32ScriptZ b_conv_21_conv = *(LDKC2Tuple_u32ScriptZ*)(b_conv_21_ptr); + // Warning: we may need a move here but no clone is available for LDKC2Tuple_u32ScriptZ + b_constr.data[v] = b_conv_21_conv; + } + LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ"); + *ret_conv = C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_new(a_ref, b_constr); + return ((uint64_t)ret_conv); } -void __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_PaymentIdPaymentErrorZ _res_conv = *(LDKCResult_PaymentIdPaymentErrorZ*)(_res_ptr); + LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ _res_conv = *(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ*)(_res_ptr); FREE((void*)_res); - CResult_PaymentIdPaymentErrorZ_free(_res_conv); + C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_free(_res_conv); } -static inline uint64_t CResult_PaymentIdPaymentErrorZ_clone_ptr(LDKCResult_PaymentIdPaymentErrorZ *NONNULL_PTR arg) { - LDKCResult_PaymentIdPaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentErrorZ), "LDKCResult_PaymentIdPaymentErrorZ"); - *ret_conv = CResult_PaymentIdPaymentErrorZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_PaymentIdPaymentErrorZ* arg_conv = (LDKCResult_PaymentIdPaymentErrorZ*)(arg & ~1); - int64_t ret_val = CResult_PaymentIdPaymentErrorZ_clone_ptr(arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ_free(uint32_tArray _res) { + LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ), "LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t o = 0; o < _res_constr.datalen; o++) { + uint32_t _res_conv_40 = _res_vals[o]; + void* _res_conv_40_ptr = (void*)(((uint64_t)_res_conv_40) & ~1); + CHECK_ACCESS(_res_conv_40_ptr); + LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ _res_conv_40_conv = *(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ*)(_res_conv_40_ptr); + FREE((void*)_res_conv_40); + _res_constr.data[o] = _res_conv_40_conv; + } + CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ_free(_res_constr); } -uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentErrorZ_clone(uint32_t orig) { - LDKCResult_PaymentIdPaymentErrorZ* orig_conv = (LDKCResult_PaymentIdPaymentErrorZ*)(orig & ~1); - LDKCResult_PaymentIdPaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentErrorZ), "LDKCResult_PaymentIdPaymentErrorZ"); - *ret_conv = CResult_PaymentIdPaymentErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_CVec_MonitorEventZ_free(uint32_tArray _res) { + LDKCVec_MonitorEventZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKMonitorEvent), "LDKCVec_MonitorEventZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t o = 0; o < _res_constr.datalen; o++) { + uint32_t _res_conv_14 = _res_vals[o]; + void* _res_conv_14_ptr = (void*)(((uint64_t)_res_conv_14) & ~1); + CHECK_ACCESS(_res_conv_14_ptr); + LDKMonitorEvent _res_conv_14_conv = *(LDKMonitorEvent*)(_res_conv_14_ptr); + FREE((void*)_res_conv_14); + _res_constr.data[o] = _res_conv_14_conv; + } + CVec_MonitorEventZ_free(_res_constr); } -uint32_t __attribute__((visibility("default"))) TS_CResult_SiPrefixNoneZ_ok(uint32_t o) { - LDKSiPrefix o_conv = LDKSiPrefix_from_js(o); - LDKCResult_SiPrefixNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SiPrefixNoneZ), "LDKCResult_SiPrefixNoneZ"); - *ret_conv = CResult_SiPrefixNoneZ_ok(o_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_CVec_EventZ_free(uint32_tArray _res) { + LDKCVec_EventZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKEvent), "LDKCVec_EventZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t h = 0; h < _res_constr.datalen; h++) { + uint32_t _res_conv_7 = _res_vals[h]; + void* _res_conv_7_ptr = (void*)(((uint64_t)_res_conv_7) & ~1); + CHECK_ACCESS(_res_conv_7_ptr); + LDKEvent _res_conv_7_conv = *(LDKEvent*)(_res_conv_7_ptr); + FREE((void*)_res_conv_7); + _res_constr.data[h] = _res_conv_7_conv; + } + CVec_EventZ_free(_res_constr); } -uint32_t __attribute__((visibility("default"))) TS_CResult_SiPrefixNoneZ_err() { - LDKCResult_SiPrefixNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SiPrefixNoneZ), "LDKCResult_SiPrefixNoneZ"); - *ret_conv = CResult_SiPrefixNoneZ_err(); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_CVec_TransactionZ_free(ptrArray _res) { + LDKCVec_TransactionZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKTransaction), "LDKCVec_TransactionZ Elements"); + else + _res_constr.data = NULL; + int8_tArray* _res_vals = (void*) _res->elems; + for (size_t m = 0; m < _res_constr.datalen; m++) { + int8_tArray _res_conv_12 = _res_vals[m]; + LDKTransaction _res_conv_12_ref; + _res_conv_12_ref.datalen = _res_conv_12->arr_len; + _res_conv_12_ref.data = MALLOC(_res_conv_12_ref.datalen, "LDKTransaction Bytes"); + memcpy(_res_conv_12_ref.data, _res_conv_12->elems, _res_conv_12_ref.datalen); + _res_conv_12_ref.data_is_owned = true; + _res_constr.data[m] = _res_conv_12_ref; + } + CVec_TransactionZ_free(_res_constr); } -jboolean __attribute__((visibility("default"))) TS_CResult_SiPrefixNoneZ_is_ok(uint32_t o) { - LDKCResult_SiPrefixNoneZ* o_conv = (LDKCResult_SiPrefixNoneZ*)(o & ~1); - jboolean ret_val = CResult_SiPrefixNoneZ_is_ok(o_conv); +static inline uint64_t C2Tuple_usizeTransactionZ_clone_ptr(LDKC2Tuple_usizeTransactionZ *NONNULL_PTR arg) { + LDKC2Tuple_usizeTransactionZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_usizeTransactionZ), "LDKC2Tuple_usizeTransactionZ"); + *ret_conv = C2Tuple_usizeTransactionZ_clone(arg); + return ((uint64_t)ret_conv); +} +int64_t __attribute__((visibility("default"))) TS_C2Tuple_usizeTransactionZ_clone_ptr(uint32_t arg) { + LDKC2Tuple_usizeTransactionZ* arg_conv = (LDKC2Tuple_usizeTransactionZ*)(arg & ~1); + int64_t ret_val = C2Tuple_usizeTransactionZ_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_SiPrefixNoneZ_free(uint32_t _res) { +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_usizeTransactionZ_clone(uint32_t orig) { + LDKC2Tuple_usizeTransactionZ* orig_conv = (LDKC2Tuple_usizeTransactionZ*)(orig & ~1); + LDKC2Tuple_usizeTransactionZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_usizeTransactionZ), "LDKC2Tuple_usizeTransactionZ"); + *ret_conv = C2Tuple_usizeTransactionZ_clone(orig_conv); + return ((uint64_t)ret_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_usizeTransactionZ_new(int64_t a, int8_tArray b) { + LDKTransaction b_ref; + b_ref.datalen = b->arr_len; + b_ref.data = MALLOC(b_ref.datalen, "LDKTransaction Bytes"); + memcpy(b_ref.data, b->elems, b_ref.datalen); + b_ref.data_is_owned = true; + LDKC2Tuple_usizeTransactionZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_usizeTransactionZ), "LDKC2Tuple_usizeTransactionZ"); + *ret_conv = C2Tuple_usizeTransactionZ_new(a, b_ref); + return ((uint64_t)ret_conv); +} + +void __attribute__((visibility("default"))) TS_C2Tuple_usizeTransactionZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_SiPrefixNoneZ _res_conv = *(LDKCResult_SiPrefixNoneZ*)(_res_ptr); + LDKC2Tuple_usizeTransactionZ _res_conv = *(LDKC2Tuple_usizeTransactionZ*)(_res_ptr); FREE((void*)_res); - CResult_SiPrefixNoneZ_free(_res_conv); + C2Tuple_usizeTransactionZ_free(_res_conv); } -static inline uint64_t CResult_SiPrefixNoneZ_clone_ptr(LDKCResult_SiPrefixNoneZ *NONNULL_PTR arg) { - LDKCResult_SiPrefixNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SiPrefixNoneZ), "LDKCResult_SiPrefixNoneZ"); - *ret_conv = CResult_SiPrefixNoneZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_SiPrefixNoneZ_clone_ptr(uint32_t arg) { - LDKCResult_SiPrefixNoneZ* arg_conv = (LDKCResult_SiPrefixNoneZ*)(arg & ~1); - int64_t ret_val = CResult_SiPrefixNoneZ_clone_ptr(arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_CVec_C2Tuple_usizeTransactionZZ_free(uint32_tArray _res) { + LDKCVec_C2Tuple_usizeTransactionZZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_usizeTransactionZ), "LDKCVec_C2Tuple_usizeTransactionZZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t c = 0; c < _res_constr.datalen; c++) { + uint32_t _res_conv_28 = _res_vals[c]; + void* _res_conv_28_ptr = (void*)(((uint64_t)_res_conv_28) & ~1); + CHECK_ACCESS(_res_conv_28_ptr); + LDKC2Tuple_usizeTransactionZ _res_conv_28_conv = *(LDKC2Tuple_usizeTransactionZ*)(_res_conv_28_ptr); + FREE((void*)_res_conv_28); + _res_constr.data[c] = _res_conv_28_conv; + } + CVec_C2Tuple_usizeTransactionZZ_free(_res_constr); } -uint32_t __attribute__((visibility("default"))) TS_CResult_SiPrefixNoneZ_clone(uint32_t orig) { - LDKCResult_SiPrefixNoneZ* orig_conv = (LDKCResult_SiPrefixNoneZ*)(orig & ~1); - LDKCResult_SiPrefixNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SiPrefixNoneZ), "LDKCResult_SiPrefixNoneZ"); - *ret_conv = CResult_SiPrefixNoneZ_clone(orig_conv); - return (uint64_t)ret_conv; +static inline uint64_t C2Tuple_u32TxOutZ_clone_ptr(LDKC2Tuple_u32TxOutZ *NONNULL_PTR arg) { + LDKC2Tuple_u32TxOutZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_u32TxOutZ), "LDKC2Tuple_u32TxOutZ"); + *ret_conv = C2Tuple_u32TxOutZ_clone(arg); + return ((uint64_t)ret_conv); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceNoneZ_ok(uint32_t o) { - LDKInvoice o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = Invoice_clone(&o_conv); - LDKCResult_InvoiceNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceNoneZ), "LDKCResult_InvoiceNoneZ"); - *ret_conv = CResult_InvoiceNoneZ_ok(o_conv); - return (uint64_t)ret_conv; +int64_t __attribute__((visibility("default"))) TS_C2Tuple_u32TxOutZ_clone_ptr(uint32_t arg) { + LDKC2Tuple_u32TxOutZ* arg_conv = (LDKC2Tuple_u32TxOutZ*)(arg & ~1); + int64_t ret_val = C2Tuple_u32TxOutZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceNoneZ_err() { - LDKCResult_InvoiceNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceNoneZ), "LDKCResult_InvoiceNoneZ"); - *ret_conv = CResult_InvoiceNoneZ_err(); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_u32TxOutZ_clone(uint32_t orig) { + LDKC2Tuple_u32TxOutZ* orig_conv = (LDKC2Tuple_u32TxOutZ*)(orig & ~1); + LDKC2Tuple_u32TxOutZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_u32TxOutZ), "LDKC2Tuple_u32TxOutZ"); + *ret_conv = C2Tuple_u32TxOutZ_clone(orig_conv); + return ((uint64_t)ret_conv); } -jboolean __attribute__((visibility("default"))) TS_CResult_InvoiceNoneZ_is_ok(uint32_t o) { - LDKCResult_InvoiceNoneZ* o_conv = (LDKCResult_InvoiceNoneZ*)(o & ~1); - jboolean ret_val = CResult_InvoiceNoneZ_is_ok(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_u32TxOutZ_new(int32_t a, uint32_t b) { + void* b_ptr = (void*)(((uint64_t)b) & ~1); + CHECK_ACCESS(b_ptr); + LDKTxOut b_conv = *(LDKTxOut*)(b_ptr); + b_conv = TxOut_clone((LDKTxOut*)(((uint64_t)b) & ~1)); + LDKC2Tuple_u32TxOutZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_u32TxOutZ), "LDKC2Tuple_u32TxOutZ"); + *ret_conv = C2Tuple_u32TxOutZ_new(a, b_conv); + return ((uint64_t)ret_conv); } -void __attribute__((visibility("default"))) TS_CResult_InvoiceNoneZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_C2Tuple_u32TxOutZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_InvoiceNoneZ _res_conv = *(LDKCResult_InvoiceNoneZ*)(_res_ptr); + LDKC2Tuple_u32TxOutZ _res_conv = *(LDKC2Tuple_u32TxOutZ*)(_res_ptr); FREE((void*)_res); - CResult_InvoiceNoneZ_free(_res_conv); + C2Tuple_u32TxOutZ_free(_res_conv); } -static inline uint64_t CResult_InvoiceNoneZ_clone_ptr(LDKCResult_InvoiceNoneZ *NONNULL_PTR arg) { - LDKCResult_InvoiceNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceNoneZ), "LDKCResult_InvoiceNoneZ"); - *ret_conv = CResult_InvoiceNoneZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_InvoiceNoneZ_clone_ptr(uint32_t arg) { - LDKCResult_InvoiceNoneZ* arg_conv = (LDKCResult_InvoiceNoneZ*)(arg & ~1); - int64_t ret_val = CResult_InvoiceNoneZ_clone_ptr(arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_CVec_C2Tuple_u32TxOutZZ_free(uint32_tArray _res) { + LDKCVec_C2Tuple_u32TxOutZZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_u32TxOutZ), "LDKCVec_C2Tuple_u32TxOutZZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t u = 0; u < _res_constr.datalen; u++) { + uint32_t _res_conv_20 = _res_vals[u]; + void* _res_conv_20_ptr = (void*)(((uint64_t)_res_conv_20) & ~1); + CHECK_ACCESS(_res_conv_20_ptr); + LDKC2Tuple_u32TxOutZ _res_conv_20_conv = *(LDKC2Tuple_u32TxOutZ*)(_res_conv_20_ptr); + FREE((void*)_res_conv_20); + _res_constr.data[u] = _res_conv_20_conv; + } + CVec_C2Tuple_u32TxOutZZ_free(_res_constr); } -uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceNoneZ_clone(uint32_t orig) { - LDKCResult_InvoiceNoneZ* orig_conv = (LDKCResult_InvoiceNoneZ*)(orig & ~1); - LDKCResult_InvoiceNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceNoneZ), "LDKCResult_InvoiceNoneZ"); - *ret_conv = CResult_InvoiceNoneZ_clone(orig_conv); - return (uint64_t)ret_conv; +static inline uint64_t C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone_ptr(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ *NONNULL_PTR arg) { + LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ"); + *ret_conv = C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(arg); + return ((uint64_t)ret_conv); } - -uint32_t __attribute__((visibility("default"))) TS_CResult_SignedRawInvoiceNoneZ_ok(uint32_t o) { - LDKSignedRawInvoice o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = SignedRawInvoice_clone(&o_conv); - LDKCResult_SignedRawInvoiceNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignedRawInvoiceNoneZ), "LDKCResult_SignedRawInvoiceNoneZ"); - *ret_conv = CResult_SignedRawInvoiceNoneZ_ok(o_conv); - return (uint64_t)ret_conv; +int64_t __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone_ptr(uint32_t arg) { + LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* arg_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ*)(arg & ~1); + int64_t ret_val = C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_SignedRawInvoiceNoneZ_err() { - LDKCResult_SignedRawInvoiceNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignedRawInvoiceNoneZ), "LDKCResult_SignedRawInvoiceNoneZ"); - *ret_conv = CResult_SignedRawInvoiceNoneZ_err(); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(uint32_t orig) { + LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* orig_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ*)(orig & ~1); + LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ"); + *ret_conv = C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(orig_conv); + return ((uint64_t)ret_conv); } -jboolean __attribute__((visibility("default"))) TS_CResult_SignedRawInvoiceNoneZ_is_ok(uint32_t o) { - LDKCResult_SignedRawInvoiceNoneZ* o_conv = (LDKCResult_SignedRawInvoiceNoneZ*)(o & ~1); - jboolean ret_val = CResult_SignedRawInvoiceNoneZ_is_ok(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_new(int8_tArray a, uint32_tArray b) { + LDKThirtyTwoBytes a_ref; + CHECK(a->arr_len == 32); + memcpy(a_ref.data, a->elems, 32); + LDKCVec_C2Tuple_u32TxOutZZ b_constr; + b_constr.datalen = b->arr_len; + if (b_constr.datalen > 0) + b_constr.data = MALLOC(b_constr.datalen * sizeof(LDKC2Tuple_u32TxOutZ), "LDKCVec_C2Tuple_u32TxOutZZ Elements"); + else + b_constr.data = NULL; + uint32_t* b_vals = b->elems; + for (size_t u = 0; u < b_constr.datalen; u++) { + uint32_t b_conv_20 = b_vals[u]; + void* b_conv_20_ptr = (void*)(((uint64_t)b_conv_20) & ~1); + CHECK_ACCESS(b_conv_20_ptr); + LDKC2Tuple_u32TxOutZ b_conv_20_conv = *(LDKC2Tuple_u32TxOutZ*)(b_conv_20_ptr); + b_conv_20_conv = C2Tuple_u32TxOutZ_clone((LDKC2Tuple_u32TxOutZ*)(((uint64_t)b_conv_20) & ~1)); + b_constr.data[u] = b_conv_20_conv; + } + LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ"); + *ret_conv = C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_new(a_ref, b_constr); + return ((uint64_t)ret_conv); } -void __attribute__((visibility("default"))) TS_CResult_SignedRawInvoiceNoneZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_SignedRawInvoiceNoneZ _res_conv = *(LDKCResult_SignedRawInvoiceNoneZ*)(_res_ptr); + LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ _res_conv = *(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ*)(_res_ptr); FREE((void*)_res); - CResult_SignedRawInvoiceNoneZ_free(_res_conv); + C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_free(_res_conv); } -static inline uint64_t CResult_SignedRawInvoiceNoneZ_clone_ptr(LDKCResult_SignedRawInvoiceNoneZ *NONNULL_PTR arg) { - LDKCResult_SignedRawInvoiceNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignedRawInvoiceNoneZ), "LDKCResult_SignedRawInvoiceNoneZ"); - *ret_conv = CResult_SignedRawInvoiceNoneZ_clone(arg); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_CVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ_free(uint32_tArray _res) { + LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t n = 0; n < _res_constr.datalen; n++) { + uint32_t _res_conv_39 = _res_vals[n]; + void* _res_conv_39_ptr = (void*)(((uint64_t)_res_conv_39) & ~1); + CHECK_ACCESS(_res_conv_39_ptr); + LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ _res_conv_39_conv = *(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ*)(_res_conv_39_ptr); + FREE((void*)_res_conv_39); + _res_constr.data[n] = _res_conv_39_conv; + } + CVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ_free(_res_constr); } -int64_t __attribute__((visibility("default"))) TS_CResult_SignedRawInvoiceNoneZ_clone_ptr(uint32_t arg) { - LDKCResult_SignedRawInvoiceNoneZ* arg_conv = (LDKCResult_SignedRawInvoiceNoneZ*)(arg & ~1); - int64_t ret_val = CResult_SignedRawInvoiceNoneZ_clone_ptr(arg_conv); - return ret_val; + +void __attribute__((visibility("default"))) TS_CVec_TxidZ_free(ptrArray _res) { + LDKCVec_TxidZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKThirtyTwoBytes), "LDKCVec_TxidZ Elements"); + else + _res_constr.data = NULL; + int8_tArray* _res_vals = (void*) _res->elems; + for (size_t m = 0; m < _res_constr.datalen; m++) { + int8_tArray _res_conv_12 = _res_vals[m]; + LDKThirtyTwoBytes _res_conv_12_ref; + CHECK(_res_conv_12->arr_len == 32); + memcpy(_res_conv_12_ref.data, _res_conv_12->elems, 32); + _res_constr.data[m] = _res_conv_12_ref; + } + CVec_TxidZ_free(_res_constr); } -uint32_t __attribute__((visibility("default"))) TS_CResult_SignedRawInvoiceNoneZ_clone(uint32_t orig) { - LDKCResult_SignedRawInvoiceNoneZ* orig_conv = (LDKCResult_SignedRawInvoiceNoneZ*)(orig & ~1); - LDKCResult_SignedRawInvoiceNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignedRawInvoiceNoneZ), "LDKCResult_SignedRawInvoiceNoneZ"); - *ret_conv = CResult_SignedRawInvoiceNoneZ_clone(orig_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_CVec_BalanceZ_free(uint32_tArray _res) { + LDKCVec_BalanceZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKBalance), "LDKCVec_BalanceZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t j = 0; j < _res_constr.datalen; j++) { + uint32_t _res_conv_9 = _res_vals[j]; + void* _res_conv_9_ptr = (void*)(((uint64_t)_res_conv_9) & ~1); + CHECK_ACCESS(_res_conv_9_ptr); + LDKBalance _res_conv_9_conv = *(LDKBalance*)(_res_conv_9_ptr); + FREE((void*)_res_conv_9); + _res_constr.data[j] = _res_conv_9_conv; + } + CVec_BalanceZ_free(_res_constr); } -static inline uint64_t C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone_ptr(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ *NONNULL_PTR arg) { - LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ), "LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ"); - *ret_conv = C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone(arg); +static inline uint64_t C2Tuple_BlockHashChannelMonitorZ_clone_ptr(LDKC2Tuple_BlockHashChannelMonitorZ *NONNULL_PTR arg) { + LDKC2Tuple_BlockHashChannelMonitorZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlockHashChannelMonitorZ), "LDKC2Tuple_BlockHashChannelMonitorZ"); + *ret_conv = C2Tuple_BlockHashChannelMonitorZ_clone(arg); return ((uint64_t)ret_conv); } -int64_t __attribute__((visibility("default"))) TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone_ptr(uint32_t arg) { - LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ* arg_conv = (LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ*)(arg & ~1); - int64_t ret_val = C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_clone_ptr(uint32_t arg) { + LDKC2Tuple_BlockHashChannelMonitorZ* arg_conv = (LDKC2Tuple_BlockHashChannelMonitorZ*)(arg & ~1); + int64_t ret_val = C2Tuple_BlockHashChannelMonitorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone(uint32_t orig) { - LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ* orig_conv = (LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ*)(orig & ~1); - LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ), "LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ"); - *ret_conv = C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_clone(uint32_t orig) { + LDKC2Tuple_BlockHashChannelMonitorZ* orig_conv = (LDKC2Tuple_BlockHashChannelMonitorZ*)(orig & ~1); + LDKC2Tuple_BlockHashChannelMonitorZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlockHashChannelMonitorZ), "LDKC2Tuple_BlockHashChannelMonitorZ"); + *ret_conv = C2Tuple_BlockHashChannelMonitorZ_clone(orig_conv); return ((uint64_t)ret_conv); } -uint32_t __attribute__((visibility("default"))) TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_new(uint32_t a, int8_tArray b, uint32_t c) { - LDKRawInvoice a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = (a & 1) || (a == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - a_conv = RawInvoice_clone(&a_conv); - LDKThirtyTwoBytes b_ref; - CHECK(*((uint32_t*)b) == 32); - memcpy(b_ref.data, (uint8_t*)(b + 4), 32); - LDKInvoiceSignature c_conv; - c_conv.inner = (void*)(c & (~1)); - c_conv.is_owned = (c & 1) || (c == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(c_conv); - c_conv = InvoiceSignature_clone(&c_conv); - LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ), "LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ"); - *ret_conv = C3Tuple_RawInvoice_u832InvoiceSignatureZ_new(a_conv, b_ref, c_conv); +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_new(int8_tArray a, uint32_t b) { + LDKThirtyTwoBytes a_ref; + CHECK(a->arr_len == 32); + memcpy(a_ref.data, a->elems, 32); + LDKChannelMonitor b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = (b & 1) || (b == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + b_conv = ChannelMonitor_clone(&b_conv); + LDKC2Tuple_BlockHashChannelMonitorZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlockHashChannelMonitorZ), "LDKC2Tuple_BlockHashChannelMonitorZ"); + *ret_conv = C2Tuple_BlockHashChannelMonitorZ_new(a_ref, b_conv); return ((uint64_t)ret_conv); } -void __attribute__((visibility("default"))) TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ _res_conv = *(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ*)(_res_ptr); + LDKC2Tuple_BlockHashChannelMonitorZ _res_conv = *(LDKC2Tuple_BlockHashChannelMonitorZ*)(_res_ptr); FREE((void*)_res); - C3Tuple_RawInvoice_u832InvoiceSignatureZ_free(_res_conv); + C2Tuple_BlockHashChannelMonitorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_PayeePubKeyErrorZ_ok(uint32_t o) { - LDKPayeePubKey o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = PayeePubKey_clone(&o_conv); - LDKCResult_PayeePubKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeePubKeyErrorZ), "LDKCResult_PayeePubKeyErrorZ"); - *ret_conv = CResult_PayeePubKeyErrorZ_ok(o_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKC2Tuple_BlockHashChannelMonitorZ o_conv = *(LDKC2Tuple_BlockHashChannelMonitorZ*)(o_ptr); + o_conv = C2Tuple_BlockHashChannelMonitorZ_clone((LDKC2Tuple_BlockHashChannelMonitorZ*)(((uint64_t)o) & ~1)); + LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ"); + *ret_conv = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PayeePubKeyErrorZ_err(uint32_t e) { - LDKSecp256k1Error e_conv = LDKSecp256k1Error_from_js(e); - LDKCResult_PayeePubKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeePubKeyErrorZ), "LDKCResult_PayeePubKeyErrorZ"); - *ret_conv = CResult_PayeePubKeyErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ"); + *ret_conv = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_PayeePubKeyErrorZ_is_ok(uint32_t o) { - LDKCResult_PayeePubKeyErrorZ* o_conv = (LDKCResult_PayeePubKeyErrorZ*)(o & ~1); - jboolean ret_val = CResult_PayeePubKeyErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* o_conv = (LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_PayeePubKeyErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_PayeePubKeyErrorZ _res_conv = *(LDKCResult_PayeePubKeyErrorZ*)(_res_ptr); + LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ _res_conv = *(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_PayeePubKeyErrorZ_free(_res_conv); + CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_PayeePubKeyErrorZ_clone_ptr(LDKCResult_PayeePubKeyErrorZ *NONNULL_PTR arg) { - LDKCResult_PayeePubKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeePubKeyErrorZ), "LDKCResult_PayeePubKeyErrorZ"); - *ret_conv = CResult_PayeePubKeyErrorZ_clone(arg); +static inline uint64_t CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone_ptr(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ"); + *ret_conv = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_PayeePubKeyErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_PayeePubKeyErrorZ* arg_conv = (LDKCResult_PayeePubKeyErrorZ*)(arg & ~1); - int64_t ret_val = CResult_PayeePubKeyErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* arg_conv = (LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PayeePubKeyErrorZ_clone(uint32_t orig) { - LDKCResult_PayeePubKeyErrorZ* orig_conv = (LDKCResult_PayeePubKeyErrorZ*)(orig & ~1); - LDKCResult_PayeePubKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeePubKeyErrorZ), "LDKCResult_PayeePubKeyErrorZ"); - *ret_conv = CResult_PayeePubKeyErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* orig_conv = (LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ*)(orig & ~1); + LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ"); + *ret_conv = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_CVec_PrivateRouteZ_free(uint32_tArray _res) { - LDKCVec_PrivateRouteZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKPrivateRoute), "LDKCVec_PrivateRouteZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t o = 0; o < _res_constr.datalen; o++) { - uint32_t _res_conv_14 = _res_vals[o]; - LDKPrivateRoute _res_conv_14_conv; - _res_conv_14_conv.inner = (void*)(_res_conv_14 & (~1)); - _res_conv_14_conv.is_owned = (_res_conv_14 & 1) || (_res_conv_14 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_14_conv); - _res_constr.data[o] = _res_conv_14_conv; - } - CVec_PrivateRouteZ_free(_res_constr); -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_PositiveTimestampCreationErrorZ_ok(uint32_t o) { - LDKPositiveTimestamp o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_ok(uint32_t o) { + LDKRouteHop o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = PositiveTimestamp_clone(&o_conv); - LDKCResult_PositiveTimestampCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PositiveTimestampCreationErrorZ), "LDKCResult_PositiveTimestampCreationErrorZ"); - *ret_conv = CResult_PositiveTimestampCreationErrorZ_ok(o_conv); + o_conv = RouteHop_clone(&o_conv); + LDKCResult_RouteHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHopDecodeErrorZ), "LDKCResult_RouteHopDecodeErrorZ"); + *ret_conv = CResult_RouteHopDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PositiveTimestampCreationErrorZ_err(uint32_t e) { - LDKCreationError e_conv = LDKCreationError_from_js(e); - LDKCResult_PositiveTimestampCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PositiveTimestampCreationErrorZ), "LDKCResult_PositiveTimestampCreationErrorZ"); - *ret_conv = CResult_PositiveTimestampCreationErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_RouteHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHopDecodeErrorZ), "LDKCResult_RouteHopDecodeErrorZ"); + *ret_conv = CResult_RouteHopDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_PositiveTimestampCreationErrorZ_is_ok(uint32_t o) { - LDKCResult_PositiveTimestampCreationErrorZ* o_conv = (LDKCResult_PositiveTimestampCreationErrorZ*)(o & ~1); - jboolean ret_val = CResult_PositiveTimestampCreationErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_RouteHopDecodeErrorZ* o_conv = (LDKCResult_RouteHopDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_RouteHopDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_PositiveTimestampCreationErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_PositiveTimestampCreationErrorZ _res_conv = *(LDKCResult_PositiveTimestampCreationErrorZ*)(_res_ptr); + LDKCResult_RouteHopDecodeErrorZ _res_conv = *(LDKCResult_RouteHopDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_PositiveTimestampCreationErrorZ_free(_res_conv); + CResult_RouteHopDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_PositiveTimestampCreationErrorZ_clone_ptr(LDKCResult_PositiveTimestampCreationErrorZ *NONNULL_PTR arg) { - LDKCResult_PositiveTimestampCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PositiveTimestampCreationErrorZ), "LDKCResult_PositiveTimestampCreationErrorZ"); - *ret_conv = CResult_PositiveTimestampCreationErrorZ_clone(arg); +static inline uint64_t CResult_RouteHopDecodeErrorZ_clone_ptr(LDKCResult_RouteHopDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_RouteHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHopDecodeErrorZ), "LDKCResult_RouteHopDecodeErrorZ"); + *ret_conv = CResult_RouteHopDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_PositiveTimestampCreationErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_PositiveTimestampCreationErrorZ* arg_conv = (LDKCResult_PositiveTimestampCreationErrorZ*)(arg & ~1); - int64_t ret_val = CResult_PositiveTimestampCreationErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_RouteHopDecodeErrorZ* arg_conv = (LDKCResult_RouteHopDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_RouteHopDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PositiveTimestampCreationErrorZ_clone(uint32_t orig) { - LDKCResult_PositiveTimestampCreationErrorZ* orig_conv = (LDKCResult_PositiveTimestampCreationErrorZ*)(orig & ~1); - LDKCResult_PositiveTimestampCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PositiveTimestampCreationErrorZ), "LDKCResult_PositiveTimestampCreationErrorZ"); - *ret_conv = CResult_PositiveTimestampCreationErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHopDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_RouteHopDecodeErrorZ* orig_conv = (LDKCResult_RouteHopDecodeErrorZ*)(orig & ~1); + LDKCResult_RouteHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHopDecodeErrorZ), "LDKCResult_RouteHopDecodeErrorZ"); + *ret_conv = CResult_RouteHopDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneSemanticErrorZ_ok() { - LDKCResult_NoneSemanticErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneSemanticErrorZ), "LDKCResult_NoneSemanticErrorZ"); - *ret_conv = CResult_NoneSemanticErrorZ_ok(); +void __attribute__((visibility("default"))) TS_CVec_RouteHopZ_free(uint32_tArray _res) { + LDKCVec_RouteHopZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t k = 0; k < _res_constr.datalen; k++) { + uint32_t _res_conv_10 = _res_vals[k]; + LDKRouteHop _res_conv_10_conv; + _res_conv_10_conv.inner = (void*)(_res_conv_10 & (~1)); + _res_conv_10_conv.is_owned = (_res_conv_10 & 1) || (_res_conv_10 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_10_conv); + _res_constr.data[k] = _res_conv_10_conv; + } + CVec_RouteHopZ_free(_res_constr); +} + +void __attribute__((visibility("default"))) TS_CVec_CVec_RouteHopZZ_free(ptrArray _res) { + LDKCVec_CVec_RouteHopZZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKCVec_RouteHopZ), "LDKCVec_CVec_RouteHopZZ Elements"); + else + _res_constr.data = NULL; + uint32_tArray* _res_vals = (void*) _res->elems; + for (size_t m = 0; m < _res_constr.datalen; m++) { + uint32_tArray _res_conv_12 = _res_vals[m]; + LDKCVec_RouteHopZ _res_conv_12_constr; + _res_conv_12_constr.datalen = _res_conv_12->arr_len; + if (_res_conv_12_constr.datalen > 0) + _res_conv_12_constr.data = MALLOC(_res_conv_12_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); + else + _res_conv_12_constr.data = NULL; + uint32_t* _res_conv_12_vals = _res_conv_12->elems; + for (size_t k = 0; k < _res_conv_12_constr.datalen; k++) { + uint32_t _res_conv_12_conv_10 = _res_conv_12_vals[k]; + LDKRouteHop _res_conv_12_conv_10_conv; + _res_conv_12_conv_10_conv.inner = (void*)(_res_conv_12_conv_10 & (~1)); + _res_conv_12_conv_10_conv.is_owned = (_res_conv_12_conv_10 & 1) || (_res_conv_12_conv_10 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_12_conv_10_conv); + _res_conv_12_constr.data[k] = _res_conv_12_conv_10_conv; + } + _res_constr.data[m] = _res_conv_12_constr; + } + CVec_CVec_RouteHopZZ_free(_res_constr); +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_ok(uint32_t o) { + LDKRoute o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = Route_clone(&o_conv); + LDKCResult_RouteDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteDecodeErrorZ), "LDKCResult_RouteDecodeErrorZ"); + *ret_conv = CResult_RouteDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneSemanticErrorZ_err(uint32_t e) { - LDKSemanticError e_conv = LDKSemanticError_from_js(e); - LDKCResult_NoneSemanticErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneSemanticErrorZ), "LDKCResult_NoneSemanticErrorZ"); - *ret_conv = CResult_NoneSemanticErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_RouteDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteDecodeErrorZ), "LDKCResult_RouteDecodeErrorZ"); + *ret_conv = CResult_RouteDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_NoneSemanticErrorZ_is_ok(uint32_t o) { - LDKCResult_NoneSemanticErrorZ* o_conv = (LDKCResult_NoneSemanticErrorZ*)(o & ~1); - jboolean ret_val = CResult_NoneSemanticErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_RouteDecodeErrorZ* o_conv = (LDKCResult_RouteDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_RouteDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_NoneSemanticErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_NoneSemanticErrorZ _res_conv = *(LDKCResult_NoneSemanticErrorZ*)(_res_ptr); + LDKCResult_RouteDecodeErrorZ _res_conv = *(LDKCResult_RouteDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_NoneSemanticErrorZ_free(_res_conv); + CResult_RouteDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_NoneSemanticErrorZ_clone_ptr(LDKCResult_NoneSemanticErrorZ *NONNULL_PTR arg) { - LDKCResult_NoneSemanticErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneSemanticErrorZ), "LDKCResult_NoneSemanticErrorZ"); - *ret_conv = CResult_NoneSemanticErrorZ_clone(arg); +static inline uint64_t CResult_RouteDecodeErrorZ_clone_ptr(LDKCResult_RouteDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_RouteDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteDecodeErrorZ), "LDKCResult_RouteDecodeErrorZ"); + *ret_conv = CResult_RouteDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_NoneSemanticErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_NoneSemanticErrorZ* arg_conv = (LDKCResult_NoneSemanticErrorZ*)(arg & ~1); - int64_t ret_val = CResult_NoneSemanticErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_RouteDecodeErrorZ* arg_conv = (LDKCResult_RouteDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_RouteDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneSemanticErrorZ_clone(uint32_t orig) { - LDKCResult_NoneSemanticErrorZ* orig_conv = (LDKCResult_NoneSemanticErrorZ*)(orig & ~1); - LDKCResult_NoneSemanticErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneSemanticErrorZ), "LDKCResult_NoneSemanticErrorZ"); - *ret_conv = CResult_NoneSemanticErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_RouteDecodeErrorZ* orig_conv = (LDKCResult_RouteDecodeErrorZ*)(orig & ~1); + LDKCResult_RouteDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteDecodeErrorZ), "LDKCResult_RouteDecodeErrorZ"); + *ret_conv = CResult_RouteDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceSemanticErrorZ_ok(uint32_t o) { - LDKInvoice o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_ok(uint32_t o) { + LDKRouteParameters o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = Invoice_clone(&o_conv); - LDKCResult_InvoiceSemanticErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceSemanticErrorZ), "LDKCResult_InvoiceSemanticErrorZ"); - *ret_conv = CResult_InvoiceSemanticErrorZ_ok(o_conv); + o_conv = RouteParameters_clone(&o_conv); + LDKCResult_RouteParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteParametersDecodeErrorZ), "LDKCResult_RouteParametersDecodeErrorZ"); + *ret_conv = CResult_RouteParametersDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceSemanticErrorZ_err(uint32_t e) { - LDKSemanticError e_conv = LDKSemanticError_from_js(e); - LDKCResult_InvoiceSemanticErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceSemanticErrorZ), "LDKCResult_InvoiceSemanticErrorZ"); - *ret_conv = CResult_InvoiceSemanticErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_RouteParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteParametersDecodeErrorZ), "LDKCResult_RouteParametersDecodeErrorZ"); + *ret_conv = CResult_RouteParametersDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_InvoiceSemanticErrorZ_is_ok(uint32_t o) { - LDKCResult_InvoiceSemanticErrorZ* o_conv = (LDKCResult_InvoiceSemanticErrorZ*)(o & ~1); - jboolean ret_val = CResult_InvoiceSemanticErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_RouteParametersDecodeErrorZ* o_conv = (LDKCResult_RouteParametersDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_RouteParametersDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_InvoiceSemanticErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_InvoiceSemanticErrorZ _res_conv = *(LDKCResult_InvoiceSemanticErrorZ*)(_res_ptr); + LDKCResult_RouteParametersDecodeErrorZ _res_conv = *(LDKCResult_RouteParametersDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_InvoiceSemanticErrorZ_free(_res_conv); + CResult_RouteParametersDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_InvoiceSemanticErrorZ_clone_ptr(LDKCResult_InvoiceSemanticErrorZ *NONNULL_PTR arg) { - LDKCResult_InvoiceSemanticErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceSemanticErrorZ), "LDKCResult_InvoiceSemanticErrorZ"); - *ret_conv = CResult_InvoiceSemanticErrorZ_clone(arg); +static inline uint64_t CResult_RouteParametersDecodeErrorZ_clone_ptr(LDKCResult_RouteParametersDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_RouteParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteParametersDecodeErrorZ), "LDKCResult_RouteParametersDecodeErrorZ"); + *ret_conv = CResult_RouteParametersDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_InvoiceSemanticErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_InvoiceSemanticErrorZ* arg_conv = (LDKCResult_InvoiceSemanticErrorZ*)(arg & ~1); - int64_t ret_val = CResult_InvoiceSemanticErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_RouteParametersDecodeErrorZ* arg_conv = (LDKCResult_RouteParametersDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_RouteParametersDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceSemanticErrorZ_clone(uint32_t orig) { - LDKCResult_InvoiceSemanticErrorZ* orig_conv = (LDKCResult_InvoiceSemanticErrorZ*)(orig & ~1); - LDKCResult_InvoiceSemanticErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceSemanticErrorZ), "LDKCResult_InvoiceSemanticErrorZ"); - *ret_conv = CResult_InvoiceSemanticErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteParametersDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_RouteParametersDecodeErrorZ* orig_conv = (LDKCResult_RouteParametersDecodeErrorZ*)(orig & ~1); + LDKCResult_RouteParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteParametersDecodeErrorZ), "LDKCResult_RouteParametersDecodeErrorZ"); + *ret_conv = CResult_RouteParametersDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_DescriptionCreationErrorZ_ok(uint32_t o) { - LDKDescription o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = Description_clone(&o_conv); - LDKCResult_DescriptionCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DescriptionCreationErrorZ), "LDKCResult_DescriptionCreationErrorZ"); - *ret_conv = CResult_DescriptionCreationErrorZ_ok(o_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_CVec_RouteHintZ_free(uint32_tArray _res) { + LDKCVec_RouteHintZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKRouteHint), "LDKCVec_RouteHintZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t l = 0; l < _res_constr.datalen; l++) { + uint32_t _res_conv_11 = _res_vals[l]; + LDKRouteHint _res_conv_11_conv; + _res_conv_11_conv.inner = (void*)(_res_conv_11 & (~1)); + _res_conv_11_conv.is_owned = (_res_conv_11 & 1) || (_res_conv_11 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_11_conv); + _res_constr.data[l] = _res_conv_11_conv; + } + CVec_RouteHintZ_free(_res_constr); } -uint32_t __attribute__((visibility("default"))) TS_CResult_DescriptionCreationErrorZ_err(uint32_t e) { - LDKCreationError e_conv = LDKCreationError_from_js(e); - LDKCResult_DescriptionCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DescriptionCreationErrorZ), "LDKCResult_DescriptionCreationErrorZ"); - *ret_conv = CResult_DescriptionCreationErrorZ_err(e_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_COption_u64Z_some(int64_t o) { + LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); + *ret_copy = COption_u64Z_some(o); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_CResult_DescriptionCreationErrorZ_is_ok(uint32_t o) { - LDKCResult_DescriptionCreationErrorZ* o_conv = (LDKCResult_DescriptionCreationErrorZ*)(o & ~1); - jboolean ret_val = CResult_DescriptionCreationErrorZ_is_ok(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_COption_u64Z_none() { + LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); + *ret_copy = COption_u64Z_none(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_CResult_DescriptionCreationErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_COption_u64Z_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_DescriptionCreationErrorZ _res_conv = *(LDKCResult_DescriptionCreationErrorZ*)(_res_ptr); + LDKCOption_u64Z _res_conv = *(LDKCOption_u64Z*)(_res_ptr); FREE((void*)_res); - CResult_DescriptionCreationErrorZ_free(_res_conv); + COption_u64Z_free(_res_conv); } -static inline uint64_t CResult_DescriptionCreationErrorZ_clone_ptr(LDKCResult_DescriptionCreationErrorZ *NONNULL_PTR arg) { - LDKCResult_DescriptionCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DescriptionCreationErrorZ), "LDKCResult_DescriptionCreationErrorZ"); - *ret_conv = CResult_DescriptionCreationErrorZ_clone(arg); - return (uint64_t)ret_conv; +static inline uint64_t COption_u64Z_clone_ptr(LDKCOption_u64Z *NONNULL_PTR arg) { + LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); + *ret_copy = COption_u64Z_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_CResult_DescriptionCreationErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_DescriptionCreationErrorZ* arg_conv = (LDKCResult_DescriptionCreationErrorZ*)(arg & ~1); - int64_t ret_val = CResult_DescriptionCreationErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_COption_u64Z_clone_ptr(uint32_t arg) { + LDKCOption_u64Z* arg_conv = (LDKCOption_u64Z*)arg; + int64_t ret_val = COption_u64Z_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_DescriptionCreationErrorZ_clone(uint32_t orig) { - LDKCResult_DescriptionCreationErrorZ* orig_conv = (LDKCResult_DescriptionCreationErrorZ*)(orig & ~1); - LDKCResult_DescriptionCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DescriptionCreationErrorZ), "LDKCResult_DescriptionCreationErrorZ"); - *ret_conv = CResult_DescriptionCreationErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_COption_u64Z_clone(uint32_t orig) { + LDKCOption_u64Z* orig_conv = (LDKCOption_u64Z*)orig; + LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); + *ret_copy = COption_u64Z_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ExpiryTimeCreationErrorZ_ok(uint32_t o) { - LDKExpiryTime o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_ok(uint32_t o) { + LDKPayee o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ExpiryTime_clone(&o_conv); - LDKCResult_ExpiryTimeCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ExpiryTimeCreationErrorZ), "LDKCResult_ExpiryTimeCreationErrorZ"); - *ret_conv = CResult_ExpiryTimeCreationErrorZ_ok(o_conv); + o_conv = Payee_clone(&o_conv); + LDKCResult_PayeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeeDecodeErrorZ), "LDKCResult_PayeeDecodeErrorZ"); + *ret_conv = CResult_PayeeDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ExpiryTimeCreationErrorZ_err(uint32_t e) { - LDKCreationError e_conv = LDKCreationError_from_js(e); - LDKCResult_ExpiryTimeCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ExpiryTimeCreationErrorZ), "LDKCResult_ExpiryTimeCreationErrorZ"); - *ret_conv = CResult_ExpiryTimeCreationErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_PayeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeeDecodeErrorZ), "LDKCResult_PayeeDecodeErrorZ"); + *ret_conv = CResult_PayeeDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_ExpiryTimeCreationErrorZ_is_ok(uint32_t o) { - LDKCResult_ExpiryTimeCreationErrorZ* o_conv = (LDKCResult_ExpiryTimeCreationErrorZ*)(o & ~1); - jboolean ret_val = CResult_ExpiryTimeCreationErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_PayeeDecodeErrorZ* o_conv = (LDKCResult_PayeeDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_PayeeDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_ExpiryTimeCreationErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_ExpiryTimeCreationErrorZ _res_conv = *(LDKCResult_ExpiryTimeCreationErrorZ*)(_res_ptr); + LDKCResult_PayeeDecodeErrorZ _res_conv = *(LDKCResult_PayeeDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_ExpiryTimeCreationErrorZ_free(_res_conv); + CResult_PayeeDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_ExpiryTimeCreationErrorZ_clone_ptr(LDKCResult_ExpiryTimeCreationErrorZ *NONNULL_PTR arg) { - LDKCResult_ExpiryTimeCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ExpiryTimeCreationErrorZ), "LDKCResult_ExpiryTimeCreationErrorZ"); - *ret_conv = CResult_ExpiryTimeCreationErrorZ_clone(arg); +static inline uint64_t CResult_PayeeDecodeErrorZ_clone_ptr(LDKCResult_PayeeDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_PayeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeeDecodeErrorZ), "LDKCResult_PayeeDecodeErrorZ"); + *ret_conv = CResult_PayeeDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_ExpiryTimeCreationErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ExpiryTimeCreationErrorZ* arg_conv = (LDKCResult_ExpiryTimeCreationErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ExpiryTimeCreationErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_PayeeDecodeErrorZ* arg_conv = (LDKCResult_PayeeDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_PayeeDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ExpiryTimeCreationErrorZ_clone(uint32_t orig) { - LDKCResult_ExpiryTimeCreationErrorZ* orig_conv = (LDKCResult_ExpiryTimeCreationErrorZ*)(orig & ~1); - LDKCResult_ExpiryTimeCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ExpiryTimeCreationErrorZ), "LDKCResult_ExpiryTimeCreationErrorZ"); - *ret_conv = CResult_ExpiryTimeCreationErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_PayeeDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_PayeeDecodeErrorZ* orig_conv = (LDKCResult_PayeeDecodeErrorZ*)(orig & ~1); + LDKCResult_PayeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeeDecodeErrorZ), "LDKCResult_PayeeDecodeErrorZ"); + *ret_conv = CResult_PayeeDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PrivateRouteCreationErrorZ_ok(uint32_t o) { - LDKPrivateRoute o_conv; +void __attribute__((visibility("default"))) TS_CVec_RouteHintHopZ_free(uint32_tArray _res) { + LDKCVec_RouteHintHopZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKRouteHintHop), "LDKCVec_RouteHintHopZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t o = 0; o < _res_constr.datalen; o++) { + uint32_t _res_conv_14 = _res_vals[o]; + LDKRouteHintHop _res_conv_14_conv; + _res_conv_14_conv.inner = (void*)(_res_conv_14 & (~1)); + _res_conv_14_conv.is_owned = (_res_conv_14 & 1) || (_res_conv_14 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_14_conv); + _res_constr.data[o] = _res_conv_14_conv; + } + CVec_RouteHintHopZ_free(_res_constr); +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_ok(uint32_t o) { + LDKRouteHint o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = PrivateRoute_clone(&o_conv); - LDKCResult_PrivateRouteCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PrivateRouteCreationErrorZ), "LDKCResult_PrivateRouteCreationErrorZ"); - *ret_conv = CResult_PrivateRouteCreationErrorZ_ok(o_conv); + o_conv = RouteHint_clone(&o_conv); + LDKCResult_RouteHintDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintDecodeErrorZ), "LDKCResult_RouteHintDecodeErrorZ"); + *ret_conv = CResult_RouteHintDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PrivateRouteCreationErrorZ_err(uint32_t e) { - LDKCreationError e_conv = LDKCreationError_from_js(e); - LDKCResult_PrivateRouteCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PrivateRouteCreationErrorZ), "LDKCResult_PrivateRouteCreationErrorZ"); - *ret_conv = CResult_PrivateRouteCreationErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_RouteHintDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintDecodeErrorZ), "LDKCResult_RouteHintDecodeErrorZ"); + *ret_conv = CResult_RouteHintDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_PrivateRouteCreationErrorZ_is_ok(uint32_t o) { - LDKCResult_PrivateRouteCreationErrorZ* o_conv = (LDKCResult_PrivateRouteCreationErrorZ*)(o & ~1); - jboolean ret_val = CResult_PrivateRouteCreationErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_RouteHintDecodeErrorZ* o_conv = (LDKCResult_RouteHintDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_RouteHintDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_PrivateRouteCreationErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_PrivateRouteCreationErrorZ _res_conv = *(LDKCResult_PrivateRouteCreationErrorZ*)(_res_ptr); + LDKCResult_RouteHintDecodeErrorZ _res_conv = *(LDKCResult_RouteHintDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_PrivateRouteCreationErrorZ_free(_res_conv); + CResult_RouteHintDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_PrivateRouteCreationErrorZ_clone_ptr(LDKCResult_PrivateRouteCreationErrorZ *NONNULL_PTR arg) { - LDKCResult_PrivateRouteCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PrivateRouteCreationErrorZ), "LDKCResult_PrivateRouteCreationErrorZ"); - *ret_conv = CResult_PrivateRouteCreationErrorZ_clone(arg); +static inline uint64_t CResult_RouteHintDecodeErrorZ_clone_ptr(LDKCResult_RouteHintDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_RouteHintDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintDecodeErrorZ), "LDKCResult_RouteHintDecodeErrorZ"); + *ret_conv = CResult_RouteHintDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_PrivateRouteCreationErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_PrivateRouteCreationErrorZ* arg_conv = (LDKCResult_PrivateRouteCreationErrorZ*)(arg & ~1); - int64_t ret_val = CResult_PrivateRouteCreationErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_RouteHintDecodeErrorZ* arg_conv = (LDKCResult_RouteHintDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_RouteHintDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PrivateRouteCreationErrorZ_clone(uint32_t orig) { - LDKCResult_PrivateRouteCreationErrorZ* orig_conv = (LDKCResult_PrivateRouteCreationErrorZ*)(orig & ~1); - LDKCResult_PrivateRouteCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PrivateRouteCreationErrorZ), "LDKCResult_PrivateRouteCreationErrorZ"); - *ret_conv = CResult_PrivateRouteCreationErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_StringErrorZ_ok(jstring o) { - LDKStr o_conv = str_ref_to_owned_c(o); - LDKCResult_StringErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StringErrorZ), "LDKCResult_StringErrorZ"); - *ret_conv = CResult_StringErrorZ_ok(o_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_StringErrorZ_err(uint32_t e) { - LDKSecp256k1Error e_conv = LDKSecp256k1Error_from_js(e); - LDKCResult_StringErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StringErrorZ), "LDKCResult_StringErrorZ"); - *ret_conv = CResult_StringErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_RouteHintDecodeErrorZ* orig_conv = (LDKCResult_RouteHintDecodeErrorZ*)(orig & ~1); + LDKCResult_RouteHintDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintDecodeErrorZ), "LDKCResult_RouteHintDecodeErrorZ"); + *ret_conv = CResult_RouteHintDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_StringErrorZ_is_ok(uint32_t o) { - LDKCResult_StringErrorZ* o_conv = (LDKCResult_StringErrorZ*)(o & ~1); - jboolean ret_val = CResult_StringErrorZ_is_ok(o_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_CResult_StringErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_StringErrorZ _res_conv = *(LDKCResult_StringErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_StringErrorZ_free(_res_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_ok(uint32_t o) { - LDKChannelMonitorUpdate o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_ok(uint32_t o) { + LDKRouteHintHop o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ChannelMonitorUpdate_clone(&o_conv); - LDKCResult_ChannelMonitorUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelMonitorUpdateDecodeErrorZ), "LDKCResult_ChannelMonitorUpdateDecodeErrorZ"); - *ret_conv = CResult_ChannelMonitorUpdateDecodeErrorZ_ok(o_conv); + o_conv = RouteHintHop_clone(&o_conv); + LDKCResult_RouteHintHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintHopDecodeErrorZ), "LDKCResult_RouteHintHopDecodeErrorZ"); + *ret_conv = CResult_RouteHintHopDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_ChannelMonitorUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelMonitorUpdateDecodeErrorZ), "LDKCResult_ChannelMonitorUpdateDecodeErrorZ"); - *ret_conv = CResult_ChannelMonitorUpdateDecodeErrorZ_err(e_conv); + LDKCResult_RouteHintHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintHopDecodeErrorZ), "LDKCResult_RouteHintHopDecodeErrorZ"); + *ret_conv = CResult_RouteHintHopDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ChannelMonitorUpdateDecodeErrorZ* o_conv = (LDKCResult_ChannelMonitorUpdateDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ChannelMonitorUpdateDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_RouteHintHopDecodeErrorZ* o_conv = (LDKCResult_RouteHintHopDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_RouteHintHopDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_ChannelMonitorUpdateDecodeErrorZ _res_conv = *(LDKCResult_ChannelMonitorUpdateDecodeErrorZ*)(_res_ptr); + LDKCResult_RouteHintHopDecodeErrorZ _res_conv = *(LDKCResult_RouteHintHopDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_ChannelMonitorUpdateDecodeErrorZ_free(_res_conv); + CResult_RouteHintHopDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_ChannelMonitorUpdateDecodeErrorZ_clone_ptr(LDKCResult_ChannelMonitorUpdateDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ChannelMonitorUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelMonitorUpdateDecodeErrorZ), "LDKCResult_ChannelMonitorUpdateDecodeErrorZ"); - *ret_conv = CResult_ChannelMonitorUpdateDecodeErrorZ_clone(arg); +static inline uint64_t CResult_RouteHintHopDecodeErrorZ_clone_ptr(LDKCResult_RouteHintHopDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_RouteHintHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintHopDecodeErrorZ), "LDKCResult_RouteHintHopDecodeErrorZ"); + *ret_conv = CResult_RouteHintHopDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ChannelMonitorUpdateDecodeErrorZ* arg_conv = (LDKCResult_ChannelMonitorUpdateDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ChannelMonitorUpdateDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_RouteHintHopDecodeErrorZ* arg_conv = (LDKCResult_RouteHintHopDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_RouteHintHopDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelMonitorUpdateDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ChannelMonitorUpdateDecodeErrorZ* orig_conv = (LDKCResult_ChannelMonitorUpdateDecodeErrorZ*)(orig & ~1); - LDKCResult_ChannelMonitorUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelMonitorUpdateDecodeErrorZ), "LDKCResult_ChannelMonitorUpdateDecodeErrorZ"); - *ret_conv = CResult_ChannelMonitorUpdateDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteHintHopDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_RouteHintHopDecodeErrorZ* orig_conv = (LDKCResult_RouteHintHopDecodeErrorZ*)(orig & ~1); + LDKCResult_RouteHintHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintHopDecodeErrorZ), "LDKCResult_RouteHintHopDecodeErrorZ"); + *ret_conv = CResult_RouteHintHopDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_COption_MonitorEventZ_some(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKMonitorEvent o_conv = *(LDKMonitorEvent*)(o_ptr); - o_conv = MonitorEvent_clone((LDKMonitorEvent*)(((uint64_t)o) & ~1)); - LDKCOption_MonitorEventZ *ret_copy = MALLOC(sizeof(LDKCOption_MonitorEventZ), "LDKCOption_MonitorEventZ"); - *ret_copy = COption_MonitorEventZ_some(o_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_COption_MonitorEventZ_none() { - LDKCOption_MonitorEventZ *ret_copy = MALLOC(sizeof(LDKCOption_MonitorEventZ), "LDKCOption_MonitorEventZ"); - *ret_copy = COption_MonitorEventZ_none(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -void __attribute__((visibility("default"))) TS_COption_MonitorEventZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCOption_MonitorEventZ _res_conv = *(LDKCOption_MonitorEventZ*)(_res_ptr); - FREE((void*)_res); - COption_MonitorEventZ_free(_res_conv); -} - -static inline uint64_t COption_MonitorEventZ_clone_ptr(LDKCOption_MonitorEventZ *NONNULL_PTR arg) { - LDKCOption_MonitorEventZ *ret_copy = MALLOC(sizeof(LDKCOption_MonitorEventZ), "LDKCOption_MonitorEventZ"); - *ret_copy = COption_MonitorEventZ_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_COption_MonitorEventZ_clone_ptr(uint32_t arg) { - LDKCOption_MonitorEventZ* arg_conv = (LDKCOption_MonitorEventZ*)arg; - int64_t ret_val = COption_MonitorEventZ_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_COption_MonitorEventZ_clone(uint32_t orig) { - LDKCOption_MonitorEventZ* orig_conv = (LDKCOption_MonitorEventZ*)orig; - LDKCOption_MonitorEventZ *ret_copy = MALLOC(sizeof(LDKCOption_MonitorEventZ), "LDKCOption_MonitorEventZ"); - *ret_copy = COption_MonitorEventZ_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_CVec_ChannelDetailsZ_free(uint32_tArray _res) { + LDKCVec_ChannelDetailsZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKChannelDetails), "LDKCVec_ChannelDetailsZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t q = 0; q < _res_constr.datalen; q++) { + uint32_t _res_conv_16 = _res_vals[q]; + LDKChannelDetails _res_conv_16_conv; + _res_conv_16_conv.inner = (void*)(_res_conv_16 & (~1)); + _res_conv_16_conv.is_owned = (_res_conv_16 & 1) || (_res_conv_16 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_16_conv); + _res_constr.data[q] = _res_conv_16_conv; + } + CVec_ChannelDetailsZ_free(_res_constr); } -uint32_t __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_ok(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKCOption_MonitorEventZ o_conv = *(LDKCOption_MonitorEventZ*)(o_ptr); - o_conv = COption_MonitorEventZ_clone((LDKCOption_MonitorEventZ*)(((uint64_t)o) & ~1)); - LDKCResult_COption_MonitorEventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_MonitorEventZDecodeErrorZ), "LDKCResult_COption_MonitorEventZDecodeErrorZ"); - *ret_conv = CResult_COption_MonitorEventZDecodeErrorZ_ok(o_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_ok(uint32_t o) { + LDKRoute o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = Route_clone(&o_conv); + LDKCResult_RouteLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteLightningErrorZ), "LDKCResult_RouteLightningErrorZ"); + *ret_conv = CResult_RouteLightningErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_err(uint32_t e) { + LDKLightningError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_COption_MonitorEventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_MonitorEventZDecodeErrorZ), "LDKCResult_COption_MonitorEventZDecodeErrorZ"); - *ret_conv = CResult_COption_MonitorEventZDecodeErrorZ_err(e_conv); + e_conv = LightningError_clone(&e_conv); + LDKCResult_RouteLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteLightningErrorZ), "LDKCResult_RouteLightningErrorZ"); + *ret_conv = CResult_RouteLightningErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_COption_MonitorEventZDecodeErrorZ* o_conv = (LDKCResult_COption_MonitorEventZDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_COption_MonitorEventZDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_is_ok(uint32_t o) { + LDKCResult_RouteLightningErrorZ* o_conv = (LDKCResult_RouteLightningErrorZ*)(o & ~1); + jboolean ret_val = CResult_RouteLightningErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_COption_MonitorEventZDecodeErrorZ _res_conv = *(LDKCResult_COption_MonitorEventZDecodeErrorZ*)(_res_ptr); + LDKCResult_RouteLightningErrorZ _res_conv = *(LDKCResult_RouteLightningErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_COption_MonitorEventZDecodeErrorZ_free(_res_conv); + CResult_RouteLightningErrorZ_free(_res_conv); } -static inline uint64_t CResult_COption_MonitorEventZDecodeErrorZ_clone_ptr(LDKCResult_COption_MonitorEventZDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_COption_MonitorEventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_MonitorEventZDecodeErrorZ), "LDKCResult_COption_MonitorEventZDecodeErrorZ"); - *ret_conv = CResult_COption_MonitorEventZDecodeErrorZ_clone(arg); +static inline uint64_t CResult_RouteLightningErrorZ_clone_ptr(LDKCResult_RouteLightningErrorZ *NONNULL_PTR arg) { + LDKCResult_RouteLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteLightningErrorZ), "LDKCResult_RouteLightningErrorZ"); + *ret_conv = CResult_RouteLightningErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_COption_MonitorEventZDecodeErrorZ* arg_conv = (LDKCResult_COption_MonitorEventZDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_COption_MonitorEventZDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_RouteLightningErrorZ* arg_conv = (LDKCResult_RouteLightningErrorZ*)(arg & ~1); + int64_t ret_val = CResult_RouteLightningErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_COption_MonitorEventZDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_COption_MonitorEventZDecodeErrorZ* orig_conv = (LDKCResult_COption_MonitorEventZDecodeErrorZ*)(orig & ~1); - LDKCResult_COption_MonitorEventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_MonitorEventZDecodeErrorZ), "LDKCResult_COption_MonitorEventZDecodeErrorZ"); - *ret_conv = CResult_COption_MonitorEventZDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RouteLightningErrorZ_clone(uint32_t orig) { + LDKCResult_RouteLightningErrorZ* orig_conv = (LDKCResult_RouteLightningErrorZ*)(orig & ~1); + LDKCResult_RouteLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteLightningErrorZ), "LDKCResult_RouteLightningErrorZ"); + *ret_conv = CResult_RouteLightningErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_ok(uint32_t o) { - LDKHTLCUpdate o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = HTLCUpdate_clone(&o_conv); - LDKCResult_HTLCUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCUpdateDecodeErrorZ), "LDKCResult_HTLCUpdateDecodeErrorZ"); - *ret_conv = CResult_HTLCUpdateDecodeErrorZ_ok(o_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_ok() { + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = CResult_NoneLightningErrorZ_ok(); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_err(uint32_t e) { + LDKLightningError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_HTLCUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCUpdateDecodeErrorZ), "LDKCResult_HTLCUpdateDecodeErrorZ"); - *ret_conv = CResult_HTLCUpdateDecodeErrorZ_err(e_conv); + e_conv = LightningError_clone(&e_conv); + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = CResult_NoneLightningErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_HTLCUpdateDecodeErrorZ* o_conv = (LDKCResult_HTLCUpdateDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_HTLCUpdateDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_is_ok(uint32_t o) { + LDKCResult_NoneLightningErrorZ* o_conv = (LDKCResult_NoneLightningErrorZ*)(o & ~1); + jboolean ret_val = CResult_NoneLightningErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_HTLCUpdateDecodeErrorZ _res_conv = *(LDKCResult_HTLCUpdateDecodeErrorZ*)(_res_ptr); + LDKCResult_NoneLightningErrorZ _res_conv = *(LDKCResult_NoneLightningErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_HTLCUpdateDecodeErrorZ_free(_res_conv); + CResult_NoneLightningErrorZ_free(_res_conv); } -static inline uint64_t CResult_HTLCUpdateDecodeErrorZ_clone_ptr(LDKCResult_HTLCUpdateDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_HTLCUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCUpdateDecodeErrorZ), "LDKCResult_HTLCUpdateDecodeErrorZ"); - *ret_conv = CResult_HTLCUpdateDecodeErrorZ_clone(arg); +static inline uint64_t CResult_NoneLightningErrorZ_clone_ptr(LDKCResult_NoneLightningErrorZ *NONNULL_PTR arg) { + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = CResult_NoneLightningErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_HTLCUpdateDecodeErrorZ* arg_conv = (LDKCResult_HTLCUpdateDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_HTLCUpdateDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_NoneLightningErrorZ* arg_conv = (LDKCResult_NoneLightningErrorZ*)(arg & ~1); + int64_t ret_val = CResult_NoneLightningErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_HTLCUpdateDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_HTLCUpdateDecodeErrorZ* orig_conv = (LDKCResult_HTLCUpdateDecodeErrorZ*)(orig & ~1); - LDKCResult_HTLCUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCUpdateDecodeErrorZ), "LDKCResult_HTLCUpdateDecodeErrorZ"); - *ret_conv = CResult_HTLCUpdateDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_clone(uint32_t orig) { + LDKCResult_NoneLightningErrorZ* orig_conv = (LDKCResult_NoneLightningErrorZ*)(orig & ~1); + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = CResult_NoneLightningErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -static inline uint64_t C2Tuple_OutPointScriptZ_clone_ptr(LDKC2Tuple_OutPointScriptZ *NONNULL_PTR arg) { - LDKC2Tuple_OutPointScriptZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_OutPointScriptZ), "LDKC2Tuple_OutPointScriptZ"); - *ret_conv = C2Tuple_OutPointScriptZ_clone(arg); +static inline uint64_t C2Tuple_PublicKeyTypeZ_clone_ptr(LDKC2Tuple_PublicKeyTypeZ *NONNULL_PTR arg) { + LDKC2Tuple_PublicKeyTypeZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyTypeZ), "LDKC2Tuple_PublicKeyTypeZ"); + *ret_conv = C2Tuple_PublicKeyTypeZ_clone(arg); return ((uint64_t)ret_conv); } -int64_t __attribute__((visibility("default"))) TS_C2Tuple_OutPointScriptZ_clone_ptr(uint32_t arg) { - LDKC2Tuple_OutPointScriptZ* arg_conv = (LDKC2Tuple_OutPointScriptZ*)(arg & ~1); - int64_t ret_val = C2Tuple_OutPointScriptZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_C2Tuple_PublicKeyTypeZ_clone_ptr(uint32_t arg) { + LDKC2Tuple_PublicKeyTypeZ* arg_conv = (LDKC2Tuple_PublicKeyTypeZ*)(arg & ~1); + int64_t ret_val = C2Tuple_PublicKeyTypeZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_OutPointScriptZ_clone(uint32_t orig) { - LDKC2Tuple_OutPointScriptZ* orig_conv = (LDKC2Tuple_OutPointScriptZ*)(orig & ~1); - LDKC2Tuple_OutPointScriptZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_OutPointScriptZ), "LDKC2Tuple_OutPointScriptZ"); - *ret_conv = C2Tuple_OutPointScriptZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PublicKeyTypeZ_clone(uint32_t orig) { + LDKC2Tuple_PublicKeyTypeZ* orig_conv = (LDKC2Tuple_PublicKeyTypeZ*)(orig & ~1); + LDKC2Tuple_PublicKeyTypeZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyTypeZ), "LDKC2Tuple_PublicKeyTypeZ"); + *ret_conv = C2Tuple_PublicKeyTypeZ_clone(orig_conv); return ((uint64_t)ret_conv); } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_OutPointScriptZ_new(uint32_t a, int8_tArray b) { - LDKOutPoint a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = (a & 1) || (a == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - a_conv = OutPoint_clone(&a_conv); - LDKCVec_u8Z b_ref; - b_ref.datalen = *((uint32_t*)b); - b_ref.data = MALLOC(b_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(b_ref.data, (uint8_t*)(b + 4), b_ref.datalen); - LDKC2Tuple_OutPointScriptZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_OutPointScriptZ), "LDKC2Tuple_OutPointScriptZ"); - *ret_conv = C2Tuple_OutPointScriptZ_new(a_conv, b_ref); +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PublicKeyTypeZ_new(int8_tArray a, uint32_t b) { + LDKPublicKey a_ref; + CHECK(a->arr_len == 33); + memcpy(a_ref.compressed_form, a->elems, 33); + void* b_ptr = (void*)(((uint64_t)b) & ~1); + CHECK_ACCESS(b_ptr); + LDKType b_conv = *(LDKType*)(b_ptr); + LDKC2Tuple_PublicKeyTypeZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyTypeZ), "LDKC2Tuple_PublicKeyTypeZ"); + *ret_conv = C2Tuple_PublicKeyTypeZ_new(a_ref, b_conv); return ((uint64_t)ret_conv); } -void __attribute__((visibility("default"))) TS_C2Tuple_OutPointScriptZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_C2Tuple_PublicKeyTypeZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKC2Tuple_OutPointScriptZ _res_conv = *(LDKC2Tuple_OutPointScriptZ*)(_res_ptr); + LDKC2Tuple_PublicKeyTypeZ _res_conv = *(LDKC2Tuple_PublicKeyTypeZ*)(_res_ptr); FREE((void*)_res); - C2Tuple_OutPointScriptZ_free(_res_conv); + C2Tuple_PublicKeyTypeZ_free(_res_conv); } -static inline uint64_t C2Tuple_u32ScriptZ_clone_ptr(LDKC2Tuple_u32ScriptZ *NONNULL_PTR arg) { - LDKC2Tuple_u32ScriptZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_u32ScriptZ), "LDKC2Tuple_u32ScriptZ"); - *ret_conv = C2Tuple_u32ScriptZ_clone(arg); - return ((uint64_t)ret_conv); +void __attribute__((visibility("default"))) TS_CVec_C2Tuple_PublicKeyTypeZZ_free(uint32_tArray _res) { + LDKCVec_C2Tuple_PublicKeyTypeZZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_PublicKeyTypeZ), "LDKCVec_C2Tuple_PublicKeyTypeZZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t z = 0; z < _res_constr.datalen; z++) { + uint32_t _res_conv_25 = _res_vals[z]; + void* _res_conv_25_ptr = (void*)(((uint64_t)_res_conv_25) & ~1); + CHECK_ACCESS(_res_conv_25_ptr); + LDKC2Tuple_PublicKeyTypeZ _res_conv_25_conv = *(LDKC2Tuple_PublicKeyTypeZ*)(_res_conv_25_ptr); + FREE((void*)_res_conv_25); + _res_constr.data[z] = _res_conv_25_conv; + } + CVec_C2Tuple_PublicKeyTypeZZ_free(_res_constr); } -int64_t __attribute__((visibility("default"))) TS_C2Tuple_u32ScriptZ_clone_ptr(uint32_t arg) { - LDKC2Tuple_u32ScriptZ* arg_conv = (LDKC2Tuple_u32ScriptZ*)(arg & ~1); - int64_t ret_val = C2Tuple_u32ScriptZ_clone_ptr(arg_conv); - return ret_val; + +void __attribute__((visibility("default"))) TS_CVec_MessageSendEventZ_free(uint32_tArray _res) { + LDKCVec_MessageSendEventZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKMessageSendEvent), "LDKCVec_MessageSendEventZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t s = 0; s < _res_constr.datalen; s++) { + uint32_t _res_conv_18 = _res_vals[s]; + void* _res_conv_18_ptr = (void*)(((uint64_t)_res_conv_18) & ~1); + CHECK_ACCESS(_res_conv_18_ptr); + LDKMessageSendEvent _res_conv_18_conv = *(LDKMessageSendEvent*)(_res_conv_18_ptr); + FREE((void*)_res_conv_18); + _res_constr.data[s] = _res_conv_18_conv; + } + CVec_MessageSendEventZ_free(_res_constr); } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_u32ScriptZ_clone(uint32_t orig) { - LDKC2Tuple_u32ScriptZ* orig_conv = (LDKC2Tuple_u32ScriptZ*)(orig & ~1); - LDKC2Tuple_u32ScriptZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_u32ScriptZ), "LDKC2Tuple_u32ScriptZ"); - *ret_conv = C2Tuple_u32ScriptZ_clone(orig_conv); - return ((uint64_t)ret_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_ok(jboolean o) { + LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); + *ret_conv = CResult_boolLightningErrorZ_ok(o); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_u32ScriptZ_new(int32_t a, int8_tArray b) { - LDKCVec_u8Z b_ref; - b_ref.datalen = *((uint32_t*)b); - b_ref.data = MALLOC(b_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(b_ref.data, (uint8_t*)(b + 4), b_ref.datalen); - LDKC2Tuple_u32ScriptZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_u32ScriptZ), "LDKC2Tuple_u32ScriptZ"); - *ret_conv = C2Tuple_u32ScriptZ_new(a, b_ref); - return ((uint64_t)ret_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_err(uint32_t e) { + LDKLightningError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = LightningError_clone(&e_conv); + LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); + *ret_conv = CResult_boolLightningErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_C2Tuple_u32ScriptZ_free(uint32_t _res) { +jboolean __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_is_ok(uint32_t o) { + LDKCResult_boolLightningErrorZ* o_conv = (LDKCResult_boolLightningErrorZ*)(o & ~1); + jboolean ret_val = CResult_boolLightningErrorZ_is_ok(o_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKC2Tuple_u32ScriptZ _res_conv = *(LDKC2Tuple_u32ScriptZ*)(_res_ptr); + LDKCResult_boolLightningErrorZ _res_conv = *(LDKCResult_boolLightningErrorZ*)(_res_ptr); FREE((void*)_res); - C2Tuple_u32ScriptZ_free(_res_conv); + CResult_boolLightningErrorZ_free(_res_conv); } -void __attribute__((visibility("default"))) TS_CVec_C2Tuple_u32ScriptZZ_free(uint32_tArray _res) { - LDKCVec_C2Tuple_u32ScriptZZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_u32ScriptZ), "LDKCVec_C2Tuple_u32ScriptZZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t v = 0; v < _res_constr.datalen; v++) { - uint32_t _res_conv_21 = _res_vals[v]; - void* _res_conv_21_ptr = (void*)(((uint64_t)_res_conv_21) & ~1); - CHECK_ACCESS(_res_conv_21_ptr); - LDKC2Tuple_u32ScriptZ _res_conv_21_conv = *(LDKC2Tuple_u32ScriptZ*)(_res_conv_21_ptr); - FREE((void*)_res_conv_21); - _res_constr.data[v] = _res_conv_21_conv; - } - CVec_C2Tuple_u32ScriptZZ_free(_res_constr); +static inline uint64_t CResult_boolLightningErrorZ_clone_ptr(LDKCResult_boolLightningErrorZ *NONNULL_PTR arg) { + LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); + *ret_conv = CResult_boolLightningErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_boolLightningErrorZ* arg_conv = (LDKCResult_boolLightningErrorZ*)(arg & ~1); + int64_t ret_val = CResult_boolLightningErrorZ_clone_ptr(arg_conv); + return ret_val; } -static inline uint64_t C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone_ptr(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ *NONNULL_PTR arg) { - LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ"); - *ret_conv = C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone(arg); +uint32_t __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_clone(uint32_t orig) { + LDKCResult_boolLightningErrorZ* orig_conv = (LDKCResult_boolLightningErrorZ*)(orig & ~1); + LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); + *ret_conv = CResult_boolLightningErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; +} + +static inline uint64_t C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone_ptr(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ *NONNULL_PTR arg) { + LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ), "LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ"); + *ret_conv = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone(arg); return ((uint64_t)ret_conv); } -int64_t __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone_ptr(uint32_t arg) { - LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* arg_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ*)(arg & ~1); - int64_t ret_val = C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone_ptr(uint32_t arg) { + LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* arg_conv = (LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(arg & ~1); + int64_t ret_val = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone(uint32_t orig) { - LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* orig_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ*)(orig & ~1); - LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ"); - *ret_conv = C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone(uint32_t orig) { + LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* orig_conv = (LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(orig & ~1); + LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ), "LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ"); + *ret_conv = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone(orig_conv); return ((uint64_t)ret_conv); } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_new(int8_tArray a, uint32_tArray b) { - LDKThirtyTwoBytes a_ref; - CHECK(*((uint32_t*)a) == 32); - memcpy(a_ref.data, (uint8_t*)(a + 4), 32); - LDKCVec_C2Tuple_u32ScriptZZ b_constr; - b_constr.datalen = *((uint32_t*)b); - if (b_constr.datalen > 0) - b_constr.data = MALLOC(b_constr.datalen * sizeof(LDKC2Tuple_u32ScriptZ), "LDKCVec_C2Tuple_u32ScriptZZ Elements"); - else - b_constr.data = NULL; - uint32_t* b_vals = (uint32_t*)(b + 4); - for (size_t v = 0; v < b_constr.datalen; v++) { - uint32_t b_conv_21 = b_vals[v]; - void* b_conv_21_ptr = (void*)(((uint64_t)b_conv_21) & ~1); - CHECK_ACCESS(b_conv_21_ptr); - LDKC2Tuple_u32ScriptZ b_conv_21_conv = *(LDKC2Tuple_u32ScriptZ*)(b_conv_21_ptr); - b_conv_21_conv = C2Tuple_u32ScriptZ_clone((LDKC2Tuple_u32ScriptZ*)(((uint64_t)b_conv_21) & ~1)); - b_constr.data[v] = b_conv_21_conv; - } - LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ"); - *ret_conv = C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_new(a_ref, b_constr); +uint32_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_new(uint32_t a, uint32_t b, uint32_t c) { + LDKChannelAnnouncement a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = (a & 1) || (a == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + a_conv = ChannelAnnouncement_clone(&a_conv); + LDKChannelUpdate b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = (b & 1) || (b == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + b_conv = ChannelUpdate_clone(&b_conv); + LDKChannelUpdate c_conv; + c_conv.inner = (void*)(c & (~1)); + c_conv.is_owned = (c & 1) || (c == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(c_conv); + c_conv = ChannelUpdate_clone(&c_conv); + LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ), "LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ"); + *ret_conv = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_new(a_conv, b_conv, c_conv); return ((uint64_t)ret_conv); } -void __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ _res_conv = *(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ*)(_res_ptr); + LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ _res_conv = *(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(_res_ptr); FREE((void*)_res); - C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_free(_res_conv); + C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_free(_res_conv); } -void __attribute__((visibility("default"))) TS_CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ_free(uint32_tArray _res) { - LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); +void __attribute__((visibility("default"))) TS_CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_free(uint32_tArray _res) { + LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ _res_constr; + _res_constr.datalen = _res->arr_len; if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ), "LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ Elements"); + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ), "LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ Elements"); else _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t o = 0; o < _res_constr.datalen; o++) { - uint32_t _res_conv_40 = _res_vals[o]; - void* _res_conv_40_ptr = (void*)(((uint64_t)_res_conv_40) & ~1); - CHECK_ACCESS(_res_conv_40_ptr); - LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ _res_conv_40_conv = *(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ*)(_res_conv_40_ptr); - FREE((void*)_res_conv_40); - _res_constr.data[o] = _res_conv_40_conv; + uint32_t* _res_vals = _res->elems; + for (size_t h = 0; h < _res_constr.datalen; h++) { + uint32_t _res_conv_59 = _res_vals[h]; + void* _res_conv_59_ptr = (void*)(((uint64_t)_res_conv_59) & ~1); + CHECK_ACCESS(_res_conv_59_ptr); + LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ _res_conv_59_conv = *(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(_res_conv_59_ptr); + FREE((void*)_res_conv_59); + _res_constr.data[h] = _res_conv_59_conv; } - CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ_free(_res_constr); + CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_free(_res_constr); } -void __attribute__((visibility("default"))) TS_CVec_EventZ_free(uint32_tArray _res) { - LDKCVec_EventZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); +void __attribute__((visibility("default"))) TS_CVec_NodeAnnouncementZ_free(uint32_tArray _res) { + LDKCVec_NodeAnnouncementZ _res_constr; + _res_constr.datalen = _res->arr_len; if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKEvent), "LDKCVec_EventZ Elements"); + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKNodeAnnouncement), "LDKCVec_NodeAnnouncementZ Elements"); else _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t h = 0; h < _res_constr.datalen; h++) { - uint32_t _res_conv_7 = _res_vals[h]; - void* _res_conv_7_ptr = (void*)(((uint64_t)_res_conv_7) & ~1); - CHECK_ACCESS(_res_conv_7_ptr); - LDKEvent _res_conv_7_conv = *(LDKEvent*)(_res_conv_7_ptr); - FREE((void*)_res_conv_7); - _res_constr.data[h] = _res_conv_7_conv; + uint32_t* _res_vals = _res->elems; + for (size_t s = 0; s < _res_constr.datalen; s++) { + uint32_t _res_conv_18 = _res_vals[s]; + LDKNodeAnnouncement _res_conv_18_conv; + _res_conv_18_conv.inner = (void*)(_res_conv_18 & (~1)); + _res_conv_18_conv.is_owned = (_res_conv_18 & 1) || (_res_conv_18 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_18_conv); + _res_constr.data[s] = _res_conv_18_conv; } - CVec_EventZ_free(_res_constr); + CVec_NodeAnnouncementZ_free(_res_constr); } -void __attribute__((visibility("default"))) TS_CVec_TransactionZ_free(ptrArray _res) { - LDKCVec_TransactionZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); +void __attribute__((visibility("default"))) TS_CVec_PublicKeyZ_free(ptrArray _res) { + LDKCVec_PublicKeyZ _res_constr; + _res_constr.datalen = _res->arr_len; if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKTransaction), "LDKCVec_TransactionZ Elements"); + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKPublicKey), "LDKCVec_PublicKeyZ Elements"); else _res_constr.data = NULL; - int8_tArray* _res_vals = (int8_tArray*)(_res + 4); + int8_tArray* _res_vals = (void*) _res->elems; for (size_t m = 0; m < _res_constr.datalen; m++) { int8_tArray _res_conv_12 = _res_vals[m]; - LDKTransaction _res_conv_12_ref; - _res_conv_12_ref.datalen = *((uint32_t*)_res_conv_12); - _res_conv_12_ref.data = MALLOC(_res_conv_12_ref.datalen, "LDKTransaction Bytes"); - memcpy(_res_conv_12_ref.data, (uint8_t*)(_res_conv_12 + 4), _res_conv_12_ref.datalen); - _res_conv_12_ref.data_is_owned = true; + LDKPublicKey _res_conv_12_ref; + CHECK(_res_conv_12->arr_len == 33); + memcpy(_res_conv_12_ref.compressed_form, _res_conv_12->elems, 33); _res_constr.data[m] = _res_conv_12_ref; } - CVec_TransactionZ_free(_res_constr); + CVec_PublicKeyZ_free(_res_constr); } -static inline uint64_t C2Tuple_u32TxOutZ_clone_ptr(LDKC2Tuple_u32TxOutZ *NONNULL_PTR arg) { - LDKC2Tuple_u32TxOutZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_u32TxOutZ), "LDKC2Tuple_u32TxOutZ"); - *ret_conv = C2Tuple_u32TxOutZ_clone(arg); - return ((uint64_t)ret_conv); +void __attribute__((visibility("default"))) TS_CVec_u8Z_free(int8_tArray _res) { + LDKCVec_u8Z _res_ref; + _res_ref.datalen = _res->arr_len; + _res_ref.data = MALLOC(_res_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(_res_ref.data, _res->elems, _res_ref.datalen); + CVec_u8Z_free(_res_ref); } -int64_t __attribute__((visibility("default"))) TS_C2Tuple_u32TxOutZ_clone_ptr(uint32_t arg) { - LDKC2Tuple_u32TxOutZ* arg_conv = (LDKC2Tuple_u32TxOutZ*)(arg & ~1); - int64_t ret_val = C2Tuple_u32TxOutZ_clone_ptr(arg_conv); - return ret_val; + +uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_ok(int8_tArray o) { + LDKCVec_u8Z o_ref; + o_ref.datalen = o->arr_len; + o_ref.data = MALLOC(o_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(o_ref.data, o->elems, o_ref.datalen); + LDKCResult_CVec_u8ZPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_u8ZPeerHandleErrorZ), "LDKCResult_CVec_u8ZPeerHandleErrorZ"); + *ret_conv = CResult_CVec_u8ZPeerHandleErrorZ_ok(o_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_u32TxOutZ_clone(uint32_t orig) { - LDKC2Tuple_u32TxOutZ* orig_conv = (LDKC2Tuple_u32TxOutZ*)(orig & ~1); - LDKC2Tuple_u32TxOutZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_u32TxOutZ), "LDKC2Tuple_u32TxOutZ"); - *ret_conv = C2Tuple_u32TxOutZ_clone(orig_conv); - return ((uint64_t)ret_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_err(uint32_t e) { + LDKPeerHandleError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = PeerHandleError_clone(&e_conv); + LDKCResult_CVec_u8ZPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_u8ZPeerHandleErrorZ), "LDKCResult_CVec_u8ZPeerHandleErrorZ"); + *ret_conv = CResult_CVec_u8ZPeerHandleErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_u32TxOutZ_new(int32_t a, uint32_t b) { - void* b_ptr = (void*)(((uint64_t)b) & ~1); - CHECK_ACCESS(b_ptr); - LDKTxOut b_conv = *(LDKTxOut*)(b_ptr); - b_conv = TxOut_clone((LDKTxOut*)(((uint64_t)b) & ~1)); - LDKC2Tuple_u32TxOutZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_u32TxOutZ), "LDKC2Tuple_u32TxOutZ"); - *ret_conv = C2Tuple_u32TxOutZ_new(a, b_conv); - return ((uint64_t)ret_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_is_ok(uint32_t o) { + LDKCResult_CVec_u8ZPeerHandleErrorZ* o_conv = (LDKCResult_CVec_u8ZPeerHandleErrorZ*)(o & ~1); + jboolean ret_val = CResult_CVec_u8ZPeerHandleErrorZ_is_ok(o_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_C2Tuple_u32TxOutZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKC2Tuple_u32TxOutZ _res_conv = *(LDKC2Tuple_u32TxOutZ*)(_res_ptr); + LDKCResult_CVec_u8ZPeerHandleErrorZ _res_conv = *(LDKCResult_CVec_u8ZPeerHandleErrorZ*)(_res_ptr); FREE((void*)_res); - C2Tuple_u32TxOutZ_free(_res_conv); + CResult_CVec_u8ZPeerHandleErrorZ_free(_res_conv); } -void __attribute__((visibility("default"))) TS_CVec_C2Tuple_u32TxOutZZ_free(uint32_tArray _res) { - LDKCVec_C2Tuple_u32TxOutZZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_u32TxOutZ), "LDKCVec_C2Tuple_u32TxOutZZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t u = 0; u < _res_constr.datalen; u++) { - uint32_t _res_conv_20 = _res_vals[u]; - void* _res_conv_20_ptr = (void*)(((uint64_t)_res_conv_20) & ~1); - CHECK_ACCESS(_res_conv_20_ptr); - LDKC2Tuple_u32TxOutZ _res_conv_20_conv = *(LDKC2Tuple_u32TxOutZ*)(_res_conv_20_ptr); - FREE((void*)_res_conv_20); - _res_constr.data[u] = _res_conv_20_conv; - } - CVec_C2Tuple_u32TxOutZZ_free(_res_constr); +static inline uint64_t CResult_CVec_u8ZPeerHandleErrorZ_clone_ptr(LDKCResult_CVec_u8ZPeerHandleErrorZ *NONNULL_PTR arg) { + LDKCResult_CVec_u8ZPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_u8ZPeerHandleErrorZ), "LDKCResult_CVec_u8ZPeerHandleErrorZ"); + *ret_conv = CResult_CVec_u8ZPeerHandleErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_CVec_u8ZPeerHandleErrorZ* arg_conv = (LDKCResult_CVec_u8ZPeerHandleErrorZ*)(arg & ~1); + int64_t ret_val = CResult_CVec_u8ZPeerHandleErrorZ_clone_ptr(arg_conv); + return ret_val; } -static inline uint64_t C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone_ptr(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ *NONNULL_PTR arg) { - LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ"); - *ret_conv = C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(arg); - return ((uint64_t)ret_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_clone(uint32_t orig) { + LDKCResult_CVec_u8ZPeerHandleErrorZ* orig_conv = (LDKCResult_CVec_u8ZPeerHandleErrorZ*)(orig & ~1); + LDKCResult_CVec_u8ZPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_u8ZPeerHandleErrorZ), "LDKCResult_CVec_u8ZPeerHandleErrorZ"); + *ret_conv = CResult_CVec_u8ZPeerHandleErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone_ptr(uint32_t arg) { - LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* arg_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ*)(arg & ~1); - int64_t ret_val = C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone_ptr(arg_conv); - return ret_val; + +uint32_t __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_ok() { + LDKCResult_NonePeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePeerHandleErrorZ), "LDKCResult_NonePeerHandleErrorZ"); + *ret_conv = CResult_NonePeerHandleErrorZ_ok(); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(uint32_t orig) { - LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* orig_conv = (LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ*)(orig & ~1); - LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ"); - *ret_conv = C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(orig_conv); - return ((uint64_t)ret_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_err(uint32_t e) { + LDKPeerHandleError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = PeerHandleError_clone(&e_conv); + LDKCResult_NonePeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePeerHandleErrorZ), "LDKCResult_NonePeerHandleErrorZ"); + *ret_conv = CResult_NonePeerHandleErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_new(int8_tArray a, uint32_tArray b) { - LDKThirtyTwoBytes a_ref; - CHECK(*((uint32_t*)a) == 32); - memcpy(a_ref.data, (uint8_t*)(a + 4), 32); - LDKCVec_C2Tuple_u32TxOutZZ b_constr; - b_constr.datalen = *((uint32_t*)b); - if (b_constr.datalen > 0) - b_constr.data = MALLOC(b_constr.datalen * sizeof(LDKC2Tuple_u32TxOutZ), "LDKCVec_C2Tuple_u32TxOutZZ Elements"); - else - b_constr.data = NULL; - uint32_t* b_vals = (uint32_t*)(b + 4); - for (size_t u = 0; u < b_constr.datalen; u++) { - uint32_t b_conv_20 = b_vals[u]; - void* b_conv_20_ptr = (void*)(((uint64_t)b_conv_20) & ~1); - CHECK_ACCESS(b_conv_20_ptr); - LDKC2Tuple_u32TxOutZ b_conv_20_conv = *(LDKC2Tuple_u32TxOutZ*)(b_conv_20_ptr); - b_conv_20_conv = C2Tuple_u32TxOutZ_clone((LDKC2Tuple_u32TxOutZ*)(((uint64_t)b_conv_20) & ~1)); - b_constr.data[u] = b_conv_20_conv; - } - LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ"); - *ret_conv = C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_new(a_ref, b_constr); - return ((uint64_t)ret_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_is_ok(uint32_t o) { + LDKCResult_NonePeerHandleErrorZ* o_conv = (LDKCResult_NonePeerHandleErrorZ*)(o & ~1); + jboolean ret_val = CResult_NonePeerHandleErrorZ_is_ok(o_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ _res_conv = *(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ*)(_res_ptr); + LDKCResult_NonePeerHandleErrorZ _res_conv = *(LDKCResult_NonePeerHandleErrorZ*)(_res_ptr); FREE((void*)_res); - C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_free(_res_conv); + CResult_NonePeerHandleErrorZ_free(_res_conv); } -void __attribute__((visibility("default"))) TS_CVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ_free(uint32_tArray _res) { - LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t n = 0; n < _res_constr.datalen; n++) { - uint32_t _res_conv_39 = _res_vals[n]; - void* _res_conv_39_ptr = (void*)(((uint64_t)_res_conv_39) & ~1); - CHECK_ACCESS(_res_conv_39_ptr); - LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ _res_conv_39_conv = *(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ*)(_res_conv_39_ptr); - FREE((void*)_res_conv_39); - _res_constr.data[n] = _res_conv_39_conv; - } - CVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ_free(_res_constr); +static inline uint64_t CResult_NonePeerHandleErrorZ_clone_ptr(LDKCResult_NonePeerHandleErrorZ *NONNULL_PTR arg) { + LDKCResult_NonePeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePeerHandleErrorZ), "LDKCResult_NonePeerHandleErrorZ"); + *ret_conv = CResult_NonePeerHandleErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_NonePeerHandleErrorZ* arg_conv = (LDKCResult_NonePeerHandleErrorZ*)(arg & ~1); + int64_t ret_val = CResult_NonePeerHandleErrorZ_clone_ptr(arg_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_CVec_BalanceZ_free(uint32_tArray _res) { - LDKCVec_BalanceZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKBalance), "LDKCVec_BalanceZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t j = 0; j < _res_constr.datalen; j++) { - uint32_t _res_conv_9 = _res_vals[j]; - void* _res_conv_9_ptr = (void*)(((uint64_t)_res_conv_9) & ~1); - CHECK_ACCESS(_res_conv_9_ptr); - LDKBalance _res_conv_9_conv = *(LDKBalance*)(_res_conv_9_ptr); - FREE((void*)_res_conv_9); - _res_constr.data[j] = _res_conv_9_conv; - } - CVec_BalanceZ_free(_res_constr); +uint32_t __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_clone(uint32_t orig) { + LDKCResult_NonePeerHandleErrorZ* orig_conv = (LDKCResult_NonePeerHandleErrorZ*)(orig & ~1); + LDKCResult_NonePeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePeerHandleErrorZ), "LDKCResult_NonePeerHandleErrorZ"); + *ret_conv = CResult_NonePeerHandleErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_ok(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKC2Tuple_BlockHashChannelMonitorZ o_conv = *(LDKC2Tuple_BlockHashChannelMonitorZ*)(o_ptr); - o_conv = C2Tuple_BlockHashChannelMonitorZ_clone((LDKC2Tuple_BlockHashChannelMonitorZ*)(((uint64_t)o) & ~1)); - LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ"); - *ret_conv = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_ok(o_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_ok(jboolean o) { + LDKCResult_boolPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolPeerHandleErrorZ), "LDKCResult_boolPeerHandleErrorZ"); + *ret_conv = CResult_boolPeerHandleErrorZ_ok(o); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_err(uint32_t e) { + LDKPeerHandleError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ"); - *ret_conv = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_err(e_conv); + e_conv = PeerHandleError_clone(&e_conv); + LDKCResult_boolPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolPeerHandleErrorZ), "LDKCResult_boolPeerHandleErrorZ"); + *ret_conv = CResult_boolPeerHandleErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* o_conv = (LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_is_ok(uint32_t o) { + LDKCResult_boolPeerHandleErrorZ* o_conv = (LDKCResult_boolPeerHandleErrorZ*)(o & ~1); + jboolean ret_val = CResult_boolPeerHandleErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ _res_conv = *(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ*)(_res_ptr); + LDKCResult_boolPeerHandleErrorZ _res_conv = *(LDKCResult_boolPeerHandleErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_free(_res_conv); + CResult_boolPeerHandleErrorZ_free(_res_conv); } -static inline uint64_t CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone_ptr(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ"); - *ret_conv = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone(arg); +static inline uint64_t CResult_boolPeerHandleErrorZ_clone_ptr(LDKCResult_boolPeerHandleErrorZ *NONNULL_PTR arg) { + LDKCResult_boolPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolPeerHandleErrorZ), "LDKCResult_boolPeerHandleErrorZ"); + *ret_conv = CResult_boolPeerHandleErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* arg_conv = (LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_boolPeerHandleErrorZ* arg_conv = (LDKCResult_boolPeerHandleErrorZ*)(arg & ~1); + int64_t ret_val = CResult_boolPeerHandleErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* orig_conv = (LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ*)(orig & ~1); - LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ"); - *ret_conv = CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_clone(uint32_t orig) { + LDKCResult_boolPeerHandleErrorZ* orig_conv = (LDKCResult_boolPeerHandleErrorZ*)(orig & ~1); + LDKCResult_boolPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolPeerHandleErrorZ), "LDKCResult_boolPeerHandleErrorZ"); + *ret_conv = CResult_boolPeerHandleErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_ok() { - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = CResult_NoneLightningErrorZ_ok(); +uint32_t __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKTxOut o_conv = *(LDKTxOut*)(o_ptr); + o_conv = TxOut_clone((LDKTxOut*)(((uint64_t)o) & ~1)); + LDKCResult_TxOutAccessErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxOutAccessErrorZ), "LDKCResult_TxOutAccessErrorZ"); + *ret_conv = CResult_TxOutAccessErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_err(uint32_t e) { - LDKLightningError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = LightningError_clone(&e_conv); - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = CResult_NoneLightningErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_err(uint32_t e) { + LDKAccessError e_conv = LDKAccessError_from_js(e); + LDKCResult_TxOutAccessErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxOutAccessErrorZ), "LDKCResult_TxOutAccessErrorZ"); + *ret_conv = CResult_TxOutAccessErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_is_ok(uint32_t o) { - LDKCResult_NoneLightningErrorZ* o_conv = (LDKCResult_NoneLightningErrorZ*)(o & ~1); - jboolean ret_val = CResult_NoneLightningErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_is_ok(uint32_t o) { + LDKCResult_TxOutAccessErrorZ* o_conv = (LDKCResult_TxOutAccessErrorZ*)(o & ~1); + jboolean ret_val = CResult_TxOutAccessErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_NoneLightningErrorZ _res_conv = *(LDKCResult_NoneLightningErrorZ*)(_res_ptr); + LDKCResult_TxOutAccessErrorZ _res_conv = *(LDKCResult_TxOutAccessErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_NoneLightningErrorZ_free(_res_conv); + CResult_TxOutAccessErrorZ_free(_res_conv); } -static inline uint64_t CResult_NoneLightningErrorZ_clone_ptr(LDKCResult_NoneLightningErrorZ *NONNULL_PTR arg) { - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = CResult_NoneLightningErrorZ_clone(arg); +static inline uint64_t CResult_TxOutAccessErrorZ_clone_ptr(LDKCResult_TxOutAccessErrorZ *NONNULL_PTR arg) { + LDKCResult_TxOutAccessErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxOutAccessErrorZ), "LDKCResult_TxOutAccessErrorZ"); + *ret_conv = CResult_TxOutAccessErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_NoneLightningErrorZ* arg_conv = (LDKCResult_NoneLightningErrorZ*)(arg & ~1); - int64_t ret_val = CResult_NoneLightningErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_TxOutAccessErrorZ* arg_conv = (LDKCResult_TxOutAccessErrorZ*)(arg & ~1); + int64_t ret_val = CResult_TxOutAccessErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NoneLightningErrorZ_clone(uint32_t orig) { - LDKCResult_NoneLightningErrorZ* orig_conv = (LDKCResult_NoneLightningErrorZ*)(orig & ~1); - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = CResult_NoneLightningErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_TxOutAccessErrorZ_clone(uint32_t orig) { + LDKCResult_TxOutAccessErrorZ* orig_conv = (LDKCResult_TxOutAccessErrorZ*)(orig & ~1); + LDKCResult_TxOutAccessErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxOutAccessErrorZ), "LDKCResult_TxOutAccessErrorZ"); + *ret_conv = CResult_TxOutAccessErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -static inline uint64_t C2Tuple_PublicKeyTypeZ_clone_ptr(LDKC2Tuple_PublicKeyTypeZ *NONNULL_PTR arg) { - LDKC2Tuple_PublicKeyTypeZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyTypeZ), "LDKC2Tuple_PublicKeyTypeZ"); - *ret_conv = C2Tuple_PublicKeyTypeZ_clone(arg); - return ((uint64_t)ret_conv); -} -int64_t __attribute__((visibility("default"))) TS_C2Tuple_PublicKeyTypeZ_clone_ptr(uint32_t arg) { - LDKC2Tuple_PublicKeyTypeZ* arg_conv = (LDKC2Tuple_PublicKeyTypeZ*)(arg & ~1); - int64_t ret_val = C2Tuple_PublicKeyTypeZ_clone_ptr(arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_ok() { + LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); + *ret_conv = CResult_NoneChannelMonitorUpdateErrZ_ok(); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PublicKeyTypeZ_clone(uint32_t orig) { - LDKC2Tuple_PublicKeyTypeZ* orig_conv = (LDKC2Tuple_PublicKeyTypeZ*)(orig & ~1); - LDKC2Tuple_PublicKeyTypeZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyTypeZ), "LDKC2Tuple_PublicKeyTypeZ"); - *ret_conv = C2Tuple_PublicKeyTypeZ_clone(orig_conv); - return ((uint64_t)ret_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_err(uint32_t e) { + LDKChannelMonitorUpdateErr e_conv = LDKChannelMonitorUpdateErr_from_js(e); + LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); + *ret_conv = CResult_NoneChannelMonitorUpdateErrZ_err(e_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PublicKeyTypeZ_new(int8_tArray a, uint32_t b) { - LDKPublicKey a_ref; - CHECK(*((uint32_t*)a) == 33); - memcpy(a_ref.compressed_form, (uint8_t*)(a + 4), 33); - void* b_ptr = (void*)(((uint64_t)b) & ~1); - CHECK_ACCESS(b_ptr); - LDKType b_conv = *(LDKType*)(b_ptr); - LDKC2Tuple_PublicKeyTypeZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyTypeZ), "LDKC2Tuple_PublicKeyTypeZ"); - *ret_conv = C2Tuple_PublicKeyTypeZ_new(a_ref, b_conv); - return ((uint64_t)ret_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_is_ok(uint32_t o) { + LDKCResult_NoneChannelMonitorUpdateErrZ* o_conv = (LDKCResult_NoneChannelMonitorUpdateErrZ*)(o & ~1); + jboolean ret_val = CResult_NoneChannelMonitorUpdateErrZ_is_ok(o_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_C2Tuple_PublicKeyTypeZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKC2Tuple_PublicKeyTypeZ _res_conv = *(LDKC2Tuple_PublicKeyTypeZ*)(_res_ptr); + LDKCResult_NoneChannelMonitorUpdateErrZ _res_conv = *(LDKCResult_NoneChannelMonitorUpdateErrZ*)(_res_ptr); FREE((void*)_res); - C2Tuple_PublicKeyTypeZ_free(_res_conv); + CResult_NoneChannelMonitorUpdateErrZ_free(_res_conv); } -void __attribute__((visibility("default"))) TS_CVec_C2Tuple_PublicKeyTypeZZ_free(uint32_tArray _res) { - LDKCVec_C2Tuple_PublicKeyTypeZZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_PublicKeyTypeZ), "LDKCVec_C2Tuple_PublicKeyTypeZZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t z = 0; z < _res_constr.datalen; z++) { - uint32_t _res_conv_25 = _res_vals[z]; - void* _res_conv_25_ptr = (void*)(((uint64_t)_res_conv_25) & ~1); - CHECK_ACCESS(_res_conv_25_ptr); - LDKC2Tuple_PublicKeyTypeZ _res_conv_25_conv = *(LDKC2Tuple_PublicKeyTypeZ*)(_res_conv_25_ptr); - FREE((void*)_res_conv_25); - _res_constr.data[z] = _res_conv_25_conv; - } - CVec_C2Tuple_PublicKeyTypeZZ_free(_res_constr); +static inline uint64_t CResult_NoneChannelMonitorUpdateErrZ_clone_ptr(LDKCResult_NoneChannelMonitorUpdateErrZ *NONNULL_PTR arg) { + LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); + *ret_conv = CResult_NoneChannelMonitorUpdateErrZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_clone_ptr(uint32_t arg) { + LDKCResult_NoneChannelMonitorUpdateErrZ* arg_conv = (LDKCResult_NoneChannelMonitorUpdateErrZ*)(arg & ~1); + int64_t ret_val = CResult_NoneChannelMonitorUpdateErrZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_ok(jboolean o) { - LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); - *ret_conv = CResult_boolLightningErrorZ_ok(o); +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneChannelMonitorUpdateErrZ_clone(uint32_t orig) { + LDKCResult_NoneChannelMonitorUpdateErrZ* orig_conv = (LDKCResult_NoneChannelMonitorUpdateErrZ*)(orig & ~1); + LDKCResult_NoneChannelMonitorUpdateErrZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ), "LDKCResult_NoneChannelMonitorUpdateErrZ"); + *ret_conv = CResult_NoneChannelMonitorUpdateErrZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_err(uint32_t e) { - LDKLightningError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = LightningError_clone(&e_conv); - LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); - *ret_conv = CResult_boolLightningErrorZ_err(e_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_COption_C2Tuple_usizeTransactionZZ_some(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKC2Tuple_usizeTransactionZ o_conv = *(LDKC2Tuple_usizeTransactionZ*)(o_ptr); + o_conv = C2Tuple_usizeTransactionZ_clone((LDKC2Tuple_usizeTransactionZ*)(((uint64_t)o) & ~1)); + LDKCOption_C2Tuple_usizeTransactionZZ *ret_copy = MALLOC(sizeof(LDKCOption_C2Tuple_usizeTransactionZZ), "LDKCOption_C2Tuple_usizeTransactionZZ"); + *ret_copy = COption_C2Tuple_usizeTransactionZZ_some(o_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_is_ok(uint32_t o) { - LDKCResult_boolLightningErrorZ* o_conv = (LDKCResult_boolLightningErrorZ*)(o & ~1); - jboolean ret_val = CResult_boolLightningErrorZ_is_ok(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_COption_C2Tuple_usizeTransactionZZ_none() { + LDKCOption_C2Tuple_usizeTransactionZZ *ret_copy = MALLOC(sizeof(LDKCOption_C2Tuple_usizeTransactionZZ), "LDKCOption_C2Tuple_usizeTransactionZZ"); + *ret_copy = COption_C2Tuple_usizeTransactionZZ_none(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_COption_C2Tuple_usizeTransactionZZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_boolLightningErrorZ _res_conv = *(LDKCResult_boolLightningErrorZ*)(_res_ptr); + LDKCOption_C2Tuple_usizeTransactionZZ _res_conv = *(LDKCOption_C2Tuple_usizeTransactionZZ*)(_res_ptr); FREE((void*)_res); - CResult_boolLightningErrorZ_free(_res_conv); -} - -static inline uint64_t CResult_boolLightningErrorZ_clone_ptr(LDKCResult_boolLightningErrorZ *NONNULL_PTR arg) { - LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); - *ret_conv = CResult_boolLightningErrorZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_boolLightningErrorZ* arg_conv = (LDKCResult_boolLightningErrorZ*)(arg & ~1); - int64_t ret_val = CResult_boolLightningErrorZ_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_boolLightningErrorZ_clone(uint32_t orig) { - LDKCResult_boolLightningErrorZ* orig_conv = (LDKCResult_boolLightningErrorZ*)(orig & ~1); - LDKCResult_boolLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolLightningErrorZ), "LDKCResult_boolLightningErrorZ"); - *ret_conv = CResult_boolLightningErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; + COption_C2Tuple_usizeTransactionZZ_free(_res_conv); } -static inline uint64_t C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone_ptr(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ *NONNULL_PTR arg) { - LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ), "LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ"); - *ret_conv = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone(arg); - return ((uint64_t)ret_conv); +static inline uint64_t COption_C2Tuple_usizeTransactionZZ_clone_ptr(LDKCOption_C2Tuple_usizeTransactionZZ *NONNULL_PTR arg) { + LDKCOption_C2Tuple_usizeTransactionZZ *ret_copy = MALLOC(sizeof(LDKCOption_C2Tuple_usizeTransactionZZ), "LDKCOption_C2Tuple_usizeTransactionZZ"); + *ret_copy = COption_C2Tuple_usizeTransactionZZ_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone_ptr(uint32_t arg) { - LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* arg_conv = (LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(arg & ~1); - int64_t ret_val = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_COption_C2Tuple_usizeTransactionZZ_clone_ptr(uint32_t arg) { + LDKCOption_C2Tuple_usizeTransactionZZ* arg_conv = (LDKCOption_C2Tuple_usizeTransactionZZ*)arg; + int64_t ret_val = COption_C2Tuple_usizeTransactionZZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone(uint32_t orig) { - LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* orig_conv = (LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(orig & ~1); - LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ), "LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ"); - *ret_conv = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone(orig_conv); - return ((uint64_t)ret_conv); +uint32_t __attribute__((visibility("default"))) TS_COption_C2Tuple_usizeTransactionZZ_clone(uint32_t orig) { + LDKCOption_C2Tuple_usizeTransactionZZ* orig_conv = (LDKCOption_C2Tuple_usizeTransactionZZ*)orig; + LDKCOption_C2Tuple_usizeTransactionZZ *ret_copy = MALLOC(sizeof(LDKCOption_C2Tuple_usizeTransactionZZ), "LDKCOption_C2Tuple_usizeTransactionZZ"); + *ret_copy = COption_C2Tuple_usizeTransactionZZ_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_new(uint32_t a, uint32_t b, uint32_t c) { - LDKChannelAnnouncement a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = (a & 1) || (a == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - a_conv = ChannelAnnouncement_clone(&a_conv); - LDKChannelUpdate b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = (b & 1) || (b == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - b_conv = ChannelUpdate_clone(&b_conv); - LDKChannelUpdate c_conv; - c_conv.inner = (void*)(c & (~1)); - c_conv.is_owned = (c & 1) || (c == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(c_conv); - c_conv = ChannelUpdate_clone(&c_conv); - LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ), "LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ"); - *ret_conv = C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_new(a_conv, b_conv, c_conv); - return ((uint64_t)ret_conv); +uint32_t __attribute__((visibility("default"))) TS_COption_ClosureReasonZ_some(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKClosureReason o_conv = *(LDKClosureReason*)(o_ptr); + o_conv = ClosureReason_clone((LDKClosureReason*)(((uint64_t)o) & ~1)); + LDKCOption_ClosureReasonZ *ret_copy = MALLOC(sizeof(LDKCOption_ClosureReasonZ), "LDKCOption_ClosureReasonZ"); + *ret_copy = COption_ClosureReasonZ_some(o_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_free(uint32_t _res) { +uint32_t __attribute__((visibility("default"))) TS_COption_ClosureReasonZ_none() { + LDKCOption_ClosureReasonZ *ret_copy = MALLOC(sizeof(LDKCOption_ClosureReasonZ), "LDKCOption_ClosureReasonZ"); + *ret_copy = COption_ClosureReasonZ_none(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +void __attribute__((visibility("default"))) TS_COption_ClosureReasonZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ _res_conv = *(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(_res_ptr); + LDKCOption_ClosureReasonZ _res_conv = *(LDKCOption_ClosureReasonZ*)(_res_ptr); FREE((void*)_res); - C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_free(_res_conv); + COption_ClosureReasonZ_free(_res_conv); } -void __attribute__((visibility("default"))) TS_CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_free(uint32_tArray _res) { - LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ), "LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t h = 0; h < _res_constr.datalen; h++) { - uint32_t _res_conv_59 = _res_vals[h]; - void* _res_conv_59_ptr = (void*)(((uint64_t)_res_conv_59) & ~1); - CHECK_ACCESS(_res_conv_59_ptr); - LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ _res_conv_59_conv = *(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ*)(_res_conv_59_ptr); - FREE((void*)_res_conv_59); - _res_constr.data[h] = _res_conv_59_conv; - } - CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_free(_res_constr); +static inline uint64_t COption_ClosureReasonZ_clone_ptr(LDKCOption_ClosureReasonZ *NONNULL_PTR arg) { + LDKCOption_ClosureReasonZ *ret_copy = MALLOC(sizeof(LDKCOption_ClosureReasonZ), "LDKCOption_ClosureReasonZ"); + *ret_copy = COption_ClosureReasonZ_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } - -void __attribute__((visibility("default"))) TS_CVec_NodeAnnouncementZ_free(uint32_tArray _res) { - LDKCVec_NodeAnnouncementZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKNodeAnnouncement), "LDKCVec_NodeAnnouncementZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t s = 0; s < _res_constr.datalen; s++) { - uint32_t _res_conv_18 = _res_vals[s]; - LDKNodeAnnouncement _res_conv_18_conv; - _res_conv_18_conv.inner = (void*)(_res_conv_18 & (~1)); - _res_conv_18_conv.is_owned = (_res_conv_18 & 1) || (_res_conv_18 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_18_conv); - _res_constr.data[s] = _res_conv_18_conv; - } - CVec_NodeAnnouncementZ_free(_res_constr); +int64_t __attribute__((visibility("default"))) TS_COption_ClosureReasonZ_clone_ptr(uint32_t arg) { + LDKCOption_ClosureReasonZ* arg_conv = (LDKCOption_ClosureReasonZ*)arg; + int64_t ret_val = COption_ClosureReasonZ_clone_ptr(arg_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_CVec_PublicKeyZ_free(ptrArray _res) { - LDKCVec_PublicKeyZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKPublicKey), "LDKCVec_PublicKeyZ Elements"); - else - _res_constr.data = NULL; - int8_tArray* _res_vals = (int8_tArray*)(_res + 4); - for (size_t m = 0; m < _res_constr.datalen; m++) { - int8_tArray _res_conv_12 = _res_vals[m]; - LDKPublicKey _res_conv_12_ref; - CHECK(*((uint32_t*)_res_conv_12) == 33); - memcpy(_res_conv_12_ref.compressed_form, (uint8_t*)(_res_conv_12 + 4), 33); - _res_constr.data[m] = _res_conv_12_ref; - } - CVec_PublicKeyZ_free(_res_constr); +uint32_t __attribute__((visibility("default"))) TS_COption_ClosureReasonZ_clone(uint32_t orig) { + LDKCOption_ClosureReasonZ* orig_conv = (LDKCOption_ClosureReasonZ*)orig; + LDKCOption_ClosureReasonZ *ret_copy = MALLOC(sizeof(LDKCOption_ClosureReasonZ), "LDKCOption_ClosureReasonZ"); + *ret_copy = COption_ClosureReasonZ_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_ok(int8_tArray o) { - LDKCVec_u8Z o_ref; - o_ref.datalen = *((uint32_t*)o); - o_ref.data = MALLOC(o_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(o_ref.data, (uint8_t*)(o + 4), o_ref.datalen); - LDKCResult_CVec_u8ZPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_u8ZPeerHandleErrorZ), "LDKCResult_CVec_u8ZPeerHandleErrorZ"); - *ret_conv = CResult_CVec_u8ZPeerHandleErrorZ_ok(o_ref); +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKCOption_ClosureReasonZ o_conv = *(LDKCOption_ClosureReasonZ*)(o_ptr); + o_conv = COption_ClosureReasonZ_clone((LDKCOption_ClosureReasonZ*)(((uint64_t)o) & ~1)); + LDKCResult_COption_ClosureReasonZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_ClosureReasonZDecodeErrorZ), "LDKCResult_COption_ClosureReasonZDecodeErrorZ"); + *ret_conv = CResult_COption_ClosureReasonZDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_err(uint32_t e) { - LDKPeerHandleError e_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = PeerHandleError_clone(&e_conv); - LDKCResult_CVec_u8ZPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_u8ZPeerHandleErrorZ), "LDKCResult_CVec_u8ZPeerHandleErrorZ"); - *ret_conv = CResult_CVec_u8ZPeerHandleErrorZ_err(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_COption_ClosureReasonZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_ClosureReasonZDecodeErrorZ), "LDKCResult_COption_ClosureReasonZDecodeErrorZ"); + *ret_conv = CResult_COption_ClosureReasonZDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_is_ok(uint32_t o) { - LDKCResult_CVec_u8ZPeerHandleErrorZ* o_conv = (LDKCResult_CVec_u8ZPeerHandleErrorZ*)(o & ~1); - jboolean ret_val = CResult_CVec_u8ZPeerHandleErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_COption_ClosureReasonZDecodeErrorZ* o_conv = (LDKCResult_COption_ClosureReasonZDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_COption_ClosureReasonZDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_CVec_u8ZPeerHandleErrorZ _res_conv = *(LDKCResult_CVec_u8ZPeerHandleErrorZ*)(_res_ptr); + LDKCResult_COption_ClosureReasonZDecodeErrorZ _res_conv = *(LDKCResult_COption_ClosureReasonZDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_CVec_u8ZPeerHandleErrorZ_free(_res_conv); + CResult_COption_ClosureReasonZDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_CVec_u8ZPeerHandleErrorZ_clone_ptr(LDKCResult_CVec_u8ZPeerHandleErrorZ *NONNULL_PTR arg) { - LDKCResult_CVec_u8ZPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_u8ZPeerHandleErrorZ), "LDKCResult_CVec_u8ZPeerHandleErrorZ"); - *ret_conv = CResult_CVec_u8ZPeerHandleErrorZ_clone(arg); +static inline uint64_t CResult_COption_ClosureReasonZDecodeErrorZ_clone_ptr(LDKCResult_COption_ClosureReasonZDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_COption_ClosureReasonZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_ClosureReasonZDecodeErrorZ), "LDKCResult_COption_ClosureReasonZDecodeErrorZ"); + *ret_conv = CResult_COption_ClosureReasonZDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_CVec_u8ZPeerHandleErrorZ* arg_conv = (LDKCResult_CVec_u8ZPeerHandleErrorZ*)(arg & ~1); - int64_t ret_val = CResult_CVec_u8ZPeerHandleErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_COption_ClosureReasonZDecodeErrorZ* arg_conv = (LDKCResult_COption_ClosureReasonZDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_COption_ClosureReasonZDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_u8ZPeerHandleErrorZ_clone(uint32_t orig) { - LDKCResult_CVec_u8ZPeerHandleErrorZ* orig_conv = (LDKCResult_CVec_u8ZPeerHandleErrorZ*)(orig & ~1); - LDKCResult_CVec_u8ZPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_u8ZPeerHandleErrorZ), "LDKCResult_CVec_u8ZPeerHandleErrorZ"); - *ret_conv = CResult_CVec_u8ZPeerHandleErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_ClosureReasonZDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_COption_ClosureReasonZDecodeErrorZ* orig_conv = (LDKCResult_COption_ClosureReasonZDecodeErrorZ*)(orig & ~1); + LDKCResult_COption_ClosureReasonZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_ClosureReasonZDecodeErrorZ), "LDKCResult_COption_ClosureReasonZDecodeErrorZ"); + *ret_conv = CResult_COption_ClosureReasonZDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_ok() { - LDKCResult_NonePeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePeerHandleErrorZ), "LDKCResult_NonePeerHandleErrorZ"); - *ret_conv = CResult_NonePeerHandleErrorZ_ok(); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_COption_NetworkUpdateZ_some(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKNetworkUpdate o_conv = *(LDKNetworkUpdate*)(o_ptr); + o_conv = NetworkUpdate_clone((LDKNetworkUpdate*)(((uint64_t)o) & ~1)); + LDKCOption_NetworkUpdateZ *ret_copy = MALLOC(sizeof(LDKCOption_NetworkUpdateZ), "LDKCOption_NetworkUpdateZ"); + *ret_copy = COption_NetworkUpdateZ_some(o_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_err(uint32_t e) { - LDKPeerHandleError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = PeerHandleError_clone(&e_conv); - LDKCResult_NonePeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePeerHandleErrorZ), "LDKCResult_NonePeerHandleErrorZ"); - *ret_conv = CResult_NonePeerHandleErrorZ_err(e_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_COption_NetworkUpdateZ_none() { + LDKCOption_NetworkUpdateZ *ret_copy = MALLOC(sizeof(LDKCOption_NetworkUpdateZ), "LDKCOption_NetworkUpdateZ"); + *ret_copy = COption_NetworkUpdateZ_none(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_is_ok(uint32_t o) { - LDKCResult_NonePeerHandleErrorZ* o_conv = (LDKCResult_NonePeerHandleErrorZ*)(o & ~1); - jboolean ret_val = CResult_NonePeerHandleErrorZ_is_ok(o_conv); +void __attribute__((visibility("default"))) TS_COption_NetworkUpdateZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCOption_NetworkUpdateZ _res_conv = *(LDKCOption_NetworkUpdateZ*)(_res_ptr); + FREE((void*)_res); + COption_NetworkUpdateZ_free(_res_conv); +} + +static inline uint64_t COption_NetworkUpdateZ_clone_ptr(LDKCOption_NetworkUpdateZ *NONNULL_PTR arg) { + LDKCOption_NetworkUpdateZ *ret_copy = MALLOC(sizeof(LDKCOption_NetworkUpdateZ), "LDKCOption_NetworkUpdateZ"); + *ret_copy = COption_NetworkUpdateZ_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_COption_NetworkUpdateZ_clone_ptr(uint32_t arg) { + LDKCOption_NetworkUpdateZ* arg_conv = (LDKCOption_NetworkUpdateZ*)arg; + int64_t ret_val = COption_NetworkUpdateZ_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_free(uint32_t _res) { +uint32_t __attribute__((visibility("default"))) TS_COption_NetworkUpdateZ_clone(uint32_t orig) { + LDKCOption_NetworkUpdateZ* orig_conv = (LDKCOption_NetworkUpdateZ*)orig; + LDKCOption_NetworkUpdateZ *ret_copy = MALLOC(sizeof(LDKCOption_NetworkUpdateZ), "LDKCOption_NetworkUpdateZ"); + *ret_copy = COption_NetworkUpdateZ_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +void __attribute__((visibility("default"))) TS_CVec_SpendableOutputDescriptorZ_free(uint32_tArray _res) { + LDKCVec_SpendableOutputDescriptorZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKSpendableOutputDescriptor), "LDKCVec_SpendableOutputDescriptorZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t b = 0; b < _res_constr.datalen; b++) { + uint32_t _res_conv_27 = _res_vals[b]; + void* _res_conv_27_ptr = (void*)(((uint64_t)_res_conv_27) & ~1); + CHECK_ACCESS(_res_conv_27_ptr); + LDKSpendableOutputDescriptor _res_conv_27_conv = *(LDKSpendableOutputDescriptor*)(_res_conv_27_ptr); + FREE((void*)_res_conv_27); + _res_constr.data[b] = _res_conv_27_conv; + } + CVec_SpendableOutputDescriptorZ_free(_res_constr); +} + +uint32_t __attribute__((visibility("default"))) TS_COption_EventZ_some(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKEvent o_conv = *(LDKEvent*)(o_ptr); + o_conv = Event_clone((LDKEvent*)(((uint64_t)o) & ~1)); + LDKCOption_EventZ *ret_copy = MALLOC(sizeof(LDKCOption_EventZ), "LDKCOption_EventZ"); + *ret_copy = COption_EventZ_some(o_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_COption_EventZ_none() { + LDKCOption_EventZ *ret_copy = MALLOC(sizeof(LDKCOption_EventZ), "LDKCOption_EventZ"); + *ret_copy = COption_EventZ_none(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +void __attribute__((visibility("default"))) TS_COption_EventZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_NonePeerHandleErrorZ _res_conv = *(LDKCResult_NonePeerHandleErrorZ*)(_res_ptr); + LDKCOption_EventZ _res_conv = *(LDKCOption_EventZ*)(_res_ptr); FREE((void*)_res); - CResult_NonePeerHandleErrorZ_free(_res_conv); + COption_EventZ_free(_res_conv); } -static inline uint64_t CResult_NonePeerHandleErrorZ_clone_ptr(LDKCResult_NonePeerHandleErrorZ *NONNULL_PTR arg) { - LDKCResult_NonePeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePeerHandleErrorZ), "LDKCResult_NonePeerHandleErrorZ"); - *ret_conv = CResult_NonePeerHandleErrorZ_clone(arg); - return (uint64_t)ret_conv; +static inline uint64_t COption_EventZ_clone_ptr(LDKCOption_EventZ *NONNULL_PTR arg) { + LDKCOption_EventZ *ret_copy = MALLOC(sizeof(LDKCOption_EventZ), "LDKCOption_EventZ"); + *ret_copy = COption_EventZ_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_NonePeerHandleErrorZ* arg_conv = (LDKCResult_NonePeerHandleErrorZ*)(arg & ~1); - int64_t ret_val = CResult_NonePeerHandleErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_COption_EventZ_clone_ptr(uint32_t arg) { + LDKCOption_EventZ* arg_conv = (LDKCOption_EventZ*)arg; + int64_t ret_val = COption_EventZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NonePeerHandleErrorZ_clone(uint32_t orig) { - LDKCResult_NonePeerHandleErrorZ* orig_conv = (LDKCResult_NonePeerHandleErrorZ*)(orig & ~1); - LDKCResult_NonePeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePeerHandleErrorZ), "LDKCResult_NonePeerHandleErrorZ"); - *ret_conv = CResult_NonePeerHandleErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_COption_EventZ_clone(uint32_t orig) { + LDKCOption_EventZ* orig_conv = (LDKCOption_EventZ*)orig; + LDKCOption_EventZ *ret_copy = MALLOC(sizeof(LDKCOption_EventZ), "LDKCOption_EventZ"); + *ret_copy = COption_EventZ_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_ok(jboolean o) { - LDKCResult_boolPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolPeerHandleErrorZ), "LDKCResult_boolPeerHandleErrorZ"); - *ret_conv = CResult_boolPeerHandleErrorZ_ok(o); +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKCOption_EventZ o_conv = *(LDKCOption_EventZ*)(o_ptr); + o_conv = COption_EventZ_clone((LDKCOption_EventZ*)(((uint64_t)o) & ~1)); + LDKCResult_COption_EventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_EventZDecodeErrorZ), "LDKCResult_COption_EventZDecodeErrorZ"); + *ret_conv = CResult_COption_EventZDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_err(uint32_t e) { - LDKPeerHandleError e_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = PeerHandleError_clone(&e_conv); - LDKCResult_boolPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolPeerHandleErrorZ), "LDKCResult_boolPeerHandleErrorZ"); - *ret_conv = CResult_boolPeerHandleErrorZ_err(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_COption_EventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_EventZDecodeErrorZ), "LDKCResult_COption_EventZDecodeErrorZ"); + *ret_conv = CResult_COption_EventZDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_is_ok(uint32_t o) { - LDKCResult_boolPeerHandleErrorZ* o_conv = (LDKCResult_boolPeerHandleErrorZ*)(o & ~1); - jboolean ret_val = CResult_boolPeerHandleErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_COption_EventZDecodeErrorZ* o_conv = (LDKCResult_COption_EventZDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_COption_EventZDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_boolPeerHandleErrorZ _res_conv = *(LDKCResult_boolPeerHandleErrorZ*)(_res_ptr); + LDKCResult_COption_EventZDecodeErrorZ _res_conv = *(LDKCResult_COption_EventZDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_boolPeerHandleErrorZ_free(_res_conv); + CResult_COption_EventZDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_boolPeerHandleErrorZ_clone_ptr(LDKCResult_boolPeerHandleErrorZ *NONNULL_PTR arg) { - LDKCResult_boolPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolPeerHandleErrorZ), "LDKCResult_boolPeerHandleErrorZ"); - *ret_conv = CResult_boolPeerHandleErrorZ_clone(arg); +static inline uint64_t CResult_COption_EventZDecodeErrorZ_clone_ptr(LDKCResult_COption_EventZDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_COption_EventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_EventZDecodeErrorZ), "LDKCResult_COption_EventZDecodeErrorZ"); + *ret_conv = CResult_COption_EventZDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_boolPeerHandleErrorZ* arg_conv = (LDKCResult_boolPeerHandleErrorZ*)(arg & ~1); - int64_t ret_val = CResult_boolPeerHandleErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_COption_EventZDecodeErrorZ* arg_conv = (LDKCResult_COption_EventZDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_COption_EventZDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_boolPeerHandleErrorZ_clone(uint32_t orig) { - LDKCResult_boolPeerHandleErrorZ* orig_conv = (LDKCResult_boolPeerHandleErrorZ*)(orig & ~1); - LDKCResult_boolPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolPeerHandleErrorZ), "LDKCResult_boolPeerHandleErrorZ"); - *ret_conv = CResult_boolPeerHandleErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_COption_EventZDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_COption_EventZDecodeErrorZ* orig_conv = (LDKCResult_COption_EventZDecodeErrorZ*)(orig & ~1); + LDKCResult_COption_EventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_EventZDecodeErrorZ), "LDKCResult_COption_EventZDecodeErrorZ"); + *ret_conv = CResult_COption_EventZDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } @@ -14207,6 +12218,25 @@ uint32_t __attribute__((visibility("default"))) TS_CResult_RoutingFeesDecodeErr return (uint64_t)ret_conv; } +void __attribute__((visibility("default"))) TS_CVec_NetAddressZ_free(uint32_tArray _res) { + LDKCVec_NetAddressZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKNetAddress), "LDKCVec_NetAddressZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t m = 0; m < _res_constr.datalen; m++) { + uint32_t _res_conv_12 = _res_vals[m]; + void* _res_conv_12_ptr = (void*)(((uint64_t)_res_conv_12) & ~1); + CHECK_ACCESS(_res_conv_12_ptr); + LDKNetAddress _res_conv_12_conv = *(LDKNetAddress*)(_res_conv_12_ptr); + FREE((void*)_res_conv_12); + _res_constr.data[m] = _res_conv_12_conv; + } + CVec_NetAddressZ_free(_res_constr); +} + uint32_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementInfoDecodeErrorZ_ok(uint32_t o) { LDKNodeAnnouncementInfo o_conv; o_conv.inner = (void*)(o & (~1)); @@ -14264,12 +12294,12 @@ uint32_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementInfo void __attribute__((visibility("default"))) TS_CVec_u64Z_free(int64_tArray _res) { LDKCVec_u64Z _res_constr; - _res_constr.datalen = *((uint32_t*)_res); + _res_constr.datalen = _res->arr_len; if (_res_constr.datalen > 0) _res_constr.data = MALLOC(_res_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements"); else _res_constr.data = NULL; - int64_t* _res_vals = (int64_t*)(_res + 4); + int64_t* _res_vals = _res->elems; for (size_t i = 0; i < _res_constr.datalen; i++) { int64_t _res_conv_8 = _res_vals[i]; _res_constr.data[i] = _res_conv_8; @@ -14389,12 +12419,12 @@ uint32_t __attribute__((visibility("default"))) TS_CResult_NetworkGraphDecodeEr uint32_t __attribute__((visibility("default"))) TS_COption_CVec_NetAddressZZ_some(uint32_tArray o) { LDKCVec_NetAddressZ o_constr; - o_constr.datalen = *((uint32_t*)o); + o_constr.datalen = o->arr_len; if (o_constr.datalen > 0) o_constr.data = MALLOC(o_constr.datalen * sizeof(LDKNetAddress), "LDKCVec_NetAddressZ Elements"); else o_constr.data = NULL; - uint32_t* o_vals = (uint32_t*)(o + 4); + uint32_t* o_vals = o->elems; for (size_t m = 0; m < o_constr.datalen; m++) { uint32_t o_conv_12 = o_vals[m]; void* o_conv_12_ptr = (void*)(((uint64_t)o_conv_12) & ~1); @@ -14434,5183 +12464,4607 @@ uint64_t ret_ref = (uint64_t)ret_copy; int64_t __attribute__((visibility("default"))) TS_COption_CVec_NetAddressZZ_clone_ptr(uint32_t arg) { LDKCOption_CVec_NetAddressZZ* arg_conv = (LDKCOption_CVec_NetAddressZZ*)arg; int64_t ret_val = COption_CVec_NetAddressZZ_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_COption_CVec_NetAddressZZ_clone(uint32_t orig) { - LDKCOption_CVec_NetAddressZZ* orig_conv = (LDKCOption_CVec_NetAddressZZ*)orig; - LDKCOption_CVec_NetAddressZZ *ret_copy = MALLOC(sizeof(LDKCOption_CVec_NetAddressZZ), "LDKCOption_CVec_NetAddressZZ"); - *ret_copy = COption_CVec_NetAddressZZ_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_ok(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKNetAddress o_conv = *(LDKNetAddress*)(o_ptr); - o_conv = NetAddress_clone((LDKNetAddress*)(((uint64_t)o) & ~1)); - LDKCResult_NetAddressDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NetAddressDecodeErrorZ), "LDKCResult_NetAddressDecodeErrorZ"); - *ret_conv = CResult_NetAddressDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_NetAddressDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NetAddressDecodeErrorZ), "LDKCResult_NetAddressDecodeErrorZ"); - *ret_conv = CResult_NetAddressDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; -} - -jboolean __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_NetAddressDecodeErrorZ* o_conv = (LDKCResult_NetAddressDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_NetAddressDecodeErrorZ_is_ok(o_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_NetAddressDecodeErrorZ _res_conv = *(LDKCResult_NetAddressDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_NetAddressDecodeErrorZ_free(_res_conv); -} - -static inline uint64_t CResult_NetAddressDecodeErrorZ_clone_ptr(LDKCResult_NetAddressDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_NetAddressDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NetAddressDecodeErrorZ), "LDKCResult_NetAddressDecodeErrorZ"); - *ret_conv = CResult_NetAddressDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_NetAddressDecodeErrorZ* arg_conv = (LDKCResult_NetAddressDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_NetAddressDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_NetAddressDecodeErrorZ* orig_conv = (LDKCResult_NetAddressDecodeErrorZ*)(orig & ~1); - LDKCResult_NetAddressDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NetAddressDecodeErrorZ), "LDKCResult_NetAddressDecodeErrorZ"); - *ret_conv = CResult_NetAddressDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; -} - -void __attribute__((visibility("default"))) TS_CVec_UpdateAddHTLCZ_free(uint32_tArray _res) { - LDKCVec_UpdateAddHTLCZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKUpdateAddHTLC), "LDKCVec_UpdateAddHTLCZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t p = 0; p < _res_constr.datalen; p++) { - uint32_t _res_conv_15 = _res_vals[p]; - LDKUpdateAddHTLC _res_conv_15_conv; - _res_conv_15_conv.inner = (void*)(_res_conv_15 & (~1)); - _res_conv_15_conv.is_owned = (_res_conv_15 & 1) || (_res_conv_15 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_15_conv); - _res_constr.data[p] = _res_conv_15_conv; - } - CVec_UpdateAddHTLCZ_free(_res_constr); -} - -void __attribute__((visibility("default"))) TS_CVec_UpdateFulfillHTLCZ_free(uint32_tArray _res) { - LDKCVec_UpdateFulfillHTLCZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKUpdateFulfillHTLC), "LDKCVec_UpdateFulfillHTLCZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t t = 0; t < _res_constr.datalen; t++) { - uint32_t _res_conv_19 = _res_vals[t]; - LDKUpdateFulfillHTLC _res_conv_19_conv; - _res_conv_19_conv.inner = (void*)(_res_conv_19 & (~1)); - _res_conv_19_conv.is_owned = (_res_conv_19 & 1) || (_res_conv_19 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_19_conv); - _res_constr.data[t] = _res_conv_19_conv; - } - CVec_UpdateFulfillHTLCZ_free(_res_constr); -} - -void __attribute__((visibility("default"))) TS_CVec_UpdateFailHTLCZ_free(uint32_tArray _res) { - LDKCVec_UpdateFailHTLCZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKUpdateFailHTLC), "LDKCVec_UpdateFailHTLCZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t q = 0; q < _res_constr.datalen; q++) { - uint32_t _res_conv_16 = _res_vals[q]; - LDKUpdateFailHTLC _res_conv_16_conv; - _res_conv_16_conv.inner = (void*)(_res_conv_16 & (~1)); - _res_conv_16_conv.is_owned = (_res_conv_16 & 1) || (_res_conv_16 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_16_conv); - _res_constr.data[q] = _res_conv_16_conv; - } - CVec_UpdateFailHTLCZ_free(_res_constr); -} - -void __attribute__((visibility("default"))) TS_CVec_UpdateFailMalformedHTLCZ_free(uint32_tArray _res) { - LDKCVec_UpdateFailMalformedHTLCZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKUpdateFailMalformedHTLC), "LDKCVec_UpdateFailMalformedHTLCZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t z = 0; z < _res_constr.datalen; z++) { - uint32_t _res_conv_25 = _res_vals[z]; - LDKUpdateFailMalformedHTLC _res_conv_25_conv; - _res_conv_25_conv.inner = (void*)(_res_conv_25 & (~1)); - _res_conv_25_conv.is_owned = (_res_conv_25 & 1) || (_res_conv_25 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_25_conv); - _res_constr.data[z] = _res_conv_25_conv; - } - CVec_UpdateFailMalformedHTLCZ_free(_res_constr); -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_ok(uint32_t o) { - LDKAcceptChannel o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = AcceptChannel_clone(&o_conv); - LDKCResult_AcceptChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AcceptChannelDecodeErrorZ), "LDKCResult_AcceptChannelDecodeErrorZ"); - *ret_conv = CResult_AcceptChannelDecodeErrorZ_ok(o_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_err(uint32_t e) { - LDKDecodeError e_conv; - e_conv.inner = (void*)(e & (~1)); - e_conv.is_owned = (e & 1) || (e == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); - e_conv = DecodeError_clone(&e_conv); - LDKCResult_AcceptChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AcceptChannelDecodeErrorZ), "LDKCResult_AcceptChannelDecodeErrorZ"); - *ret_conv = CResult_AcceptChannelDecodeErrorZ_err(e_conv); - return (uint64_t)ret_conv; -} - -jboolean __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_AcceptChannelDecodeErrorZ* o_conv = (LDKCResult_AcceptChannelDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_AcceptChannelDecodeErrorZ_is_ok(o_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCResult_AcceptChannelDecodeErrorZ _res_conv = *(LDKCResult_AcceptChannelDecodeErrorZ*)(_res_ptr); - FREE((void*)_res); - CResult_AcceptChannelDecodeErrorZ_free(_res_conv); -} - -static inline uint64_t CResult_AcceptChannelDecodeErrorZ_clone_ptr(LDKCResult_AcceptChannelDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_AcceptChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AcceptChannelDecodeErrorZ), "LDKCResult_AcceptChannelDecodeErrorZ"); - *ret_conv = CResult_AcceptChannelDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_AcceptChannelDecodeErrorZ* arg_conv = (LDKCResult_AcceptChannelDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_AcceptChannelDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_AcceptChannelDecodeErrorZ* orig_conv = (LDKCResult_AcceptChannelDecodeErrorZ*)(orig & ~1); - LDKCResult_AcceptChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AcceptChannelDecodeErrorZ), "LDKCResult_AcceptChannelDecodeErrorZ"); - *ret_conv = CResult_AcceptChannelDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_ok(uint32_t o) { - LDKAnnouncementSignatures o_conv; +uint32_t __attribute__((visibility("default"))) TS_COption_CVec_NetAddressZZ_clone(uint32_t orig) { + LDKCOption_CVec_NetAddressZZ* orig_conv = (LDKCOption_CVec_NetAddressZZ*)orig; + LDKCOption_CVec_NetAddressZZ *ret_copy = MALLOC(sizeof(LDKCOption_CVec_NetAddressZZ), "LDKCOption_CVec_NetAddressZZ"); + *ret_copy = COption_CVec_NetAddressZZ_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_ScoringParametersDecodeErrorZ_ok(uint32_t o) { + LDKScoringParameters o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = AnnouncementSignatures_clone(&o_conv); - LDKCResult_AnnouncementSignaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AnnouncementSignaturesDecodeErrorZ), "LDKCResult_AnnouncementSignaturesDecodeErrorZ"); - *ret_conv = CResult_AnnouncementSignaturesDecodeErrorZ_ok(o_conv); + // Warning: we need a move here but no clone is available for LDKScoringParameters + LDKCResult_ScoringParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ScoringParametersDecodeErrorZ), "LDKCResult_ScoringParametersDecodeErrorZ"); + *ret_conv = CResult_ScoringParametersDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_ScoringParametersDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_AnnouncementSignaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AnnouncementSignaturesDecodeErrorZ), "LDKCResult_AnnouncementSignaturesDecodeErrorZ"); - *ret_conv = CResult_AnnouncementSignaturesDecodeErrorZ_err(e_conv); + LDKCResult_ScoringParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ScoringParametersDecodeErrorZ), "LDKCResult_ScoringParametersDecodeErrorZ"); + *ret_conv = CResult_ScoringParametersDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_AnnouncementSignaturesDecodeErrorZ* o_conv = (LDKCResult_AnnouncementSignaturesDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_AnnouncementSignaturesDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ScoringParametersDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ScoringParametersDecodeErrorZ* o_conv = (LDKCResult_ScoringParametersDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ScoringParametersDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ScoringParametersDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_AnnouncementSignaturesDecodeErrorZ _res_conv = *(LDKCResult_AnnouncementSignaturesDecodeErrorZ*)(_res_ptr); + LDKCResult_ScoringParametersDecodeErrorZ _res_conv = *(LDKCResult_ScoringParametersDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_AnnouncementSignaturesDecodeErrorZ_free(_res_conv); -} - -static inline uint64_t CResult_AnnouncementSignaturesDecodeErrorZ_clone_ptr(LDKCResult_AnnouncementSignaturesDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_AnnouncementSignaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AnnouncementSignaturesDecodeErrorZ), "LDKCResult_AnnouncementSignaturesDecodeErrorZ"); - *ret_conv = CResult_AnnouncementSignaturesDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_AnnouncementSignaturesDecodeErrorZ* arg_conv = (LDKCResult_AnnouncementSignaturesDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_AnnouncementSignaturesDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_AnnouncementSignaturesDecodeErrorZ* orig_conv = (LDKCResult_AnnouncementSignaturesDecodeErrorZ*)(orig & ~1); - LDKCResult_AnnouncementSignaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AnnouncementSignaturesDecodeErrorZ), "LDKCResult_AnnouncementSignaturesDecodeErrorZ"); - *ret_conv = CResult_AnnouncementSignaturesDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; + CResult_ScoringParametersDecodeErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_ok(uint32_t o) { - LDKChannelReestablish o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_InitFeaturesDecodeErrorZ_ok(uint32_t o) { + LDKInitFeatures o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ChannelReestablish_clone(&o_conv); - LDKCResult_ChannelReestablishDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelReestablishDecodeErrorZ), "LDKCResult_ChannelReestablishDecodeErrorZ"); - *ret_conv = CResult_ChannelReestablishDecodeErrorZ_ok(o_conv); + o_conv = InitFeatures_clone(&o_conv); + LDKCResult_InitFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitFeaturesDecodeErrorZ), "LDKCResult_InitFeaturesDecodeErrorZ"); + *ret_conv = CResult_InitFeaturesDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_InitFeaturesDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_ChannelReestablishDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelReestablishDecodeErrorZ), "LDKCResult_ChannelReestablishDecodeErrorZ"); - *ret_conv = CResult_ChannelReestablishDecodeErrorZ_err(e_conv); + LDKCResult_InitFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitFeaturesDecodeErrorZ), "LDKCResult_InitFeaturesDecodeErrorZ"); + *ret_conv = CResult_InitFeaturesDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ChannelReestablishDecodeErrorZ* o_conv = (LDKCResult_ChannelReestablishDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ChannelReestablishDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_InitFeaturesDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_InitFeaturesDecodeErrorZ* o_conv = (LDKCResult_InitFeaturesDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_InitFeaturesDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_InitFeaturesDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_ChannelReestablishDecodeErrorZ _res_conv = *(LDKCResult_ChannelReestablishDecodeErrorZ*)(_res_ptr); + LDKCResult_InitFeaturesDecodeErrorZ _res_conv = *(LDKCResult_InitFeaturesDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_ChannelReestablishDecodeErrorZ_free(_res_conv); -} - -static inline uint64_t CResult_ChannelReestablishDecodeErrorZ_clone_ptr(LDKCResult_ChannelReestablishDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ChannelReestablishDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelReestablishDecodeErrorZ), "LDKCResult_ChannelReestablishDecodeErrorZ"); - *ret_conv = CResult_ChannelReestablishDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ChannelReestablishDecodeErrorZ* arg_conv = (LDKCResult_ChannelReestablishDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ChannelReestablishDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ChannelReestablishDecodeErrorZ* orig_conv = (LDKCResult_ChannelReestablishDecodeErrorZ*)(orig & ~1); - LDKCResult_ChannelReestablishDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelReestablishDecodeErrorZ), "LDKCResult_ChannelReestablishDecodeErrorZ"); - *ret_conv = CResult_ChannelReestablishDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; + CResult_InitFeaturesDecodeErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_ok(uint32_t o) { - LDKClosingSigned o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelFeaturesDecodeErrorZ_ok(uint32_t o) { + LDKChannelFeatures o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ClosingSigned_clone(&o_conv); - LDKCResult_ClosingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedDecodeErrorZ), "LDKCResult_ClosingSignedDecodeErrorZ"); - *ret_conv = CResult_ClosingSignedDecodeErrorZ_ok(o_conv); + o_conv = ChannelFeatures_clone(&o_conv); + LDKCResult_ChannelFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelFeaturesDecodeErrorZ), "LDKCResult_ChannelFeaturesDecodeErrorZ"); + *ret_conv = CResult_ChannelFeaturesDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelFeaturesDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_ClosingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedDecodeErrorZ), "LDKCResult_ClosingSignedDecodeErrorZ"); - *ret_conv = CResult_ClosingSignedDecodeErrorZ_err(e_conv); + LDKCResult_ChannelFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelFeaturesDecodeErrorZ), "LDKCResult_ChannelFeaturesDecodeErrorZ"); + *ret_conv = CResult_ChannelFeaturesDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ClosingSignedDecodeErrorZ* o_conv = (LDKCResult_ClosingSignedDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ClosingSignedDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ChannelFeaturesDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ChannelFeaturesDecodeErrorZ* o_conv = (LDKCResult_ChannelFeaturesDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ChannelFeaturesDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ChannelFeaturesDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_ClosingSignedDecodeErrorZ _res_conv = *(LDKCResult_ClosingSignedDecodeErrorZ*)(_res_ptr); + LDKCResult_ChannelFeaturesDecodeErrorZ _res_conv = *(LDKCResult_ChannelFeaturesDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_ClosingSignedDecodeErrorZ_free(_res_conv); -} - -static inline uint64_t CResult_ClosingSignedDecodeErrorZ_clone_ptr(LDKCResult_ClosingSignedDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ClosingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedDecodeErrorZ), "LDKCResult_ClosingSignedDecodeErrorZ"); - *ret_conv = CResult_ClosingSignedDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ClosingSignedDecodeErrorZ* arg_conv = (LDKCResult_ClosingSignedDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ClosingSignedDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ClosingSignedDecodeErrorZ* orig_conv = (LDKCResult_ClosingSignedDecodeErrorZ*)(orig & ~1); - LDKCResult_ClosingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedDecodeErrorZ), "LDKCResult_ClosingSignedDecodeErrorZ"); - *ret_conv = CResult_ClosingSignedDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; + CResult_ChannelFeaturesDecodeErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_ok(uint32_t o) { - LDKClosingSignedFeeRange o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeFeaturesDecodeErrorZ_ok(uint32_t o) { + LDKNodeFeatures o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ClosingSignedFeeRange_clone(&o_conv); - LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ), "LDKCResult_ClosingSignedFeeRangeDecodeErrorZ"); - *ret_conv = CResult_ClosingSignedFeeRangeDecodeErrorZ_ok(o_conv); + o_conv = NodeFeatures_clone(&o_conv); + LDKCResult_NodeFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeFeaturesDecodeErrorZ), "LDKCResult_NodeFeaturesDecodeErrorZ"); + *ret_conv = CResult_NodeFeaturesDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeFeaturesDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ), "LDKCResult_ClosingSignedFeeRangeDecodeErrorZ"); - *ret_conv = CResult_ClosingSignedFeeRangeDecodeErrorZ_err(e_conv); + LDKCResult_NodeFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeFeaturesDecodeErrorZ), "LDKCResult_NodeFeaturesDecodeErrorZ"); + *ret_conv = CResult_NodeFeaturesDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* o_conv = (LDKCResult_ClosingSignedFeeRangeDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ClosingSignedFeeRangeDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_NodeFeaturesDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_NodeFeaturesDecodeErrorZ* o_conv = (LDKCResult_NodeFeaturesDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_NodeFeaturesDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_NodeFeaturesDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_ClosingSignedFeeRangeDecodeErrorZ _res_conv = *(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ*)(_res_ptr); + LDKCResult_NodeFeaturesDecodeErrorZ _res_conv = *(LDKCResult_NodeFeaturesDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_ClosingSignedFeeRangeDecodeErrorZ_free(_res_conv); -} - -static inline uint64_t CResult_ClosingSignedFeeRangeDecodeErrorZ_clone_ptr(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ), "LDKCResult_ClosingSignedFeeRangeDecodeErrorZ"); - *ret_conv = CResult_ClosingSignedFeeRangeDecodeErrorZ_clone(arg); - return (uint64_t)ret_conv; -} -int64_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* arg_conv = (LDKCResult_ClosingSignedFeeRangeDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ClosingSignedFeeRangeDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* orig_conv = (LDKCResult_ClosingSignedFeeRangeDecodeErrorZ*)(orig & ~1); - LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ), "LDKCResult_ClosingSignedFeeRangeDecodeErrorZ"); - *ret_conv = CResult_ClosingSignedFeeRangeDecodeErrorZ_clone(orig_conv); - return (uint64_t)ret_conv; + CResult_NodeFeaturesDecodeErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_ok(uint32_t o) { - LDKCommitmentSigned o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceFeaturesDecodeErrorZ_ok(uint32_t o) { + LDKInvoiceFeatures o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = CommitmentSigned_clone(&o_conv); - LDKCResult_CommitmentSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentSignedDecodeErrorZ), "LDKCResult_CommitmentSignedDecodeErrorZ"); - *ret_conv = CResult_CommitmentSignedDecodeErrorZ_ok(o_conv); + o_conv = InvoiceFeatures_clone(&o_conv); + LDKCResult_InvoiceFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceFeaturesDecodeErrorZ), "LDKCResult_InvoiceFeaturesDecodeErrorZ"); + *ret_conv = CResult_InvoiceFeaturesDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceFeaturesDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_CommitmentSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentSignedDecodeErrorZ), "LDKCResult_CommitmentSignedDecodeErrorZ"); - *ret_conv = CResult_CommitmentSignedDecodeErrorZ_err(e_conv); + LDKCResult_InvoiceFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceFeaturesDecodeErrorZ), "LDKCResult_InvoiceFeaturesDecodeErrorZ"); + *ret_conv = CResult_InvoiceFeaturesDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_CommitmentSignedDecodeErrorZ* o_conv = (LDKCResult_CommitmentSignedDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_CommitmentSignedDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_InvoiceFeaturesDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_InvoiceFeaturesDecodeErrorZ* o_conv = (LDKCResult_InvoiceFeaturesDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_InvoiceFeaturesDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_InvoiceFeaturesDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_CommitmentSignedDecodeErrorZ _res_conv = *(LDKCResult_CommitmentSignedDecodeErrorZ*)(_res_ptr); + LDKCResult_InvoiceFeaturesDecodeErrorZ _res_conv = *(LDKCResult_InvoiceFeaturesDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_CommitmentSignedDecodeErrorZ_free(_res_conv); + CResult_InvoiceFeaturesDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_CommitmentSignedDecodeErrorZ_clone_ptr(LDKCResult_CommitmentSignedDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_CommitmentSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentSignedDecodeErrorZ), "LDKCResult_CommitmentSignedDecodeErrorZ"); - *ret_conv = CResult_CommitmentSignedDecodeErrorZ_clone(arg); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTypeFeaturesDecodeErrorZ_ok(uint32_t o) { + LDKChannelTypeFeatures o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = ChannelTypeFeatures_clone(&o_conv); + LDKCResult_ChannelTypeFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTypeFeaturesDecodeErrorZ), "LDKCResult_ChannelTypeFeaturesDecodeErrorZ"); + *ret_conv = CResult_ChannelTypeFeaturesDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_CommitmentSignedDecodeErrorZ* arg_conv = (LDKCResult_CommitmentSignedDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_CommitmentSignedDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; -} -uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_CommitmentSignedDecodeErrorZ* orig_conv = (LDKCResult_CommitmentSignedDecodeErrorZ*)(orig & ~1); - LDKCResult_CommitmentSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentSignedDecodeErrorZ), "LDKCResult_CommitmentSignedDecodeErrorZ"); - *ret_conv = CResult_CommitmentSignedDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelTypeFeaturesDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_ChannelTypeFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTypeFeaturesDecodeErrorZ), "LDKCResult_ChannelTypeFeaturesDecodeErrorZ"); + *ret_conv = CResult_ChannelTypeFeaturesDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_ok(uint32_t o) { - LDKFundingCreated o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = (o & 1) || (o == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = FundingCreated_clone(&o_conv); - LDKCResult_FundingCreatedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingCreatedDecodeErrorZ), "LDKCResult_FundingCreatedDecodeErrorZ"); - *ret_conv = CResult_FundingCreatedDecodeErrorZ_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ChannelTypeFeaturesDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ChannelTypeFeaturesDecodeErrorZ* o_conv = (LDKCResult_ChannelTypeFeaturesDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ChannelTypeFeaturesDecodeErrorZ_is_ok(o_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_CResult_ChannelTypeFeaturesDecodeErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_ChannelTypeFeaturesDecodeErrorZ _res_conv = *(LDKCResult_ChannelTypeFeaturesDecodeErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_ChannelTypeFeaturesDecodeErrorZ_free(_res_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKNetAddress o_conv = *(LDKNetAddress*)(o_ptr); + o_conv = NetAddress_clone((LDKNetAddress*)(((uint64_t)o) & ~1)); + LDKCResult_NetAddressDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NetAddressDecodeErrorZ), "LDKCResult_NetAddressDecodeErrorZ"); + *ret_conv = CResult_NetAddressDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_FundingCreatedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingCreatedDecodeErrorZ), "LDKCResult_FundingCreatedDecodeErrorZ"); - *ret_conv = CResult_FundingCreatedDecodeErrorZ_err(e_conv); + LDKCResult_NetAddressDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NetAddressDecodeErrorZ), "LDKCResult_NetAddressDecodeErrorZ"); + *ret_conv = CResult_NetAddressDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_FundingCreatedDecodeErrorZ* o_conv = (LDKCResult_FundingCreatedDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_FundingCreatedDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_NetAddressDecodeErrorZ* o_conv = (LDKCResult_NetAddressDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_NetAddressDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_FundingCreatedDecodeErrorZ _res_conv = *(LDKCResult_FundingCreatedDecodeErrorZ*)(_res_ptr); + LDKCResult_NetAddressDecodeErrorZ _res_conv = *(LDKCResult_NetAddressDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_FundingCreatedDecodeErrorZ_free(_res_conv); + CResult_NetAddressDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_FundingCreatedDecodeErrorZ_clone_ptr(LDKCResult_FundingCreatedDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_FundingCreatedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingCreatedDecodeErrorZ), "LDKCResult_FundingCreatedDecodeErrorZ"); - *ret_conv = CResult_FundingCreatedDecodeErrorZ_clone(arg); +static inline uint64_t CResult_NetAddressDecodeErrorZ_clone_ptr(LDKCResult_NetAddressDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_NetAddressDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NetAddressDecodeErrorZ), "LDKCResult_NetAddressDecodeErrorZ"); + *ret_conv = CResult_NetAddressDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_FundingCreatedDecodeErrorZ* arg_conv = (LDKCResult_FundingCreatedDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_FundingCreatedDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_NetAddressDecodeErrorZ* arg_conv = (LDKCResult_NetAddressDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_NetAddressDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_FundingCreatedDecodeErrorZ* orig_conv = (LDKCResult_FundingCreatedDecodeErrorZ*)(orig & ~1); - LDKCResult_FundingCreatedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingCreatedDecodeErrorZ), "LDKCResult_FundingCreatedDecodeErrorZ"); - *ret_conv = CResult_FundingCreatedDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_NetAddressDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_NetAddressDecodeErrorZ* orig_conv = (LDKCResult_NetAddressDecodeErrorZ*)(orig & ~1); + LDKCResult_NetAddressDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NetAddressDecodeErrorZ), "LDKCResult_NetAddressDecodeErrorZ"); + *ret_conv = CResult_NetAddressDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_ok(uint32_t o) { - LDKFundingSigned o_conv; +void __attribute__((visibility("default"))) TS_CVec_UpdateAddHTLCZ_free(uint32_tArray _res) { + LDKCVec_UpdateAddHTLCZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKUpdateAddHTLC), "LDKCVec_UpdateAddHTLCZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t p = 0; p < _res_constr.datalen; p++) { + uint32_t _res_conv_15 = _res_vals[p]; + LDKUpdateAddHTLC _res_conv_15_conv; + _res_conv_15_conv.inner = (void*)(_res_conv_15 & (~1)); + _res_conv_15_conv.is_owned = (_res_conv_15 & 1) || (_res_conv_15 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_15_conv); + _res_constr.data[p] = _res_conv_15_conv; + } + CVec_UpdateAddHTLCZ_free(_res_constr); +} + +void __attribute__((visibility("default"))) TS_CVec_UpdateFulfillHTLCZ_free(uint32_tArray _res) { + LDKCVec_UpdateFulfillHTLCZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKUpdateFulfillHTLC), "LDKCVec_UpdateFulfillHTLCZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t t = 0; t < _res_constr.datalen; t++) { + uint32_t _res_conv_19 = _res_vals[t]; + LDKUpdateFulfillHTLC _res_conv_19_conv; + _res_conv_19_conv.inner = (void*)(_res_conv_19 & (~1)); + _res_conv_19_conv.is_owned = (_res_conv_19 & 1) || (_res_conv_19 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_19_conv); + _res_constr.data[t] = _res_conv_19_conv; + } + CVec_UpdateFulfillHTLCZ_free(_res_constr); +} + +void __attribute__((visibility("default"))) TS_CVec_UpdateFailHTLCZ_free(uint32_tArray _res) { + LDKCVec_UpdateFailHTLCZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKUpdateFailHTLC), "LDKCVec_UpdateFailHTLCZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t q = 0; q < _res_constr.datalen; q++) { + uint32_t _res_conv_16 = _res_vals[q]; + LDKUpdateFailHTLC _res_conv_16_conv; + _res_conv_16_conv.inner = (void*)(_res_conv_16 & (~1)); + _res_conv_16_conv.is_owned = (_res_conv_16 & 1) || (_res_conv_16 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_16_conv); + _res_constr.data[q] = _res_conv_16_conv; + } + CVec_UpdateFailHTLCZ_free(_res_constr); +} + +void __attribute__((visibility("default"))) TS_CVec_UpdateFailMalformedHTLCZ_free(uint32_tArray _res) { + LDKCVec_UpdateFailMalformedHTLCZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKUpdateFailMalformedHTLC), "LDKCVec_UpdateFailMalformedHTLCZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t z = 0; z < _res_constr.datalen; z++) { + uint32_t _res_conv_25 = _res_vals[z]; + LDKUpdateFailMalformedHTLC _res_conv_25_conv; + _res_conv_25_conv.inner = (void*)(_res_conv_25 & (~1)); + _res_conv_25_conv.is_owned = (_res_conv_25 & 1) || (_res_conv_25 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_25_conv); + _res_constr.data[z] = _res_conv_25_conv; + } + CVec_UpdateFailMalformedHTLCZ_free(_res_constr); +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_ok(uint32_t o) { + LDKAcceptChannel o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = FundingSigned_clone(&o_conv); - LDKCResult_FundingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingSignedDecodeErrorZ), "LDKCResult_FundingSignedDecodeErrorZ"); - *ret_conv = CResult_FundingSignedDecodeErrorZ_ok(o_conv); + o_conv = AcceptChannel_clone(&o_conv); + LDKCResult_AcceptChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AcceptChannelDecodeErrorZ), "LDKCResult_AcceptChannelDecodeErrorZ"); + *ret_conv = CResult_AcceptChannelDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_FundingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingSignedDecodeErrorZ), "LDKCResult_FundingSignedDecodeErrorZ"); - *ret_conv = CResult_FundingSignedDecodeErrorZ_err(e_conv); + LDKCResult_AcceptChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AcceptChannelDecodeErrorZ), "LDKCResult_AcceptChannelDecodeErrorZ"); + *ret_conv = CResult_AcceptChannelDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_FundingSignedDecodeErrorZ* o_conv = (LDKCResult_FundingSignedDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_FundingSignedDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_AcceptChannelDecodeErrorZ* o_conv = (LDKCResult_AcceptChannelDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_AcceptChannelDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_FundingSignedDecodeErrorZ _res_conv = *(LDKCResult_FundingSignedDecodeErrorZ*)(_res_ptr); + LDKCResult_AcceptChannelDecodeErrorZ _res_conv = *(LDKCResult_AcceptChannelDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_FundingSignedDecodeErrorZ_free(_res_conv); + CResult_AcceptChannelDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_FundingSignedDecodeErrorZ_clone_ptr(LDKCResult_FundingSignedDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_FundingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingSignedDecodeErrorZ), "LDKCResult_FundingSignedDecodeErrorZ"); - *ret_conv = CResult_FundingSignedDecodeErrorZ_clone(arg); +static inline uint64_t CResult_AcceptChannelDecodeErrorZ_clone_ptr(LDKCResult_AcceptChannelDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_AcceptChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AcceptChannelDecodeErrorZ), "LDKCResult_AcceptChannelDecodeErrorZ"); + *ret_conv = CResult_AcceptChannelDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_FundingSignedDecodeErrorZ* arg_conv = (LDKCResult_FundingSignedDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_FundingSignedDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_AcceptChannelDecodeErrorZ* arg_conv = (LDKCResult_AcceptChannelDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_AcceptChannelDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_FundingSignedDecodeErrorZ* orig_conv = (LDKCResult_FundingSignedDecodeErrorZ*)(orig & ~1); - LDKCResult_FundingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingSignedDecodeErrorZ), "LDKCResult_FundingSignedDecodeErrorZ"); - *ret_conv = CResult_FundingSignedDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_AcceptChannelDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_AcceptChannelDecodeErrorZ* orig_conv = (LDKCResult_AcceptChannelDecodeErrorZ*)(orig & ~1); + LDKCResult_AcceptChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AcceptChannelDecodeErrorZ), "LDKCResult_AcceptChannelDecodeErrorZ"); + *ret_conv = CResult_AcceptChannelDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_ok(uint32_t o) { - LDKFundingLocked o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_ok(uint32_t o) { + LDKAnnouncementSignatures o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = FundingLocked_clone(&o_conv); - LDKCResult_FundingLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingLockedDecodeErrorZ), "LDKCResult_FundingLockedDecodeErrorZ"); - *ret_conv = CResult_FundingLockedDecodeErrorZ_ok(o_conv); + o_conv = AnnouncementSignatures_clone(&o_conv); + LDKCResult_AnnouncementSignaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AnnouncementSignaturesDecodeErrorZ), "LDKCResult_AnnouncementSignaturesDecodeErrorZ"); + *ret_conv = CResult_AnnouncementSignaturesDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_FundingLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingLockedDecodeErrorZ), "LDKCResult_FundingLockedDecodeErrorZ"); - *ret_conv = CResult_FundingLockedDecodeErrorZ_err(e_conv); + LDKCResult_AnnouncementSignaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AnnouncementSignaturesDecodeErrorZ), "LDKCResult_AnnouncementSignaturesDecodeErrorZ"); + *ret_conv = CResult_AnnouncementSignaturesDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_FundingLockedDecodeErrorZ* o_conv = (LDKCResult_FundingLockedDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_FundingLockedDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_AnnouncementSignaturesDecodeErrorZ* o_conv = (LDKCResult_AnnouncementSignaturesDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_AnnouncementSignaturesDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_FundingLockedDecodeErrorZ _res_conv = *(LDKCResult_FundingLockedDecodeErrorZ*)(_res_ptr); + LDKCResult_AnnouncementSignaturesDecodeErrorZ _res_conv = *(LDKCResult_AnnouncementSignaturesDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_FundingLockedDecodeErrorZ_free(_res_conv); + CResult_AnnouncementSignaturesDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_FundingLockedDecodeErrorZ_clone_ptr(LDKCResult_FundingLockedDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_FundingLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingLockedDecodeErrorZ), "LDKCResult_FundingLockedDecodeErrorZ"); - *ret_conv = CResult_FundingLockedDecodeErrorZ_clone(arg); +static inline uint64_t CResult_AnnouncementSignaturesDecodeErrorZ_clone_ptr(LDKCResult_AnnouncementSignaturesDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_AnnouncementSignaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AnnouncementSignaturesDecodeErrorZ), "LDKCResult_AnnouncementSignaturesDecodeErrorZ"); + *ret_conv = CResult_AnnouncementSignaturesDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_FundingLockedDecodeErrorZ* arg_conv = (LDKCResult_FundingLockedDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_FundingLockedDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_AnnouncementSignaturesDecodeErrorZ* arg_conv = (LDKCResult_AnnouncementSignaturesDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_AnnouncementSignaturesDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_FundingLockedDecodeErrorZ* orig_conv = (LDKCResult_FundingLockedDecodeErrorZ*)(orig & ~1); - LDKCResult_FundingLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingLockedDecodeErrorZ), "LDKCResult_FundingLockedDecodeErrorZ"); - *ret_conv = CResult_FundingLockedDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_AnnouncementSignaturesDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_AnnouncementSignaturesDecodeErrorZ* orig_conv = (LDKCResult_AnnouncementSignaturesDecodeErrorZ*)(orig & ~1); + LDKCResult_AnnouncementSignaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AnnouncementSignaturesDecodeErrorZ), "LDKCResult_AnnouncementSignaturesDecodeErrorZ"); + *ret_conv = CResult_AnnouncementSignaturesDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_ok(uint32_t o) { - LDKInit o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_ok(uint32_t o) { + LDKChannelReestablish o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = Init_clone(&o_conv); - LDKCResult_InitDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitDecodeErrorZ), "LDKCResult_InitDecodeErrorZ"); - *ret_conv = CResult_InitDecodeErrorZ_ok(o_conv); + o_conv = ChannelReestablish_clone(&o_conv); + LDKCResult_ChannelReestablishDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelReestablishDecodeErrorZ), "LDKCResult_ChannelReestablishDecodeErrorZ"); + *ret_conv = CResult_ChannelReestablishDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_InitDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitDecodeErrorZ), "LDKCResult_InitDecodeErrorZ"); - *ret_conv = CResult_InitDecodeErrorZ_err(e_conv); + LDKCResult_ChannelReestablishDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelReestablishDecodeErrorZ), "LDKCResult_ChannelReestablishDecodeErrorZ"); + *ret_conv = CResult_ChannelReestablishDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_InitDecodeErrorZ* o_conv = (LDKCResult_InitDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_InitDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ChannelReestablishDecodeErrorZ* o_conv = (LDKCResult_ChannelReestablishDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ChannelReestablishDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_InitDecodeErrorZ _res_conv = *(LDKCResult_InitDecodeErrorZ*)(_res_ptr); + LDKCResult_ChannelReestablishDecodeErrorZ _res_conv = *(LDKCResult_ChannelReestablishDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_InitDecodeErrorZ_free(_res_conv); + CResult_ChannelReestablishDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_InitDecodeErrorZ_clone_ptr(LDKCResult_InitDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_InitDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitDecodeErrorZ), "LDKCResult_InitDecodeErrorZ"); - *ret_conv = CResult_InitDecodeErrorZ_clone(arg); +static inline uint64_t CResult_ChannelReestablishDecodeErrorZ_clone_ptr(LDKCResult_ChannelReestablishDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ChannelReestablishDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelReestablishDecodeErrorZ), "LDKCResult_ChannelReestablishDecodeErrorZ"); + *ret_conv = CResult_ChannelReestablishDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_InitDecodeErrorZ* arg_conv = (LDKCResult_InitDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_InitDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ChannelReestablishDecodeErrorZ* arg_conv = (LDKCResult_ChannelReestablishDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ChannelReestablishDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_InitDecodeErrorZ* orig_conv = (LDKCResult_InitDecodeErrorZ*)(orig & ~1); - LDKCResult_InitDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitDecodeErrorZ), "LDKCResult_InitDecodeErrorZ"); - *ret_conv = CResult_InitDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelReestablishDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ChannelReestablishDecodeErrorZ* orig_conv = (LDKCResult_ChannelReestablishDecodeErrorZ*)(orig & ~1); + LDKCResult_ChannelReestablishDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelReestablishDecodeErrorZ), "LDKCResult_ChannelReestablishDecodeErrorZ"); + *ret_conv = CResult_ChannelReestablishDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_ok(uint32_t o) { - LDKOpenChannel o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_ok(uint32_t o) { + LDKClosingSigned o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = OpenChannel_clone(&o_conv); - LDKCResult_OpenChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OpenChannelDecodeErrorZ), "LDKCResult_OpenChannelDecodeErrorZ"); - *ret_conv = CResult_OpenChannelDecodeErrorZ_ok(o_conv); + o_conv = ClosingSigned_clone(&o_conv); + LDKCResult_ClosingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedDecodeErrorZ), "LDKCResult_ClosingSignedDecodeErrorZ"); + *ret_conv = CResult_ClosingSignedDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_OpenChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OpenChannelDecodeErrorZ), "LDKCResult_OpenChannelDecodeErrorZ"); - *ret_conv = CResult_OpenChannelDecodeErrorZ_err(e_conv); + LDKCResult_ClosingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedDecodeErrorZ), "LDKCResult_ClosingSignedDecodeErrorZ"); + *ret_conv = CResult_ClosingSignedDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_OpenChannelDecodeErrorZ* o_conv = (LDKCResult_OpenChannelDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_OpenChannelDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ClosingSignedDecodeErrorZ* o_conv = (LDKCResult_ClosingSignedDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ClosingSignedDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_OpenChannelDecodeErrorZ _res_conv = *(LDKCResult_OpenChannelDecodeErrorZ*)(_res_ptr); + LDKCResult_ClosingSignedDecodeErrorZ _res_conv = *(LDKCResult_ClosingSignedDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_OpenChannelDecodeErrorZ_free(_res_conv); + CResult_ClosingSignedDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_OpenChannelDecodeErrorZ_clone_ptr(LDKCResult_OpenChannelDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_OpenChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OpenChannelDecodeErrorZ), "LDKCResult_OpenChannelDecodeErrorZ"); - *ret_conv = CResult_OpenChannelDecodeErrorZ_clone(arg); +static inline uint64_t CResult_ClosingSignedDecodeErrorZ_clone_ptr(LDKCResult_ClosingSignedDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ClosingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedDecodeErrorZ), "LDKCResult_ClosingSignedDecodeErrorZ"); + *ret_conv = CResult_ClosingSignedDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_OpenChannelDecodeErrorZ* arg_conv = (LDKCResult_OpenChannelDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_OpenChannelDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ClosingSignedDecodeErrorZ* arg_conv = (LDKCResult_ClosingSignedDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ClosingSignedDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_OpenChannelDecodeErrorZ* orig_conv = (LDKCResult_OpenChannelDecodeErrorZ*)(orig & ~1); - LDKCResult_OpenChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OpenChannelDecodeErrorZ), "LDKCResult_OpenChannelDecodeErrorZ"); - *ret_conv = CResult_OpenChannelDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ClosingSignedDecodeErrorZ* orig_conv = (LDKCResult_ClosingSignedDecodeErrorZ*)(orig & ~1); + LDKCResult_ClosingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedDecodeErrorZ), "LDKCResult_ClosingSignedDecodeErrorZ"); + *ret_conv = CResult_ClosingSignedDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_ok(uint32_t o) { - LDKRevokeAndACK o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_ok(uint32_t o) { + LDKClosingSignedFeeRange o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = RevokeAndACK_clone(&o_conv); - LDKCResult_RevokeAndACKDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevokeAndACKDecodeErrorZ), "LDKCResult_RevokeAndACKDecodeErrorZ"); - *ret_conv = CResult_RevokeAndACKDecodeErrorZ_ok(o_conv); + o_conv = ClosingSignedFeeRange_clone(&o_conv); + LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ), "LDKCResult_ClosingSignedFeeRangeDecodeErrorZ"); + *ret_conv = CResult_ClosingSignedFeeRangeDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_RevokeAndACKDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevokeAndACKDecodeErrorZ), "LDKCResult_RevokeAndACKDecodeErrorZ"); - *ret_conv = CResult_RevokeAndACKDecodeErrorZ_err(e_conv); + LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ), "LDKCResult_ClosingSignedFeeRangeDecodeErrorZ"); + *ret_conv = CResult_ClosingSignedFeeRangeDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_RevokeAndACKDecodeErrorZ* o_conv = (LDKCResult_RevokeAndACKDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_RevokeAndACKDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* o_conv = (LDKCResult_ClosingSignedFeeRangeDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ClosingSignedFeeRangeDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_RevokeAndACKDecodeErrorZ _res_conv = *(LDKCResult_RevokeAndACKDecodeErrorZ*)(_res_ptr); + LDKCResult_ClosingSignedFeeRangeDecodeErrorZ _res_conv = *(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_RevokeAndACKDecodeErrorZ_free(_res_conv); + CResult_ClosingSignedFeeRangeDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_RevokeAndACKDecodeErrorZ_clone_ptr(LDKCResult_RevokeAndACKDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_RevokeAndACKDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevokeAndACKDecodeErrorZ), "LDKCResult_RevokeAndACKDecodeErrorZ"); - *ret_conv = CResult_RevokeAndACKDecodeErrorZ_clone(arg); +static inline uint64_t CResult_ClosingSignedFeeRangeDecodeErrorZ_clone_ptr(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ), "LDKCResult_ClosingSignedFeeRangeDecodeErrorZ"); + *ret_conv = CResult_ClosingSignedFeeRangeDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_RevokeAndACKDecodeErrorZ* arg_conv = (LDKCResult_RevokeAndACKDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_RevokeAndACKDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* arg_conv = (LDKCResult_ClosingSignedFeeRangeDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ClosingSignedFeeRangeDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_RevokeAndACKDecodeErrorZ* orig_conv = (LDKCResult_RevokeAndACKDecodeErrorZ*)(orig & ~1); - LDKCResult_RevokeAndACKDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevokeAndACKDecodeErrorZ), "LDKCResult_RevokeAndACKDecodeErrorZ"); - *ret_conv = CResult_RevokeAndACKDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* orig_conv = (LDKCResult_ClosingSignedFeeRangeDecodeErrorZ*)(orig & ~1); + LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ), "LDKCResult_ClosingSignedFeeRangeDecodeErrorZ"); + *ret_conv = CResult_ClosingSignedFeeRangeDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_ok(uint32_t o) { - LDKShutdown o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_ok(uint32_t o) { + LDKCommitmentSigned o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = Shutdown_clone(&o_conv); - LDKCResult_ShutdownDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownDecodeErrorZ), "LDKCResult_ShutdownDecodeErrorZ"); - *ret_conv = CResult_ShutdownDecodeErrorZ_ok(o_conv); + o_conv = CommitmentSigned_clone(&o_conv); + LDKCResult_CommitmentSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentSignedDecodeErrorZ), "LDKCResult_CommitmentSignedDecodeErrorZ"); + *ret_conv = CResult_CommitmentSignedDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_ShutdownDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownDecodeErrorZ), "LDKCResult_ShutdownDecodeErrorZ"); - *ret_conv = CResult_ShutdownDecodeErrorZ_err(e_conv); + LDKCResult_CommitmentSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentSignedDecodeErrorZ), "LDKCResult_CommitmentSignedDecodeErrorZ"); + *ret_conv = CResult_CommitmentSignedDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ShutdownDecodeErrorZ* o_conv = (LDKCResult_ShutdownDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ShutdownDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_CommitmentSignedDecodeErrorZ* o_conv = (LDKCResult_CommitmentSignedDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_CommitmentSignedDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_ShutdownDecodeErrorZ _res_conv = *(LDKCResult_ShutdownDecodeErrorZ*)(_res_ptr); + LDKCResult_CommitmentSignedDecodeErrorZ _res_conv = *(LDKCResult_CommitmentSignedDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_ShutdownDecodeErrorZ_free(_res_conv); + CResult_CommitmentSignedDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_ShutdownDecodeErrorZ_clone_ptr(LDKCResult_ShutdownDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ShutdownDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownDecodeErrorZ), "LDKCResult_ShutdownDecodeErrorZ"); - *ret_conv = CResult_ShutdownDecodeErrorZ_clone(arg); +static inline uint64_t CResult_CommitmentSignedDecodeErrorZ_clone_ptr(LDKCResult_CommitmentSignedDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_CommitmentSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentSignedDecodeErrorZ), "LDKCResult_CommitmentSignedDecodeErrorZ"); + *ret_conv = CResult_CommitmentSignedDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ShutdownDecodeErrorZ* arg_conv = (LDKCResult_ShutdownDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ShutdownDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_CommitmentSignedDecodeErrorZ* arg_conv = (LDKCResult_CommitmentSignedDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_CommitmentSignedDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ShutdownDecodeErrorZ* orig_conv = (LDKCResult_ShutdownDecodeErrorZ*)(orig & ~1); - LDKCResult_ShutdownDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownDecodeErrorZ), "LDKCResult_ShutdownDecodeErrorZ"); - *ret_conv = CResult_ShutdownDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_CommitmentSignedDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_CommitmentSignedDecodeErrorZ* orig_conv = (LDKCResult_CommitmentSignedDecodeErrorZ*)(orig & ~1); + LDKCResult_CommitmentSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentSignedDecodeErrorZ), "LDKCResult_CommitmentSignedDecodeErrorZ"); + *ret_conv = CResult_CommitmentSignedDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_ok(uint32_t o) { - LDKUpdateFailHTLC o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_ok(uint32_t o) { + LDKFundingCreated o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = UpdateFailHTLC_clone(&o_conv); - LDKCResult_UpdateFailHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailHTLCDecodeErrorZ), "LDKCResult_UpdateFailHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateFailHTLCDecodeErrorZ_ok(o_conv); + o_conv = FundingCreated_clone(&o_conv); + LDKCResult_FundingCreatedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingCreatedDecodeErrorZ), "LDKCResult_FundingCreatedDecodeErrorZ"); + *ret_conv = CResult_FundingCreatedDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_UpdateFailHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailHTLCDecodeErrorZ), "LDKCResult_UpdateFailHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateFailHTLCDecodeErrorZ_err(e_conv); + LDKCResult_FundingCreatedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingCreatedDecodeErrorZ), "LDKCResult_FundingCreatedDecodeErrorZ"); + *ret_conv = CResult_FundingCreatedDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_UpdateFailHTLCDecodeErrorZ* o_conv = (LDKCResult_UpdateFailHTLCDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_UpdateFailHTLCDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_FundingCreatedDecodeErrorZ* o_conv = (LDKCResult_FundingCreatedDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_FundingCreatedDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_UpdateFailHTLCDecodeErrorZ _res_conv = *(LDKCResult_UpdateFailHTLCDecodeErrorZ*)(_res_ptr); + LDKCResult_FundingCreatedDecodeErrorZ _res_conv = *(LDKCResult_FundingCreatedDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_UpdateFailHTLCDecodeErrorZ_free(_res_conv); + CResult_FundingCreatedDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_UpdateFailHTLCDecodeErrorZ_clone_ptr(LDKCResult_UpdateFailHTLCDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_UpdateFailHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailHTLCDecodeErrorZ), "LDKCResult_UpdateFailHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateFailHTLCDecodeErrorZ_clone(arg); +static inline uint64_t CResult_FundingCreatedDecodeErrorZ_clone_ptr(LDKCResult_FundingCreatedDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_FundingCreatedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingCreatedDecodeErrorZ), "LDKCResult_FundingCreatedDecodeErrorZ"); + *ret_conv = CResult_FundingCreatedDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_UpdateFailHTLCDecodeErrorZ* arg_conv = (LDKCResult_UpdateFailHTLCDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_UpdateFailHTLCDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_FundingCreatedDecodeErrorZ* arg_conv = (LDKCResult_FundingCreatedDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_FundingCreatedDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_UpdateFailHTLCDecodeErrorZ* orig_conv = (LDKCResult_UpdateFailHTLCDecodeErrorZ*)(orig & ~1); - LDKCResult_UpdateFailHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailHTLCDecodeErrorZ), "LDKCResult_UpdateFailHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateFailHTLCDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingCreatedDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_FundingCreatedDecodeErrorZ* orig_conv = (LDKCResult_FundingCreatedDecodeErrorZ*)(orig & ~1); + LDKCResult_FundingCreatedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingCreatedDecodeErrorZ), "LDKCResult_FundingCreatedDecodeErrorZ"); + *ret_conv = CResult_FundingCreatedDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_ok(uint32_t o) { - LDKUpdateFailMalformedHTLC o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_ok(uint32_t o) { + LDKFundingSigned o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = UpdateFailMalformedHTLC_clone(&o_conv); - LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ), "LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateFailMalformedHTLCDecodeErrorZ_ok(o_conv); + o_conv = FundingSigned_clone(&o_conv); + LDKCResult_FundingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingSignedDecodeErrorZ), "LDKCResult_FundingSignedDecodeErrorZ"); + *ret_conv = CResult_FundingSignedDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ), "LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateFailMalformedHTLCDecodeErrorZ_err(e_conv); + LDKCResult_FundingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingSignedDecodeErrorZ), "LDKCResult_FundingSignedDecodeErrorZ"); + *ret_conv = CResult_FundingSignedDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* o_conv = (LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_UpdateFailMalformedHTLCDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_FundingSignedDecodeErrorZ* o_conv = (LDKCResult_FundingSignedDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_FundingSignedDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ _res_conv = *(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ*)(_res_ptr); + LDKCResult_FundingSignedDecodeErrorZ _res_conv = *(LDKCResult_FundingSignedDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_UpdateFailMalformedHTLCDecodeErrorZ_free(_res_conv); + CResult_FundingSignedDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone_ptr(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ), "LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone(arg); +static inline uint64_t CResult_FundingSignedDecodeErrorZ_clone_ptr(LDKCResult_FundingSignedDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_FundingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingSignedDecodeErrorZ), "LDKCResult_FundingSignedDecodeErrorZ"); + *ret_conv = CResult_FundingSignedDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* arg_conv = (LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_FundingSignedDecodeErrorZ* arg_conv = (LDKCResult_FundingSignedDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_FundingSignedDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* orig_conv = (LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ*)(orig & ~1); - LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ), "LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingSignedDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_FundingSignedDecodeErrorZ* orig_conv = (LDKCResult_FundingSignedDecodeErrorZ*)(orig & ~1); + LDKCResult_FundingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingSignedDecodeErrorZ), "LDKCResult_FundingSignedDecodeErrorZ"); + *ret_conv = CResult_FundingSignedDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_ok(uint32_t o) { - LDKUpdateFee o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_ok(uint32_t o) { + LDKFundingLocked o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = UpdateFee_clone(&o_conv); - LDKCResult_UpdateFeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFeeDecodeErrorZ), "LDKCResult_UpdateFeeDecodeErrorZ"); - *ret_conv = CResult_UpdateFeeDecodeErrorZ_ok(o_conv); + o_conv = FundingLocked_clone(&o_conv); + LDKCResult_FundingLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingLockedDecodeErrorZ), "LDKCResult_FundingLockedDecodeErrorZ"); + *ret_conv = CResult_FundingLockedDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_UpdateFeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFeeDecodeErrorZ), "LDKCResult_UpdateFeeDecodeErrorZ"); - *ret_conv = CResult_UpdateFeeDecodeErrorZ_err(e_conv); + LDKCResult_FundingLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingLockedDecodeErrorZ), "LDKCResult_FundingLockedDecodeErrorZ"); + *ret_conv = CResult_FundingLockedDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_UpdateFeeDecodeErrorZ* o_conv = (LDKCResult_UpdateFeeDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_UpdateFeeDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_FundingLockedDecodeErrorZ* o_conv = (LDKCResult_FundingLockedDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_FundingLockedDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_UpdateFeeDecodeErrorZ _res_conv = *(LDKCResult_UpdateFeeDecodeErrorZ*)(_res_ptr); + LDKCResult_FundingLockedDecodeErrorZ _res_conv = *(LDKCResult_FundingLockedDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_UpdateFeeDecodeErrorZ_free(_res_conv); + CResult_FundingLockedDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_UpdateFeeDecodeErrorZ_clone_ptr(LDKCResult_UpdateFeeDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_UpdateFeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFeeDecodeErrorZ), "LDKCResult_UpdateFeeDecodeErrorZ"); - *ret_conv = CResult_UpdateFeeDecodeErrorZ_clone(arg); +static inline uint64_t CResult_FundingLockedDecodeErrorZ_clone_ptr(LDKCResult_FundingLockedDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_FundingLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingLockedDecodeErrorZ), "LDKCResult_FundingLockedDecodeErrorZ"); + *ret_conv = CResult_FundingLockedDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_UpdateFeeDecodeErrorZ* arg_conv = (LDKCResult_UpdateFeeDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_UpdateFeeDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_FundingLockedDecodeErrorZ* arg_conv = (LDKCResult_FundingLockedDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_FundingLockedDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_UpdateFeeDecodeErrorZ* orig_conv = (LDKCResult_UpdateFeeDecodeErrorZ*)(orig & ~1); - LDKCResult_UpdateFeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFeeDecodeErrorZ), "LDKCResult_UpdateFeeDecodeErrorZ"); - *ret_conv = CResult_UpdateFeeDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_FundingLockedDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_FundingLockedDecodeErrorZ* orig_conv = (LDKCResult_FundingLockedDecodeErrorZ*)(orig & ~1); + LDKCResult_FundingLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingLockedDecodeErrorZ), "LDKCResult_FundingLockedDecodeErrorZ"); + *ret_conv = CResult_FundingLockedDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_ok(uint32_t o) { - LDKUpdateFulfillHTLC o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_ok(uint32_t o) { + LDKInit o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = UpdateFulfillHTLC_clone(&o_conv); - LDKCResult_UpdateFulfillHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFulfillHTLCDecodeErrorZ), "LDKCResult_UpdateFulfillHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateFulfillHTLCDecodeErrorZ_ok(o_conv); + o_conv = Init_clone(&o_conv); + LDKCResult_InitDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitDecodeErrorZ), "LDKCResult_InitDecodeErrorZ"); + *ret_conv = CResult_InitDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_UpdateFulfillHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFulfillHTLCDecodeErrorZ), "LDKCResult_UpdateFulfillHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateFulfillHTLCDecodeErrorZ_err(e_conv); + LDKCResult_InitDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitDecodeErrorZ), "LDKCResult_InitDecodeErrorZ"); + *ret_conv = CResult_InitDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_UpdateFulfillHTLCDecodeErrorZ* o_conv = (LDKCResult_UpdateFulfillHTLCDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_UpdateFulfillHTLCDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_InitDecodeErrorZ* o_conv = (LDKCResult_InitDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_InitDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_UpdateFulfillHTLCDecodeErrorZ _res_conv = *(LDKCResult_UpdateFulfillHTLCDecodeErrorZ*)(_res_ptr); + LDKCResult_InitDecodeErrorZ _res_conv = *(LDKCResult_InitDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_UpdateFulfillHTLCDecodeErrorZ_free(_res_conv); + CResult_InitDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_UpdateFulfillHTLCDecodeErrorZ_clone_ptr(LDKCResult_UpdateFulfillHTLCDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_UpdateFulfillHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFulfillHTLCDecodeErrorZ), "LDKCResult_UpdateFulfillHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateFulfillHTLCDecodeErrorZ_clone(arg); +static inline uint64_t CResult_InitDecodeErrorZ_clone_ptr(LDKCResult_InitDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_InitDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitDecodeErrorZ), "LDKCResult_InitDecodeErrorZ"); + *ret_conv = CResult_InitDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_UpdateFulfillHTLCDecodeErrorZ* arg_conv = (LDKCResult_UpdateFulfillHTLCDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_UpdateFulfillHTLCDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_InitDecodeErrorZ* arg_conv = (LDKCResult_InitDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_InitDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_UpdateFulfillHTLCDecodeErrorZ* orig_conv = (LDKCResult_UpdateFulfillHTLCDecodeErrorZ*)(orig & ~1); - LDKCResult_UpdateFulfillHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFulfillHTLCDecodeErrorZ), "LDKCResult_UpdateFulfillHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateFulfillHTLCDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_InitDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_InitDecodeErrorZ* orig_conv = (LDKCResult_InitDecodeErrorZ*)(orig & ~1); + LDKCResult_InitDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitDecodeErrorZ), "LDKCResult_InitDecodeErrorZ"); + *ret_conv = CResult_InitDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_ok(uint32_t o) { - LDKUpdateAddHTLC o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_ok(uint32_t o) { + LDKOpenChannel o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = UpdateAddHTLC_clone(&o_conv); - LDKCResult_UpdateAddHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateAddHTLCDecodeErrorZ), "LDKCResult_UpdateAddHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateAddHTLCDecodeErrorZ_ok(o_conv); + o_conv = OpenChannel_clone(&o_conv); + LDKCResult_OpenChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OpenChannelDecodeErrorZ), "LDKCResult_OpenChannelDecodeErrorZ"); + *ret_conv = CResult_OpenChannelDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_UpdateAddHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateAddHTLCDecodeErrorZ), "LDKCResult_UpdateAddHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateAddHTLCDecodeErrorZ_err(e_conv); + LDKCResult_OpenChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OpenChannelDecodeErrorZ), "LDKCResult_OpenChannelDecodeErrorZ"); + *ret_conv = CResult_OpenChannelDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_UpdateAddHTLCDecodeErrorZ* o_conv = (LDKCResult_UpdateAddHTLCDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_UpdateAddHTLCDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_OpenChannelDecodeErrorZ* o_conv = (LDKCResult_OpenChannelDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_OpenChannelDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_UpdateAddHTLCDecodeErrorZ _res_conv = *(LDKCResult_UpdateAddHTLCDecodeErrorZ*)(_res_ptr); + LDKCResult_OpenChannelDecodeErrorZ _res_conv = *(LDKCResult_OpenChannelDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_UpdateAddHTLCDecodeErrorZ_free(_res_conv); + CResult_OpenChannelDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_UpdateAddHTLCDecodeErrorZ_clone_ptr(LDKCResult_UpdateAddHTLCDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_UpdateAddHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateAddHTLCDecodeErrorZ), "LDKCResult_UpdateAddHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateAddHTLCDecodeErrorZ_clone(arg); +static inline uint64_t CResult_OpenChannelDecodeErrorZ_clone_ptr(LDKCResult_OpenChannelDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_OpenChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OpenChannelDecodeErrorZ), "LDKCResult_OpenChannelDecodeErrorZ"); + *ret_conv = CResult_OpenChannelDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_UpdateAddHTLCDecodeErrorZ* arg_conv = (LDKCResult_UpdateAddHTLCDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_UpdateAddHTLCDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_OpenChannelDecodeErrorZ* arg_conv = (LDKCResult_OpenChannelDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_OpenChannelDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_UpdateAddHTLCDecodeErrorZ* orig_conv = (LDKCResult_UpdateAddHTLCDecodeErrorZ*)(orig & ~1); - LDKCResult_UpdateAddHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateAddHTLCDecodeErrorZ), "LDKCResult_UpdateAddHTLCDecodeErrorZ"); - *ret_conv = CResult_UpdateAddHTLCDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_OpenChannelDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_OpenChannelDecodeErrorZ* orig_conv = (LDKCResult_OpenChannelDecodeErrorZ*)(orig & ~1); + LDKCResult_OpenChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OpenChannelDecodeErrorZ), "LDKCResult_OpenChannelDecodeErrorZ"); + *ret_conv = CResult_OpenChannelDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_ok(uint32_t o) { - LDKPing o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_ok(uint32_t o) { + LDKRevokeAndACK o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = Ping_clone(&o_conv); - LDKCResult_PingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PingDecodeErrorZ), "LDKCResult_PingDecodeErrorZ"); - *ret_conv = CResult_PingDecodeErrorZ_ok(o_conv); + o_conv = RevokeAndACK_clone(&o_conv); + LDKCResult_RevokeAndACKDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevokeAndACKDecodeErrorZ), "LDKCResult_RevokeAndACKDecodeErrorZ"); + *ret_conv = CResult_RevokeAndACKDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_PingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PingDecodeErrorZ), "LDKCResult_PingDecodeErrorZ"); - *ret_conv = CResult_PingDecodeErrorZ_err(e_conv); + LDKCResult_RevokeAndACKDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevokeAndACKDecodeErrorZ), "LDKCResult_RevokeAndACKDecodeErrorZ"); + *ret_conv = CResult_RevokeAndACKDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_PingDecodeErrorZ* o_conv = (LDKCResult_PingDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_PingDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_RevokeAndACKDecodeErrorZ* o_conv = (LDKCResult_RevokeAndACKDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_RevokeAndACKDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_PingDecodeErrorZ _res_conv = *(LDKCResult_PingDecodeErrorZ*)(_res_ptr); + LDKCResult_RevokeAndACKDecodeErrorZ _res_conv = *(LDKCResult_RevokeAndACKDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_PingDecodeErrorZ_free(_res_conv); + CResult_RevokeAndACKDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_PingDecodeErrorZ_clone_ptr(LDKCResult_PingDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_PingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PingDecodeErrorZ), "LDKCResult_PingDecodeErrorZ"); - *ret_conv = CResult_PingDecodeErrorZ_clone(arg); +static inline uint64_t CResult_RevokeAndACKDecodeErrorZ_clone_ptr(LDKCResult_RevokeAndACKDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_RevokeAndACKDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevokeAndACKDecodeErrorZ), "LDKCResult_RevokeAndACKDecodeErrorZ"); + *ret_conv = CResult_RevokeAndACKDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_PingDecodeErrorZ* arg_conv = (LDKCResult_PingDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_PingDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_RevokeAndACKDecodeErrorZ* arg_conv = (LDKCResult_RevokeAndACKDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_RevokeAndACKDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_PingDecodeErrorZ* orig_conv = (LDKCResult_PingDecodeErrorZ*)(orig & ~1); - LDKCResult_PingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PingDecodeErrorZ), "LDKCResult_PingDecodeErrorZ"); - *ret_conv = CResult_PingDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_RevokeAndACKDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_RevokeAndACKDecodeErrorZ* orig_conv = (LDKCResult_RevokeAndACKDecodeErrorZ*)(orig & ~1); + LDKCResult_RevokeAndACKDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevokeAndACKDecodeErrorZ), "LDKCResult_RevokeAndACKDecodeErrorZ"); + *ret_conv = CResult_RevokeAndACKDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_ok(uint32_t o) { - LDKPong o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_ok(uint32_t o) { + LDKShutdown o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = Pong_clone(&o_conv); - LDKCResult_PongDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PongDecodeErrorZ), "LDKCResult_PongDecodeErrorZ"); - *ret_conv = CResult_PongDecodeErrorZ_ok(o_conv); + o_conv = Shutdown_clone(&o_conv); + LDKCResult_ShutdownDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownDecodeErrorZ), "LDKCResult_ShutdownDecodeErrorZ"); + *ret_conv = CResult_ShutdownDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_PongDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PongDecodeErrorZ), "LDKCResult_PongDecodeErrorZ"); - *ret_conv = CResult_PongDecodeErrorZ_err(e_conv); + LDKCResult_ShutdownDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownDecodeErrorZ), "LDKCResult_ShutdownDecodeErrorZ"); + *ret_conv = CResult_ShutdownDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_PongDecodeErrorZ* o_conv = (LDKCResult_PongDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_PongDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ShutdownDecodeErrorZ* o_conv = (LDKCResult_ShutdownDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ShutdownDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_PongDecodeErrorZ _res_conv = *(LDKCResult_PongDecodeErrorZ*)(_res_ptr); + LDKCResult_ShutdownDecodeErrorZ _res_conv = *(LDKCResult_ShutdownDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_PongDecodeErrorZ_free(_res_conv); + CResult_ShutdownDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_PongDecodeErrorZ_clone_ptr(LDKCResult_PongDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_PongDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PongDecodeErrorZ), "LDKCResult_PongDecodeErrorZ"); - *ret_conv = CResult_PongDecodeErrorZ_clone(arg); +static inline uint64_t CResult_ShutdownDecodeErrorZ_clone_ptr(LDKCResult_ShutdownDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ShutdownDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownDecodeErrorZ), "LDKCResult_ShutdownDecodeErrorZ"); + *ret_conv = CResult_ShutdownDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_PongDecodeErrorZ* arg_conv = (LDKCResult_PongDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_PongDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ShutdownDecodeErrorZ* arg_conv = (LDKCResult_ShutdownDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ShutdownDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_PongDecodeErrorZ* orig_conv = (LDKCResult_PongDecodeErrorZ*)(orig & ~1); - LDKCResult_PongDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PongDecodeErrorZ), "LDKCResult_PongDecodeErrorZ"); - *ret_conv = CResult_PongDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ShutdownDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ShutdownDecodeErrorZ* orig_conv = (LDKCResult_ShutdownDecodeErrorZ*)(orig & ~1); + LDKCResult_ShutdownDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownDecodeErrorZ), "LDKCResult_ShutdownDecodeErrorZ"); + *ret_conv = CResult_ShutdownDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_ok(uint32_t o) { - LDKUnsignedChannelAnnouncement o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_ok(uint32_t o) { + LDKUpdateFailHTLC o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = UnsignedChannelAnnouncement_clone(&o_conv); - LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ), "LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ"); - *ret_conv = CResult_UnsignedChannelAnnouncementDecodeErrorZ_ok(o_conv); + o_conv = UpdateFailHTLC_clone(&o_conv); + LDKCResult_UpdateFailHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailHTLCDecodeErrorZ), "LDKCResult_UpdateFailHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateFailHTLCDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ), "LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ"); - *ret_conv = CResult_UnsignedChannelAnnouncementDecodeErrorZ_err(e_conv); + LDKCResult_UpdateFailHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailHTLCDecodeErrorZ), "LDKCResult_UpdateFailHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateFailHTLCDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* o_conv = (LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_UnsignedChannelAnnouncementDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_UpdateFailHTLCDecodeErrorZ* o_conv = (LDKCResult_UpdateFailHTLCDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_UpdateFailHTLCDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ _res_conv = *(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ*)(_res_ptr); + LDKCResult_UpdateFailHTLCDecodeErrorZ _res_conv = *(LDKCResult_UpdateFailHTLCDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_UnsignedChannelAnnouncementDecodeErrorZ_free(_res_conv); + CResult_UpdateFailHTLCDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone_ptr(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ), "LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ"); - *ret_conv = CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone(arg); +static inline uint64_t CResult_UpdateFailHTLCDecodeErrorZ_clone_ptr(LDKCResult_UpdateFailHTLCDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_UpdateFailHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailHTLCDecodeErrorZ), "LDKCResult_UpdateFailHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateFailHTLCDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* arg_conv = (LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_UpdateFailHTLCDecodeErrorZ* arg_conv = (LDKCResult_UpdateFailHTLCDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_UpdateFailHTLCDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* orig_conv = (LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ*)(orig & ~1); - LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ), "LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ"); - *ret_conv = CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailHTLCDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_UpdateFailHTLCDecodeErrorZ* orig_conv = (LDKCResult_UpdateFailHTLCDecodeErrorZ*)(orig & ~1); + LDKCResult_UpdateFailHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailHTLCDecodeErrorZ), "LDKCResult_UpdateFailHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateFailHTLCDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_ok(uint32_t o) { - LDKChannelAnnouncement o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_ok(uint32_t o) { + LDKUpdateFailMalformedHTLC o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ChannelAnnouncement_clone(&o_conv); - LDKCResult_ChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelAnnouncementDecodeErrorZ), "LDKCResult_ChannelAnnouncementDecodeErrorZ"); - *ret_conv = CResult_ChannelAnnouncementDecodeErrorZ_ok(o_conv); + o_conv = UpdateFailMalformedHTLC_clone(&o_conv); + LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ), "LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateFailMalformedHTLCDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_ChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelAnnouncementDecodeErrorZ), "LDKCResult_ChannelAnnouncementDecodeErrorZ"); - *ret_conv = CResult_ChannelAnnouncementDecodeErrorZ_err(e_conv); + LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ), "LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateFailMalformedHTLCDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ChannelAnnouncementDecodeErrorZ* o_conv = (LDKCResult_ChannelAnnouncementDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ChannelAnnouncementDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* o_conv = (LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_UpdateFailMalformedHTLCDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_ChannelAnnouncementDecodeErrorZ _res_conv = *(LDKCResult_ChannelAnnouncementDecodeErrorZ*)(_res_ptr); + LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ _res_conv = *(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_ChannelAnnouncementDecodeErrorZ_free(_res_conv); + CResult_UpdateFailMalformedHTLCDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_ChannelAnnouncementDecodeErrorZ_clone_ptr(LDKCResult_ChannelAnnouncementDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelAnnouncementDecodeErrorZ), "LDKCResult_ChannelAnnouncementDecodeErrorZ"); - *ret_conv = CResult_ChannelAnnouncementDecodeErrorZ_clone(arg); +static inline uint64_t CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone_ptr(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ), "LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ChannelAnnouncementDecodeErrorZ* arg_conv = (LDKCResult_ChannelAnnouncementDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ChannelAnnouncementDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* arg_conv = (LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ChannelAnnouncementDecodeErrorZ* orig_conv = (LDKCResult_ChannelAnnouncementDecodeErrorZ*)(orig & ~1); - LDKCResult_ChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelAnnouncementDecodeErrorZ), "LDKCResult_ChannelAnnouncementDecodeErrorZ"); - *ret_conv = CResult_ChannelAnnouncementDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* orig_conv = (LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ*)(orig & ~1); + LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ), "LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_ok(uint32_t o) { - LDKUnsignedChannelUpdate o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_ok(uint32_t o) { + LDKUpdateFee o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = UnsignedChannelUpdate_clone(&o_conv); - LDKCResult_UnsignedChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelUpdateDecodeErrorZ), "LDKCResult_UnsignedChannelUpdateDecodeErrorZ"); - *ret_conv = CResult_UnsignedChannelUpdateDecodeErrorZ_ok(o_conv); + o_conv = UpdateFee_clone(&o_conv); + LDKCResult_UpdateFeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFeeDecodeErrorZ), "LDKCResult_UpdateFeeDecodeErrorZ"); + *ret_conv = CResult_UpdateFeeDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_UnsignedChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelUpdateDecodeErrorZ), "LDKCResult_UnsignedChannelUpdateDecodeErrorZ"); - *ret_conv = CResult_UnsignedChannelUpdateDecodeErrorZ_err(e_conv); + LDKCResult_UpdateFeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFeeDecodeErrorZ), "LDKCResult_UpdateFeeDecodeErrorZ"); + *ret_conv = CResult_UpdateFeeDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_UnsignedChannelUpdateDecodeErrorZ* o_conv = (LDKCResult_UnsignedChannelUpdateDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_UnsignedChannelUpdateDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_UpdateFeeDecodeErrorZ* o_conv = (LDKCResult_UpdateFeeDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_UpdateFeeDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_UnsignedChannelUpdateDecodeErrorZ _res_conv = *(LDKCResult_UnsignedChannelUpdateDecodeErrorZ*)(_res_ptr); + LDKCResult_UpdateFeeDecodeErrorZ _res_conv = *(LDKCResult_UpdateFeeDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_UnsignedChannelUpdateDecodeErrorZ_free(_res_conv); + CResult_UpdateFeeDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_UnsignedChannelUpdateDecodeErrorZ_clone_ptr(LDKCResult_UnsignedChannelUpdateDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_UnsignedChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelUpdateDecodeErrorZ), "LDKCResult_UnsignedChannelUpdateDecodeErrorZ"); - *ret_conv = CResult_UnsignedChannelUpdateDecodeErrorZ_clone(arg); +static inline uint64_t CResult_UpdateFeeDecodeErrorZ_clone_ptr(LDKCResult_UpdateFeeDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_UpdateFeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFeeDecodeErrorZ), "LDKCResult_UpdateFeeDecodeErrorZ"); + *ret_conv = CResult_UpdateFeeDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_UnsignedChannelUpdateDecodeErrorZ* arg_conv = (LDKCResult_UnsignedChannelUpdateDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_UnsignedChannelUpdateDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_UpdateFeeDecodeErrorZ* arg_conv = (LDKCResult_UpdateFeeDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_UpdateFeeDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_UnsignedChannelUpdateDecodeErrorZ* orig_conv = (LDKCResult_UnsignedChannelUpdateDecodeErrorZ*)(orig & ~1); - LDKCResult_UnsignedChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelUpdateDecodeErrorZ), "LDKCResult_UnsignedChannelUpdateDecodeErrorZ"); - *ret_conv = CResult_UnsignedChannelUpdateDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFeeDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_UpdateFeeDecodeErrorZ* orig_conv = (LDKCResult_UpdateFeeDecodeErrorZ*)(orig & ~1); + LDKCResult_UpdateFeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFeeDecodeErrorZ), "LDKCResult_UpdateFeeDecodeErrorZ"); + *ret_conv = CResult_UpdateFeeDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_ok(uint32_t o) { - LDKChannelUpdate o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_ok(uint32_t o) { + LDKUpdateFulfillHTLC o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ChannelUpdate_clone(&o_conv); - LDKCResult_ChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelUpdateDecodeErrorZ), "LDKCResult_ChannelUpdateDecodeErrorZ"); - *ret_conv = CResult_ChannelUpdateDecodeErrorZ_ok(o_conv); + o_conv = UpdateFulfillHTLC_clone(&o_conv); + LDKCResult_UpdateFulfillHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFulfillHTLCDecodeErrorZ), "LDKCResult_UpdateFulfillHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateFulfillHTLCDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_ChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelUpdateDecodeErrorZ), "LDKCResult_ChannelUpdateDecodeErrorZ"); - *ret_conv = CResult_ChannelUpdateDecodeErrorZ_err(e_conv); + LDKCResult_UpdateFulfillHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFulfillHTLCDecodeErrorZ), "LDKCResult_UpdateFulfillHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateFulfillHTLCDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ChannelUpdateDecodeErrorZ* o_conv = (LDKCResult_ChannelUpdateDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ChannelUpdateDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_UpdateFulfillHTLCDecodeErrorZ* o_conv = (LDKCResult_UpdateFulfillHTLCDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_UpdateFulfillHTLCDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_ChannelUpdateDecodeErrorZ _res_conv = *(LDKCResult_ChannelUpdateDecodeErrorZ*)(_res_ptr); + LDKCResult_UpdateFulfillHTLCDecodeErrorZ _res_conv = *(LDKCResult_UpdateFulfillHTLCDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_ChannelUpdateDecodeErrorZ_free(_res_conv); + CResult_UpdateFulfillHTLCDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_ChannelUpdateDecodeErrorZ_clone_ptr(LDKCResult_ChannelUpdateDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelUpdateDecodeErrorZ), "LDKCResult_ChannelUpdateDecodeErrorZ"); - *ret_conv = CResult_ChannelUpdateDecodeErrorZ_clone(arg); +static inline uint64_t CResult_UpdateFulfillHTLCDecodeErrorZ_clone_ptr(LDKCResult_UpdateFulfillHTLCDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_UpdateFulfillHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFulfillHTLCDecodeErrorZ), "LDKCResult_UpdateFulfillHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateFulfillHTLCDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ChannelUpdateDecodeErrorZ* arg_conv = (LDKCResult_ChannelUpdateDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ChannelUpdateDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_UpdateFulfillHTLCDecodeErrorZ* arg_conv = (LDKCResult_UpdateFulfillHTLCDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_UpdateFulfillHTLCDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ChannelUpdateDecodeErrorZ* orig_conv = (LDKCResult_ChannelUpdateDecodeErrorZ*)(orig & ~1); - LDKCResult_ChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelUpdateDecodeErrorZ), "LDKCResult_ChannelUpdateDecodeErrorZ"); - *ret_conv = CResult_ChannelUpdateDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateFulfillHTLCDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_UpdateFulfillHTLCDecodeErrorZ* orig_conv = (LDKCResult_UpdateFulfillHTLCDecodeErrorZ*)(orig & ~1); + LDKCResult_UpdateFulfillHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFulfillHTLCDecodeErrorZ), "LDKCResult_UpdateFulfillHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateFulfillHTLCDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_ok(uint32_t o) { - LDKErrorMessage o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_ok(uint32_t o) { + LDKUpdateAddHTLC o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ErrorMessage_clone(&o_conv); - LDKCResult_ErrorMessageDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ErrorMessageDecodeErrorZ), "LDKCResult_ErrorMessageDecodeErrorZ"); - *ret_conv = CResult_ErrorMessageDecodeErrorZ_ok(o_conv); + o_conv = UpdateAddHTLC_clone(&o_conv); + LDKCResult_UpdateAddHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateAddHTLCDecodeErrorZ), "LDKCResult_UpdateAddHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateAddHTLCDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_ErrorMessageDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ErrorMessageDecodeErrorZ), "LDKCResult_ErrorMessageDecodeErrorZ"); - *ret_conv = CResult_ErrorMessageDecodeErrorZ_err(e_conv); + LDKCResult_UpdateAddHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateAddHTLCDecodeErrorZ), "LDKCResult_UpdateAddHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateAddHTLCDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ErrorMessageDecodeErrorZ* o_conv = (LDKCResult_ErrorMessageDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ErrorMessageDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_UpdateAddHTLCDecodeErrorZ* o_conv = (LDKCResult_UpdateAddHTLCDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_UpdateAddHTLCDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_ErrorMessageDecodeErrorZ _res_conv = *(LDKCResult_ErrorMessageDecodeErrorZ*)(_res_ptr); + LDKCResult_UpdateAddHTLCDecodeErrorZ _res_conv = *(LDKCResult_UpdateAddHTLCDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_ErrorMessageDecodeErrorZ_free(_res_conv); + CResult_UpdateAddHTLCDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_ErrorMessageDecodeErrorZ_clone_ptr(LDKCResult_ErrorMessageDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ErrorMessageDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ErrorMessageDecodeErrorZ), "LDKCResult_ErrorMessageDecodeErrorZ"); - *ret_conv = CResult_ErrorMessageDecodeErrorZ_clone(arg); +static inline uint64_t CResult_UpdateAddHTLCDecodeErrorZ_clone_ptr(LDKCResult_UpdateAddHTLCDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_UpdateAddHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateAddHTLCDecodeErrorZ), "LDKCResult_UpdateAddHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateAddHTLCDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ErrorMessageDecodeErrorZ* arg_conv = (LDKCResult_ErrorMessageDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ErrorMessageDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_UpdateAddHTLCDecodeErrorZ* arg_conv = (LDKCResult_UpdateAddHTLCDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_UpdateAddHTLCDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ErrorMessageDecodeErrorZ* orig_conv = (LDKCResult_ErrorMessageDecodeErrorZ*)(orig & ~1); - LDKCResult_ErrorMessageDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ErrorMessageDecodeErrorZ), "LDKCResult_ErrorMessageDecodeErrorZ"); - *ret_conv = CResult_ErrorMessageDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_UpdateAddHTLCDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_UpdateAddHTLCDecodeErrorZ* orig_conv = (LDKCResult_UpdateAddHTLCDecodeErrorZ*)(orig & ~1); + LDKCResult_UpdateAddHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateAddHTLCDecodeErrorZ), "LDKCResult_UpdateAddHTLCDecodeErrorZ"); + *ret_conv = CResult_UpdateAddHTLCDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_ok(uint32_t o) { - LDKUnsignedNodeAnnouncement o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_ok(uint32_t o) { + LDKPing o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = UnsignedNodeAnnouncement_clone(&o_conv); - LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ), "LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ"); - *ret_conv = CResult_UnsignedNodeAnnouncementDecodeErrorZ_ok(o_conv); + o_conv = Ping_clone(&o_conv); + LDKCResult_PingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PingDecodeErrorZ), "LDKCResult_PingDecodeErrorZ"); + *ret_conv = CResult_PingDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ), "LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ"); - *ret_conv = CResult_UnsignedNodeAnnouncementDecodeErrorZ_err(e_conv); + LDKCResult_PingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PingDecodeErrorZ), "LDKCResult_PingDecodeErrorZ"); + *ret_conv = CResult_PingDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* o_conv = (LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_UnsignedNodeAnnouncementDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_PingDecodeErrorZ* o_conv = (LDKCResult_PingDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_PingDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ _res_conv = *(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ*)(_res_ptr); + LDKCResult_PingDecodeErrorZ _res_conv = *(LDKCResult_PingDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_UnsignedNodeAnnouncementDecodeErrorZ_free(_res_conv); + CResult_PingDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone_ptr(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ), "LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ"); - *ret_conv = CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone(arg); +static inline uint64_t CResult_PingDecodeErrorZ_clone_ptr(LDKCResult_PingDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_PingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PingDecodeErrorZ), "LDKCResult_PingDecodeErrorZ"); + *ret_conv = CResult_PingDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* arg_conv = (LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_PingDecodeErrorZ* arg_conv = (LDKCResult_PingDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_PingDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* orig_conv = (LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ*)(orig & ~1); - LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ), "LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ"); - *ret_conv = CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_PingDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_PingDecodeErrorZ* orig_conv = (LDKCResult_PingDecodeErrorZ*)(orig & ~1); + LDKCResult_PingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PingDecodeErrorZ), "LDKCResult_PingDecodeErrorZ"); + *ret_conv = CResult_PingDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_ok(uint32_t o) { - LDKNodeAnnouncement o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_ok(uint32_t o) { + LDKPong o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = NodeAnnouncement_clone(&o_conv); - LDKCResult_NodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeAnnouncementDecodeErrorZ), "LDKCResult_NodeAnnouncementDecodeErrorZ"); - *ret_conv = CResult_NodeAnnouncementDecodeErrorZ_ok(o_conv); + o_conv = Pong_clone(&o_conv); + LDKCResult_PongDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PongDecodeErrorZ), "LDKCResult_PongDecodeErrorZ"); + *ret_conv = CResult_PongDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_NodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeAnnouncementDecodeErrorZ), "LDKCResult_NodeAnnouncementDecodeErrorZ"); - *ret_conv = CResult_NodeAnnouncementDecodeErrorZ_err(e_conv); + LDKCResult_PongDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PongDecodeErrorZ), "LDKCResult_PongDecodeErrorZ"); + *ret_conv = CResult_PongDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_NodeAnnouncementDecodeErrorZ* o_conv = (LDKCResult_NodeAnnouncementDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_NodeAnnouncementDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_PongDecodeErrorZ* o_conv = (LDKCResult_PongDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_PongDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_NodeAnnouncementDecodeErrorZ _res_conv = *(LDKCResult_NodeAnnouncementDecodeErrorZ*)(_res_ptr); + LDKCResult_PongDecodeErrorZ _res_conv = *(LDKCResult_PongDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_NodeAnnouncementDecodeErrorZ_free(_res_conv); + CResult_PongDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_NodeAnnouncementDecodeErrorZ_clone_ptr(LDKCResult_NodeAnnouncementDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_NodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeAnnouncementDecodeErrorZ), "LDKCResult_NodeAnnouncementDecodeErrorZ"); - *ret_conv = CResult_NodeAnnouncementDecodeErrorZ_clone(arg); +static inline uint64_t CResult_PongDecodeErrorZ_clone_ptr(LDKCResult_PongDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_PongDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PongDecodeErrorZ), "LDKCResult_PongDecodeErrorZ"); + *ret_conv = CResult_PongDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_NodeAnnouncementDecodeErrorZ* arg_conv = (LDKCResult_NodeAnnouncementDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_NodeAnnouncementDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_PongDecodeErrorZ* arg_conv = (LDKCResult_PongDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_PongDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_NodeAnnouncementDecodeErrorZ* orig_conv = (LDKCResult_NodeAnnouncementDecodeErrorZ*)(orig & ~1); - LDKCResult_NodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeAnnouncementDecodeErrorZ), "LDKCResult_NodeAnnouncementDecodeErrorZ"); - *ret_conv = CResult_NodeAnnouncementDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_PongDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_PongDecodeErrorZ* orig_conv = (LDKCResult_PongDecodeErrorZ*)(orig & ~1); + LDKCResult_PongDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PongDecodeErrorZ), "LDKCResult_PongDecodeErrorZ"); + *ret_conv = CResult_PongDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_ok(uint32_t o) { - LDKQueryShortChannelIds o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_ok(uint32_t o) { + LDKUnsignedChannelAnnouncement o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = QueryShortChannelIds_clone(&o_conv); - LDKCResult_QueryShortChannelIdsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryShortChannelIdsDecodeErrorZ), "LDKCResult_QueryShortChannelIdsDecodeErrorZ"); - *ret_conv = CResult_QueryShortChannelIdsDecodeErrorZ_ok(o_conv); + o_conv = UnsignedChannelAnnouncement_clone(&o_conv); + LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ), "LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ"); + *ret_conv = CResult_UnsignedChannelAnnouncementDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_QueryShortChannelIdsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryShortChannelIdsDecodeErrorZ), "LDKCResult_QueryShortChannelIdsDecodeErrorZ"); - *ret_conv = CResult_QueryShortChannelIdsDecodeErrorZ_err(e_conv); + LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ), "LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ"); + *ret_conv = CResult_UnsignedChannelAnnouncementDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_QueryShortChannelIdsDecodeErrorZ* o_conv = (LDKCResult_QueryShortChannelIdsDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_QueryShortChannelIdsDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* o_conv = (LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_UnsignedChannelAnnouncementDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_QueryShortChannelIdsDecodeErrorZ _res_conv = *(LDKCResult_QueryShortChannelIdsDecodeErrorZ*)(_res_ptr); + LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ _res_conv = *(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_QueryShortChannelIdsDecodeErrorZ_free(_res_conv); + CResult_UnsignedChannelAnnouncementDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_QueryShortChannelIdsDecodeErrorZ_clone_ptr(LDKCResult_QueryShortChannelIdsDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_QueryShortChannelIdsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryShortChannelIdsDecodeErrorZ), "LDKCResult_QueryShortChannelIdsDecodeErrorZ"); - *ret_conv = CResult_QueryShortChannelIdsDecodeErrorZ_clone(arg); +static inline uint64_t CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone_ptr(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ), "LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ"); + *ret_conv = CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_QueryShortChannelIdsDecodeErrorZ* arg_conv = (LDKCResult_QueryShortChannelIdsDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_QueryShortChannelIdsDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* arg_conv = (LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_QueryShortChannelIdsDecodeErrorZ* orig_conv = (LDKCResult_QueryShortChannelIdsDecodeErrorZ*)(orig & ~1); - LDKCResult_QueryShortChannelIdsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryShortChannelIdsDecodeErrorZ), "LDKCResult_QueryShortChannelIdsDecodeErrorZ"); - *ret_conv = CResult_QueryShortChannelIdsDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* orig_conv = (LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ*)(orig & ~1); + LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ), "LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ"); + *ret_conv = CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_ok(uint32_t o) { - LDKReplyShortChannelIdsEnd o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_ok(uint32_t o) { + LDKChannelAnnouncement o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ReplyShortChannelIdsEnd_clone(&o_conv); - LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ), "LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ"); - *ret_conv = CResult_ReplyShortChannelIdsEndDecodeErrorZ_ok(o_conv); + o_conv = ChannelAnnouncement_clone(&o_conv); + LDKCResult_ChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelAnnouncementDecodeErrorZ), "LDKCResult_ChannelAnnouncementDecodeErrorZ"); + *ret_conv = CResult_ChannelAnnouncementDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ), "LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ"); - *ret_conv = CResult_ReplyShortChannelIdsEndDecodeErrorZ_err(e_conv); + LDKCResult_ChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelAnnouncementDecodeErrorZ), "LDKCResult_ChannelAnnouncementDecodeErrorZ"); + *ret_conv = CResult_ChannelAnnouncementDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* o_conv = (LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ReplyShortChannelIdsEndDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ChannelAnnouncementDecodeErrorZ* o_conv = (LDKCResult_ChannelAnnouncementDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ChannelAnnouncementDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ _res_conv = *(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ*)(_res_ptr); + LDKCResult_ChannelAnnouncementDecodeErrorZ _res_conv = *(LDKCResult_ChannelAnnouncementDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_ReplyShortChannelIdsEndDecodeErrorZ_free(_res_conv); + CResult_ChannelAnnouncementDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone_ptr(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ), "LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ"); - *ret_conv = CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone(arg); +static inline uint64_t CResult_ChannelAnnouncementDecodeErrorZ_clone_ptr(LDKCResult_ChannelAnnouncementDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelAnnouncementDecodeErrorZ), "LDKCResult_ChannelAnnouncementDecodeErrorZ"); + *ret_conv = CResult_ChannelAnnouncementDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* arg_conv = (LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ChannelAnnouncementDecodeErrorZ* arg_conv = (LDKCResult_ChannelAnnouncementDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ChannelAnnouncementDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* orig_conv = (LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ*)(orig & ~1); - LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ), "LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ"); - *ret_conv = CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelAnnouncementDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ChannelAnnouncementDecodeErrorZ* orig_conv = (LDKCResult_ChannelAnnouncementDecodeErrorZ*)(orig & ~1); + LDKCResult_ChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelAnnouncementDecodeErrorZ), "LDKCResult_ChannelAnnouncementDecodeErrorZ"); + *ret_conv = CResult_ChannelAnnouncementDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_ok(uint32_t o) { - LDKQueryChannelRange o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_ok(uint32_t o) { + LDKUnsignedChannelUpdate o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = QueryChannelRange_clone(&o_conv); - LDKCResult_QueryChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryChannelRangeDecodeErrorZ), "LDKCResult_QueryChannelRangeDecodeErrorZ"); - *ret_conv = CResult_QueryChannelRangeDecodeErrorZ_ok(o_conv); + o_conv = UnsignedChannelUpdate_clone(&o_conv); + LDKCResult_UnsignedChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelUpdateDecodeErrorZ), "LDKCResult_UnsignedChannelUpdateDecodeErrorZ"); + *ret_conv = CResult_UnsignedChannelUpdateDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_QueryChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryChannelRangeDecodeErrorZ), "LDKCResult_QueryChannelRangeDecodeErrorZ"); - *ret_conv = CResult_QueryChannelRangeDecodeErrorZ_err(e_conv); + LDKCResult_UnsignedChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelUpdateDecodeErrorZ), "LDKCResult_UnsignedChannelUpdateDecodeErrorZ"); + *ret_conv = CResult_UnsignedChannelUpdateDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_QueryChannelRangeDecodeErrorZ* o_conv = (LDKCResult_QueryChannelRangeDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_QueryChannelRangeDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_UnsignedChannelUpdateDecodeErrorZ* o_conv = (LDKCResult_UnsignedChannelUpdateDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_UnsignedChannelUpdateDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_QueryChannelRangeDecodeErrorZ _res_conv = *(LDKCResult_QueryChannelRangeDecodeErrorZ*)(_res_ptr); + LDKCResult_UnsignedChannelUpdateDecodeErrorZ _res_conv = *(LDKCResult_UnsignedChannelUpdateDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_QueryChannelRangeDecodeErrorZ_free(_res_conv); + CResult_UnsignedChannelUpdateDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_QueryChannelRangeDecodeErrorZ_clone_ptr(LDKCResult_QueryChannelRangeDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_QueryChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryChannelRangeDecodeErrorZ), "LDKCResult_QueryChannelRangeDecodeErrorZ"); - *ret_conv = CResult_QueryChannelRangeDecodeErrorZ_clone(arg); +static inline uint64_t CResult_UnsignedChannelUpdateDecodeErrorZ_clone_ptr(LDKCResult_UnsignedChannelUpdateDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_UnsignedChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelUpdateDecodeErrorZ), "LDKCResult_UnsignedChannelUpdateDecodeErrorZ"); + *ret_conv = CResult_UnsignedChannelUpdateDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_QueryChannelRangeDecodeErrorZ* arg_conv = (LDKCResult_QueryChannelRangeDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_QueryChannelRangeDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_UnsignedChannelUpdateDecodeErrorZ* arg_conv = (LDKCResult_UnsignedChannelUpdateDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_UnsignedChannelUpdateDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_QueryChannelRangeDecodeErrorZ* orig_conv = (LDKCResult_QueryChannelRangeDecodeErrorZ*)(orig & ~1); - LDKCResult_QueryChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryChannelRangeDecodeErrorZ), "LDKCResult_QueryChannelRangeDecodeErrorZ"); - *ret_conv = CResult_QueryChannelRangeDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedChannelUpdateDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_UnsignedChannelUpdateDecodeErrorZ* orig_conv = (LDKCResult_UnsignedChannelUpdateDecodeErrorZ*)(orig & ~1); + LDKCResult_UnsignedChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelUpdateDecodeErrorZ), "LDKCResult_UnsignedChannelUpdateDecodeErrorZ"); + *ret_conv = CResult_UnsignedChannelUpdateDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_ok(uint32_t o) { - LDKReplyChannelRange o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_ok(uint32_t o) { + LDKChannelUpdate o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = ReplyChannelRange_clone(&o_conv); - LDKCResult_ReplyChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyChannelRangeDecodeErrorZ), "LDKCResult_ReplyChannelRangeDecodeErrorZ"); - *ret_conv = CResult_ReplyChannelRangeDecodeErrorZ_ok(o_conv); + o_conv = ChannelUpdate_clone(&o_conv); + LDKCResult_ChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelUpdateDecodeErrorZ), "LDKCResult_ChannelUpdateDecodeErrorZ"); + *ret_conv = CResult_ChannelUpdateDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_ReplyChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyChannelRangeDecodeErrorZ), "LDKCResult_ReplyChannelRangeDecodeErrorZ"); - *ret_conv = CResult_ReplyChannelRangeDecodeErrorZ_err(e_conv); + LDKCResult_ChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelUpdateDecodeErrorZ), "LDKCResult_ChannelUpdateDecodeErrorZ"); + *ret_conv = CResult_ChannelUpdateDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_ReplyChannelRangeDecodeErrorZ* o_conv = (LDKCResult_ReplyChannelRangeDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_ReplyChannelRangeDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ChannelUpdateDecodeErrorZ* o_conv = (LDKCResult_ChannelUpdateDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ChannelUpdateDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_ReplyChannelRangeDecodeErrorZ _res_conv = *(LDKCResult_ReplyChannelRangeDecodeErrorZ*)(_res_ptr); + LDKCResult_ChannelUpdateDecodeErrorZ _res_conv = *(LDKCResult_ChannelUpdateDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_ReplyChannelRangeDecodeErrorZ_free(_res_conv); + CResult_ChannelUpdateDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_ReplyChannelRangeDecodeErrorZ_clone_ptr(LDKCResult_ReplyChannelRangeDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_ReplyChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyChannelRangeDecodeErrorZ), "LDKCResult_ReplyChannelRangeDecodeErrorZ"); - *ret_conv = CResult_ReplyChannelRangeDecodeErrorZ_clone(arg); +static inline uint64_t CResult_ChannelUpdateDecodeErrorZ_clone_ptr(LDKCResult_ChannelUpdateDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelUpdateDecodeErrorZ), "LDKCResult_ChannelUpdateDecodeErrorZ"); + *ret_conv = CResult_ChannelUpdateDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_ReplyChannelRangeDecodeErrorZ* arg_conv = (LDKCResult_ReplyChannelRangeDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_ReplyChannelRangeDecodeErrorZ_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_ReplyChannelRangeDecodeErrorZ* orig_conv = (LDKCResult_ReplyChannelRangeDecodeErrorZ*)(orig & ~1); - LDKCResult_ReplyChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyChannelRangeDecodeErrorZ), "LDKCResult_ReplyChannelRangeDecodeErrorZ"); - *ret_conv = CResult_ReplyChannelRangeDecodeErrorZ_clone(orig_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ChannelUpdateDecodeErrorZ* arg_conv = (LDKCResult_ChannelUpdateDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ChannelUpdateDecodeErrorZ_clone_ptr(arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_ChannelUpdateDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ChannelUpdateDecodeErrorZ* orig_conv = (LDKCResult_ChannelUpdateDecodeErrorZ*)(orig & ~1); + LDKCResult_ChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelUpdateDecodeErrorZ), "LDKCResult_ChannelUpdateDecodeErrorZ"); + *ret_conv = CResult_ChannelUpdateDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_ok(uint32_t o) { - LDKGossipTimestampFilter o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_ok(uint32_t o) { + LDKErrorMessage o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = GossipTimestampFilter_clone(&o_conv); - LDKCResult_GossipTimestampFilterDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_GossipTimestampFilterDecodeErrorZ), "LDKCResult_GossipTimestampFilterDecodeErrorZ"); - *ret_conv = CResult_GossipTimestampFilterDecodeErrorZ_ok(o_conv); + o_conv = ErrorMessage_clone(&o_conv); + LDKCResult_ErrorMessageDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ErrorMessageDecodeErrorZ), "LDKCResult_ErrorMessageDecodeErrorZ"); + *ret_conv = CResult_ErrorMessageDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_err(uint32_t e) { +uint32_t __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_err(uint32_t e) { LDKDecodeError e_conv; e_conv.inner = (void*)(e & (~1)); e_conv.is_owned = (e & 1) || (e == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); e_conv = DecodeError_clone(&e_conv); - LDKCResult_GossipTimestampFilterDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_GossipTimestampFilterDecodeErrorZ), "LDKCResult_GossipTimestampFilterDecodeErrorZ"); - *ret_conv = CResult_GossipTimestampFilterDecodeErrorZ_err(e_conv); + LDKCResult_ErrorMessageDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ErrorMessageDecodeErrorZ), "LDKCResult_ErrorMessageDecodeErrorZ"); + *ret_conv = CResult_ErrorMessageDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_is_ok(uint32_t o) { - LDKCResult_GossipTimestampFilterDecodeErrorZ* o_conv = (LDKCResult_GossipTimestampFilterDecodeErrorZ*)(o & ~1); - jboolean ret_val = CResult_GossipTimestampFilterDecodeErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ErrorMessageDecodeErrorZ* o_conv = (LDKCResult_ErrorMessageDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ErrorMessageDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_GossipTimestampFilterDecodeErrorZ _res_conv = *(LDKCResult_GossipTimestampFilterDecodeErrorZ*)(_res_ptr); + LDKCResult_ErrorMessageDecodeErrorZ _res_conv = *(LDKCResult_ErrorMessageDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_GossipTimestampFilterDecodeErrorZ_free(_res_conv); + CResult_ErrorMessageDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_GossipTimestampFilterDecodeErrorZ_clone_ptr(LDKCResult_GossipTimestampFilterDecodeErrorZ *NONNULL_PTR arg) { - LDKCResult_GossipTimestampFilterDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_GossipTimestampFilterDecodeErrorZ), "LDKCResult_GossipTimestampFilterDecodeErrorZ"); - *ret_conv = CResult_GossipTimestampFilterDecodeErrorZ_clone(arg); +static inline uint64_t CResult_ErrorMessageDecodeErrorZ_clone_ptr(LDKCResult_ErrorMessageDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ErrorMessageDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ErrorMessageDecodeErrorZ), "LDKCResult_ErrorMessageDecodeErrorZ"); + *ret_conv = CResult_ErrorMessageDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_GossipTimestampFilterDecodeErrorZ* arg_conv = (LDKCResult_GossipTimestampFilterDecodeErrorZ*)(arg & ~1); - int64_t ret_val = CResult_GossipTimestampFilterDecodeErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ErrorMessageDecodeErrorZ* arg_conv = (LDKCResult_ErrorMessageDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ErrorMessageDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_clone(uint32_t orig) { - LDKCResult_GossipTimestampFilterDecodeErrorZ* orig_conv = (LDKCResult_GossipTimestampFilterDecodeErrorZ*)(orig & ~1); - LDKCResult_GossipTimestampFilterDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_GossipTimestampFilterDecodeErrorZ), "LDKCResult_GossipTimestampFilterDecodeErrorZ"); - *ret_conv = CResult_GossipTimestampFilterDecodeErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_ErrorMessageDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ErrorMessageDecodeErrorZ* orig_conv = (LDKCResult_ErrorMessageDecodeErrorZ*)(orig & ~1); + LDKCResult_ErrorMessageDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ErrorMessageDecodeErrorZ), "LDKCResult_ErrorMessageDecodeErrorZ"); + *ret_conv = CResult_ErrorMessageDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceSignOrCreationErrorZ_ok(uint32_t o) { - LDKInvoice o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_ok(uint32_t o) { + LDKUnsignedNodeAnnouncement o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - o_conv = Invoice_clone(&o_conv); - LDKCResult_InvoiceSignOrCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceSignOrCreationErrorZ), "LDKCResult_InvoiceSignOrCreationErrorZ"); - *ret_conv = CResult_InvoiceSignOrCreationErrorZ_ok(o_conv); + o_conv = UnsignedNodeAnnouncement_clone(&o_conv); + LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ), "LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ"); + *ret_conv = CResult_UnsignedNodeAnnouncementDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceSignOrCreationErrorZ_err(uint32_t e) { - void* e_ptr = (void*)(((uint64_t)e) & ~1); - CHECK_ACCESS(e_ptr); - LDKSignOrCreationError e_conv = *(LDKSignOrCreationError*)(e_ptr); - e_conv = SignOrCreationError_clone((LDKSignOrCreationError*)(((uint64_t)e) & ~1)); - LDKCResult_InvoiceSignOrCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceSignOrCreationErrorZ), "LDKCResult_InvoiceSignOrCreationErrorZ"); - *ret_conv = CResult_InvoiceSignOrCreationErrorZ_err(e_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ), "LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ"); + *ret_conv = CResult_UnsignedNodeAnnouncementDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_InvoiceSignOrCreationErrorZ_is_ok(uint32_t o) { - LDKCResult_InvoiceSignOrCreationErrorZ* o_conv = (LDKCResult_InvoiceSignOrCreationErrorZ*)(o & ~1); - jboolean ret_val = CResult_InvoiceSignOrCreationErrorZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* o_conv = (LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_UnsignedNodeAnnouncementDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_InvoiceSignOrCreationErrorZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_InvoiceSignOrCreationErrorZ _res_conv = *(LDKCResult_InvoiceSignOrCreationErrorZ*)(_res_ptr); + LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ _res_conv = *(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_InvoiceSignOrCreationErrorZ_free(_res_conv); + CResult_UnsignedNodeAnnouncementDecodeErrorZ_free(_res_conv); } -static inline uint64_t CResult_InvoiceSignOrCreationErrorZ_clone_ptr(LDKCResult_InvoiceSignOrCreationErrorZ *NONNULL_PTR arg) { - LDKCResult_InvoiceSignOrCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceSignOrCreationErrorZ), "LDKCResult_InvoiceSignOrCreationErrorZ"); - *ret_conv = CResult_InvoiceSignOrCreationErrorZ_clone(arg); +static inline uint64_t CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone_ptr(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ), "LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ"); + *ret_conv = CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CResult_InvoiceSignOrCreationErrorZ_clone_ptr(uint32_t arg) { - LDKCResult_InvoiceSignOrCreationErrorZ* arg_conv = (LDKCResult_InvoiceSignOrCreationErrorZ*)(arg & ~1); - int64_t ret_val = CResult_InvoiceSignOrCreationErrorZ_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* arg_conv = (LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CResult_InvoiceSignOrCreationErrorZ_clone(uint32_t orig) { - LDKCResult_InvoiceSignOrCreationErrorZ* orig_conv = (LDKCResult_InvoiceSignOrCreationErrorZ*)(orig & ~1); - LDKCResult_InvoiceSignOrCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceSignOrCreationErrorZ), "LDKCResult_InvoiceSignOrCreationErrorZ"); - *ret_conv = CResult_InvoiceSignOrCreationErrorZ_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* orig_conv = (LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ*)(orig & ~1); + LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ), "LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ"); + *ret_conv = CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_COption_FilterZ_some(uint32_t o) { - void* o_ptr = (void*)(((uint64_t)o) & ~1); - CHECK_ACCESS(o_ptr); - LDKFilter o_conv = *(LDKFilter*)(o_ptr); - LDKCOption_FilterZ *ret_copy = MALLOC(sizeof(LDKCOption_FilterZ), "LDKCOption_FilterZ"); - *ret_copy = COption_FilterZ_some(o_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_COption_FilterZ_none() { - LDKCOption_FilterZ *ret_copy = MALLOC(sizeof(LDKCOption_FilterZ), "LDKCOption_FilterZ"); - *ret_copy = COption_FilterZ_none(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -void __attribute__((visibility("default"))) TS_COption_FilterZ_free(uint32_t _res) { - if ((_res & 1) != 0) return; - void* _res_ptr = (void*)(((uint64_t)_res) & ~1); - CHECK_ACCESS(_res_ptr); - LDKCOption_FilterZ _res_conv = *(LDKCOption_FilterZ*)(_res_ptr); - FREE((void*)_res); - COption_FilterZ_free(_res_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_CResult_LockedChannelMonitorNoneZ_ok(uint32_t o) { - LDKLockedChannelMonitor o_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_ok(uint32_t o) { + LDKNodeAnnouncement o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = (o & 1) || (o == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - // Warning: we need a move here but no clone is available for LDKLockedChannelMonitor - LDKCResult_LockedChannelMonitorNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_LockedChannelMonitorNoneZ), "LDKCResult_LockedChannelMonitorNoneZ"); - *ret_conv = CResult_LockedChannelMonitorNoneZ_ok(o_conv); + o_conv = NodeAnnouncement_clone(&o_conv); + LDKCResult_NodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeAnnouncementDecodeErrorZ), "LDKCResult_NodeAnnouncementDecodeErrorZ"); + *ret_conv = CResult_NodeAnnouncementDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_CResult_LockedChannelMonitorNoneZ_err() { - LDKCResult_LockedChannelMonitorNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_LockedChannelMonitorNoneZ), "LDKCResult_LockedChannelMonitorNoneZ"); - *ret_conv = CResult_LockedChannelMonitorNoneZ_err(); +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_NodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeAnnouncementDecodeErrorZ), "LDKCResult_NodeAnnouncementDecodeErrorZ"); + *ret_conv = CResult_NodeAnnouncementDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_CResult_LockedChannelMonitorNoneZ_is_ok(uint32_t o) { - LDKCResult_LockedChannelMonitorNoneZ* o_conv = (LDKCResult_LockedChannelMonitorNoneZ*)(o & ~1); - jboolean ret_val = CResult_LockedChannelMonitorNoneZ_is_ok(o_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_NodeAnnouncementDecodeErrorZ* o_conv = (LDKCResult_NodeAnnouncementDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_NodeAnnouncementDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CResult_LockedChannelMonitorNoneZ_free(uint32_t _res) { +void __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_free(uint32_t _res) { if ((_res & 1) != 0) return; void* _res_ptr = (void*)(((uint64_t)_res) & ~1); CHECK_ACCESS(_res_ptr); - LDKCResult_LockedChannelMonitorNoneZ _res_conv = *(LDKCResult_LockedChannelMonitorNoneZ*)(_res_ptr); + LDKCResult_NodeAnnouncementDecodeErrorZ _res_conv = *(LDKCResult_NodeAnnouncementDecodeErrorZ*)(_res_ptr); FREE((void*)_res); - CResult_LockedChannelMonitorNoneZ_free(_res_conv); -} - -void __attribute__((visibility("default"))) TS_CVec_OutPointZ_free(uint32_tArray _res) { - LDKCVec_OutPointZ _res_constr; - _res_constr.datalen = *((uint32_t*)_res); - if (_res_constr.datalen > 0) - _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKOutPoint), "LDKCVec_OutPointZ Elements"); - else - _res_constr.data = NULL; - uint32_t* _res_vals = (uint32_t*)(_res + 4); - for (size_t k = 0; k < _res_constr.datalen; k++) { - uint32_t _res_conv_10 = _res_vals[k]; - LDKOutPoint _res_conv_10_conv; - _res_conv_10_conv.inner = (void*)(_res_conv_10 & (~1)); - _res_conv_10_conv.is_owned = (_res_conv_10 & 1) || (_res_conv_10 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_10_conv); - _res_constr.data[k] = _res_conv_10_conv; - } - CVec_OutPointZ_free(_res_constr); -} - -void __attribute__((visibility("default"))) TS_PaymentPurpose_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKPaymentPurpose this_ptr_conv = *(LDKPaymentPurpose*)(this_ptr_ptr); - FREE((void*)this_ptr); - PaymentPurpose_free(this_ptr_conv); + CResult_NodeAnnouncementDecodeErrorZ_free(_res_conv); } -static inline uint64_t PaymentPurpose_clone_ptr(LDKPaymentPurpose *NONNULL_PTR arg) { - LDKPaymentPurpose *ret_copy = MALLOC(sizeof(LDKPaymentPurpose), "LDKPaymentPurpose"); - *ret_copy = PaymentPurpose_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +static inline uint64_t CResult_NodeAnnouncementDecodeErrorZ_clone_ptr(LDKCResult_NodeAnnouncementDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_NodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeAnnouncementDecodeErrorZ), "LDKCResult_NodeAnnouncementDecodeErrorZ"); + *ret_conv = CResult_NodeAnnouncementDecodeErrorZ_clone(arg); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_PaymentPurpose_clone_ptr(uint32_t arg) { - LDKPaymentPurpose* arg_conv = (LDKPaymentPurpose*)arg; - int64_t ret_val = PaymentPurpose_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_NodeAnnouncementDecodeErrorZ* arg_conv = (LDKCResult_NodeAnnouncementDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_NodeAnnouncementDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_PaymentPurpose_clone(uint32_t orig) { - LDKPaymentPurpose* orig_conv = (LDKPaymentPurpose*)orig; - LDKPaymentPurpose *ret_copy = MALLOC(sizeof(LDKPaymentPurpose), "LDKPaymentPurpose"); - *ret_copy = PaymentPurpose_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_PaymentPurpose_invoice_payment(int8_tArray payment_preimage, int8_tArray payment_secret) { - LDKThirtyTwoBytes payment_preimage_ref; - CHECK(*((uint32_t*)payment_preimage) == 32); - memcpy(payment_preimage_ref.data, (uint8_t*)(payment_preimage + 4), 32); - LDKThirtyTwoBytes payment_secret_ref; - CHECK(*((uint32_t*)payment_secret) == 32); - memcpy(payment_secret_ref.data, (uint8_t*)(payment_secret + 4), 32); - LDKPaymentPurpose *ret_copy = MALLOC(sizeof(LDKPaymentPurpose), "LDKPaymentPurpose"); - *ret_copy = PaymentPurpose_invoice_payment(payment_preimage_ref, payment_secret_ref); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_PaymentPurpose_spontaneous_payment(int8_tArray a) { - LDKThirtyTwoBytes a_ref; - CHECK(*((uint32_t*)a) == 32); - memcpy(a_ref.data, (uint8_t*)(a + 4), 32); - LDKPaymentPurpose *ret_copy = MALLOC(sizeof(LDKPaymentPurpose), "LDKPaymentPurpose"); - *ret_copy = PaymentPurpose_spontaneous_payment(a_ref); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -void __attribute__((visibility("default"))) TS_ClosureReason_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKClosureReason this_ptr_conv = *(LDKClosureReason*)(this_ptr_ptr); - FREE((void*)this_ptr); - ClosureReason_free(this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_NodeAnnouncementDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_NodeAnnouncementDecodeErrorZ* orig_conv = (LDKCResult_NodeAnnouncementDecodeErrorZ*)(orig & ~1); + LDKCResult_NodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeAnnouncementDecodeErrorZ), "LDKCResult_NodeAnnouncementDecodeErrorZ"); + *ret_conv = CResult_NodeAnnouncementDecodeErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -static inline uint64_t ClosureReason_clone_ptr(LDKClosureReason *NONNULL_PTR arg) { - LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); - *ret_copy = ClosureReason_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_ClosureReason_clone_ptr(uint32_t arg) { - LDKClosureReason* arg_conv = (LDKClosureReason*)arg; - int64_t ret_val = ClosureReason_clone_ptr(arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_ok(uint32_t o) { + LDKQueryShortChannelIds o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = QueryShortChannelIds_clone(&o_conv); + LDKCResult_QueryShortChannelIdsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryShortChannelIdsDecodeErrorZ), "LDKCResult_QueryShortChannelIdsDecodeErrorZ"); + *ret_conv = CResult_QueryShortChannelIdsDecodeErrorZ_ok(o_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ClosureReason_clone(uint32_t orig) { - LDKClosureReason* orig_conv = (LDKClosureReason*)orig; - LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); - *ret_copy = ClosureReason_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_QueryShortChannelIdsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryShortChannelIdsDecodeErrorZ), "LDKCResult_QueryShortChannelIdsDecodeErrorZ"); + *ret_conv = CResult_QueryShortChannelIdsDecodeErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ClosureReason_counterparty_force_closed(jstring peer_msg) { - LDKStr peer_msg_conv = str_ref_to_owned_c(peer_msg); - LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); - *ret_copy = ClosureReason_counterparty_force_closed(peer_msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +jboolean __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_QueryShortChannelIdsDecodeErrorZ* o_conv = (LDKCResult_QueryShortChannelIdsDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_QueryShortChannelIdsDecodeErrorZ_is_ok(o_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ClosureReason_holder_force_closed() { - LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); - *ret_copy = ClosureReason_holder_force_closed(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_QueryShortChannelIdsDecodeErrorZ _res_conv = *(LDKCResult_QueryShortChannelIdsDecodeErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_QueryShortChannelIdsDecodeErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_ClosureReason_cooperative_closure() { - LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); - *ret_copy = ClosureReason_cooperative_closure(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +static inline uint64_t CResult_QueryShortChannelIdsDecodeErrorZ_clone_ptr(LDKCResult_QueryShortChannelIdsDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_QueryShortChannelIdsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryShortChannelIdsDecodeErrorZ), "LDKCResult_QueryShortChannelIdsDecodeErrorZ"); + *ret_conv = CResult_QueryShortChannelIdsDecodeErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_QueryShortChannelIdsDecodeErrorZ* arg_conv = (LDKCResult_QueryShortChannelIdsDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_QueryShortChannelIdsDecodeErrorZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ClosureReason_commitment_tx_confirmed() { - LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); - *ret_copy = ClosureReason_commitment_tx_confirmed(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_QueryShortChannelIdsDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_QueryShortChannelIdsDecodeErrorZ* orig_conv = (LDKCResult_QueryShortChannelIdsDecodeErrorZ*)(orig & ~1); + LDKCResult_QueryShortChannelIdsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryShortChannelIdsDecodeErrorZ), "LDKCResult_QueryShortChannelIdsDecodeErrorZ"); + *ret_conv = CResult_QueryShortChannelIdsDecodeErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ClosureReason_funding_timed_out() { - LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); - *ret_copy = ClosureReason_funding_timed_out(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_ok(uint32_t o) { + LDKReplyShortChannelIdsEnd o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = ReplyShortChannelIdsEnd_clone(&o_conv); + LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ), "LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ"); + *ret_conv = CResult_ReplyShortChannelIdsEndDecodeErrorZ_ok(o_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ClosureReason_processing_error(jstring err) { - LDKStr err_conv = str_ref_to_owned_c(err); - LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); - *ret_copy = ClosureReason_processing_error(err_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ), "LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ"); + *ret_conv = CResult_ReplyShortChannelIdsEndDecodeErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ClosureReason_disconnected_peer() { - LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); - *ret_copy = ClosureReason_disconnected_peer(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +jboolean __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* o_conv = (LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ReplyShortChannelIdsEndDecodeErrorZ_is_ok(o_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ClosureReason_outdated_channel_manager() { - LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); - *ret_copy = ClosureReason_outdated_channel_manager(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ _res_conv = *(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_ReplyShortChannelIdsEndDecodeErrorZ_free(_res_conv); } -int8_tArray __attribute__((visibility("default"))) TS_ClosureReason_write(uint32_t obj) { - LDKClosureReason* obj_conv = (LDKClosureReason*)obj; - LDKCVec_u8Z ret_var = ClosureReason_write(obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +static inline uint64_t CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone_ptr(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ), "LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ"); + *ret_conv = CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* arg_conv = (LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ClosureReason_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_COption_ClosureReasonZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_ClosureReasonZDecodeErrorZ), "LDKCResult_COption_ClosureReasonZDecodeErrorZ"); - *ret_conv = ClosureReason_read(ser_ref); +uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* orig_conv = (LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ*)(orig & ~1); + LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ), "LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ"); + *ret_conv = CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone(orig_conv); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_Event_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKEvent this_ptr_conv = *(LDKEvent*)(this_ptr_ptr); - FREE((void*)this_ptr); - Event_free(this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_ok(uint32_t o) { + LDKQueryChannelRange o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = QueryChannelRange_clone(&o_conv); + LDKCResult_QueryChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryChannelRangeDecodeErrorZ), "LDKCResult_QueryChannelRangeDecodeErrorZ"); + *ret_conv = CResult_QueryChannelRangeDecodeErrorZ_ok(o_conv); + return (uint64_t)ret_conv; } -static inline uint64_t Event_clone_ptr(LDKEvent *NONNULL_PTR arg) { - LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_copy = Event_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_QueryChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryChannelRangeDecodeErrorZ), "LDKCResult_QueryChannelRangeDecodeErrorZ"); + *ret_conv = CResult_QueryChannelRangeDecodeErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_Event_clone_ptr(uint32_t arg) { - LDKEvent* arg_conv = (LDKEvent*)arg; - int64_t ret_val = Event_clone_ptr(arg_conv); + +jboolean __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_QueryChannelRangeDecodeErrorZ* o_conv = (LDKCResult_QueryChannelRangeDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_QueryChannelRangeDecodeErrorZ_is_ok(o_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Event_clone(uint32_t orig) { - LDKEvent* orig_conv = (LDKEvent*)orig; - LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_copy = Event_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_QueryChannelRangeDecodeErrorZ _res_conv = *(LDKCResult_QueryChannelRangeDecodeErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_QueryChannelRangeDecodeErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_Event_funding_generation_ready(int8_tArray temporary_channel_id, int64_t channel_value_satoshis, int8_tArray output_script, int64_t user_channel_id) { - LDKThirtyTwoBytes temporary_channel_id_ref; - CHECK(*((uint32_t*)temporary_channel_id) == 32); - memcpy(temporary_channel_id_ref.data, (uint8_t*)(temporary_channel_id + 4), 32); - LDKCVec_u8Z output_script_ref; - output_script_ref.datalen = *((uint32_t*)output_script); - output_script_ref.data = MALLOC(output_script_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(output_script_ref.data, (uint8_t*)(output_script + 4), output_script_ref.datalen); - LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_copy = Event_funding_generation_ready(temporary_channel_id_ref, channel_value_satoshis, output_script_ref, user_channel_id); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +static inline uint64_t CResult_QueryChannelRangeDecodeErrorZ_clone_ptr(LDKCResult_QueryChannelRangeDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_QueryChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryChannelRangeDecodeErrorZ), "LDKCResult_QueryChannelRangeDecodeErrorZ"); + *ret_conv = CResult_QueryChannelRangeDecodeErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_QueryChannelRangeDecodeErrorZ* arg_conv = (LDKCResult_QueryChannelRangeDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_QueryChannelRangeDecodeErrorZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Event_payment_received(int8_tArray payment_hash, int64_t amt, uint32_t purpose) { - LDKThirtyTwoBytes payment_hash_ref; - CHECK(*((uint32_t*)payment_hash) == 32); - memcpy(payment_hash_ref.data, (uint8_t*)(payment_hash + 4), 32); - void* purpose_ptr = (void*)(((uint64_t)purpose) & ~1); - CHECK_ACCESS(purpose_ptr); - LDKPaymentPurpose purpose_conv = *(LDKPaymentPurpose*)(purpose_ptr); - purpose_conv = PaymentPurpose_clone((LDKPaymentPurpose*)(((uint64_t)purpose) & ~1)); - LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_copy = Event_payment_received(payment_hash_ref, amt, purpose_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_QueryChannelRangeDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_QueryChannelRangeDecodeErrorZ* orig_conv = (LDKCResult_QueryChannelRangeDecodeErrorZ*)(orig & ~1); + LDKCResult_QueryChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryChannelRangeDecodeErrorZ), "LDKCResult_QueryChannelRangeDecodeErrorZ"); + *ret_conv = CResult_QueryChannelRangeDecodeErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Event_payment_sent(int8_tArray payment_id, int8_tArray payment_preimage, int8_tArray payment_hash, uint32_t fee_paid_msat) { - LDKThirtyTwoBytes payment_id_ref; - CHECK(*((uint32_t*)payment_id) == 32); - memcpy(payment_id_ref.data, (uint8_t*)(payment_id + 4), 32); - LDKThirtyTwoBytes payment_preimage_ref; - CHECK(*((uint32_t*)payment_preimage) == 32); - memcpy(payment_preimage_ref.data, (uint8_t*)(payment_preimage + 4), 32); - LDKThirtyTwoBytes payment_hash_ref; - CHECK(*((uint32_t*)payment_hash) == 32); - memcpy(payment_hash_ref.data, (uint8_t*)(payment_hash + 4), 32); - void* fee_paid_msat_ptr = (void*)(((uint64_t)fee_paid_msat) & ~1); - CHECK_ACCESS(fee_paid_msat_ptr); - LDKCOption_u64Z fee_paid_msat_conv = *(LDKCOption_u64Z*)(fee_paid_msat_ptr); - fee_paid_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)fee_paid_msat) & ~1)); - LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_copy = Event_payment_sent(payment_id_ref, payment_preimage_ref, payment_hash_ref, fee_paid_msat_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_ok(uint32_t o) { + LDKReplyChannelRange o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = ReplyChannelRange_clone(&o_conv); + LDKCResult_ReplyChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyChannelRangeDecodeErrorZ), "LDKCResult_ReplyChannelRangeDecodeErrorZ"); + *ret_conv = CResult_ReplyChannelRangeDecodeErrorZ_ok(o_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Event_payment_path_failed(int8_tArray payment_id, int8_tArray payment_hash, jboolean rejected_by_dest, uint32_t network_update, jboolean all_paths_failed, uint32_tArray path, uint32_t short_channel_id, uint32_t retry) { - LDKThirtyTwoBytes payment_id_ref; - CHECK(*((uint32_t*)payment_id) == 32); - memcpy(payment_id_ref.data, (uint8_t*)(payment_id + 4), 32); - LDKThirtyTwoBytes payment_hash_ref; - CHECK(*((uint32_t*)payment_hash) == 32); - memcpy(payment_hash_ref.data, (uint8_t*)(payment_hash + 4), 32); - void* network_update_ptr = (void*)(((uint64_t)network_update) & ~1); - CHECK_ACCESS(network_update_ptr); - LDKCOption_NetworkUpdateZ network_update_conv = *(LDKCOption_NetworkUpdateZ*)(network_update_ptr); - network_update_conv = COption_NetworkUpdateZ_clone((LDKCOption_NetworkUpdateZ*)(((uint64_t)network_update) & ~1)); - LDKCVec_RouteHopZ path_constr; - path_constr.datalen = *((uint32_t*)path); - if (path_constr.datalen > 0) - path_constr.data = MALLOC(path_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); - else - path_constr.data = NULL; - uint32_t* path_vals = (uint32_t*)(path + 4); - for (size_t k = 0; k < path_constr.datalen; k++) { - uint32_t path_conv_10 = path_vals[k]; - LDKRouteHop path_conv_10_conv; - path_conv_10_conv.inner = (void*)(path_conv_10 & (~1)); - path_conv_10_conv.is_owned = (path_conv_10 & 1) || (path_conv_10 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_conv); - path_conv_10_conv = RouteHop_clone(&path_conv_10_conv); - path_constr.data[k] = path_conv_10_conv; - } - void* short_channel_id_ptr = (void*)(((uint64_t)short_channel_id) & ~1); - CHECK_ACCESS(short_channel_id_ptr); - LDKCOption_u64Z short_channel_id_conv = *(LDKCOption_u64Z*)(short_channel_id_ptr); - short_channel_id_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)short_channel_id) & ~1)); - LDKRouteParameters retry_conv; - retry_conv.inner = (void*)(retry & (~1)); - retry_conv.is_owned = (retry & 1) || (retry == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(retry_conv); - retry_conv = RouteParameters_clone(&retry_conv); - LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_copy = Event_payment_path_failed(payment_id_ref, payment_hash_ref, rejected_by_dest, network_update_conv, all_paths_failed, path_constr, short_channel_id_conv, retry_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_ReplyChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyChannelRangeDecodeErrorZ), "LDKCResult_ReplyChannelRangeDecodeErrorZ"); + *ret_conv = CResult_ReplyChannelRangeDecodeErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Event_payment_failed(int8_tArray payment_id, int8_tArray payment_hash) { - LDKThirtyTwoBytes payment_id_ref; - CHECK(*((uint32_t*)payment_id) == 32); - memcpy(payment_id_ref.data, (uint8_t*)(payment_id + 4), 32); - LDKThirtyTwoBytes payment_hash_ref; - CHECK(*((uint32_t*)payment_hash) == 32); - memcpy(payment_hash_ref.data, (uint8_t*)(payment_hash + 4), 32); - LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_copy = Event_payment_failed(payment_id_ref, payment_hash_ref); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +jboolean __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_ReplyChannelRangeDecodeErrorZ* o_conv = (LDKCResult_ReplyChannelRangeDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_ReplyChannelRangeDecodeErrorZ_is_ok(o_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Event_pending_htlcs_forwardable(int64_t time_forwardable) { - LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_copy = Event_pending_htlcs_forwardable(time_forwardable); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_ReplyChannelRangeDecodeErrorZ _res_conv = *(LDKCResult_ReplyChannelRangeDecodeErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_ReplyChannelRangeDecodeErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_Event_spendable_outputs(uint32_tArray outputs) { - LDKCVec_SpendableOutputDescriptorZ outputs_constr; - outputs_constr.datalen = *((uint32_t*)outputs); - if (outputs_constr.datalen > 0) - outputs_constr.data = MALLOC(outputs_constr.datalen * sizeof(LDKSpendableOutputDescriptor), "LDKCVec_SpendableOutputDescriptorZ Elements"); - else - outputs_constr.data = NULL; - uint32_t* outputs_vals = (uint32_t*)(outputs + 4); - for (size_t b = 0; b < outputs_constr.datalen; b++) { - uint32_t outputs_conv_27 = outputs_vals[b]; - void* outputs_conv_27_ptr = (void*)(((uint64_t)outputs_conv_27) & ~1); - CHECK_ACCESS(outputs_conv_27_ptr); - LDKSpendableOutputDescriptor outputs_conv_27_conv = *(LDKSpendableOutputDescriptor*)(outputs_conv_27_ptr); - outputs_conv_27_conv = SpendableOutputDescriptor_clone((LDKSpendableOutputDescriptor*)(((uint64_t)outputs_conv_27) & ~1)); - outputs_constr.data[b] = outputs_conv_27_conv; - } - LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_copy = Event_spendable_outputs(outputs_constr); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +static inline uint64_t CResult_ReplyChannelRangeDecodeErrorZ_clone_ptr(LDKCResult_ReplyChannelRangeDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_ReplyChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyChannelRangeDecodeErrorZ), "LDKCResult_ReplyChannelRangeDecodeErrorZ"); + *ret_conv = CResult_ReplyChannelRangeDecodeErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_ReplyChannelRangeDecodeErrorZ* arg_conv = (LDKCResult_ReplyChannelRangeDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_ReplyChannelRangeDecodeErrorZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Event_payment_forwarded(uint32_t fee_earned_msat, jboolean claim_from_onchain_tx) { - void* fee_earned_msat_ptr = (void*)(((uint64_t)fee_earned_msat) & ~1); - CHECK_ACCESS(fee_earned_msat_ptr); - LDKCOption_u64Z fee_earned_msat_conv = *(LDKCOption_u64Z*)(fee_earned_msat_ptr); - fee_earned_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)fee_earned_msat) & ~1)); - LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_copy = Event_payment_forwarded(fee_earned_msat_conv, claim_from_onchain_tx); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_ReplyChannelRangeDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_ReplyChannelRangeDecodeErrorZ* orig_conv = (LDKCResult_ReplyChannelRangeDecodeErrorZ*)(orig & ~1); + LDKCResult_ReplyChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyChannelRangeDecodeErrorZ), "LDKCResult_ReplyChannelRangeDecodeErrorZ"); + *ret_conv = CResult_ReplyChannelRangeDecodeErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Event_channel_closed(int8_tArray channel_id, int64_t user_channel_id, uint32_t reason) { - LDKThirtyTwoBytes channel_id_ref; - CHECK(*((uint32_t*)channel_id) == 32); - memcpy(channel_id_ref.data, (uint8_t*)(channel_id + 4), 32); - void* reason_ptr = (void*)(((uint64_t)reason) & ~1); - CHECK_ACCESS(reason_ptr); - LDKClosureReason reason_conv = *(LDKClosureReason*)(reason_ptr); - reason_conv = ClosureReason_clone((LDKClosureReason*)(((uint64_t)reason) & ~1)); - LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_copy = Event_channel_closed(channel_id_ref, user_channel_id, reason_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_ok(uint32_t o) { + LDKGossipTimestampFilter o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = GossipTimestampFilter_clone(&o_conv); + LDKCResult_GossipTimestampFilterDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_GossipTimestampFilterDecodeErrorZ), "LDKCResult_GossipTimestampFilterDecodeErrorZ"); + *ret_conv = CResult_GossipTimestampFilterDecodeErrorZ_ok(o_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Event_discard_funding(int8_tArray channel_id, int8_tArray transaction) { - LDKThirtyTwoBytes channel_id_ref; - CHECK(*((uint32_t*)channel_id) == 32); - memcpy(channel_id_ref.data, (uint8_t*)(channel_id + 4), 32); - LDKTransaction transaction_ref; - transaction_ref.datalen = *((uint32_t*)transaction); - transaction_ref.data = MALLOC(transaction_ref.datalen, "LDKTransaction Bytes"); - memcpy(transaction_ref.data, (uint8_t*)(transaction + 4), transaction_ref.datalen); - transaction_ref.data_is_owned = true; - LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_copy = Event_discard_funding(channel_id_ref, transaction_ref); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_GossipTimestampFilterDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_GossipTimestampFilterDecodeErrorZ), "LDKCResult_GossipTimestampFilterDecodeErrorZ"); + *ret_conv = CResult_GossipTimestampFilterDecodeErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Event_payment_path_successful(int8_tArray payment_id, int8_tArray payment_hash, uint32_tArray path) { - LDKThirtyTwoBytes payment_id_ref; - CHECK(*((uint32_t*)payment_id) == 32); - memcpy(payment_id_ref.data, (uint8_t*)(payment_id + 4), 32); - LDKThirtyTwoBytes payment_hash_ref; - CHECK(*((uint32_t*)payment_hash) == 32); - memcpy(payment_hash_ref.data, (uint8_t*)(payment_hash + 4), 32); - LDKCVec_RouteHopZ path_constr; - path_constr.datalen = *((uint32_t*)path); - if (path_constr.datalen > 0) - path_constr.data = MALLOC(path_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); - else - path_constr.data = NULL; - uint32_t* path_vals = (uint32_t*)(path + 4); - for (size_t k = 0; k < path_constr.datalen; k++) { - uint32_t path_conv_10 = path_vals[k]; - LDKRouteHop path_conv_10_conv; - path_conv_10_conv.inner = (void*)(path_conv_10 & (~1)); - path_conv_10_conv.is_owned = (path_conv_10 & 1) || (path_conv_10 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_conv); - path_conv_10_conv = RouteHop_clone(&path_conv_10_conv); - path_constr.data[k] = path_conv_10_conv; - } - LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_copy = Event_payment_path_successful(payment_id_ref, payment_hash_ref, path_constr); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +jboolean __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_GossipTimestampFilterDecodeErrorZ* o_conv = (LDKCResult_GossipTimestampFilterDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_GossipTimestampFilterDecodeErrorZ_is_ok(o_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_Event_write(uint32_t obj) { - LDKEvent* obj_conv = (LDKEvent*)obj; - LDKCVec_u8Z ret_var = Event_write(obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +void __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_GossipTimestampFilterDecodeErrorZ _res_conv = *(LDKCResult_GossipTimestampFilterDecodeErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_GossipTimestampFilterDecodeErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_Event_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_COption_EventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_EventZDecodeErrorZ), "LDKCResult_COption_EventZDecodeErrorZ"); - *ret_conv = Event_read(ser_ref); +static inline uint64_t CResult_GossipTimestampFilterDecodeErrorZ_clone_ptr(LDKCResult_GossipTimestampFilterDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_GossipTimestampFilterDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_GossipTimestampFilterDecodeErrorZ), "LDKCResult_GossipTimestampFilterDecodeErrorZ"); + *ret_conv = CResult_GossipTimestampFilterDecodeErrorZ_clone(arg); return (uint64_t)ret_conv; } - -void __attribute__((visibility("default"))) TS_MessageSendEvent_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKMessageSendEvent this_ptr_conv = *(LDKMessageSendEvent*)(this_ptr_ptr); - FREE((void*)this_ptr); - MessageSendEvent_free(this_ptr_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_GossipTimestampFilterDecodeErrorZ* arg_conv = (LDKCResult_GossipTimestampFilterDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_GossipTimestampFilterDecodeErrorZ_clone_ptr(arg_conv); + return ret_val; } -static inline uint64_t MessageSendEvent_clone_ptr(LDKMessageSendEvent *NONNULL_PTR arg) { - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_GossipTimestampFilterDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_GossipTimestampFilterDecodeErrorZ* orig_conv = (LDKCResult_GossipTimestampFilterDecodeErrorZ*)(orig & ~1); + LDKCResult_GossipTimestampFilterDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_GossipTimestampFilterDecodeErrorZ), "LDKCResult_GossipTimestampFilterDecodeErrorZ"); + *ret_conv = CResult_GossipTimestampFilterDecodeErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_MessageSendEvent_clone_ptr(uint32_t arg) { - LDKMessageSendEvent* arg_conv = (LDKMessageSendEvent*)arg; - int64_t ret_val = MessageSendEvent_clone_ptr(arg_conv); - return ret_val; + +uint32_t __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_ok(uint32_t o) { + LDKDelayedPaymentOutputDescriptor o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = DelayedPaymentOutputDescriptor_clone(&o_conv); + LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ"); + *ret_conv = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_ok(o_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_clone(uint32_t orig) { - LDKMessageSendEvent* orig_conv = (LDKMessageSendEvent*)orig; - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ"); + *ret_conv = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_accept_channel(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKAcceptChannel msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = AcceptChannel_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_accept_channel(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +jboolean __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* o_conv = (LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_is_ok(o_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_open_channel(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKOpenChannel msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = OpenChannel_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_open_channel(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ _res_conv = *(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_funding_created(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKFundingCreated msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = FundingCreated_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_funding_created(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +static inline uint64_t CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone_ptr(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ"); + *ret_conv = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* arg_conv = (LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_funding_signed(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKFundingSigned msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = FundingSigned_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_funding_signed(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* orig_conv = (LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ*)(orig & ~1); + LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ"); + *ret_conv = CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_funding_locked(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKFundingLocked msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = FundingLocked_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_funding_locked(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_ok(uint32_t o) { + LDKStaticPaymentOutputDescriptor o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = StaticPaymentOutputDescriptor_clone(&o_conv); + LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ"); + *ret_conv = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_ok(o_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_announcement_signatures(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKAnnouncementSignatures msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = AnnouncementSignatures_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_announcement_signatures(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ"); + *ret_conv = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_update_htlcs(int8_tArray node_id, uint32_t updates) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKCommitmentUpdate updates_conv; - updates_conv.inner = (void*)(updates & (~1)); - updates_conv.is_owned = (updates & 1) || (updates == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(updates_conv); - updates_conv = CommitmentUpdate_clone(&updates_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_update_htlcs(node_id_ref, updates_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +jboolean __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* o_conv = (LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_is_ok(o_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_revoke_and_ack(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKRevokeAndACK msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = RevokeAndACK_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_revoke_and_ack(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ _res_conv = *(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_StaticPaymentOutputDescriptorDecodeErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_closing_signed(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKClosingSigned msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = ClosingSigned_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_closing_signed(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +static inline uint64_t CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone_ptr(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ"); + *ret_conv = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* arg_conv = (LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_shutdown(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKShutdown msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = Shutdown_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_shutdown(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* orig_conv = (LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ*)(orig & ~1); + LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ"); + *ret_conv = CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_channel_reestablish(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKChannelReestablish msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = ChannelReestablish_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_channel_reestablish(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKSpendableOutputDescriptor o_conv = *(LDKSpendableOutputDescriptor*)(o_ptr); + o_conv = SpendableOutputDescriptor_clone((LDKSpendableOutputDescriptor*)(((uint64_t)o) & ~1)); + LDKCResult_SpendableOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpendableOutputDescriptorDecodeErrorZ), "LDKCResult_SpendableOutputDescriptorDecodeErrorZ"); + *ret_conv = CResult_SpendableOutputDescriptorDecodeErrorZ_ok(o_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_broadcast_channel_announcement(uint32_t msg, uint32_t update_msg) { - LDKChannelAnnouncement msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = ChannelAnnouncement_clone(&msg_conv); - LDKChannelUpdate update_msg_conv; - update_msg_conv.inner = (void*)(update_msg & (~1)); - update_msg_conv.is_owned = (update_msg & 1) || (update_msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_msg_conv); - update_msg_conv = ChannelUpdate_clone(&update_msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_broadcast_channel_announcement(msg_conv, update_msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_SpendableOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpendableOutputDescriptorDecodeErrorZ), "LDKCResult_SpendableOutputDescriptorDecodeErrorZ"); + *ret_conv = CResult_SpendableOutputDescriptorDecodeErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_broadcast_node_announcement(uint32_t msg) { - LDKNodeAnnouncement msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = NodeAnnouncement_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_broadcast_node_announcement(msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +jboolean __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_SpendableOutputDescriptorDecodeErrorZ* o_conv = (LDKCResult_SpendableOutputDescriptorDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_SpendableOutputDescriptorDecodeErrorZ_is_ok(o_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_broadcast_channel_update(uint32_t msg) { - LDKChannelUpdate msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = ChannelUpdate_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_broadcast_channel_update(msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_SpendableOutputDescriptorDecodeErrorZ _res_conv = *(LDKCResult_SpendableOutputDescriptorDecodeErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_SpendableOutputDescriptorDecodeErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_channel_update(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKChannelUpdate msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = ChannelUpdate_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_channel_update(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +static inline uint64_t CResult_SpendableOutputDescriptorDecodeErrorZ_clone_ptr(LDKCResult_SpendableOutputDescriptorDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_SpendableOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpendableOutputDescriptorDecodeErrorZ), "LDKCResult_SpendableOutputDescriptorDecodeErrorZ"); + *ret_conv = CResult_SpendableOutputDescriptorDecodeErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_SpendableOutputDescriptorDecodeErrorZ* arg_conv = (LDKCResult_SpendableOutputDescriptorDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_SpendableOutputDescriptorDecodeErrorZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_handle_error(int8_tArray node_id, uint32_t action) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - void* action_ptr = (void*)(((uint64_t)action) & ~1); - CHECK_ACCESS(action_ptr); - LDKErrorAction action_conv = *(LDKErrorAction*)(action_ptr); - action_conv = ErrorAction_clone((LDKErrorAction*)(((uint64_t)action) & ~1)); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_handle_error(node_id_ref, action_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_SpendableOutputDescriptorDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_SpendableOutputDescriptorDecodeErrorZ* orig_conv = (LDKCResult_SpendableOutputDescriptorDecodeErrorZ*)(orig & ~1); + LDKCResult_SpendableOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpendableOutputDescriptorDecodeErrorZ), "LDKCResult_SpendableOutputDescriptorDecodeErrorZ"); + *ret_conv = CResult_SpendableOutputDescriptorDecodeErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_channel_range_query(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKQueryChannelRange msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = QueryChannelRange_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_channel_range_query(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +static inline uint64_t C2Tuple_SignatureCVec_SignatureZZ_clone_ptr(LDKC2Tuple_SignatureCVec_SignatureZZ *NONNULL_PTR arg) { + LDKC2Tuple_SignatureCVec_SignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_SignatureCVec_SignatureZZ), "LDKC2Tuple_SignatureCVec_SignatureZZ"); + *ret_conv = C2Tuple_SignatureCVec_SignatureZZ_clone(arg); + return ((uint64_t)ret_conv); +} +int64_t __attribute__((visibility("default"))) TS_C2Tuple_SignatureCVec_SignatureZZ_clone_ptr(uint32_t arg) { + LDKC2Tuple_SignatureCVec_SignatureZZ* arg_conv = (LDKC2Tuple_SignatureCVec_SignatureZZ*)(arg & ~1); + int64_t ret_val = C2Tuple_SignatureCVec_SignatureZZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_short_ids_query(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKQueryShortChannelIds msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = QueryShortChannelIds_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_short_ids_query(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_SignatureCVec_SignatureZZ_clone(uint32_t orig) { + LDKC2Tuple_SignatureCVec_SignatureZZ* orig_conv = (LDKC2Tuple_SignatureCVec_SignatureZZ*)(orig & ~1); + LDKC2Tuple_SignatureCVec_SignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_SignatureCVec_SignatureZZ), "LDKC2Tuple_SignatureCVec_SignatureZZ"); + *ret_conv = C2Tuple_SignatureCVec_SignatureZZ_clone(orig_conv); + return ((uint64_t)ret_conv); } -uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_reply_channel_range(int8_tArray node_id, uint32_t msg) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKReplyChannelRange msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = ReplyChannelRange_clone(&msg_conv); - LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); - *ret_copy = MessageSendEvent_send_reply_channel_range(node_id_ref, msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_SignatureCVec_SignatureZZ_new(int8_tArray a, ptrArray b) { + LDKSignature a_ref; + CHECK(a->arr_len == 64); + memcpy(a_ref.compact_form, a->elems, 64); + LDKCVec_SignatureZ b_constr; + b_constr.datalen = b->arr_len; + if (b_constr.datalen > 0) + b_constr.data = MALLOC(b_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); + else + b_constr.data = NULL; + int8_tArray* b_vals = (void*) b->elems; + for (size_t m = 0; m < b_constr.datalen; m++) { + int8_tArray b_conv_12 = b_vals[m]; + LDKSignature b_conv_12_ref; + CHECK(b_conv_12->arr_len == 64); + memcpy(b_conv_12_ref.compact_form, b_conv_12->elems, 64); + b_constr.data[m] = b_conv_12_ref; + } + LDKC2Tuple_SignatureCVec_SignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_SignatureCVec_SignatureZZ), "LDKC2Tuple_SignatureCVec_SignatureZZ"); + *ret_conv = C2Tuple_SignatureCVec_SignatureZZ_new(a_ref, b_constr); + return ((uint64_t)ret_conv); } -void __attribute__((visibility("default"))) TS_MessageSendEventsProvider_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKMessageSendEventsProvider this_ptr_conv = *(LDKMessageSendEventsProvider*)(this_ptr_ptr); - FREE((void*)this_ptr); - MessageSendEventsProvider_free(this_ptr_conv); +void __attribute__((visibility("default"))) TS_C2Tuple_SignatureCVec_SignatureZZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKC2Tuple_SignatureCVec_SignatureZZ _res_conv = *(LDKC2Tuple_SignatureCVec_SignatureZZ*)(_res_ptr); + FREE((void*)_res); + C2Tuple_SignatureCVec_SignatureZZ_free(_res_conv); } -void __attribute__((visibility("default"))) TS_EventsProvider_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKEventsProvider this_ptr_conv = *(LDKEventsProvider*)(this_ptr_ptr); - FREE((void*)this_ptr); - EventsProvider_free(this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKC2Tuple_SignatureCVec_SignatureZZ o_conv = *(LDKC2Tuple_SignatureCVec_SignatureZZ*)(o_ptr); + o_conv = C2Tuple_SignatureCVec_SignatureZZ_clone((LDKC2Tuple_SignatureCVec_SignatureZZ*)(((uint64_t)o) & ~1)); + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ), "LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ"); + *ret_conv = CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_ok(o_conv); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_EventHandler_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKEventHandler this_ptr_conv = *(LDKEventHandler*)(this_ptr_ptr); - FREE((void*)this_ptr); - EventHandler_free(this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_err() { + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ), "LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ"); + *ret_conv = CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_err(); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_APIError_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKAPIError this_ptr_conv = *(LDKAPIError*)(this_ptr_ptr); - FREE((void*)this_ptr); - APIError_free(this_ptr_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_is_ok(uint32_t o) { + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* o_conv = (LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(o & ~1); + jboolean ret_val = CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_is_ok(o_conv); + return ret_val; } -static inline uint64_t APIError_clone_ptr(LDKAPIError *NONNULL_PTR arg) { - LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); - *ret_copy = APIError_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ _res_conv = *(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(_res_ptr); + FREE((void*)_res); + CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_free(_res_conv); } -int64_t __attribute__((visibility("default"))) TS_APIError_clone_ptr(uint32_t arg) { - LDKAPIError* arg_conv = (LDKAPIError*)arg; - int64_t ret_val = APIError_clone_ptr(arg_conv); + +static inline uint64_t CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone_ptr(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ *NONNULL_PTR arg) { + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ), "LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ"); + *ret_conv = CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone_ptr(uint32_t arg) { + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* arg_conv = (LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(arg & ~1); + int64_t ret_val = CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_APIError_clone(uint32_t orig) { - LDKAPIError* orig_conv = (LDKAPIError*)orig; - LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); - *ret_copy = APIError_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone(uint32_t orig) { + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* orig_conv = (LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ*)(orig & ~1); + LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ), "LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ"); + *ret_conv = CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_APIError_apimisuse_error(jstring err) { - LDKStr err_conv = str_ref_to_owned_c(err); - LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); - *ret_copy = APIError_apimisuse_error(err_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_ok(int8_tArray o) { + LDKSignature o_ref; + CHECK(o->arr_len == 64); + memcpy(o_ref.compact_form, o->elems, 64); + LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); + *ret_conv = CResult_SignatureNoneZ_ok(o_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_APIError_fee_rate_too_high(jstring err, int32_t feerate) { - LDKStr err_conv = str_ref_to_owned_c(err); - LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); - *ret_copy = APIError_fee_rate_too_high(err_conv, feerate); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_err() { + LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); + *ret_conv = CResult_SignatureNoneZ_err(); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_APIError_route_error(jstring err) { - LDKStr err_conv = str_ref_to_owned_c(err); - LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); - *ret_copy = APIError_route_error(err_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +jboolean __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_is_ok(uint32_t o) { + LDKCResult_SignatureNoneZ* o_conv = (LDKCResult_SignatureNoneZ*)(o & ~1); + jboolean ret_val = CResult_SignatureNoneZ_is_ok(o_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_APIError_channel_unavailable(jstring err) { - LDKStr err_conv = str_ref_to_owned_c(err); - LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); - *ret_copy = APIError_channel_unavailable(err_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_SignatureNoneZ _res_conv = *(LDKCResult_SignatureNoneZ*)(_res_ptr); + FREE((void*)_res); + CResult_SignatureNoneZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_APIError_monitor_update_failed() { - LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); - *ret_copy = APIError_monitor_update_failed(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +static inline uint64_t CResult_SignatureNoneZ_clone_ptr(LDKCResult_SignatureNoneZ *NONNULL_PTR arg) { + LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); + *ret_conv = CResult_SignatureNoneZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_clone_ptr(uint32_t arg) { + LDKCResult_SignatureNoneZ* arg_conv = (LDKCResult_SignatureNoneZ*)(arg & ~1); + int64_t ret_val = CResult_SignatureNoneZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_APIError_incompatible_shutdown_script(uint32_t script) { - LDKShutdownScript script_conv; - script_conv.inner = (void*)(script & (~1)); - script_conv.is_owned = (script & 1) || (script == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(script_conv); - script_conv = ShutdownScript_clone(&script_conv); - LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); - *ret_copy = APIError_incompatible_shutdown_script(script_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_SignatureNoneZ_clone(uint32_t orig) { + LDKCResult_SignatureNoneZ* orig_conv = (LDKCResult_SignatureNoneZ*)(orig & ~1); + LDKCResult_SignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignatureNoneZ), "LDKCResult_SignatureNoneZ"); + *ret_conv = CResult_SignatureNoneZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_sign(int8_tArray msg, int8_tArray sk) { - LDKu8slice msg_ref; - msg_ref.datalen = *((uint32_t*)msg); - msg_ref.data = (int8_t*)(msg + 4); - unsigned char sk_arr[32]; - CHECK(*((uint32_t*)sk) == 32); - memcpy(sk_arr, (uint8_t*)(sk + 4), 32); - unsigned char (*sk_ref)[32] = &sk_arr; - LDKCResult_StringErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StringErrorZ), "LDKCResult_StringErrorZ"); - *ret_conv = sign(msg_ref, sk_ref); +uint32_t __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKSign o_conv = *(LDKSign*)(o_ptr); + LDKCResult_SignDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SignDecodeErrorZ), "LDKCResult_SignDecodeErrorZ"); + *ret_conv = CResult_SignDecodeErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_recover_pk(int8_tArray msg, jstring sig) { - LDKu8slice msg_ref; - msg_ref.datalen = *((uint32_t*)msg); - msg_ref.data = (int8_t*)(msg + 4); - LDKStr sig_conv = str_ref_to_owned_c(sig); - LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); - *ret_conv = recover_pk(msg_ref, sig_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_SignDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SignDecodeErrorZ), "LDKCResult_SignDecodeErrorZ"); + *ret_conv = CResult_SignDecodeErrorZ_err(e_conv); return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_verify(int8_tArray msg, jstring sig, int8_tArray pk) { - LDKu8slice msg_ref; - msg_ref.datalen = *((uint32_t*)msg); - msg_ref.data = (int8_t*)(msg + 4); - LDKStr sig_conv = str_ref_to_owned_c(sig); - LDKPublicKey pk_ref; - CHECK(*((uint32_t*)pk) == 33); - memcpy(pk_ref.compressed_form, (uint8_t*)(pk + 4), 33); - jboolean ret_val = verify(msg_ref, sig_conv, pk_ref); +jboolean __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_SignDecodeErrorZ* o_conv = (LDKCResult_SignDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_SignDecodeErrorZ_is_ok(o_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Level_clone(uint32_t orig) { - LDKLevel* orig_conv = (LDKLevel*)(orig & ~1); - uint32_t ret_conv = LDKLevel_to_js(Level_clone(orig_conv)); - return ret_conv; +void __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_SignDecodeErrorZ _res_conv = *(LDKCResult_SignDecodeErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_SignDecodeErrorZ_free(_res_conv); +} + +static inline uint64_t CResult_SignDecodeErrorZ_clone_ptr(LDKCResult_SignDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_SignDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SignDecodeErrorZ), "LDKCResult_SignDecodeErrorZ"); + *ret_conv = CResult_SignDecodeErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_SignDecodeErrorZ* arg_conv = (LDKCResult_SignDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_SignDecodeErrorZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Level_gossip() { - uint32_t ret_conv = LDKLevel_to_js(Level_gossip()); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_SignDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_SignDecodeErrorZ* orig_conv = (LDKCResult_SignDecodeErrorZ*)(orig & ~1); + LDKCResult_SignDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SignDecodeErrorZ), "LDKCResult_SignDecodeErrorZ"); + *ret_conv = CResult_SignDecodeErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Level_trace() { - uint32_t ret_conv = LDKLevel_to_js(Level_trace()); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_ok(int8_tArray arg) { + LDKRecoverableSignature arg_ref; + CHECK(arg->arr_len == 68); + memcpy(arg_ref.serialized_form, arg->elems, 68); + LDKCResult_RecoverableSignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_RecoverableSignatureNoneZ), "LDKCResult_RecoverableSignatureNoneZ"); + *ret_conv = CResult_RecoverableSignatureNoneZ_ok(arg_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Level_debug() { - uint32_t ret_conv = LDKLevel_to_js(Level_debug()); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_err() { + LDKCResult_RecoverableSignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_RecoverableSignatureNoneZ), "LDKCResult_RecoverableSignatureNoneZ"); + *ret_conv = CResult_RecoverableSignatureNoneZ_err(); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Level_info() { - uint32_t ret_conv = LDKLevel_to_js(Level_info()); - return ret_conv; +jboolean __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_is_ok(uint32_t o) { + LDKCResult_RecoverableSignatureNoneZ* o_conv = (LDKCResult_RecoverableSignatureNoneZ*)(o & ~1); + jboolean ret_val = CResult_RecoverableSignatureNoneZ_is_ok(o_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Level_warn() { - uint32_t ret_conv = LDKLevel_to_js(Level_warn()); - return ret_conv; +void __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_RecoverableSignatureNoneZ _res_conv = *(LDKCResult_RecoverableSignatureNoneZ*)(_res_ptr); + FREE((void*)_res); + CResult_RecoverableSignatureNoneZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_Level_error() { - uint32_t ret_conv = LDKLevel_to_js(Level_error()); - return ret_conv; +static inline uint64_t CResult_RecoverableSignatureNoneZ_clone_ptr(LDKCResult_RecoverableSignatureNoneZ *NONNULL_PTR arg) { + LDKCResult_RecoverableSignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_RecoverableSignatureNoneZ), "LDKCResult_RecoverableSignatureNoneZ"); + *ret_conv = CResult_RecoverableSignatureNoneZ_clone(arg); + return (uint64_t)ret_conv; } - -jboolean __attribute__((visibility("default"))) TS_Level_eq(uint32_t a, uint32_t b) { - LDKLevel* a_conv = (LDKLevel*)(a & ~1); - LDKLevel* b_conv = (LDKLevel*)(b & ~1); - jboolean ret_val = Level_eq(a_conv, b_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_clone_ptr(uint32_t arg) { + LDKCResult_RecoverableSignatureNoneZ* arg_conv = (LDKCResult_RecoverableSignatureNoneZ*)(arg & ~1); + int64_t ret_val = CResult_RecoverableSignatureNoneZ_clone_ptr(arg_conv); return ret_val; } -int64_t __attribute__((visibility("default"))) TS_Level_hash(uint32_t o) { - LDKLevel* o_conv = (LDKLevel*)(o & ~1); - int64_t ret_val = Level_hash(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult_RecoverableSignatureNoneZ_clone(uint32_t orig) { + LDKCResult_RecoverableSignatureNoneZ* orig_conv = (LDKCResult_RecoverableSignatureNoneZ*)(orig & ~1); + LDKCResult_RecoverableSignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_RecoverableSignatureNoneZ), "LDKCResult_RecoverableSignatureNoneZ"); + *ret_conv = CResult_RecoverableSignatureNoneZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Level_max() { - uint32_t ret_conv = LDKLevel_to_js(Level_max()); - return ret_conv; +void __attribute__((visibility("default"))) TS_CVec_CVec_u8ZZ_free(ptrArray _res) { + LDKCVec_CVec_u8ZZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKCVec_u8Z), "LDKCVec_CVec_u8ZZ Elements"); + else + _res_constr.data = NULL; + int8_tArray* _res_vals = (void*) _res->elems; + for (size_t m = 0; m < _res_constr.datalen; m++) { + int8_tArray _res_conv_12 = _res_vals[m]; + LDKCVec_u8Z _res_conv_12_ref; + _res_conv_12_ref.datalen = _res_conv_12->arr_len; + _res_conv_12_ref.data = MALLOC(_res_conv_12_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(_res_conv_12_ref.data, _res_conv_12->elems, _res_conv_12_ref.datalen); + _res_constr.data[m] = _res_conv_12_ref; + } + CVec_CVec_u8ZZ_free(_res_constr); } -void __attribute__((visibility("default"))) TS_Record_free(uint32_t this_obj) { - LDKRecord this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - Record_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_ok(ptrArray o) { + LDKCVec_CVec_u8ZZ o_constr; + o_constr.datalen = o->arr_len; + if (o_constr.datalen > 0) + o_constr.data = MALLOC(o_constr.datalen * sizeof(LDKCVec_u8Z), "LDKCVec_CVec_u8ZZ Elements"); + else + o_constr.data = NULL; + int8_tArray* o_vals = (void*) o->elems; + for (size_t m = 0; m < o_constr.datalen; m++) { + int8_tArray o_conv_12 = o_vals[m]; + LDKCVec_u8Z o_conv_12_ref; + o_conv_12_ref.datalen = o_conv_12->arr_len; + o_conv_12_ref.data = MALLOC(o_conv_12_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(o_conv_12_ref.data, o_conv_12->elems, o_conv_12_ref.datalen); + o_constr.data[m] = o_conv_12_ref; + } + LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ"); + *ret_conv = CResult_CVec_CVec_u8ZZNoneZ_ok(o_constr); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Record_get_level(uint32_t this_ptr) { - LDKRecord this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - uint32_t ret_conv = LDKLevel_to_js(Record_get_level(&this_ptr_conv)); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_err() { + LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ"); + *ret_conv = CResult_CVec_CVec_u8ZZNoneZ_err(); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_Record_set_level(uint32_t this_ptr, uint32_t val) { - LDKRecord this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKLevel val_conv = LDKLevel_from_js(val); - Record_set_level(&this_ptr_conv, val_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_is_ok(uint32_t o) { + LDKCResult_CVec_CVec_u8ZZNoneZ* o_conv = (LDKCResult_CVec_CVec_u8ZZNoneZ*)(o & ~1); + jboolean ret_val = CResult_CVec_CVec_u8ZZNoneZ_is_ok(o_conv); + return ret_val; } -jstring __attribute__((visibility("default"))) TS_Record_get_args(uint32_t this_ptr) { - LDKRecord this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKStr ret_str = Record_get_args(&this_ptr_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; +void __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_CVec_CVec_u8ZZNoneZ _res_conv = *(LDKCResult_CVec_CVec_u8ZZNoneZ*)(_res_ptr); + FREE((void*)_res); + CResult_CVec_CVec_u8ZZNoneZ_free(_res_conv); } -void __attribute__((visibility("default"))) TS_Record_set_args(uint32_t this_ptr, jstring val) { - LDKRecord this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKStr val_conv = str_ref_to_owned_c(val); - Record_set_args(&this_ptr_conv, val_conv); +static inline uint64_t CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR arg) { + LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ"); + *ret_conv = CResult_CVec_CVec_u8ZZNoneZ_clone(arg); + return (uint64_t)ret_conv; } - -jstring __attribute__((visibility("default"))) TS_Record_get_module_path(uint32_t this_ptr) { - LDKRecord this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKStr ret_str = Record_get_module_path(&this_ptr_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; +int64_t __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(uint32_t arg) { + LDKCResult_CVec_CVec_u8ZZNoneZ* arg_conv = (LDKCResult_CVec_CVec_u8ZZNoneZ*)(arg & ~1); + int64_t ret_val = CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(arg_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_Record_set_module_path(uint32_t this_ptr, jstring val) { - LDKRecord this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKStr val_conv = str_ref_to_owned_c(val); - Record_set_module_path(&this_ptr_conv, val_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_CVec_CVec_u8ZZNoneZ_clone(uint32_t orig) { + LDKCResult_CVec_CVec_u8ZZNoneZ* orig_conv = (LDKCResult_CVec_CVec_u8ZZNoneZ*)(orig & ~1); + LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ"); + *ret_conv = CResult_CVec_CVec_u8ZZNoneZ_clone(orig_conv); + return (uint64_t)ret_conv; } -jstring __attribute__((visibility("default"))) TS_Record_get_file(uint32_t this_ptr) { - LDKRecord this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKStr ret_str = Record_get_file(&this_ptr_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_ok(uint32_t o) { + LDKInMemorySigner o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + o_conv = InMemorySigner_clone(&o_conv); + LDKCResult_InMemorySignerDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InMemorySignerDecodeErrorZ), "LDKCResult_InMemorySignerDecodeErrorZ"); + *ret_conv = CResult_InMemorySignerDecodeErrorZ_ok(o_conv); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_Record_set_file(uint32_t this_ptr, jstring val) { - LDKRecord this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKStr val_conv = str_ref_to_owned_c(val); - Record_set_file(&this_ptr_conv, val_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_InMemorySignerDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InMemorySignerDecodeErrorZ), "LDKCResult_InMemorySignerDecodeErrorZ"); + *ret_conv = CResult_InMemorySignerDecodeErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -int32_t __attribute__((visibility("default"))) TS_Record_get_line(uint32_t this_ptr) { - LDKRecord this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = Record_get_line(&this_ptr_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_InMemorySignerDecodeErrorZ* o_conv = (LDKCResult_InMemorySignerDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_InMemorySignerDecodeErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_Record_set_line(uint32_t this_ptr, int32_t val) { - LDKRecord this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - Record_set_line(&this_ptr_conv, val); +void __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_InMemorySignerDecodeErrorZ _res_conv = *(LDKCResult_InMemorySignerDecodeErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_InMemorySignerDecodeErrorZ_free(_res_conv); } -static inline uint64_t Record_clone_ptr(LDKRecord *NONNULL_PTR arg) { - LDKRecord ret_var = Record_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; +static inline uint64_t CResult_InMemorySignerDecodeErrorZ_clone_ptr(LDKCResult_InMemorySignerDecodeErrorZ *NONNULL_PTR arg) { + LDKCResult_InMemorySignerDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InMemorySignerDecodeErrorZ), "LDKCResult_InMemorySignerDecodeErrorZ"); + *ret_conv = CResult_InMemorySignerDecodeErrorZ_clone(arg); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_Record_clone_ptr(uint32_t arg) { - LDKRecord arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = Record_clone_ptr(&arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_InMemorySignerDecodeErrorZ* arg_conv = (LDKCResult_InMemorySignerDecodeErrorZ*)(arg & ~1); + int64_t ret_val = CResult_InMemorySignerDecodeErrorZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Record_clone(uint32_t orig) { - LDKRecord orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKRecord ret_var = Record_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_CResult_InMemorySignerDecodeErrorZ_clone(uint32_t orig) { + LDKCResult_InMemorySignerDecodeErrorZ* orig_conv = (LDKCResult_InMemorySignerDecodeErrorZ*)(orig & ~1); + LDKCResult_InMemorySignerDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InMemorySignerDecodeErrorZ), "LDKCResult_InMemorySignerDecodeErrorZ"); + *ret_conv = CResult_InMemorySignerDecodeErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_CVec_TxOutZ_free(uint32_tArray _res) { + LDKCVec_TxOutZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKTxOut), "LDKCVec_TxOutZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t h = 0; h < _res_constr.datalen; h++) { + uint32_t _res_conv_7 = _res_vals[h]; + void* _res_conv_7_ptr = (void*)(((uint64_t)_res_conv_7) & ~1); + CHECK_ACCESS(_res_conv_7_ptr); + LDKTxOut _res_conv_7_conv = *(LDKTxOut*)(_res_conv_7_ptr); + FREE((void*)_res_conv_7); + _res_constr.data[h] = _res_conv_7_conv; } - return ret_ref; + CVec_TxOutZ_free(_res_constr); } -void __attribute__((visibility("default"))) TS_Logger_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKLogger this_ptr_conv = *(LDKLogger*)(this_ptr_ptr); - FREE((void*)this_ptr); - Logger_free(this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_ok(int8_tArray o) { + LDKTransaction o_ref; + o_ref.datalen = o->arr_len; + o_ref.data = MALLOC(o_ref.datalen, "LDKTransaction Bytes"); + memcpy(o_ref.data, o->elems, o_ref.datalen); + o_ref.data_is_owned = true; + LDKCResult_TransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TransactionNoneZ), "LDKCResult_TransactionNoneZ"); + *ret_conv = CResult_TransactionNoneZ_ok(o_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_free(uint32_t this_obj) { - LDKChannelHandshakeConfig this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelHandshakeConfig_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_err() { + LDKCResult_TransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TransactionNoneZ), "LDKCResult_TransactionNoneZ"); + *ret_conv = CResult_TransactionNoneZ_err(); + return (uint64_t)ret_conv; } -int32_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_get_minimum_depth(uint32_t this_ptr) { - LDKChannelHandshakeConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = ChannelHandshakeConfig_get_minimum_depth(&this_ptr_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_is_ok(uint32_t o) { + LDKCResult_TransactionNoneZ* o_conv = (LDKCResult_TransactionNoneZ*)(o & ~1); + jboolean ret_val = CResult_TransactionNoneZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_set_minimum_depth(uint32_t this_ptr, int32_t val) { - LDKChannelHandshakeConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelHandshakeConfig_set_minimum_depth(&this_ptr_conv, val); +void __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_TransactionNoneZ _res_conv = *(LDKCResult_TransactionNoneZ*)(_res_ptr); + FREE((void*)_res); + CResult_TransactionNoneZ_free(_res_conv); } -int16_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_get_our_to_self_delay(uint32_t this_ptr) { - LDKChannelHandshakeConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = ChannelHandshakeConfig_get_our_to_self_delay(&this_ptr_conv); +static inline uint64_t CResult_TransactionNoneZ_clone_ptr(LDKCResult_TransactionNoneZ *NONNULL_PTR arg) { + LDKCResult_TransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TransactionNoneZ), "LDKCResult_TransactionNoneZ"); + *ret_conv = CResult_TransactionNoneZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_clone_ptr(uint32_t arg) { + LDKCResult_TransactionNoneZ* arg_conv = (LDKCResult_TransactionNoneZ*)(arg & ~1); + int64_t ret_val = CResult_TransactionNoneZ_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_set_our_to_self_delay(uint32_t this_ptr, int16_t val) { - LDKChannelHandshakeConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelHandshakeConfig_set_our_to_self_delay(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_CResult_TransactionNoneZ_clone(uint32_t orig) { + LDKCResult_TransactionNoneZ* orig_conv = (LDKCResult_TransactionNoneZ*)(orig & ~1); + LDKCResult_TransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TransactionNoneZ), "LDKCResult_TransactionNoneZ"); + *ret_conv = CResult_TransactionNoneZ_clone(orig_conv); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_get_our_htlc_minimum_msat(uint32_t this_ptr) { - LDKChannelHandshakeConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelHandshakeConfig_get_our_htlc_minimum_msat(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_COption_FilterZ_some(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKFilter o_conv = *(LDKFilter*)(o_ptr); + LDKCOption_FilterZ *ret_copy = MALLOC(sizeof(LDKCOption_FilterZ), "LDKCOption_FilterZ"); + *ret_copy = COption_FilterZ_some(o_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_set_our_htlc_minimum_msat(uint32_t this_ptr, int64_t val) { - LDKChannelHandshakeConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelHandshakeConfig_set_our_htlc_minimum_msat(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_COption_FilterZ_none() { + LDKCOption_FilterZ *ret_copy = MALLOC(sizeof(LDKCOption_FilterZ), "LDKCOption_FilterZ"); + *ret_copy = COption_FilterZ_none(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_new(int32_t minimum_depth_arg, int16_t our_to_self_delay_arg, int64_t our_htlc_minimum_msat_arg) { - LDKChannelHandshakeConfig ret_var = ChannelHandshakeConfig_new(minimum_depth_arg, our_to_self_delay_arg, our_htlc_minimum_msat_arg); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_COption_FilterZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCOption_FilterZ _res_conv = *(LDKCOption_FilterZ*)(_res_ptr); + FREE((void*)_res); + COption_FilterZ_free(_res_conv); } -static inline uint64_t ChannelHandshakeConfig_clone_ptr(LDKChannelHandshakeConfig *NONNULL_PTR arg) { - LDKChannelHandshakeConfig ret_var = ChannelHandshakeConfig_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_CResult_LockedChannelMonitorNoneZ_ok(uint32_t o) { + LDKLockedChannelMonitor o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = (o & 1) || (o == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + // Warning: we need a move here but no clone is available for LDKLockedChannelMonitor + LDKCResult_LockedChannelMonitorNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_LockedChannelMonitorNoneZ), "LDKCResult_LockedChannelMonitorNoneZ"); + *ret_conv = CResult_LockedChannelMonitorNoneZ_ok(o_conv); + return (uint64_t)ret_conv; } - return ret_ref; + +uint32_t __attribute__((visibility("default"))) TS_CResult_LockedChannelMonitorNoneZ_err() { + LDKCResult_LockedChannelMonitorNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_LockedChannelMonitorNoneZ), "LDKCResult_LockedChannelMonitorNoneZ"); + *ret_conv = CResult_LockedChannelMonitorNoneZ_err(); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_clone_ptr(uint32_t arg) { - LDKChannelHandshakeConfig arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelHandshakeConfig_clone_ptr(&arg_conv); + +jboolean __attribute__((visibility("default"))) TS_CResult_LockedChannelMonitorNoneZ_is_ok(uint32_t o) { + LDKCResult_LockedChannelMonitorNoneZ* o_conv = (LDKCResult_LockedChannelMonitorNoneZ*)(o & ~1); + jboolean ret_val = CResult_LockedChannelMonitorNoneZ_is_ok(o_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_clone(uint32_t orig) { - LDKChannelHandshakeConfig orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelHandshakeConfig ret_var = ChannelHandshakeConfig_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_CResult_LockedChannelMonitorNoneZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_LockedChannelMonitorNoneZ _res_conv = *(LDKCResult_LockedChannelMonitorNoneZ*)(_res_ptr); + FREE((void*)_res); + CResult_LockedChannelMonitorNoneZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_default() { - LDKChannelHandshakeConfig ret_var = ChannelHandshakeConfig_default(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; +void __attribute__((visibility("default"))) TS_CVec_OutPointZ_free(uint32_tArray _res) { + LDKCVec_OutPointZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKOutPoint), "LDKCVec_OutPointZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t k = 0; k < _res_constr.datalen; k++) { + uint32_t _res_conv_10 = _res_vals[k]; + LDKOutPoint _res_conv_10_conv; + _res_conv_10_conv.inner = (void*)(_res_conv_10 & (~1)); + _res_conv_10_conv.is_owned = (_res_conv_10 & 1) || (_res_conv_10 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_10_conv); + _res_constr.data[k] = _res_conv_10_conv; } - return ret_ref; + CVec_OutPointZ_free(_res_constr); } -void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_free(uint32_t this_obj) { - LDKChannelHandshakeLimits this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelHandshakeLimits_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_ok() { + LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); + *ret_conv = CResult_NoneAPIErrorZ_ok(); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_min_funding_satoshis(uint32_t this_ptr) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelHandshakeLimits_get_min_funding_satoshis(&this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_err(uint32_t e) { + void* e_ptr = (void*)(((uint64_t)e) & ~1); + CHECK_ACCESS(e_ptr); + LDKAPIError e_conv = *(LDKAPIError*)(e_ptr); + e_conv = APIError_clone((LDKAPIError*)(((uint64_t)e) & ~1)); + LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); + *ret_conv = CResult_NoneAPIErrorZ_err(e_conv); + return (uint64_t)ret_conv; +} + +jboolean __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_is_ok(uint32_t o) { + LDKCResult_NoneAPIErrorZ* o_conv = (LDKCResult_NoneAPIErrorZ*)(o & ~1); + jboolean ret_val = CResult_NoneAPIErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_min_funding_satoshis(uint32_t this_ptr, int64_t val) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelHandshakeLimits_set_min_funding_satoshis(&this_ptr_conv, val); +void __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_NoneAPIErrorZ _res_conv = *(LDKCResult_NoneAPIErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_NoneAPIErrorZ_free(_res_conv); } -int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_max_htlc_minimum_msat(uint32_t this_ptr) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelHandshakeLimits_get_max_htlc_minimum_msat(&this_ptr_conv); +static inline uint64_t CResult_NoneAPIErrorZ_clone_ptr(LDKCResult_NoneAPIErrorZ *NONNULL_PTR arg) { + LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); + *ret_conv = CResult_NoneAPIErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_NoneAPIErrorZ* arg_conv = (LDKCResult_NoneAPIErrorZ*)(arg & ~1); + int64_t ret_val = CResult_NoneAPIErrorZ_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_max_htlc_minimum_msat(uint32_t this_ptr, int64_t val) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelHandshakeLimits_set_max_htlc_minimum_msat(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_CResult_NoneAPIErrorZ_clone(uint32_t orig) { + LDKCResult_NoneAPIErrorZ* orig_conv = (LDKCResult_NoneAPIErrorZ*)(orig & ~1); + LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); + *ret_conv = CResult_NoneAPIErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_min_max_htlc_value_in_flight_msat(uint32_t this_ptr) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelHandshakeLimits_get_min_max_htlc_value_in_flight_msat(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_COption_u16Z_some(int16_t o) { + LDKCOption_u16Z *ret_copy = MALLOC(sizeof(LDKCOption_u16Z), "LDKCOption_u16Z"); + *ret_copy = COption_u16Z_some(o); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_min_max_htlc_value_in_flight_msat(uint32_t this_ptr, int64_t val) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelHandshakeLimits_set_min_max_htlc_value_in_flight_msat(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_COption_u16Z_none() { + LDKCOption_u16Z *ret_copy = MALLOC(sizeof(LDKCOption_u16Z), "LDKCOption_u16Z"); + *ret_copy = COption_u16Z_none(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_max_channel_reserve_satoshis(uint32_t this_ptr) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelHandshakeLimits_get_max_channel_reserve_satoshis(&this_ptr_conv); +void __attribute__((visibility("default"))) TS_COption_u16Z_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCOption_u16Z _res_conv = *(LDKCOption_u16Z*)(_res_ptr); + FREE((void*)_res); + COption_u16Z_free(_res_conv); +} + +static inline uint64_t COption_u16Z_clone_ptr(LDKCOption_u16Z *NONNULL_PTR arg) { + LDKCOption_u16Z *ret_copy = MALLOC(sizeof(LDKCOption_u16Z), "LDKCOption_u16Z"); + *ret_copy = COption_u16Z_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_COption_u16Z_clone_ptr(uint32_t arg) { + LDKCOption_u16Z* arg_conv = (LDKCOption_u16Z*)arg; + int64_t ret_val = COption_u16Z_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_max_channel_reserve_satoshis(uint32_t this_ptr, int64_t val) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelHandshakeLimits_set_max_channel_reserve_satoshis(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_COption_u16Z_clone(uint32_t orig) { + LDKCOption_u16Z* orig_conv = (LDKCOption_u16Z*)orig; + LDKCOption_u16Z *ret_copy = MALLOC(sizeof(LDKCOption_u16Z), "LDKCOption_u16Z"); + *ret_copy = COption_u16Z_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -int16_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_min_max_accepted_htlcs(uint32_t this_ptr) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = ChannelHandshakeLimits_get_min_max_accepted_htlcs(&this_ptr_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_CVec_CResult_NoneAPIErrorZZ_free(uint32_tArray _res) { + LDKCVec_CResult_NoneAPIErrorZZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKCResult_NoneAPIErrorZ), "LDKCVec_CResult_NoneAPIErrorZZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t w = 0; w < _res_constr.datalen; w++) { + uint32_t _res_conv_22 = _res_vals[w]; + void* _res_conv_22_ptr = (void*)(((uint64_t)_res_conv_22) & ~1); + CHECK_ACCESS(_res_conv_22_ptr); + LDKCResult_NoneAPIErrorZ _res_conv_22_conv = *(LDKCResult_NoneAPIErrorZ*)(_res_conv_22_ptr); + FREE((void*)_res_conv_22); + _res_constr.data[w] = _res_conv_22_conv; + } + CVec_CResult_NoneAPIErrorZZ_free(_res_constr); } -void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_min_max_accepted_htlcs(uint32_t this_ptr, int16_t val) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelHandshakeLimits_set_min_max_accepted_htlcs(&this_ptr_conv, val); +void __attribute__((visibility("default"))) TS_CVec_APIErrorZ_free(uint32_tArray _res) { + LDKCVec_APIErrorZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKAPIError), "LDKCVec_APIErrorZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t k = 0; k < _res_constr.datalen; k++) { + uint32_t _res_conv_10 = _res_vals[k]; + void* _res_conv_10_ptr = (void*)(((uint64_t)_res_conv_10) & ~1); + CHECK_ACCESS(_res_conv_10_ptr); + LDKAPIError _res_conv_10_conv = *(LDKAPIError*)(_res_conv_10_ptr); + FREE((void*)_res_conv_10); + _res_constr.data[k] = _res_conv_10_conv; + } + CVec_APIErrorZ_free(_res_constr); } -int32_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_max_minimum_depth(uint32_t this_ptr) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = ChannelHandshakeLimits_get_max_minimum_depth(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_ok(int8_tArray o) { + LDKThirtyTwoBytes o_ref; + CHECK(o->arr_len == 32); + memcpy(o_ref.data, o->elems, 32); + LDKCResult__u832APIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult__u832APIErrorZ), "LDKCResult__u832APIErrorZ"); + *ret_conv = CResult__u832APIErrorZ_ok(o_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_max_minimum_depth(uint32_t this_ptr, int32_t val) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelHandshakeLimits_set_max_minimum_depth(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_err(uint32_t e) { + void* e_ptr = (void*)(((uint64_t)e) & ~1); + CHECK_ACCESS(e_ptr); + LDKAPIError e_conv = *(LDKAPIError*)(e_ptr); + e_conv = APIError_clone((LDKAPIError*)(((uint64_t)e) & ~1)); + LDKCResult__u832APIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult__u832APIErrorZ), "LDKCResult__u832APIErrorZ"); + *ret_conv = CResult__u832APIErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_force_announced_channel_preference(uint32_t this_ptr) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = ChannelHandshakeLimits_get_force_announced_channel_preference(&this_ptr_conv); +jboolean __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_is_ok(uint32_t o) { + LDKCResult__u832APIErrorZ* o_conv = (LDKCResult__u832APIErrorZ*)(o & ~1); + jboolean ret_val = CResult__u832APIErrorZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_force_announced_channel_preference(uint32_t this_ptr, jboolean val) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelHandshakeLimits_set_force_announced_channel_preference(&this_ptr_conv, val); +void __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult__u832APIErrorZ _res_conv = *(LDKCResult__u832APIErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult__u832APIErrorZ_free(_res_conv); } -int16_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_their_to_self_delay(uint32_t this_ptr) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = ChannelHandshakeLimits_get_their_to_self_delay(&this_ptr_conv); +static inline uint64_t CResult__u832APIErrorZ_clone_ptr(LDKCResult__u832APIErrorZ *NONNULL_PTR arg) { + LDKCResult__u832APIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult__u832APIErrorZ), "LDKCResult__u832APIErrorZ"); + *ret_conv = CResult__u832APIErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_clone_ptr(uint32_t arg) { + LDKCResult__u832APIErrorZ* arg_conv = (LDKCResult__u832APIErrorZ*)(arg & ~1); + int64_t ret_val = CResult__u832APIErrorZ_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_their_to_self_delay(uint32_t this_ptr, int16_t val) { - LDKChannelHandshakeLimits this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelHandshakeLimits_set_their_to_self_delay(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_CResult__u832APIErrorZ_clone(uint32_t orig) { + LDKCResult__u832APIErrorZ* orig_conv = (LDKCResult__u832APIErrorZ*)(orig & ~1); + LDKCResult__u832APIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult__u832APIErrorZ), "LDKCResult__u832APIErrorZ"); + *ret_conv = CResult__u832APIErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_new(int64_t min_funding_satoshis_arg, int64_t max_htlc_minimum_msat_arg, int64_t min_max_htlc_value_in_flight_msat_arg, int64_t max_channel_reserve_satoshis_arg, int16_t min_max_accepted_htlcs_arg, int32_t max_minimum_depth_arg, jboolean force_announced_channel_preference_arg, int16_t their_to_self_delay_arg) { - LDKChannelHandshakeLimits ret_var = ChannelHandshakeLimits_new(min_funding_satoshis_arg, max_htlc_minimum_msat_arg, min_max_htlc_value_in_flight_msat_arg, max_channel_reserve_satoshis_arg, min_max_accepted_htlcs_arg, max_minimum_depth_arg, force_announced_channel_preference_arg, their_to_self_delay_arg); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_ok(int8_tArray o) { + LDKThirtyTwoBytes o_ref; + CHECK(o->arr_len == 32); + memcpy(o_ref.data, o->elems, 32); + LDKCResult_PaymentIdPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentSendFailureZ), "LDKCResult_PaymentIdPaymentSendFailureZ"); + *ret_conv = CResult_PaymentIdPaymentSendFailureZ_ok(o_ref); + return (uint64_t)ret_conv; } -static inline uint64_t ChannelHandshakeLimits_clone_ptr(LDKChannelHandshakeLimits *NONNULL_PTR arg) { - LDKChannelHandshakeLimits ret_var = ChannelHandshakeLimits_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_err(uint32_t e) { + void* e_ptr = (void*)(((uint64_t)e) & ~1); + CHECK_ACCESS(e_ptr); + LDKPaymentSendFailure e_conv = *(LDKPaymentSendFailure*)(e_ptr); + e_conv = PaymentSendFailure_clone((LDKPaymentSendFailure*)(((uint64_t)e) & ~1)); + LDKCResult_PaymentIdPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentSendFailureZ), "LDKCResult_PaymentIdPaymentSendFailureZ"); + *ret_conv = CResult_PaymentIdPaymentSendFailureZ_err(e_conv); + return (uint64_t)ret_conv; +} + +jboolean __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_is_ok(uint32_t o) { + LDKCResult_PaymentIdPaymentSendFailureZ* o_conv = (LDKCResult_PaymentIdPaymentSendFailureZ*)(o & ~1); + jboolean ret_val = CResult_PaymentIdPaymentSendFailureZ_is_ok(o_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_PaymentIdPaymentSendFailureZ _res_conv = *(LDKCResult_PaymentIdPaymentSendFailureZ*)(_res_ptr); + FREE((void*)_res); + CResult_PaymentIdPaymentSendFailureZ_free(_res_conv); } - return ret_ref; + +static inline uint64_t CResult_PaymentIdPaymentSendFailureZ_clone_ptr(LDKCResult_PaymentIdPaymentSendFailureZ *NONNULL_PTR arg) { + LDKCResult_PaymentIdPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentSendFailureZ), "LDKCResult_PaymentIdPaymentSendFailureZ"); + *ret_conv = CResult_PaymentIdPaymentSendFailureZ_clone(arg); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_clone_ptr(uint32_t arg) { - LDKChannelHandshakeLimits arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelHandshakeLimits_clone_ptr(&arg_conv); +int64_t __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_clone_ptr(uint32_t arg) { + LDKCResult_PaymentIdPaymentSendFailureZ* arg_conv = (LDKCResult_PaymentIdPaymentSendFailureZ*)(arg & ~1); + int64_t ret_val = CResult_PaymentIdPaymentSendFailureZ_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_clone(uint32_t orig) { - LDKChannelHandshakeLimits orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelHandshakeLimits ret_var = ChannelHandshakeLimits_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentIdPaymentSendFailureZ_clone(uint32_t orig) { + LDKCResult_PaymentIdPaymentSendFailureZ* orig_conv = (LDKCResult_PaymentIdPaymentSendFailureZ*)(orig & ~1); + LDKCResult_PaymentIdPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentSendFailureZ), "LDKCResult_PaymentIdPaymentSendFailureZ"); + *ret_conv = CResult_PaymentIdPaymentSendFailureZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_default() { - LDKChannelHandshakeLimits ret_var = ChannelHandshakeLimits_default(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_ok() { + LDKCResult_NonePaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentSendFailureZ), "LDKCResult_NonePaymentSendFailureZ"); + *ret_conv = CResult_NonePaymentSendFailureZ_ok(); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_ChannelConfig_free(uint32_t this_obj) { - LDKChannelConfig this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelConfig_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_err(uint32_t e) { + void* e_ptr = (void*)(((uint64_t)e) & ~1); + CHECK_ACCESS(e_ptr); + LDKPaymentSendFailure e_conv = *(LDKPaymentSendFailure*)(e_ptr); + e_conv = PaymentSendFailure_clone((LDKPaymentSendFailure*)(((uint64_t)e) & ~1)); + LDKCResult_NonePaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentSendFailureZ), "LDKCResult_NonePaymentSendFailureZ"); + *ret_conv = CResult_NonePaymentSendFailureZ_err(e_conv); + return (uint64_t)ret_conv; } -int32_t __attribute__((visibility("default"))) TS_ChannelConfig_get_forwarding_fee_proportional_millionths(uint32_t this_ptr) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = ChannelConfig_get_forwarding_fee_proportional_millionths(&this_ptr_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_is_ok(uint32_t o) { + LDKCResult_NonePaymentSendFailureZ* o_conv = (LDKCResult_NonePaymentSendFailureZ*)(o & ~1); + jboolean ret_val = CResult_NonePaymentSendFailureZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelConfig_set_forwarding_fee_proportional_millionths(uint32_t this_ptr, int32_t val) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelConfig_set_forwarding_fee_proportional_millionths(&this_ptr_conv, val); +void __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_NonePaymentSendFailureZ _res_conv = *(LDKCResult_NonePaymentSendFailureZ*)(_res_ptr); + FREE((void*)_res); + CResult_NonePaymentSendFailureZ_free(_res_conv); } -int32_t __attribute__((visibility("default"))) TS_ChannelConfig_get_forwarding_fee_base_msat(uint32_t this_ptr) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = ChannelConfig_get_forwarding_fee_base_msat(&this_ptr_conv); +static inline uint64_t CResult_NonePaymentSendFailureZ_clone_ptr(LDKCResult_NonePaymentSendFailureZ *NONNULL_PTR arg) { + LDKCResult_NonePaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentSendFailureZ), "LDKCResult_NonePaymentSendFailureZ"); + *ret_conv = CResult_NonePaymentSendFailureZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_clone_ptr(uint32_t arg) { + LDKCResult_NonePaymentSendFailureZ* arg_conv = (LDKCResult_NonePaymentSendFailureZ*)(arg & ~1); + int64_t ret_val = CResult_NonePaymentSendFailureZ_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelConfig_set_forwarding_fee_base_msat(uint32_t this_ptr, int32_t val) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelConfig_set_forwarding_fee_base_msat(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_CResult_NonePaymentSendFailureZ_clone(uint32_t orig) { + LDKCResult_NonePaymentSendFailureZ* orig_conv = (LDKCResult_NonePaymentSendFailureZ*)(orig & ~1); + LDKCResult_NonePaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentSendFailureZ), "LDKCResult_NonePaymentSendFailureZ"); + *ret_conv = CResult_NonePaymentSendFailureZ_clone(orig_conv); + return (uint64_t)ret_conv; } -int16_t __attribute__((visibility("default"))) TS_ChannelConfig_get_cltv_expiry_delta(uint32_t this_ptr) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = ChannelConfig_get_cltv_expiry_delta(&this_ptr_conv); +static inline uint64_t C2Tuple_PaymentHashPaymentIdZ_clone_ptr(LDKC2Tuple_PaymentHashPaymentIdZ *NONNULL_PTR arg) { + LDKC2Tuple_PaymentHashPaymentIdZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentIdZ), "LDKC2Tuple_PaymentHashPaymentIdZ"); + *ret_conv = C2Tuple_PaymentHashPaymentIdZ_clone(arg); + return ((uint64_t)ret_conv); +} +int64_t __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentIdZ_clone_ptr(uint32_t arg) { + LDKC2Tuple_PaymentHashPaymentIdZ* arg_conv = (LDKC2Tuple_PaymentHashPaymentIdZ*)(arg & ~1); + int64_t ret_val = C2Tuple_PaymentHashPaymentIdZ_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelConfig_set_cltv_expiry_delta(uint32_t this_ptr, int16_t val) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelConfig_set_cltv_expiry_delta(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentIdZ_clone(uint32_t orig) { + LDKC2Tuple_PaymentHashPaymentIdZ* orig_conv = (LDKC2Tuple_PaymentHashPaymentIdZ*)(orig & ~1); + LDKC2Tuple_PaymentHashPaymentIdZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentIdZ), "LDKC2Tuple_PaymentHashPaymentIdZ"); + *ret_conv = C2Tuple_PaymentHashPaymentIdZ_clone(orig_conv); + return ((uint64_t)ret_conv); } -jboolean __attribute__((visibility("default"))) TS_ChannelConfig_get_announced_channel(uint32_t this_ptr) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = ChannelConfig_get_announced_channel(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentIdZ_new(int8_tArray a, int8_tArray b) { + LDKThirtyTwoBytes a_ref; + CHECK(a->arr_len == 32); + memcpy(a_ref.data, a->elems, 32); + LDKThirtyTwoBytes b_ref; + CHECK(b->arr_len == 32); + memcpy(b_ref.data, b->elems, 32); + LDKC2Tuple_PaymentHashPaymentIdZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentIdZ), "LDKC2Tuple_PaymentHashPaymentIdZ"); + *ret_conv = C2Tuple_PaymentHashPaymentIdZ_new(a_ref, b_ref); + return ((uint64_t)ret_conv); } -void __attribute__((visibility("default"))) TS_ChannelConfig_set_announced_channel(uint32_t this_ptr, jboolean val) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelConfig_set_announced_channel(&this_ptr_conv, val); +void __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentIdZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKC2Tuple_PaymentHashPaymentIdZ _res_conv = *(LDKC2Tuple_PaymentHashPaymentIdZ*)(_res_ptr); + FREE((void*)_res); + C2Tuple_PaymentHashPaymentIdZ_free(_res_conv); } -jboolean __attribute__((visibility("default"))) TS_ChannelConfig_get_commit_upfront_shutdown_pubkey(uint32_t this_ptr) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = ChannelConfig_get_commit_upfront_shutdown_pubkey(&this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKC2Tuple_PaymentHashPaymentIdZ o_conv = *(LDKC2Tuple_PaymentHashPaymentIdZ*)(o_ptr); + o_conv = C2Tuple_PaymentHashPaymentIdZ_clone((LDKC2Tuple_PaymentHashPaymentIdZ*)(((uint64_t)o) & ~1)); + LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ), "LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_ok(o_conv); + return (uint64_t)ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_err(uint32_t e) { + void* e_ptr = (void*)(((uint64_t)e) & ~1); + CHECK_ACCESS(e_ptr); + LDKPaymentSendFailure e_conv = *(LDKPaymentSendFailure*)(e_ptr); + e_conv = PaymentSendFailure_clone((LDKPaymentSendFailure*)(((uint64_t)e) & ~1)); + LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ), "LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_err(e_conv); + return (uint64_t)ret_conv; +} + +jboolean __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_is_ok(uint32_t o) { + LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* o_conv = (LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ*)(o & ~1); + jboolean ret_val = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelConfig_set_commit_upfront_shutdown_pubkey(uint32_t this_ptr, jboolean val) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelConfig_set_commit_upfront_shutdown_pubkey(&this_ptr_conv, val); +void __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ _res_conv = *(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ*)(_res_ptr); + FREE((void*)_res); + CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_free(_res_conv); } -int64_t __attribute__((visibility("default"))) TS_ChannelConfig_get_max_dust_htlc_exposure_msat(uint32_t this_ptr) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelConfig_get_max_dust_htlc_exposure_msat(&this_ptr_conv); +static inline uint64_t CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone_ptr(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ *NONNULL_PTR arg) { + LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ), "LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone_ptr(uint32_t arg) { + LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* arg_conv = (LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ*)(arg & ~1); + int64_t ret_val = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelConfig_set_max_dust_htlc_exposure_msat(uint32_t this_ptr, int64_t val) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelConfig_set_max_dust_htlc_exposure_msat(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone(uint32_t orig) { + LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* orig_conv = (LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ*)(orig & ~1); + LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ), "LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone(orig_conv); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_ChannelConfig_get_force_close_avoidance_max_fee_satoshis(uint32_t this_ptr) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelConfig_get_force_close_avoidance_max_fee_satoshis(&this_ptr_conv); +static inline uint64_t C2Tuple_PaymentHashPaymentSecretZ_clone_ptr(LDKC2Tuple_PaymentHashPaymentSecretZ *NONNULL_PTR arg) { + LDKC2Tuple_PaymentHashPaymentSecretZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentSecretZ), "LDKC2Tuple_PaymentHashPaymentSecretZ"); + *ret_conv = C2Tuple_PaymentHashPaymentSecretZ_clone(arg); + return ((uint64_t)ret_conv); +} +int64_t __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentSecretZ_clone_ptr(uint32_t arg) { + LDKC2Tuple_PaymentHashPaymentSecretZ* arg_conv = (LDKC2Tuple_PaymentHashPaymentSecretZ*)(arg & ~1); + int64_t ret_val = C2Tuple_PaymentHashPaymentSecretZ_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelConfig_set_force_close_avoidance_max_fee_satoshis(uint32_t this_ptr, int64_t val) { - LDKChannelConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelConfig_set_force_close_avoidance_max_fee_satoshis(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentSecretZ_clone(uint32_t orig) { + LDKC2Tuple_PaymentHashPaymentSecretZ* orig_conv = (LDKC2Tuple_PaymentHashPaymentSecretZ*)(orig & ~1); + LDKC2Tuple_PaymentHashPaymentSecretZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentSecretZ), "LDKC2Tuple_PaymentHashPaymentSecretZ"); + *ret_conv = C2Tuple_PaymentHashPaymentSecretZ_clone(orig_conv); + return ((uint64_t)ret_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentSecretZ_new(int8_tArray a, int8_tArray b) { + LDKThirtyTwoBytes a_ref; + CHECK(a->arr_len == 32); + memcpy(a_ref.data, a->elems, 32); + LDKThirtyTwoBytes b_ref; + CHECK(b->arr_len == 32); + memcpy(b_ref.data, b->elems, 32); + LDKC2Tuple_PaymentHashPaymentSecretZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PaymentHashPaymentSecretZ), "LDKC2Tuple_PaymentHashPaymentSecretZ"); + *ret_conv = C2Tuple_PaymentHashPaymentSecretZ_new(a_ref, b_ref); + return ((uint64_t)ret_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChannelConfig_new(int32_t forwarding_fee_proportional_millionths_arg, int32_t forwarding_fee_base_msat_arg, int16_t cltv_expiry_delta_arg, jboolean announced_channel_arg, jboolean commit_upfront_shutdown_pubkey_arg, int64_t max_dust_htlc_exposure_msat_arg, int64_t force_close_avoidance_max_fee_satoshis_arg) { - LDKChannelConfig ret_var = ChannelConfig_new(forwarding_fee_proportional_millionths_arg, forwarding_fee_base_msat_arg, cltv_expiry_delta_arg, announced_channel_arg, commit_upfront_shutdown_pubkey_arg, max_dust_htlc_exposure_msat_arg, force_close_avoidance_max_fee_satoshis_arg); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_C2Tuple_PaymentHashPaymentSecretZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKC2Tuple_PaymentHashPaymentSecretZ _res_conv = *(LDKC2Tuple_PaymentHashPaymentSecretZ*)(_res_ptr); + FREE((void*)_res); + C2Tuple_PaymentHashPaymentSecretZ_free(_res_conv); } -static inline uint64_t ChannelConfig_clone_ptr(LDKChannelConfig *NONNULL_PTR arg) { - LDKChannelConfig ret_var = ChannelConfig_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKC2Tuple_PaymentHashPaymentSecretZ o_conv = *(LDKC2Tuple_PaymentHashPaymentSecretZ*)(o_ptr); + o_conv = C2Tuple_PaymentHashPaymentSecretZ_clone((LDKC2Tuple_PaymentHashPaymentSecretZ*)(((uint64_t)o) & ~1)); + LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_ok(o_conv); + return (uint64_t)ret_conv; } - return ret_ref; + +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_err() { + LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_err(); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_ChannelConfig_clone_ptr(uint32_t arg) { - LDKChannelConfig arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelConfig_clone_ptr(&arg_conv); + +jboolean __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_is_ok(uint32_t o) { + LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* o_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ*)(o & ~1); + jboolean ret_val = CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_is_ok(o_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelConfig_clone(uint32_t orig) { - LDKChannelConfig orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelConfig ret_var = ChannelConfig_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ _res_conv = *(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ*)(_res_ptr); + FREE((void*)_res); + CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChannelConfig_default() { - LDKChannelConfig ret_var = ChannelConfig_default(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +static inline uint64_t CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone_ptr(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ *NONNULL_PTR arg) { + LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone_ptr(uint32_t arg) { + LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* arg_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ*)(arg & ~1); + int64_t ret_val = CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone_ptr(arg_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_ChannelConfig_write(uint32_t obj) { - LDKChannelConfig obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ChannelConfig_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone(uint32_t orig) { + LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* orig_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ*)(orig & ~1); + LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ChannelConfig_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ChannelConfigDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelConfigDecodeErrorZ), "LDKCResult_ChannelConfigDecodeErrorZ"); - *ret_conv = ChannelConfig_read(ser_ref); +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKC2Tuple_PaymentHashPaymentSecretZ o_conv = *(LDKC2Tuple_PaymentHashPaymentSecretZ*)(o_ptr); + o_conv = C2Tuple_PaymentHashPaymentSecretZ_clone((LDKC2Tuple_PaymentHashPaymentSecretZ*)(((uint64_t)o) & ~1)); + LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_ok(o_conv); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_UserConfig_free(uint32_t this_obj) { - LDKUserConfig this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - UserConfig_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_err(uint32_t e) { + void* e_ptr = (void*)(((uint64_t)e) & ~1); + CHECK_ACCESS(e_ptr); + LDKAPIError e_conv = *(LDKAPIError*)(e_ptr); + e_conv = APIError_clone((LDKAPIError*)(((uint64_t)e) & ~1)); + LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_UserConfig_get_own_channel_config(uint32_t this_ptr) { - LDKUserConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelHandshakeConfig ret_var = UserConfig_get_own_channel_config(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +jboolean __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_is_ok(uint32_t o) { + LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* o_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ*)(o & ~1); + jboolean ret_val = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_is_ok(o_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_UserConfig_set_own_channel_config(uint32_t this_ptr, uint32_t val) { - LDKUserConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelHandshakeConfig val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = ChannelHandshakeConfig_clone(&val_conv); - UserConfig_set_own_channel_config(&this_ptr_conv, val_conv); +void __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ _res_conv = *(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_UserConfig_get_peer_channel_config_limits(uint32_t this_ptr) { - LDKUserConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelHandshakeLimits ret_var = UserConfig_get_peer_channel_config_limits(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +static inline uint64_t CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone_ptr(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ *NONNULL_PTR arg) { + LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* arg_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ*)(arg & ~1); + int64_t ret_val = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone_ptr(arg_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_UserConfig_set_peer_channel_config_limits(uint32_t this_ptr, uint32_t val) { - LDKUserConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelHandshakeLimits val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = ChannelHandshakeLimits_clone(&val_conv); - UserConfig_set_peer_channel_config_limits(&this_ptr_conv, val_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone(uint32_t orig) { + LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* orig_conv = (LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ*)(orig & ~1); + LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ"); + *ret_conv = CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_UserConfig_get_channel_options(uint32_t this_ptr) { - LDKUserConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelConfig ret_var = UserConfig_get_channel_options(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_ok(int8_tArray o) { + LDKThirtyTwoBytes o_ref; + CHECK(o->arr_len == 32); + memcpy(o_ref.data, o->elems, 32); + LDKCResult_PaymentSecretNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretNoneZ), "LDKCResult_PaymentSecretNoneZ"); + *ret_conv = CResult_PaymentSecretNoneZ_ok(o_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_UserConfig_set_channel_options(uint32_t this_ptr, uint32_t val) { - LDKUserConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelConfig val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = ChannelConfig_clone(&val_conv); - UserConfig_set_channel_options(&this_ptr_conv, val_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_err() { + LDKCResult_PaymentSecretNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretNoneZ), "LDKCResult_PaymentSecretNoneZ"); + *ret_conv = CResult_PaymentSecretNoneZ_err(); + return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_UserConfig_get_accept_forwards_to_priv_channels(uint32_t this_ptr) { - LDKUserConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = UserConfig_get_accept_forwards_to_priv_channels(&this_ptr_conv); +jboolean __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_is_ok(uint32_t o) { + LDKCResult_PaymentSecretNoneZ* o_conv = (LDKCResult_PaymentSecretNoneZ*)(o & ~1); + jboolean ret_val = CResult_PaymentSecretNoneZ_is_ok(o_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_UserConfig_set_accept_forwards_to_priv_channels(uint32_t this_ptr, jboolean val) { - LDKUserConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UserConfig_set_accept_forwards_to_priv_channels(&this_ptr_conv, val); +void __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_PaymentSecretNoneZ _res_conv = *(LDKCResult_PaymentSecretNoneZ*)(_res_ptr); + FREE((void*)_res); + CResult_PaymentSecretNoneZ_free(_res_conv); } -jboolean __attribute__((visibility("default"))) TS_UserConfig_get_accept_inbound_channels(uint32_t this_ptr) { - LDKUserConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = UserConfig_get_accept_inbound_channels(&this_ptr_conv); +static inline uint64_t CResult_PaymentSecretNoneZ_clone_ptr(LDKCResult_PaymentSecretNoneZ *NONNULL_PTR arg) { + LDKCResult_PaymentSecretNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretNoneZ), "LDKCResult_PaymentSecretNoneZ"); + *ret_conv = CResult_PaymentSecretNoneZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_clone_ptr(uint32_t arg) { + LDKCResult_PaymentSecretNoneZ* arg_conv = (LDKCResult_PaymentSecretNoneZ*)(arg & ~1); + int64_t ret_val = CResult_PaymentSecretNoneZ_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_UserConfig_set_accept_inbound_channels(uint32_t this_ptr, jboolean val) { - LDKUserConfig this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UserConfig_set_accept_inbound_channels(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretNoneZ_clone(uint32_t orig) { + LDKCResult_PaymentSecretNoneZ* orig_conv = (LDKCResult_PaymentSecretNoneZ*)(orig & ~1); + LDKCResult_PaymentSecretNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretNoneZ), "LDKCResult_PaymentSecretNoneZ"); + *ret_conv = CResult_PaymentSecretNoneZ_clone(orig_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_UserConfig_new(uint32_t own_channel_config_arg, uint32_t peer_channel_config_limits_arg, uint32_t channel_options_arg, jboolean accept_forwards_to_priv_channels_arg, jboolean accept_inbound_channels_arg) { - LDKChannelHandshakeConfig own_channel_config_arg_conv; - own_channel_config_arg_conv.inner = (void*)(own_channel_config_arg & (~1)); - own_channel_config_arg_conv.is_owned = (own_channel_config_arg & 1) || (own_channel_config_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(own_channel_config_arg_conv); - own_channel_config_arg_conv = ChannelHandshakeConfig_clone(&own_channel_config_arg_conv); - LDKChannelHandshakeLimits peer_channel_config_limits_arg_conv; - peer_channel_config_limits_arg_conv.inner = (void*)(peer_channel_config_limits_arg & (~1)); - peer_channel_config_limits_arg_conv.is_owned = (peer_channel_config_limits_arg & 1) || (peer_channel_config_limits_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(peer_channel_config_limits_arg_conv); - peer_channel_config_limits_arg_conv = ChannelHandshakeLimits_clone(&peer_channel_config_limits_arg_conv); - LDKChannelConfig channel_options_arg_conv; - channel_options_arg_conv.inner = (void*)(channel_options_arg & (~1)); - channel_options_arg_conv.is_owned = (channel_options_arg & 1) || (channel_options_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_options_arg_conv); - channel_options_arg_conv = ChannelConfig_clone(&channel_options_arg_conv); - LDKUserConfig ret_var = UserConfig_new(own_channel_config_arg_conv, peer_channel_config_limits_arg_conv, channel_options_arg_conv, accept_forwards_to_priv_channels_arg, accept_inbound_channels_arg); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_ok(int8_tArray o) { + LDKThirtyTwoBytes o_ref; + CHECK(o->arr_len == 32); + memcpy(o_ref.data, o->elems, 32); + LDKCResult_PaymentSecretAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretAPIErrorZ), "LDKCResult_PaymentSecretAPIErrorZ"); + *ret_conv = CResult_PaymentSecretAPIErrorZ_ok(o_ref); + return (uint64_t)ret_conv; } -static inline uint64_t UserConfig_clone_ptr(LDKUserConfig *NONNULL_PTR arg) { - LDKUserConfig ret_var = UserConfig_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_err(uint32_t e) { + void* e_ptr = (void*)(((uint64_t)e) & ~1); + CHECK_ACCESS(e_ptr); + LDKAPIError e_conv = *(LDKAPIError*)(e_ptr); + e_conv = APIError_clone((LDKAPIError*)(((uint64_t)e) & ~1)); + LDKCResult_PaymentSecretAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretAPIErrorZ), "LDKCResult_PaymentSecretAPIErrorZ"); + *ret_conv = CResult_PaymentSecretAPIErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_UserConfig_clone_ptr(uint32_t arg) { - LDKUserConfig arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = UserConfig_clone_ptr(&arg_conv); + +jboolean __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_is_ok(uint32_t o) { + LDKCResult_PaymentSecretAPIErrorZ* o_conv = (LDKCResult_PaymentSecretAPIErrorZ*)(o & ~1); + jboolean ret_val = CResult_PaymentSecretAPIErrorZ_is_ok(o_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_UserConfig_clone(uint32_t orig) { - LDKUserConfig orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKUserConfig ret_var = UserConfig_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_PaymentSecretAPIErrorZ _res_conv = *(LDKCResult_PaymentSecretAPIErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_PaymentSecretAPIErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_UserConfig_default() { - LDKUserConfig ret_var = UserConfig_default(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +static inline uint64_t CResult_PaymentSecretAPIErrorZ_clone_ptr(LDKCResult_PaymentSecretAPIErrorZ *NONNULL_PTR arg) { + LDKCResult_PaymentSecretAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretAPIErrorZ), "LDKCResult_PaymentSecretAPIErrorZ"); + *ret_conv = CResult_PaymentSecretAPIErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_PaymentSecretAPIErrorZ* arg_conv = (LDKCResult_PaymentSecretAPIErrorZ*)(arg & ~1); + int64_t ret_val = CResult_PaymentSecretAPIErrorZ_clone_ptr(arg_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_BestBlock_free(uint32_t this_obj) { - LDKBestBlock this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - BestBlock_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentSecretAPIErrorZ_clone(uint32_t orig) { + LDKCResult_PaymentSecretAPIErrorZ* orig_conv = (LDKCResult_PaymentSecretAPIErrorZ*)(orig & ~1); + LDKCResult_PaymentSecretAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretAPIErrorZ), "LDKCResult_PaymentSecretAPIErrorZ"); + *ret_conv = CResult_PaymentSecretAPIErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; } -static inline uint64_t BestBlock_clone_ptr(LDKBestBlock *NONNULL_PTR arg) { - LDKBestBlock ret_var = BestBlock_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_ok(int8_tArray o) { + LDKThirtyTwoBytes o_ref; + CHECK(o->arr_len == 32); + memcpy(o_ref.data, o->elems, 32); + LDKCResult_PaymentPreimageAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentPreimageAPIErrorZ), "LDKCResult_PaymentPreimageAPIErrorZ"); + *ret_conv = CResult_PaymentPreimageAPIErrorZ_ok(o_ref); + return (uint64_t)ret_conv; } - return ret_ref; + +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_err(uint32_t e) { + void* e_ptr = (void*)(((uint64_t)e) & ~1); + CHECK_ACCESS(e_ptr); + LDKAPIError e_conv = *(LDKAPIError*)(e_ptr); + e_conv = APIError_clone((LDKAPIError*)(((uint64_t)e) & ~1)); + LDKCResult_PaymentPreimageAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentPreimageAPIErrorZ), "LDKCResult_PaymentPreimageAPIErrorZ"); + *ret_conv = CResult_PaymentPreimageAPIErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_BestBlock_clone_ptr(uint32_t arg) { - LDKBestBlock arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = BestBlock_clone_ptr(&arg_conv); + +jboolean __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_is_ok(uint32_t o) { + LDKCResult_PaymentPreimageAPIErrorZ* o_conv = (LDKCResult_PaymentPreimageAPIErrorZ*)(o & ~1); + jboolean ret_val = CResult_PaymentPreimageAPIErrorZ_is_ok(o_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_BestBlock_clone(uint32_t orig) { - LDKBestBlock orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKBestBlock ret_var = BestBlock_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_PaymentPreimageAPIErrorZ _res_conv = *(LDKCResult_PaymentPreimageAPIErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_PaymentPreimageAPIErrorZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_BestBlock_from_genesis(uint32_t network) { - LDKNetwork network_conv = LDKNetwork_from_js(network); - LDKBestBlock ret_var = BestBlock_from_genesis(network_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +static inline uint64_t CResult_PaymentPreimageAPIErrorZ_clone_ptr(LDKCResult_PaymentPreimageAPIErrorZ *NONNULL_PTR arg) { + LDKCResult_PaymentPreimageAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentPreimageAPIErrorZ), "LDKCResult_PaymentPreimageAPIErrorZ"); + *ret_conv = CResult_PaymentPreimageAPIErrorZ_clone(arg); + return (uint64_t)ret_conv; +} +int64_t __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_clone_ptr(uint32_t arg) { + LDKCResult_PaymentPreimageAPIErrorZ* arg_conv = (LDKCResult_PaymentPreimageAPIErrorZ*)(arg & ~1); + int64_t ret_val = CResult_PaymentPreimageAPIErrorZ_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_BestBlock_new(int8_tArray block_hash, int32_t height) { - LDKThirtyTwoBytes block_hash_ref; - CHECK(*((uint32_t*)block_hash) == 32); - memcpy(block_hash_ref.data, (uint8_t*)(block_hash + 4), 32); - LDKBestBlock ret_var = BestBlock_new(block_hash_ref, height); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_CResult_PaymentPreimageAPIErrorZ_clone(uint32_t orig) { + LDKCResult_PaymentPreimageAPIErrorZ* orig_conv = (LDKCResult_PaymentPreimageAPIErrorZ*)(orig & ~1); + LDKCResult_PaymentPreimageAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentPreimageAPIErrorZ), "LDKCResult_PaymentPreimageAPIErrorZ"); + *ret_conv = CResult_PaymentPreimageAPIErrorZ_clone(orig_conv); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_CVec_ChannelMonitorZ_free(uint32_tArray _res) { + LDKCVec_ChannelMonitorZ _res_constr; + _res_constr.datalen = _res->arr_len; + if (_res_constr.datalen > 0) + _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKChannelMonitor), "LDKCVec_ChannelMonitorZ Elements"); + else + _res_constr.data = NULL; + uint32_t* _res_vals = _res->elems; + for (size_t q = 0; q < _res_constr.datalen; q++) { + uint32_t _res_conv_16 = _res_vals[q]; + LDKChannelMonitor _res_conv_16_conv; + _res_conv_16_conv.inner = (void*)(_res_conv_16 & (~1)); + _res_conv_16_conv.is_owned = (_res_conv_16 & 1) || (_res_conv_16 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_16_conv); + _res_constr.data[q] = _res_conv_16_conv; } - return ret_ref; + CVec_ChannelMonitorZ_free(_res_constr); } -int8_tArray __attribute__((visibility("default"))) TS_BestBlock_block_hash(uint32_t this_arg) { - LDKBestBlock this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), BestBlock_block_hash(&this_arg_conv).data, 32); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelManagerZ_new(int8_tArray a, uint32_t b) { + LDKThirtyTwoBytes a_ref; + CHECK(a->arr_len == 32); + memcpy(a_ref.data, a->elems, 32); + LDKChannelManager b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = (b & 1) || (b == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + // Warning: we need a move here but no clone is available for LDKChannelManager + LDKC2Tuple_BlockHashChannelManagerZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlockHashChannelManagerZ), "LDKC2Tuple_BlockHashChannelManagerZ"); + *ret_conv = C2Tuple_BlockHashChannelManagerZ_new(a_ref, b_conv); + return ((uint64_t)ret_conv); } -int32_t __attribute__((visibility("default"))) TS_BestBlock_height(uint32_t this_arg) { - LDKBestBlock this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int32_t ret_val = BestBlock_height(&this_arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelManagerZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKC2Tuple_BlockHashChannelManagerZ _res_conv = *(LDKC2Tuple_BlockHashChannelManagerZ*)(_res_ptr); + FREE((void*)_res); + C2Tuple_BlockHashChannelManagerZ_free(_res_conv); } -uint32_t __attribute__((visibility("default"))) TS_AccessError_clone(uint32_t orig) { - LDKAccessError* orig_conv = (LDKAccessError*)(orig & ~1); - uint32_t ret_conv = LDKAccessError_to_js(AccessError_clone(orig_conv)); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_ok(uint32_t o) { + void* o_ptr = (void*)(((uint64_t)o) & ~1); + CHECK_ACCESS(o_ptr); + LDKC2Tuple_BlockHashChannelManagerZ o_conv = *(LDKC2Tuple_BlockHashChannelManagerZ*)(o_ptr); + // Warning: we may need a move here but no clone is available for LDKC2Tuple_BlockHashChannelManagerZ + LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ"); + *ret_conv = CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_ok(o_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_AccessError_unknown_chain() { - uint32_t ret_conv = LDKAccessError_to_js(AccessError_unknown_chain()); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_err(uint32_t e) { + LDKDecodeError e_conv; + e_conv.inner = (void*)(e & (~1)); + e_conv.is_owned = (e & 1) || (e == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv); + e_conv = DecodeError_clone(&e_conv); + LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ"); + *ret_conv = CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_err(e_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_AccessError_unknown_tx() { - uint32_t ret_conv = LDKAccessError_to_js(AccessError_unknown_tx()); - return ret_conv; +jboolean __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_is_ok(uint32_t o) { + LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ* o_conv = (LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ*)(o & ~1); + jboolean ret_val = CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_is_ok(o_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_Access_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKAccess this_ptr_conv = *(LDKAccess*)(this_ptr_ptr); - FREE((void*)this_ptr); - Access_free(this_ptr_conv); +void __attribute__((visibility("default"))) TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_free(uint32_t _res) { + if ((_res & 1) != 0) return; + void* _res_ptr = (void*)(((uint64_t)_res) & ~1); + CHECK_ACCESS(_res_ptr); + LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ _res_conv = *(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ*)(_res_ptr); + FREE((void*)_res); + CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_free(_res_conv); } -void __attribute__((visibility("default"))) TS_Listen_free(uint32_t this_ptr) { +void __attribute__((visibility("default"))) TS_PaymentPurpose_free(uint32_t this_ptr) { if ((this_ptr & 1) != 0) return; void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); CHECK_ACCESS(this_ptr_ptr); - LDKListen this_ptr_conv = *(LDKListen*)(this_ptr_ptr); + LDKPaymentPurpose this_ptr_conv = *(LDKPaymentPurpose*)(this_ptr_ptr); FREE((void*)this_ptr); - Listen_free(this_ptr_conv); + PaymentPurpose_free(this_ptr_conv); } -void __attribute__((visibility("default"))) TS_Confirm_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKConfirm this_ptr_conv = *(LDKConfirm*)(this_ptr_ptr); - FREE((void*)this_ptr); - Confirm_free(this_ptr_conv); +static inline uint64_t PaymentPurpose_clone_ptr(LDKPaymentPurpose *NONNULL_PTR arg) { + LDKPaymentPurpose *ret_copy = MALLOC(sizeof(LDKPaymentPurpose), "LDKPaymentPurpose"); + *ret_copy = PaymentPurpose_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } - -uint32_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdateErr_clone(uint32_t orig) { - LDKChannelMonitorUpdateErr* orig_conv = (LDKChannelMonitorUpdateErr*)(orig & ~1); - uint32_t ret_conv = LDKChannelMonitorUpdateErr_to_js(ChannelMonitorUpdateErr_clone(orig_conv)); - return ret_conv; +int64_t __attribute__((visibility("default"))) TS_PaymentPurpose_clone_ptr(uint32_t arg) { + LDKPaymentPurpose* arg_conv = (LDKPaymentPurpose*)arg; + int64_t ret_val = PaymentPurpose_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdateErr_temporary_failure() { - uint32_t ret_conv = LDKChannelMonitorUpdateErr_to_js(ChannelMonitorUpdateErr_temporary_failure()); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_PaymentPurpose_clone(uint32_t orig) { + LDKPaymentPurpose* orig_conv = (LDKPaymentPurpose*)orig; + LDKPaymentPurpose *ret_copy = MALLOC(sizeof(LDKPaymentPurpose), "LDKPaymentPurpose"); + *ret_copy = PaymentPurpose_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdateErr_permanent_failure() { - uint32_t ret_conv = LDKChannelMonitorUpdateErr_to_js(ChannelMonitorUpdateErr_permanent_failure()); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_PaymentPurpose_invoice_payment(int8_tArray payment_preimage, int8_tArray payment_secret) { + LDKThirtyTwoBytes payment_preimage_ref; + CHECK(payment_preimage->arr_len == 32); + memcpy(payment_preimage_ref.data, payment_preimage->elems, 32); + LDKThirtyTwoBytes payment_secret_ref; + CHECK(payment_secret->arr_len == 32); + memcpy(payment_secret_ref.data, payment_secret->elems, 32); + LDKPaymentPurpose *ret_copy = MALLOC(sizeof(LDKPaymentPurpose), "LDKPaymentPurpose"); + *ret_copy = PaymentPurpose_invoice_payment(payment_preimage_ref, payment_secret_ref); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_Watch_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKWatch this_ptr_conv = *(LDKWatch*)(this_ptr_ptr); - FREE((void*)this_ptr); - Watch_free(this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_PaymentPurpose_spontaneous_payment(int8_tArray a) { + LDKThirtyTwoBytes a_ref; + CHECK(a->arr_len == 32); + memcpy(a_ref.data, a->elems, 32); + LDKPaymentPurpose *ret_copy = MALLOC(sizeof(LDKPaymentPurpose), "LDKPaymentPurpose"); + *ret_copy = PaymentPurpose_spontaneous_payment(a_ref); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_Filter_free(uint32_t this_ptr) { +void __attribute__((visibility("default"))) TS_ClosureReason_free(uint32_t this_ptr) { if ((this_ptr & 1) != 0) return; void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); CHECK_ACCESS(this_ptr_ptr); - LDKFilter this_ptr_conv = *(LDKFilter*)(this_ptr_ptr); + LDKClosureReason this_ptr_conv = *(LDKClosureReason*)(this_ptr_ptr); FREE((void*)this_ptr); - Filter_free(this_ptr_conv); -} - -void __attribute__((visibility("default"))) TS_WatchedOutput_free(uint32_t this_obj) { - LDKWatchedOutput this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - WatchedOutput_free(this_obj_conv); -} - -int8_tArray __attribute__((visibility("default"))) TS_WatchedOutput_get_block_hash(uint32_t this_ptr) { - LDKWatchedOutput this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), WatchedOutput_get_block_hash(&this_ptr_conv).data, 32); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_WatchedOutput_set_block_hash(uint32_t this_ptr, int8_tArray val) { - LDKWatchedOutput this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - WatchedOutput_set_block_hash(&this_ptr_conv, val_ref); + ClosureReason_free(this_ptr_conv); } -uint32_t __attribute__((visibility("default"))) TS_WatchedOutput_get_outpoint(uint32_t this_ptr) { - LDKWatchedOutput this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKOutPoint ret_var = WatchedOutput_get_outpoint(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } +static inline uint64_t ClosureReason_clone_ptr(LDKClosureReason *NONNULL_PTR arg) { + LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); + *ret_copy = ClosureReason_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } - -void __attribute__((visibility("default"))) TS_WatchedOutput_set_outpoint(uint32_t this_ptr, uint32_t val) { - LDKWatchedOutput this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKOutPoint val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = OutPoint_clone(&val_conv); - WatchedOutput_set_outpoint(&this_ptr_conv, val_conv); -} - -int8_tArray __attribute__((visibility("default"))) TS_WatchedOutput_get_script_pubkey(uint32_t this_ptr) { - LDKWatchedOutput this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKu8slice ret_var = WatchedOutput_get_script_pubkey(&this_ptr_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - return ret_arr; +int64_t __attribute__((visibility("default"))) TS_ClosureReason_clone_ptr(uint32_t arg) { + LDKClosureReason* arg_conv = (LDKClosureReason*)arg; + int64_t ret_val = ClosureReason_clone_ptr(arg_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_WatchedOutput_set_script_pubkey(uint32_t this_ptr, int8_tArray val) { - LDKWatchedOutput this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_u8Z val_ref; - val_ref.datalen = *((uint32_t*)val); - val_ref.data = MALLOC(val_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(val_ref.data, (uint8_t*)(val + 4), val_ref.datalen); - WatchedOutput_set_script_pubkey(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_ClosureReason_clone(uint32_t orig) { + LDKClosureReason* orig_conv = (LDKClosureReason*)orig; + LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); + *ret_copy = ClosureReason_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_WatchedOutput_new(int8_tArray block_hash_arg, uint32_t outpoint_arg, int8_tArray script_pubkey_arg) { - LDKThirtyTwoBytes block_hash_arg_ref; - CHECK(*((uint32_t*)block_hash_arg) == 32); - memcpy(block_hash_arg_ref.data, (uint8_t*)(block_hash_arg + 4), 32); - LDKOutPoint outpoint_arg_conv; - outpoint_arg_conv.inner = (void*)(outpoint_arg & (~1)); - outpoint_arg_conv.is_owned = (outpoint_arg & 1) || (outpoint_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(outpoint_arg_conv); - outpoint_arg_conv = OutPoint_clone(&outpoint_arg_conv); - LDKCVec_u8Z script_pubkey_arg_ref; - script_pubkey_arg_ref.datalen = *((uint32_t*)script_pubkey_arg); - script_pubkey_arg_ref.data = MALLOC(script_pubkey_arg_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(script_pubkey_arg_ref.data, (uint8_t*)(script_pubkey_arg + 4), script_pubkey_arg_ref.datalen); - LDKWatchedOutput ret_var = WatchedOutput_new(block_hash_arg_ref, outpoint_arg_conv, script_pubkey_arg_ref); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } +uint32_t __attribute__((visibility("default"))) TS_ClosureReason_counterparty_force_closed(jstring peer_msg) { + LDKStr peer_msg_conv = str_ref_to_owned_c(peer_msg); + LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); + *ret_copy = ClosureReason_counterparty_force_closed(peer_msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -static inline uint64_t WatchedOutput_clone_ptr(LDKWatchedOutput *NONNULL_PTR arg) { - LDKWatchedOutput ret_var = WatchedOutput_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} +uint32_t __attribute__((visibility("default"))) TS_ClosureReason_holder_force_closed() { + LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); + *ret_copy = ClosureReason_holder_force_closed(); + uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_WatchedOutput_clone_ptr(uint32_t arg) { - LDKWatchedOutput arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = WatchedOutput_clone_ptr(&arg_conv); - return ret_val; -} -uint32_t __attribute__((visibility("default"))) TS_WatchedOutput_clone(uint32_t orig) { - LDKWatchedOutput orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKWatchedOutput ret_var = WatchedOutput_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } +uint32_t __attribute__((visibility("default"))) TS_ClosureReason_cooperative_closure() { + LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); + *ret_copy = ClosureReason_cooperative_closure(); + uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_WatchedOutput_hash(uint32_t o) { - LDKWatchedOutput o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = WatchedOutput_hash(&o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_ClosureReason_commitment_tx_confirmed() { + LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); + *ret_copy = ClosureReason_commitment_tx_confirmed(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_BroadcasterInterface_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKBroadcasterInterface this_ptr_conv = *(LDKBroadcasterInterface*)(this_ptr_ptr); - FREE((void*)this_ptr); - BroadcasterInterface_free(this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_ClosureReason_funding_timed_out() { + LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); + *ret_copy = ClosureReason_funding_timed_out(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ConfirmationTarget_clone(uint32_t orig) { - LDKConfirmationTarget* orig_conv = (LDKConfirmationTarget*)(orig & ~1); - uint32_t ret_conv = LDKConfirmationTarget_to_js(ConfirmationTarget_clone(orig_conv)); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_ClosureReason_processing_error(jstring err) { + LDKStr err_conv = str_ref_to_owned_c(err); + LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); + *ret_copy = ClosureReason_processing_error(err_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ConfirmationTarget_background() { - uint32_t ret_conv = LDKConfirmationTarget_to_js(ConfirmationTarget_background()); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_ClosureReason_disconnected_peer() { + LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); + *ret_copy = ClosureReason_disconnected_peer(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ConfirmationTarget_normal() { - uint32_t ret_conv = LDKConfirmationTarget_to_js(ConfirmationTarget_normal()); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_ClosureReason_outdated_channel_manager() { + LDKClosureReason *ret_copy = MALLOC(sizeof(LDKClosureReason), "LDKClosureReason"); + *ret_copy = ClosureReason_outdated_channel_manager(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ConfirmationTarget_high_priority() { - uint32_t ret_conv = LDKConfirmationTarget_to_js(ConfirmationTarget_high_priority()); - return ret_conv; +int8_tArray __attribute__((visibility("default"))) TS_ClosureReason_write(uint32_t obj) { + LDKClosureReason* obj_conv = (LDKClosureReason*)obj; + LDKCVec_u8Z ret_var = ClosureReason_write(obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -jboolean __attribute__((visibility("default"))) TS_ConfirmationTarget_eq(uint32_t a, uint32_t b) { - LDKConfirmationTarget* a_conv = (LDKConfirmationTarget*)(a & ~1); - LDKConfirmationTarget* b_conv = (LDKConfirmationTarget*)(b & ~1); - jboolean ret_val = ConfirmationTarget_eq(a_conv, b_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_ClosureReason_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_COption_ClosureReasonZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_ClosureReasonZDecodeErrorZ), "LDKCResult_COption_ClosureReasonZDecodeErrorZ"); + *ret_conv = ClosureReason_read(ser_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_FeeEstimator_free(uint32_t this_ptr) { +void __attribute__((visibility("default"))) TS_Event_free(uint32_t this_ptr) { if ((this_ptr & 1) != 0) return; void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); CHECK_ACCESS(this_ptr_ptr); - LDKFeeEstimator this_ptr_conv = *(LDKFeeEstimator*)(this_ptr_ptr); + LDKEvent this_ptr_conv = *(LDKEvent*)(this_ptr_ptr); FREE((void*)this_ptr); - FeeEstimator_free(this_ptr_conv); -} - -void __attribute__((visibility("default"))) TS_MonitorUpdateId_free(uint32_t this_obj) { - LDKMonitorUpdateId this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - MonitorUpdateId_free(this_obj_conv); + Event_free(this_ptr_conv); } -static inline uint64_t MonitorUpdateId_clone_ptr(LDKMonitorUpdateId *NONNULL_PTR arg) { - LDKMonitorUpdateId ret_var = MonitorUpdateId_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} +static inline uint64_t Event_clone_ptr(LDKEvent *NONNULL_PTR arg) { + LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_copy = Event_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_MonitorUpdateId_clone_ptr(uint32_t arg) { - LDKMonitorUpdateId arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = MonitorUpdateId_clone_ptr(&arg_conv); +int64_t __attribute__((visibility("default"))) TS_Event_clone_ptr(uint32_t arg) { + LDKEvent* arg_conv = (LDKEvent*)arg; + int64_t ret_val = Event_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_MonitorUpdateId_clone(uint32_t orig) { - LDKMonitorUpdateId orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKMonitorUpdateId ret_var = MonitorUpdateId_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } +uint32_t __attribute__((visibility("default"))) TS_Event_clone(uint32_t orig) { + LDKEvent* orig_conv = (LDKEvent*)orig; + LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_copy = Event_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_MonitorUpdateId_hash(uint32_t o) { - LDKMonitorUpdateId o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = MonitorUpdateId_hash(&o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_Event_funding_generation_ready(int8_tArray temporary_channel_id, int64_t channel_value_satoshis, int8_tArray output_script, int64_t user_channel_id) { + LDKThirtyTwoBytes temporary_channel_id_ref; + CHECK(temporary_channel_id->arr_len == 32); + memcpy(temporary_channel_id_ref.data, temporary_channel_id->elems, 32); + LDKCVec_u8Z output_script_ref; + output_script_ref.datalen = output_script->arr_len; + output_script_ref.data = MALLOC(output_script_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(output_script_ref.data, output_script->elems, output_script_ref.datalen); + LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_copy = Event_funding_generation_ready(temporary_channel_id_ref, channel_value_satoshis, output_script_ref, user_channel_id); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_MonitorUpdateId_eq(uint32_t a, uint32_t b) { - LDKMonitorUpdateId a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKMonitorUpdateId b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = MonitorUpdateId_eq(&a_conv, &b_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_Event_payment_received(int8_tArray payment_hash, int64_t amt, uint32_t purpose) { + LDKThirtyTwoBytes payment_hash_ref; + CHECK(payment_hash->arr_len == 32); + memcpy(payment_hash_ref.data, payment_hash->elems, 32); + void* purpose_ptr = (void*)(((uint64_t)purpose) & ~1); + CHECK_ACCESS(purpose_ptr); + LDKPaymentPurpose purpose_conv = *(LDKPaymentPurpose*)(purpose_ptr); + purpose_conv = PaymentPurpose_clone((LDKPaymentPurpose*)(((uint64_t)purpose) & ~1)); + LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_copy = Event_payment_received(payment_hash_ref, amt, purpose_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_Persist_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKPersist this_ptr_conv = *(LDKPersist*)(this_ptr_ptr); - FREE((void*)this_ptr); - Persist_free(this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_Event_payment_sent(int8_tArray payment_id, int8_tArray payment_preimage, int8_tArray payment_hash, uint32_t fee_paid_msat) { + LDKThirtyTwoBytes payment_id_ref; + CHECK(payment_id->arr_len == 32); + memcpy(payment_id_ref.data, payment_id->elems, 32); + LDKThirtyTwoBytes payment_preimage_ref; + CHECK(payment_preimage->arr_len == 32); + memcpy(payment_preimage_ref.data, payment_preimage->elems, 32); + LDKThirtyTwoBytes payment_hash_ref; + CHECK(payment_hash->arr_len == 32); + memcpy(payment_hash_ref.data, payment_hash->elems, 32); + void* fee_paid_msat_ptr = (void*)(((uint64_t)fee_paid_msat) & ~1); + CHECK_ACCESS(fee_paid_msat_ptr); + LDKCOption_u64Z fee_paid_msat_conv = *(LDKCOption_u64Z*)(fee_paid_msat_ptr); + fee_paid_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)fee_paid_msat) & ~1)); + LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_copy = Event_payment_sent(payment_id_ref, payment_preimage_ref, payment_hash_ref, fee_paid_msat_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_Event_payment_path_failed(int8_tArray payment_id, int8_tArray payment_hash, jboolean rejected_by_dest, uint32_t network_update, jboolean all_paths_failed, uint32_tArray path, uint32_t short_channel_id, uint32_t retry) { + LDKThirtyTwoBytes payment_id_ref; + CHECK(payment_id->arr_len == 32); + memcpy(payment_id_ref.data, payment_id->elems, 32); + LDKThirtyTwoBytes payment_hash_ref; + CHECK(payment_hash->arr_len == 32); + memcpy(payment_hash_ref.data, payment_hash->elems, 32); + void* network_update_ptr = (void*)(((uint64_t)network_update) & ~1); + CHECK_ACCESS(network_update_ptr); + LDKCOption_NetworkUpdateZ network_update_conv = *(LDKCOption_NetworkUpdateZ*)(network_update_ptr); + network_update_conv = COption_NetworkUpdateZ_clone((LDKCOption_NetworkUpdateZ*)(((uint64_t)network_update) & ~1)); + LDKCVec_RouteHopZ path_constr; + path_constr.datalen = path->arr_len; + if (path_constr.datalen > 0) + path_constr.data = MALLOC(path_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); + else + path_constr.data = NULL; + uint32_t* path_vals = path->elems; + for (size_t k = 0; k < path_constr.datalen; k++) { + uint32_t path_conv_10 = path_vals[k]; + LDKRouteHop path_conv_10_conv; + path_conv_10_conv.inner = (void*)(path_conv_10 & (~1)); + path_conv_10_conv.is_owned = (path_conv_10 & 1) || (path_conv_10 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_conv); + path_conv_10_conv = RouteHop_clone(&path_conv_10_conv); + path_constr.data[k] = path_conv_10_conv; + } + void* short_channel_id_ptr = (void*)(((uint64_t)short_channel_id) & ~1); + CHECK_ACCESS(short_channel_id_ptr); + LDKCOption_u64Z short_channel_id_conv = *(LDKCOption_u64Z*)(short_channel_id_ptr); + short_channel_id_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)short_channel_id) & ~1)); + LDKRouteParameters retry_conv; + retry_conv.inner = (void*)(retry & (~1)); + retry_conv.is_owned = (retry & 1) || (retry == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(retry_conv); + retry_conv = RouteParameters_clone(&retry_conv); + LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_copy = Event_payment_path_failed(payment_id_ref, payment_hash_ref, rejected_by_dest, network_update_conv, all_paths_failed, path_constr, short_channel_id_conv, retry_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_LockedChannelMonitor_free(uint32_t this_obj) { - LDKLockedChannelMonitor this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - LockedChannelMonitor_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_Event_payment_failed(int8_tArray payment_id, int8_tArray payment_hash) { + LDKThirtyTwoBytes payment_id_ref; + CHECK(payment_id->arr_len == 32); + memcpy(payment_id_ref.data, payment_id->elems, 32); + LDKThirtyTwoBytes payment_hash_ref; + CHECK(payment_hash->arr_len == 32); + memcpy(payment_hash_ref.data, payment_hash->elems, 32); + LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_copy = Event_payment_failed(payment_id_ref, payment_hash_ref); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChainMonitor_free(uint32_t this_obj) { - LDKChainMonitor this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChainMonitor_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_Event_pending_htlcs_forwardable(int64_t time_forwardable) { + LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_copy = Event_pending_htlcs_forwardable(time_forwardable); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_new(uint32_t chain_source, uint32_t broadcaster, uint32_t logger, uint32_t feeest, uint32_t persister) { - void* chain_source_ptr = (void*)(((uint64_t)chain_source) & ~1); - CHECK_ACCESS(chain_source_ptr); - LDKCOption_FilterZ chain_source_conv = *(LDKCOption_FilterZ*)(chain_source_ptr); - // Warning: we may need a move here but no clone is available for LDKCOption_FilterZ - if (chain_source_conv.tag == LDKCOption_FilterZ_Some) { - // Manually implement clone for Java trait instances - } - void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); - CHECK_ACCESS(broadcaster_ptr); - LDKBroadcasterInterface broadcaster_conv = *(LDKBroadcasterInterface*)(broadcaster_ptr); - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - void* feeest_ptr = (void*)(((uint64_t)feeest) & ~1); - CHECK_ACCESS(feeest_ptr); - LDKFeeEstimator feeest_conv = *(LDKFeeEstimator*)(feeest_ptr); - void* persister_ptr = (void*)(((uint64_t)persister) & ~1); - CHECK_ACCESS(persister_ptr); - LDKPersist persister_conv = *(LDKPersist*)(persister_ptr); - LDKChainMonitor ret_var = ChainMonitor_new(chain_source_conv, broadcaster_conv, logger_conv, feeest_conv, persister_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_Event_spendable_outputs(uint32_tArray outputs) { + LDKCVec_SpendableOutputDescriptorZ outputs_constr; + outputs_constr.datalen = outputs->arr_len; + if (outputs_constr.datalen > 0) + outputs_constr.data = MALLOC(outputs_constr.datalen * sizeof(LDKSpendableOutputDescriptor), "LDKCVec_SpendableOutputDescriptorZ Elements"); + else + outputs_constr.data = NULL; + uint32_t* outputs_vals = outputs->elems; + for (size_t b = 0; b < outputs_constr.datalen; b++) { + uint32_t outputs_conv_27 = outputs_vals[b]; + void* outputs_conv_27_ptr = (void*)(((uint64_t)outputs_conv_27) & ~1); + CHECK_ACCESS(outputs_conv_27_ptr); + LDKSpendableOutputDescriptor outputs_conv_27_conv = *(LDKSpendableOutputDescriptor*)(outputs_conv_27_ptr); + outputs_conv_27_conv = SpendableOutputDescriptor_clone((LDKSpendableOutputDescriptor*)(((uint64_t)outputs_conv_27) & ~1)); + outputs_constr.data[b] = outputs_conv_27_conv; } + LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_copy = Event_spendable_outputs(outputs_constr); + uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -uint32_tArray __attribute__((visibility("default"))) TS_ChainMonitor_get_claimable_balances(uint32_t this_arg, uint32_tArray ignored_channels) { - LDKChainMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_ChannelDetailsZ ignored_channels_constr; - ignored_channels_constr.datalen = *((uint32_t*)ignored_channels); - if (ignored_channels_constr.datalen > 0) - ignored_channels_constr.data = MALLOC(ignored_channels_constr.datalen * sizeof(LDKChannelDetails), "LDKCVec_ChannelDetailsZ Elements"); - else - ignored_channels_constr.data = NULL; - uint32_t* ignored_channels_vals = (uint32_t*)(ignored_channels + 4); - for (size_t q = 0; q < ignored_channels_constr.datalen; q++) { - uint32_t ignored_channels_conv_16 = ignored_channels_vals[q]; - LDKChannelDetails ignored_channels_conv_16_conv; - ignored_channels_conv_16_conv.inner = (void*)(ignored_channels_conv_16 & (~1)); - ignored_channels_conv_16_conv.is_owned = (ignored_channels_conv_16 & 1) || (ignored_channels_conv_16 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(ignored_channels_conv_16_conv); - ignored_channels_conv_16_conv = ChannelDetails_clone(&ignored_channels_conv_16_conv); - ignored_channels_constr.data[q] = ignored_channels_conv_16_conv; - } - LDKCVec_BalanceZ ret_var = ChainMonitor_get_claimable_balances(&this_arg_conv, ignored_channels_constr); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t j = 0; j < ret_var.datalen; j++) { - LDKBalance *ret_conv_9_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); - *ret_conv_9_copy = ret_var.data[j]; - uint64_t ret_conv_9_ref = (uint64_t)ret_conv_9_copy; - ret_arr_ptr[j] = ret_conv_9_ref; - } - - FREE(ret_var.data); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_Event_payment_forwarded(uint32_t fee_earned_msat, jboolean claim_from_onchain_tx) { + void* fee_earned_msat_ptr = (void*)(((uint64_t)fee_earned_msat) & ~1); + CHECK_ACCESS(fee_earned_msat_ptr); + LDKCOption_u64Z fee_earned_msat_conv = *(LDKCOption_u64Z*)(fee_earned_msat_ptr); + fee_earned_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)fee_earned_msat) & ~1)); + LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_copy = Event_payment_forwarded(fee_earned_msat_conv, claim_from_onchain_tx); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_get_monitor(uint32_t this_arg, uint32_t funding_txo) { - LDKChainMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKOutPoint funding_txo_conv; - funding_txo_conv.inner = (void*)(funding_txo & (~1)); - funding_txo_conv.is_owned = (funding_txo & 1) || (funding_txo == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_conv); - funding_txo_conv = OutPoint_clone(&funding_txo_conv); - LDKCResult_LockedChannelMonitorNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_LockedChannelMonitorNoneZ), "LDKCResult_LockedChannelMonitorNoneZ"); - *ret_conv = ChainMonitor_get_monitor(&this_arg_conv, funding_txo_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_Event_channel_closed(int8_tArray channel_id, int64_t user_channel_id, uint32_t reason) { + LDKThirtyTwoBytes channel_id_ref; + CHECK(channel_id->arr_len == 32); + memcpy(channel_id_ref.data, channel_id->elems, 32); + void* reason_ptr = (void*)(((uint64_t)reason) & ~1); + CHECK_ACCESS(reason_ptr); + LDKClosureReason reason_conv = *(LDKClosureReason*)(reason_ptr); + reason_conv = ClosureReason_clone((LDKClosureReason*)(((uint64_t)reason) & ~1)); + LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_copy = Event_channel_closed(channel_id_ref, user_channel_id, reason_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_tArray __attribute__((visibility("default"))) TS_ChainMonitor_list_monitors(uint32_t this_arg) { - LDKChainMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_OutPointZ ret_var = ChainMonitor_list_monitors(&this_arg_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t k = 0; k < ret_var.datalen; k++) { - LDKOutPoint ret_conv_10_var = ret_var.data[k]; - uint64_t ret_conv_10_ref = 0; - CHECK((((uint64_t)ret_conv_10_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_10_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_10_var); - ret_conv_10_ref = (uint64_t)ret_conv_10_var.inner; - if (ret_conv_10_var.is_owned) { - ret_conv_10_ref |= 1; - } - ret_arr_ptr[k] = ret_conv_10_ref; - } - - FREE(ret_var.data); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_Event_discard_funding(int8_tArray channel_id, int8_tArray transaction) { + LDKThirtyTwoBytes channel_id_ref; + CHECK(channel_id->arr_len == 32); + memcpy(channel_id_ref.data, channel_id->elems, 32); + LDKTransaction transaction_ref; + transaction_ref.datalen = transaction->arr_len; + transaction_ref.data = MALLOC(transaction_ref.datalen, "LDKTransaction Bytes"); + memcpy(transaction_ref.data, transaction->elems, transaction_ref.datalen); + transaction_ref.data_is_owned = true; + LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_copy = Event_discard_funding(channel_id_ref, transaction_ref); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_channel_monitor_updated(uint32_t this_arg, uint32_t funding_txo, uint32_t completed_update_id) { - LDKChainMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKOutPoint funding_txo_conv; - funding_txo_conv.inner = (void*)(funding_txo & (~1)); - funding_txo_conv.is_owned = (funding_txo & 1) || (funding_txo == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_conv); - funding_txo_conv = OutPoint_clone(&funding_txo_conv); - LDKMonitorUpdateId completed_update_id_conv; - completed_update_id_conv.inner = (void*)(completed_update_id & (~1)); - completed_update_id_conv.is_owned = (completed_update_id & 1) || (completed_update_id == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(completed_update_id_conv); - completed_update_id_conv = MonitorUpdateId_clone(&completed_update_id_conv); - LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); - *ret_conv = ChainMonitor_channel_monitor_updated(&this_arg_conv, funding_txo_conv, completed_update_id_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_Event_payment_path_successful(int8_tArray payment_id, int8_tArray payment_hash, uint32_tArray path) { + LDKThirtyTwoBytes payment_id_ref; + CHECK(payment_id->arr_len == 32); + memcpy(payment_id_ref.data, payment_id->elems, 32); + LDKThirtyTwoBytes payment_hash_ref; + CHECK(payment_hash->arr_len == 32); + memcpy(payment_hash_ref.data, payment_hash->elems, 32); + LDKCVec_RouteHopZ path_constr; + path_constr.datalen = path->arr_len; + if (path_constr.datalen > 0) + path_constr.data = MALLOC(path_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); + else + path_constr.data = NULL; + uint32_t* path_vals = path->elems; + for (size_t k = 0; k < path_constr.datalen; k++) { + uint32_t path_conv_10 = path_vals[k]; + LDKRouteHop path_conv_10_conv; + path_conv_10_conv.inner = (void*)(path_conv_10 & (~1)); + path_conv_10_conv.is_owned = (path_conv_10 & 1) || (path_conv_10 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv_10_conv); + path_conv_10_conv = RouteHop_clone(&path_conv_10_conv); + path_constr.data[k] = path_conv_10_conv; + } + LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_copy = Event_payment_path_successful(payment_id_ref, payment_hash_ref, path_constr); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_as_Listen(uint32_t this_arg) { - LDKChainMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKListen* ret_ret = MALLOC(sizeof(LDKListen), "LDKListen"); - *ret_ret = ChainMonitor_as_Listen(&this_arg_conv); - return (uint64_t)ret_ret; +int8_tArray __attribute__((visibility("default"))) TS_Event_write(uint32_t obj) { + LDKEvent* obj_conv = (LDKEvent*)obj; + LDKCVec_u8Z ret_var = Event_write(obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_as_Confirm(uint32_t this_arg) { - LDKChainMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKConfirm* ret_ret = MALLOC(sizeof(LDKConfirm), "LDKConfirm"); - *ret_ret = ChainMonitor_as_Confirm(&this_arg_conv); - return (uint64_t)ret_ret; +uint32_t __attribute__((visibility("default"))) TS_Event_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_COption_EventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_EventZDecodeErrorZ), "LDKCResult_COption_EventZDecodeErrorZ"); + *ret_conv = Event_read(ser_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_as_Watch(uint32_t this_arg) { - LDKChainMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKWatch* ret_ret = MALLOC(sizeof(LDKWatch), "LDKWatch"); - *ret_ret = ChainMonitor_as_Watch(&this_arg_conv); - return (uint64_t)ret_ret; +void __attribute__((visibility("default"))) TS_MessageSendEvent_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKMessageSendEvent this_ptr_conv = *(LDKMessageSendEvent*)(this_ptr_ptr); + FREE((void*)this_ptr); + MessageSendEvent_free(this_ptr_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_as_EventsProvider(uint32_t this_arg) { - LDKChainMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKEventsProvider* ret_ret = MALLOC(sizeof(LDKEventsProvider), "LDKEventsProvider"); - *ret_ret = ChainMonitor_as_EventsProvider(&this_arg_conv); - return (uint64_t)ret_ret; +static inline uint64_t MessageSendEvent_clone_ptr(LDKMessageSendEvent *NONNULL_PTR arg) { + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_MessageSendEvent_clone_ptr(uint32_t arg) { + LDKMessageSendEvent* arg_conv = (LDKMessageSendEvent*)arg; + int64_t ret_val = MessageSendEvent_clone_ptr(arg_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_free(uint32_t this_obj) { - LDKChannelMonitorUpdate this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelMonitorUpdate_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_clone(uint32_t orig) { + LDKMessageSendEvent* orig_conv = (LDKMessageSendEvent*)orig; + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_get_update_id(uint32_t this_ptr) { - LDKChannelMonitorUpdate this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelMonitorUpdate_get_update_id(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_accept_channel(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKAcceptChannel msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = AcceptChannel_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_accept_channel(node_id_ref, msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_set_update_id(uint32_t this_ptr, int64_t val) { - LDKChannelMonitorUpdate this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelMonitorUpdate_set_update_id(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_open_channel(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKOpenChannel msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = OpenChannel_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_open_channel(node_id_ref, msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -static inline uint64_t ChannelMonitorUpdate_clone_ptr(LDKChannelMonitorUpdate *NONNULL_PTR arg) { - LDKChannelMonitorUpdate ret_var = ChannelMonitorUpdate_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_funding_created(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKFundingCreated msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = FundingCreated_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_funding_created(node_id_ref, msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } + +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_funding_signed(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKFundingSigned msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = FundingSigned_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_funding_signed(node_id_ref, msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_clone_ptr(uint32_t arg) { - LDKChannelMonitorUpdate arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelMonitorUpdate_clone_ptr(&arg_conv); - return ret_val; + +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_funding_locked(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKFundingLocked msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = FundingLocked_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_funding_locked(node_id_ref, msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_clone(uint32_t orig) { - LDKChannelMonitorUpdate orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelMonitorUpdate ret_var = ChannelMonitorUpdate_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_announcement_signatures(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKAnnouncementSignatures msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = AnnouncementSignatures_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_announcement_signatures(node_id_ref, msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_write(uint32_t obj) { - LDKChannelMonitorUpdate obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ChannelMonitorUpdate_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_update_htlcs(int8_tArray node_id, uint32_t updates) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKCommitmentUpdate updates_conv; + updates_conv.inner = (void*)(updates & (~1)); + updates_conv.is_owned = (updates & 1) || (updates == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(updates_conv); + updates_conv = CommitmentUpdate_clone(&updates_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_update_htlcs(node_id_ref, updates_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ChannelMonitorUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelMonitorUpdateDecodeErrorZ), "LDKCResult_ChannelMonitorUpdateDecodeErrorZ"); - *ret_conv = ChannelMonitorUpdate_read(ser_ref); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_revoke_and_ack(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKRevokeAndACK msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = RevokeAndACK_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_revoke_and_ack(node_id_ref, msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_MonitorEvent_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKMonitorEvent this_ptr_conv = *(LDKMonitorEvent*)(this_ptr_ptr); - FREE((void*)this_ptr); - MonitorEvent_free(this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_closing_signed(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKClosingSigned msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = ClosingSigned_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_closing_signed(node_id_ref, msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -static inline uint64_t MonitorEvent_clone_ptr(LDKMonitorEvent *NONNULL_PTR arg) { - LDKMonitorEvent *ret_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); - *ret_copy = MonitorEvent_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_shutdown(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKShutdown msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = Shutdown_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_shutdown(node_id_ref, msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_MonitorEvent_clone_ptr(uint32_t arg) { - LDKMonitorEvent* arg_conv = (LDKMonitorEvent*)arg; - int64_t ret_val = MonitorEvent_clone_ptr(arg_conv); - return ret_val; + +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_channel_reestablish(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKChannelReestablish msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = ChannelReestablish_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_channel_reestablish(node_id_ref, msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_MonitorEvent_clone(uint32_t orig) { - LDKMonitorEvent* orig_conv = (LDKMonitorEvent*)orig; - LDKMonitorEvent *ret_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); - *ret_copy = MonitorEvent_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_broadcast_channel_announcement(uint32_t msg, uint32_t update_msg) { + LDKChannelAnnouncement msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = ChannelAnnouncement_clone(&msg_conv); + LDKChannelUpdate update_msg_conv; + update_msg_conv.inner = (void*)(update_msg & (~1)); + update_msg_conv.is_owned = (update_msg & 1) || (update_msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_msg_conv); + update_msg_conv = ChannelUpdate_clone(&update_msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_broadcast_channel_announcement(msg_conv, update_msg_conv); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_MonitorEvent_htlcevent(uint32_t a) { - LDKHTLCUpdate a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = (a & 1) || (a == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - a_conv = HTLCUpdate_clone(&a_conv); - LDKMonitorEvent *ret_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); - *ret_copy = MonitorEvent_htlcevent(a_conv); +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_broadcast_node_announcement(uint32_t msg) { + LDKNodeAnnouncement msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = NodeAnnouncement_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_broadcast_node_announcement(msg_conv); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_MonitorEvent_commitment_tx_confirmed(uint32_t a) { - LDKOutPoint a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = (a & 1) || (a == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - a_conv = OutPoint_clone(&a_conv); - LDKMonitorEvent *ret_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); - *ret_copy = MonitorEvent_commitment_tx_confirmed(a_conv); +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_broadcast_channel_update(uint32_t msg) { + LDKChannelUpdate msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = ChannelUpdate_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_broadcast_channel_update(msg_conv); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_MonitorEvent_update_completed(uint32_t funding_txo, int64_t monitor_update_id) { - LDKOutPoint funding_txo_conv; - funding_txo_conv.inner = (void*)(funding_txo & (~1)); - funding_txo_conv.is_owned = (funding_txo & 1) || (funding_txo == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_conv); - funding_txo_conv = OutPoint_clone(&funding_txo_conv); - LDKMonitorEvent *ret_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); - *ret_copy = MonitorEvent_update_completed(funding_txo_conv, monitor_update_id); +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_channel_update(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKChannelUpdate msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = ChannelUpdate_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_channel_update(node_id_ref, msg_conv); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_MonitorEvent_update_failed(uint32_t a) { - LDKOutPoint a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = (a & 1) || (a == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - a_conv = OutPoint_clone(&a_conv); - LDKMonitorEvent *ret_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); - *ret_copy = MonitorEvent_update_failed(a_conv); +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_handle_error(int8_tArray node_id, uint32_t action) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + void* action_ptr = (void*)(((uint64_t)action) & ~1); + CHECK_ACCESS(action_ptr); + LDKErrorAction action_conv = *(LDKErrorAction*)(action_ptr); + action_conv = ErrorAction_clone((LDKErrorAction*)(((uint64_t)action) & ~1)); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_handle_error(node_id_ref, action_conv); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_MonitorEvent_write(uint32_t obj) { - LDKMonitorEvent* obj_conv = (LDKMonitorEvent*)obj; - LDKCVec_u8Z ret_var = MonitorEvent_write(obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_MonitorEvent_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_COption_MonitorEventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_MonitorEventZDecodeErrorZ), "LDKCResult_COption_MonitorEventZDecodeErrorZ"); - *ret_conv = MonitorEvent_read(ser_ref); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_channel_range_query(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKQueryChannelRange msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = QueryChannelRange_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_channel_range_query(node_id_ref, msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_HTLCUpdate_free(uint32_t this_obj) { - LDKHTLCUpdate this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - HTLCUpdate_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_short_ids_query(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKQueryShortChannelIds msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = QueryShortChannelIds_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_short_ids_query(node_id_ref, msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -static inline uint64_t HTLCUpdate_clone_ptr(LDKHTLCUpdate *NONNULL_PTR arg) { - LDKHTLCUpdate ret_var = HTLCUpdate_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} +uint32_t __attribute__((visibility("default"))) TS_MessageSendEvent_send_reply_channel_range(int8_tArray node_id, uint32_t msg) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKReplyChannelRange msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = ReplyChannelRange_clone(&msg_conv); + LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent"); + *ret_copy = MessageSendEvent_send_reply_channel_range(node_id_ref, msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_HTLCUpdate_clone_ptr(uint32_t arg) { - LDKHTLCUpdate arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = HTLCUpdate_clone_ptr(&arg_conv); - return ret_val; -} -uint32_t __attribute__((visibility("default"))) TS_HTLCUpdate_clone(uint32_t orig) { - LDKHTLCUpdate orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKHTLCUpdate ret_var = HTLCUpdate_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_MessageSendEventsProvider_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKMessageSendEventsProvider this_ptr_conv = *(LDKMessageSendEventsProvider*)(this_ptr_ptr); + FREE((void*)this_ptr); + MessageSendEventsProvider_free(this_ptr_conv); } -int8_tArray __attribute__((visibility("default"))) TS_HTLCUpdate_write(uint32_t obj) { - LDKHTLCUpdate obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = HTLCUpdate_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +void __attribute__((visibility("default"))) TS_EventsProvider_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKEventsProvider this_ptr_conv = *(LDKEventsProvider*)(this_ptr_ptr); + FREE((void*)this_ptr); + EventsProvider_free(this_ptr_conv); } -uint32_t __attribute__((visibility("default"))) TS_HTLCUpdate_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_HTLCUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCUpdateDecodeErrorZ), "LDKCResult_HTLCUpdateDecodeErrorZ"); - *ret_conv = HTLCUpdate_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_EventHandler_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKEventHandler this_ptr_conv = *(LDKEventHandler*)(this_ptr_ptr); + FREE((void*)this_ptr); + EventHandler_free(this_ptr_conv); } -void __attribute__((visibility("default"))) TS_Balance_free(uint32_t this_ptr) { +void __attribute__((visibility("default"))) TS_APIError_free(uint32_t this_ptr) { if ((this_ptr & 1) != 0) return; void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); CHECK_ACCESS(this_ptr_ptr); - LDKBalance this_ptr_conv = *(LDKBalance*)(this_ptr_ptr); + LDKAPIError this_ptr_conv = *(LDKAPIError*)(this_ptr_ptr); FREE((void*)this_ptr); - Balance_free(this_ptr_conv); + APIError_free(this_ptr_conv); } -static inline uint64_t Balance_clone_ptr(LDKBalance *NONNULL_PTR arg) { - LDKBalance *ret_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); - *ret_copy = Balance_clone(arg); +static inline uint64_t APIError_clone_ptr(LDKAPIError *NONNULL_PTR arg) { + LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); + *ret_copy = APIError_clone(arg); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_Balance_clone_ptr(uint32_t arg) { - LDKBalance* arg_conv = (LDKBalance*)arg; - int64_t ret_val = Balance_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_APIError_clone_ptr(uint32_t arg) { + LDKAPIError* arg_conv = (LDKAPIError*)arg; + int64_t ret_val = APIError_clone_ptr(arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Balance_clone(uint32_t orig) { - LDKBalance* orig_conv = (LDKBalance*)orig; - LDKBalance *ret_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); - *ret_copy = Balance_clone(orig_conv); +uint32_t __attribute__((visibility("default"))) TS_APIError_clone(uint32_t orig) { + LDKAPIError* orig_conv = (LDKAPIError*)orig; + LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); + *ret_copy = APIError_clone(orig_conv); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_Balance_claimable_on_channel_close(int64_t claimable_amount_satoshis) { - LDKBalance *ret_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); - *ret_copy = Balance_claimable_on_channel_close(claimable_amount_satoshis); +uint32_t __attribute__((visibility("default"))) TS_APIError_apimisuse_error(jstring err) { + LDKStr err_conv = str_ref_to_owned_c(err); + LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); + *ret_copy = APIError_apimisuse_error(err_conv); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_Balance_claimable_awaiting_confirmations(int64_t claimable_amount_satoshis, int32_t confirmation_height) { - LDKBalance *ret_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); - *ret_copy = Balance_claimable_awaiting_confirmations(claimable_amount_satoshis, confirmation_height); +uint32_t __attribute__((visibility("default"))) TS_APIError_fee_rate_too_high(jstring err, int32_t feerate) { + LDKStr err_conv = str_ref_to_owned_c(err); + LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); + *ret_copy = APIError_fee_rate_too_high(err_conv, feerate); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_Balance_contentious_claimable(int64_t claimable_amount_satoshis, int32_t timeout_height) { - LDKBalance *ret_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); - *ret_copy = Balance_contentious_claimable(claimable_amount_satoshis, timeout_height); +uint32_t __attribute__((visibility("default"))) TS_APIError_route_error(jstring err) { + LDKStr err_conv = str_ref_to_owned_c(err); + LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); + *ret_copy = APIError_route_error(err_conv); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_Balance_maybe_claimable_htlcawaiting_timeout(int64_t claimable_amount_satoshis, int32_t claimable_height) { - LDKBalance *ret_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); - *ret_copy = Balance_maybe_claimable_htlcawaiting_timeout(claimable_amount_satoshis, claimable_height); +uint32_t __attribute__((visibility("default"))) TS_APIError_channel_unavailable(jstring err) { + LDKStr err_conv = str_ref_to_owned_c(err); + LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); + *ret_copy = APIError_channel_unavailable(err_conv); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_Balance_eq(uint32_t a, uint32_t b) { - LDKBalance* a_conv = (LDKBalance*)a; - LDKBalance* b_conv = (LDKBalance*)b; - jboolean ret_val = Balance_eq(a_conv, b_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_APIError_monitor_update_failed() { + LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); + *ret_copy = APIError_monitor_update_failed(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMonitor_free(uint32_t this_obj) { - LDKChannelMonitor this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelMonitor_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_APIError_incompatible_shutdown_script(uint32_t script) { + LDKShutdownScript script_conv; + script_conv.inner = (void*)(script & (~1)); + script_conv.is_owned = (script & 1) || (script == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(script_conv); + script_conv = ShutdownScript_clone(&script_conv); + LDKAPIError *ret_copy = MALLOC(sizeof(LDKAPIError), "LDKAPIError"); + *ret_copy = APIError_incompatible_shutdown_script(script_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_sign(int8_tArray msg, int8_tArray sk) { + LDKu8slice msg_ref; + msg_ref.datalen = msg->arr_len; + msg_ref.data = msg->elems; + unsigned char sk_arr[32]; + CHECK(sk->arr_len == 32); + memcpy(sk_arr, sk->elems, 32); + unsigned char (*sk_ref)[32] = &sk_arr; + LDKCResult_StringErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StringErrorZ), "LDKCResult_StringErrorZ"); + *ret_conv = sign(msg_ref, sk_ref); + return (uint64_t)ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_recover_pk(int8_tArray msg, jstring sig) { + LDKu8slice msg_ref; + msg_ref.datalen = msg->arr_len; + msg_ref.data = msg->elems; + LDKStr sig_conv = str_ref_to_owned_c(sig); + LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); + *ret_conv = recover_pk(msg_ref, sig_conv); + return (uint64_t)ret_conv; +} + +jboolean __attribute__((visibility("default"))) TS_verify(int8_tArray msg, jstring sig, int8_tArray pk) { + LDKu8slice msg_ref; + msg_ref.datalen = msg->arr_len; + msg_ref.data = msg->elems; + LDKStr sig_conv = str_ref_to_owned_c(sig); + LDKPublicKey pk_ref; + CHECK(pk->arr_len == 33); + memcpy(pk_ref.compressed_form, pk->elems, 33); + jboolean ret_val = verify(msg_ref, sig_conv, pk_ref); + return ret_val; } -static inline uint64_t ChannelMonitor_clone_ptr(LDKChannelMonitor *NONNULL_PTR arg) { - LDKChannelMonitor ret_var = ChannelMonitor_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_Level_clone(uint32_t orig) { + LDKLevel* orig_conv = (LDKLevel*)(orig & ~1); + uint32_t ret_conv = LDKLevel_to_js(Level_clone(orig_conv)); + return ret_conv; } - return ret_ref; + +uint32_t __attribute__((visibility("default"))) TS_Level_gossip() { + uint32_t ret_conv = LDKLevel_to_js(Level_gossip()); + return ret_conv; } -int64_t __attribute__((visibility("default"))) TS_ChannelMonitor_clone_ptr(uint32_t arg) { - LDKChannelMonitor arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelMonitor_clone_ptr(&arg_conv); - return ret_val; + +uint32_t __attribute__((visibility("default"))) TS_Level_trace() { + uint32_t ret_conv = LDKLevel_to_js(Level_trace()); + return ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ChannelMonitor_clone(uint32_t orig) { - LDKChannelMonitor orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelMonitor ret_var = ChannelMonitor_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_Level_debug() { + uint32_t ret_conv = LDKLevel_to_js(Level_debug()); + return ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_write(uint32_t obj) { - LDKChannelMonitor obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ChannelMonitor_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_Level_info() { + uint32_t ret_conv = LDKLevel_to_js(Level_info()); + return ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ChannelMonitor_update_monitor(uint32_t this_arg, uint32_t updates, uint32_t broadcaster, uint32_t fee_estimator, uint32_t logger) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKChannelMonitorUpdate updates_conv; - updates_conv.inner = (void*)(updates & (~1)); - updates_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(updates_conv); - void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); - if (!(broadcaster & 1)) { CHECK_ACCESS(broadcaster_ptr); } - LDKBroadcasterInterface* broadcaster_conv = (LDKBroadcasterInterface*)broadcaster_ptr; - void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); - if (!(fee_estimator & 1)) { CHECK_ACCESS(fee_estimator_ptr); } - LDKFeeEstimator* fee_estimator_conv = (LDKFeeEstimator*)fee_estimator_ptr; - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - if (!(logger & 1)) { CHECK_ACCESS(logger_ptr); } - LDKLogger* logger_conv = (LDKLogger*)logger_ptr; - LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); - *ret_conv = ChannelMonitor_update_monitor(&this_arg_conv, &updates_conv, broadcaster_conv, fee_estimator_conv, logger_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_Level_warn() { + uint32_t ret_conv = LDKLevel_to_js(Level_warn()); + return ret_conv; } -int64_t __attribute__((visibility("default"))) TS_ChannelMonitor_get_latest_update_id(uint32_t this_arg) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = ChannelMonitor_get_latest_update_id(&this_arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_Level_error() { + uint32_t ret_conv = LDKLevel_to_js(Level_error()); + return ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ChannelMonitor_get_funding_txo(uint32_t this_arg) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKC2Tuple_OutPointScriptZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_OutPointScriptZ), "LDKC2Tuple_OutPointScriptZ"); - *ret_conv = ChannelMonitor_get_funding_txo(&this_arg_conv); - return ((uint64_t)ret_conv); +jboolean __attribute__((visibility("default"))) TS_Level_eq(uint32_t a, uint32_t b) { + LDKLevel* a_conv = (LDKLevel*)(a & ~1); + LDKLevel* b_conv = (LDKLevel*)(b & ~1); + jboolean ret_val = Level_eq(a_conv, b_conv); + return ret_val; } -uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_get_outputs_to_watch(uint32_t this_arg) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ ret_var = ChannelMonitor_get_outputs_to_watch(&this_arg_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t o = 0; o < ret_var.datalen; o++) { - LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* ret_conv_40_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ"); - *ret_conv_40_conv = ret_var.data[o]; - ret_arr_ptr[o] = ((uint64_t)ret_conv_40_conv); - } - - FREE(ret_var.data); - return ret_arr; +int64_t __attribute__((visibility("default"))) TS_Level_hash(uint32_t o) { + LDKLevel* o_conv = (LDKLevel*)(o & ~1); + int64_t ret_val = Level_hash(o_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelMonitor_load_outputs_to_watch(uint32_t this_arg, uint32_t filter) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - void* filter_ptr = (void*)(((uint64_t)filter) & ~1); - if (!(filter & 1)) { CHECK_ACCESS(filter_ptr); } - LDKFilter* filter_conv = (LDKFilter*)filter_ptr; - ChannelMonitor_load_outputs_to_watch(&this_arg_conv, filter_conv); +uint32_t __attribute__((visibility("default"))) TS_Level_max() { + uint32_t ret_conv = LDKLevel_to_js(Level_max()); + return ret_conv; } -uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_get_and_clear_pending_monitor_events(uint32_t this_arg) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_MonitorEventZ ret_var = ChannelMonitor_get_and_clear_pending_monitor_events(&this_arg_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t o = 0; o < ret_var.datalen; o++) { - LDKMonitorEvent *ret_conv_14_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); - *ret_conv_14_copy = ret_var.data[o]; - uint64_t ret_conv_14_ref = (uint64_t)ret_conv_14_copy; - ret_arr_ptr[o] = ret_conv_14_ref; - } - - FREE(ret_var.data); - return ret_arr; +void __attribute__((visibility("default"))) TS_Record_free(uint32_t this_obj) { + LDKRecord this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + Record_free(this_obj_conv); } -uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_get_and_clear_pending_events(uint32_t this_arg) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_EventZ ret_var = ChannelMonitor_get_and_clear_pending_events(&this_arg_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t h = 0; h < ret_var.datalen; h++) { - LDKEvent *ret_conv_7_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); - *ret_conv_7_copy = ret_var.data[h]; - uint64_t ret_conv_7_ref = (uint64_t)ret_conv_7_copy; - ret_arr_ptr[h] = ret_conv_7_ref; - } - - FREE(ret_var.data); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_Record_get_level(uint32_t this_ptr) { + LDKRecord this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + uint32_t ret_conv = LDKLevel_to_js(Record_get_level(&this_ptr_conv)); + return ret_conv; } -ptrArray __attribute__((visibility("default"))) TS_ChannelMonitor_get_latest_holder_commitment_txn(uint32_t this_arg, uint32_t logger) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - if (!(logger & 1)) { CHECK_ACCESS(logger_ptr); } - LDKLogger* logger_conv = (LDKLogger*)logger_ptr; - LDKCVec_TransactionZ ret_var = ChannelMonitor_get_latest_holder_commitment_txn(&this_arg_conv, logger_conv); - ptrArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native ptrArray Bytes"); - int8_tArray *ret_arr_ptr = (int8_tArray*)(ret_arr + 4); - for (size_t m = 0; m < ret_var.datalen; m++) { - LDKTransaction ret_conv_12_var = ret_var.data[m]; - int8_tArray ret_conv_12_arr = init_arr(ret_conv_12_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_conv_12_arr + 4), ret_conv_12_var.data, ret_conv_12_var.datalen); - Transaction_free(ret_conv_12_var); - ret_arr_ptr[m] = ret_conv_12_arr; - } - - FREE(ret_var.data); - return ret_arr; +void __attribute__((visibility("default"))) TS_Record_set_level(uint32_t this_ptr, uint32_t val) { + LDKRecord this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKLevel val_conv = LDKLevel_from_js(val); + Record_set_level(&this_ptr_conv, val_conv); } -uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_block_connected(uint32_t this_arg, int8_tArray header, uint32_tArray txdata, int32_t height, uint32_t broadcaster, uint32_t fee_estimator, uint32_t logger) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char header_arr[80]; - CHECK(*((uint32_t*)header) == 80); - memcpy(header_arr, (uint8_t*)(header + 4), 80); - unsigned char (*header_ref)[80] = &header_arr; - LDKCVec_C2Tuple_usizeTransactionZZ txdata_constr; - txdata_constr.datalen = *((uint32_t*)txdata); - if (txdata_constr.datalen > 0) - txdata_constr.data = MALLOC(txdata_constr.datalen * sizeof(LDKC2Tuple_usizeTransactionZ), "LDKCVec_C2Tuple_usizeTransactionZZ Elements"); - else - txdata_constr.data = NULL; - uint32_t* txdata_vals = (uint32_t*)(txdata + 4); - for (size_t c = 0; c < txdata_constr.datalen; c++) { - uint32_t txdata_conv_28 = txdata_vals[c]; - void* txdata_conv_28_ptr = (void*)(((uint64_t)txdata_conv_28) & ~1); - CHECK_ACCESS(txdata_conv_28_ptr); - LDKC2Tuple_usizeTransactionZ txdata_conv_28_conv = *(LDKC2Tuple_usizeTransactionZ*)(txdata_conv_28_ptr); - txdata_conv_28_conv = C2Tuple_usizeTransactionZ_clone((LDKC2Tuple_usizeTransactionZ*)(((uint64_t)txdata_conv_28) & ~1)); - txdata_constr.data[c] = txdata_conv_28_conv; - } - void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); - CHECK_ACCESS(broadcaster_ptr); - LDKBroadcasterInterface broadcaster_conv = *(LDKBroadcasterInterface*)(broadcaster_ptr); - void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); - CHECK_ACCESS(fee_estimator_ptr); - LDKFeeEstimator fee_estimator_conv = *(LDKFeeEstimator*)(fee_estimator_ptr); - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ ret_var = ChannelMonitor_block_connected(&this_arg_conv, header_ref, txdata_constr, height, broadcaster_conv, fee_estimator_conv, logger_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t n = 0; n < ret_var.datalen; n++) { - LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* ret_conv_39_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ"); - *ret_conv_39_conv = ret_var.data[n]; - ret_arr_ptr[n] = ((uint64_t)ret_conv_39_conv); - } - - FREE(ret_var.data); - return ret_arr; +jstring __attribute__((visibility("default"))) TS_Record_get_args(uint32_t this_ptr) { + LDKRecord this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKStr ret_str = Record_get_args(&this_ptr_conv); + jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); + Str_free(ret_str); + return ret_conv; } -void __attribute__((visibility("default"))) TS_ChannelMonitor_block_disconnected(uint32_t this_arg, int8_tArray header, int32_t height, uint32_t broadcaster, uint32_t fee_estimator, uint32_t logger) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char header_arr[80]; - CHECK(*((uint32_t*)header) == 80); - memcpy(header_arr, (uint8_t*)(header + 4), 80); - unsigned char (*header_ref)[80] = &header_arr; - void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); - CHECK_ACCESS(broadcaster_ptr); - LDKBroadcasterInterface broadcaster_conv = *(LDKBroadcasterInterface*)(broadcaster_ptr); - void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); - CHECK_ACCESS(fee_estimator_ptr); - LDKFeeEstimator fee_estimator_conv = *(LDKFeeEstimator*)(fee_estimator_ptr); - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - ChannelMonitor_block_disconnected(&this_arg_conv, header_ref, height, broadcaster_conv, fee_estimator_conv, logger_conv); +void __attribute__((visibility("default"))) TS_Record_set_args(uint32_t this_ptr, jstring val) { + LDKRecord this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKStr val_conv = str_ref_to_owned_c(val); + Record_set_args(&this_ptr_conv, val_conv); } -uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_transactions_confirmed(uint32_t this_arg, int8_tArray header, uint32_tArray txdata, int32_t height, uint32_t broadcaster, uint32_t fee_estimator, uint32_t logger) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char header_arr[80]; - CHECK(*((uint32_t*)header) == 80); - memcpy(header_arr, (uint8_t*)(header + 4), 80); - unsigned char (*header_ref)[80] = &header_arr; - LDKCVec_C2Tuple_usizeTransactionZZ txdata_constr; - txdata_constr.datalen = *((uint32_t*)txdata); - if (txdata_constr.datalen > 0) - txdata_constr.data = MALLOC(txdata_constr.datalen * sizeof(LDKC2Tuple_usizeTransactionZ), "LDKCVec_C2Tuple_usizeTransactionZZ Elements"); - else - txdata_constr.data = NULL; - uint32_t* txdata_vals = (uint32_t*)(txdata + 4); - for (size_t c = 0; c < txdata_constr.datalen; c++) { - uint32_t txdata_conv_28 = txdata_vals[c]; - void* txdata_conv_28_ptr = (void*)(((uint64_t)txdata_conv_28) & ~1); - CHECK_ACCESS(txdata_conv_28_ptr); - LDKC2Tuple_usizeTransactionZ txdata_conv_28_conv = *(LDKC2Tuple_usizeTransactionZ*)(txdata_conv_28_ptr); - txdata_conv_28_conv = C2Tuple_usizeTransactionZ_clone((LDKC2Tuple_usizeTransactionZ*)(((uint64_t)txdata_conv_28) & ~1)); - txdata_constr.data[c] = txdata_conv_28_conv; - } - void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); - CHECK_ACCESS(broadcaster_ptr); - LDKBroadcasterInterface broadcaster_conv = *(LDKBroadcasterInterface*)(broadcaster_ptr); - void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); - CHECK_ACCESS(fee_estimator_ptr); - LDKFeeEstimator fee_estimator_conv = *(LDKFeeEstimator*)(fee_estimator_ptr); - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ ret_var = ChannelMonitor_transactions_confirmed(&this_arg_conv, header_ref, txdata_constr, height, broadcaster_conv, fee_estimator_conv, logger_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t n = 0; n < ret_var.datalen; n++) { - LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* ret_conv_39_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ"); - *ret_conv_39_conv = ret_var.data[n]; - ret_arr_ptr[n] = ((uint64_t)ret_conv_39_conv); - } - - FREE(ret_var.data); - return ret_arr; +jstring __attribute__((visibility("default"))) TS_Record_get_module_path(uint32_t this_ptr) { + LDKRecord this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKStr ret_str = Record_get_module_path(&this_ptr_conv); + jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); + Str_free(ret_str); + return ret_conv; } -void __attribute__((visibility("default"))) TS_ChannelMonitor_transaction_unconfirmed(uint32_t this_arg, int8_tArray txid, uint32_t broadcaster, uint32_t fee_estimator, uint32_t logger) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char txid_arr[32]; - CHECK(*((uint32_t*)txid) == 32); - memcpy(txid_arr, (uint8_t*)(txid + 4), 32); - unsigned char (*txid_ref)[32] = &txid_arr; - void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); - CHECK_ACCESS(broadcaster_ptr); - LDKBroadcasterInterface broadcaster_conv = *(LDKBroadcasterInterface*)(broadcaster_ptr); - void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); - CHECK_ACCESS(fee_estimator_ptr); - LDKFeeEstimator fee_estimator_conv = *(LDKFeeEstimator*)(fee_estimator_ptr); - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - ChannelMonitor_transaction_unconfirmed(&this_arg_conv, txid_ref, broadcaster_conv, fee_estimator_conv, logger_conv); +void __attribute__((visibility("default"))) TS_Record_set_module_path(uint32_t this_ptr, jstring val) { + LDKRecord this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKStr val_conv = str_ref_to_owned_c(val); + Record_set_module_path(&this_ptr_conv, val_conv); } -uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_best_block_updated(uint32_t this_arg, int8_tArray header, int32_t height, uint32_t broadcaster, uint32_t fee_estimator, uint32_t logger) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char header_arr[80]; - CHECK(*((uint32_t*)header) == 80); - memcpy(header_arr, (uint8_t*)(header + 4), 80); - unsigned char (*header_ref)[80] = &header_arr; - void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); - CHECK_ACCESS(broadcaster_ptr); - LDKBroadcasterInterface broadcaster_conv = *(LDKBroadcasterInterface*)(broadcaster_ptr); - void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); - CHECK_ACCESS(fee_estimator_ptr); - LDKFeeEstimator fee_estimator_conv = *(LDKFeeEstimator*)(fee_estimator_ptr); - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ ret_var = ChannelMonitor_best_block_updated(&this_arg_conv, header_ref, height, broadcaster_conv, fee_estimator_conv, logger_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t n = 0; n < ret_var.datalen; n++) { - LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* ret_conv_39_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ"); - *ret_conv_39_conv = ret_var.data[n]; - ret_arr_ptr[n] = ((uint64_t)ret_conv_39_conv); - } - - FREE(ret_var.data); - return ret_arr; +jstring __attribute__((visibility("default"))) TS_Record_get_file(uint32_t this_ptr) { + LDKRecord this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKStr ret_str = Record_get_file(&this_ptr_conv); + jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); + Str_free(ret_str); + return ret_conv; } -ptrArray __attribute__((visibility("default"))) TS_ChannelMonitor_get_relevant_txids(uint32_t this_arg) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_TxidZ ret_var = ChannelMonitor_get_relevant_txids(&this_arg_conv); - ptrArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native ptrArray Bytes"); - int8_tArray *ret_arr_ptr = (int8_tArray*)(ret_arr + 4); - for (size_t m = 0; m < ret_var.datalen; m++) { - int8_tArray ret_conv_12_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_conv_12_arr + 4), ret_var.data[m].data, 32); - ret_arr_ptr[m] = ret_conv_12_arr; - } - - FREE(ret_var.data); - return ret_arr; +void __attribute__((visibility("default"))) TS_Record_set_file(uint32_t this_ptr, jstring val) { + LDKRecord this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKStr val_conv = str_ref_to_owned_c(val); + Record_set_file(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChannelMonitor_current_best_block(uint32_t this_arg) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKBestBlock ret_var = ChannelMonitor_current_best_block(&this_arg_conv); +int32_t __attribute__((visibility("default"))) TS_Record_get_line(uint32_t this_ptr) { + LDKRecord this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = Record_get_line(&this_ptr_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_Record_set_line(uint32_t this_ptr, int32_t val) { + LDKRecord this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + Record_set_line(&this_ptr_conv, val); +} + +static inline uint64_t Record_clone_ptr(LDKRecord *NONNULL_PTR arg) { + LDKRecord ret_var = Record_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_Record_clone_ptr(uint32_t arg) { + LDKRecord arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = Record_clone_ptr(&arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_Record_clone(uint32_t orig) { + LDKRecord orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKRecord ret_var = Record_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -19622,89 +17076,76 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelMonitor_current_best_ return ret_ref; } -uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_get_claimable_balances(uint32_t this_arg) { - LDKChannelMonitor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_BalanceZ ret_var = ChannelMonitor_get_claimable_balances(&this_arg_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t j = 0; j < ret_var.datalen; j++) { - LDKBalance *ret_conv_9_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); - *ret_conv_9_copy = ret_var.data[j]; - uint64_t ret_conv_9_ref = (uint64_t)ret_conv_9_copy; - ret_arr_ptr[j] = ret_conv_9_ref; - } - - FREE(ret_var.data); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_read(int8_tArray ser, uint32_t arg) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - void* arg_ptr = (void*)(((uint64_t)arg) & ~1); - if (!(arg & 1)) { CHECK_ACCESS(arg_ptr); } - LDKKeysInterface* arg_conv = (LDKKeysInterface*)arg_ptr; - LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ"); - *ret_conv = C2Tuple_BlockHashChannelMonitorZ_read(ser_ref, arg_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_Logger_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKLogger this_ptr_conv = *(LDKLogger*)(this_ptr_ptr); + FREE((void*)this_ptr); + Logger_free(this_ptr_conv); } -void __attribute__((visibility("default"))) TS_OutPoint_free(uint32_t this_obj) { - LDKOutPoint this_obj_conv; +void __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_free(uint32_t this_obj) { + LDKChannelHandshakeConfig this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - OutPoint_free(this_obj_conv); + ChannelHandshakeConfig_free(this_obj_conv); +} + +int32_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_get_minimum_depth(uint32_t this_ptr) { + LDKChannelHandshakeConfig this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = ChannelHandshakeConfig_get_minimum_depth(&this_ptr_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_OutPoint_get_txid(uint32_t this_ptr) { - LDKOutPoint this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_set_minimum_depth(uint32_t this_ptr, int32_t val) { + LDKChannelHandshakeConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *OutPoint_get_txid(&this_ptr_conv), 32); - return ret_arr; + ChannelHandshakeConfig_set_minimum_depth(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_OutPoint_set_txid(uint32_t this_ptr, int8_tArray val) { - LDKOutPoint this_ptr_conv; +int16_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_get_our_to_self_delay(uint32_t this_ptr) { + LDKChannelHandshakeConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - OutPoint_set_txid(&this_ptr_conv, val_ref); + int16_t ret_val = ChannelHandshakeConfig_get_our_to_self_delay(&this_ptr_conv); + return ret_val; } -int16_t __attribute__((visibility("default"))) TS_OutPoint_get_index(uint32_t this_ptr) { - LDKOutPoint this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_set_our_to_self_delay(uint32_t this_ptr, int16_t val) { + LDKChannelHandshakeConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = OutPoint_get_index(&this_ptr_conv); + ChannelHandshakeConfig_set_our_to_self_delay(&this_ptr_conv, val); +} + +int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_get_our_htlc_minimum_msat(uint32_t this_ptr) { + LDKChannelHandshakeConfig this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = ChannelHandshakeConfig_get_our_htlc_minimum_msat(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_OutPoint_set_index(uint32_t this_ptr, int16_t val) { - LDKOutPoint this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_set_our_htlc_minimum_msat(uint32_t this_ptr, int64_t val) { + LDKChannelHandshakeConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - OutPoint_set_index(&this_ptr_conv, val); + ChannelHandshakeConfig_set_our_htlc_minimum_msat(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_OutPoint_new(int8_tArray txid_arg, int16_t index_arg) { - LDKThirtyTwoBytes txid_arg_ref; - CHECK(*((uint32_t*)txid_arg) == 32); - memcpy(txid_arg_ref.data, (uint8_t*)(txid_arg + 4), 32); - LDKOutPoint ret_var = OutPoint_new(txid_arg_ref, index_arg); +uint32_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_new(int32_t minimum_depth_arg, int16_t our_to_self_delay_arg, int64_t our_htlc_minimum_msat_arg) { + LDKChannelHandshakeConfig ret_var = ChannelHandshakeConfig_new(minimum_depth_arg, our_to_self_delay_arg, our_htlc_minimum_msat_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -19716,8 +17157,8 @@ uint32_t __attribute__((visibility("default"))) TS_OutPoint_new(int8_tArray txi return ret_ref; } -static inline uint64_t OutPoint_clone_ptr(LDKOutPoint *NONNULL_PTR arg) { - LDKOutPoint ret_var = OutPoint_clone(arg); +static inline uint64_t ChannelHandshakeConfig_clone_ptr(LDKChannelHandshakeConfig *NONNULL_PTR arg) { + LDKChannelHandshakeConfig ret_var = ChannelHandshakeConfig_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -19728,21 +17169,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_OutPoint_clone_ptr(uint32_t arg) { - LDKOutPoint arg_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_clone_ptr(uint32_t arg) { + LDKChannelHandshakeConfig arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = OutPoint_clone_ptr(&arg_conv); + int64_t ret_val = ChannelHandshakeConfig_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_OutPoint_clone(uint32_t orig) { - LDKOutPoint orig_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_clone(uint32_t orig) { + LDKChannelHandshakeConfig orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKOutPoint ret_var = OutPoint_clone(&orig_conv); + LDKChannelHandshakeConfig ret_var = ChannelHandshakeConfig_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -19754,73 +17195,216 @@ uint32_t __attribute__((visibility("default"))) TS_OutPoint_clone(uint32_t orig return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_OutPoint_eq(uint32_t a, uint32_t b) { - LDKOutPoint a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKOutPoint b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = OutPoint_eq(&a_conv, &b_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelHandshakeConfig_default() { + LDKChannelHandshakeConfig ret_var = ChannelHandshakeConfig_default(); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_free(uint32_t this_obj) { + LDKChannelHandshakeLimits this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + ChannelHandshakeLimits_free(this_obj_conv); +} + +int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_min_funding_satoshis(uint32_t this_ptr) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = ChannelHandshakeLimits_get_min_funding_satoshis(&this_ptr_conv); return ret_val; } -int64_t __attribute__((visibility("default"))) TS_OutPoint_hash(uint32_t o) { - LDKOutPoint o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = OutPoint_hash(&o_conv); +void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_min_funding_satoshis(uint32_t this_ptr, int64_t val) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ChannelHandshakeLimits_set_min_funding_satoshis(&this_ptr_conv, val); +} + +int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_max_htlc_minimum_msat(uint32_t this_ptr) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = ChannelHandshakeLimits_get_max_htlc_minimum_msat(&this_ptr_conv); return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_OutPoint_to_channel_id(uint32_t this_arg) { - LDKOutPoint this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), OutPoint_to_channel_id(&this_arg_conv).data, 32); - return ret_arr; +void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_max_htlc_minimum_msat(uint32_t this_ptr, int64_t val) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ChannelHandshakeLimits_set_max_htlc_minimum_msat(&this_ptr_conv, val); } -int8_tArray __attribute__((visibility("default"))) TS_OutPoint_write(uint32_t obj) { - LDKOutPoint obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = OutPoint_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_min_max_htlc_value_in_flight_msat(uint32_t this_ptr) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = ChannelHandshakeLimits_get_min_max_htlc_value_in_flight_msat(&this_ptr_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_min_max_htlc_value_in_flight_msat(uint32_t this_ptr, int64_t val) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ChannelHandshakeLimits_set_min_max_htlc_value_in_flight_msat(&this_ptr_conv, val); +} + +int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_max_channel_reserve_satoshis(uint32_t this_ptr) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = ChannelHandshakeLimits_get_max_channel_reserve_satoshis(&this_ptr_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_max_channel_reserve_satoshis(uint32_t this_ptr, int64_t val) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ChannelHandshakeLimits_set_max_channel_reserve_satoshis(&this_ptr_conv, val); +} + +int16_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_min_max_accepted_htlcs(uint32_t this_ptr) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int16_t ret_val = ChannelHandshakeLimits_get_min_max_accepted_htlcs(&this_ptr_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_min_max_accepted_htlcs(uint32_t this_ptr, int16_t val) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ChannelHandshakeLimits_set_min_max_accepted_htlcs(&this_ptr_conv, val); +} + +int32_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_max_minimum_depth(uint32_t this_ptr) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = ChannelHandshakeLimits_get_max_minimum_depth(&this_ptr_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_max_minimum_depth(uint32_t this_ptr, int32_t val) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ChannelHandshakeLimits_set_max_minimum_depth(&this_ptr_conv, val); +} + +jboolean __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_force_announced_channel_preference(uint32_t this_ptr) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + jboolean ret_val = ChannelHandshakeLimits_get_force_announced_channel_preference(&this_ptr_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_force_announced_channel_preference(uint32_t this_ptr, jboolean val) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ChannelHandshakeLimits_set_force_announced_channel_preference(&this_ptr_conv, val); +} + +int16_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_get_their_to_self_delay(uint32_t this_ptr) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int16_t ret_val = ChannelHandshakeLimits_get_their_to_self_delay(&this_ptr_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_set_their_to_self_delay(uint32_t this_ptr, int16_t val) { + LDKChannelHandshakeLimits this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ChannelHandshakeLimits_set_their_to_self_delay(&this_ptr_conv, val); +} + +uint32_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_new(int64_t min_funding_satoshis_arg, int64_t max_htlc_minimum_msat_arg, int64_t min_max_htlc_value_in_flight_msat_arg, int64_t max_channel_reserve_satoshis_arg, int16_t min_max_accepted_htlcs_arg, int32_t max_minimum_depth_arg, jboolean force_announced_channel_preference_arg, int16_t their_to_self_delay_arg) { + LDKChannelHandshakeLimits ret_var = ChannelHandshakeLimits_new(min_funding_satoshis_arg, max_htlc_minimum_msat_arg, min_max_htlc_value_in_flight_msat_arg, max_channel_reserve_satoshis_arg, min_max_accepted_htlcs_arg, max_minimum_depth_arg, force_announced_channel_preference_arg, their_to_self_delay_arg); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +static inline uint64_t ChannelHandshakeLimits_clone_ptr(LDKChannelHandshakeLimits *NONNULL_PTR arg) { + LDKChannelHandshakeLimits ret_var = ChannelHandshakeLimits_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -uint32_t __attribute__((visibility("default"))) TS_OutPoint_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_OutPointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OutPointDecodeErrorZ), "LDKCResult_OutPointDecodeErrorZ"); - *ret_conv = OutPoint_read(ser_ref); - return (uint64_t)ret_conv; + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_clone_ptr(uint32_t arg) { + LDKChannelHandshakeLimits arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ChannelHandshakeLimits_clone_ptr(&arg_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_free(uint32_t this_obj) { - LDKDelayedPaymentOutputDescriptor this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - DelayedPaymentOutputDescriptor_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_clone(uint32_t orig) { + LDKChannelHandshakeLimits orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKChannelHandshakeLimits ret_var = ChannelHandshakeLimits_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_get_outpoint(uint32_t this_ptr) { - LDKDelayedPaymentOutputDescriptor this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKOutPoint ret_var = DelayedPaymentOutputDescriptor_get_outpoint(&this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelHandshakeLimits_default() { + LDKChannelHandshakeLimits ret_var = ChannelHandshakeLimits_default(); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -19832,148 +17416,135 @@ uint32_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescript return ret_ref; } -void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_outpoint(uint32_t this_ptr, uint32_t val) { - LDKDelayedPaymentOutputDescriptor this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelConfig_free(uint32_t this_obj) { + LDKChannelConfig this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + ChannelConfig_free(this_obj_conv); +} + +int32_t __attribute__((visibility("default"))) TS_ChannelConfig_get_forwarding_fee_proportional_millionths(uint32_t this_ptr) { + LDKChannelConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKOutPoint val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = OutPoint_clone(&val_conv); - DelayedPaymentOutputDescriptor_set_outpoint(&this_ptr_conv, val_conv); + int32_t ret_val = ChannelConfig_get_forwarding_fee_proportional_millionths(&this_ptr_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_get_per_commitment_point(uint32_t this_ptr) { - LDKDelayedPaymentOutputDescriptor this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelConfig_set_forwarding_fee_proportional_millionths(uint32_t this_ptr, int32_t val) { + LDKChannelConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), DelayedPaymentOutputDescriptor_get_per_commitment_point(&this_ptr_conv).compressed_form, 33); - return ret_arr; + ChannelConfig_set_forwarding_fee_proportional_millionths(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_per_commitment_point(uint32_t this_ptr, int8_tArray val) { - LDKDelayedPaymentOutputDescriptor this_ptr_conv; +int32_t __attribute__((visibility("default"))) TS_ChannelConfig_get_forwarding_fee_base_msat(uint32_t this_ptr) { + LDKChannelConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - DelayedPaymentOutputDescriptor_set_per_commitment_point(&this_ptr_conv, val_ref); + int32_t ret_val = ChannelConfig_get_forwarding_fee_base_msat(&this_ptr_conv); + return ret_val; } -int16_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_get_to_self_delay(uint32_t this_ptr) { - LDKDelayedPaymentOutputDescriptor this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelConfig_set_forwarding_fee_base_msat(uint32_t this_ptr, int32_t val) { + LDKChannelConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = DelayedPaymentOutputDescriptor_get_to_self_delay(&this_ptr_conv); + ChannelConfig_set_forwarding_fee_base_msat(&this_ptr_conv, val); +} + +int16_t __attribute__((visibility("default"))) TS_ChannelConfig_get_cltv_expiry_delta(uint32_t this_ptr) { + LDKChannelConfig this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int16_t ret_val = ChannelConfig_get_cltv_expiry_delta(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_to_self_delay(uint32_t this_ptr, int16_t val) { - LDKDelayedPaymentOutputDescriptor this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelConfig_set_cltv_expiry_delta(uint32_t this_ptr, int16_t val) { + LDKChannelConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - DelayedPaymentOutputDescriptor_set_to_self_delay(&this_ptr_conv, val); + ChannelConfig_set_cltv_expiry_delta(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_output(uint32_t this_ptr, uint32_t val) { - LDKDelayedPaymentOutputDescriptor this_ptr_conv; +jboolean __attribute__((visibility("default"))) TS_ChannelConfig_get_announced_channel(uint32_t this_ptr) { + LDKChannelConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKTxOut val_conv = *(LDKTxOut*)(val_ptr); - val_conv = TxOut_clone((LDKTxOut*)(((uint64_t)val) & ~1)); - DelayedPaymentOutputDescriptor_set_output(&this_ptr_conv, val_conv); + jboolean ret_val = ChannelConfig_get_announced_channel(&this_ptr_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_get_revocation_pubkey(uint32_t this_ptr) { - LDKDelayedPaymentOutputDescriptor this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelConfig_set_announced_channel(uint32_t this_ptr, jboolean val) { + LDKChannelConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), DelayedPaymentOutputDescriptor_get_revocation_pubkey(&this_ptr_conv).compressed_form, 33); - return ret_arr; + ChannelConfig_set_announced_channel(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_revocation_pubkey(uint32_t this_ptr, int8_tArray val) { - LDKDelayedPaymentOutputDescriptor this_ptr_conv; +jboolean __attribute__((visibility("default"))) TS_ChannelConfig_get_commit_upfront_shutdown_pubkey(uint32_t this_ptr) { + LDKChannelConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - DelayedPaymentOutputDescriptor_set_revocation_pubkey(&this_ptr_conv, val_ref); + jboolean ret_val = ChannelConfig_get_commit_upfront_shutdown_pubkey(&this_ptr_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_get_channel_keys_id(uint32_t this_ptr) { - LDKDelayedPaymentOutputDescriptor this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelConfig_set_commit_upfront_shutdown_pubkey(uint32_t this_ptr, jboolean val) { + LDKChannelConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *DelayedPaymentOutputDescriptor_get_channel_keys_id(&this_ptr_conv), 32); - return ret_arr; + ChannelConfig_set_commit_upfront_shutdown_pubkey(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_channel_keys_id(uint32_t this_ptr, int8_tArray val) { - LDKDelayedPaymentOutputDescriptor this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelConfig_get_max_dust_htlc_exposure_msat(uint32_t this_ptr) { + LDKChannelConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - DelayedPaymentOutputDescriptor_set_channel_keys_id(&this_ptr_conv, val_ref); + int64_t ret_val = ChannelConfig_get_max_dust_htlc_exposure_msat(&this_ptr_conv); + return ret_val; } -int64_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_get_channel_value_satoshis(uint32_t this_ptr) { - LDKDelayedPaymentOutputDescriptor this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelConfig_set_max_dust_htlc_exposure_msat(uint32_t this_ptr, int64_t val) { + LDKChannelConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = DelayedPaymentOutputDescriptor_get_channel_value_satoshis(&this_ptr_conv); + ChannelConfig_set_max_dust_htlc_exposure_msat(&this_ptr_conv, val); +} + +int64_t __attribute__((visibility("default"))) TS_ChannelConfig_get_force_close_avoidance_max_fee_satoshis(uint32_t this_ptr) { + LDKChannelConfig this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = ChannelConfig_get_force_close_avoidance_max_fee_satoshis(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_channel_value_satoshis(uint32_t this_ptr, int64_t val) { - LDKDelayedPaymentOutputDescriptor this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelConfig_set_force_close_avoidance_max_fee_satoshis(uint32_t this_ptr, int64_t val) { + LDKChannelConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - DelayedPaymentOutputDescriptor_set_channel_value_satoshis(&this_ptr_conv, val); + ChannelConfig_set_force_close_avoidance_max_fee_satoshis(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_new(uint32_t outpoint_arg, int8_tArray per_commitment_point_arg, int16_t to_self_delay_arg, uint32_t output_arg, int8_tArray revocation_pubkey_arg, int8_tArray channel_keys_id_arg, int64_t channel_value_satoshis_arg) { - LDKOutPoint outpoint_arg_conv; - outpoint_arg_conv.inner = (void*)(outpoint_arg & (~1)); - outpoint_arg_conv.is_owned = (outpoint_arg & 1) || (outpoint_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(outpoint_arg_conv); - outpoint_arg_conv = OutPoint_clone(&outpoint_arg_conv); - LDKPublicKey per_commitment_point_arg_ref; - CHECK(*((uint32_t*)per_commitment_point_arg) == 33); - memcpy(per_commitment_point_arg_ref.compressed_form, (uint8_t*)(per_commitment_point_arg + 4), 33); - void* output_arg_ptr = (void*)(((uint64_t)output_arg) & ~1); - CHECK_ACCESS(output_arg_ptr); - LDKTxOut output_arg_conv = *(LDKTxOut*)(output_arg_ptr); - output_arg_conv = TxOut_clone((LDKTxOut*)(((uint64_t)output_arg) & ~1)); - LDKPublicKey revocation_pubkey_arg_ref; - CHECK(*((uint32_t*)revocation_pubkey_arg) == 33); - memcpy(revocation_pubkey_arg_ref.compressed_form, (uint8_t*)(revocation_pubkey_arg + 4), 33); - LDKThirtyTwoBytes channel_keys_id_arg_ref; - CHECK(*((uint32_t*)channel_keys_id_arg) == 32); - memcpy(channel_keys_id_arg_ref.data, (uint8_t*)(channel_keys_id_arg + 4), 32); - LDKDelayedPaymentOutputDescriptor ret_var = DelayedPaymentOutputDescriptor_new(outpoint_arg_conv, per_commitment_point_arg_ref, to_self_delay_arg, output_arg_conv, revocation_pubkey_arg_ref, channel_keys_id_arg_ref, channel_value_satoshis_arg); +uint32_t __attribute__((visibility("default"))) TS_ChannelConfig_new(int32_t forwarding_fee_proportional_millionths_arg, int32_t forwarding_fee_base_msat_arg, int16_t cltv_expiry_delta_arg, jboolean announced_channel_arg, jboolean commit_upfront_shutdown_pubkey_arg, int64_t max_dust_htlc_exposure_msat_arg, int64_t force_close_avoidance_max_fee_satoshis_arg) { + LDKChannelConfig ret_var = ChannelConfig_new(forwarding_fee_proportional_millionths_arg, forwarding_fee_base_msat_arg, cltv_expiry_delta_arg, announced_channel_arg, commit_upfront_shutdown_pubkey_arg, max_dust_htlc_exposure_msat_arg, force_close_avoidance_max_fee_satoshis_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -19985,8 +17556,8 @@ uint32_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescript return ret_ref; } -static inline uint64_t DelayedPaymentOutputDescriptor_clone_ptr(LDKDelayedPaymentOutputDescriptor *NONNULL_PTR arg) { - LDKDelayedPaymentOutputDescriptor ret_var = DelayedPaymentOutputDescriptor_clone(arg); +static inline uint64_t ChannelConfig_clone_ptr(LDKChannelConfig *NONNULL_PTR arg) { + LDKChannelConfig ret_var = ChannelConfig_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -19997,21 +17568,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_clone_ptr(uint32_t arg) { - LDKDelayedPaymentOutputDescriptor arg_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelConfig_clone_ptr(uint32_t arg) { + LDKChannelConfig arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = DelayedPaymentOutputDescriptor_clone_ptr(&arg_conv); + int64_t ret_val = ChannelConfig_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_clone(uint32_t orig) { - LDKDelayedPaymentOutputDescriptor orig_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelConfig_clone(uint32_t orig) { + LDKChannelConfig orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKDelayedPaymentOutputDescriptor ret_var = DelayedPaymentOutputDescriptor_clone(&orig_conv); + LDKChannelConfig ret_var = ChannelConfig_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -20023,41 +17594,84 @@ uint32_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescript return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_write(uint32_t obj) { - LDKDelayedPaymentOutputDescriptor obj_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelConfig_default() { + LDKChannelConfig ret_var = ChannelConfig_default(); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +int8_tArray __attribute__((visibility("default"))) TS_ChannelConfig_write(uint32_t obj) { + LDKChannelConfig obj_conv; obj_conv.inner = (void*)(obj & (~1)); obj_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = DelayedPaymentOutputDescriptor_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + LDKCVec_u8Z ret_var = ChannelConfig_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_read(int8_tArray ser) { +uint32_t __attribute__((visibility("default"))) TS_ChannelConfig_read(int8_tArray ser) { LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ"); - *ret_conv = DelayedPaymentOutputDescriptor_read(ser_ref); + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ChannelConfigDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelConfigDecodeErrorZ), "LDKCResult_ChannelConfigDecodeErrorZ"); + *ret_conv = ChannelConfig_read(ser_ref); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_free(uint32_t this_obj) { - LDKStaticPaymentOutputDescriptor this_obj_conv; +void __attribute__((visibility("default"))) TS_UserConfig_free(uint32_t this_obj) { + LDKUserConfig this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - StaticPaymentOutputDescriptor_free(this_obj_conv); + UserConfig_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_get_outpoint(uint32_t this_ptr) { - LDKStaticPaymentOutputDescriptor this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_UserConfig_get_own_channel_config(uint32_t this_ptr) { + LDKUserConfig this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelHandshakeConfig ret_var = UserConfig_get_own_channel_config(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +void __attribute__((visibility("default"))) TS_UserConfig_set_own_channel_config(uint32_t this_ptr, uint32_t val) { + LDKUserConfig this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelHandshakeConfig val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = ChannelHandshakeConfig_clone(&val_conv); + UserConfig_set_own_channel_config(&this_ptr_conv, val_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_UserConfig_get_peer_channel_config_limits(uint32_t this_ptr) { + LDKUserConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKOutPoint ret_var = StaticPaymentOutputDescriptor_get_outpoint(&this_ptr_conv); + LDKChannelHandshakeLimits ret_var = UserConfig_get_peer_channel_config_limits(&this_ptr_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -20069,83 +17683,100 @@ uint32_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescripto return ret_ref; } -void __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_set_outpoint(uint32_t this_ptr, uint32_t val) { - LDKStaticPaymentOutputDescriptor this_ptr_conv; +void __attribute__((visibility("default"))) TS_UserConfig_set_peer_channel_config_limits(uint32_t this_ptr, uint32_t val) { + LDKUserConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKOutPoint val_conv; + LDKChannelHandshakeLimits val_conv; val_conv.inner = (void*)(val & (~1)); val_conv.is_owned = (val & 1) || (val == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = OutPoint_clone(&val_conv); - StaticPaymentOutputDescriptor_set_outpoint(&this_ptr_conv, val_conv); + val_conv = ChannelHandshakeLimits_clone(&val_conv); + UserConfig_set_peer_channel_config_limits(&this_ptr_conv, val_conv); } -void __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_set_output(uint32_t this_ptr, uint32_t val) { - LDKStaticPaymentOutputDescriptor this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_UserConfig_get_channel_options(uint32_t this_ptr) { + LDKUserConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKTxOut val_conv = *(LDKTxOut*)(val_ptr); - val_conv = TxOut_clone((LDKTxOut*)(((uint64_t)val) & ~1)); - StaticPaymentOutputDescriptor_set_output(&this_ptr_conv, val_conv); + LDKChannelConfig ret_var = UserConfig_get_channel_options(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_get_channel_keys_id(uint32_t this_ptr) { - LDKStaticPaymentOutputDescriptor this_ptr_conv; +void __attribute__((visibility("default"))) TS_UserConfig_set_channel_options(uint32_t this_ptr, uint32_t val) { + LDKUserConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *StaticPaymentOutputDescriptor_get_channel_keys_id(&this_ptr_conv), 32); - return ret_arr; + LDKChannelConfig val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = ChannelConfig_clone(&val_conv); + UserConfig_set_channel_options(&this_ptr_conv, val_conv); } -void __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_set_channel_keys_id(uint32_t this_ptr, int8_tArray val) { - LDKStaticPaymentOutputDescriptor this_ptr_conv; +jboolean __attribute__((visibility("default"))) TS_UserConfig_get_accept_forwards_to_priv_channels(uint32_t this_ptr) { + LDKUserConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - StaticPaymentOutputDescriptor_set_channel_keys_id(&this_ptr_conv, val_ref); + jboolean ret_val = UserConfig_get_accept_forwards_to_priv_channels(&this_ptr_conv); + return ret_val; } -int64_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_get_channel_value_satoshis(uint32_t this_ptr) { - LDKStaticPaymentOutputDescriptor this_ptr_conv; +void __attribute__((visibility("default"))) TS_UserConfig_set_accept_forwards_to_priv_channels(uint32_t this_ptr, jboolean val) { + LDKUserConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = StaticPaymentOutputDescriptor_get_channel_value_satoshis(&this_ptr_conv); + UserConfig_set_accept_forwards_to_priv_channels(&this_ptr_conv, val); +} + +jboolean __attribute__((visibility("default"))) TS_UserConfig_get_accept_inbound_channels(uint32_t this_ptr) { + LDKUserConfig this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + jboolean ret_val = UserConfig_get_accept_inbound_channels(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_set_channel_value_satoshis(uint32_t this_ptr, int64_t val) { - LDKStaticPaymentOutputDescriptor this_ptr_conv; +void __attribute__((visibility("default"))) TS_UserConfig_set_accept_inbound_channels(uint32_t this_ptr, jboolean val) { + LDKUserConfig this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - StaticPaymentOutputDescriptor_set_channel_value_satoshis(&this_ptr_conv, val); + UserConfig_set_accept_inbound_channels(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_new(uint32_t outpoint_arg, uint32_t output_arg, int8_tArray channel_keys_id_arg, int64_t channel_value_satoshis_arg) { - LDKOutPoint outpoint_arg_conv; - outpoint_arg_conv.inner = (void*)(outpoint_arg & (~1)); - outpoint_arg_conv.is_owned = (outpoint_arg & 1) || (outpoint_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(outpoint_arg_conv); - outpoint_arg_conv = OutPoint_clone(&outpoint_arg_conv); - void* output_arg_ptr = (void*)(((uint64_t)output_arg) & ~1); - CHECK_ACCESS(output_arg_ptr); - LDKTxOut output_arg_conv = *(LDKTxOut*)(output_arg_ptr); - output_arg_conv = TxOut_clone((LDKTxOut*)(((uint64_t)output_arg) & ~1)); - LDKThirtyTwoBytes channel_keys_id_arg_ref; - CHECK(*((uint32_t*)channel_keys_id_arg) == 32); - memcpy(channel_keys_id_arg_ref.data, (uint8_t*)(channel_keys_id_arg + 4), 32); - LDKStaticPaymentOutputDescriptor ret_var = StaticPaymentOutputDescriptor_new(outpoint_arg_conv, output_arg_conv, channel_keys_id_arg_ref, channel_value_satoshis_arg); +uint32_t __attribute__((visibility("default"))) TS_UserConfig_new(uint32_t own_channel_config_arg, uint32_t peer_channel_config_limits_arg, uint32_t channel_options_arg, jboolean accept_forwards_to_priv_channels_arg, jboolean accept_inbound_channels_arg) { + LDKChannelHandshakeConfig own_channel_config_arg_conv; + own_channel_config_arg_conv.inner = (void*)(own_channel_config_arg & (~1)); + own_channel_config_arg_conv.is_owned = (own_channel_config_arg & 1) || (own_channel_config_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(own_channel_config_arg_conv); + own_channel_config_arg_conv = ChannelHandshakeConfig_clone(&own_channel_config_arg_conv); + LDKChannelHandshakeLimits peer_channel_config_limits_arg_conv; + peer_channel_config_limits_arg_conv.inner = (void*)(peer_channel_config_limits_arg & (~1)); + peer_channel_config_limits_arg_conv.is_owned = (peer_channel_config_limits_arg & 1) || (peer_channel_config_limits_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(peer_channel_config_limits_arg_conv); + peer_channel_config_limits_arg_conv = ChannelHandshakeLimits_clone(&peer_channel_config_limits_arg_conv); + LDKChannelConfig channel_options_arg_conv; + channel_options_arg_conv.inner = (void*)(channel_options_arg & (~1)); + channel_options_arg_conv.is_owned = (channel_options_arg & 1) || (channel_options_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_options_arg_conv); + channel_options_arg_conv = ChannelConfig_clone(&channel_options_arg_conv); + LDKUserConfig ret_var = UserConfig_new(own_channel_config_arg_conv, peer_channel_config_limits_arg_conv, channel_options_arg_conv, accept_forwards_to_priv_channels_arg, accept_inbound_channels_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -20157,8 +17788,8 @@ uint32_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescripto return ret_ref; } -static inline uint64_t StaticPaymentOutputDescriptor_clone_ptr(LDKStaticPaymentOutputDescriptor *NONNULL_PTR arg) { - LDKStaticPaymentOutputDescriptor ret_var = StaticPaymentOutputDescriptor_clone(arg); +static inline uint64_t UserConfig_clone_ptr(LDKUserConfig *NONNULL_PTR arg) { + LDKUserConfig ret_var = UserConfig_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -20169,21 +17800,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_clone_ptr(uint32_t arg) { - LDKStaticPaymentOutputDescriptor arg_conv; +int64_t __attribute__((visibility("default"))) TS_UserConfig_clone_ptr(uint32_t arg) { + LDKUserConfig arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = StaticPaymentOutputDescriptor_clone_ptr(&arg_conv); + int64_t ret_val = UserConfig_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_clone(uint32_t orig) { - LDKStaticPaymentOutputDescriptor orig_conv; +uint32_t __attribute__((visibility("default"))) TS_UserConfig_clone(uint32_t orig) { + LDKUserConfig orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKStaticPaymentOutputDescriptor ret_var = StaticPaymentOutputDescriptor_clone(&orig_conv); + LDKUserConfig ret_var = UserConfig_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -20195,299 +17826,401 @@ uint32_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescripto return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_write(uint32_t obj) { - LDKStaticPaymentOutputDescriptor obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = StaticPaymentOutputDescriptor_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_UserConfig_default() { + LDKUserConfig ret_var = UserConfig_default(); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ"); - *ret_conv = StaticPaymentOutputDescriptor_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_BestBlock_free(uint32_t this_obj) { + LDKBestBlock this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + BestBlock_free(this_obj_conv); } -void __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKSpendableOutputDescriptor this_ptr_conv = *(LDKSpendableOutputDescriptor*)(this_ptr_ptr); - FREE((void*)this_ptr); - SpendableOutputDescriptor_free(this_ptr_conv); +static inline uint64_t BestBlock_clone_ptr(LDKBestBlock *NONNULL_PTR arg) { + LDKBestBlock ret_var = BestBlock_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -static inline uint64_t SpendableOutputDescriptor_clone_ptr(LDKSpendableOutputDescriptor *NONNULL_PTR arg) { - LDKSpendableOutputDescriptor *ret_copy = MALLOC(sizeof(LDKSpendableOutputDescriptor), "LDKSpendableOutputDescriptor"); - *ret_copy = SpendableOutputDescriptor_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_clone_ptr(uint32_t arg) { - LDKSpendableOutputDescriptor* arg_conv = (LDKSpendableOutputDescriptor*)arg; - int64_t ret_val = SpendableOutputDescriptor_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_BestBlock_clone_ptr(uint32_t arg) { + LDKBestBlock arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = BestBlock_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_clone(uint32_t orig) { - LDKSpendableOutputDescriptor* orig_conv = (LDKSpendableOutputDescriptor*)orig; - LDKSpendableOutputDescriptor *ret_copy = MALLOC(sizeof(LDKSpendableOutputDescriptor), "LDKSpendableOutputDescriptor"); - *ret_copy = SpendableOutputDescriptor_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; +uint32_t __attribute__((visibility("default"))) TS_BestBlock_clone(uint32_t orig) { + LDKBestBlock orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKBestBlock ret_var = BestBlock_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_static_output(uint32_t outpoint, uint32_t output) { - LDKOutPoint outpoint_conv; - outpoint_conv.inner = (void*)(outpoint & (~1)); - outpoint_conv.is_owned = (outpoint & 1) || (outpoint == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(outpoint_conv); - outpoint_conv = OutPoint_clone(&outpoint_conv); - void* output_ptr = (void*)(((uint64_t)output) & ~1); - CHECK_ACCESS(output_ptr); - LDKTxOut output_conv = *(LDKTxOut*)(output_ptr); - output_conv = TxOut_clone((LDKTxOut*)(((uint64_t)output) & ~1)); - LDKSpendableOutputDescriptor *ret_copy = MALLOC(sizeof(LDKSpendableOutputDescriptor), "LDKSpendableOutputDescriptor"); - *ret_copy = SpendableOutputDescriptor_static_output(outpoint_conv, output_conv); - uint64_t ret_ref = (uint64_t)ret_copy; +uint32_t __attribute__((visibility("default"))) TS_BestBlock_from_genesis(uint32_t network) { + LDKNetwork network_conv = LDKNetwork_from_js(network); + LDKBestBlock ret_var = BestBlock_from_genesis(network_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_delayed_payment_output(uint32_t a) { - LDKDelayedPaymentOutputDescriptor a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = (a & 1) || (a == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - a_conv = DelayedPaymentOutputDescriptor_clone(&a_conv); - LDKSpendableOutputDescriptor *ret_copy = MALLOC(sizeof(LDKSpendableOutputDescriptor), "LDKSpendableOutputDescriptor"); - *ret_copy = SpendableOutputDescriptor_delayed_payment_output(a_conv); - uint64_t ret_ref = (uint64_t)ret_copy; +uint32_t __attribute__((visibility("default"))) TS_BestBlock_new(int8_tArray block_hash, int32_t height) { + LDKThirtyTwoBytes block_hash_ref; + CHECK(block_hash->arr_len == 32); + memcpy(block_hash_ref.data, block_hash->elems, 32); + LDKBestBlock ret_var = BestBlock_new(block_hash_ref, height); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_static_payment_output(uint32_t a) { - LDKStaticPaymentOutputDescriptor a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = (a & 1) || (a == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - a_conv = StaticPaymentOutputDescriptor_clone(&a_conv); - LDKSpendableOutputDescriptor *ret_copy = MALLOC(sizeof(LDKSpendableOutputDescriptor), "LDKSpendableOutputDescriptor"); - *ret_copy = SpendableOutputDescriptor_static_payment_output(a_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_BestBlock_block_hash(uint32_t this_arg) { + LDKBestBlock this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, BestBlock_block_hash(&this_arg_conv).data, 32); + return ret_arr; +} + +int32_t __attribute__((visibility("default"))) TS_BestBlock_height(uint32_t this_arg) { + LDKBestBlock this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int32_t ret_val = BestBlock_height(&this_arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_AccessError_clone(uint32_t orig) { + LDKAccessError* orig_conv = (LDKAccessError*)(orig & ~1); + uint32_t ret_conv = LDKAccessError_to_js(AccessError_clone(orig_conv)); + return ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_write(uint32_t obj) { - LDKSpendableOutputDescriptor* obj_conv = (LDKSpendableOutputDescriptor*)obj; - LDKCVec_u8Z ret_var = SpendableOutputDescriptor_write(obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_AccessError_unknown_chain() { + uint32_t ret_conv = LDKAccessError_to_js(AccessError_unknown_chain()); + return ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_SpendableOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpendableOutputDescriptorDecodeErrorZ), "LDKCResult_SpendableOutputDescriptorDecodeErrorZ"); - *ret_conv = SpendableOutputDescriptor_read(ser_ref); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_AccessError_unknown_tx() { + uint32_t ret_conv = LDKAccessError_to_js(AccessError_unknown_tx()); + return ret_conv; } -void __attribute__((visibility("default"))) TS_BaseSign_free(uint32_t this_ptr) { +void __attribute__((visibility("default"))) TS_Access_free(uint32_t this_ptr) { if ((this_ptr & 1) != 0) return; void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); CHECK_ACCESS(this_ptr_ptr); - LDKBaseSign this_ptr_conv = *(LDKBaseSign*)(this_ptr_ptr); + LDKAccess this_ptr_conv = *(LDKAccess*)(this_ptr_ptr); FREE((void*)this_ptr); - BaseSign_free(this_ptr_conv); + Access_free(this_ptr_conv); } -static inline uint64_t Sign_clone_ptr(LDKSign *NONNULL_PTR arg) { - LDKSign* ret_ret = MALLOC(sizeof(LDKSign), "LDKSign"); - *ret_ret = Sign_clone(arg); - return (uint64_t)ret_ret; +void __attribute__((visibility("default"))) TS_Listen_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKListen this_ptr_conv = *(LDKListen*)(this_ptr_ptr); + FREE((void*)this_ptr); + Listen_free(this_ptr_conv); } -int64_t __attribute__((visibility("default"))) TS_Sign_clone_ptr(uint32_t arg) { - void* arg_ptr = (void*)(((uint64_t)arg) & ~1); - if (!(arg & 1)) { CHECK_ACCESS(arg_ptr); } - LDKSign* arg_conv = (LDKSign*)arg_ptr; - int64_t ret_val = Sign_clone_ptr(arg_conv); - return ret_val; + +void __attribute__((visibility("default"))) TS_Confirm_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKConfirm this_ptr_conv = *(LDKConfirm*)(this_ptr_ptr); + FREE((void*)this_ptr); + Confirm_free(this_ptr_conv); } -uint32_t __attribute__((visibility("default"))) TS_Sign_clone(uint32_t orig) { - void* orig_ptr = (void*)(((uint64_t)orig) & ~1); - if (!(orig & 1)) { CHECK_ACCESS(orig_ptr); } - LDKSign* orig_conv = (LDKSign*)orig_ptr; - LDKSign* ret_ret = MALLOC(sizeof(LDKSign), "LDKSign"); - *ret_ret = Sign_clone(orig_conv); - return (uint64_t)ret_ret; +uint32_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdateErr_clone(uint32_t orig) { + LDKChannelMonitorUpdateErr* orig_conv = (LDKChannelMonitorUpdateErr*)(orig & ~1); + uint32_t ret_conv = LDKChannelMonitorUpdateErr_to_js(ChannelMonitorUpdateErr_clone(orig_conv)); + return ret_conv; } -void __attribute__((visibility("default"))) TS_Sign_free(uint32_t this_ptr) { +uint32_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdateErr_temporary_failure() { + uint32_t ret_conv = LDKChannelMonitorUpdateErr_to_js(ChannelMonitorUpdateErr_temporary_failure()); + return ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdateErr_permanent_failure() { + uint32_t ret_conv = LDKChannelMonitorUpdateErr_to_js(ChannelMonitorUpdateErr_permanent_failure()); + return ret_conv; +} + +void __attribute__((visibility("default"))) TS_Watch_free(uint32_t this_ptr) { if ((this_ptr & 1) != 0) return; void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); CHECK_ACCESS(this_ptr_ptr); - LDKSign this_ptr_conv = *(LDKSign*)(this_ptr_ptr); + LDKWatch this_ptr_conv = *(LDKWatch*)(this_ptr_ptr); FREE((void*)this_ptr); - Sign_free(this_ptr_conv); + Watch_free(this_ptr_conv); } -void __attribute__((visibility("default"))) TS_KeysInterface_free(uint32_t this_ptr) { +void __attribute__((visibility("default"))) TS_Filter_free(uint32_t this_ptr) { if ((this_ptr & 1) != 0) return; void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); CHECK_ACCESS(this_ptr_ptr); - LDKKeysInterface this_ptr_conv = *(LDKKeysInterface*)(this_ptr_ptr); + LDKFilter this_ptr_conv = *(LDKFilter*)(this_ptr_ptr); FREE((void*)this_ptr); - KeysInterface_free(this_ptr_conv); + Filter_free(this_ptr_conv); } -void __attribute__((visibility("default"))) TS_InMemorySigner_free(uint32_t this_obj) { - LDKInMemorySigner this_obj_conv; +void __attribute__((visibility("default"))) TS_WatchedOutput_free(uint32_t this_obj) { + LDKWatchedOutput this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - InMemorySigner_free(this_obj_conv); + WatchedOutput_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_get_funding_key(uint32_t this_ptr) { - LDKInMemorySigner this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_WatchedOutput_get_block_hash(uint32_t this_ptr) { + LDKWatchedOutput this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *InMemorySigner_get_funding_key(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, WatchedOutput_get_block_hash(&this_ptr_conv).data, 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_InMemorySigner_set_funding_key(uint32_t this_ptr, int8_tArray val) { - LDKInMemorySigner this_ptr_conv; +void __attribute__((visibility("default"))) TS_WatchedOutput_set_block_hash(uint32_t this_ptr, int8_tArray val) { + LDKWatchedOutput this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSecretKey val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.bytes, (uint8_t*)(val + 4), 32); - InMemorySigner_set_funding_key(&this_ptr_conv, val_ref); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + WatchedOutput_set_block_hash(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_get_revocation_base_key(uint32_t this_ptr) { - LDKInMemorySigner this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_WatchedOutput_get_outpoint(uint32_t this_ptr) { + LDKWatchedOutput this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *InMemorySigner_get_revocation_base_key(&this_ptr_conv), 32); - return ret_arr; + LDKOutPoint ret_var = WatchedOutput_get_outpoint(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_InMemorySigner_set_revocation_base_key(uint32_t this_ptr, int8_tArray val) { - LDKInMemorySigner this_ptr_conv; +void __attribute__((visibility("default"))) TS_WatchedOutput_set_outpoint(uint32_t this_ptr, uint32_t val) { + LDKWatchedOutput this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSecretKey val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.bytes, (uint8_t*)(val + 4), 32); - InMemorySigner_set_revocation_base_key(&this_ptr_conv, val_ref); + LDKOutPoint val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = OutPoint_clone(&val_conv); + WatchedOutput_set_outpoint(&this_ptr_conv, val_conv); } -int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_get_payment_key(uint32_t this_ptr) { - LDKInMemorySigner this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_WatchedOutput_get_script_pubkey(uint32_t this_ptr) { + LDKWatchedOutput this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *InMemorySigner_get_payment_key(&this_ptr_conv), 32); + LDKu8slice ret_var = WatchedOutput_get_script_pubkey(&this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); return ret_arr; } -void __attribute__((visibility("default"))) TS_InMemorySigner_set_payment_key(uint32_t this_ptr, int8_tArray val) { - LDKInMemorySigner this_ptr_conv; +void __attribute__((visibility("default"))) TS_WatchedOutput_set_script_pubkey(uint32_t this_ptr, int8_tArray val) { + LDKWatchedOutput this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSecretKey val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.bytes, (uint8_t*)(val + 4), 32); - InMemorySigner_set_payment_key(&this_ptr_conv, val_ref); + LDKCVec_u8Z val_ref; + val_ref.datalen = val->arr_len; + val_ref.data = MALLOC(val_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(val_ref.data, val->elems, val_ref.datalen); + WatchedOutput_set_script_pubkey(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_get_delayed_payment_base_key(uint32_t this_ptr) { - LDKInMemorySigner this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *InMemorySigner_get_delayed_payment_base_key(&this_ptr_conv), 32); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_WatchedOutput_new(int8_tArray block_hash_arg, uint32_t outpoint_arg, int8_tArray script_pubkey_arg) { + LDKThirtyTwoBytes block_hash_arg_ref; + CHECK(block_hash_arg->arr_len == 32); + memcpy(block_hash_arg_ref.data, block_hash_arg->elems, 32); + LDKOutPoint outpoint_arg_conv; + outpoint_arg_conv.inner = (void*)(outpoint_arg & (~1)); + outpoint_arg_conv.is_owned = (outpoint_arg & 1) || (outpoint_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(outpoint_arg_conv); + outpoint_arg_conv = OutPoint_clone(&outpoint_arg_conv); + LDKCVec_u8Z script_pubkey_arg_ref; + script_pubkey_arg_ref.datalen = script_pubkey_arg->arr_len; + script_pubkey_arg_ref.data = MALLOC(script_pubkey_arg_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(script_pubkey_arg_ref.data, script_pubkey_arg->elems, script_pubkey_arg_ref.datalen); + LDKWatchedOutput ret_var = WatchedOutput_new(block_hash_arg_ref, outpoint_arg_conv, script_pubkey_arg_ref); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_InMemorySigner_set_delayed_payment_base_key(uint32_t this_ptr, int8_tArray val) { - LDKInMemorySigner this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSecretKey val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.bytes, (uint8_t*)(val + 4), 32); - InMemorySigner_set_delayed_payment_base_key(&this_ptr_conv, val_ref); +static inline uint64_t WatchedOutput_clone_ptr(LDKWatchedOutput *NONNULL_PTR arg) { + LDKWatchedOutput ret_var = WatchedOutput_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_WatchedOutput_clone_ptr(uint32_t arg) { + LDKWatchedOutput arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = WatchedOutput_clone_ptr(&arg_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_get_htlc_base_key(uint32_t this_ptr) { - LDKInMemorySigner this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *InMemorySigner_get_htlc_base_key(&this_ptr_conv), 32); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_WatchedOutput_clone(uint32_t orig) { + LDKWatchedOutput orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKWatchedOutput ret_var = WatchedOutput_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +int64_t __attribute__((visibility("default"))) TS_WatchedOutput_hash(uint32_t o) { + LDKWatchedOutput o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + int64_t ret_val = WatchedOutput_hash(&o_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_BroadcasterInterface_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKBroadcasterInterface this_ptr_conv = *(LDKBroadcasterInterface*)(this_ptr_ptr); + FREE((void*)this_ptr); + BroadcasterInterface_free(this_ptr_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_ConfirmationTarget_clone(uint32_t orig) { + LDKConfirmationTarget* orig_conv = (LDKConfirmationTarget*)(orig & ~1); + uint32_t ret_conv = LDKConfirmationTarget_to_js(ConfirmationTarget_clone(orig_conv)); + return ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_ConfirmationTarget_background() { + uint32_t ret_conv = LDKConfirmationTarget_to_js(ConfirmationTarget_background()); + return ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_ConfirmationTarget_normal() { + uint32_t ret_conv = LDKConfirmationTarget_to_js(ConfirmationTarget_normal()); + return ret_conv; } -void __attribute__((visibility("default"))) TS_InMemorySigner_set_htlc_base_key(uint32_t this_ptr, int8_tArray val) { - LDKInMemorySigner this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSecretKey val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.bytes, (uint8_t*)(val + 4), 32); - InMemorySigner_set_htlc_base_key(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_ConfirmationTarget_high_priority() { + uint32_t ret_conv = LDKConfirmationTarget_to_js(ConfirmationTarget_high_priority()); + return ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_get_commitment_seed(uint32_t this_ptr) { - LDKInMemorySigner this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *InMemorySigner_get_commitment_seed(&this_ptr_conv), 32); - return ret_arr; +jboolean __attribute__((visibility("default"))) TS_ConfirmationTarget_eq(uint32_t a, uint32_t b) { + LDKConfirmationTarget* a_conv = (LDKConfirmationTarget*)(a & ~1); + LDKConfirmationTarget* b_conv = (LDKConfirmationTarget*)(b & ~1); + jboolean ret_val = ConfirmationTarget_eq(a_conv, b_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_InMemorySigner_set_commitment_seed(uint32_t this_ptr, int8_tArray val) { - LDKInMemorySigner this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - InMemorySigner_set_commitment_seed(&this_ptr_conv, val_ref); +void __attribute__((visibility("default"))) TS_FeeEstimator_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKFeeEstimator this_ptr_conv = *(LDKFeeEstimator*)(this_ptr_ptr); + FREE((void*)this_ptr); + FeeEstimator_free(this_ptr_conv); } -static inline uint64_t InMemorySigner_clone_ptr(LDKInMemorySigner *NONNULL_PTR arg) { - LDKInMemorySigner ret_var = InMemorySigner_clone(arg); +void __attribute__((visibility("default"))) TS_MonitorUpdateId_free(uint32_t this_obj) { + LDKMonitorUpdateId this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + MonitorUpdateId_free(this_obj_conv); +} + +static inline uint64_t MonitorUpdateId_clone_ptr(LDKMonitorUpdateId *NONNULL_PTR arg) { + LDKMonitorUpdateId ret_var = MonitorUpdateId_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -20498,21 +18231,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_InMemorySigner_clone_ptr(uint32_t arg) { - LDKInMemorySigner arg_conv; +int64_t __attribute__((visibility("default"))) TS_MonitorUpdateId_clone_ptr(uint32_t arg) { + LDKMonitorUpdateId arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = InMemorySigner_clone_ptr(&arg_conv); + int64_t ret_val = MonitorUpdateId_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_clone(uint32_t orig) { - LDKInMemorySigner orig_conv; +uint32_t __attribute__((visibility("default"))) TS_MonitorUpdateId_clone(uint32_t orig) { + LDKMonitorUpdateId orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKInMemorySigner ret_var = InMemorySigner_clone(&orig_conv); + LDKMonitorUpdateId ret_var = MonitorUpdateId_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -20524,46 +18257,74 @@ uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_clone(uint32_ return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_new(int8_tArray funding_key, int8_tArray revocation_base_key, int8_tArray payment_key, int8_tArray delayed_payment_base_key, int8_tArray htlc_base_key, int8_tArray commitment_seed, int64_t channel_value_satoshis, int8_tArray channel_keys_id) { - LDKSecretKey funding_key_ref; - CHECK(*((uint32_t*)funding_key) == 32); - memcpy(funding_key_ref.bytes, (uint8_t*)(funding_key + 4), 32); - LDKSecretKey revocation_base_key_ref; - CHECK(*((uint32_t*)revocation_base_key) == 32); - memcpy(revocation_base_key_ref.bytes, (uint8_t*)(revocation_base_key + 4), 32); - LDKSecretKey payment_key_ref; - CHECK(*((uint32_t*)payment_key) == 32); - memcpy(payment_key_ref.bytes, (uint8_t*)(payment_key + 4), 32); - LDKSecretKey delayed_payment_base_key_ref; - CHECK(*((uint32_t*)delayed_payment_base_key) == 32); - memcpy(delayed_payment_base_key_ref.bytes, (uint8_t*)(delayed_payment_base_key + 4), 32); - LDKSecretKey htlc_base_key_ref; - CHECK(*((uint32_t*)htlc_base_key) == 32); - memcpy(htlc_base_key_ref.bytes, (uint8_t*)(htlc_base_key + 4), 32); - LDKThirtyTwoBytes commitment_seed_ref; - CHECK(*((uint32_t*)commitment_seed) == 32); - memcpy(commitment_seed_ref.data, (uint8_t*)(commitment_seed + 4), 32); - LDKThirtyTwoBytes channel_keys_id_ref; - CHECK(*((uint32_t*)channel_keys_id) == 32); - memcpy(channel_keys_id_ref.data, (uint8_t*)(channel_keys_id + 4), 32); - LDKInMemorySigner ret_var = InMemorySigner_new(funding_key_ref, revocation_base_key_ref, payment_key_ref, delayed_payment_base_key_ref, htlc_base_key_ref, commitment_seed_ref, channel_value_satoshis, channel_keys_id_ref); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int64_t __attribute__((visibility("default"))) TS_MonitorUpdateId_hash(uint32_t o) { + LDKMonitorUpdateId o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + int64_t ret_val = MonitorUpdateId_hash(&o_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_counterparty_pubkeys(uint32_t this_arg) { - LDKInMemorySigner this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKChannelPublicKeys ret_var = InMemorySigner_counterparty_pubkeys(&this_arg_conv); +jboolean __attribute__((visibility("default"))) TS_MonitorUpdateId_eq(uint32_t a, uint32_t b) { + LDKMonitorUpdateId a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + LDKMonitorUpdateId b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + jboolean ret_val = MonitorUpdateId_eq(&a_conv, &b_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_Persist_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKPersist this_ptr_conv = *(LDKPersist*)(this_ptr_ptr); + FREE((void*)this_ptr); + Persist_free(this_ptr_conv); +} + +void __attribute__((visibility("default"))) TS_LockedChannelMonitor_free(uint32_t this_obj) { + LDKLockedChannelMonitor this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + LockedChannelMonitor_free(this_obj_conv); +} + +void __attribute__((visibility("default"))) TS_ChainMonitor_free(uint32_t this_obj) { + LDKChainMonitor this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + ChainMonitor_free(this_obj_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_new(uint32_t chain_source, uint32_t broadcaster, uint32_t logger, uint32_t feeest, uint32_t persister) { + void* chain_source_ptr = (void*)(((uint64_t)chain_source) & ~1); + CHECK_ACCESS(chain_source_ptr); + LDKCOption_FilterZ chain_source_conv = *(LDKCOption_FilterZ*)(chain_source_ptr); + // Warning: we may need a move here but no clone is available for LDKCOption_FilterZ + if (chain_source_conv.tag == LDKCOption_FilterZ_Some) { + // Manually implement clone for Java trait instances + } + void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); + CHECK_ACCESS(broadcaster_ptr); + LDKBroadcasterInterface broadcaster_conv = *(LDKBroadcasterInterface*)(broadcaster_ptr); + void* logger_ptr = (void*)(((uint64_t)logger) & ~1); + CHECK_ACCESS(logger_ptr); + LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); + void* feeest_ptr = (void*)(((uint64_t)feeest) & ~1); + CHECK_ACCESS(feeest_ptr); + LDKFeeEstimator feeest_conv = *(LDKFeeEstimator*)(feeest_ptr); + void* persister_ptr = (void*)(((uint64_t)persister) & ~1); + CHECK_ACCESS(persister_ptr); + LDKPersist persister_conv = *(LDKPersist*)(persister_ptr); + LDKChainMonitor ret_var = ChainMonitor_new(chain_source_conv, broadcaster_conv, logger_conv, feeest_conv, persister_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -20575,190 +18336,195 @@ uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_counterparty_ return ret_ref; } -int16_t __attribute__((visibility("default"))) TS_InMemorySigner_counterparty_selected_contest_delay(uint32_t this_arg) { - LDKInMemorySigner this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int16_t ret_val = InMemorySigner_counterparty_selected_contest_delay(&this_arg_conv); - return ret_val; -} - -int16_t __attribute__((visibility("default"))) TS_InMemorySigner_holder_selected_contest_delay(uint32_t this_arg) { - LDKInMemorySigner this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int16_t ret_val = InMemorySigner_holder_selected_contest_delay(&this_arg_conv); - return ret_val; -} - -jboolean __attribute__((visibility("default"))) TS_InMemorySigner_is_outbound(uint32_t this_arg) { - LDKInMemorySigner this_arg_conv; +uint32_tArray __attribute__((visibility("default"))) TS_ChainMonitor_get_claimable_balances(uint32_t this_arg, uint32_tArray ignored_channels) { + LDKChainMonitor this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = InMemorySigner_is_outbound(&this_arg_conv); - return ret_val; + LDKCVec_ChannelDetailsZ ignored_channels_constr; + ignored_channels_constr.datalen = ignored_channels->arr_len; + if (ignored_channels_constr.datalen > 0) + ignored_channels_constr.data = MALLOC(ignored_channels_constr.datalen * sizeof(LDKChannelDetails), "LDKCVec_ChannelDetailsZ Elements"); + else + ignored_channels_constr.data = NULL; + uint32_t* ignored_channels_vals = ignored_channels->elems; + for (size_t q = 0; q < ignored_channels_constr.datalen; q++) { + uint32_t ignored_channels_conv_16 = ignored_channels_vals[q]; + LDKChannelDetails ignored_channels_conv_16_conv; + ignored_channels_conv_16_conv.inner = (void*)(ignored_channels_conv_16 & (~1)); + ignored_channels_conv_16_conv.is_owned = (ignored_channels_conv_16 & 1) || (ignored_channels_conv_16 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(ignored_channels_conv_16_conv); + ignored_channels_conv_16_conv = ChannelDetails_clone(&ignored_channels_conv_16_conv); + ignored_channels_constr.data[q] = ignored_channels_conv_16_conv; + } + LDKCVec_BalanceZ ret_var = ChainMonitor_get_claimable_balances(&this_arg_conv, ignored_channels_constr); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t j = 0; j < ret_var.datalen; j++) { + LDKBalance *ret_conv_9_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); + *ret_conv_9_copy = ret_var.data[j]; + uint64_t ret_conv_9_ref = (uint64_t)ret_conv_9_copy; + ret_arr_ptr[j] = ret_conv_9_ref; + } + + FREE(ret_var.data); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_funding_outpoint(uint32_t this_arg) { - LDKInMemorySigner this_arg_conv; +uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_get_monitor(uint32_t this_arg, uint32_t funding_txo) { + LDKChainMonitor this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKOutPoint ret_var = InMemorySigner_funding_outpoint(&this_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + LDKOutPoint funding_txo_conv; + funding_txo_conv.inner = (void*)(funding_txo & (~1)); + funding_txo_conv.is_owned = (funding_txo & 1) || (funding_txo == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_conv); + funding_txo_conv = OutPoint_clone(&funding_txo_conv); + LDKCResult_LockedChannelMonitorNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_LockedChannelMonitorNoneZ), "LDKCResult_LockedChannelMonitorNoneZ"); + *ret_conv = ChainMonitor_get_monitor(&this_arg_conv, funding_txo_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_get_channel_parameters(uint32_t this_arg) { - LDKInMemorySigner this_arg_conv; +uint32_tArray __attribute__((visibility("default"))) TS_ChainMonitor_list_monitors(uint32_t this_arg) { + LDKChainMonitor this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKChannelTransactionParameters ret_var = InMemorySigner_get_channel_parameters(&this_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; + LDKCVec_OutPointZ ret_var = ChainMonitor_list_monitors(&this_arg_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t k = 0; k < ret_var.datalen; k++) { + LDKOutPoint ret_conv_10_var = ret_var.data[k]; + uint64_t ret_conv_10_ref = 0; + CHECK((((uint64_t)ret_conv_10_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_conv_10_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_10_var); + ret_conv_10_ref = (uint64_t)ret_conv_10_var.inner; + if (ret_conv_10_var.is_owned) { + ret_conv_10_ref |= 1; + } + ret_arr_ptr[k] = ret_conv_10_ref; } - return ret_ref; + + FREE(ret_var.data); + return ret_arr; } -jboolean __attribute__((visibility("default"))) TS_InMemorySigner_opt_anchors(uint32_t this_arg) { - LDKInMemorySigner this_arg_conv; +uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_channel_monitor_updated(uint32_t this_arg, uint32_t funding_txo, uint32_t completed_update_id) { + LDKChainMonitor this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = InMemorySigner_opt_anchors(&this_arg_conv); - return ret_val; + LDKOutPoint funding_txo_conv; + funding_txo_conv.inner = (void*)(funding_txo & (~1)); + funding_txo_conv.is_owned = (funding_txo & 1) || (funding_txo == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_conv); + funding_txo_conv = OutPoint_clone(&funding_txo_conv); + LDKMonitorUpdateId completed_update_id_conv; + completed_update_id_conv.inner = (void*)(completed_update_id & (~1)); + completed_update_id_conv.is_owned = (completed_update_id & 1) || (completed_update_id == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(completed_update_id_conv); + completed_update_id_conv = MonitorUpdateId_clone(&completed_update_id_conv); + LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); + *ret_conv = ChainMonitor_channel_monitor_updated(&this_arg_conv, funding_txo_conv, completed_update_id_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_sign_counterparty_payment_input(uint32_t this_arg, int8_tArray spend_tx, int64_t input_idx, uint32_t descriptor) { - LDKInMemorySigner this_arg_conv; +uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_as_Listen(uint32_t this_arg) { + LDKChainMonitor this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKTransaction spend_tx_ref; - spend_tx_ref.datalen = *((uint32_t*)spend_tx); - spend_tx_ref.data = MALLOC(spend_tx_ref.datalen, "LDKTransaction Bytes"); - memcpy(spend_tx_ref.data, (uint8_t*)(spend_tx + 4), spend_tx_ref.datalen); - spend_tx_ref.data_is_owned = true; - LDKStaticPaymentOutputDescriptor descriptor_conv; - descriptor_conv.inner = (void*)(descriptor & (~1)); - descriptor_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(descriptor_conv); - LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ"); - *ret_conv = InMemorySigner_sign_counterparty_payment_input(&this_arg_conv, spend_tx_ref, input_idx, &descriptor_conv); - return (uint64_t)ret_conv; + LDKListen* ret_ret = MALLOC(sizeof(LDKListen), "LDKListen"); + *ret_ret = ChainMonitor_as_Listen(&this_arg_conv); + return (uint64_t)ret_ret; } -uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_sign_dynamic_p2wsh_input(uint32_t this_arg, int8_tArray spend_tx, int64_t input_idx, uint32_t descriptor) { - LDKInMemorySigner this_arg_conv; +uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_as_Confirm(uint32_t this_arg) { + LDKChainMonitor this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKTransaction spend_tx_ref; - spend_tx_ref.datalen = *((uint32_t*)spend_tx); - spend_tx_ref.data = MALLOC(spend_tx_ref.datalen, "LDKTransaction Bytes"); - memcpy(spend_tx_ref.data, (uint8_t*)(spend_tx + 4), spend_tx_ref.datalen); - spend_tx_ref.data_is_owned = true; - LDKDelayedPaymentOutputDescriptor descriptor_conv; - descriptor_conv.inner = (void*)(descriptor & (~1)); - descriptor_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(descriptor_conv); - LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ"); - *ret_conv = InMemorySigner_sign_dynamic_p2wsh_input(&this_arg_conv, spend_tx_ref, input_idx, &descriptor_conv); - return (uint64_t)ret_conv; + LDKConfirm* ret_ret = MALLOC(sizeof(LDKConfirm), "LDKConfirm"); + *ret_ret = ChainMonitor_as_Confirm(&this_arg_conv); + return (uint64_t)ret_ret; } -uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_as_BaseSign(uint32_t this_arg) { - LDKInMemorySigner this_arg_conv; +uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_as_Watch(uint32_t this_arg) { + LDKChainMonitor this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKBaseSign* ret_ret = MALLOC(sizeof(LDKBaseSign), "LDKBaseSign"); - *ret_ret = InMemorySigner_as_BaseSign(&this_arg_conv); + LDKWatch* ret_ret = MALLOC(sizeof(LDKWatch), "LDKWatch"); + *ret_ret = ChainMonitor_as_Watch(&this_arg_conv); return (uint64_t)ret_ret; } -uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_as_Sign(uint32_t this_arg) { - LDKInMemorySigner this_arg_conv; +uint32_t __attribute__((visibility("default"))) TS_ChainMonitor_as_EventsProvider(uint32_t this_arg) { + LDKChainMonitor this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKSign* ret_ret = MALLOC(sizeof(LDKSign), "LDKSign"); - *ret_ret = InMemorySigner_as_Sign(&this_arg_conv); + LDKEventsProvider* ret_ret = MALLOC(sizeof(LDKEventsProvider), "LDKEventsProvider"); + *ret_ret = ChainMonitor_as_EventsProvider(&this_arg_conv); return (uint64_t)ret_ret; } -int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_write(uint32_t obj) { - LDKInMemorySigner obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = InMemorySigner_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +void __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_free(uint32_t this_obj) { + LDKChannelMonitorUpdate this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + ChannelMonitorUpdate_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_InMemorySignerDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InMemorySignerDecodeErrorZ), "LDKCResult_InMemorySignerDecodeErrorZ"); - *ret_conv = InMemorySigner_read(ser_ref); - return (uint64_t)ret_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_get_update_id(uint32_t this_ptr) { + LDKChannelMonitorUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = ChannelMonitorUpdate_get_update_id(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_KeysManager_free(uint32_t this_obj) { - LDKKeysManager this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - KeysManager_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_set_update_id(uint32_t this_ptr, int64_t val) { + LDKChannelMonitorUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ChannelMonitorUpdate_set_update_id(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_KeysManager_new(int8_tArray seed, int64_t starting_time_secs, int32_t starting_time_nanos) { - unsigned char seed_arr[32]; - CHECK(*((uint32_t*)seed) == 32); - memcpy(seed_arr, (uint8_t*)(seed + 4), 32); - unsigned char (*seed_ref)[32] = &seed_arr; - LDKKeysManager ret_var = KeysManager_new(seed_ref, starting_time_secs, starting_time_nanos); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } +static inline uint64_t ChannelMonitorUpdate_clone_ptr(LDKChannelMonitorUpdate *NONNULL_PTR arg) { + LDKChannelMonitorUpdate ret_var = ChannelMonitorUpdate_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} return ret_ref; } +int64_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_clone_ptr(uint32_t arg) { + LDKChannelMonitorUpdate arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ChannelMonitorUpdate_clone_ptr(&arg_conv); + return ret_val; +} -uint32_t __attribute__((visibility("default"))) TS_KeysManager_derive_channel_keys(uint32_t this_arg, int64_t channel_value_satoshis, int8_tArray params) { - LDKKeysManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char params_arr[32]; - CHECK(*((uint32_t*)params) == 32); - memcpy(params_arr, (uint8_t*)(params + 4), 32); - unsigned char (*params_ref)[32] = ¶ms_arr; - LDKInMemorySigner ret_var = KeysManager_derive_channel_keys(&this_arg_conv, channel_value_satoshis, params_ref); +uint32_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_clone(uint32_t orig) { + LDKChannelMonitorUpdate orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKChannelMonitorUpdate ret_var = ChannelMonitorUpdate_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -20770,145 +18536,132 @@ uint32_t __attribute__((visibility("default"))) TS_KeysManager_derive_channel_k return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_KeysManager_spend_spendable_outputs(uint32_t this_arg, uint32_tArray descriptors, uint32_tArray outputs, int8_tArray change_destination_script, int32_t feerate_sat_per_1000_weight) { - LDKKeysManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_SpendableOutputDescriptorZ descriptors_constr; - descriptors_constr.datalen = *((uint32_t*)descriptors); - if (descriptors_constr.datalen > 0) - descriptors_constr.data = MALLOC(descriptors_constr.datalen * sizeof(LDKSpendableOutputDescriptor), "LDKCVec_SpendableOutputDescriptorZ Elements"); - else - descriptors_constr.data = NULL; - uint32_t* descriptors_vals = (uint32_t*)(descriptors + 4); - for (size_t b = 0; b < descriptors_constr.datalen; b++) { - uint32_t descriptors_conv_27 = descriptors_vals[b]; - void* descriptors_conv_27_ptr = (void*)(((uint64_t)descriptors_conv_27) & ~1); - CHECK_ACCESS(descriptors_conv_27_ptr); - LDKSpendableOutputDescriptor descriptors_conv_27_conv = *(LDKSpendableOutputDescriptor*)(descriptors_conv_27_ptr); - descriptors_conv_27_conv = SpendableOutputDescriptor_clone((LDKSpendableOutputDescriptor*)(((uint64_t)descriptors_conv_27) & ~1)); - descriptors_constr.data[b] = descriptors_conv_27_conv; - } - LDKCVec_TxOutZ outputs_constr; - outputs_constr.datalen = *((uint32_t*)outputs); - if (outputs_constr.datalen > 0) - outputs_constr.data = MALLOC(outputs_constr.datalen * sizeof(LDKTxOut), "LDKCVec_TxOutZ Elements"); - else - outputs_constr.data = NULL; - uint32_t* outputs_vals = (uint32_t*)(outputs + 4); - for (size_t h = 0; h < outputs_constr.datalen; h++) { - uint32_t outputs_conv_7 = outputs_vals[h]; - void* outputs_conv_7_ptr = (void*)(((uint64_t)outputs_conv_7) & ~1); - CHECK_ACCESS(outputs_conv_7_ptr); - LDKTxOut outputs_conv_7_conv = *(LDKTxOut*)(outputs_conv_7_ptr); - outputs_conv_7_conv = TxOut_clone((LDKTxOut*)(((uint64_t)outputs_conv_7) & ~1)); - outputs_constr.data[h] = outputs_conv_7_conv; - } - LDKCVec_u8Z change_destination_script_ref; - change_destination_script_ref.datalen = *((uint32_t*)change_destination_script); - change_destination_script_ref.data = MALLOC(change_destination_script_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(change_destination_script_ref.data, (uint8_t*)(change_destination_script + 4), change_destination_script_ref.datalen); - LDKCResult_TransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TransactionNoneZ), "LDKCResult_TransactionNoneZ"); - *ret_conv = KeysManager_spend_spendable_outputs(&this_arg_conv, descriptors_constr, outputs_constr, change_destination_script_ref, feerate_sat_per_1000_weight); +int8_tArray __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_write(uint32_t obj) { + LDKChannelMonitorUpdate obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ChannelMonitorUpdate_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_ChannelMonitorUpdate_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ChannelMonitorUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelMonitorUpdateDecodeErrorZ), "LDKCResult_ChannelMonitorUpdateDecodeErrorZ"); + *ret_conv = ChannelMonitorUpdate_read(ser_ref); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_KeysManager_as_KeysInterface(uint32_t this_arg) { - LDKKeysManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKKeysInterface* ret_ret = MALLOC(sizeof(LDKKeysInterface), "LDKKeysInterface"); - *ret_ret = KeysManager_as_KeysInterface(&this_arg_conv); - return (uint64_t)ret_ret; +void __attribute__((visibility("default"))) TS_MonitorEvent_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKMonitorEvent this_ptr_conv = *(LDKMonitorEvent*)(this_ptr_ptr); + FREE((void*)this_ptr); + MonitorEvent_free(this_ptr_conv); } -void __attribute__((visibility("default"))) TS_ChannelManager_free(uint32_t this_obj) { - LDKChannelManager this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelManager_free(this_obj_conv); +static inline uint64_t MonitorEvent_clone_ptr(LDKMonitorEvent *NONNULL_PTR arg) { + LDKMonitorEvent *ret_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); + *ret_copy = MonitorEvent_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_MonitorEvent_clone_ptr(uint32_t arg) { + LDKMonitorEvent* arg_conv = (LDKMonitorEvent*)arg; + int64_t ret_val = MonitorEvent_clone_ptr(arg_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_ChainParameters_free(uint32_t this_obj) { - LDKChainParameters this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChainParameters_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_MonitorEvent_clone(uint32_t orig) { + LDKMonitorEvent* orig_conv = (LDKMonitorEvent*)orig; + LDKMonitorEvent *ret_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); + *ret_copy = MonitorEvent_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_MonitorEvent_htlcevent(uint32_t a) { + LDKHTLCUpdate a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = (a & 1) || (a == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + a_conv = HTLCUpdate_clone(&a_conv); + LDKMonitorEvent *ret_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); + *ret_copy = MonitorEvent_htlcevent(a_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_MonitorEvent_commitment_tx_confirmed(uint32_t a) { + LDKOutPoint a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = (a & 1) || (a == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + a_conv = OutPoint_clone(&a_conv); + LDKMonitorEvent *ret_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); + *ret_copy = MonitorEvent_commitment_tx_confirmed(a_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChainParameters_get_network(uint32_t this_ptr) { - LDKChainParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - uint32_t ret_conv = LDKNetwork_to_js(ChainParameters_get_network(&this_ptr_conv)); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_MonitorEvent_update_completed(uint32_t funding_txo, int64_t monitor_update_id) { + LDKOutPoint funding_txo_conv; + funding_txo_conv.inner = (void*)(funding_txo & (~1)); + funding_txo_conv.is_owned = (funding_txo & 1) || (funding_txo == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_conv); + funding_txo_conv = OutPoint_clone(&funding_txo_conv); + LDKMonitorEvent *ret_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); + *ret_copy = MonitorEvent_update_completed(funding_txo_conv, monitor_update_id); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChainParameters_set_network(uint32_t this_ptr, uint32_t val) { - LDKChainParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNetwork val_conv = LDKNetwork_from_js(val); - ChainParameters_set_network(&this_ptr_conv, val_conv); +uint32_t __attribute__((visibility("default"))) TS_MonitorEvent_update_failed(uint32_t a) { + LDKOutPoint a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = (a & 1) || (a == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + a_conv = OutPoint_clone(&a_conv); + LDKMonitorEvent *ret_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); + *ret_copy = MonitorEvent_update_failed(a_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChainParameters_get_best_block(uint32_t this_ptr) { - LDKChainParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKBestBlock ret_var = ChainParameters_get_best_block(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_MonitorEvent_write(uint32_t obj) { + LDKMonitorEvent* obj_conv = (LDKMonitorEvent*)obj; + LDKCVec_u8Z ret_var = MonitorEvent_write(obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChainParameters_set_best_block(uint32_t this_ptr, uint32_t val) { - LDKChainParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKBestBlock val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = BestBlock_clone(&val_conv); - ChainParameters_set_best_block(&this_ptr_conv, val_conv); +uint32_t __attribute__((visibility("default"))) TS_MonitorEvent_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_COption_MonitorEventZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_MonitorEventZDecodeErrorZ), "LDKCResult_COption_MonitorEventZDecodeErrorZ"); + *ret_conv = MonitorEvent_read(ser_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ChainParameters_new(uint32_t network_arg, uint32_t best_block_arg) { - LDKNetwork network_arg_conv = LDKNetwork_from_js(network_arg); - LDKBestBlock best_block_arg_conv; - best_block_arg_conv.inner = (void*)(best_block_arg & (~1)); - best_block_arg_conv.is_owned = (best_block_arg & 1) || (best_block_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(best_block_arg_conv); - best_block_arg_conv = BestBlock_clone(&best_block_arg_conv); - LDKChainParameters ret_var = ChainParameters_new(network_arg_conv, best_block_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_HTLCUpdate_free(uint32_t this_obj) { + LDKHTLCUpdate this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + HTLCUpdate_free(this_obj_conv); } -static inline uint64_t ChainParameters_clone_ptr(LDKChainParameters *NONNULL_PTR arg) { - LDKChainParameters ret_var = ChainParameters_clone(arg); +static inline uint64_t HTLCUpdate_clone_ptr(LDKHTLCUpdate *NONNULL_PTR arg) { + LDKHTLCUpdate ret_var = HTLCUpdate_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -20919,21 +18672,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ChainParameters_clone_ptr(uint32_t arg) { - LDKChainParameters arg_conv; +int64_t __attribute__((visibility("default"))) TS_HTLCUpdate_clone_ptr(uint32_t arg) { + LDKHTLCUpdate arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChainParameters_clone_ptr(&arg_conv); + int64_t ret_val = HTLCUpdate_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChainParameters_clone(uint32_t orig) { - LDKChainParameters orig_conv; +uint32_t __attribute__((visibility("default"))) TS_HTLCUpdate_clone(uint32_t orig) { + LDKHTLCUpdate orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChainParameters ret_var = ChainParameters_clone(&orig_conv); + LDKHTLCUpdate ret_var = HTLCUpdate_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -20945,80 +18698,101 @@ uint32_t __attribute__((visibility("default"))) TS_ChainParameters_clone(uint32 return ret_ref; } -void __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_free(uint32_t this_obj) { - LDKCounterpartyForwardingInfo this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - CounterpartyForwardingInfo_free(this_obj_conv); +int8_tArray __attribute__((visibility("default"))) TS_HTLCUpdate_write(uint32_t obj) { + LDKHTLCUpdate obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = HTLCUpdate_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -int32_t __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_get_fee_base_msat(uint32_t this_ptr) { - LDKCounterpartyForwardingInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = CounterpartyForwardingInfo_get_fee_base_msat(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_HTLCUpdate_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_HTLCUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCUpdateDecodeErrorZ), "LDKCResult_HTLCUpdateDecodeErrorZ"); + *ret_conv = HTLCUpdate_read(ser_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_set_fee_base_msat(uint32_t this_ptr, int32_t val) { - LDKCounterpartyForwardingInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - CounterpartyForwardingInfo_set_fee_base_msat(&this_ptr_conv, val); +void __attribute__((visibility("default"))) TS_Balance_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKBalance this_ptr_conv = *(LDKBalance*)(this_ptr_ptr); + FREE((void*)this_ptr); + Balance_free(this_ptr_conv); } -int32_t __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_get_fee_proportional_millionths(uint32_t this_ptr) { - LDKCounterpartyForwardingInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = CounterpartyForwardingInfo_get_fee_proportional_millionths(&this_ptr_conv); +static inline uint64_t Balance_clone_ptr(LDKBalance *NONNULL_PTR arg) { + LDKBalance *ret_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); + *ret_copy = Balance_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_Balance_clone_ptr(uint32_t arg) { + LDKBalance* arg_conv = (LDKBalance*)arg; + int64_t ret_val = Balance_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_set_fee_proportional_millionths(uint32_t this_ptr, int32_t val) { - LDKCounterpartyForwardingInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - CounterpartyForwardingInfo_set_fee_proportional_millionths(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_Balance_clone(uint32_t orig) { + LDKBalance* orig_conv = (LDKBalance*)orig; + LDKBalance *ret_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); + *ret_copy = Balance_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -int16_t __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_get_cltv_expiry_delta(uint32_t this_ptr) { - LDKCounterpartyForwardingInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = CounterpartyForwardingInfo_get_cltv_expiry_delta(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_Balance_claimable_on_channel_close(int64_t claimable_amount_satoshis) { + LDKBalance *ret_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); + *ret_copy = Balance_claimable_on_channel_close(claimable_amount_satoshis); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_set_cltv_expiry_delta(uint32_t this_ptr, int16_t val) { - LDKCounterpartyForwardingInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - CounterpartyForwardingInfo_set_cltv_expiry_delta(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_Balance_claimable_awaiting_confirmations(int64_t claimable_amount_satoshis, int32_t confirmation_height) { + LDKBalance *ret_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); + *ret_copy = Balance_claimable_awaiting_confirmations(claimable_amount_satoshis, confirmation_height); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_new(int32_t fee_base_msat_arg, int32_t fee_proportional_millionths_arg, int16_t cltv_expiry_delta_arg) { - LDKCounterpartyForwardingInfo ret_var = CounterpartyForwardingInfo_new(fee_base_msat_arg, fee_proportional_millionths_arg, cltv_expiry_delta_arg); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } +uint32_t __attribute__((visibility("default"))) TS_Balance_contentious_claimable(int64_t claimable_amount_satoshis, int32_t timeout_height) { + LDKBalance *ret_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); + *ret_copy = Balance_contentious_claimable(claimable_amount_satoshis, timeout_height); + uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -static inline uint64_t CounterpartyForwardingInfo_clone_ptr(LDKCounterpartyForwardingInfo *NONNULL_PTR arg) { - LDKCounterpartyForwardingInfo ret_var = CounterpartyForwardingInfo_clone(arg); +uint32_t __attribute__((visibility("default"))) TS_Balance_maybe_claimable_htlcawaiting_timeout(int64_t claimable_amount_satoshis, int32_t claimable_height) { + LDKBalance *ret_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); + *ret_copy = Balance_maybe_claimable_htlcawaiting_timeout(claimable_amount_satoshis, claimable_height); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +jboolean __attribute__((visibility("default"))) TS_Balance_eq(uint32_t a, uint32_t b) { + LDKBalance* a_conv = (LDKBalance*)a; + LDKBalance* b_conv = (LDKBalance*)b; + jboolean ret_val = Balance_eq(a_conv, b_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_ChannelMonitor_free(uint32_t this_obj) { + LDKChannelMonitor this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + ChannelMonitor_free(this_obj_conv); +} + +static inline uint64_t ChannelMonitor_clone_ptr(LDKChannelMonitor *NONNULL_PTR arg) { + LDKChannelMonitor ret_var = ChannelMonitor_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -21029,21 +18803,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_clone_ptr(uint32_t arg) { - LDKCounterpartyForwardingInfo arg_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelMonitor_clone_ptr(uint32_t arg) { + LDKChannelMonitor arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = CounterpartyForwardingInfo_clone_ptr(&arg_conv); + int64_t ret_val = ChannelMonitor_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_clone(uint32_t orig) { - LDKCounterpartyForwardingInfo orig_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelMonitor_clone(uint32_t orig) { + LDKChannelMonitor orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKCounterpartyForwardingInfo ret_var = CounterpartyForwardingInfo_clone(&orig_conv); + LDKChannelMonitor ret_var = ChannelMonitor_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -21055,213 +18829,347 @@ uint32_t __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_c return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelCounterparty_free(uint32_t this_obj) { - LDKChannelCounterparty this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelCounterparty_free(this_obj_conv); +int8_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_write(uint32_t obj) { + LDKChannelMonitor obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ChannelMonitor_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -int8_tArray __attribute__((visibility("default"))) TS_ChannelCounterparty_get_node_id(uint32_t this_ptr) { - LDKChannelCounterparty this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ChannelCounterparty_get_node_id(&this_ptr_conv).compressed_form, 33); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_ChannelMonitor_update_monitor(uint32_t this_arg, uint32_t updates, uint32_t broadcaster, uint32_t fee_estimator, uint32_t logger) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKChannelMonitorUpdate updates_conv; + updates_conv.inner = (void*)(updates & (~1)); + updates_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(updates_conv); + void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); + if (!(broadcaster & 1)) { CHECK_ACCESS(broadcaster_ptr); } + LDKBroadcasterInterface* broadcaster_conv = (LDKBroadcasterInterface*)broadcaster_ptr; + void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); + if (!(fee_estimator & 1)) { CHECK_ACCESS(fee_estimator_ptr); } + LDKFeeEstimator* fee_estimator_conv = (LDKFeeEstimator*)fee_estimator_ptr; + void* logger_ptr = (void*)(((uint64_t)logger) & ~1); + if (!(logger & 1)) { CHECK_ACCESS(logger_ptr); } + LDKLogger* logger_conv = (LDKLogger*)logger_ptr; + LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ"); + *ret_conv = ChannelMonitor_update_monitor(&this_arg_conv, &updates_conv, broadcaster_conv, fee_estimator_conv, logger_conv); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_ChannelCounterparty_set_node_id(uint32_t this_ptr, int8_tArray val) { - LDKChannelCounterparty this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - ChannelCounterparty_set_node_id(&this_ptr_conv, val_ref); +int64_t __attribute__((visibility("default"))) TS_ChannelMonitor_get_latest_update_id(uint32_t this_arg) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int64_t ret_val = ChannelMonitor_get_latest_update_id(&this_arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelCounterparty_get_features(uint32_t this_ptr) { - LDKChannelCounterparty this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKInitFeatures ret_var = ChannelCounterparty_get_features(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_ChannelMonitor_get_funding_txo(uint32_t this_arg) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKC2Tuple_OutPointScriptZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_OutPointScriptZ), "LDKC2Tuple_OutPointScriptZ"); + *ret_conv = ChannelMonitor_get_funding_txo(&this_arg_conv); + return ((uint64_t)ret_conv); } -void __attribute__((visibility("default"))) TS_ChannelCounterparty_set_features(uint32_t this_ptr, uint32_t val) { - LDKChannelCounterparty this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKInitFeatures val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = InitFeatures_clone(&val_conv); - ChannelCounterparty_set_features(&this_ptr_conv, val_conv); +uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_get_outputs_to_watch(uint32_t this_arg) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ ret_var = ChannelMonitor_get_outputs_to_watch(&this_arg_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t o = 0; o < ret_var.datalen; o++) { + LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* ret_conv_40_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ"); + *ret_conv_40_conv = ret_var.data[o]; + ret_arr_ptr[o] = ((uint64_t)ret_conv_40_conv); + } + + FREE(ret_var.data); + return ret_arr; } -int64_t __attribute__((visibility("default"))) TS_ChannelCounterparty_get_unspendable_punishment_reserve(uint32_t this_ptr) { - LDKChannelCounterparty this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelCounterparty_get_unspendable_punishment_reserve(&this_ptr_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_ChannelMonitor_load_outputs_to_watch(uint32_t this_arg, uint32_t filter) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + void* filter_ptr = (void*)(((uint64_t)filter) & ~1); + if (!(filter & 1)) { CHECK_ACCESS(filter_ptr); } + LDKFilter* filter_conv = (LDKFilter*)filter_ptr; + ChannelMonitor_load_outputs_to_watch(&this_arg_conv, filter_conv); } -void __attribute__((visibility("default"))) TS_ChannelCounterparty_set_unspendable_punishment_reserve(uint32_t this_ptr, int64_t val) { - LDKChannelCounterparty this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelCounterparty_set_unspendable_punishment_reserve(&this_ptr_conv, val); +uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_get_and_clear_pending_monitor_events(uint32_t this_arg) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKCVec_MonitorEventZ ret_var = ChannelMonitor_get_and_clear_pending_monitor_events(&this_arg_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t o = 0; o < ret_var.datalen; o++) { + LDKMonitorEvent *ret_conv_14_copy = MALLOC(sizeof(LDKMonitorEvent), "LDKMonitorEvent"); + *ret_conv_14_copy = ret_var.data[o]; + uint64_t ret_conv_14_ref = (uint64_t)ret_conv_14_copy; + ret_arr_ptr[o] = ret_conv_14_ref; + } + + FREE(ret_var.data); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelCounterparty_get_forwarding_info(uint32_t this_ptr) { - LDKChannelCounterparty this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCounterpartyForwardingInfo ret_var = ChannelCounterparty_get_forwarding_info(&this_ptr_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } +uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_get_and_clear_pending_events(uint32_t this_arg) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKCVec_EventZ ret_var = ChannelMonitor_get_and_clear_pending_events(&this_arg_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t h = 0; h < ret_var.datalen; h++) { + LDKEvent *ret_conv_7_copy = MALLOC(sizeof(LDKEvent), "LDKEvent"); + *ret_conv_7_copy = ret_var.data[h]; + uint64_t ret_conv_7_ref = (uint64_t)ret_conv_7_copy; + ret_arr_ptr[h] = ret_conv_7_ref; } - return ret_ref; + + FREE(ret_var.data); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelCounterparty_set_forwarding_info(uint32_t this_ptr, uint32_t val) { - LDKChannelCounterparty this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCounterpartyForwardingInfo val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = CounterpartyForwardingInfo_clone(&val_conv); - ChannelCounterparty_set_forwarding_info(&this_ptr_conv, val_conv); +ptrArray __attribute__((visibility("default"))) TS_ChannelMonitor_get_latest_holder_commitment_txn(uint32_t this_arg, uint32_t logger) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + void* logger_ptr = (void*)(((uint64_t)logger) & ~1); + if (!(logger & 1)) { CHECK_ACCESS(logger_ptr); } + LDKLogger* logger_conv = (LDKLogger*)logger_ptr; + LDKCVec_TransactionZ ret_var = ChannelMonitor_get_latest_holder_commitment_txn(&this_arg_conv, logger_conv); + ptrArray ret_arr = NULL; + ret_arr = init_ptrArray(ret_var.datalen); + int8_tArray *ret_arr_ptr = (int8_tArray*)(ret_arr + 4); + for (size_t m = 0; m < ret_var.datalen; m++) { + LDKTransaction ret_conv_12_var = ret_var.data[m]; + int8_tArray ret_conv_12_arr = init_int8_tArray(ret_conv_12_var.datalen); + memcpy(ret_conv_12_arr->elems, ret_conv_12_var.data, ret_conv_12_var.datalen); + Transaction_free(ret_conv_12_var); + ret_arr_ptr[m] = ret_conv_12_arr; + } + + FREE(ret_var.data); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelCounterparty_new(int8_tArray node_id_arg, uint32_t features_arg, int64_t unspendable_punishment_reserve_arg, uint32_t forwarding_info_arg) { - LDKPublicKey node_id_arg_ref; - CHECK(*((uint32_t*)node_id_arg) == 33); - memcpy(node_id_arg_ref.compressed_form, (uint8_t*)(node_id_arg + 4), 33); - LDKInitFeatures features_arg_conv; - features_arg_conv.inner = (void*)(features_arg & (~1)); - features_arg_conv.is_owned = (features_arg & 1) || (features_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(features_arg_conv); - features_arg_conv = InitFeatures_clone(&features_arg_conv); - LDKCounterpartyForwardingInfo forwarding_info_arg_conv; - forwarding_info_arg_conv.inner = (void*)(forwarding_info_arg & (~1)); - forwarding_info_arg_conv.is_owned = (forwarding_info_arg & 1) || (forwarding_info_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(forwarding_info_arg_conv); - forwarding_info_arg_conv = CounterpartyForwardingInfo_clone(&forwarding_info_arg_conv); - LDKChannelCounterparty ret_var = ChannelCounterparty_new(node_id_arg_ref, features_arg_conv, unspendable_punishment_reserve_arg, forwarding_info_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; +uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_block_connected(uint32_t this_arg, int8_tArray header, uint32_tArray txdata, int32_t height, uint32_t broadcaster, uint32_t fee_estimator, uint32_t logger) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char header_arr[80]; + CHECK(header->arr_len == 80); + memcpy(header_arr, header->elems, 80); + unsigned char (*header_ref)[80] = &header_arr; + LDKCVec_C2Tuple_usizeTransactionZZ txdata_constr; + txdata_constr.datalen = txdata->arr_len; + if (txdata_constr.datalen > 0) + txdata_constr.data = MALLOC(txdata_constr.datalen * sizeof(LDKC2Tuple_usizeTransactionZ), "LDKCVec_C2Tuple_usizeTransactionZZ Elements"); + else + txdata_constr.data = NULL; + uint32_t* txdata_vals = txdata->elems; + for (size_t c = 0; c < txdata_constr.datalen; c++) { + uint32_t txdata_conv_28 = txdata_vals[c]; + void* txdata_conv_28_ptr = (void*)(((uint64_t)txdata_conv_28) & ~1); + CHECK_ACCESS(txdata_conv_28_ptr); + LDKC2Tuple_usizeTransactionZ txdata_conv_28_conv = *(LDKC2Tuple_usizeTransactionZ*)(txdata_conv_28_ptr); + txdata_conv_28_conv = C2Tuple_usizeTransactionZ_clone((LDKC2Tuple_usizeTransactionZ*)(((uint64_t)txdata_conv_28) & ~1)); + txdata_constr.data[c] = txdata_conv_28_conv; + } + void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); + CHECK_ACCESS(broadcaster_ptr); + LDKBroadcasterInterface broadcaster_conv = *(LDKBroadcasterInterface*)(broadcaster_ptr); + void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); + CHECK_ACCESS(fee_estimator_ptr); + LDKFeeEstimator fee_estimator_conv = *(LDKFeeEstimator*)(fee_estimator_ptr); + void* logger_ptr = (void*)(((uint64_t)logger) & ~1); + CHECK_ACCESS(logger_ptr); + LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); + LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ ret_var = ChannelMonitor_block_connected(&this_arg_conv, header_ref, txdata_constr, height, broadcaster_conv, fee_estimator_conv, logger_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t n = 0; n < ret_var.datalen; n++) { + LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* ret_conv_39_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ"); + *ret_conv_39_conv = ret_var.data[n]; + ret_arr_ptr[n] = ((uint64_t)ret_conv_39_conv); } - return ret_ref; + + FREE(ret_var.data); + return ret_arr; } -static inline uint64_t ChannelCounterparty_clone_ptr(LDKChannelCounterparty *NONNULL_PTR arg) { - LDKChannelCounterparty ret_var = ChannelCounterparty_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_ChannelCounterparty_clone_ptr(uint32_t arg) { - LDKChannelCounterparty arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelCounterparty_clone_ptr(&arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_ChannelMonitor_block_disconnected(uint32_t this_arg, int8_tArray header, int32_t height, uint32_t broadcaster, uint32_t fee_estimator, uint32_t logger) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char header_arr[80]; + CHECK(header->arr_len == 80); + memcpy(header_arr, header->elems, 80); + unsigned char (*header_ref)[80] = &header_arr; + void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); + CHECK_ACCESS(broadcaster_ptr); + LDKBroadcasterInterface broadcaster_conv = *(LDKBroadcasterInterface*)(broadcaster_ptr); + void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); + CHECK_ACCESS(fee_estimator_ptr); + LDKFeeEstimator fee_estimator_conv = *(LDKFeeEstimator*)(fee_estimator_ptr); + void* logger_ptr = (void*)(((uint64_t)logger) & ~1); + CHECK_ACCESS(logger_ptr); + LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); + ChannelMonitor_block_disconnected(&this_arg_conv, header_ref, height, broadcaster_conv, fee_estimator_conv, logger_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChannelCounterparty_clone(uint32_t orig) { - LDKChannelCounterparty orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelCounterparty ret_var = ChannelCounterparty_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; +uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_transactions_confirmed(uint32_t this_arg, int8_tArray header, uint32_tArray txdata, int32_t height, uint32_t broadcaster, uint32_t fee_estimator, uint32_t logger) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char header_arr[80]; + CHECK(header->arr_len == 80); + memcpy(header_arr, header->elems, 80); + unsigned char (*header_ref)[80] = &header_arr; + LDKCVec_C2Tuple_usizeTransactionZZ txdata_constr; + txdata_constr.datalen = txdata->arr_len; + if (txdata_constr.datalen > 0) + txdata_constr.data = MALLOC(txdata_constr.datalen * sizeof(LDKC2Tuple_usizeTransactionZ), "LDKCVec_C2Tuple_usizeTransactionZZ Elements"); + else + txdata_constr.data = NULL; + uint32_t* txdata_vals = txdata->elems; + for (size_t c = 0; c < txdata_constr.datalen; c++) { + uint32_t txdata_conv_28 = txdata_vals[c]; + void* txdata_conv_28_ptr = (void*)(((uint64_t)txdata_conv_28) & ~1); + CHECK_ACCESS(txdata_conv_28_ptr); + LDKC2Tuple_usizeTransactionZ txdata_conv_28_conv = *(LDKC2Tuple_usizeTransactionZ*)(txdata_conv_28_ptr); + txdata_conv_28_conv = C2Tuple_usizeTransactionZ_clone((LDKC2Tuple_usizeTransactionZ*)(((uint64_t)txdata_conv_28) & ~1)); + txdata_constr.data[c] = txdata_conv_28_conv; } - return ret_ref; + void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); + CHECK_ACCESS(broadcaster_ptr); + LDKBroadcasterInterface broadcaster_conv = *(LDKBroadcasterInterface*)(broadcaster_ptr); + void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); + CHECK_ACCESS(fee_estimator_ptr); + LDKFeeEstimator fee_estimator_conv = *(LDKFeeEstimator*)(fee_estimator_ptr); + void* logger_ptr = (void*)(((uint64_t)logger) & ~1); + CHECK_ACCESS(logger_ptr); + LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); + LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ ret_var = ChannelMonitor_transactions_confirmed(&this_arg_conv, header_ref, txdata_constr, height, broadcaster_conv, fee_estimator_conv, logger_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t n = 0; n < ret_var.datalen; n++) { + LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* ret_conv_39_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ"); + *ret_conv_39_conv = ret_var.data[n]; + ret_arr_ptr[n] = ((uint64_t)ret_conv_39_conv); + } + + FREE(ret_var.data); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelDetails_free(uint32_t this_obj) { - LDKChannelDetails this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelDetails_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_ChannelMonitor_transaction_unconfirmed(uint32_t this_arg, int8_tArray txid, uint32_t broadcaster, uint32_t fee_estimator, uint32_t logger) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char txid_arr[32]; + CHECK(txid->arr_len == 32); + memcpy(txid_arr, txid->elems, 32); + unsigned char (*txid_ref)[32] = &txid_arr; + void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); + CHECK_ACCESS(broadcaster_ptr); + LDKBroadcasterInterface broadcaster_conv = *(LDKBroadcasterInterface*)(broadcaster_ptr); + void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); + CHECK_ACCESS(fee_estimator_ptr); + LDKFeeEstimator fee_estimator_conv = *(LDKFeeEstimator*)(fee_estimator_ptr); + void* logger_ptr = (void*)(((uint64_t)logger) & ~1); + CHECK_ACCESS(logger_ptr); + LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); + ChannelMonitor_transaction_unconfirmed(&this_arg_conv, txid_ref, broadcaster_conv, fee_estimator_conv, logger_conv); } -int8_tArray __attribute__((visibility("default"))) TS_ChannelDetails_get_channel_id(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *ChannelDetails_get_channel_id(&this_ptr_conv), 32); +uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_best_block_updated(uint32_t this_arg, int8_tArray header, int32_t height, uint32_t broadcaster, uint32_t fee_estimator, uint32_t logger) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char header_arr[80]; + CHECK(header->arr_len == 80); + memcpy(header_arr, header->elems, 80); + unsigned char (*header_ref)[80] = &header_arr; + void* broadcaster_ptr = (void*)(((uint64_t)broadcaster) & ~1); + CHECK_ACCESS(broadcaster_ptr); + LDKBroadcasterInterface broadcaster_conv = *(LDKBroadcasterInterface*)(broadcaster_ptr); + void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); + CHECK_ACCESS(fee_estimator_ptr); + LDKFeeEstimator fee_estimator_conv = *(LDKFeeEstimator*)(fee_estimator_ptr); + void* logger_ptr = (void*)(((uint64_t)logger) & ~1); + CHECK_ACCESS(logger_ptr); + LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); + LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ ret_var = ChannelMonitor_best_block_updated(&this_arg_conv, header_ref, height, broadcaster_conv, fee_estimator_conv, logger_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t n = 0; n < ret_var.datalen; n++) { + LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* ret_conv_39_conv = MALLOC(sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ), "LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ"); + *ret_conv_39_conv = ret_var.data[n]; + ret_arr_ptr[n] = ((uint64_t)ret_conv_39_conv); + } + + FREE(ret_var.data); return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - ChannelDetails_set_channel_id(&this_ptr_conv, val_ref); +ptrArray __attribute__((visibility("default"))) TS_ChannelMonitor_get_relevant_txids(uint32_t this_arg) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKCVec_TxidZ ret_var = ChannelMonitor_get_relevant_txids(&this_arg_conv); + ptrArray ret_arr = NULL; + ret_arr = init_ptrArray(ret_var.datalen); + int8_tArray *ret_arr_ptr = (int8_tArray*)(ret_arr + 4); + for (size_t m = 0; m < ret_var.datalen; m++) { + int8_tArray ret_conv_12_arr = init_int8_tArray(32); + memcpy(ret_conv_12_arr->elems, ret_var.data[m].data, 32); + ret_arr_ptr[m] = ret_conv_12_arr; + } + + FREE(ret_var.data); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_get_counterparty(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelCounterparty ret_var = ChannelDetails_get_counterparty(&this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelMonitor_current_best_block(uint32_t this_arg) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKBestBlock ret_var = ChannelMonitor_current_best_block(&this_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -21273,326 +19181,358 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_get_counterpa return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_counterparty(uint32_t this_ptr, uint32_t val) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelCounterparty val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = ChannelCounterparty_clone(&val_conv); - ChannelDetails_set_counterparty(&this_ptr_conv, val_conv); +uint32_tArray __attribute__((visibility("default"))) TS_ChannelMonitor_get_claimable_balances(uint32_t this_arg) { + LDKChannelMonitor this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKCVec_BalanceZ ret_var = ChannelMonitor_get_claimable_balances(&this_arg_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t j = 0; j < ret_var.datalen; j++) { + LDKBalance *ret_conv_9_copy = MALLOC(sizeof(LDKBalance), "LDKBalance"); + *ret_conv_9_copy = ret_var.data[j]; + uint64_t ret_conv_9_ref = (uint64_t)ret_conv_9_copy; + ret_arr_ptr[j] = ret_conv_9_ref; + } + + FREE(ret_var.data); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_get_funding_txo(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKOutPoint ret_var = ChannelDetails_get_funding_txo(&this_ptr_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelMonitorZ_read(int8_tArray ser, uint32_t arg) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + void* arg_ptr = (void*)(((uint64_t)arg) & ~1); + if (!(arg & 1)) { CHECK_ACCESS(arg_ptr); } + LDKKeysInterface* arg_conv = (LDKKeysInterface*)arg_ptr; + LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ"); + *ret_conv = C2Tuple_BlockHashChannelMonitorZ_read(ser_ref, arg_conv); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_funding_txo(uint32_t this_ptr, uint32_t val) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKOutPoint val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = OutPoint_clone(&val_conv); - ChannelDetails_set_funding_txo(&this_ptr_conv, val_conv); +void __attribute__((visibility("default"))) TS_OutPoint_free(uint32_t this_obj) { + LDKOutPoint this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + OutPoint_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_get_short_channel_id(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_OutPoint_get_txid(uint32_t this_ptr) { + LDKOutPoint this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *ret_copy = ChannelDetails_get_short_channel_id(&this_ptr_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *OutPoint_get_txid(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_short_channel_id(uint32_t this_ptr, uint32_t val) { - LDKChannelDetails this_ptr_conv; +void __attribute__((visibility("default"))) TS_OutPoint_set_txid(uint32_t this_ptr, int8_tArray val) { + LDKOutPoint this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr); - val_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)val) & ~1)); - ChannelDetails_set_short_channel_id(&this_ptr_conv, val_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + OutPoint_set_txid(&this_ptr_conv, val_ref); } -int64_t __attribute__((visibility("default"))) TS_ChannelDetails_get_channel_value_satoshis(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; +int16_t __attribute__((visibility("default"))) TS_OutPoint_get_index(uint32_t this_ptr) { + LDKOutPoint this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelDetails_get_channel_value_satoshis(&this_ptr_conv); + int16_t ret_val = OutPoint_get_index(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_channel_value_satoshis(uint32_t this_ptr, int64_t val) { - LDKChannelDetails this_ptr_conv; +void __attribute__((visibility("default"))) TS_OutPoint_set_index(uint32_t this_ptr, int16_t val) { + LDKOutPoint this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelDetails_set_channel_value_satoshis(&this_ptr_conv, val); + OutPoint_set_index(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_get_unspendable_punishment_reserve(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *ret_copy = ChannelDetails_get_unspendable_punishment_reserve(&this_ptr_conv); - uint64_t ret_ref = (uint64_t)ret_copy; +uint32_t __attribute__((visibility("default"))) TS_OutPoint_new(int8_tArray txid_arg, int16_t index_arg) { + LDKThirtyTwoBytes txid_arg_ref; + CHECK(txid_arg->arr_len == 32); + memcpy(txid_arg_ref.data, txid_arg->elems, 32); + LDKOutPoint ret_var = OutPoint_new(txid_arg_ref, index_arg); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_unspendable_punishment_reserve(uint32_t this_ptr, uint32_t val) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr); - val_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)val) & ~1)); - ChannelDetails_set_unspendable_punishment_reserve(&this_ptr_conv, val_conv); +static inline uint64_t OutPoint_clone_ptr(LDKOutPoint *NONNULL_PTR arg) { + LDKOutPoint ret_var = OutPoint_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -int64_t __attribute__((visibility("default"))) TS_ChannelDetails_get_user_channel_id(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelDetails_get_user_channel_id(&this_ptr_conv); + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_OutPoint_clone_ptr(uint32_t arg) { + LDKOutPoint arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = OutPoint_clone_ptr(&arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_user_channel_id(uint32_t this_ptr, int64_t val) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelDetails_set_user_channel_id(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_OutPoint_clone(uint32_t orig) { + LDKOutPoint orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKOutPoint ret_var = OutPoint_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ChannelDetails_get_balance_msat(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelDetails_get_balance_msat(&this_ptr_conv); +jboolean __attribute__((visibility("default"))) TS_OutPoint_eq(uint32_t a, uint32_t b) { + LDKOutPoint a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + LDKOutPoint b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + jboolean ret_val = OutPoint_eq(&a_conv, &b_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_balance_msat(uint32_t this_ptr, int64_t val) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelDetails_set_balance_msat(&this_ptr_conv, val); +int64_t __attribute__((visibility("default"))) TS_OutPoint_hash(uint32_t o) { + LDKOutPoint o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + int64_t ret_val = OutPoint_hash(&o_conv); + return ret_val; } -int64_t __attribute__((visibility("default"))) TS_ChannelDetails_get_outbound_capacity_msat(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelDetails_get_outbound_capacity_msat(&this_ptr_conv); - return ret_val; +int8_tArray __attribute__((visibility("default"))) TS_OutPoint_to_channel_id(uint32_t this_arg) { + LDKOutPoint this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, OutPoint_to_channel_id(&this_arg_conv).data, 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_outbound_capacity_msat(uint32_t this_ptr, int64_t val) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelDetails_set_outbound_capacity_msat(&this_ptr_conv, val); +int8_tArray __attribute__((visibility("default"))) TS_OutPoint_write(uint32_t obj) { + LDKOutPoint obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = OutPoint_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -int64_t __attribute__((visibility("default"))) TS_ChannelDetails_get_inbound_capacity_msat(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelDetails_get_inbound_capacity_msat(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_OutPoint_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_OutPointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OutPointDecodeErrorZ), "LDKCResult_OutPointDecodeErrorZ"); + *ret_conv = OutPoint_read(ser_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_inbound_capacity_msat(uint32_t this_ptr, int64_t val) { - LDKChannelDetails this_ptr_conv; +void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_free(uint32_t this_obj) { + LDKDelayedPaymentOutputDescriptor this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + DelayedPaymentOutputDescriptor_free(this_obj_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_get_outpoint(uint32_t this_ptr) { + LDKDelayedPaymentOutputDescriptor this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelDetails_set_inbound_capacity_msat(&this_ptr_conv, val); + LDKOutPoint ret_var = DelayedPaymentOutputDescriptor_get_outpoint(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_get_confirmations_required(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; +void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_outpoint(uint32_t this_ptr, uint32_t val) { + LDKDelayedPaymentOutputDescriptor this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCOption_u32Z *ret_copy = MALLOC(sizeof(LDKCOption_u32Z), "LDKCOption_u32Z"); - *ret_copy = ChannelDetails_get_confirmations_required(&this_ptr_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; + LDKOutPoint val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = OutPoint_clone(&val_conv); + DelayedPaymentOutputDescriptor_set_outpoint(&this_ptr_conv, val_conv); } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_confirmations_required(uint32_t this_ptr, uint32_t val) { - LDKChannelDetails this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_get_per_commitment_point(uint32_t this_ptr) { + LDKDelayedPaymentOutputDescriptor this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKCOption_u32Z val_conv = *(LDKCOption_u32Z*)(val_ptr); - val_conv = COption_u32Z_clone((LDKCOption_u32Z*)(((uint64_t)val) & ~1)); - ChannelDetails_set_confirmations_required(&this_ptr_conv, val_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, DelayedPaymentOutputDescriptor_get_per_commitment_point(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_get_force_close_spend_delay(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; +void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_per_commitment_point(uint32_t this_ptr, int8_tArray val) { + LDKDelayedPaymentOutputDescriptor this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCOption_u16Z *ret_copy = MALLOC(sizeof(LDKCOption_u16Z), "LDKCOption_u16Z"); - *ret_copy = ChannelDetails_get_force_close_spend_delay(&this_ptr_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + DelayedPaymentOutputDescriptor_set_per_commitment_point(&this_ptr_conv, val_ref); } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_force_close_spend_delay(uint32_t this_ptr, uint32_t val) { - LDKChannelDetails this_ptr_conv; +int16_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_get_to_self_delay(uint32_t this_ptr) { + LDKDelayedPaymentOutputDescriptor this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKCOption_u16Z val_conv = *(LDKCOption_u16Z*)(val_ptr); - val_conv = COption_u16Z_clone((LDKCOption_u16Z*)(((uint64_t)val) & ~1)); - ChannelDetails_set_force_close_spend_delay(&this_ptr_conv, val_conv); + int16_t ret_val = DelayedPaymentOutputDescriptor_get_to_self_delay(&this_ptr_conv); + return ret_val; } -jboolean __attribute__((visibility("default"))) TS_ChannelDetails_get_is_outbound(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; +void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_to_self_delay(uint32_t this_ptr, int16_t val) { + LDKDelayedPaymentOutputDescriptor this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = ChannelDetails_get_is_outbound(&this_ptr_conv); - return ret_val; + DelayedPaymentOutputDescriptor_set_to_self_delay(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_is_outbound(uint32_t this_ptr, jboolean val) { - LDKChannelDetails this_ptr_conv; +void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_output(uint32_t this_ptr, uint32_t val) { + LDKDelayedPaymentOutputDescriptor this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelDetails_set_is_outbound(&this_ptr_conv, val); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKTxOut val_conv = *(LDKTxOut*)(val_ptr); + val_conv = TxOut_clone((LDKTxOut*)(((uint64_t)val) & ~1)); + DelayedPaymentOutputDescriptor_set_output(&this_ptr_conv, val_conv); } -jboolean __attribute__((visibility("default"))) TS_ChannelDetails_get_is_funding_locked(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_get_revocation_pubkey(uint32_t this_ptr) { + LDKDelayedPaymentOutputDescriptor this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = ChannelDetails_get_is_funding_locked(&this_ptr_conv); - return ret_val; + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, DelayedPaymentOutputDescriptor_get_revocation_pubkey(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_is_funding_locked(uint32_t this_ptr, jboolean val) { - LDKChannelDetails this_ptr_conv; +void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_revocation_pubkey(uint32_t this_ptr, int8_tArray val) { + LDKDelayedPaymentOutputDescriptor this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelDetails_set_is_funding_locked(&this_ptr_conv, val); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + DelayedPaymentOutputDescriptor_set_revocation_pubkey(&this_ptr_conv, val_ref); } -jboolean __attribute__((visibility("default"))) TS_ChannelDetails_get_is_usable(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_get_channel_keys_id(uint32_t this_ptr) { + LDKDelayedPaymentOutputDescriptor this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = ChannelDetails_get_is_usable(&this_ptr_conv); - return ret_val; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *DelayedPaymentOutputDescriptor_get_channel_keys_id(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_is_usable(uint32_t this_ptr, jboolean val) { - LDKChannelDetails this_ptr_conv; +void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_channel_keys_id(uint32_t this_ptr, int8_tArray val) { + LDKDelayedPaymentOutputDescriptor this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelDetails_set_is_usable(&this_ptr_conv, val); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + DelayedPaymentOutputDescriptor_set_channel_keys_id(&this_ptr_conv, val_ref); } -jboolean __attribute__((visibility("default"))) TS_ChannelDetails_get_is_public(uint32_t this_ptr) { - LDKChannelDetails this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_get_channel_value_satoshis(uint32_t this_ptr) { + LDKDelayedPaymentOutputDescriptor this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = ChannelDetails_get_is_public(&this_ptr_conv); + int64_t ret_val = DelayedPaymentOutputDescriptor_get_channel_value_satoshis(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelDetails_set_is_public(uint32_t this_ptr, jboolean val) { - LDKChannelDetails this_ptr_conv; +void __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_set_channel_value_satoshis(uint32_t this_ptr, int64_t val) { + LDKDelayedPaymentOutputDescriptor this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelDetails_set_is_public(&this_ptr_conv, val); + DelayedPaymentOutputDescriptor_set_channel_value_satoshis(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_new(int8_tArray channel_id_arg, uint32_t counterparty_arg, uint32_t funding_txo_arg, uint32_t short_channel_id_arg, int64_t channel_value_satoshis_arg, uint32_t unspendable_punishment_reserve_arg, int64_t user_channel_id_arg, int64_t balance_msat_arg, int64_t outbound_capacity_msat_arg, int64_t inbound_capacity_msat_arg, uint32_t confirmations_required_arg, uint32_t force_close_spend_delay_arg, jboolean is_outbound_arg, jboolean is_funding_locked_arg, jboolean is_usable_arg, jboolean is_public_arg) { - LDKThirtyTwoBytes channel_id_arg_ref; - CHECK(*((uint32_t*)channel_id_arg) == 32); - memcpy(channel_id_arg_ref.data, (uint8_t*)(channel_id_arg + 4), 32); - LDKChannelCounterparty counterparty_arg_conv; - counterparty_arg_conv.inner = (void*)(counterparty_arg & (~1)); - counterparty_arg_conv.is_owned = (counterparty_arg & 1) || (counterparty_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(counterparty_arg_conv); - counterparty_arg_conv = ChannelCounterparty_clone(&counterparty_arg_conv); - LDKOutPoint funding_txo_arg_conv; - funding_txo_arg_conv.inner = (void*)(funding_txo_arg & (~1)); - funding_txo_arg_conv.is_owned = (funding_txo_arg & 1) || (funding_txo_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_arg_conv); - funding_txo_arg_conv = OutPoint_clone(&funding_txo_arg_conv); - void* short_channel_id_arg_ptr = (void*)(((uint64_t)short_channel_id_arg) & ~1); - CHECK_ACCESS(short_channel_id_arg_ptr); - LDKCOption_u64Z short_channel_id_arg_conv = *(LDKCOption_u64Z*)(short_channel_id_arg_ptr); - short_channel_id_arg_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)short_channel_id_arg) & ~1)); - void* unspendable_punishment_reserve_arg_ptr = (void*)(((uint64_t)unspendable_punishment_reserve_arg) & ~1); - CHECK_ACCESS(unspendable_punishment_reserve_arg_ptr); - LDKCOption_u64Z unspendable_punishment_reserve_arg_conv = *(LDKCOption_u64Z*)(unspendable_punishment_reserve_arg_ptr); - void* confirmations_required_arg_ptr = (void*)(((uint64_t)confirmations_required_arg) & ~1); - CHECK_ACCESS(confirmations_required_arg_ptr); - LDKCOption_u32Z confirmations_required_arg_conv = *(LDKCOption_u32Z*)(confirmations_required_arg_ptr); - confirmations_required_arg_conv = COption_u32Z_clone((LDKCOption_u32Z*)(((uint64_t)confirmations_required_arg) & ~1)); - void* force_close_spend_delay_arg_ptr = (void*)(((uint64_t)force_close_spend_delay_arg) & ~1); - CHECK_ACCESS(force_close_spend_delay_arg_ptr); - LDKCOption_u16Z force_close_spend_delay_arg_conv = *(LDKCOption_u16Z*)(force_close_spend_delay_arg_ptr); - force_close_spend_delay_arg_conv = COption_u16Z_clone((LDKCOption_u16Z*)(((uint64_t)force_close_spend_delay_arg) & ~1)); - LDKChannelDetails ret_var = ChannelDetails_new(channel_id_arg_ref, counterparty_arg_conv, funding_txo_arg_conv, short_channel_id_arg_conv, channel_value_satoshis_arg, unspendable_punishment_reserve_arg_conv, user_channel_id_arg, balance_msat_arg, outbound_capacity_msat_arg, inbound_capacity_msat_arg, confirmations_required_arg_conv, force_close_spend_delay_arg_conv, is_outbound_arg, is_funding_locked_arg, is_usable_arg, is_public_arg); +uint32_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_new(uint32_t outpoint_arg, int8_tArray per_commitment_point_arg, int16_t to_self_delay_arg, uint32_t output_arg, int8_tArray revocation_pubkey_arg, int8_tArray channel_keys_id_arg, int64_t channel_value_satoshis_arg) { + LDKOutPoint outpoint_arg_conv; + outpoint_arg_conv.inner = (void*)(outpoint_arg & (~1)); + outpoint_arg_conv.is_owned = (outpoint_arg & 1) || (outpoint_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(outpoint_arg_conv); + outpoint_arg_conv = OutPoint_clone(&outpoint_arg_conv); + LDKPublicKey per_commitment_point_arg_ref; + CHECK(per_commitment_point_arg->arr_len == 33); + memcpy(per_commitment_point_arg_ref.compressed_form, per_commitment_point_arg->elems, 33); + void* output_arg_ptr = (void*)(((uint64_t)output_arg) & ~1); + CHECK_ACCESS(output_arg_ptr); + LDKTxOut output_arg_conv = *(LDKTxOut*)(output_arg_ptr); + output_arg_conv = TxOut_clone((LDKTxOut*)(((uint64_t)output_arg) & ~1)); + LDKPublicKey revocation_pubkey_arg_ref; + CHECK(revocation_pubkey_arg->arr_len == 33); + memcpy(revocation_pubkey_arg_ref.compressed_form, revocation_pubkey_arg->elems, 33); + LDKThirtyTwoBytes channel_keys_id_arg_ref; + CHECK(channel_keys_id_arg->arr_len == 32); + memcpy(channel_keys_id_arg_ref.data, channel_keys_id_arg->elems, 32); + LDKDelayedPaymentOutputDescriptor ret_var = DelayedPaymentOutputDescriptor_new(outpoint_arg_conv, per_commitment_point_arg_ref, to_self_delay_arg, output_arg_conv, revocation_pubkey_arg_ref, channel_keys_id_arg_ref, channel_value_satoshis_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -21604,8 +19544,8 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_new(int8_tArr return ret_ref; } -static inline uint64_t ChannelDetails_clone_ptr(LDKChannelDetails *NONNULL_PTR arg) { - LDKChannelDetails ret_var = ChannelDetails_clone(arg); +static inline uint64_t DelayedPaymentOutputDescriptor_clone_ptr(LDKDelayedPaymentOutputDescriptor *NONNULL_PTR arg) { + LDKDelayedPaymentOutputDescriptor ret_var = DelayedPaymentOutputDescriptor_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -21616,21 +19556,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ChannelDetails_clone_ptr(uint32_t arg) { - LDKChannelDetails arg_conv; +int64_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_clone_ptr(uint32_t arg) { + LDKDelayedPaymentOutputDescriptor arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelDetails_clone_ptr(&arg_conv); + int64_t ret_val = DelayedPaymentOutputDescriptor_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_clone(uint32_t orig) { - LDKChannelDetails orig_conv; +uint32_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_clone(uint32_t orig) { + LDKDelayedPaymentOutputDescriptor orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelDetails ret_var = ChannelDetails_clone(&orig_conv); + LDKDelayedPaymentOutputDescriptor ret_var = DelayedPaymentOutputDescriptor_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -21642,163 +19582,41 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_clone(uint32_ return ret_ref; } -void __attribute__((visibility("default"))) TS_PaymentSendFailure_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKPaymentSendFailure this_ptr_conv = *(LDKPaymentSendFailure*)(this_ptr_ptr); - FREE((void*)this_ptr); - PaymentSendFailure_free(this_ptr_conv); -} - -static inline uint64_t PaymentSendFailure_clone_ptr(LDKPaymentSendFailure *NONNULL_PTR arg) { - LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); - *ret_copy = PaymentSendFailure_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_PaymentSendFailure_clone_ptr(uint32_t arg) { - LDKPaymentSendFailure* arg_conv = (LDKPaymentSendFailure*)arg; - int64_t ret_val = PaymentSendFailure_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_PaymentSendFailure_clone(uint32_t orig) { - LDKPaymentSendFailure* orig_conv = (LDKPaymentSendFailure*)orig; - LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); - *ret_copy = PaymentSendFailure_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_PaymentSendFailure_parameter_error(uint32_t a) { - void* a_ptr = (void*)(((uint64_t)a) & ~1); - CHECK_ACCESS(a_ptr); - LDKAPIError a_conv = *(LDKAPIError*)(a_ptr); - a_conv = APIError_clone((LDKAPIError*)(((uint64_t)a) & ~1)); - LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); - *ret_copy = PaymentSendFailure_parameter_error(a_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_PaymentSendFailure_path_parameter_error(uint32_tArray a) { - LDKCVec_CResult_NoneAPIErrorZZ a_constr; - a_constr.datalen = *((uint32_t*)a); - if (a_constr.datalen > 0) - a_constr.data = MALLOC(a_constr.datalen * sizeof(LDKCResult_NoneAPIErrorZ), "LDKCVec_CResult_NoneAPIErrorZZ Elements"); - else - a_constr.data = NULL; - uint32_t* a_vals = (uint32_t*)(a + 4); - for (size_t w = 0; w < a_constr.datalen; w++) { - uint32_t a_conv_22 = a_vals[w]; - void* a_conv_22_ptr = (void*)(((uint64_t)a_conv_22) & ~1); - CHECK_ACCESS(a_conv_22_ptr); - LDKCResult_NoneAPIErrorZ a_conv_22_conv = *(LDKCResult_NoneAPIErrorZ*)(a_conv_22_ptr); - a_conv_22_conv = CResult_NoneAPIErrorZ_clone((LDKCResult_NoneAPIErrorZ*)(((uint64_t)a_conv_22) & ~1)); - a_constr.data[w] = a_conv_22_conv; - } - LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); - *ret_copy = PaymentSendFailure_path_parameter_error(a_constr); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_PaymentSendFailure_all_failed_retry_safe(uint32_tArray a) { - LDKCVec_APIErrorZ a_constr; - a_constr.datalen = *((uint32_t*)a); - if (a_constr.datalen > 0) - a_constr.data = MALLOC(a_constr.datalen * sizeof(LDKAPIError), "LDKCVec_APIErrorZ Elements"); - else - a_constr.data = NULL; - uint32_t* a_vals = (uint32_t*)(a + 4); - for (size_t k = 0; k < a_constr.datalen; k++) { - uint32_t a_conv_10 = a_vals[k]; - void* a_conv_10_ptr = (void*)(((uint64_t)a_conv_10) & ~1); - CHECK_ACCESS(a_conv_10_ptr); - LDKAPIError a_conv_10_conv = *(LDKAPIError*)(a_conv_10_ptr); - a_conv_10_conv = APIError_clone((LDKAPIError*)(((uint64_t)a_conv_10) & ~1)); - a_constr.data[k] = a_conv_10_conv; - } - LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); - *ret_copy = PaymentSendFailure_all_failed_retry_safe(a_constr); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_write(uint32_t obj) { + LDKDelayedPaymentOutputDescriptor obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = DelayedPaymentOutputDescriptor_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_PaymentSendFailure_partial_failure(uint32_tArray results, uint32_t failed_paths_retry, int8_tArray payment_id) { - LDKCVec_CResult_NoneAPIErrorZZ results_constr; - results_constr.datalen = *((uint32_t*)results); - if (results_constr.datalen > 0) - results_constr.data = MALLOC(results_constr.datalen * sizeof(LDKCResult_NoneAPIErrorZ), "LDKCVec_CResult_NoneAPIErrorZZ Elements"); - else - results_constr.data = NULL; - uint32_t* results_vals = (uint32_t*)(results + 4); - for (size_t w = 0; w < results_constr.datalen; w++) { - uint32_t results_conv_22 = results_vals[w]; - void* results_conv_22_ptr = (void*)(((uint64_t)results_conv_22) & ~1); - CHECK_ACCESS(results_conv_22_ptr); - LDKCResult_NoneAPIErrorZ results_conv_22_conv = *(LDKCResult_NoneAPIErrorZ*)(results_conv_22_ptr); - results_constr.data[w] = results_conv_22_conv; - } - LDKRouteParameters failed_paths_retry_conv; - failed_paths_retry_conv.inner = (void*)(failed_paths_retry & (~1)); - failed_paths_retry_conv.is_owned = (failed_paths_retry & 1) || (failed_paths_retry == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(failed_paths_retry_conv); - failed_paths_retry_conv = RouteParameters_clone(&failed_paths_retry_conv); - LDKThirtyTwoBytes payment_id_ref; - CHECK(*((uint32_t*)payment_id) == 32); - memcpy(payment_id_ref.data, (uint8_t*)(payment_id + 4), 32); - LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); - *ret_copy = PaymentSendFailure_partial_failure(results_constr, failed_paths_retry_conv, payment_id_ref); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_DelayedPaymentOutputDescriptor_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ"); + *ret_conv = DelayedPaymentOutputDescriptor_read(ser_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_new(uint32_t fee_est, uint32_t chain_monitor, uint32_t tx_broadcaster, uint32_t logger, uint32_t keys_manager, uint32_t config, uint32_t params) { - void* fee_est_ptr = (void*)(((uint64_t)fee_est) & ~1); - CHECK_ACCESS(fee_est_ptr); - LDKFeeEstimator fee_est_conv = *(LDKFeeEstimator*)(fee_est_ptr); - void* chain_monitor_ptr = (void*)(((uint64_t)chain_monitor) & ~1); - CHECK_ACCESS(chain_monitor_ptr); - LDKWatch chain_monitor_conv = *(LDKWatch*)(chain_monitor_ptr); - void* tx_broadcaster_ptr = (void*)(((uint64_t)tx_broadcaster) & ~1); - CHECK_ACCESS(tx_broadcaster_ptr); - LDKBroadcasterInterface tx_broadcaster_conv = *(LDKBroadcasterInterface*)(tx_broadcaster_ptr); - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - void* keys_manager_ptr = (void*)(((uint64_t)keys_manager) & ~1); - CHECK_ACCESS(keys_manager_ptr); - LDKKeysInterface keys_manager_conv = *(LDKKeysInterface*)(keys_manager_ptr); - LDKUserConfig config_conv; - config_conv.inner = (void*)(config & (~1)); - config_conv.is_owned = (config & 1) || (config == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(config_conv); - config_conv = UserConfig_clone(&config_conv); - LDKChainParameters params_conv; - params_conv.inner = (void*)(params & (~1)); - params_conv.is_owned = (params & 1) || (params == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(params_conv); - params_conv = ChainParameters_clone(¶ms_conv); - LDKChannelManager ret_var = ChannelManager_new(fee_est_conv, chain_monitor_conv, tx_broadcaster_conv, logger_conv, keys_manager_conv, config_conv, params_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_free(uint32_t this_obj) { + LDKStaticPaymentOutputDescriptor this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + StaticPaymentOutputDescriptor_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_get_current_default_configuration(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKUserConfig ret_var = ChannelManager_get_current_default_configuration(&this_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_get_outpoint(uint32_t this_ptr) { + LDKStaticPaymentOutputDescriptor this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKOutPoint ret_var = StaticPaymentOutputDescriptor_get_outpoint(&this_ptr_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -21810,678 +19628,425 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelManager_get_current_d return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_create_channel(uint32_t this_arg, int8_tArray their_network_key, int64_t channel_value_satoshis, int64_t push_msat, int64_t user_channel_id, uint32_t override_config) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKPublicKey their_network_key_ref; - CHECK(*((uint32_t*)their_network_key) == 33); - memcpy(their_network_key_ref.compressed_form, (uint8_t*)(their_network_key + 4), 33); - LDKUserConfig override_config_conv; - override_config_conv.inner = (void*)(override_config & (~1)); - override_config_conv.is_owned = (override_config & 1) || (override_config == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(override_config_conv); - override_config_conv = UserConfig_clone(&override_config_conv); - LDKCResult__u832APIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult__u832APIErrorZ), "LDKCResult__u832APIErrorZ"); - *ret_conv = ChannelManager_create_channel(&this_arg_conv, their_network_key_ref, channel_value_satoshis, push_msat, user_channel_id, override_config_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_set_outpoint(uint32_t this_ptr, uint32_t val) { + LDKStaticPaymentOutputDescriptor this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKOutPoint val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = OutPoint_clone(&val_conv); + StaticPaymentOutputDescriptor_set_outpoint(&this_ptr_conv, val_conv); } -uint32_tArray __attribute__((visibility("default"))) TS_ChannelManager_list_channels(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_ChannelDetailsZ ret_var = ChannelManager_list_channels(&this_arg_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t q = 0; q < ret_var.datalen; q++) { - LDKChannelDetails ret_conv_16_var = ret_var.data[q]; - uint64_t ret_conv_16_ref = 0; - CHECK((((uint64_t)ret_conv_16_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_16_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_16_var); - ret_conv_16_ref = (uint64_t)ret_conv_16_var.inner; - if (ret_conv_16_var.is_owned) { - ret_conv_16_ref |= 1; - } - ret_arr_ptr[q] = ret_conv_16_ref; - } - - FREE(ret_var.data); - return ret_arr; +void __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_set_output(uint32_t this_ptr, uint32_t val) { + LDKStaticPaymentOutputDescriptor this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKTxOut val_conv = *(LDKTxOut*)(val_ptr); + val_conv = TxOut_clone((LDKTxOut*)(((uint64_t)val) & ~1)); + StaticPaymentOutputDescriptor_set_output(&this_ptr_conv, val_conv); } -uint32_tArray __attribute__((visibility("default"))) TS_ChannelManager_list_usable_channels(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_ChannelDetailsZ ret_var = ChannelManager_list_usable_channels(&this_arg_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t q = 0; q < ret_var.datalen; q++) { - LDKChannelDetails ret_conv_16_var = ret_var.data[q]; - uint64_t ret_conv_16_ref = 0; - CHECK((((uint64_t)ret_conv_16_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_16_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_16_var); - ret_conv_16_ref = (uint64_t)ret_conv_16_var.inner; - if (ret_conv_16_var.is_owned) { - ret_conv_16_ref |= 1; - } - ret_arr_ptr[q] = ret_conv_16_ref; - } - - FREE(ret_var.data); +int8_tArray __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_get_channel_keys_id(uint32_t this_ptr) { + LDKStaticPaymentOutputDescriptor this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *StaticPaymentOutputDescriptor_get_channel_keys_id(&this_ptr_conv), 32); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_close_channel(uint32_t this_arg, int8_tArray channel_id) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char channel_id_arr[32]; - CHECK(*((uint32_t*)channel_id) == 32); - memcpy(channel_id_arr, (uint8_t*)(channel_id + 4), 32); - unsigned char (*channel_id_ref)[32] = &channel_id_arr; - LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); - *ret_conv = ChannelManager_close_channel(&this_arg_conv, channel_id_ref); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_close_channel_with_target_feerate(uint32_t this_arg, int8_tArray channel_id, int32_t target_feerate_sats_per_1000_weight) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char channel_id_arr[32]; - CHECK(*((uint32_t*)channel_id) == 32); - memcpy(channel_id_arr, (uint8_t*)(channel_id + 4), 32); - unsigned char (*channel_id_ref)[32] = &channel_id_arr; - LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); - *ret_conv = ChannelManager_close_channel_with_target_feerate(&this_arg_conv, channel_id_ref, target_feerate_sats_per_1000_weight); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_force_close_channel(uint32_t this_arg, int8_tArray channel_id) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char channel_id_arr[32]; - CHECK(*((uint32_t*)channel_id) == 32); - memcpy(channel_id_arr, (uint8_t*)(channel_id + 4), 32); - unsigned char (*channel_id_ref)[32] = &channel_id_arr; - LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); - *ret_conv = ChannelManager_force_close_channel(&this_arg_conv, channel_id_ref); - return (uint64_t)ret_conv; -} - -void __attribute__((visibility("default"))) TS_ChannelManager_force_close_all_channels(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - ChannelManager_force_close_all_channels(&this_arg_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_send_payment(uint32_t this_arg, uint32_t route, int8_tArray payment_hash, int8_tArray payment_secret) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKRoute route_conv; - route_conv.inner = (void*)(route & (~1)); - route_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(route_conv); - LDKThirtyTwoBytes payment_hash_ref; - CHECK(*((uint32_t*)payment_hash) == 32); - memcpy(payment_hash_ref.data, (uint8_t*)(payment_hash + 4), 32); - LDKThirtyTwoBytes payment_secret_ref; - CHECK(*((uint32_t*)payment_secret) == 32); - memcpy(payment_secret_ref.data, (uint8_t*)(payment_secret + 4), 32); - LDKCResult_PaymentIdPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentSendFailureZ), "LDKCResult_PaymentIdPaymentSendFailureZ"); - *ret_conv = ChannelManager_send_payment(&this_arg_conv, &route_conv, payment_hash_ref, payment_secret_ref); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_retry_payment(uint32_t this_arg, uint32_t route, int8_tArray payment_id) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKRoute route_conv; - route_conv.inner = (void*)(route & (~1)); - route_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(route_conv); - LDKThirtyTwoBytes payment_id_ref; - CHECK(*((uint32_t*)payment_id) == 32); - memcpy(payment_id_ref.data, (uint8_t*)(payment_id + 4), 32); - LDKCResult_NonePaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentSendFailureZ), "LDKCResult_NonePaymentSendFailureZ"); - *ret_conv = ChannelManager_retry_payment(&this_arg_conv, &route_conv, payment_id_ref); - return (uint64_t)ret_conv; -} - -void __attribute__((visibility("default"))) TS_ChannelManager_abandon_payment(uint32_t this_arg, int8_tArray payment_id) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKThirtyTwoBytes payment_id_ref; - CHECK(*((uint32_t*)payment_id) == 32); - memcpy(payment_id_ref.data, (uint8_t*)(payment_id + 4), 32); - ChannelManager_abandon_payment(&this_arg_conv, payment_id_ref); +void __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_set_channel_keys_id(uint32_t this_ptr, int8_tArray val) { + LDKStaticPaymentOutputDescriptor this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + StaticPaymentOutputDescriptor_set_channel_keys_id(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_send_spontaneous_payment(uint32_t this_arg, uint32_t route, int8_tArray payment_preimage) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKRoute route_conv; - route_conv.inner = (void*)(route & (~1)); - route_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(route_conv); - LDKThirtyTwoBytes payment_preimage_ref; - CHECK(*((uint32_t*)payment_preimage) == 32); - memcpy(payment_preimage_ref.data, (uint8_t*)(payment_preimage + 4), 32); - LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ), "LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ"); - *ret_conv = ChannelManager_send_spontaneous_payment(&this_arg_conv, &route_conv, payment_preimage_ref); - return (uint64_t)ret_conv; +int64_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_get_channel_value_satoshis(uint32_t this_ptr) { + LDKStaticPaymentOutputDescriptor this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = StaticPaymentOutputDescriptor_get_channel_value_satoshis(&this_ptr_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_funding_transaction_generated(uint32_t this_arg, int8_tArray temporary_channel_id, int8_tArray funding_transaction) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char temporary_channel_id_arr[32]; - CHECK(*((uint32_t*)temporary_channel_id) == 32); - memcpy(temporary_channel_id_arr, (uint8_t*)(temporary_channel_id + 4), 32); - unsigned char (*temporary_channel_id_ref)[32] = &temporary_channel_id_arr; - LDKTransaction funding_transaction_ref; - funding_transaction_ref.datalen = *((uint32_t*)funding_transaction); - funding_transaction_ref.data = MALLOC(funding_transaction_ref.datalen, "LDKTransaction Bytes"); - memcpy(funding_transaction_ref.data, (uint8_t*)(funding_transaction + 4), funding_transaction_ref.datalen); - funding_transaction_ref.data_is_owned = true; - LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); - *ret_conv = ChannelManager_funding_transaction_generated(&this_arg_conv, temporary_channel_id_ref, funding_transaction_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_set_channel_value_satoshis(uint32_t this_ptr, int64_t val) { + LDKStaticPaymentOutputDescriptor this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + StaticPaymentOutputDescriptor_set_channel_value_satoshis(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_ChannelManager_broadcast_node_announcement(uint32_t this_arg, int8_tArray rgb, int8_tArray alias, uint32_tArray addresses) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKThreeBytes rgb_ref; - CHECK(*((uint32_t*)rgb) == 3); - memcpy(rgb_ref.data, (uint8_t*)(rgb + 4), 3); - LDKThirtyTwoBytes alias_ref; - CHECK(*((uint32_t*)alias) == 32); - memcpy(alias_ref.data, (uint8_t*)(alias + 4), 32); - LDKCVec_NetAddressZ addresses_constr; - addresses_constr.datalen = *((uint32_t*)addresses); - if (addresses_constr.datalen > 0) - addresses_constr.data = MALLOC(addresses_constr.datalen * sizeof(LDKNetAddress), "LDKCVec_NetAddressZ Elements"); - else - addresses_constr.data = NULL; - uint32_t* addresses_vals = (uint32_t*)(addresses + 4); - for (size_t m = 0; m < addresses_constr.datalen; m++) { - uint32_t addresses_conv_12 = addresses_vals[m]; - void* addresses_conv_12_ptr = (void*)(((uint64_t)addresses_conv_12) & ~1); - CHECK_ACCESS(addresses_conv_12_ptr); - LDKNetAddress addresses_conv_12_conv = *(LDKNetAddress*)(addresses_conv_12_ptr); - addresses_constr.data[m] = addresses_conv_12_conv; +uint32_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_new(uint32_t outpoint_arg, uint32_t output_arg, int8_tArray channel_keys_id_arg, int64_t channel_value_satoshis_arg) { + LDKOutPoint outpoint_arg_conv; + outpoint_arg_conv.inner = (void*)(outpoint_arg & (~1)); + outpoint_arg_conv.is_owned = (outpoint_arg & 1) || (outpoint_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(outpoint_arg_conv); + outpoint_arg_conv = OutPoint_clone(&outpoint_arg_conv); + void* output_arg_ptr = (void*)(((uint64_t)output_arg) & ~1); + CHECK_ACCESS(output_arg_ptr); + LDKTxOut output_arg_conv = *(LDKTxOut*)(output_arg_ptr); + output_arg_conv = TxOut_clone((LDKTxOut*)(((uint64_t)output_arg) & ~1)); + LDKThirtyTwoBytes channel_keys_id_arg_ref; + CHECK(channel_keys_id_arg->arr_len == 32); + memcpy(channel_keys_id_arg_ref.data, channel_keys_id_arg->elems, 32); + LDKStaticPaymentOutputDescriptor ret_var = StaticPaymentOutputDescriptor_new(outpoint_arg_conv, output_arg_conv, channel_keys_id_arg_ref, channel_value_satoshis_arg); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - ChannelManager_broadcast_node_announcement(&this_arg_conv, rgb_ref, alias_ref, addresses_constr); + return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelManager_process_pending_htlc_forwards(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - ChannelManager_process_pending_htlc_forwards(&this_arg_conv); +static inline uint64_t StaticPaymentOutputDescriptor_clone_ptr(LDKStaticPaymentOutputDescriptor *NONNULL_PTR arg) { + LDKStaticPaymentOutputDescriptor ret_var = StaticPaymentOutputDescriptor_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -void __attribute__((visibility("default"))) TS_ChannelManager_timer_tick_occurred(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - ChannelManager_timer_tick_occurred(&this_arg_conv); + return ret_ref; } - -jboolean __attribute__((visibility("default"))) TS_ChannelManager_fail_htlc_backwards(uint32_t this_arg, int8_tArray payment_hash) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char payment_hash_arr[32]; - CHECK(*((uint32_t*)payment_hash) == 32); - memcpy(payment_hash_arr, (uint8_t*)(payment_hash + 4), 32); - unsigned char (*payment_hash_ref)[32] = &payment_hash_arr; - jboolean ret_val = ChannelManager_fail_htlc_backwards(&this_arg_conv, payment_hash_ref); +int64_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_clone_ptr(uint32_t arg) { + LDKStaticPaymentOutputDescriptor arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = StaticPaymentOutputDescriptor_clone_ptr(&arg_conv); return ret_val; } -jboolean __attribute__((visibility("default"))) TS_ChannelManager_claim_funds(uint32_t this_arg, int8_tArray payment_preimage) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKThirtyTwoBytes payment_preimage_ref; - CHECK(*((uint32_t*)payment_preimage) == 32); - memcpy(payment_preimage_ref.data, (uint8_t*)(payment_preimage + 4), 32); - jboolean ret_val = ChannelManager_claim_funds(&this_arg_conv, payment_preimage_ref); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_clone(uint32_t orig) { + LDKStaticPaymentOutputDescriptor orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKStaticPaymentOutputDescriptor ret_var = StaticPaymentOutputDescriptor_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_ChannelManager_get_our_node_id(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ChannelManager_get_our_node_id(&this_arg_conv).compressed_form, 33); +int8_tArray __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_write(uint32_t obj) { + LDKStaticPaymentOutputDescriptor obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = StaticPaymentOutputDescriptor_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_create_inbound_payment(uint32_t this_arg, uint32_t min_value_msat, int32_t invoice_expiry_delta_secs) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - void* min_value_msat_ptr = (void*)(((uint64_t)min_value_msat) & ~1); - CHECK_ACCESS(min_value_msat_ptr); - LDKCOption_u64Z min_value_msat_conv = *(LDKCOption_u64Z*)(min_value_msat_ptr); - min_value_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)min_value_msat) & ~1)); - LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ"); - *ret_conv = ChannelManager_create_inbound_payment(&this_arg_conv, min_value_msat_conv, invoice_expiry_delta_secs); +uint32_t __attribute__((visibility("default"))) TS_StaticPaymentOutputDescriptor_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ), "LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ"); + *ret_conv = StaticPaymentOutputDescriptor_read(ser_ref); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_create_inbound_payment_legacy(uint32_t this_arg, uint32_t min_value_msat, int32_t invoice_expiry_delta_secs) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - void* min_value_msat_ptr = (void*)(((uint64_t)min_value_msat) & ~1); - CHECK_ACCESS(min_value_msat_ptr); - LDKCOption_u64Z min_value_msat_conv = *(LDKCOption_u64Z*)(min_value_msat_ptr); - min_value_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)min_value_msat) & ~1)); - LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ"); - *ret_conv = ChannelManager_create_inbound_payment_legacy(&this_arg_conv, min_value_msat_conv, invoice_expiry_delta_secs); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKSpendableOutputDescriptor this_ptr_conv = *(LDKSpendableOutputDescriptor*)(this_ptr_ptr); + FREE((void*)this_ptr); + SpendableOutputDescriptor_free(this_ptr_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_create_inbound_payment_for_hash(uint32_t this_arg, int8_tArray payment_hash, uint32_t min_value_msat, int32_t invoice_expiry_delta_secs) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKThirtyTwoBytes payment_hash_ref; - CHECK(*((uint32_t*)payment_hash) == 32); - memcpy(payment_hash_ref.data, (uint8_t*)(payment_hash + 4), 32); - void* min_value_msat_ptr = (void*)(((uint64_t)min_value_msat) & ~1); - CHECK_ACCESS(min_value_msat_ptr); - LDKCOption_u64Z min_value_msat_conv = *(LDKCOption_u64Z*)(min_value_msat_ptr); - min_value_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)min_value_msat) & ~1)); - LDKCResult_PaymentSecretNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretNoneZ), "LDKCResult_PaymentSecretNoneZ"); - *ret_conv = ChannelManager_create_inbound_payment_for_hash(&this_arg_conv, payment_hash_ref, min_value_msat_conv, invoice_expiry_delta_secs); - return (uint64_t)ret_conv; +static inline uint64_t SpendableOutputDescriptor_clone_ptr(LDKSpendableOutputDescriptor *NONNULL_PTR arg) { + LDKSpendableOutputDescriptor *ret_copy = MALLOC(sizeof(LDKSpendableOutputDescriptor), "LDKSpendableOutputDescriptor"); + *ret_copy = SpendableOutputDescriptor_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_clone_ptr(uint32_t arg) { + LDKSpendableOutputDescriptor* arg_conv = (LDKSpendableOutputDescriptor*)arg; + int64_t ret_val = SpendableOutputDescriptor_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_create_inbound_payment_for_hash_legacy(uint32_t this_arg, int8_tArray payment_hash, uint32_t min_value_msat, int32_t invoice_expiry_delta_secs) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKThirtyTwoBytes payment_hash_ref; - CHECK(*((uint32_t*)payment_hash) == 32); - memcpy(payment_hash_ref.data, (uint8_t*)(payment_hash + 4), 32); - void* min_value_msat_ptr = (void*)(((uint64_t)min_value_msat) & ~1); - CHECK_ACCESS(min_value_msat_ptr); - LDKCOption_u64Z min_value_msat_conv = *(LDKCOption_u64Z*)(min_value_msat_ptr); - min_value_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)min_value_msat) & ~1)); - LDKCResult_PaymentSecretAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretAPIErrorZ), "LDKCResult_PaymentSecretAPIErrorZ"); - *ret_conv = ChannelManager_create_inbound_payment_for_hash_legacy(&this_arg_conv, payment_hash_ref, min_value_msat_conv, invoice_expiry_delta_secs); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_clone(uint32_t orig) { + LDKSpendableOutputDescriptor* orig_conv = (LDKSpendableOutputDescriptor*)orig; + LDKSpendableOutputDescriptor *ret_copy = MALLOC(sizeof(LDKSpendableOutputDescriptor), "LDKSpendableOutputDescriptor"); + *ret_copy = SpendableOutputDescriptor_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_get_payment_preimage(uint32_t this_arg, int8_tArray payment_hash, int8_tArray payment_secret) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKThirtyTwoBytes payment_hash_ref; - CHECK(*((uint32_t*)payment_hash) == 32); - memcpy(payment_hash_ref.data, (uint8_t*)(payment_hash + 4), 32); - LDKThirtyTwoBytes payment_secret_ref; - CHECK(*((uint32_t*)payment_secret) == 32); - memcpy(payment_secret_ref.data, (uint8_t*)(payment_secret + 4), 32); - LDKCResult_PaymentPreimageAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentPreimageAPIErrorZ), "LDKCResult_PaymentPreimageAPIErrorZ"); - *ret_conv = ChannelManager_get_payment_preimage(&this_arg_conv, payment_hash_ref, payment_secret_ref); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_static_output(uint32_t outpoint, uint32_t output) { + LDKOutPoint outpoint_conv; + outpoint_conv.inner = (void*)(outpoint & (~1)); + outpoint_conv.is_owned = (outpoint & 1) || (outpoint == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(outpoint_conv); + outpoint_conv = OutPoint_clone(&outpoint_conv); + void* output_ptr = (void*)(((uint64_t)output) & ~1); + CHECK_ACCESS(output_ptr); + LDKTxOut output_conv = *(LDKTxOut*)(output_ptr); + output_conv = TxOut_clone((LDKTxOut*)(((uint64_t)output) & ~1)); + LDKSpendableOutputDescriptor *ret_copy = MALLOC(sizeof(LDKSpendableOutputDescriptor), "LDKSpendableOutputDescriptor"); + *ret_copy = SpendableOutputDescriptor_static_output(outpoint_conv, output_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_as_MessageSendEventsProvider(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKMessageSendEventsProvider* ret_ret = MALLOC(sizeof(LDKMessageSendEventsProvider), "LDKMessageSendEventsProvider"); - *ret_ret = ChannelManager_as_MessageSendEventsProvider(&this_arg_conv); - return (uint64_t)ret_ret; +uint32_t __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_delayed_payment_output(uint32_t a) { + LDKDelayedPaymentOutputDescriptor a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = (a & 1) || (a == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + a_conv = DelayedPaymentOutputDescriptor_clone(&a_conv); + LDKSpendableOutputDescriptor *ret_copy = MALLOC(sizeof(LDKSpendableOutputDescriptor), "LDKSpendableOutputDescriptor"); + *ret_copy = SpendableOutputDescriptor_delayed_payment_output(a_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_as_EventsProvider(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKEventsProvider* ret_ret = MALLOC(sizeof(LDKEventsProvider), "LDKEventsProvider"); - *ret_ret = ChannelManager_as_EventsProvider(&this_arg_conv); - return (uint64_t)ret_ret; +uint32_t __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_static_payment_output(uint32_t a) { + LDKStaticPaymentOutputDescriptor a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = (a & 1) || (a == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + a_conv = StaticPaymentOutputDescriptor_clone(&a_conv); + LDKSpendableOutputDescriptor *ret_copy = MALLOC(sizeof(LDKSpendableOutputDescriptor), "LDKSpendableOutputDescriptor"); + *ret_copy = SpendableOutputDescriptor_static_payment_output(a_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_as_Listen(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKListen* ret_ret = MALLOC(sizeof(LDKListen), "LDKListen"); - *ret_ret = ChannelManager_as_Listen(&this_arg_conv); - return (uint64_t)ret_ret; +int8_tArray __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_write(uint32_t obj) { + LDKSpendableOutputDescriptor* obj_conv = (LDKSpendableOutputDescriptor*)obj; + LDKCVec_u8Z ret_var = SpendableOutputDescriptor_write(obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_as_Confirm(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKConfirm* ret_ret = MALLOC(sizeof(LDKConfirm), "LDKConfirm"); - *ret_ret = ChannelManager_as_Confirm(&this_arg_conv); - return (uint64_t)ret_ret; +uint32_t __attribute__((visibility("default"))) TS_SpendableOutputDescriptor_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_SpendableOutputDescriptorDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpendableOutputDescriptorDecodeErrorZ), "LDKCResult_SpendableOutputDescriptorDecodeErrorZ"); + *ret_conv = SpendableOutputDescriptor_read(ser_ref); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_BaseSign_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKBaseSign this_ptr_conv = *(LDKBaseSign*)(this_ptr_ptr); + FREE((void*)this_ptr); + BaseSign_free(this_ptr_conv); } -jboolean __attribute__((visibility("default"))) TS_ChannelManager_await_persistable_update_timeout(uint32_t this_arg, int64_t max_wait) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = ChannelManager_await_persistable_update_timeout(&this_arg_conv, max_wait); - return ret_val; +static inline uint64_t Sign_clone_ptr(LDKSign *NONNULL_PTR arg) { + LDKSign* ret_ret = MALLOC(sizeof(LDKSign), "LDKSign"); + *ret_ret = Sign_clone(arg); + return (uint64_t)ret_ret; } - -void __attribute__((visibility("default"))) TS_ChannelManager_await_persistable_update(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - ChannelManager_await_persistable_update(&this_arg_conv); +int64_t __attribute__((visibility("default"))) TS_Sign_clone_ptr(uint32_t arg) { + void* arg_ptr = (void*)(((uint64_t)arg) & ~1); + if (!(arg & 1)) { CHECK_ACCESS(arg_ptr); } + LDKSign* arg_conv = (LDKSign*)arg_ptr; + int64_t ret_val = Sign_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_current_best_block(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKBestBlock ret_var = ChannelManager_current_best_block(&this_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_Sign_clone(uint32_t orig) { + void* orig_ptr = (void*)(((uint64_t)orig) & ~1); + if (!(orig & 1)) { CHECK_ACCESS(orig_ptr); } + LDKSign* orig_conv = (LDKSign*)orig_ptr; + LDKSign* ret_ret = MALLOC(sizeof(LDKSign), "LDKSign"); + *ret_ret = Sign_clone(orig_conv); + return (uint64_t)ret_ret; } -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_as_ChannelMessageHandler(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKChannelMessageHandler* ret_ret = MALLOC(sizeof(LDKChannelMessageHandler), "LDKChannelMessageHandler"); - *ret_ret = ChannelManager_as_ChannelMessageHandler(&this_arg_conv); - return (uint64_t)ret_ret; +void __attribute__((visibility("default"))) TS_Sign_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKSign this_ptr_conv = *(LDKSign*)(this_ptr_ptr); + FREE((void*)this_ptr); + Sign_free(this_ptr_conv); } -int8_tArray __attribute__((visibility("default"))) TS_ChannelManager_write(uint32_t obj) { - LDKChannelManager obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ChannelManager_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +void __attribute__((visibility("default"))) TS_KeysInterface_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKKeysInterface this_ptr_conv = *(LDKKeysInterface*)(this_ptr_ptr); + FREE((void*)this_ptr); + KeysInterface_free(this_ptr_conv); } -void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_free(uint32_t this_obj) { - LDKChannelManagerReadArgs this_obj_conv; +void __attribute__((visibility("default"))) TS_InMemorySigner_free(uint32_t this_obj) { + LDKInMemorySigner this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelManagerReadArgs_free(this_obj_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_get_keys_manager(uint32_t this_ptr) { - LDKChannelManagerReadArgs this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - // WARNING: This object doesn't live past this scope, needs clone! - uint64_t ret_ret = ((uint64_t)ChannelManagerReadArgs_get_keys_manager(&this_ptr_conv)) | 1; - return ret_ret; -} - -void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_set_keys_manager(uint32_t this_ptr, uint32_t val) { - LDKChannelManagerReadArgs this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKKeysInterface val_conv = *(LDKKeysInterface*)(val_ptr); - ChannelManagerReadArgs_set_keys_manager(&this_ptr_conv, val_conv); + InMemorySigner_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_get_fee_estimator(uint32_t this_ptr) { - LDKChannelManagerReadArgs this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_get_funding_key(uint32_t this_ptr) { + LDKInMemorySigner this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - // WARNING: This object doesn't live past this scope, needs clone! - uint64_t ret_ret = ((uint64_t)ChannelManagerReadArgs_get_fee_estimator(&this_ptr_conv)) | 1; - return ret_ret; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *InMemorySigner_get_funding_key(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_set_fee_estimator(uint32_t this_ptr, uint32_t val) { - LDKChannelManagerReadArgs this_ptr_conv; +void __attribute__((visibility("default"))) TS_InMemorySigner_set_funding_key(uint32_t this_ptr, int8_tArray val) { + LDKInMemorySigner this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKFeeEstimator val_conv = *(LDKFeeEstimator*)(val_ptr); - ChannelManagerReadArgs_set_fee_estimator(&this_ptr_conv, val_conv); + LDKSecretKey val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.bytes, val->elems, 32); + InMemorySigner_set_funding_key(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_get_chain_monitor(uint32_t this_ptr) { - LDKChannelManagerReadArgs this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_get_revocation_base_key(uint32_t this_ptr) { + LDKInMemorySigner this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - // WARNING: This object doesn't live past this scope, needs clone! - uint64_t ret_ret = ((uint64_t)ChannelManagerReadArgs_get_chain_monitor(&this_ptr_conv)) | 1; - return ret_ret; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *InMemorySigner_get_revocation_base_key(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_set_chain_monitor(uint32_t this_ptr, uint32_t val) { - LDKChannelManagerReadArgs this_ptr_conv; +void __attribute__((visibility("default"))) TS_InMemorySigner_set_revocation_base_key(uint32_t this_ptr, int8_tArray val) { + LDKInMemorySigner this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKWatch val_conv = *(LDKWatch*)(val_ptr); - ChannelManagerReadArgs_set_chain_monitor(&this_ptr_conv, val_conv); + LDKSecretKey val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.bytes, val->elems, 32); + InMemorySigner_set_revocation_base_key(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_get_tx_broadcaster(uint32_t this_ptr) { - LDKChannelManagerReadArgs this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_get_payment_key(uint32_t this_ptr) { + LDKInMemorySigner this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - // WARNING: This object doesn't live past this scope, needs clone! - uint64_t ret_ret = ((uint64_t)ChannelManagerReadArgs_get_tx_broadcaster(&this_ptr_conv)) | 1; - return ret_ret; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *InMemorySigner_get_payment_key(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_set_tx_broadcaster(uint32_t this_ptr, uint32_t val) { - LDKChannelManagerReadArgs this_ptr_conv; +void __attribute__((visibility("default"))) TS_InMemorySigner_set_payment_key(uint32_t this_ptr, int8_tArray val) { + LDKInMemorySigner this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKBroadcasterInterface val_conv = *(LDKBroadcasterInterface*)(val_ptr); - ChannelManagerReadArgs_set_tx_broadcaster(&this_ptr_conv, val_conv); + LDKSecretKey val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.bytes, val->elems, 32); + InMemorySigner_set_payment_key(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_get_logger(uint32_t this_ptr) { - LDKChannelManagerReadArgs this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_get_delayed_payment_base_key(uint32_t this_ptr) { + LDKInMemorySigner this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - // WARNING: This object doesn't live past this scope, needs clone! - uint64_t ret_ret = ((uint64_t)ChannelManagerReadArgs_get_logger(&this_ptr_conv)) | 1; - return ret_ret; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *InMemorySigner_get_delayed_payment_base_key(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_set_logger(uint32_t this_ptr, uint32_t val) { - LDKChannelManagerReadArgs this_ptr_conv; +void __attribute__((visibility("default"))) TS_InMemorySigner_set_delayed_payment_base_key(uint32_t this_ptr, int8_tArray val) { + LDKInMemorySigner this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKLogger val_conv = *(LDKLogger*)(val_ptr); - ChannelManagerReadArgs_set_logger(&this_ptr_conv, val_conv); + LDKSecretKey val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.bytes, val->elems, 32); + InMemorySigner_set_delayed_payment_base_key(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_get_default_config(uint32_t this_ptr) { - LDKChannelManagerReadArgs this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_get_htlc_base_key(uint32_t this_ptr) { + LDKInMemorySigner this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKUserConfig ret_var = ChannelManagerReadArgs_get_default_config(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *InMemorySigner_get_htlc_base_key(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_set_default_config(uint32_t this_ptr, uint32_t val) { - LDKChannelManagerReadArgs this_ptr_conv; +void __attribute__((visibility("default"))) TS_InMemorySigner_set_htlc_base_key(uint32_t this_ptr, int8_tArray val) { + LDKInMemorySigner this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKUserConfig val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = UserConfig_clone(&val_conv); - ChannelManagerReadArgs_set_default_config(&this_ptr_conv, val_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_new(uint32_t keys_manager, uint32_t fee_estimator, uint32_t chain_monitor, uint32_t tx_broadcaster, uint32_t logger, uint32_t default_config, uint32_tArray channel_monitors) { - void* keys_manager_ptr = (void*)(((uint64_t)keys_manager) & ~1); - CHECK_ACCESS(keys_manager_ptr); - LDKKeysInterface keys_manager_conv = *(LDKKeysInterface*)(keys_manager_ptr); - void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); - CHECK_ACCESS(fee_estimator_ptr); - LDKFeeEstimator fee_estimator_conv = *(LDKFeeEstimator*)(fee_estimator_ptr); - void* chain_monitor_ptr = (void*)(((uint64_t)chain_monitor) & ~1); - CHECK_ACCESS(chain_monitor_ptr); - LDKWatch chain_monitor_conv = *(LDKWatch*)(chain_monitor_ptr); - void* tx_broadcaster_ptr = (void*)(((uint64_t)tx_broadcaster) & ~1); - CHECK_ACCESS(tx_broadcaster_ptr); - LDKBroadcasterInterface tx_broadcaster_conv = *(LDKBroadcasterInterface*)(tx_broadcaster_ptr); - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - LDKUserConfig default_config_conv; - default_config_conv.inner = (void*)(default_config & (~1)); - default_config_conv.is_owned = (default_config & 1) || (default_config == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(default_config_conv); - default_config_conv = UserConfig_clone(&default_config_conv); - LDKCVec_ChannelMonitorZ channel_monitors_constr; - channel_monitors_constr.datalen = *((uint32_t*)channel_monitors); - if (channel_monitors_constr.datalen > 0) - channel_monitors_constr.data = MALLOC(channel_monitors_constr.datalen * sizeof(LDKChannelMonitor), "LDKCVec_ChannelMonitorZ Elements"); - else - channel_monitors_constr.data = NULL; - uint32_t* channel_monitors_vals = (uint32_t*)(channel_monitors + 4); - for (size_t q = 0; q < channel_monitors_constr.datalen; q++) { - uint32_t channel_monitors_conv_16 = channel_monitors_vals[q]; - LDKChannelMonitor channel_monitors_conv_16_conv; - channel_monitors_conv_16_conv.inner = (void*)(channel_monitors_conv_16 & (~1)); - channel_monitors_conv_16_conv.is_owned = (channel_monitors_conv_16 & 1) || (channel_monitors_conv_16 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_monitors_conv_16_conv); - channel_monitors_constr.data[q] = channel_monitors_conv_16_conv; - } - LDKChannelManagerReadArgs ret_var = ChannelManagerReadArgs_new(keys_manager_conv, fee_estimator_conv, chain_monitor_conv, tx_broadcaster_conv, logger_conv, default_config_conv, channel_monitors_constr); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + LDKSecretKey val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.bytes, val->elems, 32); + InMemorySigner_set_htlc_base_key(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelManagerZ_read(int8_tArray ser, uint32_t arg) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKChannelManagerReadArgs arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = (arg & 1) || (arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - // Warning: we need a move here but no clone is available for LDKChannelManagerReadArgs - LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ"); - *ret_conv = C2Tuple_BlockHashChannelManagerZ_read(ser_ref, arg_conv); - return (uint64_t)ret_conv; +int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_get_commitment_seed(uint32_t this_ptr) { + LDKInMemorySigner this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *InMemorySigner_get_commitment_seed(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_DecodeError_free(uint32_t this_obj) { - LDKDecodeError this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - DecodeError_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_InMemorySigner_set_commitment_seed(uint32_t this_ptr, int8_tArray val) { + LDKInMemorySigner this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + InMemorySigner_set_commitment_seed(&this_ptr_conv, val_ref); } -static inline uint64_t DecodeError_clone_ptr(LDKDecodeError *NONNULL_PTR arg) { - LDKDecodeError ret_var = DecodeError_clone(arg); +static inline uint64_t InMemorySigner_clone_ptr(LDKInMemorySigner *NONNULL_PTR arg) { + LDKInMemorySigner ret_var = InMemorySigner_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -22492,21 +20057,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_DecodeError_clone_ptr(uint32_t arg) { - LDKDecodeError arg_conv; +int64_t __attribute__((visibility("default"))) TS_InMemorySigner_clone_ptr(uint32_t arg) { + LDKInMemorySigner arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = DecodeError_clone_ptr(&arg_conv); + int64_t ret_val = InMemorySigner_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_DecodeError_clone(uint32_t orig) { - LDKDecodeError orig_conv; +uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_clone(uint32_t orig) { + LDKInMemorySigner orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKDecodeError ret_var = DecodeError_clone(&orig_conv); + LDKInMemorySigner ret_var = InMemorySigner_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -22518,20 +20083,46 @@ uint32_t __attribute__((visibility("default"))) TS_DecodeError_clone(uint32_t o return ret_ref; } -void __attribute__((visibility("default"))) TS_Init_free(uint32_t this_obj) { - LDKInit this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - Init_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_new(int8_tArray funding_key, int8_tArray revocation_base_key, int8_tArray payment_key, int8_tArray delayed_payment_base_key, int8_tArray htlc_base_key, int8_tArray commitment_seed, int64_t channel_value_satoshis, int8_tArray channel_keys_id) { + LDKSecretKey funding_key_ref; + CHECK(funding_key->arr_len == 32); + memcpy(funding_key_ref.bytes, funding_key->elems, 32); + LDKSecretKey revocation_base_key_ref; + CHECK(revocation_base_key->arr_len == 32); + memcpy(revocation_base_key_ref.bytes, revocation_base_key->elems, 32); + LDKSecretKey payment_key_ref; + CHECK(payment_key->arr_len == 32); + memcpy(payment_key_ref.bytes, payment_key->elems, 32); + LDKSecretKey delayed_payment_base_key_ref; + CHECK(delayed_payment_base_key->arr_len == 32); + memcpy(delayed_payment_base_key_ref.bytes, delayed_payment_base_key->elems, 32); + LDKSecretKey htlc_base_key_ref; + CHECK(htlc_base_key->arr_len == 32); + memcpy(htlc_base_key_ref.bytes, htlc_base_key->elems, 32); + LDKThirtyTwoBytes commitment_seed_ref; + CHECK(commitment_seed->arr_len == 32); + memcpy(commitment_seed_ref.data, commitment_seed->elems, 32); + LDKThirtyTwoBytes channel_keys_id_ref; + CHECK(channel_keys_id->arr_len == 32); + memcpy(channel_keys_id_ref.data, channel_keys_id->elems, 32); + LDKInMemorySigner ret_var = InMemorySigner_new(funding_key_ref, revocation_base_key_ref, payment_key_ref, delayed_payment_base_key_ref, htlc_base_key_ref, commitment_seed_ref, channel_value_satoshis, channel_keys_id_ref); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_Init_get_features(uint32_t this_ptr) { - LDKInit this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKInitFeatures ret_var = Init_get_features(&this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_counterparty_pubkeys(uint32_t this_arg) { + LDKInMemorySigner this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKChannelPublicKeys ret_var = InMemorySigner_counterparty_pubkeys(&this_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -22543,26 +20134,39 @@ uint32_t __attribute__((visibility("default"))) TS_Init_get_features(uint32_t t return ret_ref; } -void __attribute__((visibility("default"))) TS_Init_set_features(uint32_t this_ptr, uint32_t val) { - LDKInit this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKInitFeatures val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = InitFeatures_clone(&val_conv); - Init_set_features(&this_ptr_conv, val_conv); +int16_t __attribute__((visibility("default"))) TS_InMemorySigner_counterparty_selected_contest_delay(uint32_t this_arg) { + LDKInMemorySigner this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int16_t ret_val = InMemorySigner_counterparty_selected_contest_delay(&this_arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Init_new(uint32_t features_arg) { - LDKInitFeatures features_arg_conv; - features_arg_conv.inner = (void*)(features_arg & (~1)); - features_arg_conv.is_owned = (features_arg & 1) || (features_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(features_arg_conv); - features_arg_conv = InitFeatures_clone(&features_arg_conv); - LDKInit ret_var = Init_new(features_arg_conv); +int16_t __attribute__((visibility("default"))) TS_InMemorySigner_holder_selected_contest_delay(uint32_t this_arg) { + LDKInMemorySigner this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int16_t ret_val = InMemorySigner_holder_selected_contest_delay(&this_arg_conv); + return ret_val; +} + +jboolean __attribute__((visibility("default"))) TS_InMemorySigner_is_outbound(uint32_t this_arg) { + LDKInMemorySigner this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + jboolean ret_val = InMemorySigner_is_outbound(&this_arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_funding_outpoint(uint32_t this_arg) { + LDKInMemorySigner this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKOutPoint ret_var = InMemorySigner_funding_outpoint(&this_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -22574,33 +20178,146 @@ uint32_t __attribute__((visibility("default"))) TS_Init_new(uint32_t features_a return ret_ref; } -static inline uint64_t Init_clone_ptr(LDKInit *NONNULL_PTR arg) { - LDKInit ret_var = Init_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} +uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_get_channel_parameters(uint32_t this_arg) { + LDKInMemorySigner this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKChannelTransactionParameters ret_var = InMemorySigner_get_channel_parameters(&this_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_Init_clone_ptr(uint32_t arg) { - LDKInit arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = Init_clone_ptr(&arg_conv); + +jboolean __attribute__((visibility("default"))) TS_InMemorySigner_opt_anchors(uint32_t this_arg) { + LDKInMemorySigner this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + jboolean ret_val = InMemorySigner_opt_anchors(&this_arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Init_clone(uint32_t orig) { - LDKInit orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKInit ret_var = Init_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_sign_counterparty_payment_input(uint32_t this_arg, int8_tArray spend_tx, int64_t input_idx, uint32_t descriptor) { + LDKInMemorySigner this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKTransaction spend_tx_ref; + spend_tx_ref.datalen = spend_tx->arr_len; + spend_tx_ref.data = MALLOC(spend_tx_ref.datalen, "LDKTransaction Bytes"); + memcpy(spend_tx_ref.data, spend_tx->elems, spend_tx_ref.datalen); + spend_tx_ref.data_is_owned = true; + LDKStaticPaymentOutputDescriptor descriptor_conv; + descriptor_conv.inner = (void*)(descriptor & (~1)); + descriptor_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(descriptor_conv); + LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ"); + *ret_conv = InMemorySigner_sign_counterparty_payment_input(&this_arg_conv, spend_tx_ref, input_idx, &descriptor_conv); + return (uint64_t)ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_sign_dynamic_p2wsh_input(uint32_t this_arg, int8_tArray spend_tx, int64_t input_idx, uint32_t descriptor) { + LDKInMemorySigner this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKTransaction spend_tx_ref; + spend_tx_ref.datalen = spend_tx->arr_len; + spend_tx_ref.data = MALLOC(spend_tx_ref.datalen, "LDKTransaction Bytes"); + memcpy(spend_tx_ref.data, spend_tx->elems, spend_tx_ref.datalen); + spend_tx_ref.data_is_owned = true; + LDKDelayedPaymentOutputDescriptor descriptor_conv; + descriptor_conv.inner = (void*)(descriptor & (~1)); + descriptor_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(descriptor_conv); + LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ"); + *ret_conv = InMemorySigner_sign_dynamic_p2wsh_input(&this_arg_conv, spend_tx_ref, input_idx, &descriptor_conv); + return (uint64_t)ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_as_BaseSign(uint32_t this_arg) { + LDKInMemorySigner this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKBaseSign* ret_ret = MALLOC(sizeof(LDKBaseSign), "LDKBaseSign"); + *ret_ret = InMemorySigner_as_BaseSign(&this_arg_conv); + return (uint64_t)ret_ret; +} + +uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_as_Sign(uint32_t this_arg) { + LDKInMemorySigner this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKSign* ret_ret = MALLOC(sizeof(LDKSign), "LDKSign"); + *ret_ret = InMemorySigner_as_Sign(&this_arg_conv); + return (uint64_t)ret_ret; +} + +int8_tArray __attribute__((visibility("default"))) TS_InMemorySigner_write(uint32_t obj) { + LDKInMemorySigner obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = InMemorySigner_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_InMemorySigner_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_InMemorySignerDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InMemorySignerDecodeErrorZ), "LDKCResult_InMemorySignerDecodeErrorZ"); + *ret_conv = InMemorySigner_read(ser_ref); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_KeysManager_free(uint32_t this_obj) { + LDKKeysManager this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + KeysManager_free(this_obj_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_KeysManager_new(int8_tArray seed, int64_t starting_time_secs, int32_t starting_time_nanos) { + unsigned char seed_arr[32]; + CHECK(seed->arr_len == 32); + memcpy(seed_arr, seed->elems, 32); + unsigned char (*seed_ref)[32] = &seed_arr; + LDKKeysManager ret_var = KeysManager_new(seed_ref, starting_time_secs, starting_time_nanos); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_KeysManager_derive_channel_keys(uint32_t this_arg, int64_t channel_value_satoshis, int8_tArray params) { + LDKKeysManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char params_arr[32]; + CHECK(params->arr_len == 32); + memcpy(params_arr, params->elems, 32); + unsigned char (*params_ref)[32] = ¶ms_arr; + LDKInMemorySigner ret_var = KeysManager_derive_channel_keys(&this_arg_conv, channel_value_satoshis, params_ref); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -22612,61 +20329,132 @@ uint32_t __attribute__((visibility("default"))) TS_Init_clone(uint32_t orig) { return ret_ref; } -void __attribute__((visibility("default"))) TS_ErrorMessage_free(uint32_t this_obj) { - LDKErrorMessage this_obj_conv; +uint32_t __attribute__((visibility("default"))) TS_KeysManager_spend_spendable_outputs(uint32_t this_arg, uint32_tArray descriptors, uint32_tArray outputs, int8_tArray change_destination_script, int32_t feerate_sat_per_1000_weight) { + LDKKeysManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKCVec_SpendableOutputDescriptorZ descriptors_constr; + descriptors_constr.datalen = descriptors->arr_len; + if (descriptors_constr.datalen > 0) + descriptors_constr.data = MALLOC(descriptors_constr.datalen * sizeof(LDKSpendableOutputDescriptor), "LDKCVec_SpendableOutputDescriptorZ Elements"); + else + descriptors_constr.data = NULL; + uint32_t* descriptors_vals = descriptors->elems; + for (size_t b = 0; b < descriptors_constr.datalen; b++) { + uint32_t descriptors_conv_27 = descriptors_vals[b]; + void* descriptors_conv_27_ptr = (void*)(((uint64_t)descriptors_conv_27) & ~1); + CHECK_ACCESS(descriptors_conv_27_ptr); + LDKSpendableOutputDescriptor descriptors_conv_27_conv = *(LDKSpendableOutputDescriptor*)(descriptors_conv_27_ptr); + descriptors_conv_27_conv = SpendableOutputDescriptor_clone((LDKSpendableOutputDescriptor*)(((uint64_t)descriptors_conv_27) & ~1)); + descriptors_constr.data[b] = descriptors_conv_27_conv; + } + LDKCVec_TxOutZ outputs_constr; + outputs_constr.datalen = outputs->arr_len; + if (outputs_constr.datalen > 0) + outputs_constr.data = MALLOC(outputs_constr.datalen * sizeof(LDKTxOut), "LDKCVec_TxOutZ Elements"); + else + outputs_constr.data = NULL; + uint32_t* outputs_vals = outputs->elems; + for (size_t h = 0; h < outputs_constr.datalen; h++) { + uint32_t outputs_conv_7 = outputs_vals[h]; + void* outputs_conv_7_ptr = (void*)(((uint64_t)outputs_conv_7) & ~1); + CHECK_ACCESS(outputs_conv_7_ptr); + LDKTxOut outputs_conv_7_conv = *(LDKTxOut*)(outputs_conv_7_ptr); + outputs_conv_7_conv = TxOut_clone((LDKTxOut*)(((uint64_t)outputs_conv_7) & ~1)); + outputs_constr.data[h] = outputs_conv_7_conv; + } + LDKCVec_u8Z change_destination_script_ref; + change_destination_script_ref.datalen = change_destination_script->arr_len; + change_destination_script_ref.data = MALLOC(change_destination_script_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(change_destination_script_ref.data, change_destination_script->elems, change_destination_script_ref.datalen); + LDKCResult_TransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TransactionNoneZ), "LDKCResult_TransactionNoneZ"); + *ret_conv = KeysManager_spend_spendable_outputs(&this_arg_conv, descriptors_constr, outputs_constr, change_destination_script_ref, feerate_sat_per_1000_weight); + return (uint64_t)ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_KeysManager_as_KeysInterface(uint32_t this_arg) { + LDKKeysManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKKeysInterface* ret_ret = MALLOC(sizeof(LDKKeysInterface), "LDKKeysInterface"); + *ret_ret = KeysManager_as_KeysInterface(&this_arg_conv); + return (uint64_t)ret_ret; +} + +void __attribute__((visibility("default"))) TS_ChannelManager_free(uint32_t this_obj) { + LDKChannelManager this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ErrorMessage_free(this_obj_conv); + ChannelManager_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_ErrorMessage_get_channel_id(uint32_t this_ptr) { - LDKErrorMessage this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChainParameters_free(uint32_t this_obj) { + LDKChainParameters this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + ChainParameters_free(this_obj_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_ChainParameters_get_network(uint32_t this_ptr) { + LDKChainParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *ErrorMessage_get_channel_id(&this_ptr_conv), 32); - return ret_arr; + uint32_t ret_conv = LDKNetwork_to_js(ChainParameters_get_network(&this_ptr_conv)); + return ret_conv; } -void __attribute__((visibility("default"))) TS_ErrorMessage_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKErrorMessage this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChainParameters_set_network(uint32_t this_ptr, uint32_t val) { + LDKChainParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - ErrorMessage_set_channel_id(&this_ptr_conv, val_ref); + LDKNetwork val_conv = LDKNetwork_from_js(val); + ChainParameters_set_network(&this_ptr_conv, val_conv); } -jstring __attribute__((visibility("default"))) TS_ErrorMessage_get_data(uint32_t this_ptr) { - LDKErrorMessage this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChainParameters_get_best_block(uint32_t this_ptr) { + LDKChainParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKStr ret_str = ErrorMessage_get_data(&this_ptr_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; + LDKBestBlock ret_var = ChainParameters_get_best_block(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_ErrorMessage_set_data(uint32_t this_ptr, jstring val) { - LDKErrorMessage this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChainParameters_set_best_block(uint32_t this_ptr, uint32_t val) { + LDKChainParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKStr val_conv = str_ref_to_owned_c(val); - ErrorMessage_set_data(&this_ptr_conv, val_conv); + LDKBestBlock val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = BestBlock_clone(&val_conv); + ChainParameters_set_best_block(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_ErrorMessage_new(int8_tArray channel_id_arg, jstring data_arg) { - LDKThirtyTwoBytes channel_id_arg_ref; - CHECK(*((uint32_t*)channel_id_arg) == 32); - memcpy(channel_id_arg_ref.data, (uint8_t*)(channel_id_arg + 4), 32); - LDKStr data_arg_conv = str_ref_to_owned_c(data_arg); - LDKErrorMessage ret_var = ErrorMessage_new(channel_id_arg_ref, data_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_ChainParameters_new(uint32_t network_arg, uint32_t best_block_arg) { + LDKNetwork network_arg_conv = LDKNetwork_from_js(network_arg); + LDKBestBlock best_block_arg_conv; + best_block_arg_conv.inner = (void*)(best_block_arg & (~1)); + best_block_arg_conv.is_owned = (best_block_arg & 1) || (best_block_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(best_block_arg_conv); + best_block_arg_conv = BestBlock_clone(&best_block_arg_conv); + LDKChainParameters ret_var = ChainParameters_new(network_arg_conv, best_block_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -22678,8 +20466,8 @@ uint32_t __attribute__((visibility("default"))) TS_ErrorMessage_new(int8_tArray return ret_ref; } -static inline uint64_t ErrorMessage_clone_ptr(LDKErrorMessage *NONNULL_PTR arg) { - LDKErrorMessage ret_var = ErrorMessage_clone(arg); +static inline uint64_t ChainParameters_clone_ptr(LDKChainParameters *NONNULL_PTR arg) { + LDKChainParameters ret_var = ChainParameters_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -22690,21 +20478,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ErrorMessage_clone_ptr(uint32_t arg) { - LDKErrorMessage arg_conv; +int64_t __attribute__((visibility("default"))) TS_ChainParameters_clone_ptr(uint32_t arg) { + LDKChainParameters arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ErrorMessage_clone_ptr(&arg_conv); + int64_t ret_val = ChainParameters_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ErrorMessage_clone(uint32_t orig) { - LDKErrorMessage orig_conv; +uint32_t __attribute__((visibility("default"))) TS_ChainParameters_clone(uint32_t orig) { + LDKChainParameters orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKErrorMessage ret_var = ErrorMessage_clone(&orig_conv); + LDKChainParameters ret_var = ChainParameters_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -22716,126 +20504,67 @@ uint32_t __attribute__((visibility("default"))) TS_ErrorMessage_clone(uint32_t return ret_ref; } -void __attribute__((visibility("default"))) TS_Ping_free(uint32_t this_obj) { - LDKPing this_obj_conv; +void __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_free(uint32_t this_obj) { + LDKCounterpartyForwardingInfo this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - Ping_free(this_obj_conv); + CounterpartyForwardingInfo_free(this_obj_conv); } -int16_t __attribute__((visibility("default"))) TS_Ping_get_ponglen(uint32_t this_ptr) { - LDKPing this_ptr_conv; +int32_t __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_get_fee_base_msat(uint32_t this_ptr) { + LDKCounterpartyForwardingInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = Ping_get_ponglen(&this_ptr_conv); + int32_t ret_val = CounterpartyForwardingInfo_get_fee_base_msat(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_Ping_set_ponglen(uint32_t this_ptr, int16_t val) { - LDKPing this_ptr_conv; +void __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_set_fee_base_msat(uint32_t this_ptr, int32_t val) { + LDKCounterpartyForwardingInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - Ping_set_ponglen(&this_ptr_conv, val); + CounterpartyForwardingInfo_set_fee_base_msat(&this_ptr_conv, val); } -int16_t __attribute__((visibility("default"))) TS_Ping_get_byteslen(uint32_t this_ptr) { - LDKPing this_ptr_conv; +int32_t __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_get_fee_proportional_millionths(uint32_t this_ptr) { + LDKCounterpartyForwardingInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = Ping_get_byteslen(&this_ptr_conv); + int32_t ret_val = CounterpartyForwardingInfo_get_fee_proportional_millionths(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_Ping_set_byteslen(uint32_t this_ptr, int16_t val) { - LDKPing this_ptr_conv; +void __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_set_fee_proportional_millionths(uint32_t this_ptr, int32_t val) { + LDKCounterpartyForwardingInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - Ping_set_byteslen(&this_ptr_conv, val); -} - -uint32_t __attribute__((visibility("default"))) TS_Ping_new(int16_t ponglen_arg, int16_t byteslen_arg) { - LDKPing ret_var = Ping_new(ponglen_arg, byteslen_arg); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; -} - -static inline uint64_t Ping_clone_ptr(LDKPing *NONNULL_PTR arg) { - LDKPing ret_var = Ping_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_Ping_clone_ptr(uint32_t arg) { - LDKPing arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = Ping_clone_ptr(&arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_Ping_clone(uint32_t orig) { - LDKPing orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKPing ret_var = Ping_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; -} - -void __attribute__((visibility("default"))) TS_Pong_free(uint32_t this_obj) { - LDKPong this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - Pong_free(this_obj_conv); + CounterpartyForwardingInfo_set_fee_proportional_millionths(&this_ptr_conv, val); } -int16_t __attribute__((visibility("default"))) TS_Pong_get_byteslen(uint32_t this_ptr) { - LDKPong this_ptr_conv; +int16_t __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_get_cltv_expiry_delta(uint32_t this_ptr) { + LDKCounterpartyForwardingInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = Pong_get_byteslen(&this_ptr_conv); + int16_t ret_val = CounterpartyForwardingInfo_get_cltv_expiry_delta(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_Pong_set_byteslen(uint32_t this_ptr, int16_t val) { - LDKPong this_ptr_conv; +void __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_set_cltv_expiry_delta(uint32_t this_ptr, int16_t val) { + LDKCounterpartyForwardingInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - Pong_set_byteslen(&this_ptr_conv, val); + CounterpartyForwardingInfo_set_cltv_expiry_delta(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_Pong_new(int16_t byteslen_arg) { - LDKPong ret_var = Pong_new(byteslen_arg); +uint32_t __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_new(int32_t fee_base_msat_arg, int32_t fee_proportional_millionths_arg, int16_t cltv_expiry_delta_arg) { + LDKCounterpartyForwardingInfo ret_var = CounterpartyForwardingInfo_new(fee_base_msat_arg, fee_proportional_millionths_arg, cltv_expiry_delta_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -22847,8 +20576,8 @@ uint32_t __attribute__((visibility("default"))) TS_Pong_new(int16_t byteslen_ar return ret_ref; } -static inline uint64_t Pong_clone_ptr(LDKPong *NONNULL_PTR arg) { - LDKPong ret_var = Pong_clone(arg); +static inline uint64_t CounterpartyForwardingInfo_clone_ptr(LDKCounterpartyForwardingInfo *NONNULL_PTR arg) { + LDKCounterpartyForwardingInfo ret_var = CounterpartyForwardingInfo_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -22858,22 +20587,22 @@ if (ret_var.is_owned) { ret_ref |= 1; } return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_Pong_clone_ptr(uint32_t arg) { - LDKPong arg_conv; +} +int64_t __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_clone_ptr(uint32_t arg) { + LDKCounterpartyForwardingInfo arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = Pong_clone_ptr(&arg_conv); + int64_t ret_val = CounterpartyForwardingInfo_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Pong_clone(uint32_t orig) { - LDKPong orig_conv; +uint32_t __attribute__((visibility("default"))) TS_CounterpartyForwardingInfo_clone(uint32_t orig) { + LDKCounterpartyForwardingInfo orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKPong ret_var = Pong_clone(&orig_conv); + LDKCounterpartyForwardingInfo ret_var = CounterpartyForwardingInfo_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -22885,940 +20614,1176 @@ uint32_t __attribute__((visibility("default"))) TS_Pong_clone(uint32_t orig) { return ret_ref; } -void __attribute__((visibility("default"))) TS_OpenChannel_free(uint32_t this_obj) { - LDKOpenChannel this_obj_conv; +void __attribute__((visibility("default"))) TS_ChannelCounterparty_free(uint32_t this_obj) { + LDKChannelCounterparty this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - OpenChannel_free(this_obj_conv); -} - -int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_chain_hash(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *OpenChannel_get_chain_hash(&this_ptr_conv), 32); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_OpenChannel_set_chain_hash(uint32_t this_ptr, int8_tArray val) { - LDKOpenChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - OpenChannel_set_chain_hash(&this_ptr_conv, val_ref); + ChannelCounterparty_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_temporary_channel_id(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_ChannelCounterparty_get_node_id(uint32_t this_ptr) { + LDKChannelCounterparty this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *OpenChannel_get_temporary_channel_id(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, ChannelCounterparty_get_node_id(&this_ptr_conv).compressed_form, 33); return ret_arr; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_temporary_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelCounterparty_set_node_id(uint32_t this_ptr, int8_tArray val) { + LDKChannelCounterparty this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - OpenChannel_set_temporary_channel_id(&this_ptr_conv, val_ref); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + ChannelCounterparty_set_node_id(&this_ptr_conv, val_ref); } -int64_t __attribute__((visibility("default"))) TS_OpenChannel_get_funding_satoshis(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelCounterparty_get_features(uint32_t this_ptr) { + LDKChannelCounterparty this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = OpenChannel_get_funding_satoshis(&this_ptr_conv); - return ret_val; + LDKInitFeatures ret_var = ChannelCounterparty_get_features(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_funding_satoshis(uint32_t this_ptr, int64_t val) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelCounterparty_set_features(uint32_t this_ptr, uint32_t val) { + LDKChannelCounterparty this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - OpenChannel_set_funding_satoshis(&this_ptr_conv, val); + LDKInitFeatures val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = InitFeatures_clone(&val_conv); + ChannelCounterparty_set_features(&this_ptr_conv, val_conv); } -int64_t __attribute__((visibility("default"))) TS_OpenChannel_get_push_msat(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelCounterparty_get_unspendable_punishment_reserve(uint32_t this_ptr) { + LDKChannelCounterparty this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = OpenChannel_get_push_msat(&this_ptr_conv); + int64_t ret_val = ChannelCounterparty_get_unspendable_punishment_reserve(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_push_msat(uint32_t this_ptr, int64_t val) { - LDKOpenChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - OpenChannel_set_push_msat(&this_ptr_conv, val); -} - -int64_t __attribute__((visibility("default"))) TS_OpenChannel_get_dust_limit_satoshis(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelCounterparty_set_unspendable_punishment_reserve(uint32_t this_ptr, int64_t val) { + LDKChannelCounterparty this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = OpenChannel_get_dust_limit_satoshis(&this_ptr_conv); - return ret_val; + ChannelCounterparty_set_unspendable_punishment_reserve(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_OpenChannel_set_dust_limit_satoshis(uint32_t this_ptr, int64_t val) { - LDKOpenChannel this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelCounterparty_get_forwarding_info(uint32_t this_ptr) { + LDKChannelCounterparty this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - OpenChannel_set_dust_limit_satoshis(&this_ptr_conv, val); + LDKCounterpartyForwardingInfo ret_var = ChannelCounterparty_get_forwarding_info(&this_ptr_conv); + uint64_t ret_ref = 0; + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + } + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_OpenChannel_get_max_htlc_value_in_flight_msat(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelCounterparty_set_forwarding_info(uint32_t this_ptr, uint32_t val) { + LDKChannelCounterparty this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = OpenChannel_get_max_htlc_value_in_flight_msat(&this_ptr_conv); - return ret_val; + LDKCounterpartyForwardingInfo val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = CounterpartyForwardingInfo_clone(&val_conv); + ChannelCounterparty_set_forwarding_info(&this_ptr_conv, val_conv); } -void __attribute__((visibility("default"))) TS_OpenChannel_set_max_htlc_value_in_flight_msat(uint32_t this_ptr, int64_t val) { - LDKOpenChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - OpenChannel_set_max_htlc_value_in_flight_msat(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_ChannelCounterparty_new(int8_tArray node_id_arg, uint32_t features_arg, int64_t unspendable_punishment_reserve_arg, uint32_t forwarding_info_arg) { + LDKPublicKey node_id_arg_ref; + CHECK(node_id_arg->arr_len == 33); + memcpy(node_id_arg_ref.compressed_form, node_id_arg->elems, 33); + LDKInitFeatures features_arg_conv; + features_arg_conv.inner = (void*)(features_arg & (~1)); + features_arg_conv.is_owned = (features_arg & 1) || (features_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(features_arg_conv); + features_arg_conv = InitFeatures_clone(&features_arg_conv); + LDKCounterpartyForwardingInfo forwarding_info_arg_conv; + forwarding_info_arg_conv.inner = (void*)(forwarding_info_arg & (~1)); + forwarding_info_arg_conv.is_owned = (forwarding_info_arg & 1) || (forwarding_info_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(forwarding_info_arg_conv); + forwarding_info_arg_conv = CounterpartyForwardingInfo_clone(&forwarding_info_arg_conv); + LDKChannelCounterparty ret_var = ChannelCounterparty_new(node_id_arg_ref, features_arg_conv, unspendable_punishment_reserve_arg, forwarding_info_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_OpenChannel_get_channel_reserve_satoshis(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = OpenChannel_get_channel_reserve_satoshis(&this_ptr_conv); - return ret_val; +static inline uint64_t ChannelCounterparty_clone_ptr(LDKChannelCounterparty *NONNULL_PTR arg) { + LDKChannelCounterparty ret_var = ChannelCounterparty_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -void __attribute__((visibility("default"))) TS_OpenChannel_set_channel_reserve_satoshis(uint32_t this_ptr, int64_t val) { - LDKOpenChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - OpenChannel_set_channel_reserve_satoshis(&this_ptr_conv, val); + return ret_ref; } - -int64_t __attribute__((visibility("default"))) TS_OpenChannel_get_htlc_minimum_msat(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = OpenChannel_get_htlc_minimum_msat(&this_ptr_conv); +int64_t __attribute__((visibility("default"))) TS_ChannelCounterparty_clone_ptr(uint32_t arg) { + LDKChannelCounterparty arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ChannelCounterparty_clone_ptr(&arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_htlc_minimum_msat(uint32_t this_ptr, int64_t val) { - LDKOpenChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - OpenChannel_set_htlc_minimum_msat(&this_ptr_conv, val); -} - -int32_t __attribute__((visibility("default"))) TS_OpenChannel_get_feerate_per_kw(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = OpenChannel_get_feerate_per_kw(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_ChannelCounterparty_clone(uint32_t orig) { + LDKChannelCounterparty orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKChannelCounterparty ret_var = ChannelCounterparty_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_feerate_per_kw(uint32_t this_ptr, int32_t val) { - LDKOpenChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - OpenChannel_set_feerate_per_kw(&this_ptr_conv, val); +void __attribute__((visibility("default"))) TS_ChannelDetails_free(uint32_t this_obj) { + LDKChannelDetails this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + ChannelDetails_free(this_obj_conv); } -int16_t __attribute__((visibility("default"))) TS_OpenChannel_get_to_self_delay(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_ChannelDetails_get_channel_id(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = OpenChannel_get_to_self_delay(&this_ptr_conv); - return ret_val; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *ChannelDetails_get_channel_id(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_to_self_delay(uint32_t this_ptr, int16_t val) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - OpenChannel_set_to_self_delay(&this_ptr_conv, val); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + ChannelDetails_set_channel_id(&this_ptr_conv, val_ref); } -int16_t __attribute__((visibility("default"))) TS_OpenChannel_get_max_accepted_htlcs(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_get_counterparty(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = OpenChannel_get_max_accepted_htlcs(&this_ptr_conv); - return ret_val; + LDKChannelCounterparty ret_var = ChannelDetails_get_counterparty(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_max_accepted_htlcs(uint32_t this_ptr, int16_t val) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_counterparty(uint32_t this_ptr, uint32_t val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - OpenChannel_set_max_accepted_htlcs(&this_ptr_conv, val); + LDKChannelCounterparty val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = ChannelCounterparty_clone(&val_conv); + ChannelDetails_set_counterparty(&this_ptr_conv, val_conv); } -int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_funding_pubkey(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_get_funding_txo(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), OpenChannel_get_funding_pubkey(&this_ptr_conv).compressed_form, 33); - return ret_arr; + LDKOutPoint ret_var = ChannelDetails_get_funding_txo(&this_ptr_conv); + uint64_t ret_ref = 0; + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_funding_pubkey(uint32_t this_ptr, int8_tArray val) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_funding_txo(uint32_t this_ptr, uint32_t val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - OpenChannel_set_funding_pubkey(&this_ptr_conv, val_ref); + LDKOutPoint val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = OutPoint_clone(&val_conv); + ChannelDetails_set_funding_txo(&this_ptr_conv, val_conv); } -int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_revocation_basepoint(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_get_short_channel_id(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), OpenChannel_get_revocation_basepoint(&this_ptr_conv).compressed_form, 33); - return ret_arr; + LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); + *ret_copy = ChannelDetails_get_short_channel_id(&this_ptr_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_revocation_basepoint(uint32_t this_ptr, int8_tArray val) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_short_channel_id(uint32_t this_ptr, uint32_t val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - OpenChannel_set_revocation_basepoint(&this_ptr_conv, val_ref); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr); + val_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)val) & ~1)); + ChannelDetails_set_short_channel_id(&this_ptr_conv, val_conv); } -int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_payment_point(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelDetails_get_channel_value_satoshis(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), OpenChannel_get_payment_point(&this_ptr_conv).compressed_form, 33); - return ret_arr; + int64_t ret_val = ChannelDetails_get_channel_value_satoshis(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_payment_point(uint32_t this_ptr, int8_tArray val) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_channel_value_satoshis(uint32_t this_ptr, int64_t val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - OpenChannel_set_payment_point(&this_ptr_conv, val_ref); + ChannelDetails_set_channel_value_satoshis(&this_ptr_conv, val); } -int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_delayed_payment_basepoint(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_get_unspendable_punishment_reserve(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), OpenChannel_get_delayed_payment_basepoint(&this_ptr_conv).compressed_form, 33); - return ret_arr; + LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); + *ret_copy = ChannelDetails_get_unspendable_punishment_reserve(&this_ptr_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_delayed_payment_basepoint(uint32_t this_ptr, int8_tArray val) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_unspendable_punishment_reserve(uint32_t this_ptr, uint32_t val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - OpenChannel_set_delayed_payment_basepoint(&this_ptr_conv, val_ref); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr); + val_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)val) & ~1)); + ChannelDetails_set_unspendable_punishment_reserve(&this_ptr_conv, val_conv); } -int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_htlc_basepoint(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelDetails_get_user_channel_id(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), OpenChannel_get_htlc_basepoint(&this_ptr_conv).compressed_form, 33); - return ret_arr; + int64_t ret_val = ChannelDetails_get_user_channel_id(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_htlc_basepoint(uint32_t this_ptr, int8_tArray val) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_user_channel_id(uint32_t this_ptr, int64_t val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - OpenChannel_set_htlc_basepoint(&this_ptr_conv, val_ref); + ChannelDetails_set_user_channel_id(&this_ptr_conv, val); } -int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_first_per_commitment_point(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelDetails_get_balance_msat(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), OpenChannel_get_first_per_commitment_point(&this_ptr_conv).compressed_form, 33); - return ret_arr; + int64_t ret_val = ChannelDetails_get_balance_msat(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_first_per_commitment_point(uint32_t this_ptr, int8_tArray val) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_balance_msat(uint32_t this_ptr, int64_t val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - OpenChannel_set_first_per_commitment_point(&this_ptr_conv, val_ref); + ChannelDetails_set_balance_msat(&this_ptr_conv, val); } -int8_t __attribute__((visibility("default"))) TS_OpenChannel_get_channel_flags(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelDetails_get_outbound_capacity_msat(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_t ret_val = OpenChannel_get_channel_flags(&this_ptr_conv); + int64_t ret_val = ChannelDetails_get_outbound_capacity_msat(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_channel_flags(uint32_t this_ptr, int8_t val) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_outbound_capacity_msat(uint32_t this_ptr, int64_t val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - OpenChannel_set_channel_flags(&this_ptr_conv, val); + ChannelDetails_set_outbound_capacity_msat(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_OpenChannel_get_channel_type(uint32_t this_ptr) { - LDKOpenChannel this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelDetails_get_inbound_capacity_msat(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelTypeFeatures ret_var = OpenChannel_get_channel_type(&this_ptr_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } - return ret_ref; + int64_t ret_val = ChannelDetails_get_inbound_capacity_msat(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_OpenChannel_set_channel_type(uint32_t this_ptr, uint32_t val) { - LDKOpenChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_inbound_capacity_msat(uint32_t this_ptr, int64_t val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelTypeFeatures val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = ChannelTypeFeatures_clone(&val_conv); - OpenChannel_set_channel_type(&this_ptr_conv, val_conv); -} - -static inline uint64_t OpenChannel_clone_ptr(LDKOpenChannel *NONNULL_PTR arg) { - LDKOpenChannel ret_var = OpenChannel_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_OpenChannel_clone_ptr(uint32_t arg) { - LDKOpenChannel arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = OpenChannel_clone_ptr(&arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_OpenChannel_clone(uint32_t orig) { - LDKOpenChannel orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKOpenChannel ret_var = OpenChannel_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; -} - -void __attribute__((visibility("default"))) TS_AcceptChannel_free(uint32_t this_obj) { - LDKAcceptChannel this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - AcceptChannel_free(this_obj_conv); + ChannelDetails_set_inbound_capacity_msat(&this_ptr_conv, val); } -int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_temporary_channel_id(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_get_confirmations_required(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *AcceptChannel_get_temporary_channel_id(&this_ptr_conv), 32); - return ret_arr; + LDKCOption_u32Z *ret_copy = MALLOC(sizeof(LDKCOption_u32Z), "LDKCOption_u32Z"); + *ret_copy = ChannelDetails_get_confirmations_required(&this_ptr_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_temporary_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKAcceptChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_confirmations_required(uint32_t this_ptr, uint32_t val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - AcceptChannel_set_temporary_channel_id(&this_ptr_conv, val_ref); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKCOption_u32Z val_conv = *(LDKCOption_u32Z*)(val_ptr); + val_conv = COption_u32Z_clone((LDKCOption_u32Z*)(((uint64_t)val) & ~1)); + ChannelDetails_set_confirmations_required(&this_ptr_conv, val_conv); } -int64_t __attribute__((visibility("default"))) TS_AcceptChannel_get_dust_limit_satoshis(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_get_force_close_spend_delay(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = AcceptChannel_get_dust_limit_satoshis(&this_ptr_conv); - return ret_val; + LDKCOption_u16Z *ret_copy = MALLOC(sizeof(LDKCOption_u16Z), "LDKCOption_u16Z"); + *ret_copy = ChannelDetails_get_force_close_spend_delay(&this_ptr_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_dust_limit_satoshis(uint32_t this_ptr, int64_t val) { - LDKAcceptChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_force_close_spend_delay(uint32_t this_ptr, uint32_t val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - AcceptChannel_set_dust_limit_satoshis(&this_ptr_conv, val); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKCOption_u16Z val_conv = *(LDKCOption_u16Z*)(val_ptr); + val_conv = COption_u16Z_clone((LDKCOption_u16Z*)(((uint64_t)val) & ~1)); + ChannelDetails_set_force_close_spend_delay(&this_ptr_conv, val_conv); } -int64_t __attribute__((visibility("default"))) TS_AcceptChannel_get_max_htlc_value_in_flight_msat(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; +jboolean __attribute__((visibility("default"))) TS_ChannelDetails_get_is_outbound(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = AcceptChannel_get_max_htlc_value_in_flight_msat(&this_ptr_conv); + jboolean ret_val = ChannelDetails_get_is_outbound(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_max_htlc_value_in_flight_msat(uint32_t this_ptr, int64_t val) { - LDKAcceptChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_is_outbound(uint32_t this_ptr, jboolean val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - AcceptChannel_set_max_htlc_value_in_flight_msat(&this_ptr_conv, val); + ChannelDetails_set_is_outbound(&this_ptr_conv, val); } -int64_t __attribute__((visibility("default"))) TS_AcceptChannel_get_channel_reserve_satoshis(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; +jboolean __attribute__((visibility("default"))) TS_ChannelDetails_get_is_funding_locked(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = AcceptChannel_get_channel_reserve_satoshis(&this_ptr_conv); + jboolean ret_val = ChannelDetails_get_is_funding_locked(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_channel_reserve_satoshis(uint32_t this_ptr, int64_t val) { - LDKAcceptChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_is_funding_locked(uint32_t this_ptr, jboolean val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - AcceptChannel_set_channel_reserve_satoshis(&this_ptr_conv, val); + ChannelDetails_set_is_funding_locked(&this_ptr_conv, val); } -int64_t __attribute__((visibility("default"))) TS_AcceptChannel_get_htlc_minimum_msat(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; +jboolean __attribute__((visibility("default"))) TS_ChannelDetails_get_is_usable(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = AcceptChannel_get_htlc_minimum_msat(&this_ptr_conv); + jboolean ret_val = ChannelDetails_get_is_usable(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_htlc_minimum_msat(uint32_t this_ptr, int64_t val) { - LDKAcceptChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_is_usable(uint32_t this_ptr, jboolean val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - AcceptChannel_set_htlc_minimum_msat(&this_ptr_conv, val); + ChannelDetails_set_is_usable(&this_ptr_conv, val); } -int32_t __attribute__((visibility("default"))) TS_AcceptChannel_get_minimum_depth(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; +jboolean __attribute__((visibility("default"))) TS_ChannelDetails_get_is_public(uint32_t this_ptr) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = AcceptChannel_get_minimum_depth(&this_ptr_conv); + jboolean ret_val = ChannelDetails_get_is_public(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_minimum_depth(uint32_t this_ptr, int32_t val) { - LDKAcceptChannel this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelDetails_set_is_public(uint32_t this_ptr, jboolean val) { + LDKChannelDetails this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - AcceptChannel_set_minimum_depth(&this_ptr_conv, val); + ChannelDetails_set_is_public(&this_ptr_conv, val); } -int16_t __attribute__((visibility("default"))) TS_AcceptChannel_get_to_self_delay(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = AcceptChannel_get_to_self_delay(&this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_new(int8_tArray channel_id_arg, uint32_t counterparty_arg, uint32_t funding_txo_arg, uint32_t short_channel_id_arg, int64_t channel_value_satoshis_arg, uint32_t unspendable_punishment_reserve_arg, int64_t user_channel_id_arg, int64_t balance_msat_arg, int64_t outbound_capacity_msat_arg, int64_t inbound_capacity_msat_arg, uint32_t confirmations_required_arg, uint32_t force_close_spend_delay_arg, jboolean is_outbound_arg, jboolean is_funding_locked_arg, jboolean is_usable_arg, jboolean is_public_arg) { + LDKThirtyTwoBytes channel_id_arg_ref; + CHECK(channel_id_arg->arr_len == 32); + memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); + LDKChannelCounterparty counterparty_arg_conv; + counterparty_arg_conv.inner = (void*)(counterparty_arg & (~1)); + counterparty_arg_conv.is_owned = (counterparty_arg & 1) || (counterparty_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(counterparty_arg_conv); + counterparty_arg_conv = ChannelCounterparty_clone(&counterparty_arg_conv); + LDKOutPoint funding_txo_arg_conv; + funding_txo_arg_conv.inner = (void*)(funding_txo_arg & (~1)); + funding_txo_arg_conv.is_owned = (funding_txo_arg & 1) || (funding_txo_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_txo_arg_conv); + funding_txo_arg_conv = OutPoint_clone(&funding_txo_arg_conv); + void* short_channel_id_arg_ptr = (void*)(((uint64_t)short_channel_id_arg) & ~1); + CHECK_ACCESS(short_channel_id_arg_ptr); + LDKCOption_u64Z short_channel_id_arg_conv = *(LDKCOption_u64Z*)(short_channel_id_arg_ptr); + short_channel_id_arg_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)short_channel_id_arg) & ~1)); + void* unspendable_punishment_reserve_arg_ptr = (void*)(((uint64_t)unspendable_punishment_reserve_arg) & ~1); + CHECK_ACCESS(unspendable_punishment_reserve_arg_ptr); + LDKCOption_u64Z unspendable_punishment_reserve_arg_conv = *(LDKCOption_u64Z*)(unspendable_punishment_reserve_arg_ptr); + void* confirmations_required_arg_ptr = (void*)(((uint64_t)confirmations_required_arg) & ~1); + CHECK_ACCESS(confirmations_required_arg_ptr); + LDKCOption_u32Z confirmations_required_arg_conv = *(LDKCOption_u32Z*)(confirmations_required_arg_ptr); + confirmations_required_arg_conv = COption_u32Z_clone((LDKCOption_u32Z*)(((uint64_t)confirmations_required_arg) & ~1)); + void* force_close_spend_delay_arg_ptr = (void*)(((uint64_t)force_close_spend_delay_arg) & ~1); + CHECK_ACCESS(force_close_spend_delay_arg_ptr); + LDKCOption_u16Z force_close_spend_delay_arg_conv = *(LDKCOption_u16Z*)(force_close_spend_delay_arg_ptr); + force_close_spend_delay_arg_conv = COption_u16Z_clone((LDKCOption_u16Z*)(((uint64_t)force_close_spend_delay_arg) & ~1)); + LDKChannelDetails ret_var = ChannelDetails_new(channel_id_arg_ref, counterparty_arg_conv, funding_txo_arg_conv, short_channel_id_arg_conv, channel_value_satoshis_arg, unspendable_punishment_reserve_arg_conv, user_channel_id_arg, balance_msat_arg, outbound_capacity_msat_arg, inbound_capacity_msat_arg, confirmations_required_arg_conv, force_close_spend_delay_arg_conv, is_outbound_arg, is_funding_locked_arg, is_usable_arg, is_public_arg); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +static inline uint64_t ChannelDetails_clone_ptr(LDKChannelDetails *NONNULL_PTR arg) { + LDKChannelDetails ret_var = ChannelDetails_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_ChannelDetails_clone_ptr(uint32_t arg) { + LDKChannelDetails arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ChannelDetails_clone_ptr(&arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_to_self_delay(uint32_t this_ptr, int16_t val) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - AcceptChannel_set_to_self_delay(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_ChannelDetails_clone(uint32_t orig) { + LDKChannelDetails orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKChannelDetails ret_var = ChannelDetails_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int16_t __attribute__((visibility("default"))) TS_AcceptChannel_get_max_accepted_htlcs(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = AcceptChannel_get_max_accepted_htlcs(&this_ptr_conv); +void __attribute__((visibility("default"))) TS_PaymentSendFailure_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKPaymentSendFailure this_ptr_conv = *(LDKPaymentSendFailure*)(this_ptr_ptr); + FREE((void*)this_ptr); + PaymentSendFailure_free(this_ptr_conv); +} + +static inline uint64_t PaymentSendFailure_clone_ptr(LDKPaymentSendFailure *NONNULL_PTR arg) { + LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); + *ret_copy = PaymentSendFailure_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_PaymentSendFailure_clone_ptr(uint32_t arg) { + LDKPaymentSendFailure* arg_conv = (LDKPaymentSendFailure*)arg; + int64_t ret_val = PaymentSendFailure_clone_ptr(arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_max_accepted_htlcs(uint32_t this_ptr, int16_t val) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - AcceptChannel_set_max_accepted_htlcs(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_PaymentSendFailure_clone(uint32_t orig) { + LDKPaymentSendFailure* orig_conv = (LDKPaymentSendFailure*)orig; + LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); + *ret_copy = PaymentSendFailure_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_funding_pubkey(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), AcceptChannel_get_funding_pubkey(&this_ptr_conv).compressed_form, 33); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_PaymentSendFailure_parameter_error(uint32_t a) { + void* a_ptr = (void*)(((uint64_t)a) & ~1); + CHECK_ACCESS(a_ptr); + LDKAPIError a_conv = *(LDKAPIError*)(a_ptr); + a_conv = APIError_clone((LDKAPIError*)(((uint64_t)a) & ~1)); + LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); + *ret_copy = PaymentSendFailure_parameter_error(a_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_funding_pubkey(uint32_t this_ptr, int8_tArray val) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - AcceptChannel_set_funding_pubkey(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_PaymentSendFailure_path_parameter_error(uint32_tArray a) { + LDKCVec_CResult_NoneAPIErrorZZ a_constr; + a_constr.datalen = a->arr_len; + if (a_constr.datalen > 0) + a_constr.data = MALLOC(a_constr.datalen * sizeof(LDKCResult_NoneAPIErrorZ), "LDKCVec_CResult_NoneAPIErrorZZ Elements"); + else + a_constr.data = NULL; + uint32_t* a_vals = a->elems; + for (size_t w = 0; w < a_constr.datalen; w++) { + uint32_t a_conv_22 = a_vals[w]; + void* a_conv_22_ptr = (void*)(((uint64_t)a_conv_22) & ~1); + CHECK_ACCESS(a_conv_22_ptr); + LDKCResult_NoneAPIErrorZ a_conv_22_conv = *(LDKCResult_NoneAPIErrorZ*)(a_conv_22_ptr); + a_conv_22_conv = CResult_NoneAPIErrorZ_clone((LDKCResult_NoneAPIErrorZ*)(((uint64_t)a_conv_22) & ~1)); + a_constr.data[w] = a_conv_22_conv; + } + LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); + *ret_copy = PaymentSendFailure_path_parameter_error(a_constr); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_revocation_basepoint(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), AcceptChannel_get_revocation_basepoint(&this_ptr_conv).compressed_form, 33); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_PaymentSendFailure_all_failed_retry_safe(uint32_tArray a) { + LDKCVec_APIErrorZ a_constr; + a_constr.datalen = a->arr_len; + if (a_constr.datalen > 0) + a_constr.data = MALLOC(a_constr.datalen * sizeof(LDKAPIError), "LDKCVec_APIErrorZ Elements"); + else + a_constr.data = NULL; + uint32_t* a_vals = a->elems; + for (size_t k = 0; k < a_constr.datalen; k++) { + uint32_t a_conv_10 = a_vals[k]; + void* a_conv_10_ptr = (void*)(((uint64_t)a_conv_10) & ~1); + CHECK_ACCESS(a_conv_10_ptr); + LDKAPIError a_conv_10_conv = *(LDKAPIError*)(a_conv_10_ptr); + a_conv_10_conv = APIError_clone((LDKAPIError*)(((uint64_t)a_conv_10) & ~1)); + a_constr.data[k] = a_conv_10_conv; + } + LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); + *ret_copy = PaymentSendFailure_all_failed_retry_safe(a_constr); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_revocation_basepoint(uint32_t this_ptr, int8_tArray val) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - AcceptChannel_set_revocation_basepoint(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_PaymentSendFailure_partial_failure(uint32_tArray results, uint32_t failed_paths_retry, int8_tArray payment_id) { + LDKCVec_CResult_NoneAPIErrorZZ results_constr; + results_constr.datalen = results->arr_len; + if (results_constr.datalen > 0) + results_constr.data = MALLOC(results_constr.datalen * sizeof(LDKCResult_NoneAPIErrorZ), "LDKCVec_CResult_NoneAPIErrorZZ Elements"); + else + results_constr.data = NULL; + uint32_t* results_vals = results->elems; + for (size_t w = 0; w < results_constr.datalen; w++) { + uint32_t results_conv_22 = results_vals[w]; + void* results_conv_22_ptr = (void*)(((uint64_t)results_conv_22) & ~1); + CHECK_ACCESS(results_conv_22_ptr); + LDKCResult_NoneAPIErrorZ results_conv_22_conv = *(LDKCResult_NoneAPIErrorZ*)(results_conv_22_ptr); + results_constr.data[w] = results_conv_22_conv; + } + LDKRouteParameters failed_paths_retry_conv; + failed_paths_retry_conv.inner = (void*)(failed_paths_retry & (~1)); + failed_paths_retry_conv.is_owned = (failed_paths_retry & 1) || (failed_paths_retry == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(failed_paths_retry_conv); + failed_paths_retry_conv = RouteParameters_clone(&failed_paths_retry_conv); + LDKThirtyTwoBytes payment_id_ref; + CHECK(payment_id->arr_len == 32); + memcpy(payment_id_ref.data, payment_id->elems, 32); + LDKPaymentSendFailure *ret_copy = MALLOC(sizeof(LDKPaymentSendFailure), "LDKPaymentSendFailure"); + *ret_copy = PaymentSendFailure_partial_failure(results_constr, failed_paths_retry_conv, payment_id_ref); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_payment_point(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), AcceptChannel_get_payment_point(&this_ptr_conv).compressed_form, 33); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_new(uint32_t fee_est, uint32_t chain_monitor, uint32_t tx_broadcaster, uint32_t logger, uint32_t keys_manager, uint32_t config, uint32_t params) { + void* fee_est_ptr = (void*)(((uint64_t)fee_est) & ~1); + CHECK_ACCESS(fee_est_ptr); + LDKFeeEstimator fee_est_conv = *(LDKFeeEstimator*)(fee_est_ptr); + void* chain_monitor_ptr = (void*)(((uint64_t)chain_monitor) & ~1); + CHECK_ACCESS(chain_monitor_ptr); + LDKWatch chain_monitor_conv = *(LDKWatch*)(chain_monitor_ptr); + void* tx_broadcaster_ptr = (void*)(((uint64_t)tx_broadcaster) & ~1); + CHECK_ACCESS(tx_broadcaster_ptr); + LDKBroadcasterInterface tx_broadcaster_conv = *(LDKBroadcasterInterface*)(tx_broadcaster_ptr); + void* logger_ptr = (void*)(((uint64_t)logger) & ~1); + CHECK_ACCESS(logger_ptr); + LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); + void* keys_manager_ptr = (void*)(((uint64_t)keys_manager) & ~1); + CHECK_ACCESS(keys_manager_ptr); + LDKKeysInterface keys_manager_conv = *(LDKKeysInterface*)(keys_manager_ptr); + LDKUserConfig config_conv; + config_conv.inner = (void*)(config & (~1)); + config_conv.is_owned = (config & 1) || (config == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(config_conv); + config_conv = UserConfig_clone(&config_conv); + LDKChainParameters params_conv; + params_conv.inner = (void*)(params & (~1)); + params_conv.is_owned = (params & 1) || (params == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(params_conv); + params_conv = ChainParameters_clone(¶ms_conv); + LDKChannelManager ret_var = ChannelManager_new(fee_est_conv, chain_monitor_conv, tx_broadcaster_conv, logger_conv, keys_manager_conv, config_conv, params_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_payment_point(uint32_t this_ptr, int8_tArray val) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - AcceptChannel_set_payment_point(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_get_current_default_configuration(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKUserConfig ret_var = ChannelManager_get_current_default_configuration(&this_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_delayed_payment_basepoint(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), AcceptChannel_get_delayed_payment_basepoint(&this_ptr_conv).compressed_form, 33); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_create_channel(uint32_t this_arg, int8_tArray their_network_key, int64_t channel_value_satoshis, int64_t push_msat, int64_t user_channel_id, uint32_t override_config) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKPublicKey their_network_key_ref; + CHECK(their_network_key->arr_len == 33); + memcpy(their_network_key_ref.compressed_form, their_network_key->elems, 33); + LDKUserConfig override_config_conv; + override_config_conv.inner = (void*)(override_config & (~1)); + override_config_conv.is_owned = (override_config & 1) || (override_config == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(override_config_conv); + override_config_conv = UserConfig_clone(&override_config_conv); + LDKCResult__u832APIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult__u832APIErrorZ), "LDKCResult__u832APIErrorZ"); + *ret_conv = ChannelManager_create_channel(&this_arg_conv, their_network_key_ref, channel_value_satoshis, push_msat, user_channel_id, override_config_conv); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_delayed_payment_basepoint(uint32_t this_ptr, int8_tArray val) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - AcceptChannel_set_delayed_payment_basepoint(&this_ptr_conv, val_ref); +uint32_tArray __attribute__((visibility("default"))) TS_ChannelManager_list_channels(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKCVec_ChannelDetailsZ ret_var = ChannelManager_list_channels(&this_arg_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t q = 0; q < ret_var.datalen; q++) { + LDKChannelDetails ret_conv_16_var = ret_var.data[q]; + uint64_t ret_conv_16_ref = 0; + CHECK((((uint64_t)ret_conv_16_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_conv_16_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_16_var); + ret_conv_16_ref = (uint64_t)ret_conv_16_var.inner; + if (ret_conv_16_var.is_owned) { + ret_conv_16_ref |= 1; + } + ret_arr_ptr[q] = ret_conv_16_ref; + } + + FREE(ret_var.data); + return ret_arr; } -int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_htlc_basepoint(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), AcceptChannel_get_htlc_basepoint(&this_ptr_conv).compressed_form, 33); +uint32_tArray __attribute__((visibility("default"))) TS_ChannelManager_list_usable_channels(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKCVec_ChannelDetailsZ ret_var = ChannelManager_list_usable_channels(&this_arg_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t q = 0; q < ret_var.datalen; q++) { + LDKChannelDetails ret_conv_16_var = ret_var.data[q]; + uint64_t ret_conv_16_ref = 0; + CHECK((((uint64_t)ret_conv_16_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_conv_16_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_16_var); + ret_conv_16_ref = (uint64_t)ret_conv_16_var.inner; + if (ret_conv_16_var.is_owned) { + ret_conv_16_ref |= 1; + } + ret_arr_ptr[q] = ret_conv_16_ref; + } + + FREE(ret_var.data); return ret_arr; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_htlc_basepoint(uint32_t this_ptr, int8_tArray val) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - AcceptChannel_set_htlc_basepoint(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_close_channel(uint32_t this_arg, int8_tArray channel_id) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char channel_id_arr[32]; + CHECK(channel_id->arr_len == 32); + memcpy(channel_id_arr, channel_id->elems, 32); + unsigned char (*channel_id_ref)[32] = &channel_id_arr; + LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); + *ret_conv = ChannelManager_close_channel(&this_arg_conv, channel_id_ref); + return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_first_per_commitment_point(uint32_t this_ptr) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), AcceptChannel_get_first_per_commitment_point(&this_ptr_conv).compressed_form, 33); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_close_channel_with_target_feerate(uint32_t this_arg, int8_tArray channel_id, int32_t target_feerate_sats_per_1000_weight) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char channel_id_arr[32]; + CHECK(channel_id->arr_len == 32); + memcpy(channel_id_arr, channel_id->elems, 32); + unsigned char (*channel_id_ref)[32] = &channel_id_arr; + LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); + *ret_conv = ChannelManager_close_channel_with_target_feerate(&this_arg_conv, channel_id_ref, target_feerate_sats_per_1000_weight); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_AcceptChannel_set_first_per_commitment_point(uint32_t this_ptr, int8_tArray val) { - LDKAcceptChannel this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - AcceptChannel_set_first_per_commitment_point(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_force_close_channel(uint32_t this_arg, int8_tArray channel_id) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char channel_id_arr[32]; + CHECK(channel_id->arr_len == 32); + memcpy(channel_id_arr, channel_id->elems, 32); + unsigned char (*channel_id_ref)[32] = &channel_id_arr; + LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); + *ret_conv = ChannelManager_force_close_channel(&this_arg_conv, channel_id_ref); + return (uint64_t)ret_conv; } -static inline uint64_t AcceptChannel_clone_ptr(LDKAcceptChannel *NONNULL_PTR arg) { - LDKAcceptChannel ret_var = AcceptChannel_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; +void __attribute__((visibility("default"))) TS_ChannelManager_force_close_all_channels(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + ChannelManager_force_close_all_channels(&this_arg_conv); } -int64_t __attribute__((visibility("default"))) TS_AcceptChannel_clone_ptr(uint32_t arg) { - LDKAcceptChannel arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = AcceptChannel_clone_ptr(&arg_conv); - return ret_val; + +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_send_payment(uint32_t this_arg, uint32_t route, int8_tArray payment_hash, int8_tArray payment_secret) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKRoute route_conv; + route_conv.inner = (void*)(route & (~1)); + route_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(route_conv); + LDKThirtyTwoBytes payment_hash_ref; + CHECK(payment_hash->arr_len == 32); + memcpy(payment_hash_ref.data, payment_hash->elems, 32); + LDKThirtyTwoBytes payment_secret_ref; + CHECK(payment_secret->arr_len == 32); + memcpy(payment_secret_ref.data, payment_secret->elems, 32); + LDKCResult_PaymentIdPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentSendFailureZ), "LDKCResult_PaymentIdPaymentSendFailureZ"); + *ret_conv = ChannelManager_send_payment(&this_arg_conv, &route_conv, payment_hash_ref, payment_secret_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_AcceptChannel_clone(uint32_t orig) { - LDKAcceptChannel orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKAcceptChannel ret_var = AcceptChannel_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_retry_payment(uint32_t this_arg, uint32_t route, int8_tArray payment_id) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKRoute route_conv; + route_conv.inner = (void*)(route & (~1)); + route_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(route_conv); + LDKThirtyTwoBytes payment_id_ref; + CHECK(payment_id->arr_len == 32); + memcpy(payment_id_ref.data, payment_id->elems, 32); + LDKCResult_NonePaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentSendFailureZ), "LDKCResult_NonePaymentSendFailureZ"); + *ret_conv = ChannelManager_retry_payment(&this_arg_conv, &route_conv, payment_id_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_FundingCreated_free(uint32_t this_obj) { - LDKFundingCreated this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - FundingCreated_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_ChannelManager_abandon_payment(uint32_t this_arg, int8_tArray payment_id) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKThirtyTwoBytes payment_id_ref; + CHECK(payment_id->arr_len == 32); + memcpy(payment_id_ref.data, payment_id->elems, 32); + ChannelManager_abandon_payment(&this_arg_conv, payment_id_ref); } -int8_tArray __attribute__((visibility("default"))) TS_FundingCreated_get_temporary_channel_id(uint32_t this_ptr) { - LDKFundingCreated this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *FundingCreated_get_temporary_channel_id(&this_ptr_conv), 32); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_send_spontaneous_payment(uint32_t this_arg, uint32_t route, int8_tArray payment_preimage) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKRoute route_conv; + route_conv.inner = (void*)(route & (~1)); + route_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(route_conv); + LDKThirtyTwoBytes payment_preimage_ref; + CHECK(payment_preimage->arr_len == 32); + memcpy(payment_preimage_ref.data, payment_preimage->elems, 32); + LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ), "LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ"); + *ret_conv = ChannelManager_send_spontaneous_payment(&this_arg_conv, &route_conv, payment_preimage_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_FundingCreated_set_temporary_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKFundingCreated this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - FundingCreated_set_temporary_channel_id(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_funding_transaction_generated(uint32_t this_arg, int8_tArray temporary_channel_id, int8_tArray funding_transaction) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char temporary_channel_id_arr[32]; + CHECK(temporary_channel_id->arr_len == 32); + memcpy(temporary_channel_id_arr, temporary_channel_id->elems, 32); + unsigned char (*temporary_channel_id_ref)[32] = &temporary_channel_id_arr; + LDKTransaction funding_transaction_ref; + funding_transaction_ref.datalen = funding_transaction->arr_len; + funding_transaction_ref.data = MALLOC(funding_transaction_ref.datalen, "LDKTransaction Bytes"); + memcpy(funding_transaction_ref.data, funding_transaction->elems, funding_transaction_ref.datalen); + funding_transaction_ref.data_is_owned = true; + LDKCResult_NoneAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneAPIErrorZ), "LDKCResult_NoneAPIErrorZ"); + *ret_conv = ChannelManager_funding_transaction_generated(&this_arg_conv, temporary_channel_id_ref, funding_transaction_ref); + return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_FundingCreated_get_funding_txid(uint32_t this_ptr) { - LDKFundingCreated this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *FundingCreated_get_funding_txid(&this_ptr_conv), 32); - return ret_arr; +void __attribute__((visibility("default"))) TS_ChannelManager_broadcast_node_announcement(uint32_t this_arg, int8_tArray rgb, int8_tArray alias, uint32_tArray addresses) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKThreeBytes rgb_ref; + CHECK(rgb->arr_len == 3); + memcpy(rgb_ref.data, rgb->elems, 3); + LDKThirtyTwoBytes alias_ref; + CHECK(alias->arr_len == 32); + memcpy(alias_ref.data, alias->elems, 32); + LDKCVec_NetAddressZ addresses_constr; + addresses_constr.datalen = addresses->arr_len; + if (addresses_constr.datalen > 0) + addresses_constr.data = MALLOC(addresses_constr.datalen * sizeof(LDKNetAddress), "LDKCVec_NetAddressZ Elements"); + else + addresses_constr.data = NULL; + uint32_t* addresses_vals = addresses->elems; + for (size_t m = 0; m < addresses_constr.datalen; m++) { + uint32_t addresses_conv_12 = addresses_vals[m]; + void* addresses_conv_12_ptr = (void*)(((uint64_t)addresses_conv_12) & ~1); + CHECK_ACCESS(addresses_conv_12_ptr); + LDKNetAddress addresses_conv_12_conv = *(LDKNetAddress*)(addresses_conv_12_ptr); + addresses_constr.data[m] = addresses_conv_12_conv; + } + ChannelManager_broadcast_node_announcement(&this_arg_conv, rgb_ref, alias_ref, addresses_constr); } -void __attribute__((visibility("default"))) TS_FundingCreated_set_funding_txid(uint32_t this_ptr, int8_tArray val) { - LDKFundingCreated this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - FundingCreated_set_funding_txid(&this_ptr_conv, val_ref); +void __attribute__((visibility("default"))) TS_ChannelManager_process_pending_htlc_forwards(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + ChannelManager_process_pending_htlc_forwards(&this_arg_conv); } -int16_t __attribute__((visibility("default"))) TS_FundingCreated_get_funding_output_index(uint32_t this_ptr) { - LDKFundingCreated this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = FundingCreated_get_funding_output_index(&this_ptr_conv); +void __attribute__((visibility("default"))) TS_ChannelManager_timer_tick_occurred(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + ChannelManager_timer_tick_occurred(&this_arg_conv); +} + +jboolean __attribute__((visibility("default"))) TS_ChannelManager_fail_htlc_backwards(uint32_t this_arg, int8_tArray payment_hash) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char payment_hash_arr[32]; + CHECK(payment_hash->arr_len == 32); + memcpy(payment_hash_arr, payment_hash->elems, 32); + unsigned char (*payment_hash_ref)[32] = &payment_hash_arr; + jboolean ret_val = ChannelManager_fail_htlc_backwards(&this_arg_conv, payment_hash_ref); return ret_val; } -void __attribute__((visibility("default"))) TS_FundingCreated_set_funding_output_index(uint32_t this_ptr, int16_t val) { - LDKFundingCreated this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - FundingCreated_set_funding_output_index(&this_ptr_conv, val); +jboolean __attribute__((visibility("default"))) TS_ChannelManager_claim_funds(uint32_t this_arg, int8_tArray payment_preimage) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKThirtyTwoBytes payment_preimage_ref; + CHECK(payment_preimage->arr_len == 32); + memcpy(payment_preimage_ref.data, payment_preimage->elems, 32); + jboolean ret_val = ChannelManager_claim_funds(&this_arg_conv, payment_preimage_ref); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_FundingCreated_get_signature(uint32_t this_ptr) { - LDKFundingCreated this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), FundingCreated_get_signature(&this_ptr_conv).compact_form, 64); +int8_tArray __attribute__((visibility("default"))) TS_ChannelManager_get_our_node_id(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, ChannelManager_get_our_node_id(&this_arg_conv).compressed_form, 33); return ret_arr; } -void __attribute__((visibility("default"))) TS_FundingCreated_set_signature(uint32_t this_ptr, int8_tArray val) { - LDKFundingCreated this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSignature val_ref; - CHECK(*((uint32_t*)val) == 64); - memcpy(val_ref.compact_form, (uint8_t*)(val + 4), 64); - FundingCreated_set_signature(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_create_inbound_payment(uint32_t this_arg, uint32_t min_value_msat, int32_t invoice_expiry_delta_secs) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + void* min_value_msat_ptr = (void*)(((uint64_t)min_value_msat) & ~1); + CHECK_ACCESS(min_value_msat_ptr); + LDKCOption_u64Z min_value_msat_conv = *(LDKCOption_u64Z*)(min_value_msat_ptr); + min_value_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)min_value_msat) & ~1)); + LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ"); + *ret_conv = ChannelManager_create_inbound_payment(&this_arg_conv, min_value_msat_conv, invoice_expiry_delta_secs); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_FundingCreated_new(int8_tArray temporary_channel_id_arg, int8_tArray funding_txid_arg, int16_t funding_output_index_arg, int8_tArray signature_arg) { - LDKThirtyTwoBytes temporary_channel_id_arg_ref; - CHECK(*((uint32_t*)temporary_channel_id_arg) == 32); - memcpy(temporary_channel_id_arg_ref.data, (uint8_t*)(temporary_channel_id_arg + 4), 32); - LDKThirtyTwoBytes funding_txid_arg_ref; - CHECK(*((uint32_t*)funding_txid_arg) == 32); - memcpy(funding_txid_arg_ref.data, (uint8_t*)(funding_txid_arg + 4), 32); - LDKSignature signature_arg_ref; - CHECK(*((uint32_t*)signature_arg) == 64); - memcpy(signature_arg_ref.compact_form, (uint8_t*)(signature_arg + 4), 64); - LDKFundingCreated ret_var = FundingCreated_new(temporary_channel_id_arg_ref, funding_txid_arg_ref, funding_output_index_arg, signature_arg_ref); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_create_inbound_payment_legacy(uint32_t this_arg, uint32_t min_value_msat, int32_t invoice_expiry_delta_secs) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + void* min_value_msat_ptr = (void*)(((uint64_t)min_value_msat) & ~1); + CHECK_ACCESS(min_value_msat_ptr); + LDKCOption_u64Z min_value_msat_conv = *(LDKCOption_u64Z*)(min_value_msat_ptr); + min_value_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)min_value_msat) & ~1)); + LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ), "LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ"); + *ret_conv = ChannelManager_create_inbound_payment_legacy(&this_arg_conv, min_value_msat_conv, invoice_expiry_delta_secs); + return (uint64_t)ret_conv; } -static inline uint64_t FundingCreated_clone_ptr(LDKFundingCreated *NONNULL_PTR arg) { - LDKFundingCreated ret_var = FundingCreated_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_create_inbound_payment_for_hash(uint32_t this_arg, int8_tArray payment_hash, uint32_t min_value_msat, int32_t invoice_expiry_delta_secs) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKThirtyTwoBytes payment_hash_ref; + CHECK(payment_hash->arr_len == 32); + memcpy(payment_hash_ref.data, payment_hash->elems, 32); + void* min_value_msat_ptr = (void*)(((uint64_t)min_value_msat) & ~1); + CHECK_ACCESS(min_value_msat_ptr); + LDKCOption_u64Z min_value_msat_conv = *(LDKCOption_u64Z*)(min_value_msat_ptr); + min_value_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)min_value_msat) & ~1)); + LDKCResult_PaymentSecretNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretNoneZ), "LDKCResult_PaymentSecretNoneZ"); + *ret_conv = ChannelManager_create_inbound_payment_for_hash(&this_arg_conv, payment_hash_ref, min_value_msat_conv, invoice_expiry_delta_secs); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_FundingCreated_clone_ptr(uint32_t arg) { - LDKFundingCreated arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = FundingCreated_clone_ptr(&arg_conv); - return ret_val; + +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_create_inbound_payment_for_hash_legacy(uint32_t this_arg, int8_tArray payment_hash, uint32_t min_value_msat, int32_t invoice_expiry_delta_secs) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKThirtyTwoBytes payment_hash_ref; + CHECK(payment_hash->arr_len == 32); + memcpy(payment_hash_ref.data, payment_hash->elems, 32); + void* min_value_msat_ptr = (void*)(((uint64_t)min_value_msat) & ~1); + CHECK_ACCESS(min_value_msat_ptr); + LDKCOption_u64Z min_value_msat_conv = *(LDKCOption_u64Z*)(min_value_msat_ptr); + min_value_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)min_value_msat) & ~1)); + LDKCResult_PaymentSecretAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentSecretAPIErrorZ), "LDKCResult_PaymentSecretAPIErrorZ"); + *ret_conv = ChannelManager_create_inbound_payment_for_hash_legacy(&this_arg_conv, payment_hash_ref, min_value_msat_conv, invoice_expiry_delta_secs); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_FundingCreated_clone(uint32_t orig) { - LDKFundingCreated orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKFundingCreated ret_var = FundingCreated_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_get_payment_preimage(uint32_t this_arg, int8_tArray payment_hash, int8_tArray payment_secret) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKThirtyTwoBytes payment_hash_ref; + CHECK(payment_hash->arr_len == 32); + memcpy(payment_hash_ref.data, payment_hash->elems, 32); + LDKThirtyTwoBytes payment_secret_ref; + CHECK(payment_secret->arr_len == 32); + memcpy(payment_secret_ref.data, payment_secret->elems, 32); + LDKCResult_PaymentPreimageAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentPreimageAPIErrorZ), "LDKCResult_PaymentPreimageAPIErrorZ"); + *ret_conv = ChannelManager_get_payment_preimage(&this_arg_conv, payment_hash_ref, payment_secret_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_FundingSigned_free(uint32_t this_obj) { - LDKFundingSigned this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - FundingSigned_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_as_MessageSendEventsProvider(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKMessageSendEventsProvider* ret_ret = MALLOC(sizeof(LDKMessageSendEventsProvider), "LDKMessageSendEventsProvider"); + *ret_ret = ChannelManager_as_MessageSendEventsProvider(&this_arg_conv); + return (uint64_t)ret_ret; } -int8_tArray __attribute__((visibility("default"))) TS_FundingSigned_get_channel_id(uint32_t this_ptr) { - LDKFundingSigned this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *FundingSigned_get_channel_id(&this_ptr_conv), 32); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_as_EventsProvider(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKEventsProvider* ret_ret = MALLOC(sizeof(LDKEventsProvider), "LDKEventsProvider"); + *ret_ret = ChannelManager_as_EventsProvider(&this_arg_conv); + return (uint64_t)ret_ret; } -void __attribute__((visibility("default"))) TS_FundingSigned_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKFundingSigned this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - FundingSigned_set_channel_id(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_as_Listen(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKListen* ret_ret = MALLOC(sizeof(LDKListen), "LDKListen"); + *ret_ret = ChannelManager_as_Listen(&this_arg_conv); + return (uint64_t)ret_ret; } -int8_tArray __attribute__((visibility("default"))) TS_FundingSigned_get_signature(uint32_t this_ptr) { - LDKFundingSigned this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), FundingSigned_get_signature(&this_ptr_conv).compact_form, 64); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_as_Confirm(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKConfirm* ret_ret = MALLOC(sizeof(LDKConfirm), "LDKConfirm"); + *ret_ret = ChannelManager_as_Confirm(&this_arg_conv); + return (uint64_t)ret_ret; } -void __attribute__((visibility("default"))) TS_FundingSigned_set_signature(uint32_t this_ptr, int8_tArray val) { - LDKFundingSigned this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSignature val_ref; - CHECK(*((uint32_t*)val) == 64); - memcpy(val_ref.compact_form, (uint8_t*)(val + 4), 64); - FundingSigned_set_signature(&this_ptr_conv, val_ref); +void __attribute__((visibility("default"))) TS_ChannelManager_await_persistable_update(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + ChannelManager_await_persistable_update(&this_arg_conv); } -uint32_t __attribute__((visibility("default"))) TS_FundingSigned_new(int8_tArray channel_id_arg, int8_tArray signature_arg) { - LDKThirtyTwoBytes channel_id_arg_ref; - CHECK(*((uint32_t*)channel_id_arg) == 32); - memcpy(channel_id_arg_ref.data, (uint8_t*)(channel_id_arg + 4), 32); - LDKSignature signature_arg_ref; - CHECK(*((uint32_t*)signature_arg) == 64); - memcpy(signature_arg_ref.compact_form, (uint8_t*)(signature_arg + 4), 64); - LDKFundingSigned ret_var = FundingSigned_new(channel_id_arg_ref, signature_arg_ref); +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_current_best_block(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKBestBlock ret_var = ChannelManager_current_best_block(&this_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -23830,212 +21795,147 @@ uint32_t __attribute__((visibility("default"))) TS_FundingSigned_new(int8_tArra return ret_ref; } -static inline uint64_t FundingSigned_clone_ptr(LDKFundingSigned *NONNULL_PTR arg) { - LDKFundingSigned ret_var = FundingSigned_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_FundingSigned_clone_ptr(uint32_t arg) { - LDKFundingSigned arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = FundingSigned_clone_ptr(&arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_ChannelManager_as_ChannelMessageHandler(uint32_t this_arg) { + LDKChannelManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKChannelMessageHandler* ret_ret = MALLOC(sizeof(LDKChannelMessageHandler), "LDKChannelMessageHandler"); + *ret_ret = ChannelManager_as_ChannelMessageHandler(&this_arg_conv); + return (uint64_t)ret_ret; } -uint32_t __attribute__((visibility("default"))) TS_FundingSigned_clone(uint32_t orig) { - LDKFundingSigned orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKFundingSigned ret_var = FundingSigned_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_ChannelManager_write(uint32_t obj) { + LDKChannelManager obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ChannelManager_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -void __attribute__((visibility("default"))) TS_FundingLocked_free(uint32_t this_obj) { - LDKFundingLocked this_obj_conv; +void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_free(uint32_t this_obj) { + LDKChannelManagerReadArgs this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - FundingLocked_free(this_obj_conv); + ChannelManagerReadArgs_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_FundingLocked_get_channel_id(uint32_t this_ptr) { - LDKFundingLocked this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_get_keys_manager(uint32_t this_ptr) { + LDKChannelManagerReadArgs this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *FundingLocked_get_channel_id(&this_ptr_conv), 32); - return ret_arr; + // WARNING: This object doesn't live past this scope, needs clone! + uint64_t ret_ret = ((uint64_t)ChannelManagerReadArgs_get_keys_manager(&this_ptr_conv)) | 1; + return ret_ret; } -void __attribute__((visibility("default"))) TS_FundingLocked_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKFundingLocked this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_set_keys_manager(uint32_t this_ptr, uint32_t val) { + LDKChannelManagerReadArgs this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - FundingLocked_set_channel_id(&this_ptr_conv, val_ref); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKKeysInterface val_conv = *(LDKKeysInterface*)(val_ptr); + ChannelManagerReadArgs_set_keys_manager(&this_ptr_conv, val_conv); } -int8_tArray __attribute__((visibility("default"))) TS_FundingLocked_get_next_per_commitment_point(uint32_t this_ptr) { - LDKFundingLocked this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_get_fee_estimator(uint32_t this_ptr) { + LDKChannelManagerReadArgs this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), FundingLocked_get_next_per_commitment_point(&this_ptr_conv).compressed_form, 33); - return ret_arr; + // WARNING: This object doesn't live past this scope, needs clone! + uint64_t ret_ret = ((uint64_t)ChannelManagerReadArgs_get_fee_estimator(&this_ptr_conv)) | 1; + return ret_ret; } -void __attribute__((visibility("default"))) TS_FundingLocked_set_next_per_commitment_point(uint32_t this_ptr, int8_tArray val) { - LDKFundingLocked this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_set_fee_estimator(uint32_t this_ptr, uint32_t val) { + LDKChannelManagerReadArgs this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - FundingLocked_set_next_per_commitment_point(&this_ptr_conv, val_ref); -} - -uint32_t __attribute__((visibility("default"))) TS_FundingLocked_new(int8_tArray channel_id_arg, int8_tArray next_per_commitment_point_arg) { - LDKThirtyTwoBytes channel_id_arg_ref; - CHECK(*((uint32_t*)channel_id_arg) == 32); - memcpy(channel_id_arg_ref.data, (uint8_t*)(channel_id_arg + 4), 32); - LDKPublicKey next_per_commitment_point_arg_ref; - CHECK(*((uint32_t*)next_per_commitment_point_arg) == 33); - memcpy(next_per_commitment_point_arg_ref.compressed_form, (uint8_t*)(next_per_commitment_point_arg + 4), 33); - LDKFundingLocked ret_var = FundingLocked_new(channel_id_arg_ref, next_per_commitment_point_arg_ref); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKFeeEstimator val_conv = *(LDKFeeEstimator*)(val_ptr); + ChannelManagerReadArgs_set_fee_estimator(&this_ptr_conv, val_conv); } -static inline uint64_t FundingLocked_clone_ptr(LDKFundingLocked *NONNULL_PTR arg) { - LDKFundingLocked ret_var = FundingLocked_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_FundingLocked_clone_ptr(uint32_t arg) { - LDKFundingLocked arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = FundingLocked_clone_ptr(&arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_get_chain_monitor(uint32_t this_ptr) { + LDKChannelManagerReadArgs this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + // WARNING: This object doesn't live past this scope, needs clone! + uint64_t ret_ret = ((uint64_t)ChannelManagerReadArgs_get_chain_monitor(&this_ptr_conv)) | 1; + return ret_ret; } -uint32_t __attribute__((visibility("default"))) TS_FundingLocked_clone(uint32_t orig) { - LDKFundingLocked orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKFundingLocked ret_var = FundingLocked_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_set_chain_monitor(uint32_t this_ptr, uint32_t val) { + LDKChannelManagerReadArgs this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKWatch val_conv = *(LDKWatch*)(val_ptr); + ChannelManagerReadArgs_set_chain_monitor(&this_ptr_conv, val_conv); } -void __attribute__((visibility("default"))) TS_Shutdown_free(uint32_t this_obj) { - LDKShutdown this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - Shutdown_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_get_tx_broadcaster(uint32_t this_ptr) { + LDKChannelManagerReadArgs this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + // WARNING: This object doesn't live past this scope, needs clone! + uint64_t ret_ret = ((uint64_t)ChannelManagerReadArgs_get_tx_broadcaster(&this_ptr_conv)) | 1; + return ret_ret; } - -int8_tArray __attribute__((visibility("default"))) TS_Shutdown_get_channel_id(uint32_t this_ptr) { - LDKShutdown this_ptr_conv; + +void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_set_tx_broadcaster(uint32_t this_ptr, uint32_t val) { + LDKChannelManagerReadArgs this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *Shutdown_get_channel_id(&this_ptr_conv), 32); - return ret_arr; + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKBroadcasterInterface val_conv = *(LDKBroadcasterInterface*)(val_ptr); + ChannelManagerReadArgs_set_tx_broadcaster(&this_ptr_conv, val_conv); } -void __attribute__((visibility("default"))) TS_Shutdown_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKShutdown this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_get_logger(uint32_t this_ptr) { + LDKChannelManagerReadArgs this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - Shutdown_set_channel_id(&this_ptr_conv, val_ref); + // WARNING: This object doesn't live past this scope, needs clone! + uint64_t ret_ret = ((uint64_t)ChannelManagerReadArgs_get_logger(&this_ptr_conv)) | 1; + return ret_ret; } -int8_tArray __attribute__((visibility("default"))) TS_Shutdown_get_scriptpubkey(uint32_t this_ptr) { - LDKShutdown this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_set_logger(uint32_t this_ptr, uint32_t val) { + LDKChannelManagerReadArgs this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKu8slice ret_var = Shutdown_get_scriptpubkey(&this_ptr_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - return ret_arr; + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKLogger val_conv = *(LDKLogger*)(val_ptr); + ChannelManagerReadArgs_set_logger(&this_ptr_conv, val_conv); } -void __attribute__((visibility("default"))) TS_Shutdown_set_scriptpubkey(uint32_t this_ptr, int8_tArray val) { - LDKShutdown this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_get_default_config(uint32_t this_ptr) { + LDKChannelManagerReadArgs this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_u8Z val_ref; - val_ref.datalen = *((uint32_t*)val); - val_ref.data = MALLOC(val_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(val_ref.data, (uint8_t*)(val + 4), val_ref.datalen); - Shutdown_set_scriptpubkey(&this_ptr_conv, val_ref); -} - -uint32_t __attribute__((visibility("default"))) TS_Shutdown_new(int8_tArray channel_id_arg, int8_tArray scriptpubkey_arg) { - LDKThirtyTwoBytes channel_id_arg_ref; - CHECK(*((uint32_t*)channel_id_arg) == 32); - memcpy(channel_id_arg_ref.data, (uint8_t*)(channel_id_arg + 4), 32); - LDKCVec_u8Z scriptpubkey_arg_ref; - scriptpubkey_arg_ref.datalen = *((uint32_t*)scriptpubkey_arg); - scriptpubkey_arg_ref.data = MALLOC(scriptpubkey_arg_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(scriptpubkey_arg_ref.data, (uint8_t*)(scriptpubkey_arg + 4), scriptpubkey_arg_ref.datalen); - LDKShutdown ret_var = Shutdown_new(channel_id_arg_ref, scriptpubkey_arg_ref); + LDKUserConfig ret_var = ChannelManagerReadArgs_get_default_config(&this_ptr_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -24047,33 +21947,56 @@ uint32_t __attribute__((visibility("default"))) TS_Shutdown_new(int8_tArray cha return ret_ref; } -static inline uint64_t Shutdown_clone_ptr(LDKShutdown *NONNULL_PTR arg) { - LDKShutdown ret_var = Shutdown_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_Shutdown_clone_ptr(uint32_t arg) { - LDKShutdown arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = Shutdown_clone_ptr(&arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_set_default_config(uint32_t this_ptr, uint32_t val) { + LDKChannelManagerReadArgs this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKUserConfig val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = UserConfig_clone(&val_conv); + ChannelManagerReadArgs_set_default_config(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_Shutdown_clone(uint32_t orig) { - LDKShutdown orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKShutdown ret_var = Shutdown_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelManagerReadArgs_new(uint32_t keys_manager, uint32_t fee_estimator, uint32_t chain_monitor, uint32_t tx_broadcaster, uint32_t logger, uint32_t default_config, uint32_tArray channel_monitors) { + void* keys_manager_ptr = (void*)(((uint64_t)keys_manager) & ~1); + CHECK_ACCESS(keys_manager_ptr); + LDKKeysInterface keys_manager_conv = *(LDKKeysInterface*)(keys_manager_ptr); + void* fee_estimator_ptr = (void*)(((uint64_t)fee_estimator) & ~1); + CHECK_ACCESS(fee_estimator_ptr); + LDKFeeEstimator fee_estimator_conv = *(LDKFeeEstimator*)(fee_estimator_ptr); + void* chain_monitor_ptr = (void*)(((uint64_t)chain_monitor) & ~1); + CHECK_ACCESS(chain_monitor_ptr); + LDKWatch chain_monitor_conv = *(LDKWatch*)(chain_monitor_ptr); + void* tx_broadcaster_ptr = (void*)(((uint64_t)tx_broadcaster) & ~1); + CHECK_ACCESS(tx_broadcaster_ptr); + LDKBroadcasterInterface tx_broadcaster_conv = *(LDKBroadcasterInterface*)(tx_broadcaster_ptr); + void* logger_ptr = (void*)(((uint64_t)logger) & ~1); + CHECK_ACCESS(logger_ptr); + LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); + LDKUserConfig default_config_conv; + default_config_conv.inner = (void*)(default_config & (~1)); + default_config_conv.is_owned = (default_config & 1) || (default_config == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(default_config_conv); + default_config_conv = UserConfig_clone(&default_config_conv); + LDKCVec_ChannelMonitorZ channel_monitors_constr; + channel_monitors_constr.datalen = channel_monitors->arr_len; + if (channel_monitors_constr.datalen > 0) + channel_monitors_constr.data = MALLOC(channel_monitors_constr.datalen * sizeof(LDKChannelMonitor), "LDKCVec_ChannelMonitorZ Elements"); + else + channel_monitors_constr.data = NULL; + uint32_t* channel_monitors_vals = channel_monitors->elems; + for (size_t q = 0; q < channel_monitors_constr.datalen; q++) { + uint32_t channel_monitors_conv_16 = channel_monitors_vals[q]; + LDKChannelMonitor channel_monitors_conv_16_conv; + channel_monitors_conv_16_conv.inner = (void*)(channel_monitors_conv_16 & (~1)); + channel_monitors_conv_16_conv.is_owned = (channel_monitors_conv_16 & 1) || (channel_monitors_conv_16 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_monitors_conv_16_conv); + channel_monitors_constr.data[q] = channel_monitors_conv_16_conv; + } + LDKChannelManagerReadArgs ret_var = ChannelManagerReadArgs_new(keys_manager_conv, fee_estimator_conv, chain_monitor_conv, tx_broadcaster_conv, logger_conv, default_config_conv, channel_monitors_constr); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -24085,63 +22008,30 @@ uint32_t __attribute__((visibility("default"))) TS_Shutdown_clone(uint32_t orig return ret_ref; } -void __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_free(uint32_t this_obj) { - LDKClosingSignedFeeRange this_obj_conv; +uint32_t __attribute__((visibility("default"))) TS_C2Tuple_BlockHashChannelManagerZ_read(int8_tArray ser, uint32_t arg) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKChannelManagerReadArgs arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = (arg & 1) || (arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + // Warning: we need a move here but no clone is available for LDKChannelManagerReadArgs + LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ), "LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ"); + *ret_conv = C2Tuple_BlockHashChannelManagerZ_read(ser_ref, arg_conv); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_DecodeError_free(uint32_t this_obj) { + LDKDecodeError this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ClosingSignedFeeRange_free(this_obj_conv); -} - -int64_t __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_get_min_fee_satoshis(uint32_t this_ptr) { - LDKClosingSignedFeeRange this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ClosingSignedFeeRange_get_min_fee_satoshis(&this_ptr_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_set_min_fee_satoshis(uint32_t this_ptr, int64_t val) { - LDKClosingSignedFeeRange this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ClosingSignedFeeRange_set_min_fee_satoshis(&this_ptr_conv, val); -} - -int64_t __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_get_max_fee_satoshis(uint32_t this_ptr) { - LDKClosingSignedFeeRange this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ClosingSignedFeeRange_get_max_fee_satoshis(&this_ptr_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_set_max_fee_satoshis(uint32_t this_ptr, int64_t val) { - LDKClosingSignedFeeRange this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ClosingSignedFeeRange_set_max_fee_satoshis(&this_ptr_conv, val); -} - -uint32_t __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_new(int64_t min_fee_satoshis_arg, int64_t max_fee_satoshis_arg) { - LDKClosingSignedFeeRange ret_var = ClosingSignedFeeRange_new(min_fee_satoshis_arg, max_fee_satoshis_arg); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + DecodeError_free(this_obj_conv); } -static inline uint64_t ClosingSignedFeeRange_clone_ptr(LDKClosingSignedFeeRange *NONNULL_PTR arg) { - LDKClosingSignedFeeRange ret_var = ClosingSignedFeeRange_clone(arg); +static inline uint64_t DecodeError_clone_ptr(LDKDecodeError *NONNULL_PTR arg) { + LDKDecodeError ret_var = DecodeError_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -24152,21 +22042,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_clone_ptr(uint32_t arg) { - LDKClosingSignedFeeRange arg_conv; +int64_t __attribute__((visibility("default"))) TS_DecodeError_clone_ptr(uint32_t arg) { + LDKDecodeError arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ClosingSignedFeeRange_clone_ptr(&arg_conv); + int64_t ret_val = DecodeError_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_clone(uint32_t orig) { - LDKClosingSignedFeeRange orig_conv; +uint32_t __attribute__((visibility("default"))) TS_DecodeError_clone(uint32_t orig) { + LDKDecodeError orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKClosingSignedFeeRange ret_var = ClosingSignedFeeRange_clone(&orig_conv); + LDKDecodeError ret_var = DecodeError_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -24178,118 +22068,51 @@ uint32_t __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_clone( return ret_ref; } -void __attribute__((visibility("default"))) TS_ClosingSigned_free(uint32_t this_obj) { - LDKClosingSigned this_obj_conv; +void __attribute__((visibility("default"))) TS_Init_free(uint32_t this_obj) { + LDKInit this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ClosingSigned_free(this_obj_conv); -} - -int8_tArray __attribute__((visibility("default"))) TS_ClosingSigned_get_channel_id(uint32_t this_ptr) { - LDKClosingSigned this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *ClosingSigned_get_channel_id(&this_ptr_conv), 32); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_ClosingSigned_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKClosingSigned this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - ClosingSigned_set_channel_id(&this_ptr_conv, val_ref); -} - -int64_t __attribute__((visibility("default"))) TS_ClosingSigned_get_fee_satoshis(uint32_t this_ptr) { - LDKClosingSigned this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ClosingSigned_get_fee_satoshis(&this_ptr_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_ClosingSigned_set_fee_satoshis(uint32_t this_ptr, int64_t val) { - LDKClosingSigned this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ClosingSigned_set_fee_satoshis(&this_ptr_conv, val); -} - -int8_tArray __attribute__((visibility("default"))) TS_ClosingSigned_get_signature(uint32_t this_ptr) { - LDKClosingSigned this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ClosingSigned_get_signature(&this_ptr_conv).compact_form, 64); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_ClosingSigned_set_signature(uint32_t this_ptr, int8_tArray val) { - LDKClosingSigned this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSignature val_ref; - CHECK(*((uint32_t*)val) == 64); - memcpy(val_ref.compact_form, (uint8_t*)(val + 4), 64); - ClosingSigned_set_signature(&this_ptr_conv, val_ref); + Init_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_ClosingSigned_get_fee_range(uint32_t this_ptr) { - LDKClosingSigned this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_Init_get_features(uint32_t this_ptr) { + LDKInit this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKClosingSignedFeeRange ret_var = ClosingSigned_get_fee_range(&this_ptr_conv); + LDKInitFeatures ret_var = Init_get_features(&this_ptr_conv); uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } return ret_ref; } -void __attribute__((visibility("default"))) TS_ClosingSigned_set_fee_range(uint32_t this_ptr, uint32_t val) { - LDKClosingSigned this_ptr_conv; +void __attribute__((visibility("default"))) TS_Init_set_features(uint32_t this_ptr, uint32_t val) { + LDKInit this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKClosingSignedFeeRange val_conv; + LDKInitFeatures val_conv; val_conv.inner = (void*)(val & (~1)); val_conv.is_owned = (val & 1) || (val == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = ClosingSignedFeeRange_clone(&val_conv); - ClosingSigned_set_fee_range(&this_ptr_conv, val_conv); + val_conv = InitFeatures_clone(&val_conv); + Init_set_features(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_ClosingSigned_new(int8_tArray channel_id_arg, int64_t fee_satoshis_arg, int8_tArray signature_arg, uint32_t fee_range_arg) { - LDKThirtyTwoBytes channel_id_arg_ref; - CHECK(*((uint32_t*)channel_id_arg) == 32); - memcpy(channel_id_arg_ref.data, (uint8_t*)(channel_id_arg + 4), 32); - LDKSignature signature_arg_ref; - CHECK(*((uint32_t*)signature_arg) == 64); - memcpy(signature_arg_ref.compact_form, (uint8_t*)(signature_arg + 4), 64); - LDKClosingSignedFeeRange fee_range_arg_conv; - fee_range_arg_conv.inner = (void*)(fee_range_arg & (~1)); - fee_range_arg_conv.is_owned = (fee_range_arg & 1) || (fee_range_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(fee_range_arg_conv); - fee_range_arg_conv = ClosingSignedFeeRange_clone(&fee_range_arg_conv); - LDKClosingSigned ret_var = ClosingSigned_new(channel_id_arg_ref, fee_satoshis_arg, signature_arg_ref, fee_range_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_Init_new(uint32_t features_arg) { + LDKInitFeatures features_arg_conv; + features_arg_conv.inner = (void*)(features_arg & (~1)); + features_arg_conv.is_owned = (features_arg & 1) || (features_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(features_arg_conv); + features_arg_conv = InitFeatures_clone(&features_arg_conv); + LDKInit ret_var = Init_new(features_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -24301,8 +22124,8 @@ uint32_t __attribute__((visibility("default"))) TS_ClosingSigned_new(int8_tArra return ret_ref; } -static inline uint64_t ClosingSigned_clone_ptr(LDKClosingSigned *NONNULL_PTR arg) { - LDKClosingSigned ret_var = ClosingSigned_clone(arg); +static inline uint64_t Init_clone_ptr(LDKInit *NONNULL_PTR arg) { + LDKInit ret_var = Init_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -24313,21 +22136,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ClosingSigned_clone_ptr(uint32_t arg) { - LDKClosingSigned arg_conv; +int64_t __attribute__((visibility("default"))) TS_Init_clone_ptr(uint32_t arg) { + LDKInit arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ClosingSigned_clone_ptr(&arg_conv); + int64_t ret_val = Init_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ClosingSigned_clone(uint32_t orig) { - LDKClosingSigned orig_conv; +uint32_t __attribute__((visibility("default"))) TS_Init_clone(uint32_t orig) { + LDKInit orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKClosingSigned ret_var = ClosingSigned_clone(&orig_conv); + LDKInit ret_var = Init_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -24339,109 +22162,167 @@ uint32_t __attribute__((visibility("default"))) TS_ClosingSigned_clone(uint32_t return ret_ref; } -void __attribute__((visibility("default"))) TS_UpdateAddHTLC_free(uint32_t this_obj) { - LDKUpdateAddHTLC this_obj_conv; +void __attribute__((visibility("default"))) TS_ErrorMessage_free(uint32_t this_obj) { + LDKErrorMessage this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - UpdateAddHTLC_free(this_obj_conv); + ErrorMessage_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_UpdateAddHTLC_get_channel_id(uint32_t this_ptr) { - LDKUpdateAddHTLC this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_ErrorMessage_get_channel_id(uint32_t this_ptr) { + LDKErrorMessage this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *UpdateAddHTLC_get_channel_id(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *ErrorMessage_get_channel_id(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_UpdateAddHTLC_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKUpdateAddHTLC this_ptr_conv; +void __attribute__((visibility("default"))) TS_ErrorMessage_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKErrorMessage this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - UpdateAddHTLC_set_channel_id(&this_ptr_conv, val_ref); + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + ErrorMessage_set_channel_id(&this_ptr_conv, val_ref); } -int64_t __attribute__((visibility("default"))) TS_UpdateAddHTLC_get_htlc_id(uint32_t this_ptr) { - LDKUpdateAddHTLC this_ptr_conv; +jstring __attribute__((visibility("default"))) TS_ErrorMessage_get_data(uint32_t this_ptr) { + LDKErrorMessage this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = UpdateAddHTLC_get_htlc_id(&this_ptr_conv); - return ret_val; + LDKStr ret_str = ErrorMessage_get_data(&this_ptr_conv); + jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); + Str_free(ret_str); + return ret_conv; } -void __attribute__((visibility("default"))) TS_UpdateAddHTLC_set_htlc_id(uint32_t this_ptr, int64_t val) { - LDKUpdateAddHTLC this_ptr_conv; +void __attribute__((visibility("default"))) TS_ErrorMessage_set_data(uint32_t this_ptr, jstring val) { + LDKErrorMessage this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UpdateAddHTLC_set_htlc_id(&this_ptr_conv, val); + LDKStr val_conv = str_ref_to_owned_c(val); + ErrorMessage_set_data(&this_ptr_conv, val_conv); } -int64_t __attribute__((visibility("default"))) TS_UpdateAddHTLC_get_amount_msat(uint32_t this_ptr) { - LDKUpdateAddHTLC this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = UpdateAddHTLC_get_amount_msat(&this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_ErrorMessage_new(int8_tArray channel_id_arg, jstring data_arg) { + LDKThirtyTwoBytes channel_id_arg_ref; + CHECK(channel_id_arg->arr_len == 32); + memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); + LDKStr data_arg_conv = str_ref_to_owned_c(data_arg); + LDKErrorMessage ret_var = ErrorMessage_new(channel_id_arg_ref, data_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +static inline uint64_t ErrorMessage_clone_ptr(LDKErrorMessage *NONNULL_PTR arg) { + LDKErrorMessage ret_var = ErrorMessage_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_ErrorMessage_clone_ptr(uint32_t arg) { + LDKErrorMessage arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ErrorMessage_clone_ptr(&arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_UpdateAddHTLC_set_amount_msat(uint32_t this_ptr, int64_t val) { - LDKUpdateAddHTLC this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UpdateAddHTLC_set_amount_msat(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_ErrorMessage_clone(uint32_t orig) { + LDKErrorMessage orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKErrorMessage ret_var = ErrorMessage_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_UpdateAddHTLC_get_payment_hash(uint32_t this_ptr) { - LDKUpdateAddHTLC this_ptr_conv; +void __attribute__((visibility("default"))) TS_Ping_free(uint32_t this_obj) { + LDKPing this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + Ping_free(this_obj_conv); +} + +int16_t __attribute__((visibility("default"))) TS_Ping_get_ponglen(uint32_t this_ptr) { + LDKPing this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *UpdateAddHTLC_get_payment_hash(&this_ptr_conv), 32); - return ret_arr; + int16_t ret_val = Ping_get_ponglen(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_UpdateAddHTLC_set_payment_hash(uint32_t this_ptr, int8_tArray val) { - LDKUpdateAddHTLC this_ptr_conv; +void __attribute__((visibility("default"))) TS_Ping_set_ponglen(uint32_t this_ptr, int16_t val) { + LDKPing this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - UpdateAddHTLC_set_payment_hash(&this_ptr_conv, val_ref); + Ping_set_ponglen(&this_ptr_conv, val); } -int32_t __attribute__((visibility("default"))) TS_UpdateAddHTLC_get_cltv_expiry(uint32_t this_ptr) { - LDKUpdateAddHTLC this_ptr_conv; +int16_t __attribute__((visibility("default"))) TS_Ping_get_byteslen(uint32_t this_ptr) { + LDKPing this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = UpdateAddHTLC_get_cltv_expiry(&this_ptr_conv); + int16_t ret_val = Ping_get_byteslen(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_UpdateAddHTLC_set_cltv_expiry(uint32_t this_ptr, int32_t val) { - LDKUpdateAddHTLC this_ptr_conv; +void __attribute__((visibility("default"))) TS_Ping_set_byteslen(uint32_t this_ptr, int16_t val) { + LDKPing this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UpdateAddHTLC_set_cltv_expiry(&this_ptr_conv, val); + Ping_set_byteslen(&this_ptr_conv, val); } -static inline uint64_t UpdateAddHTLC_clone_ptr(LDKUpdateAddHTLC *NONNULL_PTR arg) { - LDKUpdateAddHTLC ret_var = UpdateAddHTLC_clone(arg); +uint32_t __attribute__((visibility("default"))) TS_Ping_new(int16_t ponglen_arg, int16_t byteslen_arg) { + LDKPing ret_var = Ping_new(ponglen_arg, byteslen_arg); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +static inline uint64_t Ping_clone_ptr(LDKPing *NONNULL_PTR arg) { + LDKPing ret_var = Ping_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -24452,21 +22333,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_UpdateAddHTLC_clone_ptr(uint32_t arg) { - LDKUpdateAddHTLC arg_conv; +int64_t __attribute__((visibility("default"))) TS_Ping_clone_ptr(uint32_t arg) { + LDKPing arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = UpdateAddHTLC_clone_ptr(&arg_conv); + int64_t ret_val = Ping_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_UpdateAddHTLC_clone(uint32_t orig) { - LDKUpdateAddHTLC orig_conv; +uint32_t __attribute__((visibility("default"))) TS_Ping_clone(uint32_t orig) { + LDKPing orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKUpdateAddHTLC ret_var = UpdateAddHTLC_clone(&orig_conv); + LDKPing ret_var = Ping_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -24478,81 +22359,33 @@ uint32_t __attribute__((visibility("default"))) TS_UpdateAddHTLC_clone(uint32_t return ret_ref; } -void __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_free(uint32_t this_obj) { - LDKUpdateFulfillHTLC this_obj_conv; +void __attribute__((visibility("default"))) TS_Pong_free(uint32_t this_obj) { + LDKPong this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - UpdateFulfillHTLC_free(this_obj_conv); -} - -int8_tArray __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_get_channel_id(uint32_t this_ptr) { - LDKUpdateFulfillHTLC this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *UpdateFulfillHTLC_get_channel_id(&this_ptr_conv), 32); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKUpdateFulfillHTLC this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - UpdateFulfillHTLC_set_channel_id(&this_ptr_conv, val_ref); + Pong_free(this_obj_conv); } -int64_t __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_get_htlc_id(uint32_t this_ptr) { - LDKUpdateFulfillHTLC this_ptr_conv; +int16_t __attribute__((visibility("default"))) TS_Pong_get_byteslen(uint32_t this_ptr) { + LDKPong this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = UpdateFulfillHTLC_get_htlc_id(&this_ptr_conv); + int16_t ret_val = Pong_get_byteslen(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_set_htlc_id(uint32_t this_ptr, int64_t val) { - LDKUpdateFulfillHTLC this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UpdateFulfillHTLC_set_htlc_id(&this_ptr_conv, val); -} - -int8_tArray __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_get_payment_preimage(uint32_t this_ptr) { - LDKUpdateFulfillHTLC this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *UpdateFulfillHTLC_get_payment_preimage(&this_ptr_conv), 32); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_set_payment_preimage(uint32_t this_ptr, int8_tArray val) { - LDKUpdateFulfillHTLC this_ptr_conv; +void __attribute__((visibility("default"))) TS_Pong_set_byteslen(uint32_t this_ptr, int16_t val) { + LDKPong this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - UpdateFulfillHTLC_set_payment_preimage(&this_ptr_conv, val_ref); + Pong_set_byteslen(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_new(int8_tArray channel_id_arg, int64_t htlc_id_arg, int8_tArray payment_preimage_arg) { - LDKThirtyTwoBytes channel_id_arg_ref; - CHECK(*((uint32_t*)channel_id_arg) == 32); - memcpy(channel_id_arg_ref.data, (uint8_t*)(channel_id_arg + 4), 32); - LDKThirtyTwoBytes payment_preimage_arg_ref; - CHECK(*((uint32_t*)payment_preimage_arg) == 32); - memcpy(payment_preimage_arg_ref.data, (uint8_t*)(payment_preimage_arg + 4), 32); - LDKUpdateFulfillHTLC ret_var = UpdateFulfillHTLC_new(channel_id_arg_ref, htlc_id_arg, payment_preimage_arg_ref); +uint32_t __attribute__((visibility("default"))) TS_Pong_new(int16_t byteslen_arg) { + LDKPong ret_var = Pong_new(byteslen_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -24564,8 +22397,8 @@ uint32_t __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_new(int8_t return ret_ref; } -static inline uint64_t UpdateFulfillHTLC_clone_ptr(LDKUpdateFulfillHTLC *NONNULL_PTR arg) { - LDKUpdateFulfillHTLC ret_var = UpdateFulfillHTLC_clone(arg); +static inline uint64_t Pong_clone_ptr(LDKPong *NONNULL_PTR arg) { + LDKPong ret_var = Pong_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -24576,21 +22409,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_clone_ptr(uint32_t arg) { - LDKUpdateFulfillHTLC arg_conv; +int64_t __attribute__((visibility("default"))) TS_Pong_clone_ptr(uint32_t arg) { + LDKPong arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = UpdateFulfillHTLC_clone_ptr(&arg_conv); + int64_t ret_val = Pong_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_clone(uint32_t orig) { - LDKUpdateFulfillHTLC orig_conv; +uint32_t __attribute__((visibility("default"))) TS_Pong_clone(uint32_t orig) { + LDKPong orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKUpdateFulfillHTLC ret_var = UpdateFulfillHTLC_clone(&orig_conv); + LDKPong ret_var = Pong_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -24602,529 +22435,386 @@ uint32_t __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_clone(uint return ret_ref; } -void __attribute__((visibility("default"))) TS_UpdateFailHTLC_free(uint32_t this_obj) { - LDKUpdateFailHTLC this_obj_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_free(uint32_t this_obj) { + LDKOpenChannel this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - UpdateFailHTLC_free(this_obj_conv); + OpenChannel_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_UpdateFailHTLC_get_channel_id(uint32_t this_ptr) { - LDKUpdateFailHTLC this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_chain_hash(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *UpdateFailHTLC_get_channel_id(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *OpenChannel_get_chain_hash(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_UpdateFailHTLC_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKUpdateFailHTLC this_ptr_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_set_chain_hash(uint32_t this_ptr, int8_tArray val) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - UpdateFailHTLC_set_channel_id(&this_ptr_conv, val_ref); + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + OpenChannel_set_chain_hash(&this_ptr_conv, val_ref); } -int64_t __attribute__((visibility("default"))) TS_UpdateFailHTLC_get_htlc_id(uint32_t this_ptr) { - LDKUpdateFailHTLC this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_temporary_channel_id(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = UpdateFailHTLC_get_htlc_id(&this_ptr_conv); - return ret_val; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *OpenChannel_get_temporary_channel_id(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_UpdateFailHTLC_set_htlc_id(uint32_t this_ptr, int64_t val) { - LDKUpdateFailHTLC this_ptr_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_set_temporary_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UpdateFailHTLC_set_htlc_id(&this_ptr_conv, val); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + OpenChannel_set_temporary_channel_id(&this_ptr_conv, val_ref); } -static inline uint64_t UpdateFailHTLC_clone_ptr(LDKUpdateFailHTLC *NONNULL_PTR arg) { - LDKUpdateFailHTLC ret_var = UpdateFailHTLC_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_UpdateFailHTLC_clone_ptr(uint32_t arg) { - LDKUpdateFailHTLC arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = UpdateFailHTLC_clone_ptr(&arg_conv); +int64_t __attribute__((visibility("default"))) TS_OpenChannel_get_funding_satoshis(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = OpenChannel_get_funding_satoshis(&this_ptr_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_UpdateFailHTLC_clone(uint32_t orig) { - LDKUpdateFailHTLC orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKUpdateFailHTLC ret_var = UpdateFailHTLC_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_OpenChannel_set_funding_satoshis(uint32_t this_ptr, int64_t val) { + LDKOpenChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + OpenChannel_set_funding_satoshis(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_free(uint32_t this_obj) { - LDKUpdateFailMalformedHTLC this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - UpdateFailMalformedHTLC_free(this_obj_conv); +int64_t __attribute__((visibility("default"))) TS_OpenChannel_get_push_msat(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = OpenChannel_get_push_msat(&this_ptr_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_get_channel_id(uint32_t this_ptr) { - LDKUpdateFailMalformedHTLC this_ptr_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_set_push_msat(uint32_t this_ptr, int64_t val) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *UpdateFailMalformedHTLC_get_channel_id(&this_ptr_conv), 32); - return ret_arr; + OpenChannel_set_push_msat(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKUpdateFailMalformedHTLC this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_OpenChannel_get_dust_limit_satoshis(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - UpdateFailMalformedHTLC_set_channel_id(&this_ptr_conv, val_ref); + int64_t ret_val = OpenChannel_get_dust_limit_satoshis(&this_ptr_conv); + return ret_val; } -int64_t __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_get_htlc_id(uint32_t this_ptr) { - LDKUpdateFailMalformedHTLC this_ptr_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_set_dust_limit_satoshis(uint32_t this_ptr, int64_t val) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = UpdateFailMalformedHTLC_get_htlc_id(&this_ptr_conv); + OpenChannel_set_dust_limit_satoshis(&this_ptr_conv, val); +} + +int64_t __attribute__((visibility("default"))) TS_OpenChannel_get_max_htlc_value_in_flight_msat(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = OpenChannel_get_max_htlc_value_in_flight_msat(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_set_htlc_id(uint32_t this_ptr, int64_t val) { - LDKUpdateFailMalformedHTLC this_ptr_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_set_max_htlc_value_in_flight_msat(uint32_t this_ptr, int64_t val) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UpdateFailMalformedHTLC_set_htlc_id(&this_ptr_conv, val); + OpenChannel_set_max_htlc_value_in_flight_msat(&this_ptr_conv, val); } -int16_t __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_get_failure_code(uint32_t this_ptr) { - LDKUpdateFailMalformedHTLC this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_OpenChannel_get_channel_reserve_satoshis(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = UpdateFailMalformedHTLC_get_failure_code(&this_ptr_conv); + int64_t ret_val = OpenChannel_get_channel_reserve_satoshis(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_set_failure_code(uint32_t this_ptr, int16_t val) { - LDKUpdateFailMalformedHTLC this_ptr_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_set_channel_reserve_satoshis(uint32_t this_ptr, int64_t val) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UpdateFailMalformedHTLC_set_failure_code(&this_ptr_conv, val); + OpenChannel_set_channel_reserve_satoshis(&this_ptr_conv, val); } -static inline uint64_t UpdateFailMalformedHTLC_clone_ptr(LDKUpdateFailMalformedHTLC *NONNULL_PTR arg) { - LDKUpdateFailMalformedHTLC ret_var = UpdateFailMalformedHTLC_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; +int64_t __attribute__((visibility("default"))) TS_OpenChannel_get_htlc_minimum_msat(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = OpenChannel_get_htlc_minimum_msat(&this_ptr_conv); + return ret_val; } - return ret_ref; + +void __attribute__((visibility("default"))) TS_OpenChannel_set_htlc_minimum_msat(uint32_t this_ptr, int64_t val) { + LDKOpenChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + OpenChannel_set_htlc_minimum_msat(&this_ptr_conv, val); } -int64_t __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_clone_ptr(uint32_t arg) { - LDKUpdateFailMalformedHTLC arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = UpdateFailMalformedHTLC_clone_ptr(&arg_conv); + +int32_t __attribute__((visibility("default"))) TS_OpenChannel_get_feerate_per_kw(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = OpenChannel_get_feerate_per_kw(&this_ptr_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_clone(uint32_t orig) { - LDKUpdateFailMalformedHTLC orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKUpdateFailMalformedHTLC ret_var = UpdateFailMalformedHTLC_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_OpenChannel_set_feerate_per_kw(uint32_t this_ptr, int32_t val) { + LDKOpenChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + OpenChannel_set_feerate_per_kw(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_CommitmentSigned_free(uint32_t this_obj) { - LDKCommitmentSigned this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - CommitmentSigned_free(this_obj_conv); +int16_t __attribute__((visibility("default"))) TS_OpenChannel_get_to_self_delay(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int16_t ret_val = OpenChannel_get_to_self_delay(&this_ptr_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_CommitmentSigned_get_channel_id(uint32_t this_ptr) { - LDKCommitmentSigned this_ptr_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_set_to_self_delay(uint32_t this_ptr, int16_t val) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *CommitmentSigned_get_channel_id(&this_ptr_conv), 32); - return ret_arr; + OpenChannel_set_to_self_delay(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_CommitmentSigned_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKCommitmentSigned this_ptr_conv; +int16_t __attribute__((visibility("default"))) TS_OpenChannel_get_max_accepted_htlcs(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - CommitmentSigned_set_channel_id(&this_ptr_conv, val_ref); + int16_t ret_val = OpenChannel_get_max_accepted_htlcs(&this_ptr_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_OpenChannel_set_max_accepted_htlcs(uint32_t this_ptr, int16_t val) { + LDKOpenChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + OpenChannel_set_max_accepted_htlcs(&this_ptr_conv, val); } -int8_tArray __attribute__((visibility("default"))) TS_CommitmentSigned_get_signature(uint32_t this_ptr) { - LDKCommitmentSigned this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_funding_pubkey(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), CommitmentSigned_get_signature(&this_ptr_conv).compact_form, 64); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, OpenChannel_get_funding_pubkey(&this_ptr_conv).compressed_form, 33); return ret_arr; } -void __attribute__((visibility("default"))) TS_CommitmentSigned_set_signature(uint32_t this_ptr, int8_tArray val) { - LDKCommitmentSigned this_ptr_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_set_funding_pubkey(uint32_t this_ptr, int8_tArray val) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSignature val_ref; - CHECK(*((uint32_t*)val) == 64); - memcpy(val_ref.compact_form, (uint8_t*)(val + 4), 64); - CommitmentSigned_set_signature(&this_ptr_conv, val_ref); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + OpenChannel_set_funding_pubkey(&this_ptr_conv, val_ref); } -void __attribute__((visibility("default"))) TS_CommitmentSigned_set_htlc_signatures(uint32_t this_ptr, ptrArray val) { - LDKCommitmentSigned this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_revocation_basepoint(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_SignatureZ val_constr; - val_constr.datalen = *((uint32_t*)val); - if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); - else - val_constr.data = NULL; - int8_tArray* val_vals = (int8_tArray*)(val + 4); - for (size_t m = 0; m < val_constr.datalen; m++) { - int8_tArray val_conv_12 = val_vals[m]; - LDKSignature val_conv_12_ref; - CHECK(*((uint32_t*)val_conv_12) == 64); - memcpy(val_conv_12_ref.compact_form, (uint8_t*)(val_conv_12 + 4), 64); - val_constr.data[m] = val_conv_12_ref; - } - CommitmentSigned_set_htlc_signatures(&this_ptr_conv, val_constr); -} - -uint32_t __attribute__((visibility("default"))) TS_CommitmentSigned_new(int8_tArray channel_id_arg, int8_tArray signature_arg, ptrArray htlc_signatures_arg) { - LDKThirtyTwoBytes channel_id_arg_ref; - CHECK(*((uint32_t*)channel_id_arg) == 32); - memcpy(channel_id_arg_ref.data, (uint8_t*)(channel_id_arg + 4), 32); - LDKSignature signature_arg_ref; - CHECK(*((uint32_t*)signature_arg) == 64); - memcpy(signature_arg_ref.compact_form, (uint8_t*)(signature_arg + 4), 64); - LDKCVec_SignatureZ htlc_signatures_arg_constr; - htlc_signatures_arg_constr.datalen = *((uint32_t*)htlc_signatures_arg); - if (htlc_signatures_arg_constr.datalen > 0) - htlc_signatures_arg_constr.data = MALLOC(htlc_signatures_arg_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); - else - htlc_signatures_arg_constr.data = NULL; - int8_tArray* htlc_signatures_arg_vals = (int8_tArray*)(htlc_signatures_arg + 4); - for (size_t m = 0; m < htlc_signatures_arg_constr.datalen; m++) { - int8_tArray htlc_signatures_arg_conv_12 = htlc_signatures_arg_vals[m]; - LDKSignature htlc_signatures_arg_conv_12_ref; - CHECK(*((uint32_t*)htlc_signatures_arg_conv_12) == 64); - memcpy(htlc_signatures_arg_conv_12_ref.compact_form, (uint8_t*)(htlc_signatures_arg_conv_12 + 4), 64); - htlc_signatures_arg_constr.data[m] = htlc_signatures_arg_conv_12_ref; - } - LDKCommitmentSigned ret_var = CommitmentSigned_new(channel_id_arg_ref, signature_arg_ref, htlc_signatures_arg_constr); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; -} - -static inline uint64_t CommitmentSigned_clone_ptr(LDKCommitmentSigned *NONNULL_PTR arg) { - LDKCommitmentSigned ret_var = CommitmentSigned_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_CommitmentSigned_clone_ptr(uint32_t arg) { - LDKCommitmentSigned arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = CommitmentSigned_clone_ptr(&arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_CommitmentSigned_clone(uint32_t orig) { - LDKCommitmentSigned orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKCommitmentSigned ret_var = CommitmentSigned_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, OpenChannel_get_revocation_basepoint(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -void __attribute__((visibility("default"))) TS_RevokeAndACK_free(uint32_t this_obj) { - LDKRevokeAndACK this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - RevokeAndACK_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_OpenChannel_set_revocation_basepoint(uint32_t this_ptr, int8_tArray val) { + LDKOpenChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + OpenChannel_set_revocation_basepoint(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_RevokeAndACK_get_channel_id(uint32_t this_ptr) { - LDKRevokeAndACK this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_payment_point(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *RevokeAndACK_get_channel_id(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, OpenChannel_get_payment_point(&this_ptr_conv).compressed_form, 33); return ret_arr; } -void __attribute__((visibility("default"))) TS_RevokeAndACK_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKRevokeAndACK this_ptr_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_set_payment_point(uint32_t this_ptr, int8_tArray val) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - RevokeAndACK_set_channel_id(&this_ptr_conv, val_ref); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + OpenChannel_set_payment_point(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_RevokeAndACK_get_per_commitment_secret(uint32_t this_ptr) { - LDKRevokeAndACK this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_delayed_payment_basepoint(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *RevokeAndACK_get_per_commitment_secret(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, OpenChannel_get_delayed_payment_basepoint(&this_ptr_conv).compressed_form, 33); return ret_arr; } -void __attribute__((visibility("default"))) TS_RevokeAndACK_set_per_commitment_secret(uint32_t this_ptr, int8_tArray val) { - LDKRevokeAndACK this_ptr_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_set_delayed_payment_basepoint(uint32_t this_ptr, int8_tArray val) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - RevokeAndACK_set_per_commitment_secret(&this_ptr_conv, val_ref); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + OpenChannel_set_delayed_payment_basepoint(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_RevokeAndACK_get_next_per_commitment_point(uint32_t this_ptr) { - LDKRevokeAndACK this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_htlc_basepoint(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), RevokeAndACK_get_next_per_commitment_point(&this_ptr_conv).compressed_form, 33); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, OpenChannel_get_htlc_basepoint(&this_ptr_conv).compressed_form, 33); return ret_arr; } -void __attribute__((visibility("default"))) TS_RevokeAndACK_set_next_per_commitment_point(uint32_t this_ptr, int8_tArray val) { - LDKRevokeAndACK this_ptr_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_set_htlc_basepoint(uint32_t this_ptr, int8_tArray val) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - RevokeAndACK_set_next_per_commitment_point(&this_ptr_conv, val_ref); -} - -uint32_t __attribute__((visibility("default"))) TS_RevokeAndACK_new(int8_tArray channel_id_arg, int8_tArray per_commitment_secret_arg, int8_tArray next_per_commitment_point_arg) { - LDKThirtyTwoBytes channel_id_arg_ref; - CHECK(*((uint32_t*)channel_id_arg) == 32); - memcpy(channel_id_arg_ref.data, (uint8_t*)(channel_id_arg + 4), 32); - LDKThirtyTwoBytes per_commitment_secret_arg_ref; - CHECK(*((uint32_t*)per_commitment_secret_arg) == 32); - memcpy(per_commitment_secret_arg_ref.data, (uint8_t*)(per_commitment_secret_arg + 4), 32); - LDKPublicKey next_per_commitment_point_arg_ref; - CHECK(*((uint32_t*)next_per_commitment_point_arg) == 33); - memcpy(next_per_commitment_point_arg_ref.compressed_form, (uint8_t*)(next_per_commitment_point_arg + 4), 33); - LDKRevokeAndACK ret_var = RevokeAndACK_new(channel_id_arg_ref, per_commitment_secret_arg_ref, next_per_commitment_point_arg_ref); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; -} - -static inline uint64_t RevokeAndACK_clone_ptr(LDKRevokeAndACK *NONNULL_PTR arg) { - LDKRevokeAndACK ret_var = RevokeAndACK_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_RevokeAndACK_clone_ptr(uint32_t arg) { - LDKRevokeAndACK arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = RevokeAndACK_clone_ptr(&arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_RevokeAndACK_clone(uint32_t orig) { - LDKRevokeAndACK orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKRevokeAndACK ret_var = RevokeAndACK_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; -} - -void __attribute__((visibility("default"))) TS_UpdateFee_free(uint32_t this_obj) { - LDKUpdateFee this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - UpdateFee_free(this_obj_conv); + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + OpenChannel_set_htlc_basepoint(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_UpdateFee_get_channel_id(uint32_t this_ptr) { - LDKUpdateFee this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_get_first_per_commitment_point(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *UpdateFee_get_channel_id(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, OpenChannel_get_first_per_commitment_point(&this_ptr_conv).compressed_form, 33); return ret_arr; } -void __attribute__((visibility("default"))) TS_UpdateFee_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKUpdateFee this_ptr_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_set_first_per_commitment_point(uint32_t this_ptr, int8_tArray val) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - UpdateFee_set_channel_id(&this_ptr_conv, val_ref); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + OpenChannel_set_first_per_commitment_point(&this_ptr_conv, val_ref); } -int32_t __attribute__((visibility("default"))) TS_UpdateFee_get_feerate_per_kw(uint32_t this_ptr) { - LDKUpdateFee this_ptr_conv; +int8_t __attribute__((visibility("default"))) TS_OpenChannel_get_channel_flags(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = UpdateFee_get_feerate_per_kw(&this_ptr_conv); + int8_t ret_val = OpenChannel_get_channel_flags(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_UpdateFee_set_feerate_per_kw(uint32_t this_ptr, int32_t val) { - LDKUpdateFee this_ptr_conv; +void __attribute__((visibility("default"))) TS_OpenChannel_set_channel_flags(uint32_t this_ptr, int8_t val) { + LDKOpenChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UpdateFee_set_feerate_per_kw(&this_ptr_conv, val); + OpenChannel_set_channel_flags(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_UpdateFee_new(int8_tArray channel_id_arg, int32_t feerate_per_kw_arg) { - LDKThirtyTwoBytes channel_id_arg_ref; - CHECK(*((uint32_t*)channel_id_arg) == 32); - memcpy(channel_id_arg_ref.data, (uint8_t*)(channel_id_arg + 4), 32); - LDKUpdateFee ret_var = UpdateFee_new(channel_id_arg_ref, feerate_per_kw_arg); +uint32_t __attribute__((visibility("default"))) TS_OpenChannel_get_channel_type(uint32_t this_ptr) { + LDKOpenChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelTypeFeatures ret_var = OpenChannel_get_channel_type(&this_ptr_conv); uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } } return ret_ref; } -static inline uint64_t UpdateFee_clone_ptr(LDKUpdateFee *NONNULL_PTR arg) { - LDKUpdateFee ret_var = UpdateFee_clone(arg); +void __attribute__((visibility("default"))) TS_OpenChannel_set_channel_type(uint32_t this_ptr, uint32_t val) { + LDKOpenChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelTypeFeatures val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = ChannelTypeFeatures_clone(&val_conv); + OpenChannel_set_channel_type(&this_ptr_conv, val_conv); +} + +static inline uint64_t OpenChannel_clone_ptr(LDKOpenChannel *NONNULL_PTR arg) { + LDKOpenChannel ret_var = OpenChannel_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -25135,21 +22825,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_UpdateFee_clone_ptr(uint32_t arg) { - LDKUpdateFee arg_conv; +int64_t __attribute__((visibility("default"))) TS_OpenChannel_clone_ptr(uint32_t arg) { + LDKOpenChannel arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = UpdateFee_clone_ptr(&arg_conv); + int64_t ret_val = OpenChannel_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_UpdateFee_clone(uint32_t orig) { - LDKUpdateFee orig_conv; +uint32_t __attribute__((visibility("default"))) TS_OpenChannel_clone(uint32_t orig) { + LDKOpenChannel orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKUpdateFee ret_var = UpdateFee_clone(&orig_conv); + LDKOpenChannel ret_var = OpenChannel_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -25161,326 +22851,282 @@ uint32_t __attribute__((visibility("default"))) TS_UpdateFee_clone(uint32_t ori return ret_ref; } -void __attribute__((visibility("default"))) TS_DataLossProtect_free(uint32_t this_obj) { - LDKDataLossProtect this_obj_conv; +void __attribute__((visibility("default"))) TS_AcceptChannel_free(uint32_t this_obj) { + LDKAcceptChannel this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - DataLossProtect_free(this_obj_conv); + AcceptChannel_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_DataLossProtect_get_your_last_per_commitment_secret(uint32_t this_ptr) { - LDKDataLossProtect this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_temporary_channel_id(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *DataLossProtect_get_your_last_per_commitment_secret(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *AcceptChannel_get_temporary_channel_id(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_DataLossProtect_set_your_last_per_commitment_secret(uint32_t this_ptr, int8_tArray val) { - LDKDataLossProtect this_ptr_conv; +void __attribute__((visibility("default"))) TS_AcceptChannel_set_temporary_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - DataLossProtect_set_your_last_per_commitment_secret(&this_ptr_conv, val_ref); + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + AcceptChannel_set_temporary_channel_id(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_DataLossProtect_get_my_current_per_commitment_point(uint32_t this_ptr) { - LDKDataLossProtect this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_AcceptChannel_get_dust_limit_satoshis(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), DataLossProtect_get_my_current_per_commitment_point(&this_ptr_conv).compressed_form, 33); - return ret_arr; + int64_t ret_val = AcceptChannel_get_dust_limit_satoshis(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_DataLossProtect_set_my_current_per_commitment_point(uint32_t this_ptr, int8_tArray val) { - LDKDataLossProtect this_ptr_conv; +void __attribute__((visibility("default"))) TS_AcceptChannel_set_dust_limit_satoshis(uint32_t this_ptr, int64_t val) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - DataLossProtect_set_my_current_per_commitment_point(&this_ptr_conv, val_ref); + AcceptChannel_set_dust_limit_satoshis(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_DataLossProtect_new(int8_tArray your_last_per_commitment_secret_arg, int8_tArray my_current_per_commitment_point_arg) { - LDKThirtyTwoBytes your_last_per_commitment_secret_arg_ref; - CHECK(*((uint32_t*)your_last_per_commitment_secret_arg) == 32); - memcpy(your_last_per_commitment_secret_arg_ref.data, (uint8_t*)(your_last_per_commitment_secret_arg + 4), 32); - LDKPublicKey my_current_per_commitment_point_arg_ref; - CHECK(*((uint32_t*)my_current_per_commitment_point_arg) == 33); - memcpy(my_current_per_commitment_point_arg_ref.compressed_form, (uint8_t*)(my_current_per_commitment_point_arg + 4), 33); - LDKDataLossProtect ret_var = DataLossProtect_new(your_last_per_commitment_secret_arg_ref, my_current_per_commitment_point_arg_ref); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int64_t __attribute__((visibility("default"))) TS_AcceptChannel_get_max_htlc_value_in_flight_msat(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = AcceptChannel_get_max_htlc_value_in_flight_msat(&this_ptr_conv); + return ret_val; } -static inline uint64_t DataLossProtect_clone_ptr(LDKDataLossProtect *NONNULL_PTR arg) { - LDKDataLossProtect ret_var = DataLossProtect_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; +void __attribute__((visibility("default"))) TS_AcceptChannel_set_max_htlc_value_in_flight_msat(uint32_t this_ptr, int64_t val) { + LDKAcceptChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + AcceptChannel_set_max_htlc_value_in_flight_msat(&this_ptr_conv, val); } -int64_t __attribute__((visibility("default"))) TS_DataLossProtect_clone_ptr(uint32_t arg) { - LDKDataLossProtect arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = DataLossProtect_clone_ptr(&arg_conv); + +int64_t __attribute__((visibility("default"))) TS_AcceptChannel_get_channel_reserve_satoshis(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = AcceptChannel_get_channel_reserve_satoshis(&this_ptr_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_DataLossProtect_clone(uint32_t orig) { - LDKDataLossProtect orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKDataLossProtect ret_var = DataLossProtect_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_AcceptChannel_set_channel_reserve_satoshis(uint32_t this_ptr, int64_t val) { + LDKAcceptChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + AcceptChannel_set_channel_reserve_satoshis(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_ChannelReestablish_free(uint32_t this_obj) { - LDKChannelReestablish this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelReestablish_free(this_obj_conv); +int64_t __attribute__((visibility("default"))) TS_AcceptChannel_get_htlc_minimum_msat(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = AcceptChannel_get_htlc_minimum_msat(&this_ptr_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_ChannelReestablish_get_channel_id(uint32_t this_ptr) { - LDKChannelReestablish this_ptr_conv; +void __attribute__((visibility("default"))) TS_AcceptChannel_set_htlc_minimum_msat(uint32_t this_ptr, int64_t val) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *ChannelReestablish_get_channel_id(&this_ptr_conv), 32); - return ret_arr; + AcceptChannel_set_htlc_minimum_msat(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_ChannelReestablish_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKChannelReestablish this_ptr_conv; +int32_t __attribute__((visibility("default"))) TS_AcceptChannel_get_minimum_depth(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - ChannelReestablish_set_channel_id(&this_ptr_conv, val_ref); + int32_t ret_val = AcceptChannel_get_minimum_depth(&this_ptr_conv); + return ret_val; } -int64_t __attribute__((visibility("default"))) TS_ChannelReestablish_get_next_local_commitment_number(uint32_t this_ptr) { - LDKChannelReestablish this_ptr_conv; +void __attribute__((visibility("default"))) TS_AcceptChannel_set_minimum_depth(uint32_t this_ptr, int32_t val) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelReestablish_get_next_local_commitment_number(&this_ptr_conv); + AcceptChannel_set_minimum_depth(&this_ptr_conv, val); +} + +int16_t __attribute__((visibility("default"))) TS_AcceptChannel_get_to_self_delay(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int16_t ret_val = AcceptChannel_get_to_self_delay(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelReestablish_set_next_local_commitment_number(uint32_t this_ptr, int64_t val) { - LDKChannelReestablish this_ptr_conv; +void __attribute__((visibility("default"))) TS_AcceptChannel_set_to_self_delay(uint32_t this_ptr, int16_t val) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelReestablish_set_next_local_commitment_number(&this_ptr_conv, val); + AcceptChannel_set_to_self_delay(&this_ptr_conv, val); } -int64_t __attribute__((visibility("default"))) TS_ChannelReestablish_get_next_remote_commitment_number(uint32_t this_ptr) { - LDKChannelReestablish this_ptr_conv; +int16_t __attribute__((visibility("default"))) TS_AcceptChannel_get_max_accepted_htlcs(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ChannelReestablish_get_next_remote_commitment_number(&this_ptr_conv); + int16_t ret_val = AcceptChannel_get_max_accepted_htlcs(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelReestablish_set_next_remote_commitment_number(uint32_t this_ptr, int64_t val) { - LDKChannelReestablish this_ptr_conv; +void __attribute__((visibility("default"))) TS_AcceptChannel_set_max_accepted_htlcs(uint32_t this_ptr, int16_t val) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelReestablish_set_next_remote_commitment_number(&this_ptr_conv, val); + AcceptChannel_set_max_accepted_htlcs(&this_ptr_conv, val); } -static inline uint64_t ChannelReestablish_clone_ptr(LDKChannelReestablish *NONNULL_PTR arg) { - LDKChannelReestablish ret_var = ChannelReestablish_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_funding_pubkey(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, AcceptChannel_get_funding_pubkey(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -int64_t __attribute__((visibility("default"))) TS_ChannelReestablish_clone_ptr(uint32_t arg) { - LDKChannelReestablish arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelReestablish_clone_ptr(&arg_conv); - return ret_val; + +void __attribute__((visibility("default"))) TS_AcceptChannel_set_funding_pubkey(uint32_t this_ptr, int8_tArray val) { + LDKAcceptChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + AcceptChannel_set_funding_pubkey(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_ChannelReestablish_clone(uint32_t orig) { - LDKChannelReestablish orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelReestablish ret_var = ChannelReestablish_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_revocation_basepoint(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, AcceptChannel_get_revocation_basepoint(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -void __attribute__((visibility("default"))) TS_AnnouncementSignatures_free(uint32_t this_obj) { - LDKAnnouncementSignatures this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - AnnouncementSignatures_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_AcceptChannel_set_revocation_basepoint(uint32_t this_ptr, int8_tArray val) { + LDKAcceptChannel this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + AcceptChannel_set_revocation_basepoint(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_AnnouncementSignatures_get_channel_id(uint32_t this_ptr) { - LDKAnnouncementSignatures this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_payment_point(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *AnnouncementSignatures_get_channel_id(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, AcceptChannel_get_payment_point(&this_ptr_conv).compressed_form, 33); return ret_arr; } -void __attribute__((visibility("default"))) TS_AnnouncementSignatures_set_channel_id(uint32_t this_ptr, int8_tArray val) { - LDKAnnouncementSignatures this_ptr_conv; +void __attribute__((visibility("default"))) TS_AcceptChannel_set_payment_point(uint32_t this_ptr, int8_tArray val) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - AnnouncementSignatures_set_channel_id(&this_ptr_conv, val_ref); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + AcceptChannel_set_payment_point(&this_ptr_conv, val_ref); } -int64_t __attribute__((visibility("default"))) TS_AnnouncementSignatures_get_short_channel_id(uint32_t this_ptr) { - LDKAnnouncementSignatures this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_delayed_payment_basepoint(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = AnnouncementSignatures_get_short_channel_id(&this_ptr_conv); - return ret_val; + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, AcceptChannel_get_delayed_payment_basepoint(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -void __attribute__((visibility("default"))) TS_AnnouncementSignatures_set_short_channel_id(uint32_t this_ptr, int64_t val) { - LDKAnnouncementSignatures this_ptr_conv; +void __attribute__((visibility("default"))) TS_AcceptChannel_set_delayed_payment_basepoint(uint32_t this_ptr, int8_tArray val) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - AnnouncementSignatures_set_short_channel_id(&this_ptr_conv, val); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + AcceptChannel_set_delayed_payment_basepoint(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_AnnouncementSignatures_get_node_signature(uint32_t this_ptr) { - LDKAnnouncementSignatures this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_htlc_basepoint(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), AnnouncementSignatures_get_node_signature(&this_ptr_conv).compact_form, 64); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, AcceptChannel_get_htlc_basepoint(&this_ptr_conv).compressed_form, 33); return ret_arr; } -void __attribute__((visibility("default"))) TS_AnnouncementSignatures_set_node_signature(uint32_t this_ptr, int8_tArray val) { - LDKAnnouncementSignatures this_ptr_conv; +void __attribute__((visibility("default"))) TS_AcceptChannel_set_htlc_basepoint(uint32_t this_ptr, int8_tArray val) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSignature val_ref; - CHECK(*((uint32_t*)val) == 64); - memcpy(val_ref.compact_form, (uint8_t*)(val + 4), 64); - AnnouncementSignatures_set_node_signature(&this_ptr_conv, val_ref); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + AcceptChannel_set_htlc_basepoint(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_AnnouncementSignatures_get_bitcoin_signature(uint32_t this_ptr) { - LDKAnnouncementSignatures this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_get_first_per_commitment_point(uint32_t this_ptr) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), AnnouncementSignatures_get_bitcoin_signature(&this_ptr_conv).compact_form, 64); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, AcceptChannel_get_first_per_commitment_point(&this_ptr_conv).compressed_form, 33); return ret_arr; } -void __attribute__((visibility("default"))) TS_AnnouncementSignatures_set_bitcoin_signature(uint32_t this_ptr, int8_tArray val) { - LDKAnnouncementSignatures this_ptr_conv; +void __attribute__((visibility("default"))) TS_AcceptChannel_set_first_per_commitment_point(uint32_t this_ptr, int8_tArray val) { + LDKAcceptChannel this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSignature val_ref; - CHECK(*((uint32_t*)val) == 64); - memcpy(val_ref.compact_form, (uint8_t*)(val + 4), 64); - AnnouncementSignatures_set_bitcoin_signature(&this_ptr_conv, val_ref); -} - -uint32_t __attribute__((visibility("default"))) TS_AnnouncementSignatures_new(int8_tArray channel_id_arg, int64_t short_channel_id_arg, int8_tArray node_signature_arg, int8_tArray bitcoin_signature_arg) { - LDKThirtyTwoBytes channel_id_arg_ref; - CHECK(*((uint32_t*)channel_id_arg) == 32); - memcpy(channel_id_arg_ref.data, (uint8_t*)(channel_id_arg + 4), 32); - LDKSignature node_signature_arg_ref; - CHECK(*((uint32_t*)node_signature_arg) == 64); - memcpy(node_signature_arg_ref.compact_form, (uint8_t*)(node_signature_arg + 4), 64); - LDKSignature bitcoin_signature_arg_ref; - CHECK(*((uint32_t*)bitcoin_signature_arg) == 64); - memcpy(bitcoin_signature_arg_ref.compact_form, (uint8_t*)(bitcoin_signature_arg + 4), 64); - LDKAnnouncementSignatures ret_var = AnnouncementSignatures_new(channel_id_arg_ref, short_channel_id_arg, node_signature_arg_ref, bitcoin_signature_arg_ref); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + AcceptChannel_set_first_per_commitment_point(&this_ptr_conv, val_ref); } -static inline uint64_t AnnouncementSignatures_clone_ptr(LDKAnnouncementSignatures *NONNULL_PTR arg) { - LDKAnnouncementSignatures ret_var = AnnouncementSignatures_clone(arg); +static inline uint64_t AcceptChannel_clone_ptr(LDKAcceptChannel *NONNULL_PTR arg) { + LDKAcceptChannel ret_var = AcceptChannel_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -25491,21 +23137,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_AnnouncementSignatures_clone_ptr(uint32_t arg) { - LDKAnnouncementSignatures arg_conv; +int64_t __attribute__((visibility("default"))) TS_AcceptChannel_clone_ptr(uint32_t arg) { + LDKAcceptChannel arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = AnnouncementSignatures_clone_ptr(&arg_conv); + int64_t ret_val = AcceptChannel_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_AnnouncementSignatures_clone(uint32_t orig) { - LDKAnnouncementSignatures orig_conv; +uint32_t __attribute__((visibility("default"))) TS_AcceptChannel_clone(uint32_t orig) { + LDKAcceptChannel orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKAnnouncementSignatures ret_var = AnnouncementSignatures_clone(&orig_conv); + LDKAcceptChannel ret_var = AcceptChannel_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -25517,236 +23163,118 @@ uint32_t __attribute__((visibility("default"))) TS_AnnouncementSignatures_clone return ret_ref; } -void __attribute__((visibility("default"))) TS_NetAddress_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKNetAddress this_ptr_conv = *(LDKNetAddress*)(this_ptr_ptr); - FREE((void*)this_ptr); - NetAddress_free(this_ptr_conv); -} - -static inline uint64_t NetAddress_clone_ptr(LDKNetAddress *NONNULL_PTR arg) { - LDKNetAddress *ret_copy = MALLOC(sizeof(LDKNetAddress), "LDKNetAddress"); - *ret_copy = NetAddress_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_NetAddress_clone_ptr(uint32_t arg) { - LDKNetAddress* arg_conv = (LDKNetAddress*)arg; - int64_t ret_val = NetAddress_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_NetAddress_clone(uint32_t orig) { - LDKNetAddress* orig_conv = (LDKNetAddress*)orig; - LDKNetAddress *ret_copy = MALLOC(sizeof(LDKNetAddress), "LDKNetAddress"); - *ret_copy = NetAddress_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_NetAddress_ipv4(int8_tArray addr, int16_t port) { - LDKFourBytes addr_ref; - CHECK(*((uint32_t*)addr) == 4); - memcpy(addr_ref.data, (uint8_t*)(addr + 4), 4); - LDKNetAddress *ret_copy = MALLOC(sizeof(LDKNetAddress), "LDKNetAddress"); - *ret_copy = NetAddress_ipv4(addr_ref, port); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_NetAddress_ipv6(int8_tArray addr, int16_t port) { - LDKSixteenBytes addr_ref; - CHECK(*((uint32_t*)addr) == 16); - memcpy(addr_ref.data, (uint8_t*)(addr + 4), 16); - LDKNetAddress *ret_copy = MALLOC(sizeof(LDKNetAddress), "LDKNetAddress"); - *ret_copy = NetAddress_ipv6(addr_ref, port); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_NetAddress_onion_v2(int8_tArray a) { - LDKTwelveBytes a_ref; - CHECK(*((uint32_t*)a) == 12); - memcpy(a_ref.data, (uint8_t*)(a + 4), 12); - LDKNetAddress *ret_copy = MALLOC(sizeof(LDKNetAddress), "LDKNetAddress"); - *ret_copy = NetAddress_onion_v2(a_ref); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_NetAddress_onion_v3(int8_tArray ed25519_pubkey, int16_t checksum, int8_t version, int16_t port) { - LDKThirtyTwoBytes ed25519_pubkey_ref; - CHECK(*((uint32_t*)ed25519_pubkey) == 32); - memcpy(ed25519_pubkey_ref.data, (uint8_t*)(ed25519_pubkey + 4), 32); - LDKNetAddress *ret_copy = MALLOC(sizeof(LDKNetAddress), "LDKNetAddress"); - *ret_copy = NetAddress_onion_v3(ed25519_pubkey_ref, checksum, version, port); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -int8_tArray __attribute__((visibility("default"))) TS_NetAddress_write(uint32_t obj) { - LDKNetAddress* obj_conv = (LDKNetAddress*)obj; - LDKCVec_u8Z ret_var = NetAddress_write(obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_NetAddress_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_NetAddressDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NetAddressDecodeErrorZ), "LDKCResult_NetAddressDecodeErrorZ"); - *ret_conv = NetAddress_read(ser_ref); - return (uint64_t)ret_conv; -} - -void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_free(uint32_t this_obj) { - LDKUnsignedNodeAnnouncement this_obj_conv; +void __attribute__((visibility("default"))) TS_FundingCreated_free(uint32_t this_obj) { + LDKFundingCreated this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - UnsignedNodeAnnouncement_free(this_obj_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_get_features(uint32_t this_ptr) { - LDKUnsignedNodeAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeFeatures ret_var = UnsignedNodeAnnouncement_get_features(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; -} - -void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_set_features(uint32_t this_ptr, uint32_t val) { - LDKUnsignedNodeAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeFeatures val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = NodeFeatures_clone(&val_conv); - UnsignedNodeAnnouncement_set_features(&this_ptr_conv, val_conv); + FundingCreated_free(this_obj_conv); } -int32_t __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_get_timestamp(uint32_t this_ptr) { - LDKUnsignedNodeAnnouncement this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_FundingCreated_get_temporary_channel_id(uint32_t this_ptr) { + LDKFundingCreated this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = UnsignedNodeAnnouncement_get_timestamp(&this_ptr_conv); - return ret_val; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *FundingCreated_get_temporary_channel_id(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_set_timestamp(uint32_t this_ptr, int32_t val) { - LDKUnsignedNodeAnnouncement this_ptr_conv; +void __attribute__((visibility("default"))) TS_FundingCreated_set_temporary_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKFundingCreated this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UnsignedNodeAnnouncement_set_timestamp(&this_ptr_conv, val); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + FundingCreated_set_temporary_channel_id(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_get_node_id(uint32_t this_ptr) { - LDKUnsignedNodeAnnouncement this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_FundingCreated_get_funding_txid(uint32_t this_ptr) { + LDKFundingCreated this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), UnsignedNodeAnnouncement_get_node_id(&this_ptr_conv).compressed_form, 33); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *FundingCreated_get_funding_txid(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_set_node_id(uint32_t this_ptr, int8_tArray val) { - LDKUnsignedNodeAnnouncement this_ptr_conv; +void __attribute__((visibility("default"))) TS_FundingCreated_set_funding_txid(uint32_t this_ptr, int8_tArray val) { + LDKFundingCreated this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - UnsignedNodeAnnouncement_set_node_id(&this_ptr_conv, val_ref); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + FundingCreated_set_funding_txid(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_get_rgb(uint32_t this_ptr) { - LDKUnsignedNodeAnnouncement this_ptr_conv; +int16_t __attribute__((visibility("default"))) TS_FundingCreated_get_funding_output_index(uint32_t this_ptr) { + LDKFundingCreated this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(3, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *UnsignedNodeAnnouncement_get_rgb(&this_ptr_conv), 3); - return ret_arr; + int16_t ret_val = FundingCreated_get_funding_output_index(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_set_rgb(uint32_t this_ptr, int8_tArray val) { - LDKUnsignedNodeAnnouncement this_ptr_conv; +void __attribute__((visibility("default"))) TS_FundingCreated_set_funding_output_index(uint32_t this_ptr, int16_t val) { + LDKFundingCreated this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThreeBytes val_ref; - CHECK(*((uint32_t*)val) == 3); - memcpy(val_ref.data, (uint8_t*)(val + 4), 3); - UnsignedNodeAnnouncement_set_rgb(&this_ptr_conv, val_ref); + FundingCreated_set_funding_output_index(&this_ptr_conv, val); } -int8_tArray __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_get_alias(uint32_t this_ptr) { - LDKUnsignedNodeAnnouncement this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_FundingCreated_get_signature(uint32_t this_ptr) { + LDKFundingCreated this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *UnsignedNodeAnnouncement_get_alias(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, FundingCreated_get_signature(&this_ptr_conv).compact_form, 64); return ret_arr; } -void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_set_alias(uint32_t this_ptr, int8_tArray val) { - LDKUnsignedNodeAnnouncement this_ptr_conv; +void __attribute__((visibility("default"))) TS_FundingCreated_set_signature(uint32_t this_ptr, int8_tArray val) { + LDKFundingCreated this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - UnsignedNodeAnnouncement_set_alias(&this_ptr_conv, val_ref); + LDKSignature val_ref; + CHECK(val->arr_len == 64); + memcpy(val_ref.compact_form, val->elems, 64); + FundingCreated_set_signature(&this_ptr_conv, val_ref); } -void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_set_addresses(uint32_t this_ptr, uint32_tArray val) { - LDKUnsignedNodeAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_NetAddressZ val_constr; - val_constr.datalen = *((uint32_t*)val); - if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKNetAddress), "LDKCVec_NetAddressZ Elements"); - else - val_constr.data = NULL; - uint32_t* val_vals = (uint32_t*)(val + 4); - for (size_t m = 0; m < val_constr.datalen; m++) { - uint32_t val_conv_12 = val_vals[m]; - void* val_conv_12_ptr = (void*)(((uint64_t)val_conv_12) & ~1); - CHECK_ACCESS(val_conv_12_ptr); - LDKNetAddress val_conv_12_conv = *(LDKNetAddress*)(val_conv_12_ptr); - val_conv_12_conv = NetAddress_clone((LDKNetAddress*)(((uint64_t)val_conv_12) & ~1)); - val_constr.data[m] = val_conv_12_conv; +uint32_t __attribute__((visibility("default"))) TS_FundingCreated_new(int8_tArray temporary_channel_id_arg, int8_tArray funding_txid_arg, int16_t funding_output_index_arg, int8_tArray signature_arg) { + LDKThirtyTwoBytes temporary_channel_id_arg_ref; + CHECK(temporary_channel_id_arg->arr_len == 32); + memcpy(temporary_channel_id_arg_ref.data, temporary_channel_id_arg->elems, 32); + LDKThirtyTwoBytes funding_txid_arg_ref; + CHECK(funding_txid_arg->arr_len == 32); + memcpy(funding_txid_arg_ref.data, funding_txid_arg->elems, 32); + LDKSignature signature_arg_ref; + CHECK(signature_arg->arr_len == 64); + memcpy(signature_arg_ref.compact_form, signature_arg->elems, 64); + LDKFundingCreated ret_var = FundingCreated_new(temporary_channel_id_arg_ref, funding_txid_arg_ref, funding_output_index_arg, signature_arg_ref); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - UnsignedNodeAnnouncement_set_addresses(&this_ptr_conv, val_constr); + return ret_ref; } -static inline uint64_t UnsignedNodeAnnouncement_clone_ptr(LDKUnsignedNodeAnnouncement *NONNULL_PTR arg) { - LDKUnsignedNodeAnnouncement ret_var = UnsignedNodeAnnouncement_clone(arg); +static inline uint64_t FundingCreated_clone_ptr(LDKFundingCreated *NONNULL_PTR arg) { + LDKFundingCreated ret_var = FundingCreated_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -25757,21 +23285,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_clone_ptr(uint32_t arg) { - LDKUnsignedNodeAnnouncement arg_conv; +int64_t __attribute__((visibility("default"))) TS_FundingCreated_clone_ptr(uint32_t arg) { + LDKFundingCreated arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = UnsignedNodeAnnouncement_clone_ptr(&arg_conv); + int64_t ret_val = FundingCreated_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_clone(uint32_t orig) { - LDKUnsignedNodeAnnouncement orig_conv; +uint32_t __attribute__((visibility("default"))) TS_FundingCreated_clone(uint32_t orig) { + LDKFundingCreated orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKUnsignedNodeAnnouncement ret_var = UnsignedNodeAnnouncement_clone(&orig_conv); + LDKFundingCreated ret_var = FundingCreated_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -25783,75 +23311,64 @@ uint32_t __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_clo return ret_ref; } -void __attribute__((visibility("default"))) TS_NodeAnnouncement_free(uint32_t this_obj) { - LDKNodeAnnouncement this_obj_conv; +void __attribute__((visibility("default"))) TS_FundingSigned_free(uint32_t this_obj) { + LDKFundingSigned this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - NodeAnnouncement_free(this_obj_conv); + FundingSigned_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_NodeAnnouncement_get_signature(uint32_t this_ptr) { - LDKNodeAnnouncement this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_FundingSigned_get_channel_id(uint32_t this_ptr) { + LDKFundingSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), NodeAnnouncement_get_signature(&this_ptr_conv).compact_form, 64); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *FundingSigned_get_channel_id(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_NodeAnnouncement_set_signature(uint32_t this_ptr, int8_tArray val) { - LDKNodeAnnouncement this_ptr_conv; +void __attribute__((visibility("default"))) TS_FundingSigned_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKFundingSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSignature val_ref; - CHECK(*((uint32_t*)val) == 64); - memcpy(val_ref.compact_form, (uint8_t*)(val + 4), 64); - NodeAnnouncement_set_signature(&this_ptr_conv, val_ref); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + FundingSigned_set_channel_id(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncement_get_contents(uint32_t this_ptr) { - LDKNodeAnnouncement this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_FundingSigned_get_signature(uint32_t this_ptr) { + LDKFundingSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKUnsignedNodeAnnouncement ret_var = NodeAnnouncement_get_contents(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, FundingSigned_get_signature(&this_ptr_conv).compact_form, 64); + return ret_arr; } -void __attribute__((visibility("default"))) TS_NodeAnnouncement_set_contents(uint32_t this_ptr, uint32_t val) { - LDKNodeAnnouncement this_ptr_conv; +void __attribute__((visibility("default"))) TS_FundingSigned_set_signature(uint32_t this_ptr, int8_tArray val) { + LDKFundingSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKUnsignedNodeAnnouncement val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = UnsignedNodeAnnouncement_clone(&val_conv); - NodeAnnouncement_set_contents(&this_ptr_conv, val_conv); + LDKSignature val_ref; + CHECK(val->arr_len == 64); + memcpy(val_ref.compact_form, val->elems, 64); + FundingSigned_set_signature(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncement_new(int8_tArray signature_arg, uint32_t contents_arg) { +uint32_t __attribute__((visibility("default"))) TS_FundingSigned_new(int8_tArray channel_id_arg, int8_tArray signature_arg) { + LDKThirtyTwoBytes channel_id_arg_ref; + CHECK(channel_id_arg->arr_len == 32); + memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); LDKSignature signature_arg_ref; - CHECK(*((uint32_t*)signature_arg) == 64); - memcpy(signature_arg_ref.compact_form, (uint8_t*)(signature_arg + 4), 64); - LDKUnsignedNodeAnnouncement contents_arg_conv; - contents_arg_conv.inner = (void*)(contents_arg & (~1)); - contents_arg_conv.is_owned = (contents_arg & 1) || (contents_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(contents_arg_conv); - contents_arg_conv = UnsignedNodeAnnouncement_clone(&contents_arg_conv); - LDKNodeAnnouncement ret_var = NodeAnnouncement_new(signature_arg_ref, contents_arg_conv); + CHECK(signature_arg->arr_len == 64); + memcpy(signature_arg_ref.compact_form, signature_arg->elems, 64); + LDKFundingSigned ret_var = FundingSigned_new(channel_id_arg_ref, signature_arg_ref); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -25863,8 +23380,8 @@ uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncement_new(int8_tA return ret_ref; } -static inline uint64_t NodeAnnouncement_clone_ptr(LDKNodeAnnouncement *NONNULL_PTR arg) { - LDKNodeAnnouncement ret_var = NodeAnnouncement_clone(arg); +static inline uint64_t FundingSigned_clone_ptr(LDKFundingSigned *NONNULL_PTR arg) { + LDKFundingSigned ret_var = FundingSigned_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -25875,21 +23392,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_NodeAnnouncement_clone_ptr(uint32_t arg) { - LDKNodeAnnouncement arg_conv; +int64_t __attribute__((visibility("default"))) TS_FundingSigned_clone_ptr(uint32_t arg) { + LDKFundingSigned arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = NodeAnnouncement_clone_ptr(&arg_conv); + int64_t ret_val = FundingSigned_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncement_clone(uint32_t orig) { - LDKNodeAnnouncement orig_conv; +uint32_t __attribute__((visibility("default"))) TS_FundingSigned_clone(uint32_t orig) { + LDKFundingSigned orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKNodeAnnouncement ret_var = NodeAnnouncement_clone(&orig_conv); + LDKFundingSigned ret_var = FundingSigned_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -25901,168 +23418,187 @@ uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncement_clone(uint3 return ret_ref; } -void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_free(uint32_t this_obj) { - LDKUnsignedChannelAnnouncement this_obj_conv; +void __attribute__((visibility("default"))) TS_FundingLocked_free(uint32_t this_obj) { + LDKFundingLocked this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - UnsignedChannelAnnouncement_free(this_obj_conv); + FundingLocked_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_features(uint32_t this_ptr) { - LDKUnsignedChannelAnnouncement this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_FundingLocked_get_channel_id(uint32_t this_ptr) { + LDKFundingLocked this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelFeatures ret_var = UnsignedChannelAnnouncement_get_features(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *FundingLocked_get_channel_id(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_features(uint32_t this_ptr, uint32_t val) { - LDKUnsignedChannelAnnouncement this_ptr_conv; +void __attribute__((visibility("default"))) TS_FundingLocked_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKFundingLocked this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelFeatures val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = ChannelFeatures_clone(&val_conv); - UnsignedChannelAnnouncement_set_features(&this_ptr_conv, val_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + FundingLocked_set_channel_id(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_chain_hash(uint32_t this_ptr) { - LDKUnsignedChannelAnnouncement this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_FundingLocked_get_next_per_commitment_point(uint32_t this_ptr) { + LDKFundingLocked this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *UnsignedChannelAnnouncement_get_chain_hash(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, FundingLocked_get_next_per_commitment_point(&this_ptr_conv).compressed_form, 33); return ret_arr; } -void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_chain_hash(uint32_t this_ptr, int8_tArray val) { - LDKUnsignedChannelAnnouncement this_ptr_conv; +void __attribute__((visibility("default"))) TS_FundingLocked_set_next_per_commitment_point(uint32_t this_ptr, int8_tArray val) { + LDKFundingLocked this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - UnsignedChannelAnnouncement_set_chain_hash(&this_ptr_conv, val_ref); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + FundingLocked_set_next_per_commitment_point(&this_ptr_conv, val_ref); } -int64_t __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_short_channel_id(uint32_t this_ptr) { - LDKUnsignedChannelAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = UnsignedChannelAnnouncement_get_short_channel_id(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_FundingLocked_new(int8_tArray channel_id_arg, int8_tArray next_per_commitment_point_arg) { + LDKThirtyTwoBytes channel_id_arg_ref; + CHECK(channel_id_arg->arr_len == 32); + memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); + LDKPublicKey next_per_commitment_point_arg_ref; + CHECK(next_per_commitment_point_arg->arr_len == 33); + memcpy(next_per_commitment_point_arg_ref.compressed_form, next_per_commitment_point_arg->elems, 33); + LDKFundingLocked ret_var = FundingLocked_new(channel_id_arg_ref, next_per_commitment_point_arg_ref); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_short_channel_id(uint32_t this_ptr, int64_t val) { - LDKUnsignedChannelAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UnsignedChannelAnnouncement_set_short_channel_id(&this_ptr_conv, val); +static inline uint64_t FundingLocked_clone_ptr(LDKFundingLocked *NONNULL_PTR arg) { + LDKFundingLocked ret_var = FundingLocked_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_node_id_1(uint32_t this_ptr) { - LDKUnsignedChannelAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), UnsignedChannelAnnouncement_get_node_id_1(&this_ptr_conv).compressed_form, 33); - return ret_arr; + return ret_ref; } - -void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_node_id_1(uint32_t this_ptr, int8_tArray val) { - LDKUnsignedChannelAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - UnsignedChannelAnnouncement_set_node_id_1(&this_ptr_conv, val_ref); +int64_t __attribute__((visibility("default"))) TS_FundingLocked_clone_ptr(uint32_t arg) { + LDKFundingLocked arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = FundingLocked_clone_ptr(&arg_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_node_id_2(uint32_t this_ptr) { - LDKUnsignedChannelAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), UnsignedChannelAnnouncement_get_node_id_2(&this_ptr_conv).compressed_form, 33); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_FundingLocked_clone(uint32_t orig) { + LDKFundingLocked orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKFundingLocked ret_var = FundingLocked_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_node_id_2(uint32_t this_ptr, int8_tArray val) { - LDKUnsignedChannelAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - UnsignedChannelAnnouncement_set_node_id_2(&this_ptr_conv, val_ref); +void __attribute__((visibility("default"))) TS_Shutdown_free(uint32_t this_obj) { + LDKShutdown this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + Shutdown_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_bitcoin_key_1(uint32_t this_ptr) { - LDKUnsignedChannelAnnouncement this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_Shutdown_get_channel_id(uint32_t this_ptr) { + LDKShutdown this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), UnsignedChannelAnnouncement_get_bitcoin_key_1(&this_ptr_conv).compressed_form, 33); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *Shutdown_get_channel_id(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_bitcoin_key_1(uint32_t this_ptr, int8_tArray val) { - LDKUnsignedChannelAnnouncement this_ptr_conv; +void __attribute__((visibility("default"))) TS_Shutdown_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKShutdown this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - UnsignedChannelAnnouncement_set_bitcoin_key_1(&this_ptr_conv, val_ref); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + Shutdown_set_channel_id(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_bitcoin_key_2(uint32_t this_ptr) { - LDKUnsignedChannelAnnouncement this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_Shutdown_get_scriptpubkey(uint32_t this_ptr) { + LDKShutdown this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), UnsignedChannelAnnouncement_get_bitcoin_key_2(&this_ptr_conv).compressed_form, 33); + LDKu8slice ret_var = Shutdown_get_scriptpubkey(&this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); return ret_arr; } -void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_bitcoin_key_2(uint32_t this_ptr, int8_tArray val) { - LDKUnsignedChannelAnnouncement this_ptr_conv; +void __attribute__((visibility("default"))) TS_Shutdown_set_scriptpubkey(uint32_t this_ptr, int8_tArray val) { + LDKShutdown this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - UnsignedChannelAnnouncement_set_bitcoin_key_2(&this_ptr_conv, val_ref); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_u8Z val_ref; + val_ref.datalen = val->arr_len; + val_ref.data = MALLOC(val_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(val_ref.data, val->elems, val_ref.datalen); + Shutdown_set_scriptpubkey(&this_ptr_conv, val_ref); } -static inline uint64_t UnsignedChannelAnnouncement_clone_ptr(LDKUnsignedChannelAnnouncement *NONNULL_PTR arg) { - LDKUnsignedChannelAnnouncement ret_var = UnsignedChannelAnnouncement_clone(arg); +uint32_t __attribute__((visibility("default"))) TS_Shutdown_new(int8_tArray channel_id_arg, int8_tArray scriptpubkey_arg) { + LDKThirtyTwoBytes channel_id_arg_ref; + CHECK(channel_id_arg->arr_len == 32); + memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); + LDKCVec_u8Z scriptpubkey_arg_ref; + scriptpubkey_arg_ref.datalen = scriptpubkey_arg->arr_len; + scriptpubkey_arg_ref.data = MALLOC(scriptpubkey_arg_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(scriptpubkey_arg_ref.data, scriptpubkey_arg->elems, scriptpubkey_arg_ref.datalen); + LDKShutdown ret_var = Shutdown_new(channel_id_arg_ref, scriptpubkey_arg_ref); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +static inline uint64_t Shutdown_clone_ptr(LDKShutdown *NONNULL_PTR arg) { + LDKShutdown ret_var = Shutdown_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26073,21 +23609,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_clone_ptr(uint32_t arg) { - LDKUnsignedChannelAnnouncement arg_conv; +int64_t __attribute__((visibility("default"))) TS_Shutdown_clone_ptr(uint32_t arg) { + LDKShutdown arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = UnsignedChannelAnnouncement_clone_ptr(&arg_conv); + int64_t ret_val = Shutdown_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_clone(uint32_t orig) { - LDKUnsignedChannelAnnouncement orig_conv; +uint32_t __attribute__((visibility("default"))) TS_Shutdown_clone(uint32_t orig) { + LDKShutdown orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKUnsignedChannelAnnouncement ret_var = UnsignedChannelAnnouncement_clone(&orig_conv); + LDKShutdown ret_var = Shutdown_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26099,147 +23635,50 @@ uint32_t __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_ return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelAnnouncement_free(uint32_t this_obj) { - LDKChannelAnnouncement this_obj_conv; +void __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_free(uint32_t this_obj) { + LDKClosingSignedFeeRange this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelAnnouncement_free(this_obj_conv); -} - -int8_tArray __attribute__((visibility("default"))) TS_ChannelAnnouncement_get_node_signature_1(uint32_t this_ptr) { - LDKChannelAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ChannelAnnouncement_get_node_signature_1(&this_ptr_conv).compact_form, 64); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_ChannelAnnouncement_set_node_signature_1(uint32_t this_ptr, int8_tArray val) { - LDKChannelAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSignature val_ref; - CHECK(*((uint32_t*)val) == 64); - memcpy(val_ref.compact_form, (uint8_t*)(val + 4), 64); - ChannelAnnouncement_set_node_signature_1(&this_ptr_conv, val_ref); -} - -int8_tArray __attribute__((visibility("default"))) TS_ChannelAnnouncement_get_node_signature_2(uint32_t this_ptr) { - LDKChannelAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ChannelAnnouncement_get_node_signature_2(&this_ptr_conv).compact_form, 64); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_ChannelAnnouncement_set_node_signature_2(uint32_t this_ptr, int8_tArray val) { - LDKChannelAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSignature val_ref; - CHECK(*((uint32_t*)val) == 64); - memcpy(val_ref.compact_form, (uint8_t*)(val + 4), 64); - ChannelAnnouncement_set_node_signature_2(&this_ptr_conv, val_ref); -} - -int8_tArray __attribute__((visibility("default"))) TS_ChannelAnnouncement_get_bitcoin_signature_1(uint32_t this_ptr) { - LDKChannelAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ChannelAnnouncement_get_bitcoin_signature_1(&this_ptr_conv).compact_form, 64); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_ChannelAnnouncement_set_bitcoin_signature_1(uint32_t this_ptr, int8_tArray val) { - LDKChannelAnnouncement this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSignature val_ref; - CHECK(*((uint32_t*)val) == 64); - memcpy(val_ref.compact_form, (uint8_t*)(val + 4), 64); - ChannelAnnouncement_set_bitcoin_signature_1(&this_ptr_conv, val_ref); + ClosingSignedFeeRange_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_ChannelAnnouncement_get_bitcoin_signature_2(uint32_t this_ptr) { - LDKChannelAnnouncement this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_get_min_fee_satoshis(uint32_t this_ptr) { + LDKClosingSignedFeeRange this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ChannelAnnouncement_get_bitcoin_signature_2(&this_ptr_conv).compact_form, 64); - return ret_arr; + int64_t ret_val = ClosingSignedFeeRange_get_min_fee_satoshis(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelAnnouncement_set_bitcoin_signature_2(uint32_t this_ptr, int8_tArray val) { - LDKChannelAnnouncement this_ptr_conv; +void __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_set_min_fee_satoshis(uint32_t this_ptr, int64_t val) { + LDKClosingSignedFeeRange this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSignature val_ref; - CHECK(*((uint32_t*)val) == 64); - memcpy(val_ref.compact_form, (uint8_t*)(val + 4), 64); - ChannelAnnouncement_set_bitcoin_signature_2(&this_ptr_conv, val_ref); + ClosingSignedFeeRange_set_min_fee_satoshis(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_ChannelAnnouncement_get_contents(uint32_t this_ptr) { - LDKChannelAnnouncement this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_get_max_fee_satoshis(uint32_t this_ptr) { + LDKClosingSignedFeeRange this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKUnsignedChannelAnnouncement ret_var = ChannelAnnouncement_get_contents(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + int64_t ret_val = ClosingSignedFeeRange_get_max_fee_satoshis(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelAnnouncement_set_contents(uint32_t this_ptr, uint32_t val) { - LDKChannelAnnouncement this_ptr_conv; +void __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_set_max_fee_satoshis(uint32_t this_ptr, int64_t val) { + LDKClosingSignedFeeRange this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKUnsignedChannelAnnouncement val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = UnsignedChannelAnnouncement_clone(&val_conv); - ChannelAnnouncement_set_contents(&this_ptr_conv, val_conv); + ClosingSignedFeeRange_set_max_fee_satoshis(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_ChannelAnnouncement_new(int8_tArray node_signature_1_arg, int8_tArray node_signature_2_arg, int8_tArray bitcoin_signature_1_arg, int8_tArray bitcoin_signature_2_arg, uint32_t contents_arg) { - LDKSignature node_signature_1_arg_ref; - CHECK(*((uint32_t*)node_signature_1_arg) == 64); - memcpy(node_signature_1_arg_ref.compact_form, (uint8_t*)(node_signature_1_arg + 4), 64); - LDKSignature node_signature_2_arg_ref; - CHECK(*((uint32_t*)node_signature_2_arg) == 64); - memcpy(node_signature_2_arg_ref.compact_form, (uint8_t*)(node_signature_2_arg + 4), 64); - LDKSignature bitcoin_signature_1_arg_ref; - CHECK(*((uint32_t*)bitcoin_signature_1_arg) == 64); - memcpy(bitcoin_signature_1_arg_ref.compact_form, (uint8_t*)(bitcoin_signature_1_arg + 4), 64); - LDKSignature bitcoin_signature_2_arg_ref; - CHECK(*((uint32_t*)bitcoin_signature_2_arg) == 64); - memcpy(bitcoin_signature_2_arg_ref.compact_form, (uint8_t*)(bitcoin_signature_2_arg + 4), 64); - LDKUnsignedChannelAnnouncement contents_arg_conv; - contents_arg_conv.inner = (void*)(contents_arg & (~1)); - contents_arg_conv.is_owned = (contents_arg & 1) || (contents_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(contents_arg_conv); - contents_arg_conv = UnsignedChannelAnnouncement_clone(&contents_arg_conv); - LDKChannelAnnouncement ret_var = ChannelAnnouncement_new(node_signature_1_arg_ref, node_signature_2_arg_ref, bitcoin_signature_1_arg_ref, bitcoin_signature_2_arg_ref, contents_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_new(int64_t min_fee_satoshis_arg, int64_t max_fee_satoshis_arg) { + LDKClosingSignedFeeRange ret_var = ClosingSignedFeeRange_new(min_fee_satoshis_arg, max_fee_satoshis_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26251,8 +23690,8 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelAnnouncement_new(int8 return ret_ref; } -static inline uint64_t ChannelAnnouncement_clone_ptr(LDKChannelAnnouncement *NONNULL_PTR arg) { - LDKChannelAnnouncement ret_var = ChannelAnnouncement_clone(arg); +static inline uint64_t ClosingSignedFeeRange_clone_ptr(LDKClosingSignedFeeRange *NONNULL_PTR arg) { + LDKClosingSignedFeeRange ret_var = ClosingSignedFeeRange_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26263,21 +23702,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ChannelAnnouncement_clone_ptr(uint32_t arg) { - LDKChannelAnnouncement arg_conv; +int64_t __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_clone_ptr(uint32_t arg) { + LDKClosingSignedFeeRange arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelAnnouncement_clone_ptr(&arg_conv); + int64_t ret_val = ClosingSignedFeeRange_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelAnnouncement_clone(uint32_t orig) { - LDKChannelAnnouncement orig_conv; +uint32_t __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_clone(uint32_t orig) { + LDKClosingSignedFeeRange orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelAnnouncement ret_var = ChannelAnnouncement_clone(&orig_conv); + LDKClosingSignedFeeRange ret_var = ClosingSignedFeeRange_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26289,156 +23728,131 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelAnnouncement_clone(ui return ret_ref; } -void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_free(uint32_t this_obj) { - LDKUnsignedChannelUpdate this_obj_conv; +void __attribute__((visibility("default"))) TS_ClosingSigned_free(uint32_t this_obj) { + LDKClosingSigned this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - UnsignedChannelUpdate_free(this_obj_conv); + ClosingSigned_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_chain_hash(uint32_t this_ptr) { - LDKUnsignedChannelUpdate this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_ClosingSigned_get_channel_id(uint32_t this_ptr) { + LDKClosingSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *UnsignedChannelUpdate_get_chain_hash(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *ClosingSigned_get_channel_id(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_chain_hash(uint32_t this_ptr, int8_tArray val) { - LDKUnsignedChannelUpdate this_ptr_conv; +void __attribute__((visibility("default"))) TS_ClosingSigned_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKClosingSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - UnsignedChannelUpdate_set_chain_hash(&this_ptr_conv, val_ref); -} - -int64_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_short_channel_id(uint32_t this_ptr) { - LDKUnsignedChannelUpdate this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = UnsignedChannelUpdate_get_short_channel_id(&this_ptr_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_short_channel_id(uint32_t this_ptr, int64_t val) { - LDKUnsignedChannelUpdate this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UnsignedChannelUpdate_set_short_channel_id(&this_ptr_conv, val); -} - -int32_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_timestamp(uint32_t this_ptr) { - LDKUnsignedChannelUpdate this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = UnsignedChannelUpdate_get_timestamp(&this_ptr_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_timestamp(uint32_t this_ptr, int32_t val) { - LDKUnsignedChannelUpdate this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UnsignedChannelUpdate_set_timestamp(&this_ptr_conv, val); -} - -int8_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_flags(uint32_t this_ptr) { - LDKUnsignedChannelUpdate this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_t ret_val = UnsignedChannelUpdate_get_flags(&this_ptr_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_flags(uint32_t this_ptr, int8_t val) { - LDKUnsignedChannelUpdate this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UnsignedChannelUpdate_set_flags(&this_ptr_conv, val); -} - -int16_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_cltv_expiry_delta(uint32_t this_ptr) { - LDKUnsignedChannelUpdate this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = UnsignedChannelUpdate_get_cltv_expiry_delta(&this_ptr_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_cltv_expiry_delta(uint32_t this_ptr, int16_t val) { - LDKUnsignedChannelUpdate this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UnsignedChannelUpdate_set_cltv_expiry_delta(&this_ptr_conv, val); + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + ClosingSigned_set_channel_id(&this_ptr_conv, val_ref); } -int64_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_htlc_minimum_msat(uint32_t this_ptr) { - LDKUnsignedChannelUpdate this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_ClosingSigned_get_fee_satoshis(uint32_t this_ptr) { + LDKClosingSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = UnsignedChannelUpdate_get_htlc_minimum_msat(&this_ptr_conv); + int64_t ret_val = ClosingSigned_get_fee_satoshis(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_htlc_minimum_msat(uint32_t this_ptr, int64_t val) { - LDKUnsignedChannelUpdate this_ptr_conv; +void __attribute__((visibility("default"))) TS_ClosingSigned_set_fee_satoshis(uint32_t this_ptr, int64_t val) { + LDKClosingSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UnsignedChannelUpdate_set_htlc_minimum_msat(&this_ptr_conv, val); + ClosingSigned_set_fee_satoshis(&this_ptr_conv, val); } -int32_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_fee_base_msat(uint32_t this_ptr) { - LDKUnsignedChannelUpdate this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_ClosingSigned_get_signature(uint32_t this_ptr) { + LDKClosingSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = UnsignedChannelUpdate_get_fee_base_msat(&this_ptr_conv); - return ret_val; + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, ClosingSigned_get_signature(&this_ptr_conv).compact_form, 64); + return ret_arr; } -void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_fee_base_msat(uint32_t this_ptr, int32_t val) { - LDKUnsignedChannelUpdate this_ptr_conv; +void __attribute__((visibility("default"))) TS_ClosingSigned_set_signature(uint32_t this_ptr, int8_tArray val) { + LDKClosingSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UnsignedChannelUpdate_set_fee_base_msat(&this_ptr_conv, val); + LDKSignature val_ref; + CHECK(val->arr_len == 64); + memcpy(val_ref.compact_form, val->elems, 64); + ClosingSigned_set_signature(&this_ptr_conv, val_ref); } -int32_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_fee_proportional_millionths(uint32_t this_ptr) { - LDKUnsignedChannelUpdate this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ClosingSigned_get_fee_range(uint32_t this_ptr) { + LDKClosingSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = UnsignedChannelUpdate_get_fee_proportional_millionths(&this_ptr_conv); - return ret_val; + LDKClosingSignedFeeRange ret_var = ClosingSigned_get_fee_range(&this_ptr_conv); + uint64_t ret_ref = 0; + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_fee_proportional_millionths(uint32_t this_ptr, int32_t val) { - LDKUnsignedChannelUpdate this_ptr_conv; +void __attribute__((visibility("default"))) TS_ClosingSigned_set_fee_range(uint32_t this_ptr, uint32_t val) { + LDKClosingSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - UnsignedChannelUpdate_set_fee_proportional_millionths(&this_ptr_conv, val); + LDKClosingSignedFeeRange val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = ClosingSignedFeeRange_clone(&val_conv); + ClosingSigned_set_fee_range(&this_ptr_conv, val_conv); } -static inline uint64_t UnsignedChannelUpdate_clone_ptr(LDKUnsignedChannelUpdate *NONNULL_PTR arg) { - LDKUnsignedChannelUpdate ret_var = UnsignedChannelUpdate_clone(arg); +uint32_t __attribute__((visibility("default"))) TS_ClosingSigned_new(int8_tArray channel_id_arg, int64_t fee_satoshis_arg, int8_tArray signature_arg, uint32_t fee_range_arg) { + LDKThirtyTwoBytes channel_id_arg_ref; + CHECK(channel_id_arg->arr_len == 32); + memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); + LDKSignature signature_arg_ref; + CHECK(signature_arg->arr_len == 64); + memcpy(signature_arg_ref.compact_form, signature_arg->elems, 64); + LDKClosingSignedFeeRange fee_range_arg_conv; + fee_range_arg_conv.inner = (void*)(fee_range_arg & (~1)); + fee_range_arg_conv.is_owned = (fee_range_arg & 1) || (fee_range_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(fee_range_arg_conv); + fee_range_arg_conv = ClosingSignedFeeRange_clone(&fee_range_arg_conv); + LDKClosingSigned ret_var = ClosingSigned_new(channel_id_arg_ref, fee_satoshis_arg, signature_arg_ref, fee_range_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +static inline uint64_t ClosingSigned_clone_ptr(LDKClosingSigned *NONNULL_PTR arg) { + LDKClosingSigned ret_var = ClosingSigned_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26449,21 +23863,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_clone_ptr(uint32_t arg) { - LDKUnsignedChannelUpdate arg_conv; +int64_t __attribute__((visibility("default"))) TS_ClosingSigned_clone_ptr(uint32_t arg) { + LDKClosingSigned arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = UnsignedChannelUpdate_clone_ptr(&arg_conv); + int64_t ret_val = ClosingSigned_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_clone(uint32_t orig) { - LDKUnsignedChannelUpdate orig_conv; +uint32_t __attribute__((visibility("default"))) TS_ClosingSigned_clone(uint32_t orig) { + LDKClosingSigned orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKUnsignedChannelUpdate ret_var = UnsignedChannelUpdate_clone(&orig_conv); + LDKClosingSigned ret_var = ClosingSigned_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26475,88 +23889,109 @@ uint32_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_clone( return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelUpdate_free(uint32_t this_obj) { - LDKChannelUpdate this_obj_conv; +void __attribute__((visibility("default"))) TS_UpdateAddHTLC_free(uint32_t this_obj) { + LDKUpdateAddHTLC this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelUpdate_free(this_obj_conv); + UpdateAddHTLC_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_ChannelUpdate_get_signature(uint32_t this_ptr) { - LDKChannelUpdate this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_UpdateAddHTLC_get_channel_id(uint32_t this_ptr) { + LDKUpdateAddHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ChannelUpdate_get_signature(&this_ptr_conv).compact_form, 64); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *UpdateAddHTLC_get_channel_id(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelUpdate_set_signature(uint32_t this_ptr, int8_tArray val) { - LDKChannelUpdate this_ptr_conv; +void __attribute__((visibility("default"))) TS_UpdateAddHTLC_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKUpdateAddHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSignature val_ref; - CHECK(*((uint32_t*)val) == 64); - memcpy(val_ref.compact_form, (uint8_t*)(val + 4), 64); - ChannelUpdate_set_signature(&this_ptr_conv, val_ref); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + UpdateAddHTLC_set_channel_id(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_ChannelUpdate_get_contents(uint32_t this_ptr) { - LDKChannelUpdate this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_UpdateAddHTLC_get_htlc_id(uint32_t this_ptr) { + LDKUpdateAddHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKUnsignedChannelUpdate ret_var = ChannelUpdate_get_contents(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + int64_t ret_val = UpdateAddHTLC_get_htlc_id(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelUpdate_set_contents(uint32_t this_ptr, uint32_t val) { - LDKChannelUpdate this_ptr_conv; +void __attribute__((visibility("default"))) TS_UpdateAddHTLC_set_htlc_id(uint32_t this_ptr, int64_t val) { + LDKUpdateAddHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKUnsignedChannelUpdate val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = UnsignedChannelUpdate_clone(&val_conv); - ChannelUpdate_set_contents(&this_ptr_conv, val_conv); + UpdateAddHTLC_set_htlc_id(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_ChannelUpdate_new(int8_tArray signature_arg, uint32_t contents_arg) { - LDKSignature signature_arg_ref; - CHECK(*((uint32_t*)signature_arg) == 64); - memcpy(signature_arg_ref.compact_form, (uint8_t*)(signature_arg + 4), 64); - LDKUnsignedChannelUpdate contents_arg_conv; - contents_arg_conv.inner = (void*)(contents_arg & (~1)); - contents_arg_conv.is_owned = (contents_arg & 1) || (contents_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(contents_arg_conv); - contents_arg_conv = UnsignedChannelUpdate_clone(&contents_arg_conv); - LDKChannelUpdate ret_var = ChannelUpdate_new(signature_arg_ref, contents_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int64_t __attribute__((visibility("default"))) TS_UpdateAddHTLC_get_amount_msat(uint32_t this_ptr) { + LDKUpdateAddHTLC this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = UpdateAddHTLC_get_amount_msat(&this_ptr_conv); + return ret_val; } -static inline uint64_t ChannelUpdate_clone_ptr(LDKChannelUpdate *NONNULL_PTR arg) { - LDKChannelUpdate ret_var = ChannelUpdate_clone(arg); +void __attribute__((visibility("default"))) TS_UpdateAddHTLC_set_amount_msat(uint32_t this_ptr, int64_t val) { + LDKUpdateAddHTLC this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + UpdateAddHTLC_set_amount_msat(&this_ptr_conv, val); +} + +int8_tArray __attribute__((visibility("default"))) TS_UpdateAddHTLC_get_payment_hash(uint32_t this_ptr) { + LDKUpdateAddHTLC this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *UpdateAddHTLC_get_payment_hash(&this_ptr_conv), 32); + return ret_arr; +} + +void __attribute__((visibility("default"))) TS_UpdateAddHTLC_set_payment_hash(uint32_t this_ptr, int8_tArray val) { + LDKUpdateAddHTLC this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + UpdateAddHTLC_set_payment_hash(&this_ptr_conv, val_ref); +} + +int32_t __attribute__((visibility("default"))) TS_UpdateAddHTLC_get_cltv_expiry(uint32_t this_ptr) { + LDKUpdateAddHTLC this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = UpdateAddHTLC_get_cltv_expiry(&this_ptr_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_UpdateAddHTLC_set_cltv_expiry(uint32_t this_ptr, int32_t val) { + LDKUpdateAddHTLC this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + UpdateAddHTLC_set_cltv_expiry(&this_ptr_conv, val); +} + +static inline uint64_t UpdateAddHTLC_clone_ptr(LDKUpdateAddHTLC *NONNULL_PTR arg) { + LDKUpdateAddHTLC ret_var = UpdateAddHTLC_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26567,21 +24002,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ChannelUpdate_clone_ptr(uint32_t arg) { - LDKChannelUpdate arg_conv; +int64_t __attribute__((visibility("default"))) TS_UpdateAddHTLC_clone_ptr(uint32_t arg) { + LDKUpdateAddHTLC arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelUpdate_clone_ptr(&arg_conv); + int64_t ret_val = UpdateAddHTLC_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelUpdate_clone(uint32_t orig) { - LDKChannelUpdate orig_conv; +uint32_t __attribute__((visibility("default"))) TS_UpdateAddHTLC_clone(uint32_t orig) { + LDKUpdateAddHTLC orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelUpdate ret_var = ChannelUpdate_clone(&orig_conv); + LDKUpdateAddHTLC ret_var = UpdateAddHTLC_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26593,74 +24028,81 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelUpdate_clone(uint32_t return ret_ref; } -void __attribute__((visibility("default"))) TS_QueryChannelRange_free(uint32_t this_obj) { - LDKQueryChannelRange this_obj_conv; +void __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_free(uint32_t this_obj) { + LDKUpdateFulfillHTLC this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - QueryChannelRange_free(this_obj_conv); + UpdateFulfillHTLC_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_QueryChannelRange_get_chain_hash(uint32_t this_ptr) { - LDKQueryChannelRange this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_get_channel_id(uint32_t this_ptr) { + LDKUpdateFulfillHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *QueryChannelRange_get_chain_hash(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *UpdateFulfillHTLC_get_channel_id(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_QueryChannelRange_set_chain_hash(uint32_t this_ptr, int8_tArray val) { - LDKQueryChannelRange this_ptr_conv; +void __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKUpdateFulfillHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - QueryChannelRange_set_chain_hash(&this_ptr_conv, val_ref); + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + UpdateFulfillHTLC_set_channel_id(&this_ptr_conv, val_ref); } -int32_t __attribute__((visibility("default"))) TS_QueryChannelRange_get_first_blocknum(uint32_t this_ptr) { - LDKQueryChannelRange this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_get_htlc_id(uint32_t this_ptr) { + LDKUpdateFulfillHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = QueryChannelRange_get_first_blocknum(&this_ptr_conv); + int64_t ret_val = UpdateFulfillHTLC_get_htlc_id(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_QueryChannelRange_set_first_blocknum(uint32_t this_ptr, int32_t val) { - LDKQueryChannelRange this_ptr_conv; +void __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_set_htlc_id(uint32_t this_ptr, int64_t val) { + LDKUpdateFulfillHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - QueryChannelRange_set_first_blocknum(&this_ptr_conv, val); + UpdateFulfillHTLC_set_htlc_id(&this_ptr_conv, val); } -int32_t __attribute__((visibility("default"))) TS_QueryChannelRange_get_number_of_blocks(uint32_t this_ptr) { - LDKQueryChannelRange this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_get_payment_preimage(uint32_t this_ptr) { + LDKUpdateFulfillHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = QueryChannelRange_get_number_of_blocks(&this_ptr_conv); - return ret_val; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *UpdateFulfillHTLC_get_payment_preimage(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_QueryChannelRange_set_number_of_blocks(uint32_t this_ptr, int32_t val) { - LDKQueryChannelRange this_ptr_conv; +void __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_set_payment_preimage(uint32_t this_ptr, int8_tArray val) { + LDKUpdateFulfillHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - QueryChannelRange_set_number_of_blocks(&this_ptr_conv, val); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + UpdateFulfillHTLC_set_payment_preimage(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_QueryChannelRange_new(int8_tArray chain_hash_arg, int32_t first_blocknum_arg, int32_t number_of_blocks_arg) { - LDKThirtyTwoBytes chain_hash_arg_ref; - CHECK(*((uint32_t*)chain_hash_arg) == 32); - memcpy(chain_hash_arg_ref.data, (uint8_t*)(chain_hash_arg + 4), 32); - LDKQueryChannelRange ret_var = QueryChannelRange_new(chain_hash_arg_ref, first_blocknum_arg, number_of_blocks_arg); +uint32_t __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_new(int8_tArray channel_id_arg, int64_t htlc_id_arg, int8_tArray payment_preimage_arg) { + LDKThirtyTwoBytes channel_id_arg_ref; + CHECK(channel_id_arg->arr_len == 32); + memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); + LDKThirtyTwoBytes payment_preimage_arg_ref; + CHECK(payment_preimage_arg->arr_len == 32); + memcpy(payment_preimage_arg_ref.data, payment_preimage_arg->elems, 32); + LDKUpdateFulfillHTLC ret_var = UpdateFulfillHTLC_new(channel_id_arg_ref, htlc_id_arg, payment_preimage_arg_ref); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26672,8 +24114,8 @@ uint32_t __attribute__((visibility("default"))) TS_QueryChannelRange_new(int8_t return ret_ref; } -static inline uint64_t QueryChannelRange_clone_ptr(LDKQueryChannelRange *NONNULL_PTR arg) { - LDKQueryChannelRange ret_var = QueryChannelRange_clone(arg); +static inline uint64_t UpdateFulfillHTLC_clone_ptr(LDKUpdateFulfillHTLC *NONNULL_PTR arg) { + LDKUpdateFulfillHTLC ret_var = UpdateFulfillHTLC_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26684,21 +24126,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_QueryChannelRange_clone_ptr(uint32_t arg) { - LDKQueryChannelRange arg_conv; +int64_t __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_clone_ptr(uint32_t arg) { + LDKUpdateFulfillHTLC arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = QueryChannelRange_clone_ptr(&arg_conv); + int64_t ret_val = UpdateFulfillHTLC_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_QueryChannelRange_clone(uint32_t orig) { - LDKQueryChannelRange orig_conv; +uint32_t __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_clone(uint32_t orig) { + LDKUpdateFulfillHTLC orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKQueryChannelRange ret_var = QueryChannelRange_clone(&orig_conv); + LDKUpdateFulfillHTLC ret_var = UpdateFulfillHTLC_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26710,134 +24152,155 @@ uint32_t __attribute__((visibility("default"))) TS_QueryChannelRange_clone(uint return ret_ref; } -void __attribute__((visibility("default"))) TS_ReplyChannelRange_free(uint32_t this_obj) { - LDKReplyChannelRange this_obj_conv; +void __attribute__((visibility("default"))) TS_UpdateFailHTLC_free(uint32_t this_obj) { + LDKUpdateFailHTLC this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ReplyChannelRange_free(this_obj_conv); + UpdateFailHTLC_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_ReplyChannelRange_get_chain_hash(uint32_t this_ptr) { - LDKReplyChannelRange this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_UpdateFailHTLC_get_channel_id(uint32_t this_ptr) { + LDKUpdateFailHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *ReplyChannelRange_get_chain_hash(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *UpdateFailHTLC_get_channel_id(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_ReplyChannelRange_set_chain_hash(uint32_t this_ptr, int8_tArray val) { - LDKReplyChannelRange this_ptr_conv; +void __attribute__((visibility("default"))) TS_UpdateFailHTLC_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKUpdateFailHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - ReplyChannelRange_set_chain_hash(&this_ptr_conv, val_ref); + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + UpdateFailHTLC_set_channel_id(&this_ptr_conv, val_ref); } -int32_t __attribute__((visibility("default"))) TS_ReplyChannelRange_get_first_blocknum(uint32_t this_ptr) { - LDKReplyChannelRange this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_UpdateFailHTLC_get_htlc_id(uint32_t this_ptr) { + LDKUpdateFailHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = ReplyChannelRange_get_first_blocknum(&this_ptr_conv); + int64_t ret_val = UpdateFailHTLC_get_htlc_id(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ReplyChannelRange_set_first_blocknum(uint32_t this_ptr, int32_t val) { - LDKReplyChannelRange this_ptr_conv; +void __attribute__((visibility("default"))) TS_UpdateFailHTLC_set_htlc_id(uint32_t this_ptr, int64_t val) { + LDKUpdateFailHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ReplyChannelRange_set_first_blocknum(&this_ptr_conv, val); + UpdateFailHTLC_set_htlc_id(&this_ptr_conv, val); } -int32_t __attribute__((visibility("default"))) TS_ReplyChannelRange_get_number_of_blocks(uint32_t this_ptr) { - LDKReplyChannelRange this_ptr_conv; +static inline uint64_t UpdateFailHTLC_clone_ptr(LDKUpdateFailHTLC *NONNULL_PTR arg) { + LDKUpdateFailHTLC ret_var = UpdateFailHTLC_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_UpdateFailHTLC_clone_ptr(uint32_t arg) { + LDKUpdateFailHTLC arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = UpdateFailHTLC_clone_ptr(&arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_UpdateFailHTLC_clone(uint32_t orig) { + LDKUpdateFailHTLC orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKUpdateFailHTLC ret_var = UpdateFailHTLC_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +void __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_free(uint32_t this_obj) { + LDKUpdateFailMalformedHTLC this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + UpdateFailMalformedHTLC_free(this_obj_conv); +} + +int8_tArray __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_get_channel_id(uint32_t this_ptr) { + LDKUpdateFailMalformedHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = ReplyChannelRange_get_number_of_blocks(&this_ptr_conv); - return ret_val; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *UpdateFailMalformedHTLC_get_channel_id(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ReplyChannelRange_set_number_of_blocks(uint32_t this_ptr, int32_t val) { - LDKReplyChannelRange this_ptr_conv; +void __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKUpdateFailMalformedHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ReplyChannelRange_set_number_of_blocks(&this_ptr_conv, val); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + UpdateFailMalformedHTLC_set_channel_id(&this_ptr_conv, val_ref); } -jboolean __attribute__((visibility("default"))) TS_ReplyChannelRange_get_sync_complete(uint32_t this_ptr) { - LDKReplyChannelRange this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_get_htlc_id(uint32_t this_ptr) { + LDKUpdateFailMalformedHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = ReplyChannelRange_get_sync_complete(&this_ptr_conv); + int64_t ret_val = UpdateFailMalformedHTLC_get_htlc_id(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_ReplyChannelRange_set_sync_complete(uint32_t this_ptr, jboolean val) { - LDKReplyChannelRange this_ptr_conv; +void __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_set_htlc_id(uint32_t this_ptr, int64_t val) { + LDKUpdateFailMalformedHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ReplyChannelRange_set_sync_complete(&this_ptr_conv, val); + UpdateFailMalformedHTLC_set_htlc_id(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_ReplyChannelRange_set_short_channel_ids(uint32_t this_ptr, int64_tArray val) { - LDKReplyChannelRange this_ptr_conv; +int16_t __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_get_failure_code(uint32_t this_ptr) { + LDKUpdateFailMalformedHTLC this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_u64Z val_constr; - val_constr.datalen = *((uint32_t*)val); - if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements"); - else - val_constr.data = NULL; - int64_t* val_vals = (int64_t*)(val + 4); - for (size_t i = 0; i < val_constr.datalen; i++) { - int64_t val_conv_8 = val_vals[i]; - val_constr.data[i] = val_conv_8; - } - ReplyChannelRange_set_short_channel_ids(&this_ptr_conv, val_constr); + int16_t ret_val = UpdateFailMalformedHTLC_get_failure_code(&this_ptr_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ReplyChannelRange_new(int8_tArray chain_hash_arg, int32_t first_blocknum_arg, int32_t number_of_blocks_arg, jboolean sync_complete_arg, int64_tArray short_channel_ids_arg) { - LDKThirtyTwoBytes chain_hash_arg_ref; - CHECK(*((uint32_t*)chain_hash_arg) == 32); - memcpy(chain_hash_arg_ref.data, (uint8_t*)(chain_hash_arg + 4), 32); - LDKCVec_u64Z short_channel_ids_arg_constr; - short_channel_ids_arg_constr.datalen = *((uint32_t*)short_channel_ids_arg); - if (short_channel_ids_arg_constr.datalen > 0) - short_channel_ids_arg_constr.data = MALLOC(short_channel_ids_arg_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements"); - else - short_channel_ids_arg_constr.data = NULL; - int64_t* short_channel_ids_arg_vals = (int64_t*)(short_channel_ids_arg + 4); - for (size_t i = 0; i < short_channel_ids_arg_constr.datalen; i++) { - int64_t short_channel_ids_arg_conv_8 = short_channel_ids_arg_vals[i]; - short_channel_ids_arg_constr.data[i] = short_channel_ids_arg_conv_8; - } - LDKReplyChannelRange ret_var = ReplyChannelRange_new(chain_hash_arg_ref, first_blocknum_arg, number_of_blocks_arg, sync_complete_arg, short_channel_ids_arg_constr); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_set_failure_code(uint32_t this_ptr, int16_t val) { + LDKUpdateFailMalformedHTLC this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + UpdateFailMalformedHTLC_set_failure_code(&this_ptr_conv, val); } -static inline uint64_t ReplyChannelRange_clone_ptr(LDKReplyChannelRange *NONNULL_PTR arg) { - LDKReplyChannelRange ret_var = ReplyChannelRange_clone(arg); +static inline uint64_t UpdateFailMalformedHTLC_clone_ptr(LDKUpdateFailMalformedHTLC *NONNULL_PTR arg) { + LDKUpdateFailMalformedHTLC ret_var = UpdateFailMalformedHTLC_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26848,21 +24311,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ReplyChannelRange_clone_ptr(uint32_t arg) { - LDKReplyChannelRange arg_conv; +int64_t __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_clone_ptr(uint32_t arg) { + LDKUpdateFailMalformedHTLC arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ReplyChannelRange_clone_ptr(&arg_conv); + int64_t ret_val = UpdateFailMalformedHTLC_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ReplyChannelRange_clone(uint32_t orig) { - LDKReplyChannelRange orig_conv; +uint32_t __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_clone(uint32_t orig) { + LDKUpdateFailMalformedHTLC orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKReplyChannelRange ret_var = ReplyChannelRange_clone(&orig_conv); + LDKUpdateFailMalformedHTLC ret_var = UpdateFailMalformedHTLC_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26874,70 +24337,100 @@ uint32_t __attribute__((visibility("default"))) TS_ReplyChannelRange_clone(uint return ret_ref; } -void __attribute__((visibility("default"))) TS_QueryShortChannelIds_free(uint32_t this_obj) { - LDKQueryShortChannelIds this_obj_conv; +void __attribute__((visibility("default"))) TS_CommitmentSigned_free(uint32_t this_obj) { + LDKCommitmentSigned this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - QueryShortChannelIds_free(this_obj_conv); + CommitmentSigned_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_QueryShortChannelIds_get_chain_hash(uint32_t this_ptr) { - LDKQueryShortChannelIds this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_CommitmentSigned_get_channel_id(uint32_t this_ptr) { + LDKCommitmentSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *QueryShortChannelIds_get_chain_hash(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *CommitmentSigned_get_channel_id(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_QueryShortChannelIds_set_chain_hash(uint32_t this_ptr, int8_tArray val) { - LDKQueryShortChannelIds this_ptr_conv; +void __attribute__((visibility("default"))) TS_CommitmentSigned_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKCommitmentSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - QueryShortChannelIds_set_chain_hash(&this_ptr_conv, val_ref); + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + CommitmentSigned_set_channel_id(&this_ptr_conv, val_ref); } -void __attribute__((visibility("default"))) TS_QueryShortChannelIds_set_short_channel_ids(uint32_t this_ptr, int64_tArray val) { - LDKQueryShortChannelIds this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_CommitmentSigned_get_signature(uint32_t this_ptr) { + LDKCommitmentSigned this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_u64Z val_constr; - val_constr.datalen = *((uint32_t*)val); + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, CommitmentSigned_get_signature(&this_ptr_conv).compact_form, 64); + return ret_arr; +} + +void __attribute__((visibility("default"))) TS_CommitmentSigned_set_signature(uint32_t this_ptr, int8_tArray val) { + LDKCommitmentSigned this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKSignature val_ref; + CHECK(val->arr_len == 64); + memcpy(val_ref.compact_form, val->elems, 64); + CommitmentSigned_set_signature(&this_ptr_conv, val_ref); +} + +void __attribute__((visibility("default"))) TS_CommitmentSigned_set_htlc_signatures(uint32_t this_ptr, ptrArray val) { + LDKCommitmentSigned this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_SignatureZ val_constr; + val_constr.datalen = val->arr_len; if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements"); + val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); else val_constr.data = NULL; - int64_t* val_vals = (int64_t*)(val + 4); - for (size_t i = 0; i < val_constr.datalen; i++) { - int64_t val_conv_8 = val_vals[i]; - val_constr.data[i] = val_conv_8; + int8_tArray* val_vals = (void*) val->elems; + for (size_t m = 0; m < val_constr.datalen; m++) { + int8_tArray val_conv_12 = val_vals[m]; + LDKSignature val_conv_12_ref; + CHECK(val_conv_12->arr_len == 64); + memcpy(val_conv_12_ref.compact_form, val_conv_12->elems, 64); + val_constr.data[m] = val_conv_12_ref; } - QueryShortChannelIds_set_short_channel_ids(&this_ptr_conv, val_constr); + CommitmentSigned_set_htlc_signatures(&this_ptr_conv, val_constr); } -uint32_t __attribute__((visibility("default"))) TS_QueryShortChannelIds_new(int8_tArray chain_hash_arg, int64_tArray short_channel_ids_arg) { - LDKThirtyTwoBytes chain_hash_arg_ref; - CHECK(*((uint32_t*)chain_hash_arg) == 32); - memcpy(chain_hash_arg_ref.data, (uint8_t*)(chain_hash_arg + 4), 32); - LDKCVec_u64Z short_channel_ids_arg_constr; - short_channel_ids_arg_constr.datalen = *((uint32_t*)short_channel_ids_arg); - if (short_channel_ids_arg_constr.datalen > 0) - short_channel_ids_arg_constr.data = MALLOC(short_channel_ids_arg_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements"); +uint32_t __attribute__((visibility("default"))) TS_CommitmentSigned_new(int8_tArray channel_id_arg, int8_tArray signature_arg, ptrArray htlc_signatures_arg) { + LDKThirtyTwoBytes channel_id_arg_ref; + CHECK(channel_id_arg->arr_len == 32); + memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); + LDKSignature signature_arg_ref; + CHECK(signature_arg->arr_len == 64); + memcpy(signature_arg_ref.compact_form, signature_arg->elems, 64); + LDKCVec_SignatureZ htlc_signatures_arg_constr; + htlc_signatures_arg_constr.datalen = htlc_signatures_arg->arr_len; + if (htlc_signatures_arg_constr.datalen > 0) + htlc_signatures_arg_constr.data = MALLOC(htlc_signatures_arg_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); else - short_channel_ids_arg_constr.data = NULL; - int64_t* short_channel_ids_arg_vals = (int64_t*)(short_channel_ids_arg + 4); - for (size_t i = 0; i < short_channel_ids_arg_constr.datalen; i++) { - int64_t short_channel_ids_arg_conv_8 = short_channel_ids_arg_vals[i]; - short_channel_ids_arg_constr.data[i] = short_channel_ids_arg_conv_8; + htlc_signatures_arg_constr.data = NULL; + int8_tArray* htlc_signatures_arg_vals = (void*) htlc_signatures_arg->elems; + for (size_t m = 0; m < htlc_signatures_arg_constr.datalen; m++) { + int8_tArray htlc_signatures_arg_conv_12 = htlc_signatures_arg_vals[m]; + LDKSignature htlc_signatures_arg_conv_12_ref; + CHECK(htlc_signatures_arg_conv_12->arr_len == 64); + memcpy(htlc_signatures_arg_conv_12_ref.compact_form, htlc_signatures_arg_conv_12->elems, 64); + htlc_signatures_arg_constr.data[m] = htlc_signatures_arg_conv_12_ref; } - LDKQueryShortChannelIds ret_var = QueryShortChannelIds_new(chain_hash_arg_ref, short_channel_ids_arg_constr); + LDKCommitmentSigned ret_var = CommitmentSigned_new(channel_id_arg_ref, signature_arg_ref, htlc_signatures_arg_constr); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26949,8 +24442,8 @@ uint32_t __attribute__((visibility("default"))) TS_QueryShortChannelIds_new(int return ret_ref; } -static inline uint64_t QueryShortChannelIds_clone_ptr(LDKQueryShortChannelIds *NONNULL_PTR arg) { - LDKQueryShortChannelIds ret_var = QueryShortChannelIds_clone(arg); +static inline uint64_t CommitmentSigned_clone_ptr(LDKCommitmentSigned *NONNULL_PTR arg) { + LDKCommitmentSigned ret_var = CommitmentSigned_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26961,21 +24454,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_QueryShortChannelIds_clone_ptr(uint32_t arg) { - LDKQueryShortChannelIds arg_conv; +int64_t __attribute__((visibility("default"))) TS_CommitmentSigned_clone_ptr(uint32_t arg) { + LDKCommitmentSigned arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = QueryShortChannelIds_clone_ptr(&arg_conv); + int64_t ret_val = CommitmentSigned_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_QueryShortChannelIds_clone(uint32_t orig) { - LDKQueryShortChannelIds orig_conv; +uint32_t __attribute__((visibility("default"))) TS_CommitmentSigned_clone(uint32_t orig) { + LDKCommitmentSigned orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKQueryShortChannelIds ret_var = QueryShortChannelIds_clone(&orig_conv); + LDKCommitmentSigned ret_var = CommitmentSigned_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -26987,57 +24480,88 @@ uint32_t __attribute__((visibility("default"))) TS_QueryShortChannelIds_clone(u return ret_ref; } -void __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_free(uint32_t this_obj) { - LDKReplyShortChannelIdsEnd this_obj_conv; +void __attribute__((visibility("default"))) TS_RevokeAndACK_free(uint32_t this_obj) { + LDKRevokeAndACK this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ReplyShortChannelIdsEnd_free(this_obj_conv); + RevokeAndACK_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_get_chain_hash(uint32_t this_ptr) { - LDKReplyShortChannelIdsEnd this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_RevokeAndACK_get_channel_id(uint32_t this_ptr) { + LDKRevokeAndACK this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *ReplyShortChannelIdsEnd_get_chain_hash(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *RevokeAndACK_get_channel_id(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_set_chain_hash(uint32_t this_ptr, int8_tArray val) { - LDKReplyShortChannelIdsEnd this_ptr_conv; +void __attribute__((visibility("default"))) TS_RevokeAndACK_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKRevokeAndACK this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - ReplyShortChannelIdsEnd_set_chain_hash(&this_ptr_conv, val_ref); + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + RevokeAndACK_set_channel_id(&this_ptr_conv, val_ref); } -jboolean __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_get_full_information(uint32_t this_ptr) { - LDKReplyShortChannelIdsEnd this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_RevokeAndACK_get_per_commitment_secret(uint32_t this_ptr) { + LDKRevokeAndACK this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = ReplyShortChannelIdsEnd_get_full_information(&this_ptr_conv); - return ret_val; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *RevokeAndACK_get_per_commitment_secret(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_set_full_information(uint32_t this_ptr, jboolean val) { - LDKReplyShortChannelIdsEnd this_ptr_conv; +void __attribute__((visibility("default"))) TS_RevokeAndACK_set_per_commitment_secret(uint32_t this_ptr, int8_tArray val) { + LDKRevokeAndACK this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ReplyShortChannelIdsEnd_set_full_information(&this_ptr_conv, val); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + RevokeAndACK_set_per_commitment_secret(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_new(int8_tArray chain_hash_arg, jboolean full_information_arg) { - LDKThirtyTwoBytes chain_hash_arg_ref; - CHECK(*((uint32_t*)chain_hash_arg) == 32); - memcpy(chain_hash_arg_ref.data, (uint8_t*)(chain_hash_arg + 4), 32); - LDKReplyShortChannelIdsEnd ret_var = ReplyShortChannelIdsEnd_new(chain_hash_arg_ref, full_information_arg); +int8_tArray __attribute__((visibility("default"))) TS_RevokeAndACK_get_next_per_commitment_point(uint32_t this_ptr) { + LDKRevokeAndACK this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, RevokeAndACK_get_next_per_commitment_point(&this_ptr_conv).compressed_form, 33); + return ret_arr; +} + +void __attribute__((visibility("default"))) TS_RevokeAndACK_set_next_per_commitment_point(uint32_t this_ptr, int8_tArray val) { + LDKRevokeAndACK this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + RevokeAndACK_set_next_per_commitment_point(&this_ptr_conv, val_ref); +} + +uint32_t __attribute__((visibility("default"))) TS_RevokeAndACK_new(int8_tArray channel_id_arg, int8_tArray per_commitment_secret_arg, int8_tArray next_per_commitment_point_arg) { + LDKThirtyTwoBytes channel_id_arg_ref; + CHECK(channel_id_arg->arr_len == 32); + memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); + LDKThirtyTwoBytes per_commitment_secret_arg_ref; + CHECK(per_commitment_secret_arg->arr_len == 32); + memcpy(per_commitment_secret_arg_ref.data, per_commitment_secret_arg->elems, 32); + LDKPublicKey next_per_commitment_point_arg_ref; + CHECK(next_per_commitment_point_arg->arr_len == 33); + memcpy(next_per_commitment_point_arg_ref.compressed_form, next_per_commitment_point_arg->elems, 33); + LDKRevokeAndACK ret_var = RevokeAndACK_new(channel_id_arg_ref, per_commitment_secret_arg_ref, next_per_commitment_point_arg_ref); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -27049,8 +24573,8 @@ uint32_t __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_new( return ret_ref; } -static inline uint64_t ReplyShortChannelIdsEnd_clone_ptr(LDKReplyShortChannelIdsEnd *NONNULL_PTR arg) { - LDKReplyShortChannelIdsEnd ret_var = ReplyShortChannelIdsEnd_clone(arg); +static inline uint64_t RevokeAndACK_clone_ptr(LDKRevokeAndACK *NONNULL_PTR arg) { + LDKRevokeAndACK ret_var = RevokeAndACK_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -27061,21 +24585,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_clone_ptr(uint32_t arg) { - LDKReplyShortChannelIdsEnd arg_conv; +int64_t __attribute__((visibility("default"))) TS_RevokeAndACK_clone_ptr(uint32_t arg) { + LDKRevokeAndACK arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ReplyShortChannelIdsEnd_clone_ptr(&arg_conv); + int64_t ret_val = RevokeAndACK_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_clone(uint32_t orig) { - LDKReplyShortChannelIdsEnd orig_conv; +uint32_t __attribute__((visibility("default"))) TS_RevokeAndACK_clone(uint32_t orig) { + LDKRevokeAndACK orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKReplyShortChannelIdsEnd ret_var = ReplyShortChannelIdsEnd_clone(&orig_conv); + LDKRevokeAndACK ret_var = RevokeAndACK_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -27087,74 +24611,57 @@ uint32_t __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_clon return ret_ref; } -void __attribute__((visibility("default"))) TS_GossipTimestampFilter_free(uint32_t this_obj) { - LDKGossipTimestampFilter this_obj_conv; +void __attribute__((visibility("default"))) TS_UpdateFee_free(uint32_t this_obj) { + LDKUpdateFee this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - GossipTimestampFilter_free(this_obj_conv); + UpdateFee_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_GossipTimestampFilter_get_chain_hash(uint32_t this_ptr) { - LDKGossipTimestampFilter this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_UpdateFee_get_channel_id(uint32_t this_ptr) { + LDKUpdateFee this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *GossipTimestampFilter_get_chain_hash(&this_ptr_conv), 32); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *UpdateFee_get_channel_id(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_GossipTimestampFilter_set_chain_hash(uint32_t this_ptr, int8_tArray val) { - LDKGossipTimestampFilter this_ptr_conv; +void __attribute__((visibility("default"))) TS_UpdateFee_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKUpdateFee this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - GossipTimestampFilter_set_chain_hash(&this_ptr_conv, val_ref); -} - -int32_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_get_first_timestamp(uint32_t this_ptr) { - LDKGossipTimestampFilter this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = GossipTimestampFilter_get_first_timestamp(&this_ptr_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_GossipTimestampFilter_set_first_timestamp(uint32_t this_ptr, int32_t val) { - LDKGossipTimestampFilter this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - GossipTimestampFilter_set_first_timestamp(&this_ptr_conv, val); + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + UpdateFee_set_channel_id(&this_ptr_conv, val_ref); } -int32_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_get_timestamp_range(uint32_t this_ptr) { - LDKGossipTimestampFilter this_ptr_conv; +int32_t __attribute__((visibility("default"))) TS_UpdateFee_get_feerate_per_kw(uint32_t this_ptr) { + LDKUpdateFee this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = GossipTimestampFilter_get_timestamp_range(&this_ptr_conv); + int32_t ret_val = UpdateFee_get_feerate_per_kw(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_GossipTimestampFilter_set_timestamp_range(uint32_t this_ptr, int32_t val) { - LDKGossipTimestampFilter this_ptr_conv; +void __attribute__((visibility("default"))) TS_UpdateFee_set_feerate_per_kw(uint32_t this_ptr, int32_t val) { + LDKUpdateFee this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - GossipTimestampFilter_set_timestamp_range(&this_ptr_conv, val); + UpdateFee_set_feerate_per_kw(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_new(int8_tArray chain_hash_arg, int32_t first_timestamp_arg, int32_t timestamp_range_arg) { - LDKThirtyTwoBytes chain_hash_arg_ref; - CHECK(*((uint32_t*)chain_hash_arg) == 32); - memcpy(chain_hash_arg_ref.data, (uint8_t*)(chain_hash_arg + 4), 32); - LDKGossipTimestampFilter ret_var = GossipTimestampFilter_new(chain_hash_arg_ref, first_timestamp_arg, timestamp_range_arg); +uint32_t __attribute__((visibility("default"))) TS_UpdateFee_new(int8_tArray channel_id_arg, int32_t feerate_per_kw_arg) { + LDKThirtyTwoBytes channel_id_arg_ref; + CHECK(channel_id_arg->arr_len == 32); + memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); + LDKUpdateFee ret_var = UpdateFee_new(channel_id_arg_ref, feerate_per_kw_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -27166,8 +24673,8 @@ uint32_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_new(in return ret_ref; } -static inline uint64_t GossipTimestampFilter_clone_ptr(LDKGossipTimestampFilter *NONNULL_PTR arg) { - LDKGossipTimestampFilter ret_var = GossipTimestampFilter_clone(arg); +static inline uint64_t UpdateFee_clone_ptr(LDKUpdateFee *NONNULL_PTR arg) { + LDKUpdateFee ret_var = UpdateFee_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -27178,21 +24685,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_clone_ptr(uint32_t arg) { - LDKGossipTimestampFilter arg_conv; +int64_t __attribute__((visibility("default"))) TS_UpdateFee_clone_ptr(uint32_t arg) { + LDKUpdateFee arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = GossipTimestampFilter_clone_ptr(&arg_conv); + int64_t ret_val = UpdateFee_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_clone(uint32_t orig) { - LDKGossipTimestampFilter orig_conv; +uint32_t __attribute__((visibility("default"))) TS_UpdateFee_clone(uint32_t orig) { + LDKUpdateFee orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKGossipTimestampFilter ret_var = GossipTimestampFilter_clone(&orig_conv); + LDKUpdateFee ret_var = UpdateFee_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -27204,139 +24711,64 @@ uint32_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_clone( return ret_ref; } -void __attribute__((visibility("default"))) TS_ErrorAction_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKErrorAction this_ptr_conv = *(LDKErrorAction*)(this_ptr_ptr); - FREE((void*)this_ptr); - ErrorAction_free(this_ptr_conv); -} - -static inline uint64_t ErrorAction_clone_ptr(LDKErrorAction *NONNULL_PTR arg) { - LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); - *ret_copy = ErrorAction_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_ErrorAction_clone_ptr(uint32_t arg) { - LDKErrorAction* arg_conv = (LDKErrorAction*)arg; - int64_t ret_val = ErrorAction_clone_ptr(arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_ErrorAction_clone(uint32_t orig) { - LDKErrorAction* orig_conv = (LDKErrorAction*)orig; - LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); - *ret_copy = ErrorAction_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_ErrorAction_disconnect_peer(uint32_t msg) { - LDKErrorMessage msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = ErrorMessage_clone(&msg_conv); - LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); - *ret_copy = ErrorAction_disconnect_peer(msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_ErrorAction_ignore_error() { - LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); - *ret_copy = ErrorAction_ignore_error(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_ErrorAction_ignore_and_log(uint32_t a) { - LDKLevel a_conv = LDKLevel_from_js(a); - LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); - *ret_copy = ErrorAction_ignore_and_log(a_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_ErrorAction_ignore_duplicate_gossip() { - LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); - *ret_copy = ErrorAction_ignore_duplicate_gossip(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_ErrorAction_send_error_message(uint32_t msg) { - LDKErrorMessage msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = ErrorMessage_clone(&msg_conv); - LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); - *ret_copy = ErrorAction_send_error_message(msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} - -void __attribute__((visibility("default"))) TS_LightningError_free(uint32_t this_obj) { - LDKLightningError this_obj_conv; +void __attribute__((visibility("default"))) TS_DataLossProtect_free(uint32_t this_obj) { + LDKDataLossProtect this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - LightningError_free(this_obj_conv); + DataLossProtect_free(this_obj_conv); } -jstring __attribute__((visibility("default"))) TS_LightningError_get_err(uint32_t this_ptr) { - LDKLightningError this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_DataLossProtect_get_your_last_per_commitment_secret(uint32_t this_ptr) { + LDKDataLossProtect this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKStr ret_str = LightningError_get_err(&this_ptr_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *DataLossProtect_get_your_last_per_commitment_secret(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_LightningError_set_err(uint32_t this_ptr, jstring val) { - LDKLightningError this_ptr_conv; +void __attribute__((visibility("default"))) TS_DataLossProtect_set_your_last_per_commitment_secret(uint32_t this_ptr, int8_tArray val) { + LDKDataLossProtect this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKStr val_conv = str_ref_to_owned_c(val); - LightningError_set_err(&this_ptr_conv, val_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + DataLossProtect_set_your_last_per_commitment_secret(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_LightningError_get_action(uint32_t this_ptr) { - LDKLightningError this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); - *ret_copy = LightningError_get_action(&this_ptr_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_DataLossProtect_get_my_current_per_commitment_point(uint32_t this_ptr) { + LDKDataLossProtect this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, DataLossProtect_get_my_current_per_commitment_point(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -void __attribute__((visibility("default"))) TS_LightningError_set_action(uint32_t this_ptr, uint32_t val) { - LDKLightningError this_ptr_conv; +void __attribute__((visibility("default"))) TS_DataLossProtect_set_my_current_per_commitment_point(uint32_t this_ptr, int8_tArray val) { + LDKDataLossProtect this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKErrorAction val_conv = *(LDKErrorAction*)(val_ptr); - val_conv = ErrorAction_clone((LDKErrorAction*)(((uint64_t)val) & ~1)); - LightningError_set_action(&this_ptr_conv, val_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + DataLossProtect_set_my_current_per_commitment_point(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_LightningError_new(jstring err_arg, uint32_t action_arg) { - LDKStr err_arg_conv = str_ref_to_owned_c(err_arg); - void* action_arg_ptr = (void*)(((uint64_t)action_arg) & ~1); - CHECK_ACCESS(action_arg_ptr); - LDKErrorAction action_arg_conv = *(LDKErrorAction*)(action_arg_ptr); - action_arg_conv = ErrorAction_clone((LDKErrorAction*)(((uint64_t)action_arg) & ~1)); - LDKLightningError ret_var = LightningError_new(err_arg_conv, action_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_DataLossProtect_new(int8_tArray your_last_per_commitment_secret_arg, int8_tArray my_current_per_commitment_point_arg) { + LDKThirtyTwoBytes your_last_per_commitment_secret_arg_ref; + CHECK(your_last_per_commitment_secret_arg->arr_len == 32); + memcpy(your_last_per_commitment_secret_arg_ref.data, your_last_per_commitment_secret_arg->elems, 32); + LDKPublicKey my_current_per_commitment_point_arg_ref; + CHECK(my_current_per_commitment_point_arg->arr_len == 33); + memcpy(my_current_per_commitment_point_arg_ref.compressed_form, my_current_per_commitment_point_arg->elems, 33); + LDKDataLossProtect ret_var = DataLossProtect_new(your_last_per_commitment_secret_arg_ref, my_current_per_commitment_point_arg_ref); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -27348,8 +24780,8 @@ uint32_t __attribute__((visibility("default"))) TS_LightningError_new(jstring e return ret_ref; } -static inline uint64_t LightningError_clone_ptr(LDKLightningError *NONNULL_PTR arg) { - LDKLightningError ret_var = LightningError_clone(arg); +static inline uint64_t DataLossProtect_clone_ptr(LDKDataLossProtect *NONNULL_PTR arg) { + LDKDataLossProtect ret_var = DataLossProtect_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -27360,21 +24792,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_LightningError_clone_ptr(uint32_t arg) { - LDKLightningError arg_conv; +int64_t __attribute__((visibility("default"))) TS_DataLossProtect_clone_ptr(uint32_t arg) { + LDKDataLossProtect arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = LightningError_clone_ptr(&arg_conv); + int64_t ret_val = DataLossProtect_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_LightningError_clone(uint32_t orig) { - LDKLightningError orig_conv; +uint32_t __attribute__((visibility("default"))) TS_DataLossProtect_clone(uint32_t orig) { + LDKDataLossProtect orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKLightningError ret_var = LightningError_clone(&orig_conv); + LDKDataLossProtect ret_var = DataLossProtect_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -27386,352 +24818,206 @@ uint32_t __attribute__((visibility("default"))) TS_LightningError_clone(uint32_ return ret_ref; } -void __attribute__((visibility("default"))) TS_CommitmentUpdate_free(uint32_t this_obj) { - LDKCommitmentUpdate this_obj_conv; +void __attribute__((visibility("default"))) TS_ChannelReestablish_free(uint32_t this_obj) { + LDKChannelReestablish this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - CommitmentUpdate_free(this_obj_conv); + ChannelReestablish_free(this_obj_conv); } -uint32_tArray __attribute__((visibility("default"))) TS_CommitmentUpdate_get_update_add_htlcs(uint32_t this_ptr) { - LDKCommitmentUpdate this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_ChannelReestablish_get_channel_id(uint32_t this_ptr) { + LDKChannelReestablish this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_UpdateAddHTLCZ ret_var = CommitmentUpdate_get_update_add_htlcs(&this_ptr_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t p = 0; p < ret_var.datalen; p++) { - LDKUpdateAddHTLC ret_conv_15_var = ret_var.data[p]; - uint64_t ret_conv_15_ref = 0; - CHECK((((uint64_t)ret_conv_15_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_15_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_15_var); - ret_conv_15_ref = (uint64_t)ret_conv_15_var.inner; - if (ret_conv_15_var.is_owned) { - ret_conv_15_ref |= 1; - } - ret_arr_ptr[p] = ret_conv_15_ref; - } - - FREE(ret_var.data); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *ChannelReestablish_get_channel_id(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_CommitmentUpdate_set_update_add_htlcs(uint32_t this_ptr, uint32_tArray val) { - LDKCommitmentUpdate this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelReestablish_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKChannelReestablish this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_UpdateAddHTLCZ val_constr; - val_constr.datalen = *((uint32_t*)val); - if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKUpdateAddHTLC), "LDKCVec_UpdateAddHTLCZ Elements"); - else - val_constr.data = NULL; - uint32_t* val_vals = (uint32_t*)(val + 4); - for (size_t p = 0; p < val_constr.datalen; p++) { - uint32_t val_conv_15 = val_vals[p]; - LDKUpdateAddHTLC val_conv_15_conv; - val_conv_15_conv.inner = (void*)(val_conv_15 & (~1)); - val_conv_15_conv.is_owned = (val_conv_15 & 1) || (val_conv_15 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_15_conv); - val_conv_15_conv = UpdateAddHTLC_clone(&val_conv_15_conv); - val_constr.data[p] = val_conv_15_conv; - } - CommitmentUpdate_set_update_add_htlcs(&this_ptr_conv, val_constr); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + ChannelReestablish_set_channel_id(&this_ptr_conv, val_ref); } -uint32_tArray __attribute__((visibility("default"))) TS_CommitmentUpdate_get_update_fulfill_htlcs(uint32_t this_ptr) { - LDKCommitmentUpdate this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelReestablish_get_next_local_commitment_number(uint32_t this_ptr) { + LDKChannelReestablish this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_UpdateFulfillHTLCZ ret_var = CommitmentUpdate_get_update_fulfill_htlcs(&this_ptr_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t t = 0; t < ret_var.datalen; t++) { - LDKUpdateFulfillHTLC ret_conv_19_var = ret_var.data[t]; - uint64_t ret_conv_19_ref = 0; - CHECK((((uint64_t)ret_conv_19_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_19_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_19_var); - ret_conv_19_ref = (uint64_t)ret_conv_19_var.inner; - if (ret_conv_19_var.is_owned) { - ret_conv_19_ref |= 1; - } - ret_arr_ptr[t] = ret_conv_19_ref; - } - - FREE(ret_var.data); - return ret_arr; + int64_t ret_val = ChannelReestablish_get_next_local_commitment_number(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_CommitmentUpdate_set_update_fulfill_htlcs(uint32_t this_ptr, uint32_tArray val) { - LDKCommitmentUpdate this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelReestablish_set_next_local_commitment_number(uint32_t this_ptr, int64_t val) { + LDKChannelReestablish this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_UpdateFulfillHTLCZ val_constr; - val_constr.datalen = *((uint32_t*)val); - if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKUpdateFulfillHTLC), "LDKCVec_UpdateFulfillHTLCZ Elements"); - else - val_constr.data = NULL; - uint32_t* val_vals = (uint32_t*)(val + 4); - for (size_t t = 0; t < val_constr.datalen; t++) { - uint32_t val_conv_19 = val_vals[t]; - LDKUpdateFulfillHTLC val_conv_19_conv; - val_conv_19_conv.inner = (void*)(val_conv_19 & (~1)); - val_conv_19_conv.is_owned = (val_conv_19 & 1) || (val_conv_19 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_19_conv); - val_conv_19_conv = UpdateFulfillHTLC_clone(&val_conv_19_conv); - val_constr.data[t] = val_conv_19_conv; - } - CommitmentUpdate_set_update_fulfill_htlcs(&this_ptr_conv, val_constr); + ChannelReestablish_set_next_local_commitment_number(&this_ptr_conv, val); } -uint32_tArray __attribute__((visibility("default"))) TS_CommitmentUpdate_get_update_fail_htlcs(uint32_t this_ptr) { - LDKCommitmentUpdate this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelReestablish_get_next_remote_commitment_number(uint32_t this_ptr) { + LDKChannelReestablish this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_UpdateFailHTLCZ ret_var = CommitmentUpdate_get_update_fail_htlcs(&this_ptr_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t q = 0; q < ret_var.datalen; q++) { - LDKUpdateFailHTLC ret_conv_16_var = ret_var.data[q]; - uint64_t ret_conv_16_ref = 0; - CHECK((((uint64_t)ret_conv_16_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_16_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_16_var); - ret_conv_16_ref = (uint64_t)ret_conv_16_var.inner; - if (ret_conv_16_var.is_owned) { - ret_conv_16_ref |= 1; - } - ret_arr_ptr[q] = ret_conv_16_ref; - } - - FREE(ret_var.data); - return ret_arr; + int64_t ret_val = ChannelReestablish_get_next_remote_commitment_number(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_CommitmentUpdate_set_update_fail_htlcs(uint32_t this_ptr, uint32_tArray val) { - LDKCommitmentUpdate this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelReestablish_set_next_remote_commitment_number(uint32_t this_ptr, int64_t val) { + LDKChannelReestablish this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_UpdateFailHTLCZ val_constr; - val_constr.datalen = *((uint32_t*)val); - if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKUpdateFailHTLC), "LDKCVec_UpdateFailHTLCZ Elements"); - else - val_constr.data = NULL; - uint32_t* val_vals = (uint32_t*)(val + 4); - for (size_t q = 0; q < val_constr.datalen; q++) { - uint32_t val_conv_16 = val_vals[q]; - LDKUpdateFailHTLC val_conv_16_conv; - val_conv_16_conv.inner = (void*)(val_conv_16 & (~1)); - val_conv_16_conv.is_owned = (val_conv_16 & 1) || (val_conv_16 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_16_conv); - val_conv_16_conv = UpdateFailHTLC_clone(&val_conv_16_conv); - val_constr.data[q] = val_conv_16_conv; + ChannelReestablish_set_next_remote_commitment_number(&this_ptr_conv, val); +} + +static inline uint64_t ChannelReestablish_clone_ptr(LDKChannelReestablish *NONNULL_PTR arg) { + LDKChannelReestablish ret_var = ChannelReestablish_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_ChannelReestablish_clone_ptr(uint32_t arg) { + LDKChannelReestablish arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ChannelReestablish_clone_ptr(&arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_ChannelReestablish_clone(uint32_t orig) { + LDKChannelReestablish orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKChannelReestablish ret_var = ChannelReestablish_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - CommitmentUpdate_set_update_fail_htlcs(&this_ptr_conv, val_constr); + return ret_ref; } -uint32_tArray __attribute__((visibility("default"))) TS_CommitmentUpdate_get_update_fail_malformed_htlcs(uint32_t this_ptr) { - LDKCommitmentUpdate this_ptr_conv; +void __attribute__((visibility("default"))) TS_AnnouncementSignatures_free(uint32_t this_obj) { + LDKAnnouncementSignatures this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + AnnouncementSignatures_free(this_obj_conv); +} + +int8_tArray __attribute__((visibility("default"))) TS_AnnouncementSignatures_get_channel_id(uint32_t this_ptr) { + LDKAnnouncementSignatures this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_UpdateFailMalformedHTLCZ ret_var = CommitmentUpdate_get_update_fail_malformed_htlcs(&this_ptr_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t z = 0; z < ret_var.datalen; z++) { - LDKUpdateFailMalformedHTLC ret_conv_25_var = ret_var.data[z]; - uint64_t ret_conv_25_ref = 0; - CHECK((((uint64_t)ret_conv_25_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_25_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_25_var); - ret_conv_25_ref = (uint64_t)ret_conv_25_var.inner; - if (ret_conv_25_var.is_owned) { - ret_conv_25_ref |= 1; - } - ret_arr_ptr[z] = ret_conv_25_ref; - } - - FREE(ret_var.data); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *AnnouncementSignatures_get_channel_id(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_CommitmentUpdate_set_update_fail_malformed_htlcs(uint32_t this_ptr, uint32_tArray val) { - LDKCommitmentUpdate this_ptr_conv; +void __attribute__((visibility("default"))) TS_AnnouncementSignatures_set_channel_id(uint32_t this_ptr, int8_tArray val) { + LDKAnnouncementSignatures this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + AnnouncementSignatures_set_channel_id(&this_ptr_conv, val_ref); +} + +int64_t __attribute__((visibility("default"))) TS_AnnouncementSignatures_get_short_channel_id(uint32_t this_ptr) { + LDKAnnouncementSignatures this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = AnnouncementSignatures_get_short_channel_id(&this_ptr_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_AnnouncementSignatures_set_short_channel_id(uint32_t this_ptr, int64_t val) { + LDKAnnouncementSignatures this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_UpdateFailMalformedHTLCZ val_constr; - val_constr.datalen = *((uint32_t*)val); - if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKUpdateFailMalformedHTLC), "LDKCVec_UpdateFailMalformedHTLCZ Elements"); - else - val_constr.data = NULL; - uint32_t* val_vals = (uint32_t*)(val + 4); - for (size_t z = 0; z < val_constr.datalen; z++) { - uint32_t val_conv_25 = val_vals[z]; - LDKUpdateFailMalformedHTLC val_conv_25_conv; - val_conv_25_conv.inner = (void*)(val_conv_25 & (~1)); - val_conv_25_conv.is_owned = (val_conv_25 & 1) || (val_conv_25 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_25_conv); - val_conv_25_conv = UpdateFailMalformedHTLC_clone(&val_conv_25_conv); - val_constr.data[z] = val_conv_25_conv; - } - CommitmentUpdate_set_update_fail_malformed_htlcs(&this_ptr_conv, val_constr); + AnnouncementSignatures_set_short_channel_id(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_CommitmentUpdate_get_update_fee(uint32_t this_ptr) { - LDKCommitmentUpdate this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_AnnouncementSignatures_get_node_signature(uint32_t this_ptr) { + LDKAnnouncementSignatures this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKUpdateFee ret_var = CommitmentUpdate_get_update_fee(&this_ptr_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } - return ret_ref; + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, AnnouncementSignatures_get_node_signature(&this_ptr_conv).compact_form, 64); + return ret_arr; } -void __attribute__((visibility("default"))) TS_CommitmentUpdate_set_update_fee(uint32_t this_ptr, uint32_t val) { - LDKCommitmentUpdate this_ptr_conv; +void __attribute__((visibility("default"))) TS_AnnouncementSignatures_set_node_signature(uint32_t this_ptr, int8_tArray val) { + LDKAnnouncementSignatures this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKUpdateFee val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = UpdateFee_clone(&val_conv); - CommitmentUpdate_set_update_fee(&this_ptr_conv, val_conv); + LDKSignature val_ref; + CHECK(val->arr_len == 64); + memcpy(val_ref.compact_form, val->elems, 64); + AnnouncementSignatures_set_node_signature(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_CommitmentUpdate_get_commitment_signed(uint32_t this_ptr) { - LDKCommitmentUpdate this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_AnnouncementSignatures_get_bitcoin_signature(uint32_t this_ptr) { + LDKAnnouncementSignatures this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCommitmentSigned ret_var = CommitmentUpdate_get_commitment_signed(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, AnnouncementSignatures_get_bitcoin_signature(&this_ptr_conv).compact_form, 64); + return ret_arr; } -void __attribute__((visibility("default"))) TS_CommitmentUpdate_set_commitment_signed(uint32_t this_ptr, uint32_t val) { - LDKCommitmentUpdate this_ptr_conv; +void __attribute__((visibility("default"))) TS_AnnouncementSignatures_set_bitcoin_signature(uint32_t this_ptr, int8_tArray val) { + LDKAnnouncementSignatures this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCommitmentSigned val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = CommitmentSigned_clone(&val_conv); - CommitmentUpdate_set_commitment_signed(&this_ptr_conv, val_conv); + LDKSignature val_ref; + CHECK(val->arr_len == 64); + memcpy(val_ref.compact_form, val->elems, 64); + AnnouncementSignatures_set_bitcoin_signature(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_CommitmentUpdate_new(uint32_tArray update_add_htlcs_arg, uint32_tArray update_fulfill_htlcs_arg, uint32_tArray update_fail_htlcs_arg, uint32_tArray update_fail_malformed_htlcs_arg, uint32_t update_fee_arg, uint32_t commitment_signed_arg) { - LDKCVec_UpdateAddHTLCZ update_add_htlcs_arg_constr; - update_add_htlcs_arg_constr.datalen = *((uint32_t*)update_add_htlcs_arg); - if (update_add_htlcs_arg_constr.datalen > 0) - update_add_htlcs_arg_constr.data = MALLOC(update_add_htlcs_arg_constr.datalen * sizeof(LDKUpdateAddHTLC), "LDKCVec_UpdateAddHTLCZ Elements"); - else - update_add_htlcs_arg_constr.data = NULL; - uint32_t* update_add_htlcs_arg_vals = (uint32_t*)(update_add_htlcs_arg + 4); - for (size_t p = 0; p < update_add_htlcs_arg_constr.datalen; p++) { - uint32_t update_add_htlcs_arg_conv_15 = update_add_htlcs_arg_vals[p]; - LDKUpdateAddHTLC update_add_htlcs_arg_conv_15_conv; - update_add_htlcs_arg_conv_15_conv.inner = (void*)(update_add_htlcs_arg_conv_15 & (~1)); - update_add_htlcs_arg_conv_15_conv.is_owned = (update_add_htlcs_arg_conv_15 & 1) || (update_add_htlcs_arg_conv_15 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_add_htlcs_arg_conv_15_conv); - update_add_htlcs_arg_conv_15_conv = UpdateAddHTLC_clone(&update_add_htlcs_arg_conv_15_conv); - update_add_htlcs_arg_constr.data[p] = update_add_htlcs_arg_conv_15_conv; - } - LDKCVec_UpdateFulfillHTLCZ update_fulfill_htlcs_arg_constr; - update_fulfill_htlcs_arg_constr.datalen = *((uint32_t*)update_fulfill_htlcs_arg); - if (update_fulfill_htlcs_arg_constr.datalen > 0) - update_fulfill_htlcs_arg_constr.data = MALLOC(update_fulfill_htlcs_arg_constr.datalen * sizeof(LDKUpdateFulfillHTLC), "LDKCVec_UpdateFulfillHTLCZ Elements"); - else - update_fulfill_htlcs_arg_constr.data = NULL; - uint32_t* update_fulfill_htlcs_arg_vals = (uint32_t*)(update_fulfill_htlcs_arg + 4); - for (size_t t = 0; t < update_fulfill_htlcs_arg_constr.datalen; t++) { - uint32_t update_fulfill_htlcs_arg_conv_19 = update_fulfill_htlcs_arg_vals[t]; - LDKUpdateFulfillHTLC update_fulfill_htlcs_arg_conv_19_conv; - update_fulfill_htlcs_arg_conv_19_conv.inner = (void*)(update_fulfill_htlcs_arg_conv_19 & (~1)); - update_fulfill_htlcs_arg_conv_19_conv.is_owned = (update_fulfill_htlcs_arg_conv_19 & 1) || (update_fulfill_htlcs_arg_conv_19 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_fulfill_htlcs_arg_conv_19_conv); - update_fulfill_htlcs_arg_conv_19_conv = UpdateFulfillHTLC_clone(&update_fulfill_htlcs_arg_conv_19_conv); - update_fulfill_htlcs_arg_constr.data[t] = update_fulfill_htlcs_arg_conv_19_conv; - } - LDKCVec_UpdateFailHTLCZ update_fail_htlcs_arg_constr; - update_fail_htlcs_arg_constr.datalen = *((uint32_t*)update_fail_htlcs_arg); - if (update_fail_htlcs_arg_constr.datalen > 0) - update_fail_htlcs_arg_constr.data = MALLOC(update_fail_htlcs_arg_constr.datalen * sizeof(LDKUpdateFailHTLC), "LDKCVec_UpdateFailHTLCZ Elements"); - else - update_fail_htlcs_arg_constr.data = NULL; - uint32_t* update_fail_htlcs_arg_vals = (uint32_t*)(update_fail_htlcs_arg + 4); - for (size_t q = 0; q < update_fail_htlcs_arg_constr.datalen; q++) { - uint32_t update_fail_htlcs_arg_conv_16 = update_fail_htlcs_arg_vals[q]; - LDKUpdateFailHTLC update_fail_htlcs_arg_conv_16_conv; - update_fail_htlcs_arg_conv_16_conv.inner = (void*)(update_fail_htlcs_arg_conv_16 & (~1)); - update_fail_htlcs_arg_conv_16_conv.is_owned = (update_fail_htlcs_arg_conv_16 & 1) || (update_fail_htlcs_arg_conv_16 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_fail_htlcs_arg_conv_16_conv); - update_fail_htlcs_arg_conv_16_conv = UpdateFailHTLC_clone(&update_fail_htlcs_arg_conv_16_conv); - update_fail_htlcs_arg_constr.data[q] = update_fail_htlcs_arg_conv_16_conv; - } - LDKCVec_UpdateFailMalformedHTLCZ update_fail_malformed_htlcs_arg_constr; - update_fail_malformed_htlcs_arg_constr.datalen = *((uint32_t*)update_fail_malformed_htlcs_arg); - if (update_fail_malformed_htlcs_arg_constr.datalen > 0) - update_fail_malformed_htlcs_arg_constr.data = MALLOC(update_fail_malformed_htlcs_arg_constr.datalen * sizeof(LDKUpdateFailMalformedHTLC), "LDKCVec_UpdateFailMalformedHTLCZ Elements"); - else - update_fail_malformed_htlcs_arg_constr.data = NULL; - uint32_t* update_fail_malformed_htlcs_arg_vals = (uint32_t*)(update_fail_malformed_htlcs_arg + 4); - for (size_t z = 0; z < update_fail_malformed_htlcs_arg_constr.datalen; z++) { - uint32_t update_fail_malformed_htlcs_arg_conv_25 = update_fail_malformed_htlcs_arg_vals[z]; - LDKUpdateFailMalformedHTLC update_fail_malformed_htlcs_arg_conv_25_conv; - update_fail_malformed_htlcs_arg_conv_25_conv.inner = (void*)(update_fail_malformed_htlcs_arg_conv_25 & (~1)); - update_fail_malformed_htlcs_arg_conv_25_conv.is_owned = (update_fail_malformed_htlcs_arg_conv_25 & 1) || (update_fail_malformed_htlcs_arg_conv_25 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_fail_malformed_htlcs_arg_conv_25_conv); - update_fail_malformed_htlcs_arg_conv_25_conv = UpdateFailMalformedHTLC_clone(&update_fail_malformed_htlcs_arg_conv_25_conv); - update_fail_malformed_htlcs_arg_constr.data[z] = update_fail_malformed_htlcs_arg_conv_25_conv; - } - LDKUpdateFee update_fee_arg_conv; - update_fee_arg_conv.inner = (void*)(update_fee_arg & (~1)); - update_fee_arg_conv.is_owned = (update_fee_arg & 1) || (update_fee_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(update_fee_arg_conv); - update_fee_arg_conv = UpdateFee_clone(&update_fee_arg_conv); - LDKCommitmentSigned commitment_signed_arg_conv; - commitment_signed_arg_conv.inner = (void*)(commitment_signed_arg & (~1)); - commitment_signed_arg_conv.is_owned = (commitment_signed_arg & 1) || (commitment_signed_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_signed_arg_conv); - commitment_signed_arg_conv = CommitmentSigned_clone(&commitment_signed_arg_conv); - LDKCommitmentUpdate ret_var = CommitmentUpdate_new(update_add_htlcs_arg_constr, update_fulfill_htlcs_arg_constr, update_fail_htlcs_arg_constr, update_fail_malformed_htlcs_arg_constr, update_fee_arg_conv, commitment_signed_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_AnnouncementSignatures_new(int8_tArray channel_id_arg, int64_t short_channel_id_arg, int8_tArray node_signature_arg, int8_tArray bitcoin_signature_arg) { + LDKThirtyTwoBytes channel_id_arg_ref; + CHECK(channel_id_arg->arr_len == 32); + memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); + LDKSignature node_signature_arg_ref; + CHECK(node_signature_arg->arr_len == 64); + memcpy(node_signature_arg_ref.compact_form, node_signature_arg->elems, 64); + LDKSignature bitcoin_signature_arg_ref; + CHECK(bitcoin_signature_arg->arr_len == 64); + memcpy(bitcoin_signature_arg_ref.compact_form, bitcoin_signature_arg->elems, 64); + LDKAnnouncementSignatures ret_var = AnnouncementSignatures_new(channel_id_arg_ref, short_channel_id_arg, node_signature_arg_ref, bitcoin_signature_arg_ref); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -27743,8 +25029,8 @@ uint32_t __attribute__((visibility("default"))) TS_CommitmentUpdate_new(uint32_ return ret_ref; } -static inline uint64_t CommitmentUpdate_clone_ptr(LDKCommitmentUpdate *NONNULL_PTR arg) { - LDKCommitmentUpdate ret_var = CommitmentUpdate_clone(arg); +static inline uint64_t AnnouncementSignatures_clone_ptr(LDKAnnouncementSignatures *NONNULL_PTR arg) { + LDKAnnouncementSignatures ret_var = AnnouncementSignatures_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -27755,21 +25041,133 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_CommitmentUpdate_clone_ptr(uint32_t arg) { - LDKCommitmentUpdate arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = CommitmentUpdate_clone_ptr(&arg_conv); - return ret_val; +int64_t __attribute__((visibility("default"))) TS_AnnouncementSignatures_clone_ptr(uint32_t arg) { + LDKAnnouncementSignatures arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = AnnouncementSignatures_clone_ptr(&arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_AnnouncementSignatures_clone(uint32_t orig) { + LDKAnnouncementSignatures orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKAnnouncementSignatures ret_var = AnnouncementSignatures_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +void __attribute__((visibility("default"))) TS_NetAddress_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKNetAddress this_ptr_conv = *(LDKNetAddress*)(this_ptr_ptr); + FREE((void*)this_ptr); + NetAddress_free(this_ptr_conv); +} + +static inline uint64_t NetAddress_clone_ptr(LDKNetAddress *NONNULL_PTR arg) { + LDKNetAddress *ret_copy = MALLOC(sizeof(LDKNetAddress), "LDKNetAddress"); + *ret_copy = NetAddress_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_NetAddress_clone_ptr(uint32_t arg) { + LDKNetAddress* arg_conv = (LDKNetAddress*)arg; + int64_t ret_val = NetAddress_clone_ptr(arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_NetAddress_clone(uint32_t orig) { + LDKNetAddress* orig_conv = (LDKNetAddress*)orig; + LDKNetAddress *ret_copy = MALLOC(sizeof(LDKNetAddress), "LDKNetAddress"); + *ret_copy = NetAddress_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_NetAddress_ipv4(int8_tArray addr, int16_t port) { + LDKFourBytes addr_ref; + CHECK(addr->arr_len == 4); + memcpy(addr_ref.data, addr->elems, 4); + LDKNetAddress *ret_copy = MALLOC(sizeof(LDKNetAddress), "LDKNetAddress"); + *ret_copy = NetAddress_ipv4(addr_ref, port); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_NetAddress_ipv6(int8_tArray addr, int16_t port) { + LDKSixteenBytes addr_ref; + CHECK(addr->arr_len == 16); + memcpy(addr_ref.data, addr->elems, 16); + LDKNetAddress *ret_copy = MALLOC(sizeof(LDKNetAddress), "LDKNetAddress"); + *ret_copy = NetAddress_ipv6(addr_ref, port); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_NetAddress_onion_v2(int8_tArray a) { + LDKTwelveBytes a_ref; + CHECK(a->arr_len == 12); + memcpy(a_ref.data, a->elems, 12); + LDKNetAddress *ret_copy = MALLOC(sizeof(LDKNetAddress), "LDKNetAddress"); + *ret_copy = NetAddress_onion_v2(a_ref); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_NetAddress_onion_v3(int8_tArray ed25519_pubkey, int16_t checksum, int8_t version, int16_t port) { + LDKThirtyTwoBytes ed25519_pubkey_ref; + CHECK(ed25519_pubkey->arr_len == 32); + memcpy(ed25519_pubkey_ref.data, ed25519_pubkey->elems, 32); + LDKNetAddress *ret_copy = MALLOC(sizeof(LDKNetAddress), "LDKNetAddress"); + *ret_copy = NetAddress_onion_v3(ed25519_pubkey_ref, checksum, version, port); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +int8_tArray __attribute__((visibility("default"))) TS_NetAddress_write(uint32_t obj) { + LDKNetAddress* obj_conv = (LDKNetAddress*)obj; + LDKCVec_u8Z ret_var = NetAddress_write(obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_NetAddress_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_NetAddressDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NetAddressDecodeErrorZ), "LDKCResult_NetAddressDecodeErrorZ"); + *ret_conv = NetAddress_read(ser_ref); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_free(uint32_t this_obj) { + LDKUnsignedNodeAnnouncement this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + UnsignedNodeAnnouncement_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_CommitmentUpdate_clone(uint32_t orig) { - LDKCommitmentUpdate orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKCommitmentUpdate ret_var = CommitmentUpdate_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_get_features(uint32_t this_ptr) { + LDKUnsignedNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKNodeFeatures ret_var = UnsignedNodeAnnouncement_get_features(&this_ptr_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -27781,785 +25179,841 @@ uint32_t __attribute__((visibility("default"))) TS_CommitmentUpdate_clone(uint3 return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelMessageHandler_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKChannelMessageHandler this_ptr_conv = *(LDKChannelMessageHandler*)(this_ptr_ptr); - FREE((void*)this_ptr); - ChannelMessageHandler_free(this_ptr_conv); -} - -void __attribute__((visibility("default"))) TS_RoutingMessageHandler_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKRoutingMessageHandler this_ptr_conv = *(LDKRoutingMessageHandler*)(this_ptr_ptr); - FREE((void*)this_ptr); - RoutingMessageHandler_free(this_ptr_conv); -} - -int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_write(uint32_t obj) { - LDKAcceptChannel obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = AcceptChannel_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_AcceptChannel_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_AcceptChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AcceptChannelDecodeErrorZ), "LDKCResult_AcceptChannelDecodeErrorZ"); - *ret_conv = AcceptChannel_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_set_features(uint32_t this_ptr, uint32_t val) { + LDKUnsignedNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKNodeFeatures val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = NodeFeatures_clone(&val_conv); + UnsignedNodeAnnouncement_set_features(&this_ptr_conv, val_conv); } -int8_tArray __attribute__((visibility("default"))) TS_AnnouncementSignatures_write(uint32_t obj) { - LDKAnnouncementSignatures obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = AnnouncementSignatures_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +int32_t __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_get_timestamp(uint32_t this_ptr) { + LDKUnsignedNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = UnsignedNodeAnnouncement_get_timestamp(&this_ptr_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_AnnouncementSignatures_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_AnnouncementSignaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AnnouncementSignaturesDecodeErrorZ), "LDKCResult_AnnouncementSignaturesDecodeErrorZ"); - *ret_conv = AnnouncementSignatures_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_set_timestamp(uint32_t this_ptr, int32_t val) { + LDKUnsignedNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + UnsignedNodeAnnouncement_set_timestamp(&this_ptr_conv, val); } -int8_tArray __attribute__((visibility("default"))) TS_ChannelReestablish_write(uint32_t obj) { - LDKChannelReestablish obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ChannelReestablish_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_get_node_id(uint32_t this_ptr) { + LDKUnsignedNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, UnsignedNodeAnnouncement_get_node_id(&this_ptr_conv).compressed_form, 33); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelReestablish_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ChannelReestablishDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelReestablishDecodeErrorZ), "LDKCResult_ChannelReestablishDecodeErrorZ"); - *ret_conv = ChannelReestablish_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_set_node_id(uint32_t this_ptr, int8_tArray val) { + LDKUnsignedNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + UnsignedNodeAnnouncement_set_node_id(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_ClosingSigned_write(uint32_t obj) { - LDKClosingSigned obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ClosingSigned_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_get_rgb(uint32_t this_ptr) { + LDKUnsignedNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(3); + memcpy(ret_arr->elems, *UnsignedNodeAnnouncement_get_rgb(&this_ptr_conv), 3); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ClosingSigned_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ClosingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedDecodeErrorZ), "LDKCResult_ClosingSignedDecodeErrorZ"); - *ret_conv = ClosingSigned_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_set_rgb(uint32_t this_ptr, int8_tArray val) { + LDKUnsignedNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKThreeBytes val_ref; + CHECK(val->arr_len == 3); + memcpy(val_ref.data, val->elems, 3); + UnsignedNodeAnnouncement_set_rgb(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_write(uint32_t obj) { - LDKClosingSignedFeeRange obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ClosingSignedFeeRange_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_get_alias(uint32_t this_ptr) { + LDKUnsignedNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *UnsignedNodeAnnouncement_get_alias(&this_ptr_conv), 32); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ), "LDKCResult_ClosingSignedFeeRangeDecodeErrorZ"); - *ret_conv = ClosingSignedFeeRange_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_set_alias(uint32_t this_ptr, int8_tArray val) { + LDKUnsignedNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + UnsignedNodeAnnouncement_set_alias(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_CommitmentSigned_write(uint32_t obj) { - LDKCommitmentSigned obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = CommitmentSigned_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +void __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_set_addresses(uint32_t this_ptr, uint32_tArray val) { + LDKUnsignedNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_NetAddressZ val_constr; + val_constr.datalen = val->arr_len; + if (val_constr.datalen > 0) + val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKNetAddress), "LDKCVec_NetAddressZ Elements"); + else + val_constr.data = NULL; + uint32_t* val_vals = val->elems; + for (size_t m = 0; m < val_constr.datalen; m++) { + uint32_t val_conv_12 = val_vals[m]; + void* val_conv_12_ptr = (void*)(((uint64_t)val_conv_12) & ~1); + CHECK_ACCESS(val_conv_12_ptr); + LDKNetAddress val_conv_12_conv = *(LDKNetAddress*)(val_conv_12_ptr); + val_conv_12_conv = NetAddress_clone((LDKNetAddress*)(((uint64_t)val_conv_12) & ~1)); + val_constr.data[m] = val_conv_12_conv; + } + UnsignedNodeAnnouncement_set_addresses(&this_ptr_conv, val_constr); } -uint32_t __attribute__((visibility("default"))) TS_CommitmentSigned_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_CommitmentSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentSignedDecodeErrorZ), "LDKCResult_CommitmentSignedDecodeErrorZ"); - *ret_conv = CommitmentSigned_read(ser_ref); - return (uint64_t)ret_conv; +static inline uint64_t UnsignedNodeAnnouncement_clone_ptr(LDKUnsignedNodeAnnouncement *NONNULL_PTR arg) { + LDKUnsignedNodeAnnouncement ret_var = UnsignedNodeAnnouncement_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -int8_tArray __attribute__((visibility("default"))) TS_FundingCreated_write(uint32_t obj) { - LDKFundingCreated obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = FundingCreated_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; + return ret_ref; } - -uint32_t __attribute__((visibility("default"))) TS_FundingCreated_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_FundingCreatedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingCreatedDecodeErrorZ), "LDKCResult_FundingCreatedDecodeErrorZ"); - *ret_conv = FundingCreated_read(ser_ref); - return (uint64_t)ret_conv; +int64_t __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_clone_ptr(uint32_t arg) { + LDKUnsignedNodeAnnouncement arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = UnsignedNodeAnnouncement_clone_ptr(&arg_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_FundingSigned_write(uint32_t obj) { - LDKFundingSigned obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = FundingSigned_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_clone(uint32_t orig) { + LDKUnsignedNodeAnnouncement orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKUnsignedNodeAnnouncement ret_var = UnsignedNodeAnnouncement_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_FundingSigned_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_FundingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingSignedDecodeErrorZ), "LDKCResult_FundingSignedDecodeErrorZ"); - *ret_conv = FundingSigned_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_NodeAnnouncement_free(uint32_t this_obj) { + LDKNodeAnnouncement this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + NodeAnnouncement_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_FundingLocked_write(uint32_t obj) { - LDKFundingLocked obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = FundingLocked_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_NodeAnnouncement_get_signature(uint32_t this_ptr) { + LDKNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, NodeAnnouncement_get_signature(&this_ptr_conv).compact_form, 64); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_FundingLocked_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_FundingLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingLockedDecodeErrorZ), "LDKCResult_FundingLockedDecodeErrorZ"); - *ret_conv = FundingLocked_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_NodeAnnouncement_set_signature(uint32_t this_ptr, int8_tArray val) { + LDKNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKSignature val_ref; + CHECK(val->arr_len == 64); + memcpy(val_ref.compact_form, val->elems, 64); + NodeAnnouncement_set_signature(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_Init_write(uint32_t obj) { - LDKInit obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = Init_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncement_get_contents(uint32_t this_ptr) { + LDKNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKUnsignedNodeAnnouncement ret_var = NodeAnnouncement_get_contents(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_Init_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_InitDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitDecodeErrorZ), "LDKCResult_InitDecodeErrorZ"); - *ret_conv = Init_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_NodeAnnouncement_set_contents(uint32_t this_ptr, uint32_t val) { + LDKNodeAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKUnsignedNodeAnnouncement val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = UnsignedNodeAnnouncement_clone(&val_conv); + NodeAnnouncement_set_contents(&this_ptr_conv, val_conv); } -int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_write(uint32_t obj) { - LDKOpenChannel obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = OpenChannel_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncement_new(int8_tArray signature_arg, uint32_t contents_arg) { + LDKSignature signature_arg_ref; + CHECK(signature_arg->arr_len == 64); + memcpy(signature_arg_ref.compact_form, signature_arg->elems, 64); + LDKUnsignedNodeAnnouncement contents_arg_conv; + contents_arg_conv.inner = (void*)(contents_arg & (~1)); + contents_arg_conv.is_owned = (contents_arg & 1) || (contents_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(contents_arg_conv); + contents_arg_conv = UnsignedNodeAnnouncement_clone(&contents_arg_conv); + LDKNodeAnnouncement ret_var = NodeAnnouncement_new(signature_arg_ref, contents_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_OpenChannel_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_OpenChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OpenChannelDecodeErrorZ), "LDKCResult_OpenChannelDecodeErrorZ"); - *ret_conv = OpenChannel_read(ser_ref); - return (uint64_t)ret_conv; +static inline uint64_t NodeAnnouncement_clone_ptr(LDKNodeAnnouncement *NONNULL_PTR arg) { + LDKNodeAnnouncement ret_var = NodeAnnouncement_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_NodeAnnouncement_clone_ptr(uint32_t arg) { + LDKNodeAnnouncement arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = NodeAnnouncement_clone_ptr(&arg_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_RevokeAndACK_write(uint32_t obj) { - LDKRevokeAndACK obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = RevokeAndACK_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncement_clone(uint32_t orig) { + LDKNodeAnnouncement orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKNodeAnnouncement ret_var = NodeAnnouncement_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_RevokeAndACK_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_RevokeAndACKDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevokeAndACKDecodeErrorZ), "LDKCResult_RevokeAndACKDecodeErrorZ"); - *ret_conv = RevokeAndACK_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_free(uint32_t this_obj) { + LDKUnsignedChannelAnnouncement this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + UnsignedChannelAnnouncement_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_Shutdown_write(uint32_t obj) { - LDKShutdown obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = Shutdown_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_features(uint32_t this_ptr) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelFeatures ret_var = UnsignedChannelAnnouncement_get_features(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_Shutdown_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ShutdownDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownDecodeErrorZ), "LDKCResult_ShutdownDecodeErrorZ"); - *ret_conv = Shutdown_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_features(uint32_t this_ptr, uint32_t val) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelFeatures val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = ChannelFeatures_clone(&val_conv); + UnsignedChannelAnnouncement_set_features(&this_ptr_conv, val_conv); } -int8_tArray __attribute__((visibility("default"))) TS_UpdateFailHTLC_write(uint32_t obj) { - LDKUpdateFailHTLC obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = UpdateFailHTLC_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_chain_hash(uint32_t this_ptr) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *UnsignedChannelAnnouncement_get_chain_hash(&this_ptr_conv), 32); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_UpdateFailHTLC_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_UpdateFailHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailHTLCDecodeErrorZ), "LDKCResult_UpdateFailHTLCDecodeErrorZ"); - *ret_conv = UpdateFailHTLC_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_chain_hash(uint32_t this_ptr, int8_tArray val) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + UnsignedChannelAnnouncement_set_chain_hash(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_write(uint32_t obj) { - LDKUpdateFailMalformedHTLC obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = UpdateFailMalformedHTLC_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +int64_t __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_short_channel_id(uint32_t this_ptr) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = UnsignedChannelAnnouncement_get_short_channel_id(&this_ptr_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ), "LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ"); - *ret_conv = UpdateFailMalformedHTLC_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_short_channel_id(uint32_t this_ptr, int64_t val) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + UnsignedChannelAnnouncement_set_short_channel_id(&this_ptr_conv, val); } -int8_tArray __attribute__((visibility("default"))) TS_UpdateFee_write(uint32_t obj) { - LDKUpdateFee obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = UpdateFee_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_node_id_1(uint32_t this_ptr) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, UnsignedChannelAnnouncement_get_node_id_1(&this_ptr_conv).compressed_form, 33); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_UpdateFee_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_UpdateFeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFeeDecodeErrorZ), "LDKCResult_UpdateFeeDecodeErrorZ"); - *ret_conv = UpdateFee_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_node_id_1(uint32_t this_ptr, int8_tArray val) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + UnsignedChannelAnnouncement_set_node_id_1(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_write(uint32_t obj) { - LDKUpdateFulfillHTLC obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = UpdateFulfillHTLC_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_node_id_2(uint32_t this_ptr) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, UnsignedChannelAnnouncement_get_node_id_2(&this_ptr_conv).compressed_form, 33); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_UpdateFulfillHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFulfillHTLCDecodeErrorZ), "LDKCResult_UpdateFulfillHTLCDecodeErrorZ"); - *ret_conv = UpdateFulfillHTLC_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_node_id_2(uint32_t this_ptr, int8_tArray val) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + UnsignedChannelAnnouncement_set_node_id_2(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_UpdateAddHTLC_write(uint32_t obj) { - LDKUpdateAddHTLC obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = UpdateAddHTLC_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_bitcoin_key_1(uint32_t this_ptr) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, UnsignedChannelAnnouncement_get_bitcoin_key_1(&this_ptr_conv).compressed_form, 33); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_UpdateAddHTLC_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_UpdateAddHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateAddHTLCDecodeErrorZ), "LDKCResult_UpdateAddHTLCDecodeErrorZ"); - *ret_conv = UpdateAddHTLC_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_bitcoin_key_1(uint32_t this_ptr, int8_tArray val) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + UnsignedChannelAnnouncement_set_bitcoin_key_1(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_Ping_write(uint32_t obj) { - LDKPing obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = Ping_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_get_bitcoin_key_2(uint32_t this_ptr) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, UnsignedChannelAnnouncement_get_bitcoin_key_2(&this_ptr_conv).compressed_form, 33); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_Ping_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_PingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PingDecodeErrorZ), "LDKCResult_PingDecodeErrorZ"); - *ret_conv = Ping_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_set_bitcoin_key_2(uint32_t this_ptr, int8_tArray val) { + LDKUnsignedChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + UnsignedChannelAnnouncement_set_bitcoin_key_2(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_Pong_write(uint32_t obj) { - LDKPong obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = Pong_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +static inline uint64_t UnsignedChannelAnnouncement_clone_ptr(LDKUnsignedChannelAnnouncement *NONNULL_PTR arg) { + LDKUnsignedChannelAnnouncement ret_var = UnsignedChannelAnnouncement_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_clone_ptr(uint32_t arg) { + LDKUnsignedChannelAnnouncement arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = UnsignedChannelAnnouncement_clone_ptr(&arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Pong_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_PongDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PongDecodeErrorZ), "LDKCResult_PongDecodeErrorZ"); - *ret_conv = Pong_read(ser_ref); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_clone(uint32_t orig) { + LDKUnsignedChannelAnnouncement orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKUnsignedChannelAnnouncement ret_var = UnsignedChannelAnnouncement_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_write(uint32_t obj) { - LDKUnsignedChannelAnnouncement obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = UnsignedChannelAnnouncement_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +void __attribute__((visibility("default"))) TS_ChannelAnnouncement_free(uint32_t this_obj) { + LDKChannelAnnouncement this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + ChannelAnnouncement_free(this_obj_conv); +} + +int8_tArray __attribute__((visibility("default"))) TS_ChannelAnnouncement_get_node_signature_1(uint32_t this_ptr) { + LDKChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, ChannelAnnouncement_get_node_signature_1(&this_ptr_conv).compact_form, 64); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ), "LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ"); - *ret_conv = UnsignedChannelAnnouncement_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_ChannelAnnouncement_set_node_signature_1(uint32_t this_ptr, int8_tArray val) { + LDKChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKSignature val_ref; + CHECK(val->arr_len == 64); + memcpy(val_ref.compact_form, val->elems, 64); + ChannelAnnouncement_set_node_signature_1(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_ChannelAnnouncement_write(uint32_t obj) { - LDKChannelAnnouncement obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ChannelAnnouncement_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_ChannelAnnouncement_get_node_signature_2(uint32_t this_ptr) { + LDKChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, ChannelAnnouncement_get_node_signature_2(&this_ptr_conv).compact_form, 64); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelAnnouncement_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelAnnouncementDecodeErrorZ), "LDKCResult_ChannelAnnouncementDecodeErrorZ"); - *ret_conv = ChannelAnnouncement_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_ChannelAnnouncement_set_node_signature_2(uint32_t this_ptr, int8_tArray val) { + LDKChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKSignature val_ref; + CHECK(val->arr_len == 64); + memcpy(val_ref.compact_form, val->elems, 64); + ChannelAnnouncement_set_node_signature_2(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_write(uint32_t obj) { - LDKUnsignedChannelUpdate obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = UnsignedChannelUpdate_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_ChannelAnnouncement_get_bitcoin_signature_1(uint32_t this_ptr) { + LDKChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, ChannelAnnouncement_get_bitcoin_signature_1(&this_ptr_conv).compact_form, 64); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_UnsignedChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelUpdateDecodeErrorZ), "LDKCResult_UnsignedChannelUpdateDecodeErrorZ"); - *ret_conv = UnsignedChannelUpdate_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_ChannelAnnouncement_set_bitcoin_signature_1(uint32_t this_ptr, int8_tArray val) { + LDKChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKSignature val_ref; + CHECK(val->arr_len == 64); + memcpy(val_ref.compact_form, val->elems, 64); + ChannelAnnouncement_set_bitcoin_signature_1(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_ChannelUpdate_write(uint32_t obj) { - LDKChannelUpdate obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ChannelUpdate_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_ChannelAnnouncement_get_bitcoin_signature_2(uint32_t this_ptr) { + LDKChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, ChannelAnnouncement_get_bitcoin_signature_2(&this_ptr_conv).compact_form, 64); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelUpdate_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelUpdateDecodeErrorZ), "LDKCResult_ChannelUpdateDecodeErrorZ"); - *ret_conv = ChannelUpdate_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_ChannelAnnouncement_set_bitcoin_signature_2(uint32_t this_ptr, int8_tArray val) { + LDKChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKSignature val_ref; + CHECK(val->arr_len == 64); + memcpy(val_ref.compact_form, val->elems, 64); + ChannelAnnouncement_set_bitcoin_signature_2(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_ErrorMessage_write(uint32_t obj) { - LDKErrorMessage obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ErrorMessage_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_ChannelAnnouncement_get_contents(uint32_t this_ptr) { + LDKChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKUnsignedChannelAnnouncement ret_var = ChannelAnnouncement_get_contents(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ErrorMessage_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ErrorMessageDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ErrorMessageDecodeErrorZ), "LDKCResult_ErrorMessageDecodeErrorZ"); - *ret_conv = ErrorMessage_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_ChannelAnnouncement_set_contents(uint32_t this_ptr, uint32_t val) { + LDKChannelAnnouncement this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKUnsignedChannelAnnouncement val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = UnsignedChannelAnnouncement_clone(&val_conv); + ChannelAnnouncement_set_contents(&this_ptr_conv, val_conv); } -int8_tArray __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_write(uint32_t obj) { - LDKUnsignedNodeAnnouncement obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = UnsignedNodeAnnouncement_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_ChannelAnnouncement_new(int8_tArray node_signature_1_arg, int8_tArray node_signature_2_arg, int8_tArray bitcoin_signature_1_arg, int8_tArray bitcoin_signature_2_arg, uint32_t contents_arg) { + LDKSignature node_signature_1_arg_ref; + CHECK(node_signature_1_arg->arr_len == 64); + memcpy(node_signature_1_arg_ref.compact_form, node_signature_1_arg->elems, 64); + LDKSignature node_signature_2_arg_ref; + CHECK(node_signature_2_arg->arr_len == 64); + memcpy(node_signature_2_arg_ref.compact_form, node_signature_2_arg->elems, 64); + LDKSignature bitcoin_signature_1_arg_ref; + CHECK(bitcoin_signature_1_arg->arr_len == 64); + memcpy(bitcoin_signature_1_arg_ref.compact_form, bitcoin_signature_1_arg->elems, 64); + LDKSignature bitcoin_signature_2_arg_ref; + CHECK(bitcoin_signature_2_arg->arr_len == 64); + memcpy(bitcoin_signature_2_arg_ref.compact_form, bitcoin_signature_2_arg->elems, 64); + LDKUnsignedChannelAnnouncement contents_arg_conv; + contents_arg_conv.inner = (void*)(contents_arg & (~1)); + contents_arg_conv.is_owned = (contents_arg & 1) || (contents_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(contents_arg_conv); + contents_arg_conv = UnsignedChannelAnnouncement_clone(&contents_arg_conv); + LDKChannelAnnouncement ret_var = ChannelAnnouncement_new(node_signature_1_arg_ref, node_signature_2_arg_ref, bitcoin_signature_1_arg_ref, bitcoin_signature_2_arg_ref, contents_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ), "LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ"); - *ret_conv = UnsignedNodeAnnouncement_read(ser_ref); - return (uint64_t)ret_conv; +static inline uint64_t ChannelAnnouncement_clone_ptr(LDKChannelAnnouncement *NONNULL_PTR arg) { + LDKChannelAnnouncement ret_var = ChannelAnnouncement_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -int8_tArray __attribute__((visibility("default"))) TS_NodeAnnouncement_write(uint32_t obj) { - LDKNodeAnnouncement obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = NodeAnnouncement_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; + return ret_ref; } - -uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncement_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_NodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeAnnouncementDecodeErrorZ), "LDKCResult_NodeAnnouncementDecodeErrorZ"); - *ret_conv = NodeAnnouncement_read(ser_ref); - return (uint64_t)ret_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelAnnouncement_clone_ptr(uint32_t arg) { + LDKChannelAnnouncement arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ChannelAnnouncement_clone_ptr(&arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_QueryShortChannelIds_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_QueryShortChannelIdsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryShortChannelIdsDecodeErrorZ), "LDKCResult_QueryShortChannelIdsDecodeErrorZ"); - *ret_conv = QueryShortChannelIds_read(ser_ref); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelAnnouncement_clone(uint32_t orig) { + LDKChannelAnnouncement orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKChannelAnnouncement ret_var = ChannelAnnouncement_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_QueryShortChannelIds_write(uint32_t obj) { - LDKQueryShortChannelIds obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = QueryShortChannelIds_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_free(uint32_t this_obj) { + LDKUnsignedChannelUpdate this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + UnsignedChannelUpdate_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_write(uint32_t obj) { - LDKReplyShortChannelIdsEnd obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ReplyShortChannelIdsEnd_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_chain_hash(uint32_t this_ptr) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *UnsignedChannelUpdate_get_chain_hash(&this_ptr_conv), 32); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ), "LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ"); - *ret_conv = ReplyShortChannelIdsEnd_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_chain_hash(uint32_t this_ptr, int8_tArray val) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + UnsignedChannelUpdate_set_chain_hash(&this_ptr_conv, val_ref); } -int32_t __attribute__((visibility("default"))) TS_QueryChannelRange_end_blocknum(uint32_t this_arg) { - LDKQueryChannelRange this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int32_t ret_val = QueryChannelRange_end_blocknum(&this_arg_conv); +int64_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_short_channel_id(uint32_t this_ptr) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = UnsignedChannelUpdate_get_short_channel_id(&this_ptr_conv); return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_QueryChannelRange_write(uint32_t obj) { - LDKQueryChannelRange obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = QueryChannelRange_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_short_channel_id(uint32_t this_ptr, int64_t val) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + UnsignedChannelUpdate_set_short_channel_id(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_QueryChannelRange_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_QueryChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryChannelRangeDecodeErrorZ), "LDKCResult_QueryChannelRangeDecodeErrorZ"); - *ret_conv = QueryChannelRange_read(ser_ref); - return (uint64_t)ret_conv; +int32_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_timestamp(uint32_t this_ptr) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = UnsignedChannelUpdate_get_timestamp(&this_ptr_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ReplyChannelRange_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ReplyChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyChannelRangeDecodeErrorZ), "LDKCResult_ReplyChannelRangeDecodeErrorZ"); - *ret_conv = ReplyChannelRange_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_timestamp(uint32_t this_ptr, int32_t val) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + UnsignedChannelUpdate_set_timestamp(&this_ptr_conv, val); } -int8_tArray __attribute__((visibility("default"))) TS_ReplyChannelRange_write(uint32_t obj) { - LDKReplyChannelRange obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ReplyChannelRange_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +int8_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_flags(uint32_t this_ptr) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_t ret_val = UnsignedChannelUpdate_get_flags(&this_ptr_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_GossipTimestampFilter_write(uint32_t obj) { - LDKGossipTimestampFilter obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = GossipTimestampFilter_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_flags(uint32_t this_ptr, int8_t val) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + UnsignedChannelUpdate_set_flags(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_GossipTimestampFilterDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_GossipTimestampFilterDecodeErrorZ), "LDKCResult_GossipTimestampFilterDecodeErrorZ"); - *ret_conv = GossipTimestampFilter_read(ser_ref); - return (uint64_t)ret_conv; +int16_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_cltv_expiry_delta(uint32_t this_ptr) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int16_t ret_val = UnsignedChannelUpdate_get_cltv_expiry_delta(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_CustomMessageHandler_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKCustomMessageHandler this_ptr_conv = *(LDKCustomMessageHandler*)(this_ptr_ptr); - FREE((void*)this_ptr); - CustomMessageHandler_free(this_ptr_conv); +void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_cltv_expiry_delta(uint32_t this_ptr, int16_t val) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + UnsignedChannelUpdate_set_cltv_expiry_delta(&this_ptr_conv, val); +} + +int64_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_htlc_minimum_msat(uint32_t this_ptr) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = UnsignedChannelUpdate_get_htlc_minimum_msat(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_IgnoringMessageHandler_free(uint32_t this_obj) { - LDKIgnoringMessageHandler this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - IgnoringMessageHandler_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_htlc_minimum_msat(uint32_t this_ptr, int64_t val) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + UnsignedChannelUpdate_set_htlc_minimum_msat(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_IgnoringMessageHandler_new() { - LDKIgnoringMessageHandler ret_var = IgnoringMessageHandler_new(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int32_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_fee_base_msat(uint32_t this_ptr) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = UnsignedChannelUpdate_get_fee_base_msat(&this_ptr_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_IgnoringMessageHandler_as_MessageSendEventsProvider(uint32_t this_arg) { - LDKIgnoringMessageHandler this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKMessageSendEventsProvider* ret_ret = MALLOC(sizeof(LDKMessageSendEventsProvider), "LDKMessageSendEventsProvider"); - *ret_ret = IgnoringMessageHandler_as_MessageSendEventsProvider(&this_arg_conv); - return (uint64_t)ret_ret; +void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_fee_base_msat(uint32_t this_ptr, int32_t val) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + UnsignedChannelUpdate_set_fee_base_msat(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_IgnoringMessageHandler_as_RoutingMessageHandler(uint32_t this_arg) { - LDKIgnoringMessageHandler this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKRoutingMessageHandler* ret_ret = MALLOC(sizeof(LDKRoutingMessageHandler), "LDKRoutingMessageHandler"); - *ret_ret = IgnoringMessageHandler_as_RoutingMessageHandler(&this_arg_conv); - return (uint64_t)ret_ret; +int32_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_get_fee_proportional_millionths(uint32_t this_ptr) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = UnsignedChannelUpdate_get_fee_proportional_millionths(&this_ptr_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_IgnoringMessageHandler_as_CustomMessageReader(uint32_t this_arg) { - LDKIgnoringMessageHandler this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCustomMessageReader* ret_ret = MALLOC(sizeof(LDKCustomMessageReader), "LDKCustomMessageReader"); - *ret_ret = IgnoringMessageHandler_as_CustomMessageReader(&this_arg_conv); - return (uint64_t)ret_ret; +void __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_set_fee_proportional_millionths(uint32_t this_ptr, int32_t val) { + LDKUnsignedChannelUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + UnsignedChannelUpdate_set_fee_proportional_millionths(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_IgnoringMessageHandler_as_CustomMessageHandler(uint32_t this_arg) { - LDKIgnoringMessageHandler this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCustomMessageHandler* ret_ret = MALLOC(sizeof(LDKCustomMessageHandler), "LDKCustomMessageHandler"); - *ret_ret = IgnoringMessageHandler_as_CustomMessageHandler(&this_arg_conv); - return (uint64_t)ret_ret; +static inline uint64_t UnsignedChannelUpdate_clone_ptr(LDKUnsignedChannelUpdate *NONNULL_PTR arg) { + LDKUnsignedChannelUpdate ret_var = UnsignedChannelUpdate_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -void __attribute__((visibility("default"))) TS_ErroringMessageHandler_free(uint32_t this_obj) { - LDKErroringMessageHandler this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ErroringMessageHandler_free(this_obj_conv); + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_clone_ptr(uint32_t arg) { + LDKUnsignedChannelUpdate arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = UnsignedChannelUpdate_clone_ptr(&arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ErroringMessageHandler_new() { - LDKErroringMessageHandler ret_var = ErroringMessageHandler_new(); +uint32_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_clone(uint32_t orig) { + LDKUnsignedChannelUpdate orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKUnsignedChannelUpdate ret_var = UnsignedChannelUpdate_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -28571,84 +26025,75 @@ uint32_t __attribute__((visibility("default"))) TS_ErroringMessageHandler_new() return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_ErroringMessageHandler_as_MessageSendEventsProvider(uint32_t this_arg) { - LDKErroringMessageHandler this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKMessageSendEventsProvider* ret_ret = MALLOC(sizeof(LDKMessageSendEventsProvider), "LDKMessageSendEventsProvider"); - *ret_ret = ErroringMessageHandler_as_MessageSendEventsProvider(&this_arg_conv); - return (uint64_t)ret_ret; -} - -uint32_t __attribute__((visibility("default"))) TS_ErroringMessageHandler_as_ChannelMessageHandler(uint32_t this_arg) { - LDKErroringMessageHandler this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKChannelMessageHandler* ret_ret = MALLOC(sizeof(LDKChannelMessageHandler), "LDKChannelMessageHandler"); - *ret_ret = ErroringMessageHandler_as_ChannelMessageHandler(&this_arg_conv); - return (uint64_t)ret_ret; -} - -void __attribute__((visibility("default"))) TS_MessageHandler_free(uint32_t this_obj) { - LDKMessageHandler this_obj_conv; +void __attribute__((visibility("default"))) TS_ChannelUpdate_free(uint32_t this_obj) { + LDKChannelUpdate this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - MessageHandler_free(this_obj_conv); + ChannelUpdate_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_MessageHandler_get_chan_handler(uint32_t this_ptr) { - LDKMessageHandler this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_ChannelUpdate_get_signature(uint32_t this_ptr) { + LDKChannelUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - // WARNING: This object doesn't live past this scope, needs clone! - uint64_t ret_ret = ((uint64_t)MessageHandler_get_chan_handler(&this_ptr_conv)) | 1; - return ret_ret; + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, ChannelUpdate_get_signature(&this_ptr_conv).compact_form, 64); + return ret_arr; } -void __attribute__((visibility("default"))) TS_MessageHandler_set_chan_handler(uint32_t this_ptr, uint32_t val) { - LDKMessageHandler this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelUpdate_set_signature(uint32_t this_ptr, int8_tArray val) { + LDKChannelUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKChannelMessageHandler val_conv = *(LDKChannelMessageHandler*)(val_ptr); - MessageHandler_set_chan_handler(&this_ptr_conv, val_conv); + LDKSignature val_ref; + CHECK(val->arr_len == 64); + memcpy(val_ref.compact_form, val->elems, 64); + ChannelUpdate_set_signature(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_MessageHandler_get_route_handler(uint32_t this_ptr) { - LDKMessageHandler this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelUpdate_get_contents(uint32_t this_ptr) { + LDKChannelUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - // WARNING: This object doesn't live past this scope, needs clone! - uint64_t ret_ret = ((uint64_t)MessageHandler_get_route_handler(&this_ptr_conv)) | 1; - return ret_ret; + LDKUnsignedChannelUpdate ret_var = ChannelUpdate_get_contents(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_MessageHandler_set_route_handler(uint32_t this_ptr, uint32_t val) { - LDKMessageHandler this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelUpdate_set_contents(uint32_t this_ptr, uint32_t val) { + LDKChannelUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKRoutingMessageHandler val_conv = *(LDKRoutingMessageHandler*)(val_ptr); - MessageHandler_set_route_handler(&this_ptr_conv, val_conv); + LDKUnsignedChannelUpdate val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = UnsignedChannelUpdate_clone(&val_conv); + ChannelUpdate_set_contents(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_MessageHandler_new(uint32_t chan_handler_arg, uint32_t route_handler_arg) { - void* chan_handler_arg_ptr = (void*)(((uint64_t)chan_handler_arg) & ~1); - CHECK_ACCESS(chan_handler_arg_ptr); - LDKChannelMessageHandler chan_handler_arg_conv = *(LDKChannelMessageHandler*)(chan_handler_arg_ptr); - void* route_handler_arg_ptr = (void*)(((uint64_t)route_handler_arg) & ~1); - CHECK_ACCESS(route_handler_arg_ptr); - LDKRoutingMessageHandler route_handler_arg_conv = *(LDKRoutingMessageHandler*)(route_handler_arg_ptr); - LDKMessageHandler ret_var = MessageHandler_new(chan_handler_arg_conv, route_handler_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelUpdate_new(int8_tArray signature_arg, uint32_t contents_arg) { + LDKSignature signature_arg_ref; + CHECK(signature_arg->arr_len == 64); + memcpy(signature_arg_ref.compact_form, signature_arg->elems, 64); + LDKUnsignedChannelUpdate contents_arg_conv; + contents_arg_conv.inner = (void*)(contents_arg & (~1)); + contents_arg_conv.is_owned = (contents_arg & 1) || (contents_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(contents_arg_conv); + contents_arg_conv = UnsignedChannelUpdate_clone(&contents_arg_conv); + LDKChannelUpdate ret_var = ChannelUpdate_new(signature_arg_ref, contents_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -28660,64 +26105,112 @@ uint32_t __attribute__((visibility("default"))) TS_MessageHandler_new(uint32_t return ret_ref; } -static inline uint64_t SocketDescriptor_clone_ptr(LDKSocketDescriptor *NONNULL_PTR arg) { - LDKSocketDescriptor* ret_ret = MALLOC(sizeof(LDKSocketDescriptor), "LDKSocketDescriptor"); - *ret_ret = SocketDescriptor_clone(arg); - return (uint64_t)ret_ret; +static inline uint64_t ChannelUpdate_clone_ptr(LDKChannelUpdate *NONNULL_PTR arg) { + LDKChannelUpdate ret_var = ChannelUpdate_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } -int64_t __attribute__((visibility("default"))) TS_SocketDescriptor_clone_ptr(uint32_t arg) { - void* arg_ptr = (void*)(((uint64_t)arg) & ~1); - if (!(arg & 1)) { CHECK_ACCESS(arg_ptr); } - LDKSocketDescriptor* arg_conv = (LDKSocketDescriptor*)arg_ptr; - int64_t ret_val = SocketDescriptor_clone_ptr(arg_conv); + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_ChannelUpdate_clone_ptr(uint32_t arg) { + LDKChannelUpdate arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ChannelUpdate_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_SocketDescriptor_clone(uint32_t orig) { - void* orig_ptr = (void*)(((uint64_t)orig) & ~1); - if (!(orig & 1)) { CHECK_ACCESS(orig_ptr); } - LDKSocketDescriptor* orig_conv = (LDKSocketDescriptor*)orig_ptr; - LDKSocketDescriptor* ret_ret = MALLOC(sizeof(LDKSocketDescriptor), "LDKSocketDescriptor"); - *ret_ret = SocketDescriptor_clone(orig_conv); - return (uint64_t)ret_ret; +uint32_t __attribute__((visibility("default"))) TS_ChannelUpdate_clone(uint32_t orig) { + LDKChannelUpdate orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKChannelUpdate ret_var = ChannelUpdate_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +void __attribute__((visibility("default"))) TS_QueryChannelRange_free(uint32_t this_obj) { + LDKQueryChannelRange this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + QueryChannelRange_free(this_obj_conv); +} + +int8_tArray __attribute__((visibility("default"))) TS_QueryChannelRange_get_chain_hash(uint32_t this_ptr) { + LDKQueryChannelRange this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *QueryChannelRange_get_chain_hash(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_SocketDescriptor_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKSocketDescriptor this_ptr_conv = *(LDKSocketDescriptor*)(this_ptr_ptr); - FREE((void*)this_ptr); - SocketDescriptor_free(this_ptr_conv); +void __attribute__((visibility("default"))) TS_QueryChannelRange_set_chain_hash(uint32_t this_ptr, int8_tArray val) { + LDKQueryChannelRange this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + QueryChannelRange_set_chain_hash(&this_ptr_conv, val_ref); } -void __attribute__((visibility("default"))) TS_PeerHandleError_free(uint32_t this_obj) { - LDKPeerHandleError this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - PeerHandleError_free(this_obj_conv); +int32_t __attribute__((visibility("default"))) TS_QueryChannelRange_get_first_blocknum(uint32_t this_ptr) { + LDKQueryChannelRange this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = QueryChannelRange_get_first_blocknum(&this_ptr_conv); + return ret_val; } -jboolean __attribute__((visibility("default"))) TS_PeerHandleError_get_no_connection_possible(uint32_t this_ptr) { - LDKPeerHandleError this_ptr_conv; +void __attribute__((visibility("default"))) TS_QueryChannelRange_set_first_blocknum(uint32_t this_ptr, int32_t val) { + LDKQueryChannelRange this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = PeerHandleError_get_no_connection_possible(&this_ptr_conv); + QueryChannelRange_set_first_blocknum(&this_ptr_conv, val); +} + +int32_t __attribute__((visibility("default"))) TS_QueryChannelRange_get_number_of_blocks(uint32_t this_ptr) { + LDKQueryChannelRange this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = QueryChannelRange_get_number_of_blocks(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_PeerHandleError_set_no_connection_possible(uint32_t this_ptr, jboolean val) { - LDKPeerHandleError this_ptr_conv; +void __attribute__((visibility("default"))) TS_QueryChannelRange_set_number_of_blocks(uint32_t this_ptr, int32_t val) { + LDKQueryChannelRange this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - PeerHandleError_set_no_connection_possible(&this_ptr_conv, val); + QueryChannelRange_set_number_of_blocks(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_PeerHandleError_new(jboolean no_connection_possible_arg) { - LDKPeerHandleError ret_var = PeerHandleError_new(no_connection_possible_arg); +uint32_t __attribute__((visibility("default"))) TS_QueryChannelRange_new(int8_tArray chain_hash_arg, int32_t first_blocknum_arg, int32_t number_of_blocks_arg) { + LDKThirtyTwoBytes chain_hash_arg_ref; + CHECK(chain_hash_arg->arr_len == 32); + memcpy(chain_hash_arg_ref.data, chain_hash_arg->elems, 32); + LDKQueryChannelRange ret_var = QueryChannelRange_new(chain_hash_arg_ref, first_blocknum_arg, number_of_blocks_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -28729,8 +26222,8 @@ uint32_t __attribute__((visibility("default"))) TS_PeerHandleError_new(jboolean return ret_ref; } -static inline uint64_t PeerHandleError_clone_ptr(LDKPeerHandleError *NONNULL_PTR arg) { - LDKPeerHandleError ret_var = PeerHandleError_clone(arg); +static inline uint64_t QueryChannelRange_clone_ptr(LDKQueryChannelRange *NONNULL_PTR arg) { + LDKQueryChannelRange ret_var = QueryChannelRange_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -28741,21 +26234,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_PeerHandleError_clone_ptr(uint32_t arg) { - LDKPeerHandleError arg_conv; +int64_t __attribute__((visibility("default"))) TS_QueryChannelRange_clone_ptr(uint32_t arg) { + LDKQueryChannelRange arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = PeerHandleError_clone_ptr(&arg_conv); + int64_t ret_val = QueryChannelRange_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_PeerHandleError_clone(uint32_t orig) { - LDKPeerHandleError orig_conv; +uint32_t __attribute__((visibility("default"))) TS_QueryChannelRange_clone(uint32_t orig) { + LDKQueryChannelRange orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKPeerHandleError ret_var = PeerHandleError_clone(&orig_conv); + LDKQueryChannelRange ret_var = QueryChannelRange_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -28767,390 +26260,334 @@ uint32_t __attribute__((visibility("default"))) TS_PeerHandleError_clone(uint32 return ret_ref; } -void __attribute__((visibility("default"))) TS_PeerManager_free(uint32_t this_obj) { - LDKPeerManager this_obj_conv; +void __attribute__((visibility("default"))) TS_ReplyChannelRange_free(uint32_t this_obj) { + LDKReplyChannelRange this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - PeerManager_free(this_obj_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_PeerManager_new(uint32_t message_handler, int8_tArray our_node_secret, int8_tArray ephemeral_random_data, uint32_t logger, uint32_t custom_message_handler) { - LDKMessageHandler message_handler_conv; - message_handler_conv.inner = (void*)(message_handler & (~1)); - message_handler_conv.is_owned = (message_handler & 1) || (message_handler == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(message_handler_conv); - // Warning: we need a move here but no clone is available for LDKMessageHandler - LDKSecretKey our_node_secret_ref; - CHECK(*((uint32_t*)our_node_secret) == 32); - memcpy(our_node_secret_ref.bytes, (uint8_t*)(our_node_secret + 4), 32); - unsigned char ephemeral_random_data_arr[32]; - CHECK(*((uint32_t*)ephemeral_random_data) == 32); - memcpy(ephemeral_random_data_arr, (uint8_t*)(ephemeral_random_data + 4), 32); - unsigned char (*ephemeral_random_data_ref)[32] = &ephemeral_random_data_arr; - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - void* custom_message_handler_ptr = (void*)(((uint64_t)custom_message_handler) & ~1); - CHECK_ACCESS(custom_message_handler_ptr); - LDKCustomMessageHandler custom_message_handler_conv = *(LDKCustomMessageHandler*)(custom_message_handler_ptr); - LDKPeerManager ret_var = PeerManager_new(message_handler_conv, our_node_secret_ref, ephemeral_random_data_ref, logger_conv, custom_message_handler_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + ReplyChannelRange_free(this_obj_conv); } -ptrArray __attribute__((visibility("default"))) TS_PeerManager_get_peer_node_ids(uint32_t this_arg) { - LDKPeerManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_PublicKeyZ ret_var = PeerManager_get_peer_node_ids(&this_arg_conv); - ptrArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native ptrArray Bytes"); - int8_tArray *ret_arr_ptr = (int8_tArray*)(ret_arr + 4); - for (size_t m = 0; m < ret_var.datalen; m++) { - int8_tArray ret_conv_12_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_conv_12_arr + 4), ret_var.data[m].compressed_form, 33); - ret_arr_ptr[m] = ret_conv_12_arr; - } - - FREE(ret_var.data); +int8_tArray __attribute__((visibility("default"))) TS_ReplyChannelRange_get_chain_hash(uint32_t this_ptr) { + LDKReplyChannelRange this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *ReplyChannelRange_get_chain_hash(&this_ptr_conv), 32); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_PeerManager_new_outbound_connection(uint32_t this_arg, int8_tArray their_node_id, uint32_t descriptor) { - LDKPeerManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKPublicKey their_node_id_ref; - CHECK(*((uint32_t*)their_node_id) == 33); - memcpy(their_node_id_ref.compressed_form, (uint8_t*)(their_node_id + 4), 33); - void* descriptor_ptr = (void*)(((uint64_t)descriptor) & ~1); - CHECK_ACCESS(descriptor_ptr); - LDKSocketDescriptor descriptor_conv = *(LDKSocketDescriptor*)(descriptor_ptr); - LDKCResult_CVec_u8ZPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_u8ZPeerHandleErrorZ), "LDKCResult_CVec_u8ZPeerHandleErrorZ"); - *ret_conv = PeerManager_new_outbound_connection(&this_arg_conv, their_node_id_ref, descriptor_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_PeerManager_new_inbound_connection(uint32_t this_arg, uint32_t descriptor) { - LDKPeerManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - void* descriptor_ptr = (void*)(((uint64_t)descriptor) & ~1); - CHECK_ACCESS(descriptor_ptr); - LDKSocketDescriptor descriptor_conv = *(LDKSocketDescriptor*)(descriptor_ptr); - LDKCResult_NonePeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePeerHandleErrorZ), "LDKCResult_NonePeerHandleErrorZ"); - *ret_conv = PeerManager_new_inbound_connection(&this_arg_conv, descriptor_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_PeerManager_write_buffer_space_avail(uint32_t this_arg, uint32_t descriptor) { - LDKPeerManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - void* descriptor_ptr = (void*)(((uint64_t)descriptor) & ~1); - if (!(descriptor & 1)) { CHECK_ACCESS(descriptor_ptr); } - LDKSocketDescriptor* descriptor_conv = (LDKSocketDescriptor*)descriptor_ptr; - LDKCResult_NonePeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePeerHandleErrorZ), "LDKCResult_NonePeerHandleErrorZ"); - *ret_conv = PeerManager_write_buffer_space_avail(&this_arg_conv, descriptor_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_PeerManager_read_event(uint32_t this_arg, uint32_t peer_descriptor, int8_tArray data) { - LDKPeerManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - void* peer_descriptor_ptr = (void*)(((uint64_t)peer_descriptor) & ~1); - if (!(peer_descriptor & 1)) { CHECK_ACCESS(peer_descriptor_ptr); } - LDKSocketDescriptor* peer_descriptor_conv = (LDKSocketDescriptor*)peer_descriptor_ptr; - LDKu8slice data_ref; - data_ref.datalen = *((uint32_t*)data); - data_ref.data = (int8_t*)(data + 4); - LDKCResult_boolPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolPeerHandleErrorZ), "LDKCResult_boolPeerHandleErrorZ"); - *ret_conv = PeerManager_read_event(&this_arg_conv, peer_descriptor_conv, data_ref); - return (uint64_t)ret_conv; -} - -void __attribute__((visibility("default"))) TS_PeerManager_process_events(uint32_t this_arg) { - LDKPeerManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - PeerManager_process_events(&this_arg_conv); -} - -void __attribute__((visibility("default"))) TS_PeerManager_socket_disconnected(uint32_t this_arg, uint32_t descriptor) { - LDKPeerManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - void* descriptor_ptr = (void*)(((uint64_t)descriptor) & ~1); - if (!(descriptor & 1)) { CHECK_ACCESS(descriptor_ptr); } - LDKSocketDescriptor* descriptor_conv = (LDKSocketDescriptor*)descriptor_ptr; - PeerManager_socket_disconnected(&this_arg_conv, descriptor_conv); +void __attribute__((visibility("default"))) TS_ReplyChannelRange_set_chain_hash(uint32_t this_ptr, int8_tArray val) { + LDKReplyChannelRange this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + ReplyChannelRange_set_chain_hash(&this_ptr_conv, val_ref); } -void __attribute__((visibility("default"))) TS_PeerManager_disconnect_by_node_id(uint32_t this_arg, int8_tArray node_id, jboolean no_connection_possible) { - LDKPeerManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - PeerManager_disconnect_by_node_id(&this_arg_conv, node_id_ref, no_connection_possible); +int32_t __attribute__((visibility("default"))) TS_ReplyChannelRange_get_first_blocknum(uint32_t this_ptr) { + LDKReplyChannelRange this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = ReplyChannelRange_get_first_blocknum(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_PeerManager_disconnect_all_peers(uint32_t this_arg) { - LDKPeerManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - PeerManager_disconnect_all_peers(&this_arg_conv); +void __attribute__((visibility("default"))) TS_ReplyChannelRange_set_first_blocknum(uint32_t this_ptr, int32_t val) { + LDKReplyChannelRange this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ReplyChannelRange_set_first_blocknum(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_PeerManager_timer_tick_occurred(uint32_t this_arg) { - LDKPeerManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - PeerManager_timer_tick_occurred(&this_arg_conv); +int32_t __attribute__((visibility("default"))) TS_ReplyChannelRange_get_number_of_blocks(uint32_t this_ptr) { + LDKReplyChannelRange this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = ReplyChannelRange_get_number_of_blocks(&this_ptr_conv); + return ret_val; } -int64_t __attribute__((visibility("default"))) TS_htlc_success_tx_weight(jboolean opt_anchors) { - int64_t ret_val = htlc_success_tx_weight(opt_anchors); - return ret_val; +void __attribute__((visibility("default"))) TS_ReplyChannelRange_set_number_of_blocks(uint32_t this_ptr, int32_t val) { + LDKReplyChannelRange this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ReplyChannelRange_set_number_of_blocks(&this_ptr_conv, val); } -int64_t __attribute__((visibility("default"))) TS_htlc_timeout_tx_weight(jboolean opt_anchors) { - int64_t ret_val = htlc_timeout_tx_weight(opt_anchors); +jboolean __attribute__((visibility("default"))) TS_ReplyChannelRange_get_sync_complete(uint32_t this_ptr) { + LDKReplyChannelRange this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + jboolean ret_val = ReplyChannelRange_get_sync_complete(&this_ptr_conv); return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_build_commitment_secret(int8_tArray commitment_seed, int64_t idx) { - unsigned char commitment_seed_arr[32]; - CHECK(*((uint32_t*)commitment_seed) == 32); - memcpy(commitment_seed_arr, (uint8_t*)(commitment_seed + 4), 32); - unsigned char (*commitment_seed_ref)[32] = &commitment_seed_arr; - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), build_commitment_secret(commitment_seed_ref, idx).data, 32); - return ret_arr; +void __attribute__((visibility("default"))) TS_ReplyChannelRange_set_sync_complete(uint32_t this_ptr, jboolean val) { + LDKReplyChannelRange this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ReplyChannelRange_set_sync_complete(&this_ptr_conv, val); } -int8_tArray __attribute__((visibility("default"))) TS_build_closing_transaction(int64_t to_holder_value_sat, int64_t to_counterparty_value_sat, int8_tArray to_holder_script, int8_tArray to_counterparty_script, uint32_t funding_outpoint) { - LDKCVec_u8Z to_holder_script_ref; - to_holder_script_ref.datalen = *((uint32_t*)to_holder_script); - to_holder_script_ref.data = MALLOC(to_holder_script_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(to_holder_script_ref.data, (uint8_t*)(to_holder_script + 4), to_holder_script_ref.datalen); - LDKCVec_u8Z to_counterparty_script_ref; - to_counterparty_script_ref.datalen = *((uint32_t*)to_counterparty_script); - to_counterparty_script_ref.data = MALLOC(to_counterparty_script_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(to_counterparty_script_ref.data, (uint8_t*)(to_counterparty_script + 4), to_counterparty_script_ref.datalen); - LDKOutPoint funding_outpoint_conv; - funding_outpoint_conv.inner = (void*)(funding_outpoint & (~1)); - funding_outpoint_conv.is_owned = (funding_outpoint & 1) || (funding_outpoint == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_outpoint_conv); - funding_outpoint_conv = OutPoint_clone(&funding_outpoint_conv); - LDKTransaction ret_var = build_closing_transaction(to_holder_value_sat, to_counterparty_value_sat, to_holder_script_ref, to_counterparty_script_ref, funding_outpoint_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - Transaction_free(ret_var); - return ret_arr; +void __attribute__((visibility("default"))) TS_ReplyChannelRange_set_short_channel_ids(uint32_t this_ptr, int64_tArray val) { + LDKReplyChannelRange this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_u64Z val_constr; + val_constr.datalen = val->arr_len; + if (val_constr.datalen > 0) + val_constr.data = MALLOC(val_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements"); + else + val_constr.data = NULL; + int64_t* val_vals = val->elems; + for (size_t i = 0; i < val_constr.datalen; i++) { + int64_t val_conv_8 = val_vals[i]; + val_constr.data[i] = val_conv_8; + } + ReplyChannelRange_set_short_channel_ids(&this_ptr_conv, val_constr); } -uint32_t __attribute__((visibility("default"))) TS_derive_private_key(int8_tArray per_commitment_point, int8_tArray base_secret) { - LDKPublicKey per_commitment_point_ref; - CHECK(*((uint32_t*)per_commitment_point) == 33); - memcpy(per_commitment_point_ref.compressed_form, (uint8_t*)(per_commitment_point + 4), 33); - unsigned char base_secret_arr[32]; - CHECK(*((uint32_t*)base_secret) == 32); - memcpy(base_secret_arr, (uint8_t*)(base_secret + 4), 32); - unsigned char (*base_secret_ref)[32] = &base_secret_arr; - LDKCResult_SecretKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SecretKeyErrorZ), "LDKCResult_SecretKeyErrorZ"); - *ret_conv = derive_private_key(per_commitment_point_ref, base_secret_ref); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_ReplyChannelRange_new(int8_tArray chain_hash_arg, int32_t first_blocknum_arg, int32_t number_of_blocks_arg, jboolean sync_complete_arg, int64_tArray short_channel_ids_arg) { + LDKThirtyTwoBytes chain_hash_arg_ref; + CHECK(chain_hash_arg->arr_len == 32); + memcpy(chain_hash_arg_ref.data, chain_hash_arg->elems, 32); + LDKCVec_u64Z short_channel_ids_arg_constr; + short_channel_ids_arg_constr.datalen = short_channel_ids_arg->arr_len; + if (short_channel_ids_arg_constr.datalen > 0) + short_channel_ids_arg_constr.data = MALLOC(short_channel_ids_arg_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements"); + else + short_channel_ids_arg_constr.data = NULL; + int64_t* short_channel_ids_arg_vals = short_channel_ids_arg->elems; + for (size_t i = 0; i < short_channel_ids_arg_constr.datalen; i++) { + int64_t short_channel_ids_arg_conv_8 = short_channel_ids_arg_vals[i]; + short_channel_ids_arg_constr.data[i] = short_channel_ids_arg_conv_8; + } + LDKReplyChannelRange ret_var = ReplyChannelRange_new(chain_hash_arg_ref, first_blocknum_arg, number_of_blocks_arg, sync_complete_arg, short_channel_ids_arg_constr); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_derive_public_key(int8_tArray per_commitment_point, int8_tArray base_point) { - LDKPublicKey per_commitment_point_ref; - CHECK(*((uint32_t*)per_commitment_point) == 33); - memcpy(per_commitment_point_ref.compressed_form, (uint8_t*)(per_commitment_point + 4), 33); - LDKPublicKey base_point_ref; - CHECK(*((uint32_t*)base_point) == 33); - memcpy(base_point_ref.compressed_form, (uint8_t*)(base_point + 4), 33); - LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); - *ret_conv = derive_public_key(per_commitment_point_ref, base_point_ref); - return (uint64_t)ret_conv; +static inline uint64_t ReplyChannelRange_clone_ptr(LDKReplyChannelRange *NONNULL_PTR arg) { + LDKReplyChannelRange ret_var = ReplyChannelRange_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -uint32_t __attribute__((visibility("default"))) TS_derive_private_revocation_key(int8_tArray per_commitment_secret, int8_tArray countersignatory_revocation_base_secret) { - unsigned char per_commitment_secret_arr[32]; - CHECK(*((uint32_t*)per_commitment_secret) == 32); - memcpy(per_commitment_secret_arr, (uint8_t*)(per_commitment_secret + 4), 32); - unsigned char (*per_commitment_secret_ref)[32] = &per_commitment_secret_arr; - unsigned char countersignatory_revocation_base_secret_arr[32]; - CHECK(*((uint32_t*)countersignatory_revocation_base_secret) == 32); - memcpy(countersignatory_revocation_base_secret_arr, (uint8_t*)(countersignatory_revocation_base_secret + 4), 32); - unsigned char (*countersignatory_revocation_base_secret_ref)[32] = &countersignatory_revocation_base_secret_arr; - LDKCResult_SecretKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SecretKeyErrorZ), "LDKCResult_SecretKeyErrorZ"); - *ret_conv = derive_private_revocation_key(per_commitment_secret_ref, countersignatory_revocation_base_secret_ref); - return (uint64_t)ret_conv; + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_ReplyChannelRange_clone_ptr(uint32_t arg) { + LDKReplyChannelRange arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ReplyChannelRange_clone_ptr(&arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_derive_public_revocation_key(int8_tArray per_commitment_point, int8_tArray countersignatory_revocation_base_point) { - LDKPublicKey per_commitment_point_ref; - CHECK(*((uint32_t*)per_commitment_point) == 33); - memcpy(per_commitment_point_ref.compressed_form, (uint8_t*)(per_commitment_point + 4), 33); - LDKPublicKey countersignatory_revocation_base_point_ref; - CHECK(*((uint32_t*)countersignatory_revocation_base_point) == 33); - memcpy(countersignatory_revocation_base_point_ref.compressed_form, (uint8_t*)(countersignatory_revocation_base_point + 4), 33); - LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); - *ret_conv = derive_public_revocation_key(per_commitment_point_ref, countersignatory_revocation_base_point_ref); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_ReplyChannelRange_clone(uint32_t orig) { + LDKReplyChannelRange orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKReplyChannelRange ret_var = ReplyChannelRange_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_TxCreationKeys_free(uint32_t this_obj) { - LDKTxCreationKeys this_obj_conv; +void __attribute__((visibility("default"))) TS_QueryShortChannelIds_free(uint32_t this_obj) { + LDKQueryShortChannelIds this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - TxCreationKeys_free(this_obj_conv); + QueryShortChannelIds_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_TxCreationKeys_get_per_commitment_point(uint32_t this_ptr) { - LDKTxCreationKeys this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_QueryShortChannelIds_get_chain_hash(uint32_t this_ptr) { + LDKQueryShortChannelIds this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), TxCreationKeys_get_per_commitment_point(&this_ptr_conv).compressed_form, 33); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *QueryShortChannelIds_get_chain_hash(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_TxCreationKeys_set_per_commitment_point(uint32_t this_ptr, int8_tArray val) { - LDKTxCreationKeys this_ptr_conv; +void __attribute__((visibility("default"))) TS_QueryShortChannelIds_set_chain_hash(uint32_t this_ptr, int8_tArray val) { + LDKQueryShortChannelIds this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - TxCreationKeys_set_per_commitment_point(&this_ptr_conv, val_ref); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + QueryShortChannelIds_set_chain_hash(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_TxCreationKeys_get_revocation_key(uint32_t this_ptr) { - LDKTxCreationKeys this_ptr_conv; +void __attribute__((visibility("default"))) TS_QueryShortChannelIds_set_short_channel_ids(uint32_t this_ptr, int64_tArray val) { + LDKQueryShortChannelIds this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), TxCreationKeys_get_revocation_key(&this_ptr_conv).compressed_form, 33); - return ret_arr; + LDKCVec_u64Z val_constr; + val_constr.datalen = val->arr_len; + if (val_constr.datalen > 0) + val_constr.data = MALLOC(val_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements"); + else + val_constr.data = NULL; + int64_t* val_vals = val->elems; + for (size_t i = 0; i < val_constr.datalen; i++) { + int64_t val_conv_8 = val_vals[i]; + val_constr.data[i] = val_conv_8; + } + QueryShortChannelIds_set_short_channel_ids(&this_ptr_conv, val_constr); } -void __attribute__((visibility("default"))) TS_TxCreationKeys_set_revocation_key(uint32_t this_ptr, int8_tArray val) { - LDKTxCreationKeys this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - TxCreationKeys_set_revocation_key(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_QueryShortChannelIds_new(int8_tArray chain_hash_arg, int64_tArray short_channel_ids_arg) { + LDKThirtyTwoBytes chain_hash_arg_ref; + CHECK(chain_hash_arg->arr_len == 32); + memcpy(chain_hash_arg_ref.data, chain_hash_arg->elems, 32); + LDKCVec_u64Z short_channel_ids_arg_constr; + short_channel_ids_arg_constr.datalen = short_channel_ids_arg->arr_len; + if (short_channel_ids_arg_constr.datalen > 0) + short_channel_ids_arg_constr.data = MALLOC(short_channel_ids_arg_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements"); + else + short_channel_ids_arg_constr.data = NULL; + int64_t* short_channel_ids_arg_vals = short_channel_ids_arg->elems; + for (size_t i = 0; i < short_channel_ids_arg_constr.datalen; i++) { + int64_t short_channel_ids_arg_conv_8 = short_channel_ids_arg_vals[i]; + short_channel_ids_arg_constr.data[i] = short_channel_ids_arg_conv_8; + } + LDKQueryShortChannelIds ret_var = QueryShortChannelIds_new(chain_hash_arg_ref, short_channel_ids_arg_constr); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_TxCreationKeys_get_broadcaster_htlc_key(uint32_t this_ptr) { - LDKTxCreationKeys this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), TxCreationKeys_get_broadcaster_htlc_key(&this_ptr_conv).compressed_form, 33); - return ret_arr; +static inline uint64_t QueryShortChannelIds_clone_ptr(LDKQueryShortChannelIds *NONNULL_PTR arg) { + LDKQueryShortChannelIds ret_var = QueryShortChannelIds_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_QueryShortChannelIds_clone_ptr(uint32_t arg) { + LDKQueryShortChannelIds arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = QueryShortChannelIds_clone_ptr(&arg_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_TxCreationKeys_set_broadcaster_htlc_key(uint32_t this_ptr, int8_tArray val) { - LDKTxCreationKeys this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - TxCreationKeys_set_broadcaster_htlc_key(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_QueryShortChannelIds_clone(uint32_t orig) { + LDKQueryShortChannelIds orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKQueryShortChannelIds ret_var = QueryShortChannelIds_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_TxCreationKeys_get_countersignatory_htlc_key(uint32_t this_ptr) { - LDKTxCreationKeys this_ptr_conv; +void __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_free(uint32_t this_obj) { + LDKReplyShortChannelIdsEnd this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + ReplyShortChannelIdsEnd_free(this_obj_conv); +} + +int8_tArray __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_get_chain_hash(uint32_t this_ptr) { + LDKReplyShortChannelIdsEnd this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), TxCreationKeys_get_countersignatory_htlc_key(&this_ptr_conv).compressed_form, 33); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *ReplyShortChannelIdsEnd_get_chain_hash(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_TxCreationKeys_set_countersignatory_htlc_key(uint32_t this_ptr, int8_tArray val) { - LDKTxCreationKeys this_ptr_conv; +void __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_set_chain_hash(uint32_t this_ptr, int8_tArray val) { + LDKReplyShortChannelIdsEnd this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - TxCreationKeys_set_countersignatory_htlc_key(&this_ptr_conv, val_ref); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + ReplyShortChannelIdsEnd_set_chain_hash(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_TxCreationKeys_get_broadcaster_delayed_payment_key(uint32_t this_ptr) { - LDKTxCreationKeys this_ptr_conv; +jboolean __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_get_full_information(uint32_t this_ptr) { + LDKReplyShortChannelIdsEnd this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), TxCreationKeys_get_broadcaster_delayed_payment_key(&this_ptr_conv).compressed_form, 33); - return ret_arr; + jboolean ret_val = ReplyShortChannelIdsEnd_get_full_information(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_TxCreationKeys_set_broadcaster_delayed_payment_key(uint32_t this_ptr, int8_tArray val) { - LDKTxCreationKeys this_ptr_conv; +void __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_set_full_information(uint32_t this_ptr, jboolean val) { + LDKReplyShortChannelIdsEnd this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - TxCreationKeys_set_broadcaster_delayed_payment_key(&this_ptr_conv, val_ref); + ReplyShortChannelIdsEnd_set_full_information(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_TxCreationKeys_new(int8_tArray per_commitment_point_arg, int8_tArray revocation_key_arg, int8_tArray broadcaster_htlc_key_arg, int8_tArray countersignatory_htlc_key_arg, int8_tArray broadcaster_delayed_payment_key_arg) { - LDKPublicKey per_commitment_point_arg_ref; - CHECK(*((uint32_t*)per_commitment_point_arg) == 33); - memcpy(per_commitment_point_arg_ref.compressed_form, (uint8_t*)(per_commitment_point_arg + 4), 33); - LDKPublicKey revocation_key_arg_ref; - CHECK(*((uint32_t*)revocation_key_arg) == 33); - memcpy(revocation_key_arg_ref.compressed_form, (uint8_t*)(revocation_key_arg + 4), 33); - LDKPublicKey broadcaster_htlc_key_arg_ref; - CHECK(*((uint32_t*)broadcaster_htlc_key_arg) == 33); - memcpy(broadcaster_htlc_key_arg_ref.compressed_form, (uint8_t*)(broadcaster_htlc_key_arg + 4), 33); - LDKPublicKey countersignatory_htlc_key_arg_ref; - CHECK(*((uint32_t*)countersignatory_htlc_key_arg) == 33); - memcpy(countersignatory_htlc_key_arg_ref.compressed_form, (uint8_t*)(countersignatory_htlc_key_arg + 4), 33); - LDKPublicKey broadcaster_delayed_payment_key_arg_ref; - CHECK(*((uint32_t*)broadcaster_delayed_payment_key_arg) == 33); - memcpy(broadcaster_delayed_payment_key_arg_ref.compressed_form, (uint8_t*)(broadcaster_delayed_payment_key_arg + 4), 33); - LDKTxCreationKeys ret_var = TxCreationKeys_new(per_commitment_point_arg_ref, revocation_key_arg_ref, broadcaster_htlc_key_arg_ref, countersignatory_htlc_key_arg_ref, broadcaster_delayed_payment_key_arg_ref); +uint32_t __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_new(int8_tArray chain_hash_arg, jboolean full_information_arg) { + LDKThirtyTwoBytes chain_hash_arg_ref; + CHECK(chain_hash_arg->arr_len == 32); + memcpy(chain_hash_arg_ref.data, chain_hash_arg->elems, 32); + LDKReplyShortChannelIdsEnd ret_var = ReplyShortChannelIdsEnd_new(chain_hash_arg_ref, full_information_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -29162,8 +26599,8 @@ uint32_t __attribute__((visibility("default"))) TS_TxCreationKeys_new(int8_tArr return ret_ref; } -static inline uint64_t TxCreationKeys_clone_ptr(LDKTxCreationKeys *NONNULL_PTR arg) { - LDKTxCreationKeys ret_var = TxCreationKeys_clone(arg); +static inline uint64_t ReplyShortChannelIdsEnd_clone_ptr(LDKReplyShortChannelIdsEnd *NONNULL_PTR arg) { + LDKReplyShortChannelIdsEnd ret_var = ReplyShortChannelIdsEnd_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -29174,21 +26611,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_TxCreationKeys_clone_ptr(uint32_t arg) { - LDKTxCreationKeys arg_conv; +int64_t __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_clone_ptr(uint32_t arg) { + LDKReplyShortChannelIdsEnd arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = TxCreationKeys_clone_ptr(&arg_conv); + int64_t ret_val = ReplyShortChannelIdsEnd_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_TxCreationKeys_clone(uint32_t orig) { - LDKTxCreationKeys orig_conv; +uint32_t __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_clone(uint32_t orig) { + LDKReplyShortChannelIdsEnd orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKTxCreationKeys ret_var = TxCreationKeys_clone(&orig_conv); + LDKReplyShortChannelIdsEnd ret_var = ReplyShortChannelIdsEnd_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -29200,157 +26637,74 @@ uint32_t __attribute__((visibility("default"))) TS_TxCreationKeys_clone(uint32_ return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_TxCreationKeys_write(uint32_t obj) { - LDKTxCreationKeys obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = TxCreationKeys_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_TxCreationKeys_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_TxCreationKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysDecodeErrorZ), "LDKCResult_TxCreationKeysDecodeErrorZ"); - *ret_conv = TxCreationKeys_read(ser_ref); - return (uint64_t)ret_conv; -} - -void __attribute__((visibility("default"))) TS_ChannelPublicKeys_free(uint32_t this_obj) { - LDKChannelPublicKeys this_obj_conv; +void __attribute__((visibility("default"))) TS_GossipTimestampFilter_free(uint32_t this_obj) { + LDKGossipTimestampFilter this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelPublicKeys_free(this_obj_conv); -} - -int8_tArray __attribute__((visibility("default"))) TS_ChannelPublicKeys_get_funding_pubkey(uint32_t this_ptr) { - LDKChannelPublicKeys this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ChannelPublicKeys_get_funding_pubkey(&this_ptr_conv).compressed_form, 33); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_ChannelPublicKeys_set_funding_pubkey(uint32_t this_ptr, int8_tArray val) { - LDKChannelPublicKeys this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - ChannelPublicKeys_set_funding_pubkey(&this_ptr_conv, val_ref); -} - -int8_tArray __attribute__((visibility("default"))) TS_ChannelPublicKeys_get_revocation_basepoint(uint32_t this_ptr) { - LDKChannelPublicKeys this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ChannelPublicKeys_get_revocation_basepoint(&this_ptr_conv).compressed_form, 33); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_ChannelPublicKeys_set_revocation_basepoint(uint32_t this_ptr, int8_tArray val) { - LDKChannelPublicKeys this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - ChannelPublicKeys_set_revocation_basepoint(&this_ptr_conv, val_ref); + GossipTimestampFilter_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_ChannelPublicKeys_get_payment_point(uint32_t this_ptr) { - LDKChannelPublicKeys this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_GossipTimestampFilter_get_chain_hash(uint32_t this_ptr) { + LDKGossipTimestampFilter this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ChannelPublicKeys_get_payment_point(&this_ptr_conv).compressed_form, 33); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *GossipTimestampFilter_get_chain_hash(&this_ptr_conv), 32); return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelPublicKeys_set_payment_point(uint32_t this_ptr, int8_tArray val) { - LDKChannelPublicKeys this_ptr_conv; +void __attribute__((visibility("default"))) TS_GossipTimestampFilter_set_chain_hash(uint32_t this_ptr, int8_tArray val) { + LDKGossipTimestampFilter this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - ChannelPublicKeys_set_payment_point(&this_ptr_conv, val_ref); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + GossipTimestampFilter_set_chain_hash(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_ChannelPublicKeys_get_delayed_payment_basepoint(uint32_t this_ptr) { - LDKChannelPublicKeys this_ptr_conv; +int32_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_get_first_timestamp(uint32_t this_ptr) { + LDKGossipTimestampFilter this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ChannelPublicKeys_get_delayed_payment_basepoint(&this_ptr_conv).compressed_form, 33); - return ret_arr; + int32_t ret_val = GossipTimestampFilter_get_first_timestamp(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelPublicKeys_set_delayed_payment_basepoint(uint32_t this_ptr, int8_tArray val) { - LDKChannelPublicKeys this_ptr_conv; +void __attribute__((visibility("default"))) TS_GossipTimestampFilter_set_first_timestamp(uint32_t this_ptr, int32_t val) { + LDKGossipTimestampFilter this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - ChannelPublicKeys_set_delayed_payment_basepoint(&this_ptr_conv, val_ref); + GossipTimestampFilter_set_first_timestamp(&this_ptr_conv, val); } -int8_tArray __attribute__((visibility("default"))) TS_ChannelPublicKeys_get_htlc_basepoint(uint32_t this_ptr) { - LDKChannelPublicKeys this_ptr_conv; +int32_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_get_timestamp_range(uint32_t this_ptr) { + LDKGossipTimestampFilter this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ChannelPublicKeys_get_htlc_basepoint(&this_ptr_conv).compressed_form, 33); - return ret_arr; + int32_t ret_val = GossipTimestampFilter_get_timestamp_range(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelPublicKeys_set_htlc_basepoint(uint32_t this_ptr, int8_tArray val) { - LDKChannelPublicKeys this_ptr_conv; +void __attribute__((visibility("default"))) TS_GossipTimestampFilter_set_timestamp_range(uint32_t this_ptr, int32_t val) { + LDKGossipTimestampFilter this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - ChannelPublicKeys_set_htlc_basepoint(&this_ptr_conv, val_ref); + GossipTimestampFilter_set_timestamp_range(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_ChannelPublicKeys_new(int8_tArray funding_pubkey_arg, int8_tArray revocation_basepoint_arg, int8_tArray payment_point_arg, int8_tArray delayed_payment_basepoint_arg, int8_tArray htlc_basepoint_arg) { - LDKPublicKey funding_pubkey_arg_ref; - CHECK(*((uint32_t*)funding_pubkey_arg) == 33); - memcpy(funding_pubkey_arg_ref.compressed_form, (uint8_t*)(funding_pubkey_arg + 4), 33); - LDKPublicKey revocation_basepoint_arg_ref; - CHECK(*((uint32_t*)revocation_basepoint_arg) == 33); - memcpy(revocation_basepoint_arg_ref.compressed_form, (uint8_t*)(revocation_basepoint_arg + 4), 33); - LDKPublicKey payment_point_arg_ref; - CHECK(*((uint32_t*)payment_point_arg) == 33); - memcpy(payment_point_arg_ref.compressed_form, (uint8_t*)(payment_point_arg + 4), 33); - LDKPublicKey delayed_payment_basepoint_arg_ref; - CHECK(*((uint32_t*)delayed_payment_basepoint_arg) == 33); - memcpy(delayed_payment_basepoint_arg_ref.compressed_form, (uint8_t*)(delayed_payment_basepoint_arg + 4), 33); - LDKPublicKey htlc_basepoint_arg_ref; - CHECK(*((uint32_t*)htlc_basepoint_arg) == 33); - memcpy(htlc_basepoint_arg_ref.compressed_form, (uint8_t*)(htlc_basepoint_arg + 4), 33); - LDKChannelPublicKeys ret_var = ChannelPublicKeys_new(funding_pubkey_arg_ref, revocation_basepoint_arg_ref, payment_point_arg_ref, delayed_payment_basepoint_arg_ref, htlc_basepoint_arg_ref); +uint32_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_new(int8_tArray chain_hash_arg, int32_t first_timestamp_arg, int32_t timestamp_range_arg) { + LDKThirtyTwoBytes chain_hash_arg_ref; + CHECK(chain_hash_arg->arr_len == 32); + memcpy(chain_hash_arg_ref.data, chain_hash_arg->elems, 32); + LDKGossipTimestampFilter ret_var = GossipTimestampFilter_new(chain_hash_arg_ref, first_timestamp_arg, timestamp_range_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -29362,8 +26716,8 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelPublicKeys_new(int8_t return ret_ref; } -static inline uint64_t ChannelPublicKeys_clone_ptr(LDKChannelPublicKeys *NONNULL_PTR arg) { - LDKChannelPublicKeys ret_var = ChannelPublicKeys_clone(arg); +static inline uint64_t GossipTimestampFilter_clone_ptr(LDKGossipTimestampFilter *NONNULL_PTR arg) { + LDKGossipTimestampFilter ret_var = GossipTimestampFilter_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -29374,21 +26728,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ChannelPublicKeys_clone_ptr(uint32_t arg) { - LDKChannelPublicKeys arg_conv; +int64_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_clone_ptr(uint32_t arg) { + LDKGossipTimestampFilter arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelPublicKeys_clone_ptr(&arg_conv); + int64_t ret_val = GossipTimestampFilter_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelPublicKeys_clone(uint32_t orig) { - LDKChannelPublicKeys orig_conv; +uint32_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_clone(uint32_t orig) { + LDKGossipTimestampFilter orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelPublicKeys ret_var = ChannelPublicKeys_clone(&orig_conv); + LDKGossipTimestampFilter ret_var = GossipTimestampFilter_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -29400,191 +26754,139 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelPublicKeys_clone(uint return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_ChannelPublicKeys_write(uint32_t obj) { - LDKChannelPublicKeys obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ChannelPublicKeys_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_ChannelPublicKeys_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ChannelPublicKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelPublicKeysDecodeErrorZ), "LDKCResult_ChannelPublicKeysDecodeErrorZ"); - *ret_conv = ChannelPublicKeys_read(ser_ref); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_TxCreationKeys_derive_new(int8_tArray per_commitment_point, int8_tArray broadcaster_delayed_payment_base, int8_tArray broadcaster_htlc_base, int8_tArray countersignatory_revocation_base, int8_tArray countersignatory_htlc_base) { - LDKPublicKey per_commitment_point_ref; - CHECK(*((uint32_t*)per_commitment_point) == 33); - memcpy(per_commitment_point_ref.compressed_form, (uint8_t*)(per_commitment_point + 4), 33); - LDKPublicKey broadcaster_delayed_payment_base_ref; - CHECK(*((uint32_t*)broadcaster_delayed_payment_base) == 33); - memcpy(broadcaster_delayed_payment_base_ref.compressed_form, (uint8_t*)(broadcaster_delayed_payment_base + 4), 33); - LDKPublicKey broadcaster_htlc_base_ref; - CHECK(*((uint32_t*)broadcaster_htlc_base) == 33); - memcpy(broadcaster_htlc_base_ref.compressed_form, (uint8_t*)(broadcaster_htlc_base + 4), 33); - LDKPublicKey countersignatory_revocation_base_ref; - CHECK(*((uint32_t*)countersignatory_revocation_base) == 33); - memcpy(countersignatory_revocation_base_ref.compressed_form, (uint8_t*)(countersignatory_revocation_base + 4), 33); - LDKPublicKey countersignatory_htlc_base_ref; - CHECK(*((uint32_t*)countersignatory_htlc_base) == 33); - memcpy(countersignatory_htlc_base_ref.compressed_form, (uint8_t*)(countersignatory_htlc_base + 4), 33); - LDKCResult_TxCreationKeysErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysErrorZ), "LDKCResult_TxCreationKeysErrorZ"); - *ret_conv = TxCreationKeys_derive_new(per_commitment_point_ref, broadcaster_delayed_payment_base_ref, broadcaster_htlc_base_ref, countersignatory_revocation_base_ref, countersignatory_htlc_base_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_ErrorAction_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKErrorAction this_ptr_conv = *(LDKErrorAction*)(this_ptr_ptr); + FREE((void*)this_ptr); + ErrorAction_free(this_ptr_conv); } -uint32_t __attribute__((visibility("default"))) TS_TxCreationKeys_from_channel_static_keys(int8_tArray per_commitment_point, uint32_t broadcaster_keys, uint32_t countersignatory_keys) { - LDKPublicKey per_commitment_point_ref; - CHECK(*((uint32_t*)per_commitment_point) == 33); - memcpy(per_commitment_point_ref.compressed_form, (uint8_t*)(per_commitment_point + 4), 33); - LDKChannelPublicKeys broadcaster_keys_conv; - broadcaster_keys_conv.inner = (void*)(broadcaster_keys & (~1)); - broadcaster_keys_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(broadcaster_keys_conv); - LDKChannelPublicKeys countersignatory_keys_conv; - countersignatory_keys_conv.inner = (void*)(countersignatory_keys & (~1)); - countersignatory_keys_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(countersignatory_keys_conv); - LDKCResult_TxCreationKeysErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysErrorZ), "LDKCResult_TxCreationKeysErrorZ"); - *ret_conv = TxCreationKeys_from_channel_static_keys(per_commitment_point_ref, &broadcaster_keys_conv, &countersignatory_keys_conv); - return (uint64_t)ret_conv; +static inline uint64_t ErrorAction_clone_ptr(LDKErrorAction *NONNULL_PTR arg) { + LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); + *ret_copy = ErrorAction_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } - -int8_tArray __attribute__((visibility("default"))) TS_get_revokeable_redeemscript(int8_tArray revocation_key, int16_t contest_delay, int8_tArray broadcaster_delayed_payment_key) { - LDKPublicKey revocation_key_ref; - CHECK(*((uint32_t*)revocation_key) == 33); - memcpy(revocation_key_ref.compressed_form, (uint8_t*)(revocation_key + 4), 33); - LDKPublicKey broadcaster_delayed_payment_key_ref; - CHECK(*((uint32_t*)broadcaster_delayed_payment_key) == 33); - memcpy(broadcaster_delayed_payment_key_ref.compressed_form, (uint8_t*)(broadcaster_delayed_payment_key + 4), 33); - LDKCVec_u8Z ret_var = get_revokeable_redeemscript(revocation_key_ref, contest_delay, broadcaster_delayed_payment_key_ref); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +int64_t __attribute__((visibility("default"))) TS_ErrorAction_clone_ptr(uint32_t arg) { + LDKErrorAction* arg_conv = (LDKErrorAction*)arg; + int64_t ret_val = ErrorAction_clone_ptr(arg_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_free(uint32_t this_obj) { - LDKHTLCOutputInCommitment this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - HTLCOutputInCommitment_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_ErrorAction_clone(uint32_t orig) { + LDKErrorAction* orig_conv = (LDKErrorAction*)orig; + LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); + *ret_copy = ErrorAction_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_get_offered(uint32_t this_ptr) { - LDKHTLCOutputInCommitment this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = HTLCOutputInCommitment_get_offered(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_ErrorAction_disconnect_peer(uint32_t msg) { + LDKErrorMessage msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = ErrorMessage_clone(&msg_conv); + LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); + *ret_copy = ErrorAction_disconnect_peer(msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_set_offered(uint32_t this_ptr, jboolean val) { - LDKHTLCOutputInCommitment this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - HTLCOutputInCommitment_set_offered(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_ErrorAction_ignore_error() { + LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); + *ret_copy = ErrorAction_ignore_error(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_get_amount_msat(uint32_t this_ptr) { - LDKHTLCOutputInCommitment this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = HTLCOutputInCommitment_get_amount_msat(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_ErrorAction_ignore_and_log(uint32_t a) { + LDKLevel a_conv = LDKLevel_from_js(a); + LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); + *ret_copy = ErrorAction_ignore_and_log(a_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_set_amount_msat(uint32_t this_ptr, int64_t val) { - LDKHTLCOutputInCommitment this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - HTLCOutputInCommitment_set_amount_msat(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_ErrorAction_ignore_duplicate_gossip() { + LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); + *ret_copy = ErrorAction_ignore_duplicate_gossip(); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -int32_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_get_cltv_expiry(uint32_t this_ptr) { - LDKHTLCOutputInCommitment this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = HTLCOutputInCommitment_get_cltv_expiry(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_ErrorAction_send_error_message(uint32_t msg) { + LDKErrorMessage msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = ErrorMessage_clone(&msg_conv); + LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); + *ret_copy = ErrorAction_send_error_message(msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_set_cltv_expiry(uint32_t this_ptr, int32_t val) { - LDKHTLCOutputInCommitment this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - HTLCOutputInCommitment_set_cltv_expiry(&this_ptr_conv, val); +void __attribute__((visibility("default"))) TS_LightningError_free(uint32_t this_obj) { + LDKLightningError this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + LightningError_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_get_payment_hash(uint32_t this_ptr) { - LDKHTLCOutputInCommitment this_ptr_conv; +jstring __attribute__((visibility("default"))) TS_LightningError_get_err(uint32_t this_ptr) { + LDKLightningError this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *HTLCOutputInCommitment_get_payment_hash(&this_ptr_conv), 32); - return ret_arr; + LDKStr ret_str = LightningError_get_err(&this_ptr_conv); + jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); + Str_free(ret_str); + return ret_conv; } -void __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_set_payment_hash(uint32_t this_ptr, int8_tArray val) { - LDKHTLCOutputInCommitment this_ptr_conv; +void __attribute__((visibility("default"))) TS_LightningError_set_err(uint32_t this_ptr, jstring val) { + LDKLightningError this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - HTLCOutputInCommitment_set_payment_hash(&this_ptr_conv, val_ref); + LDKStr val_conv = str_ref_to_owned_c(val); + LightningError_set_err(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_get_transaction_output_index(uint32_t this_ptr) { - LDKHTLCOutputInCommitment this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_LightningError_get_action(uint32_t this_ptr) { + LDKLightningError this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCOption_u32Z *ret_copy = MALLOC(sizeof(LDKCOption_u32Z), "LDKCOption_u32Z"); - *ret_copy = HTLCOutputInCommitment_get_transaction_output_index(&this_ptr_conv); + LDKErrorAction *ret_copy = MALLOC(sizeof(LDKErrorAction), "LDKErrorAction"); + *ret_copy = LightningError_get_action(&this_ptr_conv); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -void __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_set_transaction_output_index(uint32_t this_ptr, uint32_t val) { - LDKHTLCOutputInCommitment this_ptr_conv; +void __attribute__((visibility("default"))) TS_LightningError_set_action(uint32_t this_ptr, uint32_t val) { + LDKLightningError this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); void* val_ptr = (void*)(((uint64_t)val) & ~1); CHECK_ACCESS(val_ptr); - LDKCOption_u32Z val_conv = *(LDKCOption_u32Z*)(val_ptr); - val_conv = COption_u32Z_clone((LDKCOption_u32Z*)(((uint64_t)val) & ~1)); - HTLCOutputInCommitment_set_transaction_output_index(&this_ptr_conv, val_conv); + LDKErrorAction val_conv = *(LDKErrorAction*)(val_ptr); + val_conv = ErrorAction_clone((LDKErrorAction*)(((uint64_t)val) & ~1)); + LightningError_set_action(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_new(jboolean offered_arg, int64_t amount_msat_arg, int32_t cltv_expiry_arg, int8_tArray payment_hash_arg, uint32_t transaction_output_index_arg) { - LDKThirtyTwoBytes payment_hash_arg_ref; - CHECK(*((uint32_t*)payment_hash_arg) == 32); - memcpy(payment_hash_arg_ref.data, (uint8_t*)(payment_hash_arg + 4), 32); - void* transaction_output_index_arg_ptr = (void*)(((uint64_t)transaction_output_index_arg) & ~1); - CHECK_ACCESS(transaction_output_index_arg_ptr); - LDKCOption_u32Z transaction_output_index_arg_conv = *(LDKCOption_u32Z*)(transaction_output_index_arg_ptr); - transaction_output_index_arg_conv = COption_u32Z_clone((LDKCOption_u32Z*)(((uint64_t)transaction_output_index_arg) & ~1)); - LDKHTLCOutputInCommitment ret_var = HTLCOutputInCommitment_new(offered_arg, amount_msat_arg, cltv_expiry_arg, payment_hash_arg_ref, transaction_output_index_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_LightningError_new(jstring err_arg, uint32_t action_arg) { + LDKStr err_arg_conv = str_ref_to_owned_c(err_arg); + void* action_arg_ptr = (void*)(((uint64_t)action_arg) & ~1); + CHECK_ACCESS(action_arg_ptr); + LDKErrorAction action_arg_conv = *(LDKErrorAction*)(action_arg_ptr); + action_arg_conv = ErrorAction_clone((LDKErrorAction*)(((uint64_t)action_arg) & ~1)); + LDKLightningError ret_var = LightningError_new(err_arg_conv, action_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -29596,8 +26898,8 @@ uint32_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_new(j return ret_ref; } -static inline uint64_t HTLCOutputInCommitment_clone_ptr(LDKHTLCOutputInCommitment *NONNULL_PTR arg) { - LDKHTLCOutputInCommitment ret_var = HTLCOutputInCommitment_clone(arg); +static inline uint64_t LightningError_clone_ptr(LDKLightningError *NONNULL_PTR arg) { + LDKLightningError ret_var = LightningError_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -29608,21 +26910,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_clone_ptr(uint32_t arg) { - LDKHTLCOutputInCommitment arg_conv; +int64_t __attribute__((visibility("default"))) TS_LightningError_clone_ptr(uint32_t arg) { + LDKLightningError arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = HTLCOutputInCommitment_clone_ptr(&arg_conv); + int64_t ret_val = LightningError_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_clone(uint32_t orig) { - LDKHTLCOutputInCommitment orig_conv; +uint32_t __attribute__((visibility("default"))) TS_LightningError_clone(uint32_t orig) { + LDKLightningError orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKHTLCOutputInCommitment ret_var = HTLCOutputInCommitment_clone(&orig_conv); + LDKLightningError ret_var = LightningError_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -29634,168 +26936,220 @@ uint32_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_clone return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_write(uint32_t obj) { - LDKHTLCOutputInCommitment obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = HTLCOutputInCommitment_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ), "LDKCResult_HTLCOutputInCommitmentDecodeErrorZ"); - *ret_conv = HTLCOutputInCommitment_read(ser_ref); - return (uint64_t)ret_conv; -} - -int8_tArray __attribute__((visibility("default"))) TS_get_htlc_redeemscript(uint32_t htlc, jboolean opt_anchors, uint32_t keys) { - LDKHTLCOutputInCommitment htlc_conv; - htlc_conv.inner = (void*)(htlc & (~1)); - htlc_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_conv); - LDKTxCreationKeys keys_conv; - keys_conv.inner = (void*)(keys & (~1)); - keys_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(keys_conv); - LDKCVec_u8Z ret_var = get_htlc_redeemscript(&htlc_conv, opt_anchors, &keys_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -int8_tArray __attribute__((visibility("default"))) TS_make_funding_redeemscript(int8_tArray broadcaster, int8_tArray countersignatory) { - LDKPublicKey broadcaster_ref; - CHECK(*((uint32_t*)broadcaster) == 33); - memcpy(broadcaster_ref.compressed_form, (uint8_t*)(broadcaster + 4), 33); - LDKPublicKey countersignatory_ref; - CHECK(*((uint32_t*)countersignatory) == 33); - memcpy(countersignatory_ref.compressed_form, (uint8_t*)(countersignatory + 4), 33); - LDKCVec_u8Z ret_var = make_funding_redeemscript(broadcaster_ref, countersignatory_ref); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -int8_tArray __attribute__((visibility("default"))) TS_build_htlc_transaction(int8_tArray commitment_txid, int32_t feerate_per_kw, int16_t contest_delay, uint32_t htlc, jboolean opt_anchors, int8_tArray broadcaster_delayed_payment_key, int8_tArray revocation_key) { - unsigned char commitment_txid_arr[32]; - CHECK(*((uint32_t*)commitment_txid) == 32); - memcpy(commitment_txid_arr, (uint8_t*)(commitment_txid + 4), 32); - unsigned char (*commitment_txid_ref)[32] = &commitment_txid_arr; - LDKHTLCOutputInCommitment htlc_conv; - htlc_conv.inner = (void*)(htlc & (~1)); - htlc_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_conv); - LDKPublicKey broadcaster_delayed_payment_key_ref; - CHECK(*((uint32_t*)broadcaster_delayed_payment_key) == 33); - memcpy(broadcaster_delayed_payment_key_ref.compressed_form, (uint8_t*)(broadcaster_delayed_payment_key + 4), 33); - LDKPublicKey revocation_key_ref; - CHECK(*((uint32_t*)revocation_key) == 33); - memcpy(revocation_key_ref.compressed_form, (uint8_t*)(revocation_key + 4), 33); - LDKTransaction ret_var = build_htlc_transaction(commitment_txid_ref, feerate_per_kw, contest_delay, &htlc_conv, opt_anchors, broadcaster_delayed_payment_key_ref, revocation_key_ref); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - Transaction_free(ret_var); - return ret_arr; +void __attribute__((visibility("default"))) TS_CommitmentUpdate_free(uint32_t this_obj) { + LDKCommitmentUpdate this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + CommitmentUpdate_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_get_anchor_redeemscript(int8_tArray funding_pubkey) { - LDKPublicKey funding_pubkey_ref; - CHECK(*((uint32_t*)funding_pubkey) == 33); - memcpy(funding_pubkey_ref.compressed_form, (uint8_t*)(funding_pubkey + 4), 33); - LDKCVec_u8Z ret_var = get_anchor_redeemscript(funding_pubkey_ref); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +uint32_tArray __attribute__((visibility("default"))) TS_CommitmentUpdate_get_update_add_htlcs(uint32_t this_ptr) { + LDKCommitmentUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_UpdateAddHTLCZ ret_var = CommitmentUpdate_get_update_add_htlcs(&this_ptr_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t p = 0; p < ret_var.datalen; p++) { + LDKUpdateAddHTLC ret_conv_15_var = ret_var.data[p]; + uint64_t ret_conv_15_ref = 0; + CHECK((((uint64_t)ret_conv_15_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_conv_15_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_15_var); + ret_conv_15_ref = (uint64_t)ret_conv_15_var.inner; + if (ret_conv_15_var.is_owned) { + ret_conv_15_ref |= 1; + } + ret_arr_ptr[p] = ret_conv_15_ref; + } + + FREE(ret_var.data); return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_free(uint32_t this_obj) { - LDKChannelTransactionParameters this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelTransactionParameters_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_CommitmentUpdate_set_update_add_htlcs(uint32_t this_ptr, uint32_tArray val) { + LDKCommitmentUpdate this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_UpdateAddHTLCZ val_constr; + val_constr.datalen = val->arr_len; + if (val_constr.datalen > 0) + val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKUpdateAddHTLC), "LDKCVec_UpdateAddHTLCZ Elements"); + else + val_constr.data = NULL; + uint32_t* val_vals = val->elems; + for (size_t p = 0; p < val_constr.datalen; p++) { + uint32_t val_conv_15 = val_vals[p]; + LDKUpdateAddHTLC val_conv_15_conv; + val_conv_15_conv.inner = (void*)(val_conv_15 & (~1)); + val_conv_15_conv.is_owned = (val_conv_15 & 1) || (val_conv_15 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_15_conv); + val_conv_15_conv = UpdateAddHTLC_clone(&val_conv_15_conv); + val_constr.data[p] = val_conv_15_conv; + } + CommitmentUpdate_set_update_add_htlcs(&this_ptr_conv, val_constr); } -uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_get_holder_pubkeys(uint32_t this_ptr) { - LDKChannelTransactionParameters this_ptr_conv; +uint32_tArray __attribute__((visibility("default"))) TS_CommitmentUpdate_get_update_fulfill_htlcs(uint32_t this_ptr) { + LDKCommitmentUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelPublicKeys ret_var = ChannelTransactionParameters_get_holder_pubkeys(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; + LDKCVec_UpdateFulfillHTLCZ ret_var = CommitmentUpdate_get_update_fulfill_htlcs(&this_ptr_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t t = 0; t < ret_var.datalen; t++) { + LDKUpdateFulfillHTLC ret_conv_19_var = ret_var.data[t]; + uint64_t ret_conv_19_ref = 0; + CHECK((((uint64_t)ret_conv_19_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_conv_19_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_19_var); + ret_conv_19_ref = (uint64_t)ret_conv_19_var.inner; + if (ret_conv_19_var.is_owned) { + ret_conv_19_ref |= 1; + } + ret_arr_ptr[t] = ret_conv_19_ref; } - return ret_ref; + + FREE(ret_var.data); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_set_holder_pubkeys(uint32_t this_ptr, uint32_t val) { - LDKChannelTransactionParameters this_ptr_conv; +void __attribute__((visibility("default"))) TS_CommitmentUpdate_set_update_fulfill_htlcs(uint32_t this_ptr, uint32_tArray val) { + LDKCommitmentUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelPublicKeys val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = ChannelPublicKeys_clone(&val_conv); - ChannelTransactionParameters_set_holder_pubkeys(&this_ptr_conv, val_conv); + LDKCVec_UpdateFulfillHTLCZ val_constr; + val_constr.datalen = val->arr_len; + if (val_constr.datalen > 0) + val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKUpdateFulfillHTLC), "LDKCVec_UpdateFulfillHTLCZ Elements"); + else + val_constr.data = NULL; + uint32_t* val_vals = val->elems; + for (size_t t = 0; t < val_constr.datalen; t++) { + uint32_t val_conv_19 = val_vals[t]; + LDKUpdateFulfillHTLC val_conv_19_conv; + val_conv_19_conv.inner = (void*)(val_conv_19 & (~1)); + val_conv_19_conv.is_owned = (val_conv_19 & 1) || (val_conv_19 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_19_conv); + val_conv_19_conv = UpdateFulfillHTLC_clone(&val_conv_19_conv); + val_constr.data[t] = val_conv_19_conv; + } + CommitmentUpdate_set_update_fulfill_htlcs(&this_ptr_conv, val_constr); } -int16_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_get_holder_selected_contest_delay(uint32_t this_ptr) { - LDKChannelTransactionParameters this_ptr_conv; +uint32_tArray __attribute__((visibility("default"))) TS_CommitmentUpdate_get_update_fail_htlcs(uint32_t this_ptr) { + LDKCommitmentUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = ChannelTransactionParameters_get_holder_selected_contest_delay(&this_ptr_conv); - return ret_val; + LDKCVec_UpdateFailHTLCZ ret_var = CommitmentUpdate_get_update_fail_htlcs(&this_ptr_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t q = 0; q < ret_var.datalen; q++) { + LDKUpdateFailHTLC ret_conv_16_var = ret_var.data[q]; + uint64_t ret_conv_16_ref = 0; + CHECK((((uint64_t)ret_conv_16_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_conv_16_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_16_var); + ret_conv_16_ref = (uint64_t)ret_conv_16_var.inner; + if (ret_conv_16_var.is_owned) { + ret_conv_16_ref |= 1; + } + ret_arr_ptr[q] = ret_conv_16_ref; + } + + FREE(ret_var.data); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_set_holder_selected_contest_delay(uint32_t this_ptr, int16_t val) { - LDKChannelTransactionParameters this_ptr_conv; +void __attribute__((visibility("default"))) TS_CommitmentUpdate_set_update_fail_htlcs(uint32_t this_ptr, uint32_tArray val) { + LDKCommitmentUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelTransactionParameters_set_holder_selected_contest_delay(&this_ptr_conv, val); + LDKCVec_UpdateFailHTLCZ val_constr; + val_constr.datalen = val->arr_len; + if (val_constr.datalen > 0) + val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKUpdateFailHTLC), "LDKCVec_UpdateFailHTLCZ Elements"); + else + val_constr.data = NULL; + uint32_t* val_vals = val->elems; + for (size_t q = 0; q < val_constr.datalen; q++) { + uint32_t val_conv_16 = val_vals[q]; + LDKUpdateFailHTLC val_conv_16_conv; + val_conv_16_conv.inner = (void*)(val_conv_16 & (~1)); + val_conv_16_conv.is_owned = (val_conv_16 & 1) || (val_conv_16 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_16_conv); + val_conv_16_conv = UpdateFailHTLC_clone(&val_conv_16_conv); + val_constr.data[q] = val_conv_16_conv; + } + CommitmentUpdate_set_update_fail_htlcs(&this_ptr_conv, val_constr); } -jboolean __attribute__((visibility("default"))) TS_ChannelTransactionParameters_get_is_outbound_from_holder(uint32_t this_ptr) { - LDKChannelTransactionParameters this_ptr_conv; +uint32_tArray __attribute__((visibility("default"))) TS_CommitmentUpdate_get_update_fail_malformed_htlcs(uint32_t this_ptr) { + LDKCommitmentUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = ChannelTransactionParameters_get_is_outbound_from_holder(&this_ptr_conv); - return ret_val; + LDKCVec_UpdateFailMalformedHTLCZ ret_var = CommitmentUpdate_get_update_fail_malformed_htlcs(&this_ptr_conv); + uint32_tArray ret_arr = NULL; + ret_arr = init_uint32_tArray(ret_var.datalen); + uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); + for (size_t z = 0; z < ret_var.datalen; z++) { + LDKUpdateFailMalformedHTLC ret_conv_25_var = ret_var.data[z]; + uint64_t ret_conv_25_ref = 0; + CHECK((((uint64_t)ret_conv_25_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_conv_25_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_25_var); + ret_conv_25_ref = (uint64_t)ret_conv_25_var.inner; + if (ret_conv_25_var.is_owned) { + ret_conv_25_ref |= 1; + } + ret_arr_ptr[z] = ret_conv_25_ref; + } + + FREE(ret_var.data); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_set_is_outbound_from_holder(uint32_t this_ptr, jboolean val) { - LDKChannelTransactionParameters this_ptr_conv; +void __attribute__((visibility("default"))) TS_CommitmentUpdate_set_update_fail_malformed_htlcs(uint32_t this_ptr, uint32_tArray val) { + LDKCommitmentUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ChannelTransactionParameters_set_is_outbound_from_holder(&this_ptr_conv, val); + LDKCVec_UpdateFailMalformedHTLCZ val_constr; + val_constr.datalen = val->arr_len; + if (val_constr.datalen > 0) + val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKUpdateFailMalformedHTLC), "LDKCVec_UpdateFailMalformedHTLCZ Elements"); + else + val_constr.data = NULL; + uint32_t* val_vals = val->elems; + for (size_t z = 0; z < val_constr.datalen; z++) { + uint32_t val_conv_25 = val_vals[z]; + LDKUpdateFailMalformedHTLC val_conv_25_conv; + val_conv_25_conv.inner = (void*)(val_conv_25 & (~1)); + val_conv_25_conv.is_owned = (val_conv_25 & 1) || (val_conv_25 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_25_conv); + val_conv_25_conv = UpdateFailMalformedHTLC_clone(&val_conv_25_conv); + val_constr.data[z] = val_conv_25_conv; + } + CommitmentUpdate_set_update_fail_malformed_htlcs(&this_ptr_conv, val_constr); } -uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_get_counterparty_parameters(uint32_t this_ptr) { - LDKChannelTransactionParameters this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_CommitmentUpdate_get_update_fee(uint32_t this_ptr) { + LDKCommitmentUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCounterpartyChannelTransactionParameters ret_var = ChannelTransactionParameters_get_counterparty_parameters(&this_ptr_conv); + LDKUpdateFee ret_var = CommitmentUpdate_get_update_fee(&this_ptr_conv); uint64_t ret_ref = 0; if ((uint64_t)ret_var.inner > 4096) { CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. @@ -29809,87 +27163,125 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_set_counterparty_parameters(uint32_t this_ptr, uint32_t val) { - LDKChannelTransactionParameters this_ptr_conv; +void __attribute__((visibility("default"))) TS_CommitmentUpdate_set_update_fee(uint32_t this_ptr, uint32_t val) { + LDKCommitmentUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCounterpartyChannelTransactionParameters val_conv; + LDKUpdateFee val_conv; val_conv.inner = (void*)(val & (~1)); val_conv.is_owned = (val & 1) || (val == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = CounterpartyChannelTransactionParameters_clone(&val_conv); - ChannelTransactionParameters_set_counterparty_parameters(&this_ptr_conv, val_conv); + val_conv = UpdateFee_clone(&val_conv); + CommitmentUpdate_set_update_fee(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_get_funding_outpoint(uint32_t this_ptr) { - LDKChannelTransactionParameters this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_CommitmentUpdate_get_commitment_signed(uint32_t this_ptr) { + LDKCommitmentUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKOutPoint ret_var = ChannelTransactionParameters_get_funding_outpoint(&this_ptr_conv); + LDKCommitmentSigned ret_var = CommitmentUpdate_get_commitment_signed(&this_ptr_conv); uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_set_funding_outpoint(uint32_t this_ptr, uint32_t val) { - LDKChannelTransactionParameters this_ptr_conv; +void __attribute__((visibility("default"))) TS_CommitmentUpdate_set_commitment_signed(uint32_t this_ptr, uint32_t val) { + LDKCommitmentUpdate this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKOutPoint val_conv; + LDKCommitmentSigned val_conv; val_conv.inner = (void*)(val & (~1)); val_conv.is_owned = (val & 1) || (val == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = OutPoint_clone(&val_conv); - ChannelTransactionParameters_set_funding_outpoint(&this_ptr_conv, val_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_get_opt_anchors(uint32_t this_ptr) { - LDKChannelTransactionParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - uint32_t ret_conv = LDKCOption_NoneZ_to_js(ChannelTransactionParameters_get_opt_anchors(&this_ptr_conv)); - return ret_conv; -} - -void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_set_opt_anchors(uint32_t this_ptr, uint32_t val) { - LDKChannelTransactionParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCOption_NoneZ val_conv = LDKCOption_NoneZ_from_js(val); - ChannelTransactionParameters_set_opt_anchors(&this_ptr_conv, val_conv); + val_conv = CommitmentSigned_clone(&val_conv); + CommitmentUpdate_set_commitment_signed(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_new(uint32_t holder_pubkeys_arg, int16_t holder_selected_contest_delay_arg, jboolean is_outbound_from_holder_arg, uint32_t counterparty_parameters_arg, uint32_t funding_outpoint_arg, uint32_t opt_anchors_arg) { - LDKChannelPublicKeys holder_pubkeys_arg_conv; - holder_pubkeys_arg_conv.inner = (void*)(holder_pubkeys_arg & (~1)); - holder_pubkeys_arg_conv.is_owned = (holder_pubkeys_arg & 1) || (holder_pubkeys_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(holder_pubkeys_arg_conv); - holder_pubkeys_arg_conv = ChannelPublicKeys_clone(&holder_pubkeys_arg_conv); - LDKCounterpartyChannelTransactionParameters counterparty_parameters_arg_conv; - counterparty_parameters_arg_conv.inner = (void*)(counterparty_parameters_arg & (~1)); - counterparty_parameters_arg_conv.is_owned = (counterparty_parameters_arg & 1) || (counterparty_parameters_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(counterparty_parameters_arg_conv); - counterparty_parameters_arg_conv = CounterpartyChannelTransactionParameters_clone(&counterparty_parameters_arg_conv); - LDKOutPoint funding_outpoint_arg_conv; - funding_outpoint_arg_conv.inner = (void*)(funding_outpoint_arg & (~1)); - funding_outpoint_arg_conv.is_owned = (funding_outpoint_arg & 1) || (funding_outpoint_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_outpoint_arg_conv); - funding_outpoint_arg_conv = OutPoint_clone(&funding_outpoint_arg_conv); - LDKCOption_NoneZ opt_anchors_arg_conv = LDKCOption_NoneZ_from_js(opt_anchors_arg); - LDKChannelTransactionParameters ret_var = ChannelTransactionParameters_new(holder_pubkeys_arg_conv, holder_selected_contest_delay_arg, is_outbound_from_holder_arg, counterparty_parameters_arg_conv, funding_outpoint_arg_conv, opt_anchors_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_CommitmentUpdate_new(uint32_tArray update_add_htlcs_arg, uint32_tArray update_fulfill_htlcs_arg, uint32_tArray update_fail_htlcs_arg, uint32_tArray update_fail_malformed_htlcs_arg, uint32_t update_fee_arg, uint32_t commitment_signed_arg) { + LDKCVec_UpdateAddHTLCZ update_add_htlcs_arg_constr; + update_add_htlcs_arg_constr.datalen = update_add_htlcs_arg->arr_len; + if (update_add_htlcs_arg_constr.datalen > 0) + update_add_htlcs_arg_constr.data = MALLOC(update_add_htlcs_arg_constr.datalen * sizeof(LDKUpdateAddHTLC), "LDKCVec_UpdateAddHTLCZ Elements"); + else + update_add_htlcs_arg_constr.data = NULL; + uint32_t* update_add_htlcs_arg_vals = update_add_htlcs_arg->elems; + for (size_t p = 0; p < update_add_htlcs_arg_constr.datalen; p++) { + uint32_t update_add_htlcs_arg_conv_15 = update_add_htlcs_arg_vals[p]; + LDKUpdateAddHTLC update_add_htlcs_arg_conv_15_conv; + update_add_htlcs_arg_conv_15_conv.inner = (void*)(update_add_htlcs_arg_conv_15 & (~1)); + update_add_htlcs_arg_conv_15_conv.is_owned = (update_add_htlcs_arg_conv_15 & 1) || (update_add_htlcs_arg_conv_15 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_add_htlcs_arg_conv_15_conv); + update_add_htlcs_arg_conv_15_conv = UpdateAddHTLC_clone(&update_add_htlcs_arg_conv_15_conv); + update_add_htlcs_arg_constr.data[p] = update_add_htlcs_arg_conv_15_conv; + } + LDKCVec_UpdateFulfillHTLCZ update_fulfill_htlcs_arg_constr; + update_fulfill_htlcs_arg_constr.datalen = update_fulfill_htlcs_arg->arr_len; + if (update_fulfill_htlcs_arg_constr.datalen > 0) + update_fulfill_htlcs_arg_constr.data = MALLOC(update_fulfill_htlcs_arg_constr.datalen * sizeof(LDKUpdateFulfillHTLC), "LDKCVec_UpdateFulfillHTLCZ Elements"); + else + update_fulfill_htlcs_arg_constr.data = NULL; + uint32_t* update_fulfill_htlcs_arg_vals = update_fulfill_htlcs_arg->elems; + for (size_t t = 0; t < update_fulfill_htlcs_arg_constr.datalen; t++) { + uint32_t update_fulfill_htlcs_arg_conv_19 = update_fulfill_htlcs_arg_vals[t]; + LDKUpdateFulfillHTLC update_fulfill_htlcs_arg_conv_19_conv; + update_fulfill_htlcs_arg_conv_19_conv.inner = (void*)(update_fulfill_htlcs_arg_conv_19 & (~1)); + update_fulfill_htlcs_arg_conv_19_conv.is_owned = (update_fulfill_htlcs_arg_conv_19 & 1) || (update_fulfill_htlcs_arg_conv_19 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_fulfill_htlcs_arg_conv_19_conv); + update_fulfill_htlcs_arg_conv_19_conv = UpdateFulfillHTLC_clone(&update_fulfill_htlcs_arg_conv_19_conv); + update_fulfill_htlcs_arg_constr.data[t] = update_fulfill_htlcs_arg_conv_19_conv; + } + LDKCVec_UpdateFailHTLCZ update_fail_htlcs_arg_constr; + update_fail_htlcs_arg_constr.datalen = update_fail_htlcs_arg->arr_len; + if (update_fail_htlcs_arg_constr.datalen > 0) + update_fail_htlcs_arg_constr.data = MALLOC(update_fail_htlcs_arg_constr.datalen * sizeof(LDKUpdateFailHTLC), "LDKCVec_UpdateFailHTLCZ Elements"); + else + update_fail_htlcs_arg_constr.data = NULL; + uint32_t* update_fail_htlcs_arg_vals = update_fail_htlcs_arg->elems; + for (size_t q = 0; q < update_fail_htlcs_arg_constr.datalen; q++) { + uint32_t update_fail_htlcs_arg_conv_16 = update_fail_htlcs_arg_vals[q]; + LDKUpdateFailHTLC update_fail_htlcs_arg_conv_16_conv; + update_fail_htlcs_arg_conv_16_conv.inner = (void*)(update_fail_htlcs_arg_conv_16 & (~1)); + update_fail_htlcs_arg_conv_16_conv.is_owned = (update_fail_htlcs_arg_conv_16 & 1) || (update_fail_htlcs_arg_conv_16 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_fail_htlcs_arg_conv_16_conv); + update_fail_htlcs_arg_conv_16_conv = UpdateFailHTLC_clone(&update_fail_htlcs_arg_conv_16_conv); + update_fail_htlcs_arg_constr.data[q] = update_fail_htlcs_arg_conv_16_conv; + } + LDKCVec_UpdateFailMalformedHTLCZ update_fail_malformed_htlcs_arg_constr; + update_fail_malformed_htlcs_arg_constr.datalen = update_fail_malformed_htlcs_arg->arr_len; + if (update_fail_malformed_htlcs_arg_constr.datalen > 0) + update_fail_malformed_htlcs_arg_constr.data = MALLOC(update_fail_malformed_htlcs_arg_constr.datalen * sizeof(LDKUpdateFailMalformedHTLC), "LDKCVec_UpdateFailMalformedHTLCZ Elements"); + else + update_fail_malformed_htlcs_arg_constr.data = NULL; + uint32_t* update_fail_malformed_htlcs_arg_vals = update_fail_malformed_htlcs_arg->elems; + for (size_t z = 0; z < update_fail_malformed_htlcs_arg_constr.datalen; z++) { + uint32_t update_fail_malformed_htlcs_arg_conv_25 = update_fail_malformed_htlcs_arg_vals[z]; + LDKUpdateFailMalformedHTLC update_fail_malformed_htlcs_arg_conv_25_conv; + update_fail_malformed_htlcs_arg_conv_25_conv.inner = (void*)(update_fail_malformed_htlcs_arg_conv_25 & (~1)); + update_fail_malformed_htlcs_arg_conv_25_conv.is_owned = (update_fail_malformed_htlcs_arg_conv_25 & 1) || (update_fail_malformed_htlcs_arg_conv_25 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_fail_malformed_htlcs_arg_conv_25_conv); + update_fail_malformed_htlcs_arg_conv_25_conv = UpdateFailMalformedHTLC_clone(&update_fail_malformed_htlcs_arg_conv_25_conv); + update_fail_malformed_htlcs_arg_constr.data[z] = update_fail_malformed_htlcs_arg_conv_25_conv; + } + LDKUpdateFee update_fee_arg_conv; + update_fee_arg_conv.inner = (void*)(update_fee_arg & (~1)); + update_fee_arg_conv.is_owned = (update_fee_arg & 1) || (update_fee_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(update_fee_arg_conv); + update_fee_arg_conv = UpdateFee_clone(&update_fee_arg_conv); + LDKCommitmentSigned commitment_signed_arg_conv; + commitment_signed_arg_conv.inner = (void*)(commitment_signed_arg & (~1)); + commitment_signed_arg_conv.is_owned = (commitment_signed_arg & 1) || (commitment_signed_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_signed_arg_conv); + commitment_signed_arg_conv = CommitmentSigned_clone(&commitment_signed_arg_conv); + LDKCommitmentUpdate ret_var = CommitmentUpdate_new(update_add_htlcs_arg_constr, update_fulfill_htlcs_arg_constr, update_fail_htlcs_arg_constr, update_fail_malformed_htlcs_arg_constr, update_fee_arg_conv, commitment_signed_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -29901,8 +27293,8 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters return ret_ref; } -static inline uint64_t ChannelTransactionParameters_clone_ptr(LDKChannelTransactionParameters *NONNULL_PTR arg) { - LDKChannelTransactionParameters ret_var = ChannelTransactionParameters_clone(arg); +static inline uint64_t CommitmentUpdate_clone_ptr(LDKCommitmentUpdate *NONNULL_PTR arg) { + LDKCommitmentUpdate ret_var = CommitmentUpdate_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -29913,21 +27305,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_clone_ptr(uint32_t arg) { - LDKChannelTransactionParameters arg_conv; +int64_t __attribute__((visibility("default"))) TS_CommitmentUpdate_clone_ptr(uint32_t arg) { + LDKCommitmentUpdate arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelTransactionParameters_clone_ptr(&arg_conv); + int64_t ret_val = CommitmentUpdate_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_clone(uint32_t orig) { - LDKChannelTransactionParameters orig_conv; +uint32_t __attribute__((visibility("default"))) TS_CommitmentUpdate_clone(uint32_t orig) { + LDKCommitmentUpdate orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelTransactionParameters ret_var = ChannelTransactionParameters_clone(&orig_conv); + LDKCommitmentUpdate ret_var = CommitmentUpdate_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -29939,841 +27331,724 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters return ret_ref; } -void __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_free(uint32_t this_obj) { - LDKCounterpartyChannelTransactionParameters this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - CounterpartyChannelTransactionParameters_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_ChannelMessageHandler_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKChannelMessageHandler this_ptr_conv = *(LDKChannelMessageHandler*)(this_ptr_ptr); + FREE((void*)this_ptr); + ChannelMessageHandler_free(this_ptr_conv); } -uint32_t __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_get_pubkeys(uint32_t this_ptr) { - LDKCounterpartyChannelTransactionParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelPublicKeys ret_var = CounterpartyChannelTransactionParameters_get_pubkeys(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_RoutingMessageHandler_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKRoutingMessageHandler this_ptr_conv = *(LDKRoutingMessageHandler*)(this_ptr_ptr); + FREE((void*)this_ptr); + RoutingMessageHandler_free(this_ptr_conv); } -void __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_set_pubkeys(uint32_t this_ptr, uint32_t val) { - LDKCounterpartyChannelTransactionParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelPublicKeys val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = ChannelPublicKeys_clone(&val_conv); - CounterpartyChannelTransactionParameters_set_pubkeys(&this_ptr_conv, val_conv); +int8_tArray __attribute__((visibility("default"))) TS_AcceptChannel_write(uint32_t obj) { + LDKAcceptChannel obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = AcceptChannel_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -int16_t __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_get_selected_contest_delay(uint32_t this_ptr) { - LDKCounterpartyChannelTransactionParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = CounterpartyChannelTransactionParameters_get_selected_contest_delay(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_AcceptChannel_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_AcceptChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AcceptChannelDecodeErrorZ), "LDKCResult_AcceptChannelDecodeErrorZ"); + *ret_conv = AcceptChannel_read(ser_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_set_selected_contest_delay(uint32_t this_ptr, int16_t val) { - LDKCounterpartyChannelTransactionParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - CounterpartyChannelTransactionParameters_set_selected_contest_delay(&this_ptr_conv, val); +int8_tArray __attribute__((visibility("default"))) TS_AnnouncementSignatures_write(uint32_t obj) { + LDKAnnouncementSignatures obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = AnnouncementSignatures_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_new(uint32_t pubkeys_arg, int16_t selected_contest_delay_arg) { - LDKChannelPublicKeys pubkeys_arg_conv; - pubkeys_arg_conv.inner = (void*)(pubkeys_arg & (~1)); - pubkeys_arg_conv.is_owned = (pubkeys_arg & 1) || (pubkeys_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(pubkeys_arg_conv); - pubkeys_arg_conv = ChannelPublicKeys_clone(&pubkeys_arg_conv); - LDKCounterpartyChannelTransactionParameters ret_var = CounterpartyChannelTransactionParameters_new(pubkeys_arg_conv, selected_contest_delay_arg); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_AnnouncementSignatures_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_AnnouncementSignaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_AnnouncementSignaturesDecodeErrorZ), "LDKCResult_AnnouncementSignaturesDecodeErrorZ"); + *ret_conv = AnnouncementSignatures_read(ser_ref); + return (uint64_t)ret_conv; } -static inline uint64_t CounterpartyChannelTransactionParameters_clone_ptr(LDKCounterpartyChannelTransactionParameters *NONNULL_PTR arg) { - LDKCounterpartyChannelTransactionParameters ret_var = CounterpartyChannelTransactionParameters_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; +int8_tArray __attribute__((visibility("default"))) TS_ChannelReestablish_write(uint32_t obj) { + LDKChannelReestablish obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ChannelReestablish_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } - return ret_ref; + +uint32_t __attribute__((visibility("default"))) TS_ChannelReestablish_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ChannelReestablishDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelReestablishDecodeErrorZ), "LDKCResult_ChannelReestablishDecodeErrorZ"); + *ret_conv = ChannelReestablish_read(ser_ref); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_clone_ptr(uint32_t arg) { - LDKCounterpartyChannelTransactionParameters arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = CounterpartyChannelTransactionParameters_clone_ptr(&arg_conv); - return ret_val; + +int8_tArray __attribute__((visibility("default"))) TS_ClosingSigned_write(uint32_t obj) { + LDKClosingSigned obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ClosingSigned_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_clone(uint32_t orig) { - LDKCounterpartyChannelTransactionParameters orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKCounterpartyChannelTransactionParameters ret_var = CounterpartyChannelTransactionParameters_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_ClosingSigned_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ClosingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedDecodeErrorZ), "LDKCResult_ClosingSignedDecodeErrorZ"); + *ret_conv = ClosingSigned_read(ser_ref); + return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_ChannelTransactionParameters_is_populated(uint32_t this_arg) { - LDKChannelTransactionParameters this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = ChannelTransactionParameters_is_populated(&this_arg_conv); - return ret_val; +int8_tArray __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_write(uint32_t obj) { + LDKClosingSignedFeeRange obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ClosingSignedFeeRange_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_ClosingSignedFeeRange_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ), "LDKCResult_ClosingSignedFeeRangeDecodeErrorZ"); + *ret_conv = ClosingSignedFeeRange_read(ser_ref); + return (uint64_t)ret_conv; +} + +int8_tArray __attribute__((visibility("default"))) TS_CommitmentSigned_write(uint32_t obj) { + LDKCommitmentSigned obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = CommitmentSigned_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_CommitmentSigned_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_CommitmentSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentSignedDecodeErrorZ), "LDKCResult_CommitmentSignedDecodeErrorZ"); + *ret_conv = CommitmentSigned_read(ser_ref); + return (uint64_t)ret_conv; +} + +int8_tArray __attribute__((visibility("default"))) TS_FundingCreated_write(uint32_t obj) { + LDKFundingCreated obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = FundingCreated_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_FundingCreated_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_FundingCreatedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingCreatedDecodeErrorZ), "LDKCResult_FundingCreatedDecodeErrorZ"); + *ret_conv = FundingCreated_read(ser_ref); + return (uint64_t)ret_conv; +} + +int8_tArray __attribute__((visibility("default"))) TS_FundingSigned_write(uint32_t obj) { + LDKFundingSigned obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = FundingSigned_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_as_holder_broadcastable(uint32_t this_arg) { - LDKChannelTransactionParameters this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKDirectedChannelTransactionParameters ret_var = ChannelTransactionParameters_as_holder_broadcastable(&this_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_FundingSigned_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_FundingSignedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingSignedDecodeErrorZ), "LDKCResult_FundingSignedDecodeErrorZ"); + *ret_conv = FundingSigned_read(ser_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_as_counterparty_broadcastable(uint32_t this_arg) { - LDKChannelTransactionParameters this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKDirectedChannelTransactionParameters ret_var = ChannelTransactionParameters_as_counterparty_broadcastable(&this_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_FundingLocked_write(uint32_t obj) { + LDKFundingLocked obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = FundingLocked_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -int8_tArray __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_write(uint32_t obj) { - LDKCounterpartyChannelTransactionParameters obj_conv; +uint32_t __attribute__((visibility("default"))) TS_FundingLocked_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_FundingLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FundingLockedDecodeErrorZ), "LDKCResult_FundingLockedDecodeErrorZ"); + *ret_conv = FundingLocked_read(ser_ref); + return (uint64_t)ret_conv; +} + +int8_tArray __attribute__((visibility("default"))) TS_Init_write(uint32_t obj) { + LDKInit obj_conv; obj_conv.inner = (void*)(obj & (~1)); obj_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = CounterpartyChannelTransactionParameters_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + LDKCVec_u8Z ret_var = Init_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_read(int8_tArray ser) { +uint32_t __attribute__((visibility("default"))) TS_Init_read(int8_tArray ser) { LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ), "LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ"); - *ret_conv = CounterpartyChannelTransactionParameters_read(ser_ref); + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_InitDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitDecodeErrorZ), "LDKCResult_InitDecodeErrorZ"); + *ret_conv = Init_read(ser_ref); return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_ChannelTransactionParameters_write(uint32_t obj) { - LDKChannelTransactionParameters obj_conv; +int8_tArray __attribute__((visibility("default"))) TS_OpenChannel_write(uint32_t obj) { + LDKOpenChannel obj_conv; obj_conv.inner = (void*)(obj & (~1)); obj_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ChannelTransactionParameters_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + LDKCVec_u8Z ret_var = OpenChannel_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_read(int8_tArray ser) { +uint32_t __attribute__((visibility("default"))) TS_OpenChannel_read(int8_tArray ser) { LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTransactionParametersDecodeErrorZ), "LDKCResult_ChannelTransactionParametersDecodeErrorZ"); - *ret_conv = ChannelTransactionParameters_read(ser_ref); + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_OpenChannelDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OpenChannelDecodeErrorZ), "LDKCResult_OpenChannelDecodeErrorZ"); + *ret_conv = OpenChannel_read(ser_ref); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_free(uint32_t this_obj) { - LDKDirectedChannelTransactionParameters this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - DirectedChannelTransactionParameters_free(this_obj_conv); +int8_tArray __attribute__((visibility("default"))) TS_RevokeAndACK_write(uint32_t obj) { + LDKRevokeAndACK obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = RevokeAndACK_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_broadcaster_pubkeys(uint32_t this_arg) { - LDKDirectedChannelTransactionParameters this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKChannelPublicKeys ret_var = DirectedChannelTransactionParameters_broadcaster_pubkeys(&this_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_RevokeAndACK_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_RevokeAndACKDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevokeAndACKDecodeErrorZ), "LDKCResult_RevokeAndACKDecodeErrorZ"); + *ret_conv = RevokeAndACK_read(ser_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_countersignatory_pubkeys(uint32_t this_arg) { - LDKDirectedChannelTransactionParameters this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKChannelPublicKeys ret_var = DirectedChannelTransactionParameters_countersignatory_pubkeys(&this_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_Shutdown_write(uint32_t obj) { + LDKShutdown obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = Shutdown_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -int16_t __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_contest_delay(uint32_t this_arg) { - LDKDirectedChannelTransactionParameters this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int16_t ret_val = DirectedChannelTransactionParameters_contest_delay(&this_arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_Shutdown_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ShutdownDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownDecodeErrorZ), "LDKCResult_ShutdownDecodeErrorZ"); + *ret_conv = Shutdown_read(ser_ref); + return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_is_outbound(uint32_t this_arg) { - LDKDirectedChannelTransactionParameters this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = DirectedChannelTransactionParameters_is_outbound(&this_arg_conv); - return ret_val; +int8_tArray __attribute__((visibility("default"))) TS_UpdateFailHTLC_write(uint32_t obj) { + LDKUpdateFailHTLC obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = UpdateFailHTLC_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_funding_outpoint(uint32_t this_arg) { - LDKDirectedChannelTransactionParameters this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKOutPoint ret_var = DirectedChannelTransactionParameters_funding_outpoint(&this_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_UpdateFailHTLC_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_UpdateFailHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailHTLCDecodeErrorZ), "LDKCResult_UpdateFailHTLCDecodeErrorZ"); + *ret_conv = UpdateFailHTLC_read(ser_ref); + return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_opt_anchors(uint32_t this_arg) { - LDKDirectedChannelTransactionParameters this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = DirectedChannelTransactionParameters_opt_anchors(&this_arg_conv); - return ret_val; +int8_tArray __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_write(uint32_t obj) { + LDKUpdateFailMalformedHTLC obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = UpdateFailMalformedHTLC_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -void __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_free(uint32_t this_obj) { - LDKHolderCommitmentTransaction this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - HolderCommitmentTransaction_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_UpdateFailMalformedHTLC_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ), "LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ"); + *ret_conv = UpdateFailMalformedHTLC_read(ser_ref); + return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_get_counterparty_sig(uint32_t this_ptr) { - LDKHolderCommitmentTransaction this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), HolderCommitmentTransaction_get_counterparty_sig(&this_ptr_conv).compact_form, 64); +int8_tArray __attribute__((visibility("default"))) TS_UpdateFee_write(uint32_t obj) { + LDKUpdateFee obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = UpdateFee_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); return ret_arr; } -void __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_set_counterparty_sig(uint32_t this_ptr, int8_tArray val) { - LDKHolderCommitmentTransaction this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKSignature val_ref; - CHECK(*((uint32_t*)val) == 64); - memcpy(val_ref.compact_form, (uint8_t*)(val + 4), 64); - HolderCommitmentTransaction_set_counterparty_sig(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_UpdateFee_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_UpdateFeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFeeDecodeErrorZ), "LDKCResult_UpdateFeeDecodeErrorZ"); + *ret_conv = UpdateFee_read(ser_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_set_counterparty_htlc_sigs(uint32_t this_ptr, ptrArray val) { - LDKHolderCommitmentTransaction this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_SignatureZ val_constr; - val_constr.datalen = *((uint32_t*)val); - if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); - else - val_constr.data = NULL; - int8_tArray* val_vals = (int8_tArray*)(val + 4); - for (size_t m = 0; m < val_constr.datalen; m++) { - int8_tArray val_conv_12 = val_vals[m]; - LDKSignature val_conv_12_ref; - CHECK(*((uint32_t*)val_conv_12) == 64); - memcpy(val_conv_12_ref.compact_form, (uint8_t*)(val_conv_12 + 4), 64); - val_constr.data[m] = val_conv_12_ref; - } - HolderCommitmentTransaction_set_counterparty_htlc_sigs(&this_ptr_conv, val_constr); +int8_tArray __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_write(uint32_t obj) { + LDKUpdateFulfillHTLC obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = UpdateFulfillHTLC_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -static inline uint64_t HolderCommitmentTransaction_clone_ptr(LDKHolderCommitmentTransaction *NONNULL_PTR arg) { - LDKHolderCommitmentTransaction ret_var = HolderCommitmentTransaction_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_UpdateFulfillHTLC_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_UpdateFulfillHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateFulfillHTLCDecodeErrorZ), "LDKCResult_UpdateFulfillHTLCDecodeErrorZ"); + *ret_conv = UpdateFulfillHTLC_read(ser_ref); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_clone_ptr(uint32_t arg) { - LDKHolderCommitmentTransaction arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = HolderCommitmentTransaction_clone_ptr(&arg_conv); - return ret_val; + +int8_tArray __attribute__((visibility("default"))) TS_UpdateAddHTLC_write(uint32_t obj) { + LDKUpdateAddHTLC obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = UpdateAddHTLC_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_clone(uint32_t orig) { - LDKHolderCommitmentTransaction orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKHolderCommitmentTransaction ret_var = HolderCommitmentTransaction_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_UpdateAddHTLC_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_UpdateAddHTLCDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UpdateAddHTLCDecodeErrorZ), "LDKCResult_UpdateAddHTLCDecodeErrorZ"); + *ret_conv = UpdateAddHTLC_read(ser_ref); + return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_write(uint32_t obj) { - LDKHolderCommitmentTransaction obj_conv; +int8_tArray __attribute__((visibility("default"))) TS_Ping_write(uint32_t obj) { + LDKPing obj_conv; obj_conv.inner = (void*)(obj & (~1)); obj_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = HolderCommitmentTransaction_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + LDKCVec_u8Z ret_var = Ping_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_read(int8_tArray ser) { +uint32_t __attribute__((visibility("default"))) TS_Ping_read(int8_tArray ser) { LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_HolderCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HolderCommitmentTransactionDecodeErrorZ), "LDKCResult_HolderCommitmentTransactionDecodeErrorZ"); - *ret_conv = HolderCommitmentTransaction_read(ser_ref); + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_PingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PingDecodeErrorZ), "LDKCResult_PingDecodeErrorZ"); + *ret_conv = Ping_read(ser_ref); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_new(uint32_t commitment_tx, int8_tArray counterparty_sig, ptrArray counterparty_htlc_sigs, int8_tArray holder_funding_key, int8_tArray counterparty_funding_key) { - LDKCommitmentTransaction commitment_tx_conv; - commitment_tx_conv.inner = (void*)(commitment_tx & (~1)); - commitment_tx_conv.is_owned = (commitment_tx & 1) || (commitment_tx == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_conv); - commitment_tx_conv = CommitmentTransaction_clone(&commitment_tx_conv); - LDKSignature counterparty_sig_ref; - CHECK(*((uint32_t*)counterparty_sig) == 64); - memcpy(counterparty_sig_ref.compact_form, (uint8_t*)(counterparty_sig + 4), 64); - LDKCVec_SignatureZ counterparty_htlc_sigs_constr; - counterparty_htlc_sigs_constr.datalen = *((uint32_t*)counterparty_htlc_sigs); - if (counterparty_htlc_sigs_constr.datalen > 0) - counterparty_htlc_sigs_constr.data = MALLOC(counterparty_htlc_sigs_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); - else - counterparty_htlc_sigs_constr.data = NULL; - int8_tArray* counterparty_htlc_sigs_vals = (int8_tArray*)(counterparty_htlc_sigs + 4); - for (size_t m = 0; m < counterparty_htlc_sigs_constr.datalen; m++) { - int8_tArray counterparty_htlc_sigs_conv_12 = counterparty_htlc_sigs_vals[m]; - LDKSignature counterparty_htlc_sigs_conv_12_ref; - CHECK(*((uint32_t*)counterparty_htlc_sigs_conv_12) == 64); - memcpy(counterparty_htlc_sigs_conv_12_ref.compact_form, (uint8_t*)(counterparty_htlc_sigs_conv_12 + 4), 64); - counterparty_htlc_sigs_constr.data[m] = counterparty_htlc_sigs_conv_12_ref; - } - LDKPublicKey holder_funding_key_ref; - CHECK(*((uint32_t*)holder_funding_key) == 33); - memcpy(holder_funding_key_ref.compressed_form, (uint8_t*)(holder_funding_key + 4), 33); - LDKPublicKey counterparty_funding_key_ref; - CHECK(*((uint32_t*)counterparty_funding_key) == 33); - memcpy(counterparty_funding_key_ref.compressed_form, (uint8_t*)(counterparty_funding_key + 4), 33); - LDKHolderCommitmentTransaction ret_var = HolderCommitmentTransaction_new(commitment_tx_conv, counterparty_sig_ref, counterparty_htlc_sigs_constr, holder_funding_key_ref, counterparty_funding_key_ref); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_Pong_write(uint32_t obj) { + LDKPong obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = Pong_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -void __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_free(uint32_t this_obj) { - LDKBuiltCommitmentTransaction this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - BuiltCommitmentTransaction_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_Pong_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_PongDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PongDecodeErrorZ), "LDKCResult_PongDecodeErrorZ"); + *ret_conv = Pong_read(ser_ref); + return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_get_transaction(uint32_t this_ptr) { - LDKBuiltCommitmentTransaction this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKTransaction ret_var = BuiltCommitmentTransaction_get_transaction(&this_ptr_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - Transaction_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_write(uint32_t obj) { + LDKUnsignedChannelAnnouncement obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = UnsignedChannelAnnouncement_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); return ret_arr; } -void __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_set_transaction(uint32_t this_ptr, int8_tArray val) { - LDKBuiltCommitmentTransaction this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKTransaction val_ref; - val_ref.datalen = *((uint32_t*)val); - val_ref.data = MALLOC(val_ref.datalen, "LDKTransaction Bytes"); - memcpy(val_ref.data, (uint8_t*)(val + 4), val_ref.datalen); - val_ref.data_is_owned = true; - BuiltCommitmentTransaction_set_transaction(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_UnsignedChannelAnnouncement_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ), "LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ"); + *ret_conv = UnsignedChannelAnnouncement_read(ser_ref); + return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_get_txid(uint32_t this_ptr) { - LDKBuiltCommitmentTransaction this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *BuiltCommitmentTransaction_get_txid(&this_ptr_conv), 32); +int8_tArray __attribute__((visibility("default"))) TS_ChannelAnnouncement_write(uint32_t obj) { + LDKChannelAnnouncement obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ChannelAnnouncement_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); return ret_arr; } -void __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_set_txid(uint32_t this_ptr, int8_tArray val) { - LDKBuiltCommitmentTransaction this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - BuiltCommitmentTransaction_set_txid(&this_ptr_conv, val_ref); +uint32_t __attribute__((visibility("default"))) TS_ChannelAnnouncement_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ChannelAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelAnnouncementDecodeErrorZ), "LDKCResult_ChannelAnnouncementDecodeErrorZ"); + *ret_conv = ChannelAnnouncement_read(ser_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_new(int8_tArray transaction_arg, int8_tArray txid_arg) { - LDKTransaction transaction_arg_ref; - transaction_arg_ref.datalen = *((uint32_t*)transaction_arg); - transaction_arg_ref.data = MALLOC(transaction_arg_ref.datalen, "LDKTransaction Bytes"); - memcpy(transaction_arg_ref.data, (uint8_t*)(transaction_arg + 4), transaction_arg_ref.datalen); - transaction_arg_ref.data_is_owned = true; - LDKThirtyTwoBytes txid_arg_ref; - CHECK(*((uint32_t*)txid_arg) == 32); - memcpy(txid_arg_ref.data, (uint8_t*)(txid_arg + 4), 32); - LDKBuiltCommitmentTransaction ret_var = BuiltCommitmentTransaction_new(transaction_arg_ref, txid_arg_ref); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_write(uint32_t obj) { + LDKUnsignedChannelUpdate obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = UnsignedChannelUpdate_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -static inline uint64_t BuiltCommitmentTransaction_clone_ptr(LDKBuiltCommitmentTransaction *NONNULL_PTR arg) { - LDKBuiltCommitmentTransaction ret_var = BuiltCommitmentTransaction_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_UnsignedChannelUpdate_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_UnsignedChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedChannelUpdateDecodeErrorZ), "LDKCResult_UnsignedChannelUpdateDecodeErrorZ"); + *ret_conv = UnsignedChannelUpdate_read(ser_ref); + return (uint64_t)ret_conv; } - return ret_ref; + +int8_tArray __attribute__((visibility("default"))) TS_ChannelUpdate_write(uint32_t obj) { + LDKChannelUpdate obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ChannelUpdate_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -int64_t __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_clone_ptr(uint32_t arg) { - LDKBuiltCommitmentTransaction arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = BuiltCommitmentTransaction_clone_ptr(&arg_conv); - return ret_val; + +uint32_t __attribute__((visibility("default"))) TS_ChannelUpdate_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ChannelUpdateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelUpdateDecodeErrorZ), "LDKCResult_ChannelUpdateDecodeErrorZ"); + *ret_conv = ChannelUpdate_read(ser_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_clone(uint32_t orig) { - LDKBuiltCommitmentTransaction orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKBuiltCommitmentTransaction ret_var = BuiltCommitmentTransaction_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_ErrorMessage_write(uint32_t obj) { + LDKErrorMessage obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ErrorMessage_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -int8_tArray __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_write(uint32_t obj) { - LDKBuiltCommitmentTransaction obj_conv; +uint32_t __attribute__((visibility("default"))) TS_ErrorMessage_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ErrorMessageDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ErrorMessageDecodeErrorZ), "LDKCResult_ErrorMessageDecodeErrorZ"); + *ret_conv = ErrorMessage_read(ser_ref); + return (uint64_t)ret_conv; +} + +int8_tArray __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_write(uint32_t obj) { + LDKUnsignedNodeAnnouncement obj_conv; obj_conv.inner = (void*)(obj & (~1)); obj_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = BuiltCommitmentTransaction_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + LDKCVec_u8Z ret_var = UnsignedNodeAnnouncement_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_read(int8_tArray ser) { +uint32_t __attribute__((visibility("default"))) TS_UnsignedNodeAnnouncement_read(int8_tArray ser) { LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ), "LDKCResult_BuiltCommitmentTransactionDecodeErrorZ"); - *ret_conv = BuiltCommitmentTransaction_read(ser_ref); + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ), "LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ"); + *ret_conv = UnsignedNodeAnnouncement_read(ser_ref); return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_get_sighash_all(uint32_t this_arg, int8_tArray funding_redeemscript, int64_t channel_value_satoshis) { - LDKBuiltCommitmentTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKu8slice funding_redeemscript_ref; - funding_redeemscript_ref.datalen = *((uint32_t*)funding_redeemscript); - funding_redeemscript_ref.data = (int8_t*)(funding_redeemscript + 4); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), BuiltCommitmentTransaction_get_sighash_all(&this_arg_conv, funding_redeemscript_ref, channel_value_satoshis).data, 32); - return ret_arr; -} - -int8_tArray __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_sign(uint32_t this_arg, int8_tArray funding_key, int8_tArray funding_redeemscript, int64_t channel_value_satoshis) { - LDKBuiltCommitmentTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char funding_key_arr[32]; - CHECK(*((uint32_t*)funding_key) == 32); - memcpy(funding_key_arr, (uint8_t*)(funding_key + 4), 32); - unsigned char (*funding_key_ref)[32] = &funding_key_arr; - LDKu8slice funding_redeemscript_ref; - funding_redeemscript_ref.datalen = *((uint32_t*)funding_redeemscript); - funding_redeemscript_ref.data = (int8_t*)(funding_redeemscript + 4); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), BuiltCommitmentTransaction_sign(&this_arg_conv, funding_key_ref, funding_redeemscript_ref, channel_value_satoshis).compact_form, 64); +int8_tArray __attribute__((visibility("default"))) TS_NodeAnnouncement_write(uint32_t obj) { + LDKNodeAnnouncement obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = NodeAnnouncement_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); return ret_arr; } -void __attribute__((visibility("default"))) TS_ClosingTransaction_free(uint32_t this_obj) { - LDKClosingTransaction this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ClosingTransaction_free(this_obj_conv); -} - -static inline uint64_t ClosingTransaction_clone_ptr(LDKClosingTransaction *NONNULL_PTR arg) { - LDKClosingTransaction ret_var = ClosingTransaction_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_ClosingTransaction_clone_ptr(uint32_t arg) { - LDKClosingTransaction arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ClosingTransaction_clone_ptr(&arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_ClosingTransaction_clone(uint32_t orig) { - LDKClosingTransaction orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKClosingTransaction ret_var = ClosingTransaction_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncement_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_NodeAnnouncementDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeAnnouncementDecodeErrorZ), "LDKCResult_NodeAnnouncementDecodeErrorZ"); + *ret_conv = NodeAnnouncement_read(ser_ref); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_ClosingTransaction_hash(uint32_t o) { - LDKClosingTransaction o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = ClosingTransaction_hash(&o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_QueryShortChannelIds_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_QueryShortChannelIdsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryShortChannelIdsDecodeErrorZ), "LDKCResult_QueryShortChannelIdsDecodeErrorZ"); + *ret_conv = QueryShortChannelIds_read(ser_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ClosingTransaction_new(int64_t to_holder_value_sat, int64_t to_counterparty_value_sat, int8_tArray to_holder_script, int8_tArray to_counterparty_script, uint32_t funding_outpoint) { - LDKCVec_u8Z to_holder_script_ref; - to_holder_script_ref.datalen = *((uint32_t*)to_holder_script); - to_holder_script_ref.data = MALLOC(to_holder_script_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(to_holder_script_ref.data, (uint8_t*)(to_holder_script + 4), to_holder_script_ref.datalen); - LDKCVec_u8Z to_counterparty_script_ref; - to_counterparty_script_ref.datalen = *((uint32_t*)to_counterparty_script); - to_counterparty_script_ref.data = MALLOC(to_counterparty_script_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(to_counterparty_script_ref.data, (uint8_t*)(to_counterparty_script + 4), to_counterparty_script_ref.datalen); - LDKOutPoint funding_outpoint_conv; - funding_outpoint_conv.inner = (void*)(funding_outpoint & (~1)); - funding_outpoint_conv.is_owned = (funding_outpoint & 1) || (funding_outpoint == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_outpoint_conv); - funding_outpoint_conv = OutPoint_clone(&funding_outpoint_conv); - LDKClosingTransaction ret_var = ClosingTransaction_new(to_holder_value_sat, to_counterparty_value_sat, to_holder_script_ref, to_counterparty_script_ref, funding_outpoint_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_QueryShortChannelIds_write(uint32_t obj) { + LDKQueryShortChannelIds obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = QueryShortChannelIds_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ClosingTransaction_trust(uint32_t this_arg) { - LDKClosingTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKTrustedClosingTransaction ret_var = ClosingTransaction_trust(&this_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_write(uint32_t obj) { + LDKReplyShortChannelIdsEnd obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ReplyShortChannelIdsEnd_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ClosingTransaction_verify(uint32_t this_arg, uint32_t funding_outpoint) { - LDKClosingTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKOutPoint funding_outpoint_conv; - funding_outpoint_conv.inner = (void*)(funding_outpoint & (~1)); - funding_outpoint_conv.is_owned = (funding_outpoint & 1) || (funding_outpoint == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_outpoint_conv); - funding_outpoint_conv = OutPoint_clone(&funding_outpoint_conv); - LDKCResult_TrustedClosingTransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TrustedClosingTransactionNoneZ), "LDKCResult_TrustedClosingTransactionNoneZ"); - *ret_conv = ClosingTransaction_verify(&this_arg_conv, funding_outpoint_conv); +uint32_t __attribute__((visibility("default"))) TS_ReplyShortChannelIdsEnd_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ), "LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ"); + *ret_conv = ReplyShortChannelIdsEnd_read(ser_ref); return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_ClosingTransaction_to_holder_value_sat(uint32_t this_arg) { - LDKClosingTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = ClosingTransaction_to_holder_value_sat(&this_arg_conv); - return ret_val; -} - -int64_t __attribute__((visibility("default"))) TS_ClosingTransaction_to_counterparty_value_sat(uint32_t this_arg) { - LDKClosingTransaction this_arg_conv; +int32_t __attribute__((visibility("default"))) TS_QueryChannelRange_end_blocknum(uint32_t this_arg) { + LDKQueryChannelRange this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = ClosingTransaction_to_counterparty_value_sat(&this_arg_conv); + int32_t ret_val = QueryChannelRange_end_blocknum(&this_arg_conv); return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_ClosingTransaction_to_holder_script(uint32_t this_arg) { - LDKClosingTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKu8slice ret_var = ClosingTransaction_to_holder_script(&this_arg_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); +int8_tArray __attribute__((visibility("default"))) TS_QueryChannelRange_write(uint32_t obj) { + LDKQueryChannelRange obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = QueryChannelRange_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); return ret_arr; } -int8_tArray __attribute__((visibility("default"))) TS_ClosingTransaction_to_counterparty_script(uint32_t this_arg) { - LDKClosingTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKu8slice ret_var = ClosingTransaction_to_counterparty_script(&this_arg_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_QueryChannelRange_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_QueryChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_QueryChannelRangeDecodeErrorZ), "LDKCResult_QueryChannelRangeDecodeErrorZ"); + *ret_conv = QueryChannelRange_read(ser_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_TrustedClosingTransaction_free(uint32_t this_obj) { - LDKTrustedClosingTransaction this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - TrustedClosingTransaction_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_ReplyChannelRange_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ReplyChannelRangeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReplyChannelRangeDecodeErrorZ), "LDKCResult_ReplyChannelRangeDecodeErrorZ"); + *ret_conv = ReplyChannelRange_read(ser_ref); + return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_TrustedClosingTransaction_built_transaction(uint32_t this_arg) { - LDKTrustedClosingTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKTransaction ret_var = TrustedClosingTransaction_built_transaction(&this_arg_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - Transaction_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_ReplyChannelRange_write(uint32_t obj) { + LDKReplyChannelRange obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ReplyChannelRange_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); return ret_arr; } -int8_tArray __attribute__((visibility("default"))) TS_TrustedClosingTransaction_get_sighash_all(uint32_t this_arg, int8_tArray funding_redeemscript, int64_t channel_value_satoshis) { - LDKTrustedClosingTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKu8slice funding_redeemscript_ref; - funding_redeemscript_ref.datalen = *((uint32_t*)funding_redeemscript); - funding_redeemscript_ref.data = (int8_t*)(funding_redeemscript + 4); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), TrustedClosingTransaction_get_sighash_all(&this_arg_conv, funding_redeemscript_ref, channel_value_satoshis).data, 32); +int8_tArray __attribute__((visibility("default"))) TS_GossipTimestampFilter_write(uint32_t obj) { + LDKGossipTimestampFilter obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = GossipTimestampFilter_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); return ret_arr; } -int8_tArray __attribute__((visibility("default"))) TS_TrustedClosingTransaction_sign(uint32_t this_arg, int8_tArray funding_key, int8_tArray funding_redeemscript, int64_t channel_value_satoshis) { - LDKTrustedClosingTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char funding_key_arr[32]; - CHECK(*((uint32_t*)funding_key) == 32); - memcpy(funding_key_arr, (uint8_t*)(funding_key + 4), 32); - unsigned char (*funding_key_ref)[32] = &funding_key_arr; - LDKu8slice funding_redeemscript_ref; - funding_redeemscript_ref.datalen = *((uint32_t*)funding_redeemscript); - funding_redeemscript_ref.data = (int8_t*)(funding_redeemscript + 4); - int8_tArray ret_arr = init_arr(64, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), TrustedClosingTransaction_sign(&this_arg_conv, funding_key_ref, funding_redeemscript_ref, channel_value_satoshis).compact_form, 64); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_GossipTimestampFilter_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_GossipTimestampFilterDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_GossipTimestampFilterDecodeErrorZ), "LDKCResult_GossipTimestampFilterDecodeErrorZ"); + *ret_conv = GossipTimestampFilter_read(ser_ref); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_CustomMessageHandler_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKCustomMessageHandler this_ptr_conv = *(LDKCustomMessageHandler*)(this_ptr_ptr); + FREE((void*)this_ptr); + CustomMessageHandler_free(this_ptr_conv); } -void __attribute__((visibility("default"))) TS_CommitmentTransaction_free(uint32_t this_obj) { - LDKCommitmentTransaction this_obj_conv; +void __attribute__((visibility("default"))) TS_IgnoringMessageHandler_free(uint32_t this_obj) { + LDKIgnoringMessageHandler this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - CommitmentTransaction_free(this_obj_conv); -} - -static inline uint64_t CommitmentTransaction_clone_ptr(LDKCommitmentTransaction *NONNULL_PTR arg) { - LDKCommitmentTransaction ret_var = CommitmentTransaction_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_CommitmentTransaction_clone_ptr(uint32_t arg) { - LDKCommitmentTransaction arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = CommitmentTransaction_clone_ptr(&arg_conv); - return ret_val; + IgnoringMessageHandler_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_CommitmentTransaction_clone(uint32_t orig) { - LDKCommitmentTransaction orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKCommitmentTransaction ret_var = CommitmentTransaction_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_IgnoringMessageHandler_new() { + LDKIgnoringMessageHandler ret_var = IgnoringMessageHandler_new(); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -30785,69 +28060,56 @@ uint32_t __attribute__((visibility("default"))) TS_CommitmentTransaction_clone( return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_CommitmentTransaction_write(uint32_t obj) { - LDKCommitmentTransaction obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = CommitmentTransaction_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_CommitmentTransaction_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_CommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentTransactionDecodeErrorZ), "LDKCResult_CommitmentTransactionDecodeErrorZ"); - *ret_conv = CommitmentTransaction_read(ser_ref); - return (uint64_t)ret_conv; -} - -int64_t __attribute__((visibility("default"))) TS_CommitmentTransaction_commitment_number(uint32_t this_arg) { - LDKCommitmentTransaction this_arg_conv; +uint32_t __attribute__((visibility("default"))) TS_IgnoringMessageHandler_as_MessageSendEventsProvider(uint32_t this_arg) { + LDKIgnoringMessageHandler this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = CommitmentTransaction_commitment_number(&this_arg_conv); - return ret_val; + LDKMessageSendEventsProvider* ret_ret = MALLOC(sizeof(LDKMessageSendEventsProvider), "LDKMessageSendEventsProvider"); + *ret_ret = IgnoringMessageHandler_as_MessageSendEventsProvider(&this_arg_conv); + return (uint64_t)ret_ret; } -int64_t __attribute__((visibility("default"))) TS_CommitmentTransaction_to_broadcaster_value_sat(uint32_t this_arg) { - LDKCommitmentTransaction this_arg_conv; +uint32_t __attribute__((visibility("default"))) TS_IgnoringMessageHandler_as_RoutingMessageHandler(uint32_t this_arg) { + LDKIgnoringMessageHandler this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = CommitmentTransaction_to_broadcaster_value_sat(&this_arg_conv); - return ret_val; + LDKRoutingMessageHandler* ret_ret = MALLOC(sizeof(LDKRoutingMessageHandler), "LDKRoutingMessageHandler"); + *ret_ret = IgnoringMessageHandler_as_RoutingMessageHandler(&this_arg_conv); + return (uint64_t)ret_ret; } -int64_t __attribute__((visibility("default"))) TS_CommitmentTransaction_to_countersignatory_value_sat(uint32_t this_arg) { - LDKCommitmentTransaction this_arg_conv; +uint32_t __attribute__((visibility("default"))) TS_IgnoringMessageHandler_as_CustomMessageReader(uint32_t this_arg) { + LDKIgnoringMessageHandler this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = CommitmentTransaction_to_countersignatory_value_sat(&this_arg_conv); - return ret_val; + LDKCustomMessageReader* ret_ret = MALLOC(sizeof(LDKCustomMessageReader), "LDKCustomMessageReader"); + *ret_ret = IgnoringMessageHandler_as_CustomMessageReader(&this_arg_conv); + return (uint64_t)ret_ret; } -int32_t __attribute__((visibility("default"))) TS_CommitmentTransaction_feerate_per_kw(uint32_t this_arg) { - LDKCommitmentTransaction this_arg_conv; +uint32_t __attribute__((visibility("default"))) TS_IgnoringMessageHandler_as_CustomMessageHandler(uint32_t this_arg) { + LDKIgnoringMessageHandler this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int32_t ret_val = CommitmentTransaction_feerate_per_kw(&this_arg_conv); - return ret_val; + LDKCustomMessageHandler* ret_ret = MALLOC(sizeof(LDKCustomMessageHandler), "LDKCustomMessageHandler"); + *ret_ret = IgnoringMessageHandler_as_CustomMessageHandler(&this_arg_conv); + return (uint64_t)ret_ret; } -uint32_t __attribute__((visibility("default"))) TS_CommitmentTransaction_trust(uint32_t this_arg) { - LDKCommitmentTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKTrustedCommitmentTransaction ret_var = CommitmentTransaction_trust(&this_arg_conv); +void __attribute__((visibility("default"))) TS_ErroringMessageHandler_free(uint32_t this_obj) { + LDKErroringMessageHandler this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + ErroringMessageHandler_free(this_obj_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_ErroringMessageHandler_new() { + LDKErroringMessageHandler ret_var = ErroringMessageHandler_new(); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -30859,69 +28121,84 @@ uint32_t __attribute__((visibility("default"))) TS_CommitmentTransaction_trust( return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CommitmentTransaction_verify(uint32_t this_arg, uint32_t channel_parameters, uint32_t broadcaster_keys, uint32_t countersignatory_keys) { - LDKCommitmentTransaction this_arg_conv; +uint32_t __attribute__((visibility("default"))) TS_ErroringMessageHandler_as_MessageSendEventsProvider(uint32_t this_arg) { + LDKErroringMessageHandler this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKDirectedChannelTransactionParameters channel_parameters_conv; - channel_parameters_conv.inner = (void*)(channel_parameters & (~1)); - channel_parameters_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_parameters_conv); - LDKChannelPublicKeys broadcaster_keys_conv; - broadcaster_keys_conv.inner = (void*)(broadcaster_keys & (~1)); - broadcaster_keys_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(broadcaster_keys_conv); - LDKChannelPublicKeys countersignatory_keys_conv; - countersignatory_keys_conv.inner = (void*)(countersignatory_keys & (~1)); - countersignatory_keys_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(countersignatory_keys_conv); - LDKCResult_TrustedCommitmentTransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TrustedCommitmentTransactionNoneZ), "LDKCResult_TrustedCommitmentTransactionNoneZ"); - *ret_conv = CommitmentTransaction_verify(&this_arg_conv, &channel_parameters_conv, &broadcaster_keys_conv, &countersignatory_keys_conv); - return (uint64_t)ret_conv; + LDKMessageSendEventsProvider* ret_ret = MALLOC(sizeof(LDKMessageSendEventsProvider), "LDKMessageSendEventsProvider"); + *ret_ret = ErroringMessageHandler_as_MessageSendEventsProvider(&this_arg_conv); + return (uint64_t)ret_ret; } -void __attribute__((visibility("default"))) TS_TrustedCommitmentTransaction_free(uint32_t this_obj) { - LDKTrustedCommitmentTransaction this_obj_conv; +uint32_t __attribute__((visibility("default"))) TS_ErroringMessageHandler_as_ChannelMessageHandler(uint32_t this_arg) { + LDKErroringMessageHandler this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKChannelMessageHandler* ret_ret = MALLOC(sizeof(LDKChannelMessageHandler), "LDKChannelMessageHandler"); + *ret_ret = ErroringMessageHandler_as_ChannelMessageHandler(&this_arg_conv); + return (uint64_t)ret_ret; +} + +void __attribute__((visibility("default"))) TS_MessageHandler_free(uint32_t this_obj) { + LDKMessageHandler this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - TrustedCommitmentTransaction_free(this_obj_conv); + MessageHandler_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_TrustedCommitmentTransaction_txid(uint32_t this_arg) { - LDKTrustedCommitmentTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), TrustedCommitmentTransaction_txid(&this_arg_conv).data, 32); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_MessageHandler_get_chan_handler(uint32_t this_ptr) { + LDKMessageHandler this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + // WARNING: This object doesn't live past this scope, needs clone! + uint64_t ret_ret = ((uint64_t)MessageHandler_get_chan_handler(&this_ptr_conv)) | 1; + return ret_ret; } -uint32_t __attribute__((visibility("default"))) TS_TrustedCommitmentTransaction_built_transaction(uint32_t this_arg) { - LDKTrustedCommitmentTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKBuiltCommitmentTransaction ret_var = TrustedCommitmentTransaction_built_transaction(&this_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_MessageHandler_set_chan_handler(uint32_t this_ptr, uint32_t val) { + LDKMessageHandler this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKChannelMessageHandler val_conv = *(LDKChannelMessageHandler*)(val_ptr); + MessageHandler_set_chan_handler(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_TrustedCommitmentTransaction_keys(uint32_t this_arg) { - LDKTrustedCommitmentTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKTxCreationKeys ret_var = TrustedCommitmentTransaction_keys(&this_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_MessageHandler_get_route_handler(uint32_t this_ptr) { + LDKMessageHandler this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + // WARNING: This object doesn't live past this scope, needs clone! + uint64_t ret_ret = ((uint64_t)MessageHandler_get_route_handler(&this_ptr_conv)) | 1; + return ret_ret; +} + +void __attribute__((visibility("default"))) TS_MessageHandler_set_route_handler(uint32_t this_ptr, uint32_t val) { + LDKMessageHandler this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKRoutingMessageHandler val_conv = *(LDKRoutingMessageHandler*)(val_ptr); + MessageHandler_set_route_handler(&this_ptr_conv, val_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_MessageHandler_new(uint32_t chan_handler_arg, uint32_t route_handler_arg) { + void* chan_handler_arg_ptr = (void*)(((uint64_t)chan_handler_arg) & ~1); + CHECK_ACCESS(chan_handler_arg_ptr); + LDKChannelMessageHandler chan_handler_arg_conv = *(LDKChannelMessageHandler*)(chan_handler_arg_ptr); + void* route_handler_arg_ptr = (void*)(((uint64_t)route_handler_arg) & ~1); + CHECK_ACCESS(route_handler_arg_ptr); + LDKRoutingMessageHandler route_handler_arg_conv = *(LDKRoutingMessageHandler*)(route_handler_arg_ptr); + LDKMessageHandler ret_var = MessageHandler_new(chan_handler_arg_conv, route_handler_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -30933,136 +28210,64 @@ uint32_t __attribute__((visibility("default"))) TS_TrustedCommitmentTransaction return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_TrustedCommitmentTransaction_opt_anchors(uint32_t this_arg) { - LDKTrustedCommitmentTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = TrustedCommitmentTransaction_opt_anchors(&this_arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_TrustedCommitmentTransaction_get_htlc_sigs(uint32_t this_arg, int8_tArray htlc_base_key, uint32_t channel_parameters) { - LDKTrustedCommitmentTransaction this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char htlc_base_key_arr[32]; - CHECK(*((uint32_t*)htlc_base_key) == 32); - memcpy(htlc_base_key_arr, (uint8_t*)(htlc_base_key + 4), 32); - unsigned char (*htlc_base_key_ref)[32] = &htlc_base_key_arr; - LDKDirectedChannelTransactionParameters channel_parameters_conv; - channel_parameters_conv.inner = (void*)(channel_parameters & (~1)); - channel_parameters_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_parameters_conv); - LDKCResult_CVec_SignatureZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_SignatureZNoneZ), "LDKCResult_CVec_SignatureZNoneZ"); - *ret_conv = TrustedCommitmentTransaction_get_htlc_sigs(&this_arg_conv, htlc_base_key_ref, &channel_parameters_conv); - return (uint64_t)ret_conv; -} - -int64_t __attribute__((visibility("default"))) TS_get_commitment_transaction_number_obscure_factor(int8_tArray broadcaster_payment_basepoint, int8_tArray countersignatory_payment_basepoint, jboolean outbound_from_broadcaster) { - LDKPublicKey broadcaster_payment_basepoint_ref; - CHECK(*((uint32_t*)broadcaster_payment_basepoint) == 33); - memcpy(broadcaster_payment_basepoint_ref.compressed_form, (uint8_t*)(broadcaster_payment_basepoint + 4), 33); - LDKPublicKey countersignatory_payment_basepoint_ref; - CHECK(*((uint32_t*)countersignatory_payment_basepoint) == 33); - memcpy(countersignatory_payment_basepoint_ref.compressed_form, (uint8_t*)(countersignatory_payment_basepoint + 4), 33); - int64_t ret_val = get_commitment_transaction_number_obscure_factor(broadcaster_payment_basepoint_ref, countersignatory_payment_basepoint_ref, outbound_from_broadcaster); - return ret_val; +static inline uint64_t SocketDescriptor_clone_ptr(LDKSocketDescriptor *NONNULL_PTR arg) { + LDKSocketDescriptor* ret_ret = MALLOC(sizeof(LDKSocketDescriptor), "LDKSocketDescriptor"); + *ret_ret = SocketDescriptor_clone(arg); + return (uint64_t)ret_ret; } - -jboolean __attribute__((visibility("default"))) TS_InitFeatures_eq(uint32_t a, uint32_t b) { - LDKInitFeatures a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKInitFeatures b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = InitFeatures_eq(&a_conv, &b_conv); +int64_t __attribute__((visibility("default"))) TS_SocketDescriptor_clone_ptr(uint32_t arg) { + void* arg_ptr = (void*)(((uint64_t)arg) & ~1); + if (!(arg & 1)) { CHECK_ACCESS(arg_ptr); } + LDKSocketDescriptor* arg_conv = (LDKSocketDescriptor*)arg_ptr; + int64_t ret_val = SocketDescriptor_clone_ptr(arg_conv); return ret_val; } -jboolean __attribute__((visibility("default"))) TS_NodeFeatures_eq(uint32_t a, uint32_t b) { - LDKNodeFeatures a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKNodeFeatures b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = NodeFeatures_eq(&a_conv, &b_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_SocketDescriptor_clone(uint32_t orig) { + void* orig_ptr = (void*)(((uint64_t)orig) & ~1); + if (!(orig & 1)) { CHECK_ACCESS(orig_ptr); } + LDKSocketDescriptor* orig_conv = (LDKSocketDescriptor*)orig_ptr; + LDKSocketDescriptor* ret_ret = MALLOC(sizeof(LDKSocketDescriptor), "LDKSocketDescriptor"); + *ret_ret = SocketDescriptor_clone(orig_conv); + return (uint64_t)ret_ret; } -jboolean __attribute__((visibility("default"))) TS_ChannelFeatures_eq(uint32_t a, uint32_t b) { - LDKChannelFeatures a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKChannelFeatures b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = ChannelFeatures_eq(&a_conv, &b_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_SocketDescriptor_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKSocketDescriptor this_ptr_conv = *(LDKSocketDescriptor*)(this_ptr_ptr); + FREE((void*)this_ptr); + SocketDescriptor_free(this_ptr_conv); } -jboolean __attribute__((visibility("default"))) TS_InvoiceFeatures_eq(uint32_t a, uint32_t b) { - LDKInvoiceFeatures a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKInvoiceFeatures b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = InvoiceFeatures_eq(&a_conv, &b_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_PeerHandleError_free(uint32_t this_obj) { + LDKPeerHandleError this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + PeerHandleError_free(this_obj_conv); } -jboolean __attribute__((visibility("default"))) TS_ChannelTypeFeatures_eq(uint32_t a, uint32_t b) { - LDKChannelTypeFeatures a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKChannelTypeFeatures b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = ChannelTypeFeatures_eq(&a_conv, &b_conv); +jboolean __attribute__((visibility("default"))) TS_PeerHandleError_get_no_connection_possible(uint32_t this_ptr) { + LDKPeerHandleError this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + jboolean ret_val = PeerHandleError_get_no_connection_possible(&this_ptr_conv); return ret_val; } -static inline uint64_t InitFeatures_clone_ptr(LDKInitFeatures *NONNULL_PTR arg) { - LDKInitFeatures ret_var = InitFeatures_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_InitFeatures_clone_ptr(uint32_t arg) { - LDKInitFeatures arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = InitFeatures_clone_ptr(&arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_PeerHandleError_set_no_connection_possible(uint32_t this_ptr, jboolean val) { + LDKPeerHandleError this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + PeerHandleError_set_no_connection_possible(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_InitFeatures_clone(uint32_t orig) { - LDKInitFeatures orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKInitFeatures ret_var = InitFeatures_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_PeerHandleError_new(jboolean no_connection_possible_arg) { + LDKPeerHandleError ret_var = PeerHandleError_new(no_connection_possible_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -31074,8 +28279,8 @@ uint32_t __attribute__((visibility("default"))) TS_InitFeatures_clone(uint32_t return ret_ref; } -static inline uint64_t NodeFeatures_clone_ptr(LDKNodeFeatures *NONNULL_PTR arg) { - LDKNodeFeatures ret_var = NodeFeatures_clone(arg); +static inline uint64_t PeerHandleError_clone_ptr(LDKPeerHandleError *NONNULL_PTR arg) { + LDKPeerHandleError ret_var = PeerHandleError_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -31086,21 +28291,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_NodeFeatures_clone_ptr(uint32_t arg) { - LDKNodeFeatures arg_conv; +int64_t __attribute__((visibility("default"))) TS_PeerHandleError_clone_ptr(uint32_t arg) { + LDKPeerHandleError arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = NodeFeatures_clone_ptr(&arg_conv); + int64_t ret_val = PeerHandleError_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_NodeFeatures_clone(uint32_t orig) { - LDKNodeFeatures orig_conv; +uint32_t __attribute__((visibility("default"))) TS_PeerHandleError_clone(uint32_t orig) { + LDKPeerHandleError orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKNodeFeatures ret_var = NodeFeatures_clone(&orig_conv); + LDKPeerHandleError ret_var = PeerHandleError_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -31112,33 +28317,34 @@ uint32_t __attribute__((visibility("default"))) TS_NodeFeatures_clone(uint32_t return ret_ref; } -static inline uint64_t ChannelFeatures_clone_ptr(LDKChannelFeatures *NONNULL_PTR arg) { - LDKChannelFeatures ret_var = ChannelFeatures_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_ChannelFeatures_clone_ptr(uint32_t arg) { - LDKChannelFeatures arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelFeatures_clone_ptr(&arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_PeerManager_free(uint32_t this_obj) { + LDKPeerManager this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + PeerManager_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChannelFeatures_clone(uint32_t orig) { - LDKChannelFeatures orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelFeatures ret_var = ChannelFeatures_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_PeerManager_new(uint32_t message_handler, int8_tArray our_node_secret, int8_tArray ephemeral_random_data, uint32_t logger, uint32_t custom_message_handler) { + LDKMessageHandler message_handler_conv; + message_handler_conv.inner = (void*)(message_handler & (~1)); + message_handler_conv.is_owned = (message_handler & 1) || (message_handler == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(message_handler_conv); + // Warning: we need a move here but no clone is available for LDKMessageHandler + LDKSecretKey our_node_secret_ref; + CHECK(our_node_secret->arr_len == 32); + memcpy(our_node_secret_ref.bytes, our_node_secret->elems, 32); + unsigned char ephemeral_random_data_arr[32]; + CHECK(ephemeral_random_data->arr_len == 32); + memcpy(ephemeral_random_data_arr, ephemeral_random_data->elems, 32); + unsigned char (*ephemeral_random_data_ref)[32] = &ephemeral_random_data_arr; + void* logger_ptr = (void*)(((uint64_t)logger) & ~1); + CHECK_ACCESS(logger_ptr); + LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); + void* custom_message_handler_ptr = (void*)(((uint64_t)custom_message_handler) & ~1); + CHECK_ACCESS(custom_message_handler_ptr); + LDKCustomMessageHandler custom_message_handler_conv = *(LDKCustomMessageHandler*)(custom_message_handler_ptr); + LDKPeerManager ret_var = PeerManager_new(message_handler_conv, our_node_secret_ref, ephemeral_random_data_ref, logger_conv, custom_message_handler_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -31150,242 +28356,351 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelFeatures_clone(uint32 return ret_ref; } -static inline uint64_t InvoiceFeatures_clone_ptr(LDKInvoiceFeatures *NONNULL_PTR arg) { - LDKInvoiceFeatures ret_var = InvoiceFeatures_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; +ptrArray __attribute__((visibility("default"))) TS_PeerManager_get_peer_node_ids(uint32_t this_arg) { + LDKPeerManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKCVec_PublicKeyZ ret_var = PeerManager_get_peer_node_ids(&this_arg_conv); + ptrArray ret_arr = NULL; + ret_arr = init_ptrArray(ret_var.datalen); + int8_tArray *ret_arr_ptr = (int8_tArray*)(ret_arr + 4); + for (size_t m = 0; m < ret_var.datalen; m++) { + int8_tArray ret_conv_12_arr = init_int8_tArray(33); + memcpy(ret_conv_12_arr->elems, ret_var.data[m].compressed_form, 33); + ret_arr_ptr[m] = ret_conv_12_arr; + } + + FREE(ret_var.data); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_PeerManager_new_outbound_connection(uint32_t this_arg, int8_tArray their_node_id, uint32_t descriptor) { + LDKPeerManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKPublicKey their_node_id_ref; + CHECK(their_node_id->arr_len == 33); + memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); + void* descriptor_ptr = (void*)(((uint64_t)descriptor) & ~1); + CHECK_ACCESS(descriptor_ptr); + LDKSocketDescriptor descriptor_conv = *(LDKSocketDescriptor*)(descriptor_ptr); + LDKCResult_CVec_u8ZPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_u8ZPeerHandleErrorZ), "LDKCResult_CVec_u8ZPeerHandleErrorZ"); + *ret_conv = PeerManager_new_outbound_connection(&this_arg_conv, their_node_id_ref, descriptor_conv); + return (uint64_t)ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_PeerManager_new_inbound_connection(uint32_t this_arg, uint32_t descriptor) { + LDKPeerManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + void* descriptor_ptr = (void*)(((uint64_t)descriptor) & ~1); + CHECK_ACCESS(descriptor_ptr); + LDKSocketDescriptor descriptor_conv = *(LDKSocketDescriptor*)(descriptor_ptr); + LDKCResult_NonePeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePeerHandleErrorZ), "LDKCResult_NonePeerHandleErrorZ"); + *ret_conv = PeerManager_new_inbound_connection(&this_arg_conv, descriptor_conv); + return (uint64_t)ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_PeerManager_write_buffer_space_avail(uint32_t this_arg, uint32_t descriptor) { + LDKPeerManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + void* descriptor_ptr = (void*)(((uint64_t)descriptor) & ~1); + if (!(descriptor & 1)) { CHECK_ACCESS(descriptor_ptr); } + LDKSocketDescriptor* descriptor_conv = (LDKSocketDescriptor*)descriptor_ptr; + LDKCResult_NonePeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePeerHandleErrorZ), "LDKCResult_NonePeerHandleErrorZ"); + *ret_conv = PeerManager_write_buffer_space_avail(&this_arg_conv, descriptor_conv); + return (uint64_t)ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_PeerManager_read_event(uint32_t this_arg, uint32_t peer_descriptor, int8_tArray data) { + LDKPeerManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + void* peer_descriptor_ptr = (void*)(((uint64_t)peer_descriptor) & ~1); + if (!(peer_descriptor & 1)) { CHECK_ACCESS(peer_descriptor_ptr); } + LDKSocketDescriptor* peer_descriptor_conv = (LDKSocketDescriptor*)peer_descriptor_ptr; + LDKu8slice data_ref; + data_ref.datalen = data->arr_len; + data_ref.data = data->elems; + LDKCResult_boolPeerHandleErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_boolPeerHandleErrorZ), "LDKCResult_boolPeerHandleErrorZ"); + *ret_conv = PeerManager_read_event(&this_arg_conv, peer_descriptor_conv, data_ref); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_PeerManager_process_events(uint32_t this_arg) { + LDKPeerManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + PeerManager_process_events(&this_arg_conv); +} + +void __attribute__((visibility("default"))) TS_PeerManager_socket_disconnected(uint32_t this_arg, uint32_t descriptor) { + LDKPeerManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + void* descriptor_ptr = (void*)(((uint64_t)descriptor) & ~1); + if (!(descriptor & 1)) { CHECK_ACCESS(descriptor_ptr); } + LDKSocketDescriptor* descriptor_conv = (LDKSocketDescriptor*)descriptor_ptr; + PeerManager_socket_disconnected(&this_arg_conv, descriptor_conv); } -int64_t __attribute__((visibility("default"))) TS_InvoiceFeatures_clone_ptr(uint32_t arg) { - LDKInvoiceFeatures arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = InvoiceFeatures_clone_ptr(&arg_conv); - return ret_val; + +void __attribute__((visibility("default"))) TS_PeerManager_disconnect_by_node_id(uint32_t this_arg, int8_tArray node_id, jboolean no_connection_possible) { + LDKPeerManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + PeerManager_disconnect_by_node_id(&this_arg_conv, node_id_ref, no_connection_possible); } -uint32_t __attribute__((visibility("default"))) TS_InvoiceFeatures_clone(uint32_t orig) { - LDKInvoiceFeatures orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKInvoiceFeatures ret_var = InvoiceFeatures_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_PeerManager_disconnect_all_peers(uint32_t this_arg) { + LDKPeerManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + PeerManager_disconnect_all_peers(&this_arg_conv); } -static inline uint64_t ChannelTypeFeatures_clone_ptr(LDKChannelTypeFeatures *NONNULL_PTR arg) { - LDKChannelTypeFeatures ret_var = ChannelTypeFeatures_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; +void __attribute__((visibility("default"))) TS_PeerManager_timer_tick_occurred(uint32_t this_arg) { + LDKPeerManager this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + PeerManager_timer_tick_occurred(&this_arg_conv); } - return ret_ref; + +int64_t __attribute__((visibility("default"))) TS_htlc_success_tx_weight(jboolean opt_anchors) { + int64_t ret_val = htlc_success_tx_weight(opt_anchors); + return ret_val; } -int64_t __attribute__((visibility("default"))) TS_ChannelTypeFeatures_clone_ptr(uint32_t arg) { - LDKChannelTypeFeatures arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelTypeFeatures_clone_ptr(&arg_conv); + +int64_t __attribute__((visibility("default"))) TS_htlc_timeout_tx_weight(jboolean opt_anchors) { + int64_t ret_val = htlc_timeout_tx_weight(opt_anchors); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelTypeFeatures_clone(uint32_t orig) { - LDKChannelTypeFeatures orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelTypeFeatures ret_var = ChannelTypeFeatures_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_build_commitment_secret(int8_tArray commitment_seed, int64_t idx) { + unsigned char commitment_seed_arr[32]; + CHECK(commitment_seed->arr_len == 32); + memcpy(commitment_seed_arr, commitment_seed->elems, 32); + unsigned char (*commitment_seed_ref)[32] = &commitment_seed_arr; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, build_commitment_secret(commitment_seed_ref, idx).data, 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_InitFeatures_free(uint32_t this_obj) { - LDKInitFeatures this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - InitFeatures_free(this_obj_conv); +int8_tArray __attribute__((visibility("default"))) TS_build_closing_transaction(int64_t to_holder_value_sat, int64_t to_counterparty_value_sat, int8_tArray to_holder_script, int8_tArray to_counterparty_script, uint32_t funding_outpoint) { + LDKCVec_u8Z to_holder_script_ref; + to_holder_script_ref.datalen = to_holder_script->arr_len; + to_holder_script_ref.data = MALLOC(to_holder_script_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(to_holder_script_ref.data, to_holder_script->elems, to_holder_script_ref.datalen); + LDKCVec_u8Z to_counterparty_script_ref; + to_counterparty_script_ref.datalen = to_counterparty_script->arr_len; + to_counterparty_script_ref.data = MALLOC(to_counterparty_script_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(to_counterparty_script_ref.data, to_counterparty_script->elems, to_counterparty_script_ref.datalen); + LDKOutPoint funding_outpoint_conv; + funding_outpoint_conv.inner = (void*)(funding_outpoint & (~1)); + funding_outpoint_conv.is_owned = (funding_outpoint & 1) || (funding_outpoint == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_outpoint_conv); + funding_outpoint_conv = OutPoint_clone(&funding_outpoint_conv); + LDKTransaction ret_var = build_closing_transaction(to_holder_value_sat, to_counterparty_value_sat, to_holder_script_ref, to_counterparty_script_ref, funding_outpoint_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + Transaction_free(ret_var); + return ret_arr; } -void __attribute__((visibility("default"))) TS_NodeFeatures_free(uint32_t this_obj) { - LDKNodeFeatures this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - NodeFeatures_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_derive_private_key(int8_tArray per_commitment_point, int8_tArray base_secret) { + LDKPublicKey per_commitment_point_ref; + CHECK(per_commitment_point->arr_len == 33); + memcpy(per_commitment_point_ref.compressed_form, per_commitment_point->elems, 33); + unsigned char base_secret_arr[32]; + CHECK(base_secret->arr_len == 32); + memcpy(base_secret_arr, base_secret->elems, 32); + unsigned char (*base_secret_ref)[32] = &base_secret_arr; + LDKCResult_SecretKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SecretKeyErrorZ), "LDKCResult_SecretKeyErrorZ"); + *ret_conv = derive_private_key(per_commitment_point_ref, base_secret_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_ChannelFeatures_free(uint32_t this_obj) { - LDKChannelFeatures this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelFeatures_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_derive_public_key(int8_tArray per_commitment_point, int8_tArray base_point) { + LDKPublicKey per_commitment_point_ref; + CHECK(per_commitment_point->arr_len == 33); + memcpy(per_commitment_point_ref.compressed_form, per_commitment_point->elems, 33); + LDKPublicKey base_point_ref; + CHECK(base_point->arr_len == 33); + memcpy(base_point_ref.compressed_form, base_point->elems, 33); + LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); + *ret_conv = derive_public_key(per_commitment_point_ref, base_point_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_InvoiceFeatures_free(uint32_t this_obj) { - LDKInvoiceFeatures this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - InvoiceFeatures_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_derive_private_revocation_key(int8_tArray per_commitment_secret, int8_tArray countersignatory_revocation_base_secret) { + unsigned char per_commitment_secret_arr[32]; + CHECK(per_commitment_secret->arr_len == 32); + memcpy(per_commitment_secret_arr, per_commitment_secret->elems, 32); + unsigned char (*per_commitment_secret_ref)[32] = &per_commitment_secret_arr; + unsigned char countersignatory_revocation_base_secret_arr[32]; + CHECK(countersignatory_revocation_base_secret->arr_len == 32); + memcpy(countersignatory_revocation_base_secret_arr, countersignatory_revocation_base_secret->elems, 32); + unsigned char (*countersignatory_revocation_base_secret_ref)[32] = &countersignatory_revocation_base_secret_arr; + LDKCResult_SecretKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SecretKeyErrorZ), "LDKCResult_SecretKeyErrorZ"); + *ret_conv = derive_private_revocation_key(per_commitment_secret_ref, countersignatory_revocation_base_secret_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_ChannelTypeFeatures_free(uint32_t this_obj) { - LDKChannelTypeFeatures this_obj_conv; +uint32_t __attribute__((visibility("default"))) TS_derive_public_revocation_key(int8_tArray per_commitment_point, int8_tArray countersignatory_revocation_base_point) { + LDKPublicKey per_commitment_point_ref; + CHECK(per_commitment_point->arr_len == 33); + memcpy(per_commitment_point_ref.compressed_form, per_commitment_point->elems, 33); + LDKPublicKey countersignatory_revocation_base_point_ref; + CHECK(countersignatory_revocation_base_point->arr_len == 33); + memcpy(countersignatory_revocation_base_point_ref.compressed_form, countersignatory_revocation_base_point->elems, 33); + LDKCResult_PublicKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeyErrorZ), "LDKCResult_PublicKeyErrorZ"); + *ret_conv = derive_public_revocation_key(per_commitment_point_ref, countersignatory_revocation_base_point_ref); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_TxCreationKeys_free(uint32_t this_obj) { + LDKTxCreationKeys this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelTypeFeatures_free(this_obj_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_InitFeatures_empty() { - LDKInitFeatures ret_var = InitFeatures_empty(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + TxCreationKeys_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_InitFeatures_known() { - LDKInitFeatures ret_var = InitFeatures_known(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_TxCreationKeys_get_per_commitment_point(uint32_t this_ptr) { + LDKTxCreationKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, TxCreationKeys_get_per_commitment_point(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -jboolean __attribute__((visibility("default"))) TS_InitFeatures_requires_unknown_bits(uint32_t this_arg) { - LDKInitFeatures this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = InitFeatures_requires_unknown_bits(&this_arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_TxCreationKeys_set_per_commitment_point(uint32_t this_ptr, int8_tArray val) { + LDKTxCreationKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + TxCreationKeys_set_per_commitment_point(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_NodeFeatures_empty() { - LDKNodeFeatures ret_var = NodeFeatures_empty(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_TxCreationKeys_get_revocation_key(uint32_t this_ptr) { + LDKTxCreationKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, TxCreationKeys_get_revocation_key(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_NodeFeatures_known() { - LDKNodeFeatures ret_var = NodeFeatures_known(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_TxCreationKeys_set_revocation_key(uint32_t this_ptr, int8_tArray val) { + LDKTxCreationKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + TxCreationKeys_set_revocation_key(&this_ptr_conv, val_ref); } -jboolean __attribute__((visibility("default"))) TS_NodeFeatures_requires_unknown_bits(uint32_t this_arg) { - LDKNodeFeatures this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = NodeFeatures_requires_unknown_bits(&this_arg_conv); - return ret_val; +int8_tArray __attribute__((visibility("default"))) TS_TxCreationKeys_get_broadcaster_htlc_key(uint32_t this_ptr) { + LDKTxCreationKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, TxCreationKeys_get_broadcaster_htlc_key(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelFeatures_empty() { - LDKChannelFeatures ret_var = ChannelFeatures_empty(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_TxCreationKeys_set_broadcaster_htlc_key(uint32_t this_ptr, int8_tArray val) { + LDKTxCreationKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + TxCreationKeys_set_broadcaster_htlc_key(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_ChannelFeatures_known() { - LDKChannelFeatures ret_var = ChannelFeatures_known(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_TxCreationKeys_get_countersignatory_htlc_key(uint32_t this_ptr) { + LDKTxCreationKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, TxCreationKeys_get_countersignatory_htlc_key(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -jboolean __attribute__((visibility("default"))) TS_ChannelFeatures_requires_unknown_bits(uint32_t this_arg) { - LDKChannelFeatures this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = ChannelFeatures_requires_unknown_bits(&this_arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_TxCreationKeys_set_countersignatory_htlc_key(uint32_t this_ptr, int8_tArray val) { + LDKTxCreationKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + TxCreationKeys_set_countersignatory_htlc_key(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_InvoiceFeatures_empty() { - LDKInvoiceFeatures ret_var = InvoiceFeatures_empty(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_TxCreationKeys_get_broadcaster_delayed_payment_key(uint32_t this_ptr) { + LDKTxCreationKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, TxCreationKeys_get_broadcaster_delayed_payment_key(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_InvoiceFeatures_known() { - LDKInvoiceFeatures ret_var = InvoiceFeatures_known(); +void __attribute__((visibility("default"))) TS_TxCreationKeys_set_broadcaster_delayed_payment_key(uint32_t this_ptr, int8_tArray val) { + LDKTxCreationKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + TxCreationKeys_set_broadcaster_delayed_payment_key(&this_ptr_conv, val_ref); +} + +uint32_t __attribute__((visibility("default"))) TS_TxCreationKeys_new(int8_tArray per_commitment_point_arg, int8_tArray revocation_key_arg, int8_tArray broadcaster_htlc_key_arg, int8_tArray countersignatory_htlc_key_arg, int8_tArray broadcaster_delayed_payment_key_arg) { + LDKPublicKey per_commitment_point_arg_ref; + CHECK(per_commitment_point_arg->arr_len == 33); + memcpy(per_commitment_point_arg_ref.compressed_form, per_commitment_point_arg->elems, 33); + LDKPublicKey revocation_key_arg_ref; + CHECK(revocation_key_arg->arr_len == 33); + memcpy(revocation_key_arg_ref.compressed_form, revocation_key_arg->elems, 33); + LDKPublicKey broadcaster_htlc_key_arg_ref; + CHECK(broadcaster_htlc_key_arg->arr_len == 33); + memcpy(broadcaster_htlc_key_arg_ref.compressed_form, broadcaster_htlc_key_arg->elems, 33); + LDKPublicKey countersignatory_htlc_key_arg_ref; + CHECK(countersignatory_htlc_key_arg->arr_len == 33); + memcpy(countersignatory_htlc_key_arg_ref.compressed_form, countersignatory_htlc_key_arg->elems, 33); + LDKPublicKey broadcaster_delayed_payment_key_arg_ref; + CHECK(broadcaster_delayed_payment_key_arg->arr_len == 33); + memcpy(broadcaster_delayed_payment_key_arg_ref.compressed_form, broadcaster_delayed_payment_key_arg->elems, 33); + LDKTxCreationKeys ret_var = TxCreationKeys_new(per_commitment_point_arg_ref, revocation_key_arg_ref, broadcaster_htlc_key_arg_ref, countersignatory_htlc_key_arg_ref, broadcaster_delayed_payment_key_arg_ref); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -31397,30 +28712,33 @@ uint32_t __attribute__((visibility("default"))) TS_InvoiceFeatures_known() { return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_InvoiceFeatures_requires_unknown_bits(uint32_t this_arg) { - LDKInvoiceFeatures this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = InvoiceFeatures_requires_unknown_bits(&this_arg_conv); - return ret_val; +static inline uint64_t TxCreationKeys_clone_ptr(LDKTxCreationKeys *NONNULL_PTR arg) { + LDKTxCreationKeys ret_var = TxCreationKeys_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -uint32_t __attribute__((visibility("default"))) TS_ChannelTypeFeatures_empty() { - LDKChannelTypeFeatures ret_var = ChannelTypeFeatures_empty(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } return ret_ref; } +int64_t __attribute__((visibility("default"))) TS_TxCreationKeys_clone_ptr(uint32_t arg) { + LDKTxCreationKeys arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = TxCreationKeys_clone_ptr(&arg_conv); + return ret_val; +} -uint32_t __attribute__((visibility("default"))) TS_ChannelTypeFeatures_known() { - LDKChannelTypeFeatures ret_var = ChannelTypeFeatures_known(); +uint32_t __attribute__((visibility("default"))) TS_TxCreationKeys_clone(uint32_t orig) { + LDKTxCreationKeys orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKTxCreationKeys ret_var = TxCreationKeys_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -31432,203 +28750,157 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelTypeFeatures_known() return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_ChannelTypeFeatures_requires_unknown_bits(uint32_t this_arg) { - LDKChannelTypeFeatures this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = ChannelTypeFeatures_requires_unknown_bits(&this_arg_conv); - return ret_val; -} - -int8_tArray __attribute__((visibility("default"))) TS_InitFeatures_write(uint32_t obj) { - LDKInitFeatures obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = InitFeatures_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_InitFeatures_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_InitFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitFeaturesDecodeErrorZ), "LDKCResult_InitFeaturesDecodeErrorZ"); - *ret_conv = InitFeatures_read(ser_ref); - return (uint64_t)ret_conv; -} - -int8_tArray __attribute__((visibility("default"))) TS_ChannelFeatures_write(uint32_t obj) { - LDKChannelFeatures obj_conv; +int8_tArray __attribute__((visibility("default"))) TS_TxCreationKeys_write(uint32_t obj) { + LDKTxCreationKeys obj_conv; obj_conv.inner = (void*)(obj & (~1)); obj_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ChannelFeatures_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + LDKCVec_u8Z ret_var = TxCreationKeys_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelFeatures_read(int8_tArray ser) { +uint32_t __attribute__((visibility("default"))) TS_TxCreationKeys_read(int8_tArray ser) { LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ChannelFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelFeaturesDecodeErrorZ), "LDKCResult_ChannelFeaturesDecodeErrorZ"); - *ret_conv = ChannelFeatures_read(ser_ref); + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_TxCreationKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysDecodeErrorZ), "LDKCResult_TxCreationKeysDecodeErrorZ"); + *ret_conv = TxCreationKeys_read(ser_ref); return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_NodeFeatures_write(uint32_t obj) { - LDKNodeFeatures obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = NodeFeatures_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_NodeFeatures_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_NodeFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeFeaturesDecodeErrorZ), "LDKCResult_NodeFeaturesDecodeErrorZ"); - *ret_conv = NodeFeatures_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_ChannelPublicKeys_free(uint32_t this_obj) { + LDKChannelPublicKeys this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + ChannelPublicKeys_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_InvoiceFeatures_write(uint32_t obj) { - LDKInvoiceFeatures obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = InvoiceFeatures_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_ChannelPublicKeys_get_funding_pubkey(uint32_t this_ptr) { + LDKChannelPublicKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, ChannelPublicKeys_get_funding_pubkey(&this_ptr_conv).compressed_form, 33); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_InvoiceFeatures_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_InvoiceFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceFeaturesDecodeErrorZ), "LDKCResult_InvoiceFeaturesDecodeErrorZ"); - *ret_conv = InvoiceFeatures_read(ser_ref); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_ChannelPublicKeys_set_funding_pubkey(uint32_t this_ptr, int8_tArray val) { + LDKChannelPublicKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + ChannelPublicKeys_set_funding_pubkey(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_ChannelTypeFeatures_write(uint32_t obj) { - LDKChannelTypeFeatures obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ChannelTypeFeatures_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); +int8_tArray __attribute__((visibility("default"))) TS_ChannelPublicKeys_get_revocation_basepoint(uint32_t this_ptr) { + LDKChannelPublicKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, ChannelPublicKeys_get_revocation_basepoint(&this_ptr_conv).compressed_form, 33); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelTypeFeatures_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ChannelTypeFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTypeFeaturesDecodeErrorZ), "LDKCResult_ChannelTypeFeaturesDecodeErrorZ"); - *ret_conv = ChannelTypeFeatures_read(ser_ref); - return (uint64_t)ret_conv; -} - -void __attribute__((visibility("default"))) TS_ShutdownScript_free(uint32_t this_obj) { - LDKShutdownScript this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ShutdownScript_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_ChannelPublicKeys_set_revocation_basepoint(uint32_t this_ptr, int8_tArray val) { + LDKChannelPublicKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + ChannelPublicKeys_set_revocation_basepoint(&this_ptr_conv, val_ref); } -static inline uint64_t ShutdownScript_clone_ptr(LDKShutdownScript *NONNULL_PTR arg) { - LDKShutdownScript ret_var = ShutdownScript_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_ChannelPublicKeys_get_payment_point(uint32_t this_ptr) { + LDKChannelPublicKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, ChannelPublicKeys_get_payment_point(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -int64_t __attribute__((visibility("default"))) TS_ShutdownScript_clone_ptr(uint32_t arg) { - LDKShutdownScript arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ShutdownScript_clone_ptr(&arg_conv); - return ret_val; + +void __attribute__((visibility("default"))) TS_ChannelPublicKeys_set_payment_point(uint32_t this_ptr, int8_tArray val) { + LDKChannelPublicKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + ChannelPublicKeys_set_payment_point(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_ShutdownScript_clone(uint32_t orig) { - LDKShutdownScript orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKShutdownScript ret_var = ShutdownScript_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_ChannelPublicKeys_get_delayed_payment_basepoint(uint32_t this_ptr) { + LDKChannelPublicKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, ChannelPublicKeys_get_delayed_payment_basepoint(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -void __attribute__((visibility("default"))) TS_InvalidShutdownScript_free(uint32_t this_obj) { - LDKInvalidShutdownScript this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - InvalidShutdownScript_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_ChannelPublicKeys_set_delayed_payment_basepoint(uint32_t this_ptr, int8_tArray val) { + LDKChannelPublicKeys this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + ChannelPublicKeys_set_delayed_payment_basepoint(&this_ptr_conv, val_ref); } -int8_tArray __attribute__((visibility("default"))) TS_InvalidShutdownScript_get_script(uint32_t this_ptr) { - LDKInvalidShutdownScript this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_ChannelPublicKeys_get_htlc_basepoint(uint32_t this_ptr) { + LDKChannelPublicKeys this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKu8slice ret_var = InvalidShutdownScript_get_script(&this_ptr_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, ChannelPublicKeys_get_htlc_basepoint(&this_ptr_conv).compressed_form, 33); return ret_arr; } -void __attribute__((visibility("default"))) TS_InvalidShutdownScript_set_script(uint32_t this_ptr, int8_tArray val) { - LDKInvalidShutdownScript this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelPublicKeys_set_htlc_basepoint(uint32_t this_ptr, int8_tArray val) { + LDKChannelPublicKeys this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_u8Z val_ref; - val_ref.datalen = *((uint32_t*)val); - val_ref.data = MALLOC(val_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(val_ref.data, (uint8_t*)(val + 4), val_ref.datalen); - InvalidShutdownScript_set_script(&this_ptr_conv, val_ref); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + ChannelPublicKeys_set_htlc_basepoint(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_InvalidShutdownScript_new(int8_tArray script_arg) { - LDKCVec_u8Z script_arg_ref; - script_arg_ref.datalen = *((uint32_t*)script_arg); - script_arg_ref.data = MALLOC(script_arg_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(script_arg_ref.data, (uint8_t*)(script_arg + 4), script_arg_ref.datalen); - LDKInvalidShutdownScript ret_var = InvalidShutdownScript_new(script_arg_ref); +uint32_t __attribute__((visibility("default"))) TS_ChannelPublicKeys_new(int8_tArray funding_pubkey_arg, int8_tArray revocation_basepoint_arg, int8_tArray payment_point_arg, int8_tArray delayed_payment_basepoint_arg, int8_tArray htlc_basepoint_arg) { + LDKPublicKey funding_pubkey_arg_ref; + CHECK(funding_pubkey_arg->arr_len == 33); + memcpy(funding_pubkey_arg_ref.compressed_form, funding_pubkey_arg->elems, 33); + LDKPublicKey revocation_basepoint_arg_ref; + CHECK(revocation_basepoint_arg->arr_len == 33); + memcpy(revocation_basepoint_arg_ref.compressed_form, revocation_basepoint_arg->elems, 33); + LDKPublicKey payment_point_arg_ref; + CHECK(payment_point_arg->arr_len == 33); + memcpy(payment_point_arg_ref.compressed_form, payment_point_arg->elems, 33); + LDKPublicKey delayed_payment_basepoint_arg_ref; + CHECK(delayed_payment_basepoint_arg->arr_len == 33); + memcpy(delayed_payment_basepoint_arg_ref.compressed_form, delayed_payment_basepoint_arg->elems, 33); + LDKPublicKey htlc_basepoint_arg_ref; + CHECK(htlc_basepoint_arg->arr_len == 33); + memcpy(htlc_basepoint_arg_ref.compressed_form, htlc_basepoint_arg->elems, 33); + LDKChannelPublicKeys ret_var = ChannelPublicKeys_new(funding_pubkey_arg_ref, revocation_basepoint_arg_ref, payment_point_arg_ref, delayed_payment_basepoint_arg_ref, htlc_basepoint_arg_ref); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -31640,8 +28912,8 @@ uint32_t __attribute__((visibility("default"))) TS_InvalidShutdownScript_new(in return ret_ref; } -static inline uint64_t InvalidShutdownScript_clone_ptr(LDKInvalidShutdownScript *NONNULL_PTR arg) { - LDKInvalidShutdownScript ret_var = InvalidShutdownScript_clone(arg); +static inline uint64_t ChannelPublicKeys_clone_ptr(LDKChannelPublicKeys *NONNULL_PTR arg) { + LDKChannelPublicKeys ret_var = ChannelPublicKeys_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -31652,21 +28924,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_InvalidShutdownScript_clone_ptr(uint32_t arg) { - LDKInvalidShutdownScript arg_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelPublicKeys_clone_ptr(uint32_t arg) { + LDKChannelPublicKeys arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = InvalidShutdownScript_clone_ptr(&arg_conv); + int64_t ret_val = ChannelPublicKeys_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_InvalidShutdownScript_clone(uint32_t orig) { - LDKInvalidShutdownScript orig_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelPublicKeys_clone(uint32_t orig) { + LDKChannelPublicKeys orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKInvalidShutdownScript ret_var = InvalidShutdownScript_clone(&orig_conv); + LDKChannelPublicKeys ret_var = ChannelPublicKeys_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -31678,197 +28950,191 @@ uint32_t __attribute__((visibility("default"))) TS_InvalidShutdownScript_clone( return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_ShutdownScript_write(uint32_t obj) { - LDKShutdownScript obj_conv; +int8_tArray __attribute__((visibility("default"))) TS_ChannelPublicKeys_write(uint32_t obj) { + LDKChannelPublicKeys obj_conv; obj_conv.inner = (void*)(obj & (~1)); obj_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ShutdownScript_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + LDKCVec_u8Z ret_var = ChannelPublicKeys_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ShutdownScript_read(int8_tArray ser) { +uint32_t __attribute__((visibility("default"))) TS_ChannelPublicKeys_read(int8_tArray ser) { LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ShutdownScriptDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptDecodeErrorZ), "LDKCResult_ShutdownScriptDecodeErrorZ"); - *ret_conv = ShutdownScript_read(ser_ref); + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ChannelPublicKeysDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelPublicKeysDecodeErrorZ), "LDKCResult_ChannelPublicKeysDecodeErrorZ"); + *ret_conv = ChannelPublicKeys_read(ser_ref); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ShutdownScript_new_p2wpkh(int8_tArray pubkey_hash) { - unsigned char pubkey_hash_arr[20]; - CHECK(*((uint32_t*)pubkey_hash) == 20); - memcpy(pubkey_hash_arr, (uint8_t*)(pubkey_hash + 4), 20); - unsigned char (*pubkey_hash_ref)[20] = &pubkey_hash_arr; - LDKShutdownScript ret_var = ShutdownScript_new_p2wpkh(pubkey_hash_ref); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_ShutdownScript_new_p2wsh(int8_tArray script_hash) { - unsigned char script_hash_arr[32]; - CHECK(*((uint32_t*)script_hash) == 32); - memcpy(script_hash_arr, (uint8_t*)(script_hash + 4), 32); - unsigned char (*script_hash_ref)[32] = &script_hash_arr; - LDKShutdownScript ret_var = ShutdownScript_new_p2wsh(script_hash_ref); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_TxCreationKeys_derive_new(int8_tArray per_commitment_point, int8_tArray broadcaster_delayed_payment_base, int8_tArray broadcaster_htlc_base, int8_tArray countersignatory_revocation_base, int8_tArray countersignatory_htlc_base) { + LDKPublicKey per_commitment_point_ref; + CHECK(per_commitment_point->arr_len == 33); + memcpy(per_commitment_point_ref.compressed_form, per_commitment_point->elems, 33); + LDKPublicKey broadcaster_delayed_payment_base_ref; + CHECK(broadcaster_delayed_payment_base->arr_len == 33); + memcpy(broadcaster_delayed_payment_base_ref.compressed_form, broadcaster_delayed_payment_base->elems, 33); + LDKPublicKey broadcaster_htlc_base_ref; + CHECK(broadcaster_htlc_base->arr_len == 33); + memcpy(broadcaster_htlc_base_ref.compressed_form, broadcaster_htlc_base->elems, 33); + LDKPublicKey countersignatory_revocation_base_ref; + CHECK(countersignatory_revocation_base->arr_len == 33); + memcpy(countersignatory_revocation_base_ref.compressed_form, countersignatory_revocation_base->elems, 33); + LDKPublicKey countersignatory_htlc_base_ref; + CHECK(countersignatory_htlc_base->arr_len == 33); + memcpy(countersignatory_htlc_base_ref.compressed_form, countersignatory_htlc_base->elems, 33); + LDKCResult_TxCreationKeysErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysErrorZ), "LDKCResult_TxCreationKeysErrorZ"); + *ret_conv = TxCreationKeys_derive_new(per_commitment_point_ref, broadcaster_delayed_payment_base_ref, broadcaster_htlc_base_ref, countersignatory_revocation_base_ref, countersignatory_htlc_base_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ShutdownScript_new_witness_program(int8_t version, int8_tArray program) { - LDKu8slice program_ref; - program_ref.datalen = *((uint32_t*)program); - program_ref.data = (int8_t*)(program + 4); - LDKCResult_ShutdownScriptInvalidShutdownScriptZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptInvalidShutdownScriptZ), "LDKCResult_ShutdownScriptInvalidShutdownScriptZ"); - *ret_conv = ShutdownScript_new_witness_program(version, program_ref); +uint32_t __attribute__((visibility("default"))) TS_TxCreationKeys_from_channel_static_keys(int8_tArray per_commitment_point, uint32_t broadcaster_keys, uint32_t countersignatory_keys) { + LDKPublicKey per_commitment_point_ref; + CHECK(per_commitment_point->arr_len == 33); + memcpy(per_commitment_point_ref.compressed_form, per_commitment_point->elems, 33); + LDKChannelPublicKeys broadcaster_keys_conv; + broadcaster_keys_conv.inner = (void*)(broadcaster_keys & (~1)); + broadcaster_keys_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(broadcaster_keys_conv); + LDKChannelPublicKeys countersignatory_keys_conv; + countersignatory_keys_conv.inner = (void*)(countersignatory_keys & (~1)); + countersignatory_keys_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(countersignatory_keys_conv); + LDKCResult_TxCreationKeysErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_TxCreationKeysErrorZ), "LDKCResult_TxCreationKeysErrorZ"); + *ret_conv = TxCreationKeys_from_channel_static_keys(per_commitment_point_ref, &broadcaster_keys_conv, &countersignatory_keys_conv); return (uint64_t)ret_conv; } -int8_tArray __attribute__((visibility("default"))) TS_ShutdownScript_into_inner(uint32_t this_arg) { - LDKShutdownScript this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = (this_arg & 1) || (this_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - this_arg_conv = ShutdownScript_clone(&this_arg_conv); - LDKCVec_u8Z ret_var = ShutdownScript_into_inner(this_arg_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); +int8_tArray __attribute__((visibility("default"))) TS_get_revokeable_redeemscript(int8_tArray revocation_key, int16_t contest_delay, int8_tArray broadcaster_delayed_payment_key) { + LDKPublicKey revocation_key_ref; + CHECK(revocation_key->arr_len == 33); + memcpy(revocation_key_ref.compressed_form, revocation_key->elems, 33); + LDKPublicKey broadcaster_delayed_payment_key_ref; + CHECK(broadcaster_delayed_payment_key->arr_len == 33); + memcpy(broadcaster_delayed_payment_key_ref.compressed_form, broadcaster_delayed_payment_key->elems, 33); + LDKCVec_u8Z ret_var = get_revokeable_redeemscript(revocation_key_ref, contest_delay, broadcaster_delayed_payment_key_ref); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -int8_tArray __attribute__((visibility("default"))) TS_ShutdownScript_as_legacy_pubkey(uint32_t this_arg) { - LDKShutdownScript this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ShutdownScript_as_legacy_pubkey(&this_arg_conv).compressed_form, 33); - return ret_arr; +void __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_free(uint32_t this_obj) { + LDKHTLCOutputInCommitment this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + HTLCOutputInCommitment_free(this_obj_conv); } -jboolean __attribute__((visibility("default"))) TS_ShutdownScript_is_compatible(uint32_t this_arg, uint32_t features) { - LDKShutdownScript this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKInitFeatures features_conv; - features_conv.inner = (void*)(features & (~1)); - features_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(features_conv); - jboolean ret_val = ShutdownScript_is_compatible(&this_arg_conv, &features_conv); +jboolean __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_get_offered(uint32_t this_ptr) { + LDKHTLCOutputInCommitment this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + jboolean ret_val = HTLCOutputInCommitment_get_offered(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_CustomMessageReader_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKCustomMessageReader this_ptr_conv = *(LDKCustomMessageReader*)(this_ptr_ptr); - FREE((void*)this_ptr); - CustomMessageReader_free(this_ptr_conv); +void __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_set_offered(uint32_t this_ptr, jboolean val) { + LDKHTLCOutputInCommitment this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + HTLCOutputInCommitment_set_offered(&this_ptr_conv, val); } -static inline uint64_t Type_clone_ptr(LDKType *NONNULL_PTR arg) { - LDKType* ret_ret = MALLOC(sizeof(LDKType), "LDKType"); - *ret_ret = Type_clone(arg); - return (uint64_t)ret_ret; +int64_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_get_amount_msat(uint32_t this_ptr) { + LDKHTLCOutputInCommitment this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = HTLCOutputInCommitment_get_amount_msat(&this_ptr_conv); + return ret_val; } -int64_t __attribute__((visibility("default"))) TS_Type_clone_ptr(uint32_t arg) { - void* arg_ptr = (void*)(((uint64_t)arg) & ~1); - if (!(arg & 1)) { CHECK_ACCESS(arg_ptr); } - LDKType* arg_conv = (LDKType*)arg_ptr; - int64_t ret_val = Type_clone_ptr(arg_conv); + +void __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_set_amount_msat(uint32_t this_ptr, int64_t val) { + LDKHTLCOutputInCommitment this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + HTLCOutputInCommitment_set_amount_msat(&this_ptr_conv, val); +} + +int32_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_get_cltv_expiry(uint32_t this_ptr) { + LDKHTLCOutputInCommitment this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = HTLCOutputInCommitment_get_cltv_expiry(&this_ptr_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Type_clone(uint32_t orig) { - void* orig_ptr = (void*)(((uint64_t)orig) & ~1); - if (!(orig & 1)) { CHECK_ACCESS(orig_ptr); } - LDKType* orig_conv = (LDKType*)orig_ptr; - LDKType* ret_ret = MALLOC(sizeof(LDKType), "LDKType"); - *ret_ret = Type_clone(orig_conv); - return (uint64_t)ret_ret; +void __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_set_cltv_expiry(uint32_t this_ptr, int32_t val) { + LDKHTLCOutputInCommitment this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + HTLCOutputInCommitment_set_cltv_expiry(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_Type_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKType this_ptr_conv = *(LDKType*)(this_ptr_ptr); - FREE((void*)this_ptr); - Type_free(this_ptr_conv); +int8_tArray __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_get_payment_hash(uint32_t this_ptr) { + LDKHTLCOutputInCommitment this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *HTLCOutputInCommitment_get_payment_hash(&this_ptr_conv), 32); + return ret_arr; } -void __attribute__((visibility("default"))) TS_NodeId_free(uint32_t this_obj) { - LDKNodeId this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - NodeId_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_set_payment_hash(uint32_t this_ptr, int8_tArray val) { + LDKHTLCOutputInCommitment this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + HTLCOutputInCommitment_set_payment_hash(&this_ptr_conv, val_ref); } -static inline uint64_t NodeId_clone_ptr(LDKNodeId *NONNULL_PTR arg) { - LDKNodeId ret_var = NodeId_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} +uint32_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_get_transaction_output_index(uint32_t this_ptr) { + LDKHTLCOutputInCommitment this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCOption_u32Z *ret_copy = MALLOC(sizeof(LDKCOption_u32Z), "LDKCOption_u32Z"); + *ret_copy = HTLCOutputInCommitment_get_transaction_output_index(&this_ptr_conv); + uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_NodeId_clone_ptr(uint32_t arg) { - LDKNodeId arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = NodeId_clone_ptr(&arg_conv); - return ret_val; -} -uint32_t __attribute__((visibility("default"))) TS_NodeId_clone(uint32_t orig) { - LDKNodeId orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKNodeId ret_var = NodeId_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_set_transaction_output_index(uint32_t this_ptr, uint32_t val) { + LDKHTLCOutputInCommitment this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKCOption_u32Z val_conv = *(LDKCOption_u32Z*)(val_ptr); + val_conv = COption_u32Z_clone((LDKCOption_u32Z*)(((uint64_t)val) & ~1)); + HTLCOutputInCommitment_set_transaction_output_index(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_NodeId_from_pubkey(int8_tArray pubkey) { - LDKPublicKey pubkey_ref; - CHECK(*((uint32_t*)pubkey) == 33); - memcpy(pubkey_ref.compressed_form, (uint8_t*)(pubkey + 4), 33); - LDKNodeId ret_var = NodeId_from_pubkey(pubkey_ref); +uint32_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_new(jboolean offered_arg, int64_t amount_msat_arg, int32_t cltv_expiry_arg, int8_tArray payment_hash_arg, uint32_t transaction_output_index_arg) { + LDKThirtyTwoBytes payment_hash_arg_ref; + CHECK(payment_hash_arg->arr_len == 32); + memcpy(payment_hash_arg_ref.data, payment_hash_arg->elems, 32); + void* transaction_output_index_arg_ptr = (void*)(((uint64_t)transaction_output_index_arg) & ~1); + CHECK_ACCESS(transaction_output_index_arg_ptr); + LDKCOption_u32Z transaction_output_index_arg_conv = *(LDKCOption_u32Z*)(transaction_output_index_arg_ptr); + transaction_output_index_arg_conv = COption_u32Z_clone((LDKCOption_u32Z*)(((uint64_t)transaction_output_index_arg) & ~1)); + LDKHTLCOutputInCommitment ret_var = HTLCOutputInCommitment_new(offered_arg, amount_msat_arg, cltv_expiry_arg, payment_hash_arg_ref, transaction_output_index_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -31880,57 +29146,8 @@ uint32_t __attribute__((visibility("default"))) TS_NodeId_from_pubkey(int8_tArr return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_NodeId_as_slice(uint32_t this_arg) { - LDKNodeId this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKu8slice ret_var = NodeId_as_slice(&this_arg_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - return ret_arr; -} - -int64_t __attribute__((visibility("default"))) TS_NodeId_hash(uint32_t o) { - LDKNodeId o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = NodeId_hash(&o_conv); - return ret_val; -} - -int8_tArray __attribute__((visibility("default"))) TS_NodeId_write(uint32_t obj) { - LDKNodeId obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = NodeId_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_NodeId_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_NodeIdDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeIdDecodeErrorZ), "LDKCResult_NodeIdDecodeErrorZ"); - *ret_conv = NodeId_read(ser_ref); - return (uint64_t)ret_conv; -} - -void __attribute__((visibility("default"))) TS_NetworkGraph_free(uint32_t this_obj) { - LDKNetworkGraph this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - NetworkGraph_free(this_obj_conv); -} - -static inline uint64_t NetworkGraph_clone_ptr(LDKNetworkGraph *NONNULL_PTR arg) { - LDKNetworkGraph ret_var = NetworkGraph_clone(arg); +static inline uint64_t HTLCOutputInCommitment_clone_ptr(LDKHTLCOutputInCommitment *NONNULL_PTR arg) { + LDKHTLCOutputInCommitment ret_var = HTLCOutputInCommitment_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -31941,21 +29158,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_NetworkGraph_clone_ptr(uint32_t arg) { - LDKNetworkGraph arg_conv; +int64_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_clone_ptr(uint32_t arg) { + LDKHTLCOutputInCommitment arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = NetworkGraph_clone_ptr(&arg_conv); + int64_t ret_val = HTLCOutputInCommitment_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_clone(uint32_t orig) { - LDKNetworkGraph orig_conv; +uint32_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_clone(uint32_t orig) { + LDKHTLCOutputInCommitment orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKNetworkGraph ret_var = NetworkGraph_clone(&orig_conv); + LDKHTLCOutputInCommitment ret_var = HTLCOutputInCommitment_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -31967,124 +29184,104 @@ uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_clone(uint32_t return ret_ref; } -void __attribute__((visibility("default"))) TS_ReadOnlyNetworkGraph_free(uint32_t this_obj) { - LDKReadOnlyNetworkGraph this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ReadOnlyNetworkGraph_free(this_obj_conv); -} - -void __attribute__((visibility("default"))) TS_NetworkUpdate_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKNetworkUpdate this_ptr_conv = *(LDKNetworkUpdate*)(this_ptr_ptr); - FREE((void*)this_ptr); - NetworkUpdate_free(this_ptr_conv); -} - -static inline uint64_t NetworkUpdate_clone_ptr(LDKNetworkUpdate *NONNULL_PTR arg) { - LDKNetworkUpdate *ret_copy = MALLOC(sizeof(LDKNetworkUpdate), "LDKNetworkUpdate"); - *ret_copy = NetworkUpdate_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_NetworkUpdate_clone_ptr(uint32_t arg) { - LDKNetworkUpdate* arg_conv = (LDKNetworkUpdate*)arg; - int64_t ret_val = NetworkUpdate_clone_ptr(arg_conv); - return ret_val; +int8_tArray __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_write(uint32_t obj) { + LDKHTLCOutputInCommitment obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = HTLCOutputInCommitment_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_NetworkUpdate_clone(uint32_t orig) { - LDKNetworkUpdate* orig_conv = (LDKNetworkUpdate*)orig; - LDKNetworkUpdate *ret_copy = MALLOC(sizeof(LDKNetworkUpdate), "LDKNetworkUpdate"); - *ret_copy = NetworkUpdate_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_HTLCOutputInCommitment_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ), "LDKCResult_HTLCOutputInCommitmentDecodeErrorZ"); + *ret_conv = HTLCOutputInCommitment_read(ser_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_NetworkUpdate_channel_update_message(uint32_t msg) { - LDKChannelUpdate msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = (msg & 1) || (msg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - msg_conv = ChannelUpdate_clone(&msg_conv); - LDKNetworkUpdate *ret_copy = MALLOC(sizeof(LDKNetworkUpdate), "LDKNetworkUpdate"); - *ret_copy = NetworkUpdate_channel_update_message(msg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_get_htlc_redeemscript(uint32_t htlc, jboolean opt_anchors, uint32_t keys) { + LDKHTLCOutputInCommitment htlc_conv; + htlc_conv.inner = (void*)(htlc & (~1)); + htlc_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_conv); + LDKTxCreationKeys keys_conv; + keys_conv.inner = (void*)(keys & (~1)); + keys_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(keys_conv); + LDKCVec_u8Z ret_var = get_htlc_redeemscript(&htlc_conv, opt_anchors, &keys_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_NetworkUpdate_channel_closed(int64_t short_channel_id, jboolean is_permanent) { - LDKNetworkUpdate *ret_copy = MALLOC(sizeof(LDKNetworkUpdate), "LDKNetworkUpdate"); - *ret_copy = NetworkUpdate_channel_closed(short_channel_id, is_permanent); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_make_funding_redeemscript(int8_tArray broadcaster, int8_tArray countersignatory) { + LDKPublicKey broadcaster_ref; + CHECK(broadcaster->arr_len == 33); + memcpy(broadcaster_ref.compressed_form, broadcaster->elems, 33); + LDKPublicKey countersignatory_ref; + CHECK(countersignatory->arr_len == 33); + memcpy(countersignatory_ref.compressed_form, countersignatory->elems, 33); + LDKCVec_u8Z ret_var = make_funding_redeemscript(broadcaster_ref, countersignatory_ref); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_NetworkUpdate_node_failure(int8_tArray node_id, jboolean is_permanent) { - LDKPublicKey node_id_ref; - CHECK(*((uint32_t*)node_id) == 33); - memcpy(node_id_ref.compressed_form, (uint8_t*)(node_id + 4), 33); - LDKNetworkUpdate *ret_copy = MALLOC(sizeof(LDKNetworkUpdate), "LDKNetworkUpdate"); - *ret_copy = NetworkUpdate_node_failure(node_id_ref, is_permanent); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_build_htlc_transaction(int8_tArray commitment_txid, int32_t feerate_per_kw, int16_t contest_delay, uint32_t htlc, jboolean opt_anchors, int8_tArray broadcaster_delayed_payment_key, int8_tArray revocation_key) { + unsigned char commitment_txid_arr[32]; + CHECK(commitment_txid->arr_len == 32); + memcpy(commitment_txid_arr, commitment_txid->elems, 32); + unsigned char (*commitment_txid_ref)[32] = &commitment_txid_arr; + LDKHTLCOutputInCommitment htlc_conv; + htlc_conv.inner = (void*)(htlc & (~1)); + htlc_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_conv); + LDKPublicKey broadcaster_delayed_payment_key_ref; + CHECK(broadcaster_delayed_payment_key->arr_len == 33); + memcpy(broadcaster_delayed_payment_key_ref.compressed_form, broadcaster_delayed_payment_key->elems, 33); + LDKPublicKey revocation_key_ref; + CHECK(revocation_key->arr_len == 33); + memcpy(revocation_key_ref.compressed_form, revocation_key->elems, 33); + LDKTransaction ret_var = build_htlc_transaction(commitment_txid_ref, feerate_per_kw, contest_delay, &htlc_conv, opt_anchors, broadcaster_delayed_payment_key_ref, revocation_key_ref); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + Transaction_free(ret_var); + return ret_arr; } -int8_tArray __attribute__((visibility("default"))) TS_NetworkUpdate_write(uint32_t obj) { - LDKNetworkUpdate* obj_conv = (LDKNetworkUpdate*)obj; - LDKCVec_u8Z ret_var = NetworkUpdate_write(obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); +int8_tArray __attribute__((visibility("default"))) TS_get_anchor_redeemscript(int8_tArray funding_pubkey) { + LDKPublicKey funding_pubkey_ref; + CHECK(funding_pubkey->arr_len == 33); + memcpy(funding_pubkey_ref.compressed_form, funding_pubkey->elems, 33); + LDKCVec_u8Z ret_var = get_anchor_redeemscript(funding_pubkey_ref); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_NetworkUpdate_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_COption_NetworkUpdateZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_NetworkUpdateZDecodeErrorZ), "LDKCResult_COption_NetworkUpdateZDecodeErrorZ"); - *ret_conv = NetworkUpdate_read(ser_ref); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_NetGraphMsgHandler_as_EventHandler(uint32_t this_arg) { - LDKNetGraphMsgHandler this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKEventHandler* ret_ret = MALLOC(sizeof(LDKEventHandler), "LDKEventHandler"); - *ret_ret = NetGraphMsgHandler_as_EventHandler(&this_arg_conv); - return (uint64_t)ret_ret; -} - -void __attribute__((visibility("default"))) TS_NetGraphMsgHandler_free(uint32_t this_obj) { - LDKNetGraphMsgHandler this_obj_conv; +void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_free(uint32_t this_obj) { + LDKChannelTransactionParameters this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - NetGraphMsgHandler_free(this_obj_conv); + ChannelTransactionParameters_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_NetGraphMsgHandler_new(uint32_t network_graph, uint32_t chain_access, uint32_t logger) { - LDKNetworkGraph network_graph_conv; - network_graph_conv.inner = (void*)(network_graph & (~1)); - network_graph_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(network_graph_conv); - void* chain_access_ptr = (void*)(((uint64_t)chain_access) & ~1); - CHECK_ACCESS(chain_access_ptr); - LDKCOption_AccessZ chain_access_conv = *(LDKCOption_AccessZ*)(chain_access_ptr); - // Warning: we may need a move here but no clone is available for LDKCOption_AccessZ - if (chain_access_conv.tag == LDKCOption_AccessZ_Some) { - // Manually implement clone for Java trait instances - } - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - LDKNetGraphMsgHandler ret_var = NetGraphMsgHandler_new(&network_graph_conv, chain_access_conv, logger_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_get_holder_pubkeys(uint32_t this_ptr) { + LDKChannelTransactionParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelPublicKeys ret_var = ChannelTransactionParameters_get_holder_pubkeys(&this_ptr_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -32096,146 +29293,216 @@ uint32_t __attribute__((visibility("default"))) TS_NetGraphMsgHandler_new(uint3 return ret_ref; } -void __attribute__((visibility("default"))) TS_NetGraphMsgHandler_add_chain_access(uint32_t this_arg, uint32_t chain_access) { - LDKNetGraphMsgHandler this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - void* chain_access_ptr = (void*)(((uint64_t)chain_access) & ~1); - CHECK_ACCESS(chain_access_ptr); - LDKCOption_AccessZ chain_access_conv = *(LDKCOption_AccessZ*)(chain_access_ptr); - // Warning: we may need a move here but no clone is available for LDKCOption_AccessZ - if (chain_access_conv.tag == LDKCOption_AccessZ_Some) { - // Manually implement clone for Java trait instances - } - NetGraphMsgHandler_add_chain_access(&this_arg_conv, chain_access_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_NetGraphMsgHandler_as_RoutingMessageHandler(uint32_t this_arg) { - LDKNetGraphMsgHandler this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKRoutingMessageHandler* ret_ret = MALLOC(sizeof(LDKRoutingMessageHandler), "LDKRoutingMessageHandler"); - *ret_ret = NetGraphMsgHandler_as_RoutingMessageHandler(&this_arg_conv); - return (uint64_t)ret_ret; -} - -uint32_t __attribute__((visibility("default"))) TS_NetGraphMsgHandler_as_MessageSendEventsProvider(uint32_t this_arg) { - LDKNetGraphMsgHandler this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKMessageSendEventsProvider* ret_ret = MALLOC(sizeof(LDKMessageSendEventsProvider), "LDKMessageSendEventsProvider"); - *ret_ret = NetGraphMsgHandler_as_MessageSendEventsProvider(&this_arg_conv); - return (uint64_t)ret_ret; -} - -void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_free(uint32_t this_obj) { - LDKDirectionalChannelInfo this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - DirectionalChannelInfo_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_set_holder_pubkeys(uint32_t this_ptr, uint32_t val) { + LDKChannelTransactionParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelPublicKeys val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = ChannelPublicKeys_clone(&val_conv); + ChannelTransactionParameters_set_holder_pubkeys(&this_ptr_conv, val_conv); } -int32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_last_update(uint32_t this_ptr) { - LDKDirectionalChannelInfo this_ptr_conv; +int16_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_get_holder_selected_contest_delay(uint32_t this_ptr) { + LDKChannelTransactionParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = DirectionalChannelInfo_get_last_update(&this_ptr_conv); + int16_t ret_val = ChannelTransactionParameters_get_holder_selected_contest_delay(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_last_update(uint32_t this_ptr, int32_t val) { - LDKDirectionalChannelInfo this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_set_holder_selected_contest_delay(uint32_t this_ptr, int16_t val) { + LDKChannelTransactionParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - DirectionalChannelInfo_set_last_update(&this_ptr_conv, val); + ChannelTransactionParameters_set_holder_selected_contest_delay(&this_ptr_conv, val); } -jboolean __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_enabled(uint32_t this_ptr) { - LDKDirectionalChannelInfo this_ptr_conv; +jboolean __attribute__((visibility("default"))) TS_ChannelTransactionParameters_get_is_outbound_from_holder(uint32_t this_ptr) { + LDKChannelTransactionParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - jboolean ret_val = DirectionalChannelInfo_get_enabled(&this_ptr_conv); + jboolean ret_val = ChannelTransactionParameters_get_is_outbound_from_holder(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_enabled(uint32_t this_ptr, jboolean val) { - LDKDirectionalChannelInfo this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_set_is_outbound_from_holder(uint32_t this_ptr, jboolean val) { + LDKChannelTransactionParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - DirectionalChannelInfo_set_enabled(&this_ptr_conv, val); + ChannelTransactionParameters_set_is_outbound_from_holder(&this_ptr_conv, val); } -int16_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_cltv_expiry_delta(uint32_t this_ptr) { - LDKDirectionalChannelInfo this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_get_counterparty_parameters(uint32_t this_ptr) { + LDKChannelTransactionParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = DirectionalChannelInfo_get_cltv_expiry_delta(&this_ptr_conv); - return ret_val; + LDKCounterpartyChannelTransactionParameters ret_var = ChannelTransactionParameters_get_counterparty_parameters(&this_ptr_conv); + uint64_t ret_ref = 0; + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_cltv_expiry_delta(uint32_t this_ptr, int16_t val) { - LDKDirectionalChannelInfo this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_set_counterparty_parameters(uint32_t this_ptr, uint32_t val) { + LDKChannelTransactionParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - DirectionalChannelInfo_set_cltv_expiry_delta(&this_ptr_conv, val); + LDKCounterpartyChannelTransactionParameters val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = CounterpartyChannelTransactionParameters_clone(&val_conv); + ChannelTransactionParameters_set_counterparty_parameters(&this_ptr_conv, val_conv); } -int64_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_htlc_minimum_msat(uint32_t this_ptr) { - LDKDirectionalChannelInfo this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_get_funding_outpoint(uint32_t this_ptr) { + LDKChannelTransactionParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = DirectionalChannelInfo_get_htlc_minimum_msat(&this_ptr_conv); - return ret_val; + LDKOutPoint ret_var = ChannelTransactionParameters_get_funding_outpoint(&this_ptr_conv); + uint64_t ret_ref = 0; + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_htlc_minimum_msat(uint32_t this_ptr, int64_t val) { - LDKDirectionalChannelInfo this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_set_funding_outpoint(uint32_t this_ptr, uint32_t val) { + LDKChannelTransactionParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - DirectionalChannelInfo_set_htlc_minimum_msat(&this_ptr_conv, val); + LDKOutPoint val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = OutPoint_clone(&val_conv); + ChannelTransactionParameters_set_funding_outpoint(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_htlc_maximum_msat(uint32_t this_ptr) { - LDKDirectionalChannelInfo this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_get_opt_anchors(uint32_t this_ptr) { + LDKChannelTransactionParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *ret_copy = DirectionalChannelInfo_get_htlc_maximum_msat(&this_ptr_conv); - uint64_t ret_ref = (uint64_t)ret_copy; + uint32_t ret_conv = LDKCOption_NoneZ_to_js(ChannelTransactionParameters_get_opt_anchors(&this_ptr_conv)); + return ret_conv; +} + +void __attribute__((visibility("default"))) TS_ChannelTransactionParameters_set_opt_anchors(uint32_t this_ptr, uint32_t val) { + LDKChannelTransactionParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCOption_NoneZ val_conv = LDKCOption_NoneZ_from_js(val); + ChannelTransactionParameters_set_opt_anchors(&this_ptr_conv, val_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_new(uint32_t holder_pubkeys_arg, int16_t holder_selected_contest_delay_arg, jboolean is_outbound_from_holder_arg, uint32_t counterparty_parameters_arg, uint32_t funding_outpoint_arg, uint32_t opt_anchors_arg) { + LDKChannelPublicKeys holder_pubkeys_arg_conv; + holder_pubkeys_arg_conv.inner = (void*)(holder_pubkeys_arg & (~1)); + holder_pubkeys_arg_conv.is_owned = (holder_pubkeys_arg & 1) || (holder_pubkeys_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(holder_pubkeys_arg_conv); + holder_pubkeys_arg_conv = ChannelPublicKeys_clone(&holder_pubkeys_arg_conv); + LDKCounterpartyChannelTransactionParameters counterparty_parameters_arg_conv; + counterparty_parameters_arg_conv.inner = (void*)(counterparty_parameters_arg & (~1)); + counterparty_parameters_arg_conv.is_owned = (counterparty_parameters_arg & 1) || (counterparty_parameters_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(counterparty_parameters_arg_conv); + counterparty_parameters_arg_conv = CounterpartyChannelTransactionParameters_clone(&counterparty_parameters_arg_conv); + LDKOutPoint funding_outpoint_arg_conv; + funding_outpoint_arg_conv.inner = (void*)(funding_outpoint_arg & (~1)); + funding_outpoint_arg_conv.is_owned = (funding_outpoint_arg & 1) || (funding_outpoint_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_outpoint_arg_conv); + funding_outpoint_arg_conv = OutPoint_clone(&funding_outpoint_arg_conv); + LDKCOption_NoneZ opt_anchors_arg_conv = LDKCOption_NoneZ_from_js(opt_anchors_arg); + LDKChannelTransactionParameters ret_var = ChannelTransactionParameters_new(holder_pubkeys_arg_conv, holder_selected_contest_delay_arg, is_outbound_from_holder_arg, counterparty_parameters_arg_conv, funding_outpoint_arg_conv, opt_anchors_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +static inline uint64_t ChannelTransactionParameters_clone_ptr(LDKChannelTransactionParameters *NONNULL_PTR arg) { + LDKChannelTransactionParameters ret_var = ChannelTransactionParameters_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_clone_ptr(uint32_t arg) { + LDKChannelTransactionParameters arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ChannelTransactionParameters_clone_ptr(&arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_clone(uint32_t orig) { + LDKChannelTransactionParameters orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKChannelTransactionParameters ret_var = ChannelTransactionParameters_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_htlc_maximum_msat(uint32_t this_ptr, uint32_t val) { - LDKDirectionalChannelInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr); - val_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)val) & ~1)); - DirectionalChannelInfo_set_htlc_maximum_msat(&this_ptr_conv, val_conv); +void __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_free(uint32_t this_obj) { + LDKCounterpartyChannelTransactionParameters this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + CounterpartyChannelTransactionParameters_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_fees(uint32_t this_ptr) { - LDKDirectionalChannelInfo this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_get_pubkeys(uint32_t this_ptr) { + LDKCounterpartyChannelTransactionParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKRoutingFees ret_var = DirectionalChannelInfo_get_fees(&this_ptr_conv); + LDKChannelPublicKeys ret_var = CounterpartyChannelTransactionParameters_get_pubkeys(&this_ptr_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -32247,67 +29514,43 @@ uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_f return ret_ref; } -void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_fees(uint32_t this_ptr, uint32_t val) { - LDKDirectionalChannelInfo this_ptr_conv; +void __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_set_pubkeys(uint32_t this_ptr, uint32_t val) { + LDKCounterpartyChannelTransactionParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKRoutingFees val_conv; + LDKChannelPublicKeys val_conv; val_conv.inner = (void*)(val & (~1)); val_conv.is_owned = (val & 1) || (val == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = RoutingFees_clone(&val_conv); - DirectionalChannelInfo_set_fees(&this_ptr_conv, val_conv); + val_conv = ChannelPublicKeys_clone(&val_conv); + CounterpartyChannelTransactionParameters_set_pubkeys(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_last_update_message(uint32_t this_ptr) { - LDKDirectionalChannelInfo this_ptr_conv; +int16_t __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_get_selected_contest_delay(uint32_t this_ptr) { + LDKCounterpartyChannelTransactionParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelUpdate ret_var = DirectionalChannelInfo_get_last_update_message(&this_ptr_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } - return ret_ref; + int16_t ret_val = CounterpartyChannelTransactionParameters_get_selected_contest_delay(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_last_update_message(uint32_t this_ptr, uint32_t val) { - LDKDirectionalChannelInfo this_ptr_conv; +void __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_set_selected_contest_delay(uint32_t this_ptr, int16_t val) { + LDKCounterpartyChannelTransactionParameters this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelUpdate val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = ChannelUpdate_clone(&val_conv); - DirectionalChannelInfo_set_last_update_message(&this_ptr_conv, val_conv); + CounterpartyChannelTransactionParameters_set_selected_contest_delay(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_new(int32_t last_update_arg, jboolean enabled_arg, int16_t cltv_expiry_delta_arg, int64_t htlc_minimum_msat_arg, uint32_t htlc_maximum_msat_arg, uint32_t fees_arg, uint32_t last_update_message_arg) { - void* htlc_maximum_msat_arg_ptr = (void*)(((uint64_t)htlc_maximum_msat_arg) & ~1); - CHECK_ACCESS(htlc_maximum_msat_arg_ptr); - LDKCOption_u64Z htlc_maximum_msat_arg_conv = *(LDKCOption_u64Z*)(htlc_maximum_msat_arg_ptr); - htlc_maximum_msat_arg_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)htlc_maximum_msat_arg) & ~1)); - LDKRoutingFees fees_arg_conv; - fees_arg_conv.inner = (void*)(fees_arg & (~1)); - fees_arg_conv.is_owned = (fees_arg & 1) || (fees_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(fees_arg_conv); - fees_arg_conv = RoutingFees_clone(&fees_arg_conv); - LDKChannelUpdate last_update_message_arg_conv; - last_update_message_arg_conv.inner = (void*)(last_update_message_arg & (~1)); - last_update_message_arg_conv.is_owned = (last_update_message_arg & 1) || (last_update_message_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(last_update_message_arg_conv); - last_update_message_arg_conv = ChannelUpdate_clone(&last_update_message_arg_conv); - LDKDirectionalChannelInfo ret_var = DirectionalChannelInfo_new(last_update_arg, enabled_arg, cltv_expiry_delta_arg, htlc_minimum_msat_arg, htlc_maximum_msat_arg_conv, fees_arg_conv, last_update_message_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_new(uint32_t pubkeys_arg, int16_t selected_contest_delay_arg) { + LDKChannelPublicKeys pubkeys_arg_conv; + pubkeys_arg_conv.inner = (void*)(pubkeys_arg & (~1)); + pubkeys_arg_conv.is_owned = (pubkeys_arg & 1) || (pubkeys_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(pubkeys_arg_conv); + pubkeys_arg_conv = ChannelPublicKeys_clone(&pubkeys_arg_conv); + LDKCounterpartyChannelTransactionParameters ret_var = CounterpartyChannelTransactionParameters_new(pubkeys_arg_conv, selected_contest_delay_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -32319,8 +29562,8 @@ uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_new(i return ret_ref; } -static inline uint64_t DirectionalChannelInfo_clone_ptr(LDKDirectionalChannelInfo *NONNULL_PTR arg) { - LDKDirectionalChannelInfo ret_var = DirectionalChannelInfo_clone(arg); +static inline uint64_t CounterpartyChannelTransactionParameters_clone_ptr(LDKCounterpartyChannelTransactionParameters *NONNULL_PTR arg) { + LDKCounterpartyChannelTransactionParameters ret_var = CounterpartyChannelTransactionParameters_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -32331,21 +29574,183 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_clone_ptr(uint32_t arg) { - LDKDirectionalChannelInfo arg_conv; +int64_t __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_clone_ptr(uint32_t arg) { + LDKCounterpartyChannelTransactionParameters arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = DirectionalChannelInfo_clone_ptr(&arg_conv); + int64_t ret_val = CounterpartyChannelTransactionParameters_clone_ptr(&arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_clone(uint32_t orig) { + LDKCounterpartyChannelTransactionParameters orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKCounterpartyChannelTransactionParameters ret_var = CounterpartyChannelTransactionParameters_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +jboolean __attribute__((visibility("default"))) TS_ChannelTransactionParameters_is_populated(uint32_t this_arg) { + LDKChannelTransactionParameters this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + jboolean ret_val = ChannelTransactionParameters_is_populated(&this_arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_as_holder_broadcastable(uint32_t this_arg) { + LDKChannelTransactionParameters this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKDirectedChannelTransactionParameters ret_var = ChannelTransactionParameters_as_holder_broadcastable(&this_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_as_counterparty_broadcastable(uint32_t this_arg) { + LDKChannelTransactionParameters this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKDirectedChannelTransactionParameters ret_var = ChannelTransactionParameters_as_counterparty_broadcastable(&this_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +int8_tArray __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_write(uint32_t obj) { + LDKCounterpartyChannelTransactionParameters obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = CounterpartyChannelTransactionParameters_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_CounterpartyChannelTransactionParameters_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ), "LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ"); + *ret_conv = CounterpartyChannelTransactionParameters_read(ser_ref); + return (uint64_t)ret_conv; +} + +int8_tArray __attribute__((visibility("default"))) TS_ChannelTransactionParameters_write(uint32_t obj) { + LDKChannelTransactionParameters obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ChannelTransactionParameters_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_ChannelTransactionParameters_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ChannelTransactionParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTransactionParametersDecodeErrorZ), "LDKCResult_ChannelTransactionParametersDecodeErrorZ"); + *ret_conv = ChannelTransactionParameters_read(ser_ref); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_free(uint32_t this_obj) { + LDKDirectedChannelTransactionParameters this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + DirectedChannelTransactionParameters_free(this_obj_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_broadcaster_pubkeys(uint32_t this_arg) { + LDKDirectedChannelTransactionParameters this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKChannelPublicKeys ret_var = DirectedChannelTransactionParameters_broadcaster_pubkeys(&this_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_countersignatory_pubkeys(uint32_t this_arg) { + LDKDirectedChannelTransactionParameters this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKChannelPublicKeys ret_var = DirectedChannelTransactionParameters_countersignatory_pubkeys(&this_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +int16_t __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_contest_delay(uint32_t this_arg) { + LDKDirectedChannelTransactionParameters this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int16_t ret_val = DirectedChannelTransactionParameters_contest_delay(&this_arg_conv); + return ret_val; +} + +jboolean __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_is_outbound(uint32_t this_arg) { + LDKDirectedChannelTransactionParameters this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + jboolean ret_val = DirectedChannelTransactionParameters_is_outbound(&this_arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_clone(uint32_t orig) { - LDKDirectionalChannelInfo orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKDirectionalChannelInfo ret_var = DirectionalChannelInfo_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_funding_outpoint(uint32_t this_arg) { + LDKDirectedChannelTransactionParameters this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKOutPoint ret_var = DirectedChannelTransactionParameters_funding_outpoint(&this_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -32357,71 +29762,93 @@ uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_clone return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_DirectionalChannelInfo_write(uint32_t obj) { - LDKDirectionalChannelInfo obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = DirectionalChannelInfo_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_DirectionalChannelInfoDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DirectionalChannelInfoDecodeErrorZ), "LDKCResult_DirectionalChannelInfoDecodeErrorZ"); - *ret_conv = DirectionalChannelInfo_read(ser_ref); - return (uint64_t)ret_conv; +jboolean __attribute__((visibility("default"))) TS_DirectedChannelTransactionParameters_opt_anchors(uint32_t this_arg) { + LDKDirectedChannelTransactionParameters this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + jboolean ret_val = DirectedChannelTransactionParameters_opt_anchors(&this_arg_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_ChannelInfo_free(uint32_t this_obj) { - LDKChannelInfo this_obj_conv; +void __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_free(uint32_t this_obj) { + LDKHolderCommitmentTransaction this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ChannelInfo_free(this_obj_conv); + HolderCommitmentTransaction_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_features(uint32_t this_ptr) { - LDKChannelInfo this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_get_counterparty_sig(uint32_t this_ptr) { + LDKHolderCommitmentTransaction this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelFeatures ret_var = ChannelInfo_get_features(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, HolderCommitmentTransaction_get_counterparty_sig(&this_ptr_conv).compact_form, 64); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelInfo_set_features(uint32_t this_ptr, uint32_t val) { - LDKChannelInfo this_ptr_conv; +void __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_set_counterparty_sig(uint32_t this_ptr, int8_tArray val) { + LDKHolderCommitmentTransaction this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelFeatures val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = ChannelFeatures_clone(&val_conv); - ChannelInfo_set_features(&this_ptr_conv, val_conv); + LDKSignature val_ref; + CHECK(val->arr_len == 64); + memcpy(val_ref.compact_form, val->elems, 64); + HolderCommitmentTransaction_set_counterparty_sig(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_node_one(uint32_t this_ptr) { - LDKChannelInfo this_ptr_conv; +void __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_set_counterparty_htlc_sigs(uint32_t this_ptr, ptrArray val) { + LDKHolderCommitmentTransaction this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeId ret_var = ChannelInfo_get_node_one(&this_ptr_conv); + LDKCVec_SignatureZ val_constr; + val_constr.datalen = val->arr_len; + if (val_constr.datalen > 0) + val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); + else + val_constr.data = NULL; + int8_tArray* val_vals = (void*) val->elems; + for (size_t m = 0; m < val_constr.datalen; m++) { + int8_tArray val_conv_12 = val_vals[m]; + LDKSignature val_conv_12_ref; + CHECK(val_conv_12->arr_len == 64); + memcpy(val_conv_12_ref.compact_form, val_conv_12->elems, 64); + val_constr.data[m] = val_conv_12_ref; + } + HolderCommitmentTransaction_set_counterparty_htlc_sigs(&this_ptr_conv, val_constr); +} + +static inline uint64_t HolderCommitmentTransaction_clone_ptr(LDKHolderCommitmentTransaction *NONNULL_PTR arg) { + LDKHolderCommitmentTransaction ret_var = HolderCommitmentTransaction_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_clone_ptr(uint32_t arg) { + LDKHolderCommitmentTransaction arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = HolderCommitmentTransaction_clone_ptr(&arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_clone(uint32_t orig) { + LDKHolderCommitmentTransaction orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKHolderCommitmentTransaction ret_var = HolderCommitmentTransaction_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -32433,57 +29860,57 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_node_one(uin return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelInfo_set_node_one(uint32_t this_ptr, uint32_t val) { - LDKChannelInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeId val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = NodeId_clone(&val_conv); - ChannelInfo_set_node_one(&this_ptr_conv, val_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_one_to_two(uint32_t this_ptr) { - LDKChannelInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKDirectionalChannelInfo ret_var = ChannelInfo_get_one_to_two(&this_ptr_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_write(uint32_t obj) { + LDKHolderCommitmentTransaction obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = HolderCommitmentTransaction_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -void __attribute__((visibility("default"))) TS_ChannelInfo_set_one_to_two(uint32_t this_ptr, uint32_t val) { - LDKChannelInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKDirectionalChannelInfo val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = DirectionalChannelInfo_clone(&val_conv); - ChannelInfo_set_one_to_two(&this_ptr_conv, val_conv); +uint32_t __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_HolderCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HolderCommitmentTransactionDecodeErrorZ), "LDKCResult_HolderCommitmentTransactionDecodeErrorZ"); + *ret_conv = HolderCommitmentTransaction_read(ser_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_node_two(uint32_t this_ptr) { - LDKChannelInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeId ret_var = ChannelInfo_get_node_two(&this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_HolderCommitmentTransaction_new(uint32_t commitment_tx, int8_tArray counterparty_sig, ptrArray counterparty_htlc_sigs, int8_tArray holder_funding_key, int8_tArray counterparty_funding_key) { + LDKCommitmentTransaction commitment_tx_conv; + commitment_tx_conv.inner = (void*)(commitment_tx & (~1)); + commitment_tx_conv.is_owned = (commitment_tx & 1) || (commitment_tx == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_conv); + commitment_tx_conv = CommitmentTransaction_clone(&commitment_tx_conv); + LDKSignature counterparty_sig_ref; + CHECK(counterparty_sig->arr_len == 64); + memcpy(counterparty_sig_ref.compact_form, counterparty_sig->elems, 64); + LDKCVec_SignatureZ counterparty_htlc_sigs_constr; + counterparty_htlc_sigs_constr.datalen = counterparty_htlc_sigs->arr_len; + if (counterparty_htlc_sigs_constr.datalen > 0) + counterparty_htlc_sigs_constr.data = MALLOC(counterparty_htlc_sigs_constr.datalen * sizeof(LDKSignature), "LDKCVec_SignatureZ Elements"); + else + counterparty_htlc_sigs_constr.data = NULL; + int8_tArray* counterparty_htlc_sigs_vals = (void*) counterparty_htlc_sigs->elems; + for (size_t m = 0; m < counterparty_htlc_sigs_constr.datalen; m++) { + int8_tArray counterparty_htlc_sigs_conv_12 = counterparty_htlc_sigs_vals[m]; + LDKSignature counterparty_htlc_sigs_conv_12_ref; + CHECK(counterparty_htlc_sigs_conv_12->arr_len == 64); + memcpy(counterparty_htlc_sigs_conv_12_ref.compact_form, counterparty_htlc_sigs_conv_12->elems, 64); + counterparty_htlc_sigs_constr.data[m] = counterparty_htlc_sigs_conv_12_ref; + } + LDKPublicKey holder_funding_key_ref; + CHECK(holder_funding_key->arr_len == 33); + memcpy(holder_funding_key_ref.compressed_form, holder_funding_key->elems, 33); + LDKPublicKey counterparty_funding_key_ref; + CHECK(counterparty_funding_key->arr_len == 33); + memcpy(counterparty_funding_key_ref.compressed_form, counterparty_funding_key->elems, 33); + LDKHolderCommitmentTransaction ret_var = HolderCommitmentTransaction_new(commitment_tx_conv, counterparty_sig_ref, counterparty_htlc_sigs_constr, holder_funding_key_ref, counterparty_funding_key_ref); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -32495,108 +29922,83 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_node_two(uin return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelInfo_set_node_two(uint32_t this_ptr, uint32_t val) { - LDKChannelInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeId val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = NodeId_clone(&val_conv); - ChannelInfo_set_node_two(&this_ptr_conv, val_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_two_to_one(uint32_t this_ptr) { - LDKChannelInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKDirectionalChannelInfo ret_var = ChannelInfo_get_two_to_one(&this_ptr_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } - return ret_ref; +void __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_free(uint32_t this_obj) { + LDKBuiltCommitmentTransaction this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + BuiltCommitmentTransaction_free(this_obj_conv); } -void __attribute__((visibility("default"))) TS_ChannelInfo_set_two_to_one(uint32_t this_ptr, uint32_t val) { - LDKChannelInfo this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_get_transaction(uint32_t this_ptr) { + LDKBuiltCommitmentTransaction this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKDirectionalChannelInfo val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = DirectionalChannelInfo_clone(&val_conv); - ChannelInfo_set_two_to_one(&this_ptr_conv, val_conv); + LDKTransaction ret_var = BuiltCommitmentTransaction_get_transaction(&this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + Transaction_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_capacity_sats(uint32_t this_ptr) { - LDKChannelInfo this_ptr_conv; +void __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_set_transaction(uint32_t this_ptr, int8_tArray val) { + LDKBuiltCommitmentTransaction this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *ret_copy = ChannelInfo_get_capacity_sats(&this_ptr_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; + LDKTransaction val_ref; + val_ref.datalen = val->arr_len; + val_ref.data = MALLOC(val_ref.datalen, "LDKTransaction Bytes"); + memcpy(val_ref.data, val->elems, val_ref.datalen); + val_ref.data_is_owned = true; + BuiltCommitmentTransaction_set_transaction(&this_ptr_conv, val_ref); } -void __attribute__((visibility("default"))) TS_ChannelInfo_set_capacity_sats(uint32_t this_ptr, uint32_t val) { - LDKChannelInfo this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_get_txid(uint32_t this_ptr) { + LDKBuiltCommitmentTransaction this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr); - val_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)val) & ~1)); - ChannelInfo_set_capacity_sats(&this_ptr_conv, val_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *BuiltCommitmentTransaction_get_txid(&this_ptr_conv), 32); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_announcement_message(uint32_t this_ptr) { - LDKChannelInfo this_ptr_conv; +void __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_set_txid(uint32_t this_ptr, int8_tArray val) { + LDKBuiltCommitmentTransaction this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelAnnouncement ret_var = ChannelInfo_get_announcement_message(&this_ptr_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + BuiltCommitmentTransaction_set_txid(&this_ptr_conv, val_ref); +} + +uint32_t __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_new(int8_tArray transaction_arg, int8_tArray txid_arg) { + LDKTransaction transaction_arg_ref; + transaction_arg_ref.datalen = transaction_arg->arr_len; + transaction_arg_ref.data = MALLOC(transaction_arg_ref.datalen, "LDKTransaction Bytes"); + memcpy(transaction_arg_ref.data, transaction_arg->elems, transaction_arg_ref.datalen); + transaction_arg_ref.data_is_owned = true; + LDKThirtyTwoBytes txid_arg_ref; + CHECK(txid_arg->arr_len == 32); + memcpy(txid_arg_ref.data, txid_arg->elems, 32); + LDKBuiltCommitmentTransaction ret_var = BuiltCommitmentTransaction_new(transaction_arg_ref, txid_arg_ref); uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } return ret_ref; } -void __attribute__((visibility("default"))) TS_ChannelInfo_set_announcement_message(uint32_t this_ptr, uint32_t val) { - LDKChannelInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelAnnouncement val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = ChannelAnnouncement_clone(&val_conv); - ChannelInfo_set_announcement_message(&this_ptr_conv, val_conv); -} - -static inline uint64_t ChannelInfo_clone_ptr(LDKChannelInfo *NONNULL_PTR arg) { - LDKChannelInfo ret_var = ChannelInfo_clone(arg); +static inline uint64_t BuiltCommitmentTransaction_clone_ptr(LDKBuiltCommitmentTransaction *NONNULL_PTR arg) { + LDKBuiltCommitmentTransaction ret_var = BuiltCommitmentTransaction_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -32607,21 +30009,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ChannelInfo_clone_ptr(uint32_t arg) { - LDKChannelInfo arg_conv; +int64_t __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_clone_ptr(uint32_t arg) { + LDKBuiltCommitmentTransaction arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ChannelInfo_clone_ptr(&arg_conv); + int64_t ret_val = BuiltCommitmentTransaction_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_clone(uint32_t orig) { - LDKChannelInfo orig_conv; +uint32_t __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_clone(uint32_t orig) { + LDKBuiltCommitmentTransaction orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKChannelInfo ret_var = ChannelInfo_clone(&orig_conv); + LDKBuiltCommitmentTransaction ret_var = BuiltCommitmentTransaction_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -32633,97 +30035,270 @@ uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_clone(uint32_t o return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_ChannelInfo_write(uint32_t obj) { - LDKChannelInfo obj_conv; +int8_tArray __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_write(uint32_t obj) { + LDKBuiltCommitmentTransaction obj_conv; obj_conv.inner = (void*)(obj & (~1)); obj_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ChannelInfo_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + LDKCVec_u8Z ret_var = BuiltCommitmentTransaction_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_read(int8_tArray ser) { +uint32_t __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_read(int8_tArray ser) { LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ChannelInfoDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelInfoDecodeErrorZ), "LDKCResult_ChannelInfoDecodeErrorZ"); - *ret_conv = ChannelInfo_read(ser_ref); + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ), "LDKCResult_BuiltCommitmentTransactionDecodeErrorZ"); + *ret_conv = BuiltCommitmentTransaction_read(ser_ref); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_RoutingFees_free(uint32_t this_obj) { - LDKRoutingFees this_obj_conv; +int8_tArray __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_get_sighash_all(uint32_t this_arg, int8_tArray funding_redeemscript, int64_t channel_value_satoshis) { + LDKBuiltCommitmentTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKu8slice funding_redeemscript_ref; + funding_redeemscript_ref.datalen = funding_redeemscript->arr_len; + funding_redeemscript_ref.data = funding_redeemscript->elems; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, BuiltCommitmentTransaction_get_sighash_all(&this_arg_conv, funding_redeemscript_ref, channel_value_satoshis).data, 32); + return ret_arr; +} + +int8_tArray __attribute__((visibility("default"))) TS_BuiltCommitmentTransaction_sign(uint32_t this_arg, int8_tArray funding_key, int8_tArray funding_redeemscript, int64_t channel_value_satoshis) { + LDKBuiltCommitmentTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char funding_key_arr[32]; + CHECK(funding_key->arr_len == 32); + memcpy(funding_key_arr, funding_key->elems, 32); + unsigned char (*funding_key_ref)[32] = &funding_key_arr; + LDKu8slice funding_redeemscript_ref; + funding_redeemscript_ref.datalen = funding_redeemscript->arr_len; + funding_redeemscript_ref.data = funding_redeemscript->elems; + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, BuiltCommitmentTransaction_sign(&this_arg_conv, funding_key_ref, funding_redeemscript_ref, channel_value_satoshis).compact_form, 64); + return ret_arr; +} + +void __attribute__((visibility("default"))) TS_ClosingTransaction_free(uint32_t this_obj) { + LDKClosingTransaction this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - RoutingFees_free(this_obj_conv); + ClosingTransaction_free(this_obj_conv); } -int32_t __attribute__((visibility("default"))) TS_RoutingFees_get_base_msat(uint32_t this_ptr) { - LDKRoutingFees this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = RoutingFees_get_base_msat(&this_ptr_conv); +static inline uint64_t ClosingTransaction_clone_ptr(LDKClosingTransaction *NONNULL_PTR arg) { + LDKClosingTransaction ret_var = ClosingTransaction_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_ClosingTransaction_clone_ptr(uint32_t arg) { + LDKClosingTransaction arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ClosingTransaction_clone_ptr(&arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_RoutingFees_set_base_msat(uint32_t this_ptr, int32_t val) { - LDKRoutingFees this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - RoutingFees_set_base_msat(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_ClosingTransaction_clone(uint32_t orig) { + LDKClosingTransaction orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKClosingTransaction ret_var = ClosingTransaction_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +int64_t __attribute__((visibility("default"))) TS_ClosingTransaction_hash(uint32_t o) { + LDKClosingTransaction o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + int64_t ret_val = ClosingTransaction_hash(&o_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_ClosingTransaction_new(int64_t to_holder_value_sat, int64_t to_counterparty_value_sat, int8_tArray to_holder_script, int8_tArray to_counterparty_script, uint32_t funding_outpoint) { + LDKCVec_u8Z to_holder_script_ref; + to_holder_script_ref.datalen = to_holder_script->arr_len; + to_holder_script_ref.data = MALLOC(to_holder_script_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(to_holder_script_ref.data, to_holder_script->elems, to_holder_script_ref.datalen); + LDKCVec_u8Z to_counterparty_script_ref; + to_counterparty_script_ref.datalen = to_counterparty_script->arr_len; + to_counterparty_script_ref.data = MALLOC(to_counterparty_script_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(to_counterparty_script_ref.data, to_counterparty_script->elems, to_counterparty_script_ref.datalen); + LDKOutPoint funding_outpoint_conv; + funding_outpoint_conv.inner = (void*)(funding_outpoint & (~1)); + funding_outpoint_conv.is_owned = (funding_outpoint & 1) || (funding_outpoint == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_outpoint_conv); + funding_outpoint_conv = OutPoint_clone(&funding_outpoint_conv); + LDKClosingTransaction ret_var = ClosingTransaction_new(to_holder_value_sat, to_counterparty_value_sat, to_holder_script_ref, to_counterparty_script_ref, funding_outpoint_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_ClosingTransaction_trust(uint32_t this_arg) { + LDKClosingTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKTrustedClosingTransaction ret_var = ClosingTransaction_trust(&this_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_ClosingTransaction_verify(uint32_t this_arg, uint32_t funding_outpoint) { + LDKClosingTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKOutPoint funding_outpoint_conv; + funding_outpoint_conv.inner = (void*)(funding_outpoint & (~1)); + funding_outpoint_conv.is_owned = (funding_outpoint & 1) || (funding_outpoint == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(funding_outpoint_conv); + funding_outpoint_conv = OutPoint_clone(&funding_outpoint_conv); + LDKCResult_TrustedClosingTransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TrustedClosingTransactionNoneZ), "LDKCResult_TrustedClosingTransactionNoneZ"); + *ret_conv = ClosingTransaction_verify(&this_arg_conv, funding_outpoint_conv); + return (uint64_t)ret_conv; +} + +int64_t __attribute__((visibility("default"))) TS_ClosingTransaction_to_holder_value_sat(uint32_t this_arg) { + LDKClosingTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int64_t ret_val = ClosingTransaction_to_holder_value_sat(&this_arg_conv); + return ret_val; +} + +int64_t __attribute__((visibility("default"))) TS_ClosingTransaction_to_counterparty_value_sat(uint32_t this_arg) { + LDKClosingTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int64_t ret_val = ClosingTransaction_to_counterparty_value_sat(&this_arg_conv); + return ret_val; +} + +int8_tArray __attribute__((visibility("default"))) TS_ClosingTransaction_to_holder_script(uint32_t this_arg) { + LDKClosingTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKu8slice ret_var = ClosingTransaction_to_holder_script(&this_arg_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + return ret_arr; +} + +int8_tArray __attribute__((visibility("default"))) TS_ClosingTransaction_to_counterparty_script(uint32_t this_arg) { + LDKClosingTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKu8slice ret_var = ClosingTransaction_to_counterparty_script(&this_arg_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + return ret_arr; +} + +void __attribute__((visibility("default"))) TS_TrustedClosingTransaction_free(uint32_t this_obj) { + LDKTrustedClosingTransaction this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + TrustedClosingTransaction_free(this_obj_conv); } -int32_t __attribute__((visibility("default"))) TS_RoutingFees_get_proportional_millionths(uint32_t this_ptr) { - LDKRoutingFees this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = RoutingFees_get_proportional_millionths(&this_ptr_conv); - return ret_val; +int8_tArray __attribute__((visibility("default"))) TS_TrustedClosingTransaction_built_transaction(uint32_t this_arg) { + LDKTrustedClosingTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKTransaction ret_var = TrustedClosingTransaction_built_transaction(&this_arg_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + Transaction_free(ret_var); + return ret_arr; } -void __attribute__((visibility("default"))) TS_RoutingFees_set_proportional_millionths(uint32_t this_ptr, int32_t val) { - LDKRoutingFees this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - RoutingFees_set_proportional_millionths(&this_ptr_conv, val); +int8_tArray __attribute__((visibility("default"))) TS_TrustedClosingTransaction_get_sighash_all(uint32_t this_arg, int8_tArray funding_redeemscript, int64_t channel_value_satoshis) { + LDKTrustedClosingTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKu8slice funding_redeemscript_ref; + funding_redeemscript_ref.datalen = funding_redeemscript->arr_len; + funding_redeemscript_ref.data = funding_redeemscript->elems; + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, TrustedClosingTransaction_get_sighash_all(&this_arg_conv, funding_redeemscript_ref, channel_value_satoshis).data, 32); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_RoutingFees_new(int32_t base_msat_arg, int32_t proportional_millionths_arg) { - LDKRoutingFees ret_var = RoutingFees_new(base_msat_arg, proportional_millionths_arg); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_TrustedClosingTransaction_sign(uint32_t this_arg, int8_tArray funding_key, int8_tArray funding_redeemscript, int64_t channel_value_satoshis) { + LDKTrustedClosingTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char funding_key_arr[32]; + CHECK(funding_key->arr_len == 32); + memcpy(funding_key_arr, funding_key->elems, 32); + unsigned char (*funding_key_ref)[32] = &funding_key_arr; + LDKu8slice funding_redeemscript_ref; + funding_redeemscript_ref.datalen = funding_redeemscript->arr_len; + funding_redeemscript_ref.data = funding_redeemscript->elems; + int8_tArray ret_arr = init_int8_tArray(64); + memcpy(ret_arr->elems, TrustedClosingTransaction_sign(&this_arg_conv, funding_key_ref, funding_redeemscript_ref, channel_value_satoshis).compact_form, 64); + return ret_arr; } -jboolean __attribute__((visibility("default"))) TS_RoutingFees_eq(uint32_t a, uint32_t b) { - LDKRoutingFees a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKRoutingFees b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = RoutingFees_eq(&a_conv, &b_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_CommitmentTransaction_free(uint32_t this_obj) { + LDKCommitmentTransaction this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + CommitmentTransaction_free(this_obj_conv); } -static inline uint64_t RoutingFees_clone_ptr(LDKRoutingFees *NONNULL_PTR arg) { - LDKRoutingFees ret_var = RoutingFees_clone(arg); +static inline uint64_t CommitmentTransaction_clone_ptr(LDKCommitmentTransaction *NONNULL_PTR arg) { + LDKCommitmentTransaction ret_var = CommitmentTransaction_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -32734,21 +30309,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_RoutingFees_clone_ptr(uint32_t arg) { - LDKRoutingFees arg_conv; +int64_t __attribute__((visibility("default"))) TS_CommitmentTransaction_clone_ptr(uint32_t arg) { + LDKCommitmentTransaction arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = RoutingFees_clone_ptr(&arg_conv); + int64_t ret_val = CommitmentTransaction_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_RoutingFees_clone(uint32_t orig) { - LDKRoutingFees orig_conv; +uint32_t __attribute__((visibility("default"))) TS_CommitmentTransaction_clone(uint32_t orig) { + LDKCommitmentTransaction orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKRoutingFees ret_var = RoutingFees_clone(&orig_conv); + LDKCommitmentTransaction ret_var = CommitmentTransaction_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -32760,50 +30335,69 @@ uint32_t __attribute__((visibility("default"))) TS_RoutingFees_clone(uint32_t o return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_RoutingFees_hash(uint32_t o) { - LDKRoutingFees o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = RoutingFees_hash(&o_conv); - return ret_val; -} - -int8_tArray __attribute__((visibility("default"))) TS_RoutingFees_write(uint32_t obj) { - LDKRoutingFees obj_conv; +int8_tArray __attribute__((visibility("default"))) TS_CommitmentTransaction_write(uint32_t obj) { + LDKCommitmentTransaction obj_conv; obj_conv.inner = (void*)(obj & (~1)); obj_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = RoutingFees_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + LDKCVec_u8Z ret_var = CommitmentTransaction_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_RoutingFees_read(int8_tArray ser) { +uint32_t __attribute__((visibility("default"))) TS_CommitmentTransaction_read(int8_tArray ser) { LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_RoutingFeesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RoutingFeesDecodeErrorZ), "LDKCResult_RoutingFeesDecodeErrorZ"); - *ret_conv = RoutingFees_read(ser_ref); + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_CommitmentTransactionDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CommitmentTransactionDecodeErrorZ), "LDKCResult_CommitmentTransactionDecodeErrorZ"); + *ret_conv = CommitmentTransaction_read(ser_ref); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_free(uint32_t this_obj) { - LDKNodeAnnouncementInfo this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - NodeAnnouncementInfo_free(this_obj_conv); +int64_t __attribute__((visibility("default"))) TS_CommitmentTransaction_commitment_number(uint32_t this_arg) { + LDKCommitmentTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int64_t ret_val = CommitmentTransaction_commitment_number(&this_arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_get_features(uint32_t this_ptr) { - LDKNodeAnnouncementInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeFeatures ret_var = NodeAnnouncementInfo_get_features(&this_ptr_conv); +int64_t __attribute__((visibility("default"))) TS_CommitmentTransaction_to_broadcaster_value_sat(uint32_t this_arg) { + LDKCommitmentTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int64_t ret_val = CommitmentTransaction_to_broadcaster_value_sat(&this_arg_conv); + return ret_val; +} + +int64_t __attribute__((visibility("default"))) TS_CommitmentTransaction_to_countersignatory_value_sat(uint32_t this_arg) { + LDKCommitmentTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int64_t ret_val = CommitmentTransaction_to_countersignatory_value_sat(&this_arg_conv); + return ret_val; +} + +int32_t __attribute__((visibility("default"))) TS_CommitmentTransaction_feerate_per_kw(uint32_t this_arg) { + LDKCommitmentTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int32_t ret_val = CommitmentTransaction_feerate_per_kw(&this_arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_CommitmentTransaction_trust(uint32_t this_arg) { + LDKCommitmentTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKTrustedCommitmentTransaction ret_var = CommitmentTransaction_trust(&this_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -32815,165 +30409,52 @@ uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_get_fea return ret_ref; } -void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_set_features(uint32_t this_ptr, uint32_t val) { - LDKNodeAnnouncementInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeFeatures val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = NodeFeatures_clone(&val_conv); - NodeAnnouncementInfo_set_features(&this_ptr_conv, val_conv); -} - -int32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_get_last_update(uint32_t this_ptr) { - LDKNodeAnnouncementInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = NodeAnnouncementInfo_get_last_update(&this_ptr_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_set_last_update(uint32_t this_ptr, int32_t val) { - LDKNodeAnnouncementInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - NodeAnnouncementInfo_set_last_update(&this_ptr_conv, val); -} - -int8_tArray __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_get_rgb(uint32_t this_ptr) { - LDKNodeAnnouncementInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(3, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *NodeAnnouncementInfo_get_rgb(&this_ptr_conv), 3); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_set_rgb(uint32_t this_ptr, int8_tArray val) { - LDKNodeAnnouncementInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThreeBytes val_ref; - CHECK(*((uint32_t*)val) == 3); - memcpy(val_ref.data, (uint8_t*)(val + 4), 3); - NodeAnnouncementInfo_set_rgb(&this_ptr_conv, val_ref); -} - -int8_tArray __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_get_alias(uint32_t this_ptr) { - LDKNodeAnnouncementInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *NodeAnnouncementInfo_get_alias(&this_ptr_conv), 32); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_set_alias(uint32_t this_ptr, int8_tArray val) { - LDKNodeAnnouncementInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKThirtyTwoBytes val_ref; - CHECK(*((uint32_t*)val) == 32); - memcpy(val_ref.data, (uint8_t*)(val + 4), 32); - NodeAnnouncementInfo_set_alias(&this_ptr_conv, val_ref); -} - -void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_set_addresses(uint32_t this_ptr, uint32_tArray val) { - LDKNodeAnnouncementInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_NetAddressZ val_constr; - val_constr.datalen = *((uint32_t*)val); - if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKNetAddress), "LDKCVec_NetAddressZ Elements"); - else - val_constr.data = NULL; - uint32_t* val_vals = (uint32_t*)(val + 4); - for (size_t m = 0; m < val_constr.datalen; m++) { - uint32_t val_conv_12 = val_vals[m]; - void* val_conv_12_ptr = (void*)(((uint64_t)val_conv_12) & ~1); - CHECK_ACCESS(val_conv_12_ptr); - LDKNetAddress val_conv_12_conv = *(LDKNetAddress*)(val_conv_12_ptr); - val_conv_12_conv = NetAddress_clone((LDKNetAddress*)(((uint64_t)val_conv_12) & ~1)); - val_constr.data[m] = val_conv_12_conv; - } - NodeAnnouncementInfo_set_addresses(&this_ptr_conv, val_constr); +uint32_t __attribute__((visibility("default"))) TS_CommitmentTransaction_verify(uint32_t this_arg, uint32_t channel_parameters, uint32_t broadcaster_keys, uint32_t countersignatory_keys) { + LDKCommitmentTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKDirectedChannelTransactionParameters channel_parameters_conv; + channel_parameters_conv.inner = (void*)(channel_parameters & (~1)); + channel_parameters_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_parameters_conv); + LDKChannelPublicKeys broadcaster_keys_conv; + broadcaster_keys_conv.inner = (void*)(broadcaster_keys & (~1)); + broadcaster_keys_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(broadcaster_keys_conv); + LDKChannelPublicKeys countersignatory_keys_conv; + countersignatory_keys_conv.inner = (void*)(countersignatory_keys & (~1)); + countersignatory_keys_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(countersignatory_keys_conv); + LDKCResult_TrustedCommitmentTransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TrustedCommitmentTransactionNoneZ), "LDKCResult_TrustedCommitmentTransactionNoneZ"); + *ret_conv = CommitmentTransaction_verify(&this_arg_conv, &channel_parameters_conv, &broadcaster_keys_conv, &countersignatory_keys_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_get_announcement_message(uint32_t this_ptr) { - LDKNodeAnnouncementInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeAnnouncement ret_var = NodeAnnouncementInfo_get_announcement_message(&this_ptr_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } - return ret_ref; +void __attribute__((visibility("default"))) TS_TrustedCommitmentTransaction_free(uint32_t this_obj) { + LDKTrustedCommitmentTransaction this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + TrustedCommitmentTransaction_free(this_obj_conv); } -void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_set_announcement_message(uint32_t this_ptr, uint32_t val) { - LDKNodeAnnouncementInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeAnnouncement val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = NodeAnnouncement_clone(&val_conv); - NodeAnnouncementInfo_set_announcement_message(&this_ptr_conv, val_conv); +int8_tArray __attribute__((visibility("default"))) TS_TrustedCommitmentTransaction_txid(uint32_t this_arg) { + LDKTrustedCommitmentTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, TrustedCommitmentTransaction_txid(&this_arg_conv).data, 32); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_new(uint32_t features_arg, int32_t last_update_arg, int8_tArray rgb_arg, int8_tArray alias_arg, uint32_tArray addresses_arg, uint32_t announcement_message_arg) { - LDKNodeFeatures features_arg_conv; - features_arg_conv.inner = (void*)(features_arg & (~1)); - features_arg_conv.is_owned = (features_arg & 1) || (features_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(features_arg_conv); - features_arg_conv = NodeFeatures_clone(&features_arg_conv); - LDKThreeBytes rgb_arg_ref; - CHECK(*((uint32_t*)rgb_arg) == 3); - memcpy(rgb_arg_ref.data, (uint8_t*)(rgb_arg + 4), 3); - LDKThirtyTwoBytes alias_arg_ref; - CHECK(*((uint32_t*)alias_arg) == 32); - memcpy(alias_arg_ref.data, (uint8_t*)(alias_arg + 4), 32); - LDKCVec_NetAddressZ addresses_arg_constr; - addresses_arg_constr.datalen = *((uint32_t*)addresses_arg); - if (addresses_arg_constr.datalen > 0) - addresses_arg_constr.data = MALLOC(addresses_arg_constr.datalen * sizeof(LDKNetAddress), "LDKCVec_NetAddressZ Elements"); - else - addresses_arg_constr.data = NULL; - uint32_t* addresses_arg_vals = (uint32_t*)(addresses_arg + 4); - for (size_t m = 0; m < addresses_arg_constr.datalen; m++) { - uint32_t addresses_arg_conv_12 = addresses_arg_vals[m]; - void* addresses_arg_conv_12_ptr = (void*)(((uint64_t)addresses_arg_conv_12) & ~1); - CHECK_ACCESS(addresses_arg_conv_12_ptr); - LDKNetAddress addresses_arg_conv_12_conv = *(LDKNetAddress*)(addresses_arg_conv_12_ptr); - addresses_arg_constr.data[m] = addresses_arg_conv_12_conv; - } - LDKNodeAnnouncement announcement_message_arg_conv; - announcement_message_arg_conv.inner = (void*)(announcement_message_arg & (~1)); - announcement_message_arg_conv.is_owned = (announcement_message_arg & 1) || (announcement_message_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(announcement_message_arg_conv); - announcement_message_arg_conv = NodeAnnouncement_clone(&announcement_message_arg_conv); - LDKNodeAnnouncementInfo ret_var = NodeAnnouncementInfo_new(features_arg_conv, last_update_arg, rgb_arg_ref, alias_arg_ref, addresses_arg_constr, announcement_message_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_TrustedCommitmentTransaction_built_transaction(uint32_t this_arg) { + LDKTrustedCommitmentTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKBuiltCommitmentTransaction ret_var = TrustedCommitmentTransaction_built_transaction(&this_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -32985,33 +30466,12 @@ uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_new(uin return ret_ref; } -static inline uint64_t NodeAnnouncementInfo_clone_ptr(LDKNodeAnnouncementInfo *NONNULL_PTR arg) { - LDKNodeAnnouncementInfo ret_var = NodeAnnouncementInfo_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_clone_ptr(uint32_t arg) { - LDKNodeAnnouncementInfo arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = NodeAnnouncementInfo_clone_ptr(&arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_clone(uint32_t orig) { - LDKNodeAnnouncementInfo orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKNodeAnnouncementInfo ret_var = NodeAnnouncementInfo_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_TrustedCommitmentTransaction_keys(uint32_t this_arg) { + LDKTrustedCommitmentTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKTxCreationKeys ret_var = TrustedCommitmentTransaction_keys(&this_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -33023,141 +30483,136 @@ uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_clone(u return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_write(uint32_t obj) { - LDKNodeAnnouncementInfo obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = NodeAnnouncementInfo_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +jboolean __attribute__((visibility("default"))) TS_TrustedCommitmentTransaction_opt_anchors(uint32_t this_arg) { + LDKTrustedCommitmentTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + jboolean ret_val = TrustedCommitmentTransaction_opt_anchors(&this_arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_NodeAnnouncementInfoDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeAnnouncementInfoDecodeErrorZ), "LDKCResult_NodeAnnouncementInfoDecodeErrorZ"); - *ret_conv = NodeAnnouncementInfo_read(ser_ref); +uint32_t __attribute__((visibility("default"))) TS_TrustedCommitmentTransaction_get_htlc_sigs(uint32_t this_arg, int8_tArray htlc_base_key, uint32_t channel_parameters) { + LDKTrustedCommitmentTransaction this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + unsigned char htlc_base_key_arr[32]; + CHECK(htlc_base_key->arr_len == 32); + memcpy(htlc_base_key_arr, htlc_base_key->elems, 32); + unsigned char (*htlc_base_key_ref)[32] = &htlc_base_key_arr; + LDKDirectedChannelTransactionParameters channel_parameters_conv; + channel_parameters_conv.inner = (void*)(channel_parameters & (~1)); + channel_parameters_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_parameters_conv); + LDKCResult_CVec_SignatureZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_SignatureZNoneZ), "LDKCResult_CVec_SignatureZNoneZ"); + *ret_conv = TrustedCommitmentTransaction_get_htlc_sigs(&this_arg_conv, htlc_base_key_ref, &channel_parameters_conv); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_NodeInfo_free(uint32_t this_obj) { - LDKNodeInfo this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - NodeInfo_free(this_obj_conv); +int64_t __attribute__((visibility("default"))) TS_get_commitment_transaction_number_obscure_factor(int8_tArray broadcaster_payment_basepoint, int8_tArray countersignatory_payment_basepoint, jboolean outbound_from_broadcaster) { + LDKPublicKey broadcaster_payment_basepoint_ref; + CHECK(broadcaster_payment_basepoint->arr_len == 33); + memcpy(broadcaster_payment_basepoint_ref.compressed_form, broadcaster_payment_basepoint->elems, 33); + LDKPublicKey countersignatory_payment_basepoint_ref; + CHECK(countersignatory_payment_basepoint->arr_len == 33); + memcpy(countersignatory_payment_basepoint_ref.compressed_form, countersignatory_payment_basepoint->elems, 33); + int64_t ret_val = get_commitment_transaction_number_obscure_factor(broadcaster_payment_basepoint_ref, countersignatory_payment_basepoint_ref, outbound_from_broadcaster); + return ret_val; } -void __attribute__((visibility("default"))) TS_NodeInfo_set_channels(uint32_t this_ptr, int64_tArray val) { - LDKNodeInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_u64Z val_constr; - val_constr.datalen = *((uint32_t*)val); - if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements"); - else - val_constr.data = NULL; - int64_t* val_vals = (int64_t*)(val + 4); - for (size_t i = 0; i < val_constr.datalen; i++) { - int64_t val_conv_8 = val_vals[i]; - val_constr.data[i] = val_conv_8; - } - NodeInfo_set_channels(&this_ptr_conv, val_constr); +jboolean __attribute__((visibility("default"))) TS_InitFeatures_eq(uint32_t a, uint32_t b) { + LDKInitFeatures a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + LDKInitFeatures b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + jboolean ret_val = InitFeatures_eq(&a_conv, &b_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_NodeInfo_get_lowest_inbound_channel_fees(uint32_t this_ptr) { - LDKNodeInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKRoutingFees ret_var = NodeInfo_get_lowest_inbound_channel_fees(&this_ptr_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } - return ret_ref; +jboolean __attribute__((visibility("default"))) TS_NodeFeatures_eq(uint32_t a, uint32_t b) { + LDKNodeFeatures a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + LDKNodeFeatures b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + jboolean ret_val = NodeFeatures_eq(&a_conv, &b_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_NodeInfo_set_lowest_inbound_channel_fees(uint32_t this_ptr, uint32_t val) { - LDKNodeInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKRoutingFees val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = RoutingFees_clone(&val_conv); - NodeInfo_set_lowest_inbound_channel_fees(&this_ptr_conv, val_conv); +jboolean __attribute__((visibility("default"))) TS_ChannelFeatures_eq(uint32_t a, uint32_t b) { + LDKChannelFeatures a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + LDKChannelFeatures b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + jboolean ret_val = ChannelFeatures_eq(&a_conv, &b_conv); + return ret_val; +} + +jboolean __attribute__((visibility("default"))) TS_InvoiceFeatures_eq(uint32_t a, uint32_t b) { + LDKInvoiceFeatures a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + LDKInvoiceFeatures b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + jboolean ret_val = InvoiceFeatures_eq(&a_conv, &b_conv); + return ret_val; +} + +jboolean __attribute__((visibility("default"))) TS_ChannelTypeFeatures_eq(uint32_t a, uint32_t b) { + LDKChannelTypeFeatures a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + LDKChannelTypeFeatures b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + jboolean ret_val = ChannelTypeFeatures_eq(&a_conv, &b_conv); + return ret_val; +} + +static inline uint64_t InitFeatures_clone_ptr(LDKInitFeatures *NONNULL_PTR arg) { + LDKInitFeatures ret_var = InitFeatures_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -uint32_t __attribute__((visibility("default"))) TS_NodeInfo_get_announcement_info(uint32_t this_ptr) { - LDKNodeInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeAnnouncementInfo ret_var = NodeInfo_get_announcement_info(&this_ptr_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } return ret_ref; } - -void __attribute__((visibility("default"))) TS_NodeInfo_set_announcement_info(uint32_t this_ptr, uint32_t val) { - LDKNodeInfo this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeAnnouncementInfo val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = NodeAnnouncementInfo_clone(&val_conv); - NodeInfo_set_announcement_info(&this_ptr_conv, val_conv); +int64_t __attribute__((visibility("default"))) TS_InitFeatures_clone_ptr(uint32_t arg) { + LDKInitFeatures arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = InitFeatures_clone_ptr(&arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_NodeInfo_new(int64_tArray channels_arg, uint32_t lowest_inbound_channel_fees_arg, uint32_t announcement_info_arg) { - LDKCVec_u64Z channels_arg_constr; - channels_arg_constr.datalen = *((uint32_t*)channels_arg); - if (channels_arg_constr.datalen > 0) - channels_arg_constr.data = MALLOC(channels_arg_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements"); - else - channels_arg_constr.data = NULL; - int64_t* channels_arg_vals = (int64_t*)(channels_arg + 4); - for (size_t i = 0; i < channels_arg_constr.datalen; i++) { - int64_t channels_arg_conv_8 = channels_arg_vals[i]; - channels_arg_constr.data[i] = channels_arg_conv_8; - } - LDKRoutingFees lowest_inbound_channel_fees_arg_conv; - lowest_inbound_channel_fees_arg_conv.inner = (void*)(lowest_inbound_channel_fees_arg & (~1)); - lowest_inbound_channel_fees_arg_conv.is_owned = (lowest_inbound_channel_fees_arg & 1) || (lowest_inbound_channel_fees_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(lowest_inbound_channel_fees_arg_conv); - lowest_inbound_channel_fees_arg_conv = RoutingFees_clone(&lowest_inbound_channel_fees_arg_conv); - LDKNodeAnnouncementInfo announcement_info_arg_conv; - announcement_info_arg_conv.inner = (void*)(announcement_info_arg & (~1)); - announcement_info_arg_conv.is_owned = (announcement_info_arg & 1) || (announcement_info_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(announcement_info_arg_conv); - announcement_info_arg_conv = NodeAnnouncementInfo_clone(&announcement_info_arg_conv); - LDKNodeInfo ret_var = NodeInfo_new(channels_arg_constr, lowest_inbound_channel_fees_arg_conv, announcement_info_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_InitFeatures_clone(uint32_t orig) { + LDKInitFeatures orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKInitFeatures ret_var = InitFeatures_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -33169,8 +30624,8 @@ uint32_t __attribute__((visibility("default"))) TS_NodeInfo_new(int64_tArray ch return ret_ref; } -static inline uint64_t NodeInfo_clone_ptr(LDKNodeInfo *NONNULL_PTR arg) { - LDKNodeInfo ret_var = NodeInfo_clone(arg); +static inline uint64_t NodeFeatures_clone_ptr(LDKNodeFeatures *NONNULL_PTR arg) { + LDKNodeFeatures ret_var = NodeFeatures_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -33181,21 +30636,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_NodeInfo_clone_ptr(uint32_t arg) { - LDKNodeInfo arg_conv; +int64_t __attribute__((visibility("default"))) TS_NodeFeatures_clone_ptr(uint32_t arg) { + LDKNodeFeatures arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = NodeInfo_clone_ptr(&arg_conv); + int64_t ret_val = NodeFeatures_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_NodeInfo_clone(uint32_t orig) { - LDKNodeInfo orig_conv; +uint32_t __attribute__((visibility("default"))) TS_NodeFeatures_clone(uint32_t orig) { + LDKNodeFeatures orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKNodeInfo ret_var = NodeInfo_clone(&orig_conv); + LDKNodeFeatures ret_var = NodeFeatures_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -33207,53 +30662,33 @@ uint32_t __attribute__((visibility("default"))) TS_NodeInfo_clone(uint32_t orig return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_NodeInfo_write(uint32_t obj) { - LDKNodeInfo obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = NodeInfo_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_NodeInfo_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_NodeInfoDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeInfoDecodeErrorZ), "LDKCResult_NodeInfoDecodeErrorZ"); - *ret_conv = NodeInfo_read(ser_ref); - return (uint64_t)ret_conv; +static inline uint64_t ChannelFeatures_clone_ptr(LDKChannelFeatures *NONNULL_PTR arg) { + LDKChannelFeatures ret_var = ChannelFeatures_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -int8_tArray __attribute__((visibility("default"))) TS_NetworkGraph_write(uint32_t obj) { - LDKNetworkGraph obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = NetworkGraph_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; + return ret_ref; } - -uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_NetworkGraphDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NetworkGraphDecodeErrorZ), "LDKCResult_NetworkGraphDecodeErrorZ"); - *ret_conv = NetworkGraph_read(ser_ref); - return (uint64_t)ret_conv; +int64_t __attribute__((visibility("default"))) TS_ChannelFeatures_clone_ptr(uint32_t arg) { + LDKChannelFeatures arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ChannelFeatures_clone_ptr(&arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_new(int8_tArray genesis_hash) { - LDKThirtyTwoBytes genesis_hash_ref; - CHECK(*((uint32_t*)genesis_hash) == 32); - memcpy(genesis_hash_ref.data, (uint8_t*)(genesis_hash + 4), 32); - LDKNetworkGraph ret_var = NetworkGraph_new(genesis_hash_ref); +uint32_t __attribute__((visibility("default"))) TS_ChannelFeatures_clone(uint32_t orig) { + LDKChannelFeatures orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKChannelFeatures ret_var = ChannelFeatures_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -33265,12 +30700,33 @@ uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_new(int8_tArray return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_read_only(uint32_t this_arg) { - LDKNetworkGraph this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKReadOnlyNetworkGraph ret_var = NetworkGraph_read_only(&this_arg_conv); +static inline uint64_t InvoiceFeatures_clone_ptr(LDKInvoiceFeatures *NONNULL_PTR arg) { + LDKInvoiceFeatures ret_var = InvoiceFeatures_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_InvoiceFeatures_clone_ptr(uint32_t arg) { + LDKInvoiceFeatures arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = InvoiceFeatures_clone_ptr(&arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_InvoiceFeatures_clone(uint32_t orig) { + LDKInvoiceFeatures orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKInvoiceFeatures ret_var = InvoiceFeatures_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -33278,184 +30734,90 @@ uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_read_only(uint3 ret_ref = (uint64_t)ret_var.inner; if (ret_var.is_owned) { ret_ref |= 1; - } - return ret_ref; -} - -uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_update_node_from_announcement(uint32_t this_arg, uint32_t msg) { - LDKNetworkGraph this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKNodeAnnouncement msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = NetworkGraph_update_node_from_announcement(&this_arg_conv, &msg_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_update_node_from_unsigned_announcement(uint32_t this_arg, uint32_t msg) { - LDKNetworkGraph this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKUnsignedNodeAnnouncement msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = NetworkGraph_update_node_from_unsigned_announcement(&this_arg_conv, &msg_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_update_channel_from_announcement(uint32_t this_arg, uint32_t msg, uint32_t chain_access) { - LDKNetworkGraph this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKChannelAnnouncement msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - void* chain_access_ptr = (void*)(((uint64_t)chain_access) & ~1); - CHECK_ACCESS(chain_access_ptr); - LDKCOption_AccessZ chain_access_conv = *(LDKCOption_AccessZ*)(chain_access_ptr); - // Warning: we may need a move here but no clone is available for LDKCOption_AccessZ - if (chain_access_conv.tag == LDKCOption_AccessZ_Some) { - // Manually implement clone for Java trait instances - } - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = NetworkGraph_update_channel_from_announcement(&this_arg_conv, &msg_conv, chain_access_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_update_channel_from_unsigned_announcement(uint32_t this_arg, uint32_t msg, uint32_t chain_access) { - LDKNetworkGraph this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKUnsignedChannelAnnouncement msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - void* chain_access_ptr = (void*)(((uint64_t)chain_access) & ~1); - CHECK_ACCESS(chain_access_ptr); - LDKCOption_AccessZ chain_access_conv = *(LDKCOption_AccessZ*)(chain_access_ptr); - // Warning: we may need a move here but no clone is available for LDKCOption_AccessZ - if (chain_access_conv.tag == LDKCOption_AccessZ_Some) { - // Manually implement clone for Java trait instances - } - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = NetworkGraph_update_channel_from_unsigned_announcement(&this_arg_conv, &msg_conv, chain_access_conv); - return (uint64_t)ret_conv; -} - -void __attribute__((visibility("default"))) TS_NetworkGraph_close_channel_from_update(uint32_t this_arg, int64_t short_channel_id, jboolean is_permanent) { - LDKNetworkGraph this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - NetworkGraph_close_channel_from_update(&this_arg_conv, short_channel_id, is_permanent); + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_NetworkGraph_fail_node(uint32_t this_arg, int8_tArray _node_id, jboolean is_permanent) { - LDKNetworkGraph this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKPublicKey _node_id_ref; - CHECK(*((uint32_t*)_node_id) == 33); - memcpy(_node_id_ref.compressed_form, (uint8_t*)(_node_id + 4), 33); - NetworkGraph_fail_node(&this_arg_conv, _node_id_ref, is_permanent); +static inline uint64_t ChannelTypeFeatures_clone_ptr(LDKChannelTypeFeatures *NONNULL_PTR arg) { + LDKChannelTypeFeatures ret_var = ChannelTypeFeatures_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -void __attribute__((visibility("default"))) TS_NetworkGraph_remove_stale_channels_with_time(uint32_t this_arg, int64_t current_time_unix) { - LDKNetworkGraph this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - NetworkGraph_remove_stale_channels_with_time(&this_arg_conv, current_time_unix); + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_ChannelTypeFeatures_clone_ptr(uint32_t arg) { + LDKChannelTypeFeatures arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ChannelTypeFeatures_clone_ptr(&arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_update_channel(uint32_t this_arg, uint32_t msg) { - LDKNetworkGraph this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKChannelUpdate msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = NetworkGraph_update_channel(&this_arg_conv, &msg_conv); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelTypeFeatures_clone(uint32_t orig) { + LDKChannelTypeFeatures orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKChannelTypeFeatures ret_var = ChannelTypeFeatures_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_update_channel_unsigned(uint32_t this_arg, uint32_t msg) { - LDKNetworkGraph this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKUnsignedChannelUpdate msg_conv; - msg_conv.inner = (void*)(msg & (~1)); - msg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); - LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); - *ret_conv = NetworkGraph_update_channel_unsigned(&this_arg_conv, &msg_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_InitFeatures_free(uint32_t this_obj) { + LDKInitFeatures this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + InitFeatures_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_ReadOnlyNetworkGraph_get_addresses(uint32_t this_arg, int8_tArray pubkey) { - LDKReadOnlyNetworkGraph this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKPublicKey pubkey_ref; - CHECK(*((uint32_t*)pubkey) == 33); - memcpy(pubkey_ref.compressed_form, (uint8_t*)(pubkey + 4), 33); - LDKCOption_CVec_NetAddressZZ *ret_copy = MALLOC(sizeof(LDKCOption_CVec_NetAddressZZ), "LDKCOption_CVec_NetAddressZZ"); - *ret_copy = ReadOnlyNetworkGraph_get_addresses(&this_arg_conv, pubkey_ref); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_NodeFeatures_free(uint32_t this_obj) { + LDKNodeFeatures this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + NodeFeatures_free(this_obj_conv); } -void __attribute__((visibility("default"))) TS_RouteHop_free(uint32_t this_obj) { - LDKRouteHop this_obj_conv; +void __attribute__((visibility("default"))) TS_ChannelFeatures_free(uint32_t this_obj) { + LDKChannelFeatures this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - RouteHop_free(this_obj_conv); + ChannelFeatures_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_RouteHop_get_pubkey(uint32_t this_ptr) { - LDKRouteHop this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), RouteHop_get_pubkey(&this_ptr_conv).compressed_form, 33); - return ret_arr; +void __attribute__((visibility("default"))) TS_InvoiceFeatures_free(uint32_t this_obj) { + LDKInvoiceFeatures this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + InvoiceFeatures_free(this_obj_conv); } -void __attribute__((visibility("default"))) TS_RouteHop_set_pubkey(uint32_t this_ptr, int8_tArray val) { - LDKRouteHop this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - RouteHop_set_pubkey(&this_ptr_conv, val_ref); +void __attribute__((visibility("default"))) TS_ChannelTypeFeatures_free(uint32_t this_obj) { + LDKChannelTypeFeatures this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + ChannelTypeFeatures_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_RouteHop_get_node_features(uint32_t this_ptr) { - LDKRouteHop this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeFeatures ret_var = RouteHop_get_node_features(&this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_InitFeatures_empty() { + LDKInitFeatures ret_var = InitFeatures_empty(); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -33467,42 +30829,8 @@ uint32_t __attribute__((visibility("default"))) TS_RouteHop_get_node_features(u return ret_ref; } -void __attribute__((visibility("default"))) TS_RouteHop_set_node_features(uint32_t this_ptr, uint32_t val) { - LDKRouteHop this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKNodeFeatures val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = NodeFeatures_clone(&val_conv); - RouteHop_set_node_features(&this_ptr_conv, val_conv); -} - -int64_t __attribute__((visibility("default"))) TS_RouteHop_get_short_channel_id(uint32_t this_ptr) { - LDKRouteHop this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = RouteHop_get_short_channel_id(&this_ptr_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_RouteHop_set_short_channel_id(uint32_t this_ptr, int64_t val) { - LDKRouteHop this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - RouteHop_set_short_channel_id(&this_ptr_conv, val); -} - -uint32_t __attribute__((visibility("default"))) TS_RouteHop_get_channel_features(uint32_t this_ptr) { - LDKRouteHop this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelFeatures ret_var = RouteHop_get_channel_features(&this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_InitFeatures_known() { + LDKInitFeatures ret_var = InitFeatures_known(); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -33514,68 +30842,52 @@ uint32_t __attribute__((visibility("default"))) TS_RouteHop_get_channel_feature return ret_ref; } -void __attribute__((visibility("default"))) TS_RouteHop_set_channel_features(uint32_t this_ptr, uint32_t val) { - LDKRouteHop this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKChannelFeatures val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = ChannelFeatures_clone(&val_conv); - RouteHop_set_channel_features(&this_ptr_conv, val_conv); -} - -int64_t __attribute__((visibility("default"))) TS_RouteHop_get_fee_msat(uint32_t this_ptr) { - LDKRouteHop this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = RouteHop_get_fee_msat(&this_ptr_conv); +jboolean __attribute__((visibility("default"))) TS_InitFeatures_requires_unknown_bits(uint32_t this_arg) { + LDKInitFeatures this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + jboolean ret_val = InitFeatures_requires_unknown_bits(&this_arg_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_RouteHop_set_fee_msat(uint32_t this_ptr, int64_t val) { - LDKRouteHop this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - RouteHop_set_fee_msat(&this_ptr_conv, val); -} - -int32_t __attribute__((visibility("default"))) TS_RouteHop_get_cltv_expiry_delta(uint32_t this_ptr) { - LDKRouteHop this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = RouteHop_get_cltv_expiry_delta(&this_ptr_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_NodeFeatures_empty() { + LDKNodeFeatures ret_var = NodeFeatures_empty(); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_RouteHop_set_cltv_expiry_delta(uint32_t this_ptr, int32_t val) { - LDKRouteHop this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - RouteHop_set_cltv_expiry_delta(&this_ptr_conv, val); +uint32_t __attribute__((visibility("default"))) TS_NodeFeatures_known() { + LDKNodeFeatures ret_var = NodeFeatures_known(); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_RouteHop_new(int8_tArray pubkey_arg, uint32_t node_features_arg, int64_t short_channel_id_arg, uint32_t channel_features_arg, int64_t fee_msat_arg, int32_t cltv_expiry_delta_arg) { - LDKPublicKey pubkey_arg_ref; - CHECK(*((uint32_t*)pubkey_arg) == 33); - memcpy(pubkey_arg_ref.compressed_form, (uint8_t*)(pubkey_arg + 4), 33); - LDKNodeFeatures node_features_arg_conv; - node_features_arg_conv.inner = (void*)(node_features_arg & (~1)); - node_features_arg_conv.is_owned = (node_features_arg & 1) || (node_features_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(node_features_arg_conv); - node_features_arg_conv = NodeFeatures_clone(&node_features_arg_conv); - LDKChannelFeatures channel_features_arg_conv; - channel_features_arg_conv.inner = (void*)(channel_features_arg & (~1)); - channel_features_arg_conv.is_owned = (channel_features_arg & 1) || (channel_features_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_features_arg_conv); - channel_features_arg_conv = ChannelFeatures_clone(&channel_features_arg_conv); - LDKRouteHop ret_var = RouteHop_new(pubkey_arg_ref, node_features_arg_conv, short_channel_id_arg, channel_features_arg_conv, fee_msat_arg, cltv_expiry_delta_arg); +jboolean __attribute__((visibility("default"))) TS_NodeFeatures_requires_unknown_bits(uint32_t this_arg) { + LDKNodeFeatures this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + jboolean ret_val = NodeFeatures_requires_unknown_bits(&this_arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_ChannelFeatures_empty() { + LDKChannelFeatures ret_var = ChannelFeatures_empty(); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -33587,33 +30899,8 @@ uint32_t __attribute__((visibility("default"))) TS_RouteHop_new(int8_tArray pub return ret_ref; } -static inline uint64_t RouteHop_clone_ptr(LDKRouteHop *NONNULL_PTR arg) { - LDKRouteHop ret_var = RouteHop_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_RouteHop_clone_ptr(uint32_t arg) { - LDKRouteHop arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = RouteHop_clone_ptr(&arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_RouteHop_clone(uint32_t orig) { - LDKRouteHop orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKRouteHop ret_var = RouteHop_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelFeatures_known() { + LDKChannelFeatures ret_var = ChannelFeatures_known(); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -33625,193 +30912,52 @@ uint32_t __attribute__((visibility("default"))) TS_RouteHop_clone(uint32_t orig return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_RouteHop_hash(uint32_t o) { - LDKRouteHop o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = RouteHop_hash(&o_conv); - return ret_val; -} - -jboolean __attribute__((visibility("default"))) TS_RouteHop_eq(uint32_t a, uint32_t b) { - LDKRouteHop a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKRouteHop b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = RouteHop_eq(&a_conv, &b_conv); +jboolean __attribute__((visibility("default"))) TS_ChannelFeatures_requires_unknown_bits(uint32_t this_arg) { + LDKChannelFeatures this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + jboolean ret_val = ChannelFeatures_requires_unknown_bits(&this_arg_conv); return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_RouteHop_write(uint32_t obj) { - LDKRouteHop obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = RouteHop_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_RouteHop_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_RouteHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHopDecodeErrorZ), "LDKCResult_RouteHopDecodeErrorZ"); - *ret_conv = RouteHop_read(ser_ref); - return (uint64_t)ret_conv; -} - -void __attribute__((visibility("default"))) TS_Route_free(uint32_t this_obj) { - LDKRoute this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - Route_free(this_obj_conv); -} - -ptrArray __attribute__((visibility("default"))) TS_Route_get_paths(uint32_t this_ptr) { - LDKRoute this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_CVec_RouteHopZZ ret_var = Route_get_paths(&this_ptr_conv); - ptrArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native ptrArray Bytes"); - uint32_tArray *ret_arr_ptr = (uint32_tArray*)(ret_arr + 4); - for (size_t m = 0; m < ret_var.datalen; m++) { - LDKCVec_RouteHopZ ret_conv_12_var = ret_var.data[m]; - uint32_tArray ret_conv_12_arr = NULL; - ret_conv_12_arr = init_arr(ret_conv_12_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_conv_12_arr_ptr = (uint32_t*)(ret_conv_12_arr + 4); - for (size_t k = 0; k < ret_conv_12_var.datalen; k++) { - LDKRouteHop ret_conv_12_conv_10_var = ret_conv_12_var.data[k]; - uint64_t ret_conv_12_conv_10_ref = 0; - CHECK((((uint64_t)ret_conv_12_conv_10_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_12_conv_10_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_12_conv_10_var); - ret_conv_12_conv_10_ref = (uint64_t)ret_conv_12_conv_10_var.inner; - if (ret_conv_12_conv_10_var.is_owned) { - ret_conv_12_conv_10_ref |= 1; - } - ret_conv_12_arr_ptr[k] = ret_conv_12_conv_10_ref; - } - - FREE(ret_conv_12_var.data); - ret_arr_ptr[m] = ret_conv_12_arr; - } - - FREE(ret_var.data); - return ret_arr; -} - -void __attribute__((visibility("default"))) TS_Route_set_paths(uint32_t this_ptr, ptrArray val) { - LDKRoute this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_CVec_RouteHopZZ val_constr; - val_constr.datalen = *((uint32_t*)val); - if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKCVec_RouteHopZ), "LDKCVec_CVec_RouteHopZZ Elements"); - else - val_constr.data = NULL; - uint32_tArray* val_vals = (uint32_tArray*)(val + 4); - for (size_t m = 0; m < val_constr.datalen; m++) { - uint32_tArray val_conv_12 = val_vals[m]; - LDKCVec_RouteHopZ val_conv_12_constr; - val_conv_12_constr.datalen = *((uint32_t*)val_conv_12); - if (val_conv_12_constr.datalen > 0) - val_conv_12_constr.data = MALLOC(val_conv_12_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); - else - val_conv_12_constr.data = NULL; - uint32_t* val_conv_12_vals = (uint32_t*)(val_conv_12 + 4); - for (size_t k = 0; k < val_conv_12_constr.datalen; k++) { - uint32_t val_conv_12_conv_10 = val_conv_12_vals[k]; - LDKRouteHop val_conv_12_conv_10_conv; - val_conv_12_conv_10_conv.inner = (void*)(val_conv_12_conv_10 & (~1)); - val_conv_12_conv_10_conv.is_owned = (val_conv_12_conv_10 & 1) || (val_conv_12_conv_10 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_12_conv_10_conv); - val_conv_12_conv_10_conv = RouteHop_clone(&val_conv_12_conv_10_conv); - val_conv_12_constr.data[k] = val_conv_12_conv_10_conv; - } - val_constr.data[m] = val_conv_12_constr; +uint32_t __attribute__((visibility("default"))) TS_InvoiceFeatures_empty() { + LDKInvoiceFeatures ret_var = InvoiceFeatures_empty(); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } - Route_set_paths(&this_ptr_conv, val_constr); + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_Route_get_payee(uint32_t this_ptr) { - LDKRoute this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPayee ret_var = Route_get_payee(&this_ptr_conv); +uint32_t __attribute__((visibility("default"))) TS_InvoiceFeatures_known() { + LDKInvoiceFeatures ret_var = InvoiceFeatures_known(); uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } return ret_ref; } -void __attribute__((visibility("default"))) TS_Route_set_payee(uint32_t this_ptr, uint32_t val) { - LDKRoute this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPayee val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = Payee_clone(&val_conv); - Route_set_payee(&this_ptr_conv, val_conv); +jboolean __attribute__((visibility("default"))) TS_InvoiceFeatures_requires_unknown_bits(uint32_t this_arg) { + LDKInvoiceFeatures this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + jboolean ret_val = InvoiceFeatures_requires_unknown_bits(&this_arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Route_new(ptrArray paths_arg, uint32_t payee_arg) { - LDKCVec_CVec_RouteHopZZ paths_arg_constr; - paths_arg_constr.datalen = *((uint32_t*)paths_arg); - if (paths_arg_constr.datalen > 0) - paths_arg_constr.data = MALLOC(paths_arg_constr.datalen * sizeof(LDKCVec_RouteHopZ), "LDKCVec_CVec_RouteHopZZ Elements"); - else - paths_arg_constr.data = NULL; - uint32_tArray* paths_arg_vals = (uint32_tArray*)(paths_arg + 4); - for (size_t m = 0; m < paths_arg_constr.datalen; m++) { - uint32_tArray paths_arg_conv_12 = paths_arg_vals[m]; - LDKCVec_RouteHopZ paths_arg_conv_12_constr; - paths_arg_conv_12_constr.datalen = *((uint32_t*)paths_arg_conv_12); - if (paths_arg_conv_12_constr.datalen > 0) - paths_arg_conv_12_constr.data = MALLOC(paths_arg_conv_12_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); - else - paths_arg_conv_12_constr.data = NULL; - uint32_t* paths_arg_conv_12_vals = (uint32_t*)(paths_arg_conv_12 + 4); - for (size_t k = 0; k < paths_arg_conv_12_constr.datalen; k++) { - uint32_t paths_arg_conv_12_conv_10 = paths_arg_conv_12_vals[k]; - LDKRouteHop paths_arg_conv_12_conv_10_conv; - paths_arg_conv_12_conv_10_conv.inner = (void*)(paths_arg_conv_12_conv_10 & (~1)); - paths_arg_conv_12_conv_10_conv.is_owned = (paths_arg_conv_12_conv_10 & 1) || (paths_arg_conv_12_conv_10 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(paths_arg_conv_12_conv_10_conv); - paths_arg_conv_12_conv_10_conv = RouteHop_clone(&paths_arg_conv_12_conv_10_conv); - paths_arg_conv_12_constr.data[k] = paths_arg_conv_12_conv_10_conv; - } - paths_arg_constr.data[m] = paths_arg_conv_12_constr; - } - LDKPayee payee_arg_conv; - payee_arg_conv.inner = (void*)(payee_arg & (~1)); - payee_arg_conv.is_owned = (payee_arg & 1) || (payee_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(payee_arg_conv); - payee_arg_conv = Payee_clone(&payee_arg_conv); - LDKRoute ret_var = Route_new(paths_arg_constr, payee_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelTypeFeatures_empty() { + LDKChannelTypeFeatures ret_var = ChannelTypeFeatures_empty(); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -33822,34 +30968,9 @@ uint32_t __attribute__((visibility("default"))) TS_Route_new(ptrArray paths_arg } return ret_ref; } - -static inline uint64_t Route_clone_ptr(LDKRoute *NONNULL_PTR arg) { - LDKRoute ret_var = Route_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_Route_clone_ptr(uint32_t arg) { - LDKRoute arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = Route_clone_ptr(&arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_Route_clone(uint32_t orig) { - LDKRoute orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKRoute ret_var = Route_clone(&orig_conv); + +uint32_t __attribute__((visibility("default"))) TS_ChannelTypeFeatures_known() { + LDKChannelTypeFeatures ret_var = ChannelTypeFeatures_known(); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -33861,81 +30982,155 @@ uint32_t __attribute__((visibility("default"))) TS_Route_clone(uint32_t orig) { return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_Route_hash(uint32_t o) { - LDKRoute o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = Route_hash(&o_conv); +jboolean __attribute__((visibility("default"))) TS_ChannelTypeFeatures_requires_unknown_bits(uint32_t this_arg) { + LDKChannelTypeFeatures this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + jboolean ret_val = ChannelTypeFeatures_requires_unknown_bits(&this_arg_conv); return ret_val; } -jboolean __attribute__((visibility("default"))) TS_Route_eq(uint32_t a, uint32_t b) { - LDKRoute a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKRoute b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = Route_eq(&a_conv, &b_conv); - return ret_val; +int8_tArray __attribute__((visibility("default"))) TS_InitFeatures_write(uint32_t obj) { + LDKInitFeatures obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = InitFeatures_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -int64_t __attribute__((visibility("default"))) TS_Route_get_total_fees(uint32_t this_arg) { - LDKRoute this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = Route_get_total_fees(&this_arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_InitFeatures_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_InitFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InitFeaturesDecodeErrorZ), "LDKCResult_InitFeaturesDecodeErrorZ"); + *ret_conv = InitFeatures_read(ser_ref); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_Route_get_total_amount(uint32_t this_arg) { - LDKRoute this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = Route_get_total_amount(&this_arg_conv); - return ret_val; +int8_tArray __attribute__((visibility("default"))) TS_ChannelFeatures_write(uint32_t obj) { + LDKChannelFeatures obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ChannelFeatures_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -int8_tArray __attribute__((visibility("default"))) TS_Route_write(uint32_t obj) { - LDKRoute obj_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelFeatures_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ChannelFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelFeaturesDecodeErrorZ), "LDKCResult_ChannelFeaturesDecodeErrorZ"); + *ret_conv = ChannelFeatures_read(ser_ref); + return (uint64_t)ret_conv; +} + +int8_tArray __attribute__((visibility("default"))) TS_NodeFeatures_write(uint32_t obj) { + LDKNodeFeatures obj_conv; obj_conv.inner = (void*)(obj & (~1)); obj_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = Route_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + LDKCVec_u8Z ret_var = NodeFeatures_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_Route_read(int8_tArray ser) { +uint32_t __attribute__((visibility("default"))) TS_NodeFeatures_read(int8_tArray ser) { LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_RouteDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteDecodeErrorZ), "LDKCResult_RouteDecodeErrorZ"); - *ret_conv = Route_read(ser_ref); + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_NodeFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeFeaturesDecodeErrorZ), "LDKCResult_NodeFeaturesDecodeErrorZ"); + *ret_conv = NodeFeatures_read(ser_ref); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_RouteParameters_free(uint32_t this_obj) { - LDKRouteParameters this_obj_conv; +int8_tArray __attribute__((visibility("default"))) TS_InvoiceFeatures_write(uint32_t obj) { + LDKInvoiceFeatures obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = InvoiceFeatures_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_InvoiceFeatures_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_InvoiceFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceFeaturesDecodeErrorZ), "LDKCResult_InvoiceFeaturesDecodeErrorZ"); + *ret_conv = InvoiceFeatures_read(ser_ref); + return (uint64_t)ret_conv; +} + +int8_tArray __attribute__((visibility("default"))) TS_ChannelTypeFeatures_write(uint32_t obj) { + LDKChannelTypeFeatures obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ChannelTypeFeatures_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_ChannelTypeFeatures_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ChannelTypeFeaturesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelTypeFeaturesDecodeErrorZ), "LDKCResult_ChannelTypeFeaturesDecodeErrorZ"); + *ret_conv = ChannelTypeFeatures_read(ser_ref); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_ShutdownScript_free(uint32_t this_obj) { + LDKShutdownScript this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - RouteParameters_free(this_obj_conv); + ShutdownScript_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_RouteParameters_get_payee(uint32_t this_ptr) { - LDKRouteParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPayee ret_var = RouteParameters_get_payee(&this_ptr_conv); +static inline uint64_t ShutdownScript_clone_ptr(LDKShutdownScript *NONNULL_PTR arg) { + LDKShutdownScript ret_var = ShutdownScript_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_ShutdownScript_clone_ptr(uint32_t arg) { + LDKShutdownScript arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ShutdownScript_clone_ptr(&arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_ShutdownScript_clone(uint32_t orig) { + LDKShutdownScript orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKShutdownScript ret_var = ShutdownScript_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -33947,60 +31142,43 @@ uint32_t __attribute__((visibility("default"))) TS_RouteParameters_get_payee(ui return ret_ref; } -void __attribute__((visibility("default"))) TS_RouteParameters_set_payee(uint32_t this_ptr, uint32_t val) { - LDKRouteParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPayee val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = Payee_clone(&val_conv); - RouteParameters_set_payee(&this_ptr_conv, val_conv); -} - -int64_t __attribute__((visibility("default"))) TS_RouteParameters_get_final_value_msat(uint32_t this_ptr) { - LDKRouteParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = RouteParameters_get_final_value_msat(&this_ptr_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_RouteParameters_set_final_value_msat(uint32_t this_ptr, int64_t val) { - LDKRouteParameters this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - RouteParameters_set_final_value_msat(&this_ptr_conv, val); +void __attribute__((visibility("default"))) TS_InvalidShutdownScript_free(uint32_t this_obj) { + LDKInvalidShutdownScript this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + InvalidShutdownScript_free(this_obj_conv); } -int32_t __attribute__((visibility("default"))) TS_RouteParameters_get_final_cltv_expiry_delta(uint32_t this_ptr) { - LDKRouteParameters this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_InvalidShutdownScript_get_script(uint32_t this_ptr) { + LDKInvalidShutdownScript this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int32_t ret_val = RouteParameters_get_final_cltv_expiry_delta(&this_ptr_conv); - return ret_val; + LDKu8slice ret_var = InvalidShutdownScript_get_script(&this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + return ret_arr; } -void __attribute__((visibility("default"))) TS_RouteParameters_set_final_cltv_expiry_delta(uint32_t this_ptr, int32_t val) { - LDKRouteParameters this_ptr_conv; +void __attribute__((visibility("default"))) TS_InvalidShutdownScript_set_script(uint32_t this_ptr, int8_tArray val) { + LDKInvalidShutdownScript this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - RouteParameters_set_final_cltv_expiry_delta(&this_ptr_conv, val); + LDKCVec_u8Z val_ref; + val_ref.datalen = val->arr_len; + val_ref.data = MALLOC(val_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(val_ref.data, val->elems, val_ref.datalen); + InvalidShutdownScript_set_script(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_RouteParameters_new(uint32_t payee_arg, int64_t final_value_msat_arg, int32_t final_cltv_expiry_delta_arg) { - LDKPayee payee_arg_conv; - payee_arg_conv.inner = (void*)(payee_arg & (~1)); - payee_arg_conv.is_owned = (payee_arg & 1) || (payee_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(payee_arg_conv); - payee_arg_conv = Payee_clone(&payee_arg_conv); - LDKRouteParameters ret_var = RouteParameters_new(payee_arg_conv, final_value_msat_arg, final_cltv_expiry_delta_arg); +uint32_t __attribute__((visibility("default"))) TS_InvalidShutdownScript_new(int8_tArray script_arg) { + LDKCVec_u8Z script_arg_ref; + script_arg_ref.datalen = script_arg->arr_len; + script_arg_ref.data = MALLOC(script_arg_ref.datalen, "LDKCVec_u8Z Bytes"); + memcpy(script_arg_ref.data, script_arg->elems, script_arg_ref.datalen); + LDKInvalidShutdownScript ret_var = InvalidShutdownScript_new(script_arg_ref); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -34012,8 +31190,8 @@ uint32_t __attribute__((visibility("default"))) TS_RouteParameters_new(uint32_t return ret_ref; } -static inline uint64_t RouteParameters_clone_ptr(LDKRouteParameters *NONNULL_PTR arg) { - LDKRouteParameters ret_var = RouteParameters_clone(arg); +static inline uint64_t InvalidShutdownScript_clone_ptr(LDKInvalidShutdownScript *NONNULL_PTR arg) { + LDKInvalidShutdownScript ret_var = InvalidShutdownScript_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -34024,21 +31202,59 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_RouteParameters_clone_ptr(uint32_t arg) { - LDKRouteParameters arg_conv; +int64_t __attribute__((visibility("default"))) TS_InvalidShutdownScript_clone_ptr(uint32_t arg) { + LDKInvalidShutdownScript arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = RouteParameters_clone_ptr(&arg_conv); + int64_t ret_val = InvalidShutdownScript_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_RouteParameters_clone(uint32_t orig) { - LDKRouteParameters orig_conv; +uint32_t __attribute__((visibility("default"))) TS_InvalidShutdownScript_clone(uint32_t orig) { + LDKInvalidShutdownScript orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKRouteParameters ret_var = RouteParameters_clone(&orig_conv); + LDKInvalidShutdownScript ret_var = InvalidShutdownScript_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +int8_tArray __attribute__((visibility("default"))) TS_ShutdownScript_write(uint32_t obj) { + LDKShutdownScript obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ShutdownScript_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_ShutdownScript_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ShutdownScriptDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptDecodeErrorZ), "LDKCResult_ShutdownScriptDecodeErrorZ"); + *ret_conv = ShutdownScript_read(ser_ref); + return (uint64_t)ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_ShutdownScript_new_p2wpkh(int8_tArray pubkey_hash) { + unsigned char pubkey_hash_arr[20]; + CHECK(pubkey_hash->arr_len == 20); + memcpy(pubkey_hash_arr, pubkey_hash->elems, 20); + unsigned char (*pubkey_hash_ref)[20] = &pubkey_hash_arr; + LDKShutdownScript ret_var = ShutdownScript_new_p2wpkh(pubkey_hash_ref); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -34050,204 +31266,118 @@ uint32_t __attribute__((visibility("default"))) TS_RouteParameters_clone(uint32 return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_RouteParameters_write(uint32_t obj) { - LDKRouteParameters obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = RouteParameters_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_ShutdownScript_new_p2wsh(int8_tArray script_hash) { + unsigned char script_hash_arr[32]; + CHECK(script_hash->arr_len == 32); + memcpy(script_hash_arr, script_hash->elems, 32); + unsigned char (*script_hash_ref)[32] = &script_hash_arr; + LDKShutdownScript ret_var = ShutdownScript_new_p2wsh(script_hash_ref); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_RouteParameters_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_RouteParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteParametersDecodeErrorZ), "LDKCResult_RouteParametersDecodeErrorZ"); - *ret_conv = RouteParameters_read(ser_ref); +uint32_t __attribute__((visibility("default"))) TS_ShutdownScript_new_witness_program(int8_t version, int8_tArray program) { + LDKu8slice program_ref; + program_ref.datalen = program->arr_len; + program_ref.data = program->elems; + LDKCResult_ShutdownScriptInvalidShutdownScriptZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptInvalidShutdownScriptZ), "LDKCResult_ShutdownScriptInvalidShutdownScriptZ"); + *ret_conv = ShutdownScript_new_witness_program(version, program_ref); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_Payee_free(uint32_t this_obj) { - LDKPayee this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - Payee_free(this_obj_conv); -} - -int8_tArray __attribute__((visibility("default"))) TS_Payee_get_pubkey(uint32_t this_ptr) { - LDKPayee this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), Payee_get_pubkey(&this_ptr_conv).compressed_form, 33); +int8_tArray __attribute__((visibility("default"))) TS_ShutdownScript_into_inner(uint32_t this_arg) { + LDKShutdownScript this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = (this_arg & 1) || (this_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + this_arg_conv = ShutdownScript_clone(&this_arg_conv); + LDKCVec_u8Z ret_var = ShutdownScript_into_inner(this_arg_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); return ret_arr; } -void __attribute__((visibility("default"))) TS_Payee_set_pubkey(uint32_t this_ptr, int8_tArray val) { - LDKPayee this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - Payee_set_pubkey(&this_ptr_conv, val_ref); +int8_tArray __attribute__((visibility("default"))) TS_ShutdownScript_as_legacy_pubkey(uint32_t this_arg) { + LDKShutdownScript this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, ShutdownScript_as_legacy_pubkey(&this_arg_conv).compressed_form, 33); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_Payee_get_features(uint32_t this_ptr) { - LDKPayee this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKInvoiceFeatures ret_var = Payee_get_features(&this_ptr_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } - return ret_ref; +jboolean __attribute__((visibility("default"))) TS_ShutdownScript_is_compatible(uint32_t this_arg, uint32_t features) { + LDKShutdownScript this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKInitFeatures features_conv; + features_conv.inner = (void*)(features & (~1)); + features_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(features_conv); + jboolean ret_val = ShutdownScript_is_compatible(&this_arg_conv, &features_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_Payee_set_features(uint32_t this_ptr, uint32_t val) { - LDKPayee this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKInvoiceFeatures val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = InvoiceFeatures_clone(&val_conv); - Payee_set_features(&this_ptr_conv, val_conv); +void __attribute__((visibility("default"))) TS_CustomMessageReader_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKCustomMessageReader this_ptr_conv = *(LDKCustomMessageReader*)(this_ptr_ptr); + FREE((void*)this_ptr); + CustomMessageReader_free(this_ptr_conv); } -uint32_tArray __attribute__((visibility("default"))) TS_Payee_get_route_hints(uint32_t this_ptr) { - LDKPayee this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_RouteHintZ ret_var = Payee_get_route_hints(&this_ptr_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t l = 0; l < ret_var.datalen; l++) { - LDKRouteHint ret_conv_11_var = ret_var.data[l]; - uint64_t ret_conv_11_ref = 0; - CHECK((((uint64_t)ret_conv_11_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_11_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_11_var); - ret_conv_11_ref = (uint64_t)ret_conv_11_var.inner; - if (ret_conv_11_var.is_owned) { - ret_conv_11_ref |= 1; - } - ret_arr_ptr[l] = ret_conv_11_ref; - } - - FREE(ret_var.data); - return ret_arr; +static inline uint64_t Type_clone_ptr(LDKType *NONNULL_PTR arg) { + LDKType* ret_ret = MALLOC(sizeof(LDKType), "LDKType"); + *ret_ret = Type_clone(arg); + return (uint64_t)ret_ret; } - -void __attribute__((visibility("default"))) TS_Payee_set_route_hints(uint32_t this_ptr, uint32_tArray val) { - LDKPayee this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_RouteHintZ val_constr; - val_constr.datalen = *((uint32_t*)val); - if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKRouteHint), "LDKCVec_RouteHintZ Elements"); - else - val_constr.data = NULL; - uint32_t* val_vals = (uint32_t*)(val + 4); - for (size_t l = 0; l < val_constr.datalen; l++) { - uint32_t val_conv_11 = val_vals[l]; - LDKRouteHint val_conv_11_conv; - val_conv_11_conv.inner = (void*)(val_conv_11 & (~1)); - val_conv_11_conv.is_owned = (val_conv_11 & 1) || (val_conv_11 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_11_conv); - val_conv_11_conv = RouteHint_clone(&val_conv_11_conv); - val_constr.data[l] = val_conv_11_conv; - } - Payee_set_route_hints(&this_ptr_conv, val_constr); +int64_t __attribute__((visibility("default"))) TS_Type_clone_ptr(uint32_t arg) { + void* arg_ptr = (void*)(((uint64_t)arg) & ~1); + if (!(arg & 1)) { CHECK_ACCESS(arg_ptr); } + LDKType* arg_conv = (LDKType*)arg_ptr; + int64_t ret_val = Type_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Payee_get_expiry_time(uint32_t this_ptr) { - LDKPayee this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *ret_copy = Payee_get_expiry_time(&this_ptr_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_Type_clone(uint32_t orig) { + void* orig_ptr = (void*)(((uint64_t)orig) & ~1); + if (!(orig & 1)) { CHECK_ACCESS(orig_ptr); } + LDKType* orig_conv = (LDKType*)orig_ptr; + LDKType* ret_ret = MALLOC(sizeof(LDKType), "LDKType"); + *ret_ret = Type_clone(orig_conv); + return (uint64_t)ret_ret; } -void __attribute__((visibility("default"))) TS_Payee_set_expiry_time(uint32_t this_ptr, uint32_t val) { - LDKPayee this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr); - val_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)val) & ~1)); - Payee_set_expiry_time(&this_ptr_conv, val_conv); +void __attribute__((visibility("default"))) TS_Type_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKType this_ptr_conv = *(LDKType*)(this_ptr_ptr); + FREE((void*)this_ptr); + Type_free(this_ptr_conv); } -uint32_t __attribute__((visibility("default"))) TS_Payee_new(int8_tArray pubkey_arg, uint32_t features_arg, uint32_tArray route_hints_arg, uint32_t expiry_time_arg) { - LDKPublicKey pubkey_arg_ref; - CHECK(*((uint32_t*)pubkey_arg) == 33); - memcpy(pubkey_arg_ref.compressed_form, (uint8_t*)(pubkey_arg + 4), 33); - LDKInvoiceFeatures features_arg_conv; - features_arg_conv.inner = (void*)(features_arg & (~1)); - features_arg_conv.is_owned = (features_arg & 1) || (features_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(features_arg_conv); - features_arg_conv = InvoiceFeatures_clone(&features_arg_conv); - LDKCVec_RouteHintZ route_hints_arg_constr; - route_hints_arg_constr.datalen = *((uint32_t*)route_hints_arg); - if (route_hints_arg_constr.datalen > 0) - route_hints_arg_constr.data = MALLOC(route_hints_arg_constr.datalen * sizeof(LDKRouteHint), "LDKCVec_RouteHintZ Elements"); - else - route_hints_arg_constr.data = NULL; - uint32_t* route_hints_arg_vals = (uint32_t*)(route_hints_arg + 4); - for (size_t l = 0; l < route_hints_arg_constr.datalen; l++) { - uint32_t route_hints_arg_conv_11 = route_hints_arg_vals[l]; - LDKRouteHint route_hints_arg_conv_11_conv; - route_hints_arg_conv_11_conv.inner = (void*)(route_hints_arg_conv_11 & (~1)); - route_hints_arg_conv_11_conv.is_owned = (route_hints_arg_conv_11 & 1) || (route_hints_arg_conv_11 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(route_hints_arg_conv_11_conv); - route_hints_arg_conv_11_conv = RouteHint_clone(&route_hints_arg_conv_11_conv); - route_hints_arg_constr.data[l] = route_hints_arg_conv_11_conv; - } - void* expiry_time_arg_ptr = (void*)(((uint64_t)expiry_time_arg) & ~1); - CHECK_ACCESS(expiry_time_arg_ptr); - LDKCOption_u64Z expiry_time_arg_conv = *(LDKCOption_u64Z*)(expiry_time_arg_ptr); - expiry_time_arg_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)expiry_time_arg) & ~1)); - LDKPayee ret_var = Payee_new(pubkey_arg_ref, features_arg_conv, route_hints_arg_constr, expiry_time_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_NodeId_free(uint32_t this_obj) { + LDKNodeId this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + NodeId_free(this_obj_conv); } -static inline uint64_t Payee_clone_ptr(LDKPayee *NONNULL_PTR arg) { - LDKPayee ret_var = Payee_clone(arg); +static inline uint64_t NodeId_clone_ptr(LDKNodeId *NONNULL_PTR arg) { + LDKNodeId ret_var = NodeId_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -34258,21 +31388,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_Payee_clone_ptr(uint32_t arg) { - LDKPayee arg_conv; +int64_t __attribute__((visibility("default"))) TS_NodeId_clone_ptr(uint32_t arg) { + LDKNodeId arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = Payee_clone_ptr(&arg_conv); + int64_t ret_val = NodeId_clone_ptr(&arg_conv); return ret_val; } - -uint32_t __attribute__((visibility("default"))) TS_Payee_clone(uint32_t orig) { - LDKPayee orig_conv; + +uint32_t __attribute__((visibility("default"))) TS_NodeId_clone(uint32_t orig) { + LDKNodeId orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKPayee ret_var = Payee_clone(&orig_conv); + LDKNodeId ret_var = NodeId_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -34284,70 +31414,98 @@ uint32_t __attribute__((visibility("default"))) TS_Payee_clone(uint32_t orig) { return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_Payee_hash(uint32_t o) { - LDKPayee o_conv; +uint32_t __attribute__((visibility("default"))) TS_NodeId_from_pubkey(int8_tArray pubkey) { + LDKPublicKey pubkey_ref; + CHECK(pubkey->arr_len == 33); + memcpy(pubkey_ref.compressed_form, pubkey->elems, 33); + LDKNodeId ret_var = NodeId_from_pubkey(pubkey_ref); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; +} + +int8_tArray __attribute__((visibility("default"))) TS_NodeId_as_slice(uint32_t this_arg) { + LDKNodeId this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKu8slice ret_var = NodeId_as_slice(&this_arg_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + return ret_arr; +} + +int64_t __attribute__((visibility("default"))) TS_NodeId_hash(uint32_t o) { + LDKNodeId o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = Payee_hash(&o_conv); - return ret_val; -} - -jboolean __attribute__((visibility("default"))) TS_Payee_eq(uint32_t a, uint32_t b) { - LDKPayee a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKPayee b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = Payee_eq(&a_conv, &b_conv); + int64_t ret_val = NodeId_hash(&o_conv); return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_Payee_write(uint32_t obj) { - LDKPayee obj_conv; +int8_tArray __attribute__((visibility("default"))) TS_NodeId_write(uint32_t obj) { + LDKNodeId obj_conv; obj_conv.inner = (void*)(obj & (~1)); obj_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = Payee_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + LDKCVec_u8Z ret_var = NodeId_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_Payee_read(int8_tArray ser) { +uint32_t __attribute__((visibility("default"))) TS_NodeId_read(int8_tArray ser) { LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_PayeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeeDecodeErrorZ), "LDKCResult_PayeeDecodeErrorZ"); - *ret_conv = Payee_read(ser_ref); + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_NodeIdDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeIdDecodeErrorZ), "LDKCResult_NodeIdDecodeErrorZ"); + *ret_conv = NodeId_read(ser_ref); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Payee_from_node_id(int8_tArray pubkey) { - LDKPublicKey pubkey_ref; - CHECK(*((uint32_t*)pubkey) == 33); - memcpy(pubkey_ref.compressed_form, (uint8_t*)(pubkey + 4), 33); - LDKPayee ret_var = Payee_from_node_id(pubkey_ref); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } +void __attribute__((visibility("default"))) TS_NetworkGraph_free(uint32_t this_obj) { + LDKNetworkGraph this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + NetworkGraph_free(this_obj_conv); +} + +static inline uint64_t NetworkGraph_clone_ptr(LDKNetworkGraph *NONNULL_PTR arg) { + LDKNetworkGraph ret_var = NetworkGraph_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} return ret_ref; } +int64_t __attribute__((visibility("default"))) TS_NetworkGraph_clone_ptr(uint32_t arg) { + LDKNetworkGraph arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = NetworkGraph_clone_ptr(&arg_conv); + return ret_val; +} -uint32_t __attribute__((visibility("default"))) TS_Payee_for_keysend(int8_tArray pubkey) { - LDKPublicKey pubkey_ref; - CHECK(*((uint32_t*)pubkey) == 33); - memcpy(pubkey_ref.compressed_form, (uint8_t*)(pubkey + 4), 33); - LDKPayee ret_var = Payee_for_keysend(pubkey_ref); +uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_clone(uint32_t orig) { + LDKNetworkGraph orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKNetworkGraph ret_var = NetworkGraph_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -34359,120 +31517,124 @@ uint32_t __attribute__((visibility("default"))) TS_Payee_for_keysend(int8_tArra return ret_ref; } -void __attribute__((visibility("default"))) TS_RouteHint_free(uint32_t this_obj) { - LDKRouteHint this_obj_conv; +void __attribute__((visibility("default"))) TS_ReadOnlyNetworkGraph_free(uint32_t this_obj) { + LDKReadOnlyNetworkGraph this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - RouteHint_free(this_obj_conv); + ReadOnlyNetworkGraph_free(this_obj_conv); } -uint32_tArray __attribute__((visibility("default"))) TS_RouteHint_get_a(uint32_t this_ptr) { - LDKRouteHint this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_RouteHintHopZ ret_var = RouteHint_get_a(&this_ptr_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t o = 0; o < ret_var.datalen; o++) { - LDKRouteHintHop ret_conv_14_var = ret_var.data[o]; - uint64_t ret_conv_14_ref = 0; - CHECK((((uint64_t)ret_conv_14_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_14_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_14_var); - ret_conv_14_ref = (uint64_t)ret_conv_14_var.inner; - if (ret_conv_14_var.is_owned) { - ret_conv_14_ref |= 1; - } - ret_arr_ptr[o] = ret_conv_14_ref; - } - - FREE(ret_var.data); - return ret_arr; +void __attribute__((visibility("default"))) TS_NetworkUpdate_free(uint32_t this_ptr) { + if ((this_ptr & 1) != 0) return; + void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); + CHECK_ACCESS(this_ptr_ptr); + LDKNetworkUpdate this_ptr_conv = *(LDKNetworkUpdate*)(this_ptr_ptr); + FREE((void*)this_ptr); + NetworkUpdate_free(this_ptr_conv); } -void __attribute__((visibility("default"))) TS_RouteHint_set_a(uint32_t this_ptr, uint32_tArray val) { - LDKRouteHint this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCVec_RouteHintHopZ val_constr; - val_constr.datalen = *((uint32_t*)val); - if (val_constr.datalen > 0) - val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKRouteHintHop), "LDKCVec_RouteHintHopZ Elements"); - else - val_constr.data = NULL; - uint32_t* val_vals = (uint32_t*)(val + 4); - for (size_t o = 0; o < val_constr.datalen; o++) { - uint32_t val_conv_14 = val_vals[o]; - LDKRouteHintHop val_conv_14_conv; - val_conv_14_conv.inner = (void*)(val_conv_14 & (~1)); - val_conv_14_conv.is_owned = (val_conv_14 & 1) || (val_conv_14 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_14_conv); - val_conv_14_conv = RouteHintHop_clone(&val_conv_14_conv); - val_constr.data[o] = val_conv_14_conv; - } - RouteHint_set_a(&this_ptr_conv, val_constr); +static inline uint64_t NetworkUpdate_clone_ptr(LDKNetworkUpdate *NONNULL_PTR arg) { + LDKNetworkUpdate *ret_copy = MALLOC(sizeof(LDKNetworkUpdate), "LDKNetworkUpdate"); + *ret_copy = NetworkUpdate_clone(arg); +uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_NetworkUpdate_clone_ptr(uint32_t arg) { + LDKNetworkUpdate* arg_conv = (LDKNetworkUpdate*)arg; + int64_t ret_val = NetworkUpdate_clone_ptr(arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_RouteHint_new(uint32_tArray a_arg) { - LDKCVec_RouteHintHopZ a_arg_constr; - a_arg_constr.datalen = *((uint32_t*)a_arg); - if (a_arg_constr.datalen > 0) - a_arg_constr.data = MALLOC(a_arg_constr.datalen * sizeof(LDKRouteHintHop), "LDKCVec_RouteHintHopZ Elements"); - else - a_arg_constr.data = NULL; - uint32_t* a_arg_vals = (uint32_t*)(a_arg + 4); - for (size_t o = 0; o < a_arg_constr.datalen; o++) { - uint32_t a_arg_conv_14 = a_arg_vals[o]; - LDKRouteHintHop a_arg_conv_14_conv; - a_arg_conv_14_conv.inner = (void*)(a_arg_conv_14 & (~1)); - a_arg_conv_14_conv.is_owned = (a_arg_conv_14 & 1) || (a_arg_conv_14 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_arg_conv_14_conv); - a_arg_conv_14_conv = RouteHintHop_clone(&a_arg_conv_14_conv); - a_arg_constr.data[o] = a_arg_conv_14_conv; - } - LDKRouteHint ret_var = RouteHint_new(a_arg_constr); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } +uint32_t __attribute__((visibility("default"))) TS_NetworkUpdate_clone(uint32_t orig) { + LDKNetworkUpdate* orig_conv = (LDKNetworkUpdate*)orig; + LDKNetworkUpdate *ret_copy = MALLOC(sizeof(LDKNetworkUpdate), "LDKNetworkUpdate"); + *ret_copy = NetworkUpdate_clone(orig_conv); + uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -static inline uint64_t RouteHint_clone_ptr(LDKRouteHint *NONNULL_PTR arg) { - LDKRouteHint ret_var = RouteHint_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_NetworkUpdate_channel_update_message(uint32_t msg) { + LDKChannelUpdate msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = (msg & 1) || (msg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + msg_conv = ChannelUpdate_clone(&msg_conv); + LDKNetworkUpdate *ret_copy = MALLOC(sizeof(LDKNetworkUpdate), "LDKNetworkUpdate"); + *ret_copy = NetworkUpdate_channel_update_message(msg_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; +} + +uint32_t __attribute__((visibility("default"))) TS_NetworkUpdate_channel_closed(int64_t short_channel_id, jboolean is_permanent) { + LDKNetworkUpdate *ret_copy = MALLOC(sizeof(LDKNetworkUpdate), "LDKNetworkUpdate"); + *ret_copy = NetworkUpdate_channel_closed(short_channel_id, is_permanent); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } + +uint32_t __attribute__((visibility("default"))) TS_NetworkUpdate_node_failure(int8_tArray node_id, jboolean is_permanent) { + LDKPublicKey node_id_ref; + CHECK(node_id->arr_len == 33); + memcpy(node_id_ref.compressed_form, node_id->elems, 33); + LDKNetworkUpdate *ret_copy = MALLOC(sizeof(LDKNetworkUpdate), "LDKNetworkUpdate"); + *ret_copy = NetworkUpdate_node_failure(node_id_ref, is_permanent); + uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_RouteHint_clone_ptr(uint32_t arg) { - LDKRouteHint arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = RouteHint_clone_ptr(&arg_conv); - return ret_val; + +int8_tArray __attribute__((visibility("default"))) TS_NetworkUpdate_write(uint32_t obj) { + LDKNetworkUpdate* obj_conv = (LDKNetworkUpdate*)obj; + LDKCVec_u8Z ret_var = NetworkUpdate_write(obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_NetworkUpdate_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_COption_NetworkUpdateZDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_COption_NetworkUpdateZDecodeErrorZ), "LDKCResult_COption_NetworkUpdateZDecodeErrorZ"); + *ret_conv = NetworkUpdate_read(ser_ref); + return (uint64_t)ret_conv; +} + +uint32_t __attribute__((visibility("default"))) TS_NetGraphMsgHandler_as_EventHandler(uint32_t this_arg) { + LDKNetGraphMsgHandler this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKEventHandler* ret_ret = MALLOC(sizeof(LDKEventHandler), "LDKEventHandler"); + *ret_ret = NetGraphMsgHandler_as_EventHandler(&this_arg_conv); + return (uint64_t)ret_ret; +} + +void __attribute__((visibility("default"))) TS_NetGraphMsgHandler_free(uint32_t this_obj) { + LDKNetGraphMsgHandler this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + NetGraphMsgHandler_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_RouteHint_clone(uint32_t orig) { - LDKRouteHint orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKRouteHint ret_var = RouteHint_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_NetGraphMsgHandler_new(uint32_t network_graph, uint32_t chain_access, uint32_t logger) { + LDKNetworkGraph network_graph_conv; + network_graph_conv.inner = (void*)(network_graph & (~1)); + network_graph_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(network_graph_conv); + void* chain_access_ptr = (void*)(((uint64_t)chain_access) & ~1); + CHECK_ACCESS(chain_access_ptr); + LDKCOption_AccessZ chain_access_conv = *(LDKCOption_AccessZ*)(chain_access_ptr); + // Warning: we may need a move here but no clone is available for LDKCOption_AccessZ + if (chain_access_conv.tag == LDKCOption_AccessZ_Some) { + // Manually implement clone for Java trait instances + } + void* logger_ptr = (void*)(((uint64_t)logger) & ~1); + CHECK_ACCESS(logger_ptr); + LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); + LDKNetGraphMsgHandler ret_var = NetGraphMsgHandler_new(&network_graph_conv, chain_access_conv, logger_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -34484,155 +31646,130 @@ uint32_t __attribute__((visibility("default"))) TS_RouteHint_clone(uint32_t ori return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_RouteHint_hash(uint32_t o) { - LDKRouteHint o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = RouteHint_hash(&o_conv); - return ret_val; -} - -jboolean __attribute__((visibility("default"))) TS_RouteHint_eq(uint32_t a, uint32_t b) { - LDKRouteHint a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKRouteHint b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = RouteHint_eq(&a_conv, &b_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_NetGraphMsgHandler_add_chain_access(uint32_t this_arg, uint32_t chain_access) { + LDKNetGraphMsgHandler this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + void* chain_access_ptr = (void*)(((uint64_t)chain_access) & ~1); + CHECK_ACCESS(chain_access_ptr); + LDKCOption_AccessZ chain_access_conv = *(LDKCOption_AccessZ*)(chain_access_ptr); + // Warning: we may need a move here but no clone is available for LDKCOption_AccessZ + if (chain_access_conv.tag == LDKCOption_AccessZ_Some) { + // Manually implement clone for Java trait instances + } + NetGraphMsgHandler_add_chain_access(&this_arg_conv, chain_access_conv); } -int8_tArray __attribute__((visibility("default"))) TS_RouteHint_write(uint32_t obj) { - LDKRouteHint obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = RouteHint_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_NetGraphMsgHandler_as_RoutingMessageHandler(uint32_t this_arg) { + LDKNetGraphMsgHandler this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKRoutingMessageHandler* ret_ret = MALLOC(sizeof(LDKRoutingMessageHandler), "LDKRoutingMessageHandler"); + *ret_ret = NetGraphMsgHandler_as_RoutingMessageHandler(&this_arg_conv); + return (uint64_t)ret_ret; } -uint32_t __attribute__((visibility("default"))) TS_RouteHint_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_RouteHintDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintDecodeErrorZ), "LDKCResult_RouteHintDecodeErrorZ"); - *ret_conv = RouteHint_read(ser_ref); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_NetGraphMsgHandler_as_MessageSendEventsProvider(uint32_t this_arg) { + LDKNetGraphMsgHandler this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKMessageSendEventsProvider* ret_ret = MALLOC(sizeof(LDKMessageSendEventsProvider), "LDKMessageSendEventsProvider"); + *ret_ret = NetGraphMsgHandler_as_MessageSendEventsProvider(&this_arg_conv); + return (uint64_t)ret_ret; } -void __attribute__((visibility("default"))) TS_RouteHintHop_free(uint32_t this_obj) { - LDKRouteHintHop this_obj_conv; +void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_free(uint32_t this_obj) { + LDKDirectionalChannelInfo this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - RouteHintHop_free(this_obj_conv); + DirectionalChannelInfo_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_RouteHintHop_get_src_node_id(uint32_t this_ptr) { - LDKRouteHintHop this_ptr_conv; +int32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_last_update(uint32_t this_ptr) { + LDKDirectionalChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), RouteHintHop_get_src_node_id(&this_ptr_conv).compressed_form, 33); - return ret_arr; + int32_t ret_val = DirectionalChannelInfo_get_last_update(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_RouteHintHop_set_src_node_id(uint32_t this_ptr, int8_tArray val) { - LDKRouteHintHop this_ptr_conv; +void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_last_update(uint32_t this_ptr, int32_t val) { + LDKDirectionalChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - RouteHintHop_set_src_node_id(&this_ptr_conv, val_ref); + DirectionalChannelInfo_set_last_update(&this_ptr_conv, val); } -int64_t __attribute__((visibility("default"))) TS_RouteHintHop_get_short_channel_id(uint32_t this_ptr) { - LDKRouteHintHop this_ptr_conv; +jboolean __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_enabled(uint32_t this_ptr) { + LDKDirectionalChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = RouteHintHop_get_short_channel_id(&this_ptr_conv); + jboolean ret_val = DirectionalChannelInfo_get_enabled(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_RouteHintHop_set_short_channel_id(uint32_t this_ptr, int64_t val) { - LDKRouteHintHop this_ptr_conv; +void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_enabled(uint32_t this_ptr, jboolean val) { + LDKDirectionalChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - RouteHintHop_set_short_channel_id(&this_ptr_conv, val); + DirectionalChannelInfo_set_enabled(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_get_fees(uint32_t this_ptr) { - LDKRouteHintHop this_ptr_conv; +int16_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_cltv_expiry_delta(uint32_t this_ptr) { + LDKDirectionalChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKRoutingFees ret_var = RouteHintHop_get_fees(&this_ptr_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + int16_t ret_val = DirectionalChannelInfo_get_cltv_expiry_delta(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_RouteHintHop_set_fees(uint32_t this_ptr, uint32_t val) { - LDKRouteHintHop this_ptr_conv; +void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_cltv_expiry_delta(uint32_t this_ptr, int16_t val) { + LDKDirectionalChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKRoutingFees val_conv; - val_conv.inner = (void*)(val & (~1)); - val_conv.is_owned = (val & 1) || (val == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = RoutingFees_clone(&val_conv); - RouteHintHop_set_fees(&this_ptr_conv, val_conv); + DirectionalChannelInfo_set_cltv_expiry_delta(&this_ptr_conv, val); } -int16_t __attribute__((visibility("default"))) TS_RouteHintHop_get_cltv_expiry_delta(uint32_t this_ptr) { - LDKRouteHintHop this_ptr_conv; +int64_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_htlc_minimum_msat(uint32_t this_ptr) { + LDKDirectionalChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = RouteHintHop_get_cltv_expiry_delta(&this_ptr_conv); + int64_t ret_val = DirectionalChannelInfo_get_htlc_minimum_msat(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_RouteHintHop_set_cltv_expiry_delta(uint32_t this_ptr, int16_t val) { - LDKRouteHintHop this_ptr_conv; +void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_htlc_minimum_msat(uint32_t this_ptr, int64_t val) { + LDKDirectionalChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - RouteHintHop_set_cltv_expiry_delta(&this_ptr_conv, val); + DirectionalChannelInfo_set_htlc_minimum_msat(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_get_htlc_minimum_msat(uint32_t this_ptr) { - LDKRouteHintHop this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_htlc_maximum_msat(uint32_t this_ptr) { + LDKDirectionalChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *ret_copy = RouteHintHop_get_htlc_minimum_msat(&this_ptr_conv); + *ret_copy = DirectionalChannelInfo_get_htlc_maximum_msat(&this_ptr_conv); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -void __attribute__((visibility("default"))) TS_RouteHintHop_set_htlc_minimum_msat(uint32_t this_ptr, uint32_t val) { - LDKRouteHintHop this_ptr_conv; +void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_htlc_maximum_msat(uint32_t this_ptr, uint32_t val) { + LDKDirectionalChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); @@ -34640,50 +31777,87 @@ void __attribute__((visibility("default"))) TS_RouteHintHop_set_htlc_minimum_ms CHECK_ACCESS(val_ptr); LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr); val_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)val) & ~1)); - RouteHintHop_set_htlc_minimum_msat(&this_ptr_conv, val_conv); + DirectionalChannelInfo_set_htlc_maximum_msat(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_get_htlc_maximum_msat(uint32_t this_ptr) { - LDKRouteHintHop this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_fees(uint32_t this_ptr) { + LDKDirectionalChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *ret_copy = RouteHintHop_get_htlc_maximum_msat(&this_ptr_conv); - uint64_t ret_ref = (uint64_t)ret_copy; + LDKRoutingFees ret_var = DirectionalChannelInfo_get_fees(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -void __attribute__((visibility("default"))) TS_RouteHintHop_set_htlc_maximum_msat(uint32_t this_ptr, uint32_t val) { - LDKRouteHintHop this_ptr_conv; +void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_fees(uint32_t this_ptr, uint32_t val) { + LDKDirectionalChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - void* val_ptr = (void*)(((uint64_t)val) & ~1); - CHECK_ACCESS(val_ptr); - LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr); - val_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)val) & ~1)); - RouteHintHop_set_htlc_maximum_msat(&this_ptr_conv, val_conv); + LDKRoutingFees val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = RoutingFees_clone(&val_conv); + DirectionalChannelInfo_set_fees(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_new(int8_tArray src_node_id_arg, int64_t short_channel_id_arg, uint32_t fees_arg, int16_t cltv_expiry_delta_arg, uint32_t htlc_minimum_msat_arg, uint32_t htlc_maximum_msat_arg) { - LDKPublicKey src_node_id_arg_ref; - CHECK(*((uint32_t*)src_node_id_arg) == 33); - memcpy(src_node_id_arg_ref.compressed_form, (uint8_t*)(src_node_id_arg + 4), 33); - LDKRoutingFees fees_arg_conv; - fees_arg_conv.inner = (void*)(fees_arg & (~1)); - fees_arg_conv.is_owned = (fees_arg & 1) || (fees_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(fees_arg_conv); - fees_arg_conv = RoutingFees_clone(&fees_arg_conv); - void* htlc_minimum_msat_arg_ptr = (void*)(((uint64_t)htlc_minimum_msat_arg) & ~1); - CHECK_ACCESS(htlc_minimum_msat_arg_ptr); - LDKCOption_u64Z htlc_minimum_msat_arg_conv = *(LDKCOption_u64Z*)(htlc_minimum_msat_arg_ptr); - htlc_minimum_msat_arg_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)htlc_minimum_msat_arg) & ~1)); +uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_get_last_update_message(uint32_t this_ptr) { + LDKDirectionalChannelInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelUpdate ret_var = DirectionalChannelInfo_get_last_update_message(&this_ptr_conv); + uint64_t ret_ref = 0; + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + } + return ret_ref; +} + +void __attribute__((visibility("default"))) TS_DirectionalChannelInfo_set_last_update_message(uint32_t this_ptr, uint32_t val) { + LDKDirectionalChannelInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelUpdate val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = ChannelUpdate_clone(&val_conv); + DirectionalChannelInfo_set_last_update_message(&this_ptr_conv, val_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_new(int32_t last_update_arg, jboolean enabled_arg, int16_t cltv_expiry_delta_arg, int64_t htlc_minimum_msat_arg, uint32_t htlc_maximum_msat_arg, uint32_t fees_arg, uint32_t last_update_message_arg) { void* htlc_maximum_msat_arg_ptr = (void*)(((uint64_t)htlc_maximum_msat_arg) & ~1); CHECK_ACCESS(htlc_maximum_msat_arg_ptr); LDKCOption_u64Z htlc_maximum_msat_arg_conv = *(LDKCOption_u64Z*)(htlc_maximum_msat_arg_ptr); htlc_maximum_msat_arg_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)htlc_maximum_msat_arg) & ~1)); - LDKRouteHintHop ret_var = RouteHintHop_new(src_node_id_arg_ref, short_channel_id_arg, fees_arg_conv, cltv_expiry_delta_arg, htlc_minimum_msat_arg_conv, htlc_maximum_msat_arg_conv); + LDKRoutingFees fees_arg_conv; + fees_arg_conv.inner = (void*)(fees_arg & (~1)); + fees_arg_conv.is_owned = (fees_arg & 1) || (fees_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(fees_arg_conv); + fees_arg_conv = RoutingFees_clone(&fees_arg_conv); + LDKChannelUpdate last_update_message_arg_conv; + last_update_message_arg_conv.inner = (void*)(last_update_message_arg & (~1)); + last_update_message_arg_conv.is_owned = (last_update_message_arg & 1) || (last_update_message_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(last_update_message_arg_conv); + last_update_message_arg_conv = ChannelUpdate_clone(&last_update_message_arg_conv); + LDKDirectionalChannelInfo ret_var = DirectionalChannelInfo_new(last_update_arg, enabled_arg, cltv_expiry_delta_arg, htlc_minimum_msat_arg, htlc_maximum_msat_arg_conv, fees_arg_conv, last_update_message_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -34695,8 +31869,8 @@ uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_new(int8_tArray return ret_ref; } -static inline uint64_t RouteHintHop_clone_ptr(LDKRouteHintHop *NONNULL_PTR arg) { - LDKRouteHintHop ret_var = RouteHintHop_clone(arg); +static inline uint64_t DirectionalChannelInfo_clone_ptr(LDKDirectionalChannelInfo *NONNULL_PTR arg) { + LDKDirectionalChannelInfo ret_var = DirectionalChannelInfo_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -34707,21 +31881,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_RouteHintHop_clone_ptr(uint32_t arg) { - LDKRouteHintHop arg_conv; +int64_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_clone_ptr(uint32_t arg) { + LDKDirectionalChannelInfo arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = RouteHintHop_clone_ptr(&arg_conv); + int64_t ret_val = DirectionalChannelInfo_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_clone(uint32_t orig) { - LDKRouteHintHop orig_conv; +uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_clone(uint32_t orig) { + LDKDirectionalChannelInfo orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKRouteHintHop ret_var = RouteHintHop_clone(&orig_conv); + LDKDirectionalChannelInfo ret_var = DirectionalChannelInfo_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -34733,123 +31907,41 @@ uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_clone(uint32_t return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_RouteHintHop_hash(uint32_t o) { - LDKRouteHintHop o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = RouteHintHop_hash(&o_conv); - return ret_val; -} - -jboolean __attribute__((visibility("default"))) TS_RouteHintHop_eq(uint32_t a, uint32_t b) { - LDKRouteHintHop a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKRouteHintHop b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = RouteHintHop_eq(&a_conv, &b_conv); - return ret_val; -} - -int8_tArray __attribute__((visibility("default"))) TS_RouteHintHop_write(uint32_t obj) { - LDKRouteHintHop obj_conv; +int8_tArray __attribute__((visibility("default"))) TS_DirectionalChannelInfo_write(uint32_t obj) { + LDKDirectionalChannelInfo obj_conv; obj_conv.inner = (void*)(obj & (~1)); obj_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = RouteHintHop_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + LDKCVec_u8Z ret_var = DirectionalChannelInfo_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_read(int8_tArray ser) { +uint32_t __attribute__((visibility("default"))) TS_DirectionalChannelInfo_read(int8_tArray ser) { LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_RouteHintHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintHopDecodeErrorZ), "LDKCResult_RouteHintHopDecodeErrorZ"); - *ret_conv = RouteHintHop_read(ser_ref); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_find_route(int8_tArray our_node_pubkey, uint32_t params, uint32_t network, uint32_tArray first_hops, uint32_t logger, uint32_t scorer) { - LDKPublicKey our_node_pubkey_ref; - CHECK(*((uint32_t*)our_node_pubkey) == 33); - memcpy(our_node_pubkey_ref.compressed_form, (uint8_t*)(our_node_pubkey + 4), 33); - LDKRouteParameters params_conv; - params_conv.inner = (void*)(params & (~1)); - params_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(params_conv); - LDKNetworkGraph network_conv; - network_conv.inner = (void*)(network & (~1)); - network_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(network_conv); - LDKCVec_ChannelDetailsZ first_hops_constr; - LDKCVec_ChannelDetailsZ *first_hops_ptr = NULL; - if (first_hops != 0) { - first_hops_constr.datalen = *((uint32_t*)first_hops); - if (first_hops_constr.datalen > 0) - first_hops_constr.data = MALLOC(first_hops_constr.datalen * sizeof(LDKChannelDetails), "LDKCVec_ChannelDetailsZ Elements"); - else - first_hops_constr.data = NULL; - uint32_t* first_hops_vals = (uint32_t*)(first_hops + 4); - for (size_t q = 0; q < first_hops_constr.datalen; q++) { - uint32_t first_hops_conv_16 = first_hops_vals[q]; - LDKChannelDetails first_hops_conv_16_conv; - first_hops_conv_16_conv.inner = (void*)(first_hops_conv_16 & (~1)); - first_hops_conv_16_conv.is_owned = (first_hops_conv_16 & 1) || (first_hops_conv_16 == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(first_hops_conv_16_conv); - first_hops_constr.data[q] = first_hops_conv_16_conv; - } - first_hops_ptr = &first_hops_constr; - } - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - void* scorer_ptr = (void*)(((uint64_t)scorer) & ~1); - if (!(scorer & 1)) { CHECK_ACCESS(scorer_ptr); } - LDKScore* scorer_conv = (LDKScore*)scorer_ptr; - LDKCResult_RouteLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteLightningErrorZ), "LDKCResult_RouteLightningErrorZ"); - *ret_conv = find_route(our_node_pubkey_ref, ¶ms_conv, &network_conv, first_hops_ptr, logger_conv, scorer_conv); - if (first_hops_ptr != NULL) { FREE(first_hops_constr.data); } + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_DirectionalChannelInfoDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DirectionalChannelInfoDecodeErrorZ), "LDKCResult_DirectionalChannelInfoDecodeErrorZ"); + *ret_conv = DirectionalChannelInfo_read(ser_ref); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_Score_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKScore this_ptr_conv = *(LDKScore*)(this_ptr_ptr); - FREE((void*)this_ptr); - Score_free(this_ptr_conv); -} - -void __attribute__((visibility("default"))) TS_LockableScore_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKLockableScore this_ptr_conv = *(LDKLockableScore*)(this_ptr_ptr); - FREE((void*)this_ptr); - LockableScore_free(this_ptr_conv); -} - -void __attribute__((visibility("default"))) TS_MultiThreadedLockableScore_free(uint32_t this_obj) { - LDKMultiThreadedLockableScore this_obj_conv; +void __attribute__((visibility("default"))) TS_ChannelInfo_free(uint32_t this_obj) { + LDKChannelInfo this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - MultiThreadedLockableScore_free(this_obj_conv); + ChannelInfo_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_MultiThreadedLockableScore_new(uint32_t score) { - void* score_ptr = (void*)(((uint64_t)score) & ~1); - CHECK_ACCESS(score_ptr); - LDKScore score_conv = *(LDKScore*)(score_ptr); - LDKMultiThreadedLockableScore ret_var = MultiThreadedLockableScore_new(score_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_features(uint32_t this_ptr) { + LDKChannelInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelFeatures ret_var = ChannelInfo_get_features(&this_ptr_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -34861,109 +31953,225 @@ uint32_t __attribute__((visibility("default"))) TS_MultiThreadedLockableScore_n return ret_ref; } -void __attribute__((visibility("default"))) TS_Scorer_free(uint32_t this_obj) { - LDKScorer this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - Scorer_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_ChannelInfo_set_features(uint32_t this_ptr, uint32_t val) { + LDKChannelInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelFeatures val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = ChannelFeatures_clone(&val_conv); + ChannelInfo_set_features(&this_ptr_conv, val_conv); } -void __attribute__((visibility("default"))) TS_ScoringParameters_free(uint32_t this_obj) { - LDKScoringParameters this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ScoringParameters_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_node_one(uint32_t this_ptr) { + LDKChannelInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKNodeId ret_var = ChannelInfo_get_node_one(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ScoringParameters_get_base_penalty_msat(uint32_t this_ptr) { - LDKScoringParameters this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelInfo_set_node_one(uint32_t this_ptr, uint32_t val) { + LDKChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ScoringParameters_get_base_penalty_msat(&this_ptr_conv); - return ret_val; + LDKNodeId val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = NodeId_clone(&val_conv); + ChannelInfo_set_node_one(&this_ptr_conv, val_conv); } -void __attribute__((visibility("default"))) TS_ScoringParameters_set_base_penalty_msat(uint32_t this_ptr, int64_t val) { - LDKScoringParameters this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_one_to_two(uint32_t this_ptr) { + LDKChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ScoringParameters_set_base_penalty_msat(&this_ptr_conv, val); + LDKDirectionalChannelInfo ret_var = ChannelInfo_get_one_to_two(&this_ptr_conv); + uint64_t ret_ref = 0; + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + } + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ScoringParameters_get_failure_penalty_msat(uint32_t this_ptr) { - LDKScoringParameters this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelInfo_set_one_to_two(uint32_t this_ptr, uint32_t val) { + LDKChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ScoringParameters_get_failure_penalty_msat(&this_ptr_conv); - return ret_val; + LDKDirectionalChannelInfo val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = DirectionalChannelInfo_clone(&val_conv); + ChannelInfo_set_one_to_two(&this_ptr_conv, val_conv); } -void __attribute__((visibility("default"))) TS_ScoringParameters_set_failure_penalty_msat(uint32_t this_ptr, int64_t val) { - LDKScoringParameters this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_node_two(uint32_t this_ptr) { + LDKChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ScoringParameters_set_failure_penalty_msat(&this_ptr_conv, val); + LDKNodeId ret_var = ChannelInfo_get_node_two(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int16_t __attribute__((visibility("default"))) TS_ScoringParameters_get_overuse_penalty_start_1024th(uint32_t this_ptr) { - LDKScoringParameters this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelInfo_set_node_two(uint32_t this_ptr, uint32_t val) { + LDKChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int16_t ret_val = ScoringParameters_get_overuse_penalty_start_1024th(&this_ptr_conv); - return ret_val; + LDKNodeId val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = NodeId_clone(&val_conv); + ChannelInfo_set_node_two(&this_ptr_conv, val_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_two_to_one(uint32_t this_ptr) { + LDKChannelInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKDirectionalChannelInfo ret_var = ChannelInfo_get_two_to_one(&this_ptr_conv); + uint64_t ret_ref = 0; + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_ScoringParameters_set_overuse_penalty_start_1024th(uint32_t this_ptr, int16_t val) { - LDKScoringParameters this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelInfo_set_two_to_one(uint32_t this_ptr, uint32_t val) { + LDKChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ScoringParameters_set_overuse_penalty_start_1024th(&this_ptr_conv, val); + LDKDirectionalChannelInfo val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = DirectionalChannelInfo_clone(&val_conv); + ChannelInfo_set_two_to_one(&this_ptr_conv, val_conv); } -int64_t __attribute__((visibility("default"))) TS_ScoringParameters_get_overuse_penalty_msat_per_1024th(uint32_t this_ptr) { - LDKScoringParameters this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_capacity_sats(uint32_t this_ptr) { + LDKChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ScoringParameters_get_overuse_penalty_msat_per_1024th(&this_ptr_conv); - return ret_val; + LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); + *ret_copy = ChannelInfo_get_capacity_sats(&this_ptr_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_ScoringParameters_set_overuse_penalty_msat_per_1024th(uint32_t this_ptr, int64_t val) { - LDKScoringParameters this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelInfo_set_capacity_sats(uint32_t this_ptr, uint32_t val) { + LDKChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ScoringParameters_set_overuse_penalty_msat_per_1024th(&this_ptr_conv, val); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr); + val_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)val) & ~1)); + ChannelInfo_set_capacity_sats(&this_ptr_conv, val_conv); } -int64_t __attribute__((visibility("default"))) TS_ScoringParameters_get_failure_penalty_half_life(uint32_t this_ptr) { - LDKScoringParameters this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_get_announcement_message(uint32_t this_ptr) { + LDKChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = ScoringParameters_get_failure_penalty_half_life(&this_ptr_conv); - return ret_val; + LDKChannelAnnouncement ret_var = ChannelInfo_get_announcement_message(&this_ptr_conv); + uint64_t ret_ref = 0; + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_ScoringParameters_set_failure_penalty_half_life(uint32_t this_ptr, int64_t val) { - LDKScoringParameters this_ptr_conv; +void __attribute__((visibility("default"))) TS_ChannelInfo_set_announcement_message(uint32_t this_ptr, uint32_t val) { + LDKChannelInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - ScoringParameters_set_failure_penalty_half_life(&this_ptr_conv, val); + LDKChannelAnnouncement val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = ChannelAnnouncement_clone(&val_conv); + ChannelInfo_set_announcement_message(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_ScoringParameters_new(int64_t base_penalty_msat_arg, int64_t failure_penalty_msat_arg, int16_t overuse_penalty_start_1024th_arg, int64_t overuse_penalty_msat_per_1024th_arg, int64_t failure_penalty_half_life_arg) { - LDKScoringParameters ret_var = ScoringParameters_new(base_penalty_msat_arg, failure_penalty_msat_arg, overuse_penalty_start_1024th_arg, overuse_penalty_msat_per_1024th_arg, failure_penalty_half_life_arg); +static inline uint64_t ChannelInfo_clone_ptr(LDKChannelInfo *NONNULL_PTR arg) { + LDKChannelInfo ret_var = ChannelInfo_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} + return ret_ref; +} +int64_t __attribute__((visibility("default"))) TS_ChannelInfo_clone_ptr(uint32_t arg) { + LDKChannelInfo arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = ChannelInfo_clone_ptr(&arg_conv); + return ret_val; +} + +uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_clone(uint32_t orig) { + LDKChannelInfo orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKChannelInfo ret_var = ChannelInfo_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -34975,60 +32183,71 @@ uint32_t __attribute__((visibility("default"))) TS_ScoringParameters_new(int64_ return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_ScoringParameters_write(uint32_t obj) { - LDKScoringParameters obj_conv; +int8_tArray __attribute__((visibility("default"))) TS_ChannelInfo_write(uint32_t obj) { + LDKChannelInfo obj_conv; obj_conv.inner = (void*)(obj & (~1)); obj_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = ScoringParameters_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); + LDKCVec_u8Z ret_var = ChannelInfo_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_ScoringParameters_read(int8_tArray ser) { +uint32_t __attribute__((visibility("default"))) TS_ChannelInfo_read(int8_tArray ser) { LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ScoringParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ScoringParametersDecodeErrorZ), "LDKCResult_ScoringParametersDecodeErrorZ"); - *ret_conv = ScoringParameters_read(ser_ref); + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ChannelInfoDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelInfoDecodeErrorZ), "LDKCResult_ChannelInfoDecodeErrorZ"); + *ret_conv = ChannelInfo_read(ser_ref); return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Scorer_new(uint32_t params) { - LDKScoringParameters params_conv; - params_conv.inner = (void*)(params & (~1)); - params_conv.is_owned = (params & 1) || (params == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(params_conv); - // Warning: we need a move here but no clone is available for LDKScoringParameters - LDKScorer ret_var = Scorer_new(params_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_RoutingFees_free(uint32_t this_obj) { + LDKRoutingFees this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + RoutingFees_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_Scorer_default() { - LDKScorer ret_var = Scorer_default(); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +int32_t __attribute__((visibility("default"))) TS_RoutingFees_get_base_msat(uint32_t this_ptr) { + LDKRoutingFees this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = RoutingFees_get_base_msat(&this_ptr_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ScoringParameters_default() { - LDKScoringParameters ret_var = ScoringParameters_default(); +void __attribute__((visibility("default"))) TS_RoutingFees_set_base_msat(uint32_t this_ptr, int32_t val) { + LDKRoutingFees this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + RoutingFees_set_base_msat(&this_ptr_conv, val); +} + +int32_t __attribute__((visibility("default"))) TS_RoutingFees_get_proportional_millionths(uint32_t this_ptr) { + LDKRoutingFees this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = RoutingFees_get_proportional_millionths(&this_ptr_conv); + return ret_val; +} + +void __attribute__((visibility("default"))) TS_RoutingFees_set_proportional_millionths(uint32_t this_ptr, int32_t val) { + LDKRoutingFees this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + RoutingFees_set_proportional_millionths(&this_ptr_conv, val); +} + +uint32_t __attribute__((visibility("default"))) TS_RoutingFees_new(int32_t base_msat_arg, int32_t proportional_millionths_arg) { + LDKRoutingFees ret_var = RoutingFees_new(base_msat_arg, proportional_millionths_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -35040,48 +32259,46 @@ uint32_t __attribute__((visibility("default"))) TS_ScoringParameters_default() return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_Scorer_as_Score(uint32_t this_arg) { - LDKScorer this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKScore* ret_ret = MALLOC(sizeof(LDKScore), "LDKScore"); - *ret_ret = Scorer_as_Score(&this_arg_conv); - return (uint64_t)ret_ret; +jboolean __attribute__((visibility("default"))) TS_RoutingFees_eq(uint32_t a, uint32_t b) { + LDKRoutingFees a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + LDKRoutingFees b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + jboolean ret_val = RoutingFees_eq(&a_conv, &b_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_Scorer_write(uint32_t obj) { - LDKScorer obj_conv; - obj_conv.inner = (void*)(obj & (~1)); - obj_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); - LDKCVec_u8Z ret_var = Scorer_write(&obj_conv); - int8_tArray ret_arr = init_arr(ret_var.datalen, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), ret_var.data, ret_var.datalen); - CVec_u8Z_free(ret_var); - return ret_arr; +static inline uint64_t RoutingFees_clone_ptr(LDKRoutingFees *NONNULL_PTR arg) { + LDKRoutingFees ret_var = RoutingFees_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -uint32_t __attribute__((visibility("default"))) TS_Scorer_read(int8_tArray ser) { - LDKu8slice ser_ref; - ser_ref.datalen = *((uint32_t*)ser); - ser_ref.data = (int8_t*)(ser + 4); - LDKCResult_ScorerDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ScorerDecodeErrorZ), "LDKCResult_ScorerDecodeErrorZ"); - *ret_conv = Scorer_read(ser_ref); - return (uint64_t)ret_conv; + return ret_ref; } - -void __attribute__((visibility("default"))) TS_FilesystemPersister_free(uint32_t this_obj) { - LDKFilesystemPersister this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - FilesystemPersister_free(this_obj_conv); +int64_t __attribute__((visibility("default"))) TS_RoutingFees_clone_ptr(uint32_t arg) { + LDKRoutingFees arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = RoutingFees_clone_ptr(&arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_FilesystemPersister_new(jstring path_to_channel_data) { - LDKStr path_to_channel_data_conv = str_ref_to_owned_c(path_to_channel_data); - LDKFilesystemPersister ret_var = FilesystemPersister_new(path_to_channel_data_conv); +uint32_t __attribute__((visibility("default"))) TS_RoutingFees_clone(uint32_t orig) { + LDKRoutingFees orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKRoutingFees ret_var = RoutingFees_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -35093,95 +32310,50 @@ uint32_t __attribute__((visibility("default"))) TS_FilesystemPersister_new(jstr return ret_ref; } -jstring __attribute__((visibility("default"))) TS_FilesystemPersister_get_data_dir(uint32_t this_arg) { - LDKFilesystemPersister this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKStr ret_str = FilesystemPersister_get_data_dir(&this_arg_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_FilesystemPersister_persist_manager(jstring data_dir, uint32_t manager) { - LDKStr data_dir_conv = str_ref_to_owned_c(data_dir); - LDKChannelManager manager_conv; - manager_conv.inner = (void*)(manager & (~1)); - manager_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(manager_conv); - LDKCResult_NoneErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneErrorZ), "LDKCResult_NoneErrorZ"); - *ret_conv = FilesystemPersister_persist_manager(data_dir_conv, &manager_conv); - return (uint64_t)ret_conv; +int64_t __attribute__((visibility("default"))) TS_RoutingFees_hash(uint32_t o) { + LDKRoutingFees o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + int64_t ret_val = RoutingFees_hash(&o_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_FilesystemPersister_read_channelmonitors(uint32_t this_arg, uint32_t keys_manager) { - LDKFilesystemPersister this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - void* keys_manager_ptr = (void*)(((uint64_t)keys_manager) & ~1); - CHECK_ACCESS(keys_manager_ptr); - LDKKeysInterface keys_manager_conv = *(LDKKeysInterface*)(keys_manager_ptr); - LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ), "LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ"); - *ret_conv = FilesystemPersister_read_channelmonitors(&this_arg_conv, keys_manager_conv); - return (uint64_t)ret_conv; +int8_tArray __attribute__((visibility("default"))) TS_RoutingFees_write(uint32_t obj) { + LDKRoutingFees obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = RoutingFees_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_FilesystemPersister_as_Persist(uint32_t this_arg) { - LDKFilesystemPersister this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKPersist* ret_ret = MALLOC(sizeof(LDKPersist), "LDKPersist"); - *ret_ret = FilesystemPersister_as_Persist(&this_arg_conv); - return (uint64_t)ret_ret; +uint32_t __attribute__((visibility("default"))) TS_RoutingFees_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_RoutingFeesDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RoutingFeesDecodeErrorZ), "LDKCResult_RoutingFeesDecodeErrorZ"); + *ret_conv = RoutingFees_read(ser_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_BackgroundProcessor_free(uint32_t this_obj) { - LDKBackgroundProcessor this_obj_conv; +void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_free(uint32_t this_obj) { + LDKNodeAnnouncementInfo this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - BackgroundProcessor_free(this_obj_conv); -} - -void __attribute__((visibility("default"))) TS_ChannelManagerPersister_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKChannelManagerPersister this_ptr_conv = *(LDKChannelManagerPersister*)(this_ptr_ptr); - FREE((void*)this_ptr); - ChannelManagerPersister_free(this_ptr_conv); + NodeAnnouncementInfo_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_BackgroundProcessor_start(uint32_t persister, uint32_t event_handler, uint32_t chain_monitor, uint32_t channel_manager, uint32_t net_graph_msg_handler, uint32_t peer_manager, uint32_t logger) { - void* persister_ptr = (void*)(((uint64_t)persister) & ~1); - CHECK_ACCESS(persister_ptr); - LDKChannelManagerPersister persister_conv = *(LDKChannelManagerPersister*)(persister_ptr); - void* event_handler_ptr = (void*)(((uint64_t)event_handler) & ~1); - CHECK_ACCESS(event_handler_ptr); - LDKEventHandler event_handler_conv = *(LDKEventHandler*)(event_handler_ptr); - LDKChainMonitor chain_monitor_conv; - chain_monitor_conv.inner = (void*)(chain_monitor & (~1)); - chain_monitor_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(chain_monitor_conv); - LDKChannelManager channel_manager_conv; - channel_manager_conv.inner = (void*)(channel_manager & (~1)); - channel_manager_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_manager_conv); - LDKNetGraphMsgHandler net_graph_msg_handler_conv; - net_graph_msg_handler_conv.inner = (void*)(net_graph_msg_handler & (~1)); - net_graph_msg_handler_conv.is_owned = (net_graph_msg_handler & 1) || (net_graph_msg_handler == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(net_graph_msg_handler_conv); - LDKPeerManager peer_manager_conv; - peer_manager_conv.inner = (void*)(peer_manager & (~1)); - peer_manager_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(peer_manager_conv); - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - LDKBackgroundProcessor ret_var = BackgroundProcessor_start(persister_conv, event_handler_conv, &chain_monitor_conv, &channel_manager_conv, net_graph_msg_handler_conv, &peer_manager_conv, logger_conv); +uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_get_features(uint32_t this_ptr) { + LDKNodeAnnouncementInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKNodeFeatures ret_var = NodeAnnouncementInfo_get_features(&this_ptr_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -35193,80 +32365,165 @@ uint32_t __attribute__((visibility("default"))) TS_BackgroundProcessor_start(ui return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_BackgroundProcessor_join(uint32_t this_arg) { - LDKBackgroundProcessor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = (this_arg & 1) || (this_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - // Warning: we need a move here but no clone is available for LDKBackgroundProcessor - LDKCResult_NoneErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneErrorZ), "LDKCResult_NoneErrorZ"); - *ret_conv = BackgroundProcessor_join(this_arg_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_set_features(uint32_t this_ptr, uint32_t val) { + LDKNodeAnnouncementInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKNodeFeatures val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = NodeFeatures_clone(&val_conv); + NodeAnnouncementInfo_set_features(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_BackgroundProcessor_stop(uint32_t this_arg) { - LDKBackgroundProcessor this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = (this_arg & 1) || (this_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - // Warning: we need a move here but no clone is available for LDKBackgroundProcessor - LDKCResult_NoneErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneErrorZ), "LDKCResult_NoneErrorZ"); - *ret_conv = BackgroundProcessor_stop(this_arg_conv); - return (uint64_t)ret_conv; +int32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_get_last_update(uint32_t this_ptr) { + LDKNodeAnnouncementInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = NodeAnnouncementInfo_get_last_update(&this_ptr_conv); + return ret_val; } -void __attribute__((visibility("default"))) TS_check_platform() { - check_platform(); +void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_set_last_update(uint32_t this_ptr, int32_t val) { + LDKNodeAnnouncementInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + NodeAnnouncementInfo_set_last_update(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_Invoice_free(uint32_t this_obj) { - LDKInvoice this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - Invoice_free(this_obj_conv); +int8_tArray __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_get_rgb(uint32_t this_ptr) { + LDKNodeAnnouncementInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(3); + memcpy(ret_arr->elems, *NodeAnnouncementInfo_get_rgb(&this_ptr_conv), 3); + return ret_arr; } -jboolean __attribute__((visibility("default"))) TS_Invoice_eq(uint32_t a, uint32_t b) { - LDKInvoice a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKInvoice b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = Invoice_eq(&a_conv, &b_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_set_rgb(uint32_t this_ptr, int8_tArray val) { + LDKNodeAnnouncementInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKThreeBytes val_ref; + CHECK(val->arr_len == 3); + memcpy(val_ref.data, val->elems, 3); + NodeAnnouncementInfo_set_rgb(&this_ptr_conv, val_ref); } -static inline uint64_t Invoice_clone_ptr(LDKInvoice *NONNULL_PTR arg) { - LDKInvoice ret_var = Invoice_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; +int8_tArray __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_get_alias(uint32_t this_ptr) { + LDKNodeAnnouncementInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(32); + memcpy(ret_arr->elems, *NodeAnnouncementInfo_get_alias(&this_ptr_conv), 32); + return ret_arr; +} + +void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_set_alias(uint32_t this_ptr, int8_tArray val) { + LDKNodeAnnouncementInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKThirtyTwoBytes val_ref; + CHECK(val->arr_len == 32); + memcpy(val_ref.data, val->elems, 32); + NodeAnnouncementInfo_set_alias(&this_ptr_conv, val_ref); +} + +void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_set_addresses(uint32_t this_ptr, uint32_tArray val) { + LDKNodeAnnouncementInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_NetAddressZ val_constr; + val_constr.datalen = val->arr_len; + if (val_constr.datalen > 0) + val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKNetAddress), "LDKCVec_NetAddressZ Elements"); + else + val_constr.data = NULL; + uint32_t* val_vals = val->elems; + for (size_t m = 0; m < val_constr.datalen; m++) { + uint32_t val_conv_12 = val_vals[m]; + void* val_conv_12_ptr = (void*)(((uint64_t)val_conv_12) & ~1); + CHECK_ACCESS(val_conv_12_ptr); + LDKNetAddress val_conv_12_conv = *(LDKNetAddress*)(val_conv_12_ptr); + val_conv_12_conv = NetAddress_clone((LDKNetAddress*)(((uint64_t)val_conv_12) & ~1)); + val_constr.data[m] = val_conv_12_conv; + } + NodeAnnouncementInfo_set_addresses(&this_ptr_conv, val_constr); } + +uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_get_announcement_message(uint32_t this_ptr) { + LDKNodeAnnouncementInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKNodeAnnouncement ret_var = NodeAnnouncementInfo_get_announcement_message(&this_ptr_conv); + uint64_t ret_ref = 0; + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_Invoice_clone_ptr(uint32_t arg) { - LDKInvoice arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = Invoice_clone_ptr(&arg_conv); - return ret_val; + +void __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_set_announcement_message(uint32_t this_ptr, uint32_t val) { + LDKNodeAnnouncementInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKNodeAnnouncement val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = NodeAnnouncement_clone(&val_conv); + NodeAnnouncementInfo_set_announcement_message(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_Invoice_clone(uint32_t orig) { - LDKInvoice orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKInvoice ret_var = Invoice_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_new(uint32_t features_arg, int32_t last_update_arg, int8_tArray rgb_arg, int8_tArray alias_arg, uint32_tArray addresses_arg, uint32_t announcement_message_arg) { + LDKNodeFeatures features_arg_conv; + features_arg_conv.inner = (void*)(features_arg & (~1)); + features_arg_conv.is_owned = (features_arg & 1) || (features_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(features_arg_conv); + features_arg_conv = NodeFeatures_clone(&features_arg_conv); + LDKThreeBytes rgb_arg_ref; + CHECK(rgb_arg->arr_len == 3); + memcpy(rgb_arg_ref.data, rgb_arg->elems, 3); + LDKThirtyTwoBytes alias_arg_ref; + CHECK(alias_arg->arr_len == 32); + memcpy(alias_arg_ref.data, alias_arg->elems, 32); + LDKCVec_NetAddressZ addresses_arg_constr; + addresses_arg_constr.datalen = addresses_arg->arr_len; + if (addresses_arg_constr.datalen > 0) + addresses_arg_constr.data = MALLOC(addresses_arg_constr.datalen * sizeof(LDKNetAddress), "LDKCVec_NetAddressZ Elements"); + else + addresses_arg_constr.data = NULL; + uint32_t* addresses_arg_vals = addresses_arg->elems; + for (size_t m = 0; m < addresses_arg_constr.datalen; m++) { + uint32_t addresses_arg_conv_12 = addresses_arg_vals[m]; + void* addresses_arg_conv_12_ptr = (void*)(((uint64_t)addresses_arg_conv_12) & ~1); + CHECK_ACCESS(addresses_arg_conv_12_ptr); + LDKNetAddress addresses_arg_conv_12_conv = *(LDKNetAddress*)(addresses_arg_conv_12_ptr); + addresses_arg_constr.data[m] = addresses_arg_conv_12_conv; + } + LDKNodeAnnouncement announcement_message_arg_conv; + announcement_message_arg_conv.inner = (void*)(announcement_message_arg & (~1)); + announcement_message_arg_conv.is_owned = (announcement_message_arg & 1) || (announcement_message_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(announcement_message_arg_conv); + announcement_message_arg_conv = NodeAnnouncement_clone(&announcement_message_arg_conv); + LDKNodeAnnouncementInfo ret_var = NodeAnnouncementInfo_new(features_arg_conv, last_update_arg, rgb_arg_ref, alias_arg_ref, addresses_arg_constr, announcement_message_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -35278,29 +32535,8 @@ uint32_t __attribute__((visibility("default"))) TS_Invoice_clone(uint32_t orig) return ret_ref; } -void __attribute__((visibility("default"))) TS_SignedRawInvoice_free(uint32_t this_obj) { - LDKSignedRawInvoice this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - SignedRawInvoice_free(this_obj_conv); -} - -jboolean __attribute__((visibility("default"))) TS_SignedRawInvoice_eq(uint32_t a, uint32_t b) { - LDKSignedRawInvoice a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKSignedRawInvoice b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = SignedRawInvoice_eq(&a_conv, &b_conv); - return ret_val; -} - -static inline uint64_t SignedRawInvoice_clone_ptr(LDKSignedRawInvoice *NONNULL_PTR arg) { - LDKSignedRawInvoice ret_var = SignedRawInvoice_clone(arg); +static inline uint64_t NodeAnnouncementInfo_clone_ptr(LDKNodeAnnouncementInfo *NONNULL_PTR arg) { + LDKNodeAnnouncementInfo ret_var = NodeAnnouncementInfo_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -35311,21 +32547,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_SignedRawInvoice_clone_ptr(uint32_t arg) { - LDKSignedRawInvoice arg_conv; +int64_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_clone_ptr(uint32_t arg) { + LDKNodeAnnouncementInfo arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = SignedRawInvoice_clone_ptr(&arg_conv); + int64_t ret_val = NodeAnnouncementInfo_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_SignedRawInvoice_clone(uint32_t orig) { - LDKSignedRawInvoice orig_conv; +uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_clone(uint32_t orig) { + LDKNodeAnnouncementInfo orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKSignedRawInvoice ret_var = SignedRawInvoice_clone(&orig_conv); + LDKNodeAnnouncementInfo ret_var = NodeAnnouncementInfo_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -35337,173 +32573,141 @@ uint32_t __attribute__((visibility("default"))) TS_SignedRawInvoice_clone(uint3 return ret_ref; } -void __attribute__((visibility("default"))) TS_RawInvoice_free(uint32_t this_obj) { - LDKRawInvoice this_obj_conv; +int8_tArray __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_write(uint32_t obj) { + LDKNodeAnnouncementInfo obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = NodeAnnouncementInfo_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_NodeAnnouncementInfo_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_NodeAnnouncementInfoDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeAnnouncementInfoDecodeErrorZ), "LDKCResult_NodeAnnouncementInfoDecodeErrorZ"); + *ret_conv = NodeAnnouncementInfo_read(ser_ref); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_NodeInfo_free(uint32_t this_obj) { + LDKNodeInfo this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - RawInvoice_free(this_obj_conv); + NodeInfo_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_RawInvoice_get_data(uint32_t this_ptr) { - LDKRawInvoice this_ptr_conv; +void __attribute__((visibility("default"))) TS_NodeInfo_set_channels(uint32_t this_ptr, int64_tArray val) { + LDKNodeInfo this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_u64Z val_constr; + val_constr.datalen = val->arr_len; + if (val_constr.datalen > 0) + val_constr.data = MALLOC(val_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements"); + else + val_constr.data = NULL; + int64_t* val_vals = val->elems; + for (size_t i = 0; i < val_constr.datalen; i++) { + int64_t val_conv_8 = val_vals[i]; + val_constr.data[i] = val_conv_8; + } + NodeInfo_set_channels(&this_ptr_conv, val_constr); +} + +uint32_t __attribute__((visibility("default"))) TS_NodeInfo_get_lowest_inbound_channel_fees(uint32_t this_ptr) { + LDKNodeInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKRawDataPart ret_var = RawInvoice_get_data(&this_ptr_conv); + LDKRoutingFees ret_var = NodeInfo_get_lowest_inbound_channel_fees(&this_ptr_conv); uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } } return ret_ref; } -void __attribute__((visibility("default"))) TS_RawInvoice_set_data(uint32_t this_ptr, uint32_t val) { - LDKRawInvoice this_ptr_conv; +void __attribute__((visibility("default"))) TS_NodeInfo_set_lowest_inbound_channel_fees(uint32_t this_ptr, uint32_t val) { + LDKNodeInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKRawDataPart val_conv; + LDKRoutingFees val_conv; val_conv.inner = (void*)(val & (~1)); val_conv.is_owned = (val & 1) || (val == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = RawDataPart_clone(&val_conv); - RawInvoice_set_data(&this_ptr_conv, val_conv); -} - -jboolean __attribute__((visibility("default"))) TS_RawInvoice_eq(uint32_t a, uint32_t b) { - LDKRawInvoice a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKRawInvoice b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = RawInvoice_eq(&a_conv, &b_conv); - return ret_val; -} - -static inline uint64_t RawInvoice_clone_ptr(LDKRawInvoice *NONNULL_PTR arg) { - LDKRawInvoice ret_var = RawInvoice_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_RawInvoice_clone_ptr(uint32_t arg) { - LDKRawInvoice arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = RawInvoice_clone_ptr(&arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_RawInvoice_clone(uint32_t orig) { - LDKRawInvoice orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKRawInvoice ret_var = RawInvoice_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; -} - -void __attribute__((visibility("default"))) TS_RawDataPart_free(uint32_t this_obj) { - LDKRawDataPart this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - RawDataPart_free(this_obj_conv); + val_conv = RoutingFees_clone(&val_conv); + NodeInfo_set_lowest_inbound_channel_fees(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_RawDataPart_get_timestamp(uint32_t this_ptr) { - LDKRawDataPart this_ptr_conv; +uint32_t __attribute__((visibility("default"))) TS_NodeInfo_get_announcement_info(uint32_t this_ptr) { + LDKNodeInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPositiveTimestamp ret_var = RawDataPart_get_timestamp(&this_ptr_conv); + LDKNodeAnnouncementInfo ret_var = NodeInfo_get_announcement_info(&this_ptr_conv); uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } } return ret_ref; } -void __attribute__((visibility("default"))) TS_RawDataPart_set_timestamp(uint32_t this_ptr, uint32_t val) { - LDKRawDataPart this_ptr_conv; +void __attribute__((visibility("default"))) TS_NodeInfo_set_announcement_info(uint32_t this_ptr, uint32_t val) { + LDKNodeInfo this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - LDKPositiveTimestamp val_conv; + LDKNodeAnnouncementInfo val_conv; val_conv.inner = (void*)(val & (~1)); val_conv.is_owned = (val & 1) || (val == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); - val_conv = PositiveTimestamp_clone(&val_conv); - RawDataPart_set_timestamp(&this_ptr_conv, val_conv); -} - -jboolean __attribute__((visibility("default"))) TS_RawDataPart_eq(uint32_t a, uint32_t b) { - LDKRawDataPart a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKRawDataPart b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = RawDataPart_eq(&a_conv, &b_conv); - return ret_val; -} - -static inline uint64_t RawDataPart_clone_ptr(LDKRawDataPart *NONNULL_PTR arg) { - LDKRawDataPart ret_var = RawDataPart_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_RawDataPart_clone_ptr(uint32_t arg) { - LDKRawDataPart arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = RawDataPart_clone_ptr(&arg_conv); - return ret_val; + val_conv = NodeAnnouncementInfo_clone(&val_conv); + NodeInfo_set_announcement_info(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_RawDataPart_clone(uint32_t orig) { - LDKRawDataPart orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKRawDataPart ret_var = RawDataPart_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_NodeInfo_new(int64_tArray channels_arg, uint32_t lowest_inbound_channel_fees_arg, uint32_t announcement_info_arg) { + LDKCVec_u64Z channels_arg_constr; + channels_arg_constr.datalen = channels_arg->arr_len; + if (channels_arg_constr.datalen > 0) + channels_arg_constr.data = MALLOC(channels_arg_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements"); + else + channels_arg_constr.data = NULL; + int64_t* channels_arg_vals = channels_arg->elems; + for (size_t i = 0; i < channels_arg_constr.datalen; i++) { + int64_t channels_arg_conv_8 = channels_arg_vals[i]; + channels_arg_constr.data[i] = channels_arg_conv_8; + } + LDKRoutingFees lowest_inbound_channel_fees_arg_conv; + lowest_inbound_channel_fees_arg_conv.inner = (void*)(lowest_inbound_channel_fees_arg & (~1)); + lowest_inbound_channel_fees_arg_conv.is_owned = (lowest_inbound_channel_fees_arg & 1) || (lowest_inbound_channel_fees_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(lowest_inbound_channel_fees_arg_conv); + lowest_inbound_channel_fees_arg_conv = RoutingFees_clone(&lowest_inbound_channel_fees_arg_conv); + LDKNodeAnnouncementInfo announcement_info_arg_conv; + announcement_info_arg_conv.inner = (void*)(announcement_info_arg & (~1)); + announcement_info_arg_conv.is_owned = (announcement_info_arg & 1) || (announcement_info_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(announcement_info_arg_conv); + announcement_info_arg_conv = NodeAnnouncementInfo_clone(&announcement_info_arg_conv); + LDKNodeInfo ret_var = NodeInfo_new(channels_arg_constr, lowest_inbound_channel_fees_arg_conv, announcement_info_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -35515,29 +32719,8 @@ uint32_t __attribute__((visibility("default"))) TS_RawDataPart_clone(uint32_t o return ret_ref; } -void __attribute__((visibility("default"))) TS_PositiveTimestamp_free(uint32_t this_obj) { - LDKPositiveTimestamp this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - PositiveTimestamp_free(this_obj_conv); -} - -jboolean __attribute__((visibility("default"))) TS_PositiveTimestamp_eq(uint32_t a, uint32_t b) { - LDKPositiveTimestamp a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKPositiveTimestamp b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = PositiveTimestamp_eq(&a_conv, &b_conv); - return ret_val; -} - -static inline uint64_t PositiveTimestamp_clone_ptr(LDKPositiveTimestamp *NONNULL_PTR arg) { - LDKPositiveTimestamp ret_var = PositiveTimestamp_clone(arg); +static inline uint64_t NodeInfo_clone_ptr(LDKNodeInfo *NONNULL_PTR arg) { + LDKNodeInfo ret_var = NodeInfo_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -35548,21 +32731,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_PositiveTimestamp_clone_ptr(uint32_t arg) { - LDKPositiveTimestamp arg_conv; +int64_t __attribute__((visibility("default"))) TS_NodeInfo_clone_ptr(uint32_t arg) { + LDKNodeInfo arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = PositiveTimestamp_clone_ptr(&arg_conv); + int64_t ret_val = NodeInfo_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_PositiveTimestamp_clone(uint32_t orig) { - LDKPositiveTimestamp orig_conv; +uint32_t __attribute__((visibility("default"))) TS_NodeInfo_clone(uint32_t orig) { + LDKNodeInfo orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKPositiveTimestamp ret_var = PositiveTimestamp_clone(&orig_conv); + LDKNodeInfo ret_var = NodeInfo_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -35574,297 +32757,255 @@ uint32_t __attribute__((visibility("default"))) TS_PositiveTimestamp_clone(uint return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_SiPrefix_clone(uint32_t orig) { - LDKSiPrefix* orig_conv = (LDKSiPrefix*)(orig & ~1); - uint32_t ret_conv = LDKSiPrefix_to_js(SiPrefix_clone(orig_conv)); - return ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_SiPrefix_milli() { - uint32_t ret_conv = LDKSiPrefix_to_js(SiPrefix_milli()); - return ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_SiPrefix_micro() { - uint32_t ret_conv = LDKSiPrefix_to_js(SiPrefix_micro()); - return ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_SiPrefix_nano() { - uint32_t ret_conv = LDKSiPrefix_to_js(SiPrefix_nano()); - return ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_SiPrefix_pico() { - uint32_t ret_conv = LDKSiPrefix_to_js(SiPrefix_pico()); - return ret_conv; -} - -jboolean __attribute__((visibility("default"))) TS_SiPrefix_eq(uint32_t a, uint32_t b) { - LDKSiPrefix* a_conv = (LDKSiPrefix*)(a & ~1); - LDKSiPrefix* b_conv = (LDKSiPrefix*)(b & ~1); - jboolean ret_val = SiPrefix_eq(a_conv, b_conv); - return ret_val; -} - -int64_t __attribute__((visibility("default"))) TS_SiPrefix_multiplier(uint32_t this_arg) { - LDKSiPrefix* this_arg_conv = (LDKSiPrefix*)(this_arg & ~1); - int64_t ret_val = SiPrefix_multiplier(this_arg_conv); - return ret_val; -} - -uint32_t __attribute__((visibility("default"))) TS_Currency_clone(uint32_t orig) { - LDKCurrency* orig_conv = (LDKCurrency*)(orig & ~1); - uint32_t ret_conv = LDKCurrency_to_js(Currency_clone(orig_conv)); - return ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_Currency_bitcoin() { - uint32_t ret_conv = LDKCurrency_to_js(Currency_bitcoin()); - return ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_Currency_bitcoin_testnet() { - uint32_t ret_conv = LDKCurrency_to_js(Currency_bitcoin_testnet()); - return ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_Currency_regtest() { - uint32_t ret_conv = LDKCurrency_to_js(Currency_regtest()); - return ret_conv; +int8_tArray __attribute__((visibility("default"))) TS_NodeInfo_write(uint32_t obj) { + LDKNodeInfo obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = NodeInfo_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_Currency_simnet() { - uint32_t ret_conv = LDKCurrency_to_js(Currency_simnet()); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_NodeInfo_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_NodeInfoDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NodeInfoDecodeErrorZ), "LDKCResult_NodeInfoDecodeErrorZ"); + *ret_conv = NodeInfo_read(ser_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Currency_signet() { - uint32_t ret_conv = LDKCurrency_to_js(Currency_signet()); - return ret_conv; +int8_tArray __attribute__((visibility("default"))) TS_NetworkGraph_write(uint32_t obj) { + LDKNetworkGraph obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = NetworkGraph_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -int64_t __attribute__((visibility("default"))) TS_Currency_hash(uint32_t o) { - LDKCurrency* o_conv = (LDKCurrency*)(o & ~1); - int64_t ret_val = Currency_hash(o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_NetworkGraphDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NetworkGraphDecodeErrorZ), "LDKCResult_NetworkGraphDecodeErrorZ"); + *ret_conv = NetworkGraph_read(ser_ref); + return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_Currency_eq(uint32_t a, uint32_t b) { - LDKCurrency* a_conv = (LDKCurrency*)(a & ~1); - LDKCurrency* b_conv = (LDKCurrency*)(b & ~1); - jboolean ret_val = Currency_eq(a_conv, b_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_new(int8_tArray genesis_hash) { + LDKThirtyTwoBytes genesis_hash_ref; + CHECK(genesis_hash->arr_len == 32); + memcpy(genesis_hash_ref.data, genesis_hash->elems, 32); + LDKNetworkGraph ret_var = NetworkGraph_new(genesis_hash_ref); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_Sha256_free(uint32_t this_obj) { - LDKSha256 this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - Sha256_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_read_only(uint32_t this_arg) { + LDKNetworkGraph this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKReadOnlyNetworkGraph ret_var = NetworkGraph_read_only(&this_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -static inline uint64_t Sha256_clone_ptr(LDKSha256 *NONNULL_PTR arg) { - LDKSha256 ret_var = Sha256_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_update_node_from_announcement(uint32_t this_arg, uint32_t msg) { + LDKNetworkGraph this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKNodeAnnouncement msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = NetworkGraph_update_node_from_announcement(&this_arg_conv, &msg_conv); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_Sha256_clone_ptr(uint32_t arg) { - LDKSha256 arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = Sha256_clone_ptr(&arg_conv); - return ret_val; + +uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_update_node_from_unsigned_announcement(uint32_t this_arg, uint32_t msg) { + LDKNetworkGraph this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKUnsignedNodeAnnouncement msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = NetworkGraph_update_node_from_unsigned_announcement(&this_arg_conv, &msg_conv); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Sha256_clone(uint32_t orig) { - LDKSha256 orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKSha256 ret_var = Sha256_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; +uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_update_channel_from_announcement(uint32_t this_arg, uint32_t msg, uint32_t chain_access) { + LDKNetworkGraph this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKChannelAnnouncement msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + void* chain_access_ptr = (void*)(((uint64_t)chain_access) & ~1); + CHECK_ACCESS(chain_access_ptr); + LDKCOption_AccessZ chain_access_conv = *(LDKCOption_AccessZ*)(chain_access_ptr); + // Warning: we may need a move here but no clone is available for LDKCOption_AccessZ + if (chain_access_conv.tag == LDKCOption_AccessZ_Some) { + // Manually implement clone for Java trait instances } - return ret_ref; + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = NetworkGraph_update_channel_from_announcement(&this_arg_conv, &msg_conv, chain_access_conv); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_Sha256_hash(uint32_t o) { - LDKSha256 o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = Sha256_hash(&o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_update_channel_from_unsigned_announcement(uint32_t this_arg, uint32_t msg, uint32_t chain_access) { + LDKNetworkGraph this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKUnsignedChannelAnnouncement msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + void* chain_access_ptr = (void*)(((uint64_t)chain_access) & ~1); + CHECK_ACCESS(chain_access_ptr); + LDKCOption_AccessZ chain_access_conv = *(LDKCOption_AccessZ*)(chain_access_ptr); + // Warning: we may need a move here but no clone is available for LDKCOption_AccessZ + if (chain_access_conv.tag == LDKCOption_AccessZ_Some) { + // Manually implement clone for Java trait instances + } + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = NetworkGraph_update_channel_from_unsigned_announcement(&this_arg_conv, &msg_conv, chain_access_conv); + return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_Sha256_eq(uint32_t a, uint32_t b) { - LDKSha256 a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKSha256 b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = Sha256_eq(&a_conv, &b_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_NetworkGraph_close_channel_from_update(uint32_t this_arg, int64_t short_channel_id, jboolean is_permanent) { + LDKNetworkGraph this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + NetworkGraph_close_channel_from_update(&this_arg_conv, short_channel_id, is_permanent); } -void __attribute__((visibility("default"))) TS_Description_free(uint32_t this_obj) { - LDKDescription this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - Description_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_NetworkGraph_fail_node(uint32_t this_arg, int8_tArray _node_id, jboolean is_permanent) { + LDKNetworkGraph this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKPublicKey _node_id_ref; + CHECK(_node_id->arr_len == 33); + memcpy(_node_id_ref.compressed_form, _node_id->elems, 33); + NetworkGraph_fail_node(&this_arg_conv, _node_id_ref, is_permanent); } -static inline uint64_t Description_clone_ptr(LDKDescription *NONNULL_PTR arg) { - LDKDescription ret_var = Description_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_Description_clone_ptr(uint32_t arg) { - LDKDescription arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = Description_clone_ptr(&arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_NetworkGraph_remove_stale_channels_with_time(uint32_t this_arg, int64_t current_time_unix) { + LDKNetworkGraph this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + NetworkGraph_remove_stale_channels_with_time(&this_arg_conv, current_time_unix); } -uint32_t __attribute__((visibility("default"))) TS_Description_clone(uint32_t orig) { - LDKDescription orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKDescription ret_var = Description_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_update_channel(uint32_t this_arg, uint32_t msg) { + LDKNetworkGraph this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKChannelUpdate msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = NetworkGraph_update_channel(&this_arg_conv, &msg_conv); + return (uint64_t)ret_conv; } -int64_t __attribute__((visibility("default"))) TS_Description_hash(uint32_t o) { - LDKDescription o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = Description_hash(&o_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_NetworkGraph_update_channel_unsigned(uint32_t this_arg, uint32_t msg) { + LDKNetworkGraph this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKUnsignedChannelUpdate msg_conv; + msg_conv.inner = (void*)(msg & (~1)); + msg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv); + LDKCResult_NoneLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneLightningErrorZ), "LDKCResult_NoneLightningErrorZ"); + *ret_conv = NetworkGraph_update_channel_unsigned(&this_arg_conv, &msg_conv); + return (uint64_t)ret_conv; } -jboolean __attribute__((visibility("default"))) TS_Description_eq(uint32_t a, uint32_t b) { - LDKDescription a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKDescription b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = Description_eq(&a_conv, &b_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_ReadOnlyNetworkGraph_get_addresses(uint32_t this_arg, int8_tArray pubkey) { + LDKReadOnlyNetworkGraph this_arg_conv; + this_arg_conv.inner = (void*)(this_arg & (~1)); + this_arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); + LDKPublicKey pubkey_ref; + CHECK(pubkey->arr_len == 33); + memcpy(pubkey_ref.compressed_form, pubkey->elems, 33); + LDKCOption_CVec_NetAddressZZ *ret_copy = MALLOC(sizeof(LDKCOption_CVec_NetAddressZZ), "LDKCOption_CVec_NetAddressZZ"); + *ret_copy = ReadOnlyNetworkGraph_get_addresses(&this_arg_conv, pubkey_ref); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -void __attribute__((visibility("default"))) TS_PayeePubKey_free(uint32_t this_obj) { - LDKPayeePubKey this_obj_conv; +void __attribute__((visibility("default"))) TS_RouteHop_free(uint32_t this_obj) { + LDKRouteHop this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - PayeePubKey_free(this_obj_conv); + RouteHop_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_PayeePubKey_get_a(uint32_t this_ptr) { - LDKPayeePubKey this_ptr_conv; +int8_tArray __attribute__((visibility("default"))) TS_RouteHop_get_pubkey(uint32_t this_ptr) { + LDKRouteHop this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), PayeePubKey_get_a(&this_ptr_conv).compressed_form, 33); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, RouteHop_get_pubkey(&this_ptr_conv).compressed_form, 33); return ret_arr; } -void __attribute__((visibility("default"))) TS_PayeePubKey_set_a(uint32_t this_ptr, int8_tArray val) { - LDKPayeePubKey this_ptr_conv; +void __attribute__((visibility("default"))) TS_RouteHop_set_pubkey(uint32_t this_ptr, int8_tArray val) { + LDKRouteHop this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); LDKPublicKey val_ref; - CHECK(*((uint32_t*)val) == 33); - memcpy(val_ref.compressed_form, (uint8_t*)(val + 4), 33); - PayeePubKey_set_a(&this_ptr_conv, val_ref); -} - -uint32_t __attribute__((visibility("default"))) TS_PayeePubKey_new(int8_tArray a_arg) { - LDKPublicKey a_arg_ref; - CHECK(*((uint32_t*)a_arg) == 33); - memcpy(a_arg_ref.compressed_form, (uint8_t*)(a_arg + 4), 33); - LDKPayeePubKey ret_var = PayeePubKey_new(a_arg_ref); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; -} - -static inline uint64_t PayeePubKey_clone_ptr(LDKPayeePubKey *NONNULL_PTR arg) { - LDKPayeePubKey ret_var = PayeePubKey_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_PayeePubKey_clone_ptr(uint32_t arg) { - LDKPayeePubKey arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = PayeePubKey_clone_ptr(&arg_conv); - return ret_val; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + RouteHop_set_pubkey(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_PayeePubKey_clone(uint32_t orig) { - LDKPayeePubKey orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKPayeePubKey ret_var = PayeePubKey_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_RouteHop_get_node_features(uint32_t this_ptr) { + LDKRouteHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKNodeFeatures ret_var = RouteHop_get_node_features(&this_ptr_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -35876,63 +33017,42 @@ uint32_t __attribute__((visibility("default"))) TS_PayeePubKey_clone(uint32_t o return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_PayeePubKey_hash(uint32_t o) { - LDKPayeePubKey o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = PayeePubKey_hash(&o_conv); - return ret_val; -} - -jboolean __attribute__((visibility("default"))) TS_PayeePubKey_eq(uint32_t a, uint32_t b) { - LDKPayeePubKey a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKPayeePubKey b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = PayeePubKey_eq(&a_conv, &b_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_ExpiryTime_free(uint32_t this_obj) { - LDKExpiryTime this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - ExpiryTime_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_RouteHop_set_node_features(uint32_t this_ptr, uint32_t val) { + LDKRouteHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKNodeFeatures val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = NodeFeatures_clone(&val_conv); + RouteHop_set_node_features(&this_ptr_conv, val_conv); } -static inline uint64_t ExpiryTime_clone_ptr(LDKExpiryTime *NONNULL_PTR arg) { - LDKExpiryTime ret_var = ExpiryTime_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_ExpiryTime_clone_ptr(uint32_t arg) { - LDKExpiryTime arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = ExpiryTime_clone_ptr(&arg_conv); +int64_t __attribute__((visibility("default"))) TS_RouteHop_get_short_channel_id(uint32_t this_ptr) { + LDKRouteHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = RouteHop_get_short_channel_id(&this_ptr_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_ExpiryTime_clone(uint32_t orig) { - LDKExpiryTime orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKExpiryTime ret_var = ExpiryTime_clone(&orig_conv); +void __attribute__((visibility("default"))) TS_RouteHop_set_short_channel_id(uint32_t this_ptr, int64_t val) { + LDKRouteHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + RouteHop_set_short_channel_id(&this_ptr_conv, val); +} + +uint32_t __attribute__((visibility("default"))) TS_RouteHop_get_channel_features(uint32_t this_ptr) { + LDKRouteHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelFeatures ret_var = RouteHop_get_channel_features(&this_ptr_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -35944,55 +33064,68 @@ uint32_t __attribute__((visibility("default"))) TS_ExpiryTime_clone(uint32_t or return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_ExpiryTime_hash(uint32_t o) { - LDKExpiryTime o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = ExpiryTime_hash(&o_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_RouteHop_set_channel_features(uint32_t this_ptr, uint32_t val) { + LDKRouteHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKChannelFeatures val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = ChannelFeatures_clone(&val_conv); + RouteHop_set_channel_features(&this_ptr_conv, val_conv); } -jboolean __attribute__((visibility("default"))) TS_ExpiryTime_eq(uint32_t a, uint32_t b) { - LDKExpiryTime a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKExpiryTime b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = ExpiryTime_eq(&a_conv, &b_conv); +int64_t __attribute__((visibility("default"))) TS_RouteHop_get_fee_msat(uint32_t this_ptr) { + LDKRouteHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = RouteHop_get_fee_msat(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_MinFinalCltvExpiry_free(uint32_t this_obj) { - LDKMinFinalCltvExpiry this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - MinFinalCltvExpiry_free(this_obj_conv); +void __attribute__((visibility("default"))) TS_RouteHop_set_fee_msat(uint32_t this_ptr, int64_t val) { + LDKRouteHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + RouteHop_set_fee_msat(&this_ptr_conv, val); } -int64_t __attribute__((visibility("default"))) TS_MinFinalCltvExpiry_get_a(uint32_t this_ptr) { - LDKMinFinalCltvExpiry this_ptr_conv; +int32_t __attribute__((visibility("default"))) TS_RouteHop_get_cltv_expiry_delta(uint32_t this_ptr) { + LDKRouteHop this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = MinFinalCltvExpiry_get_a(&this_ptr_conv); + int32_t ret_val = RouteHop_get_cltv_expiry_delta(&this_ptr_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_MinFinalCltvExpiry_set_a(uint32_t this_ptr, int64_t val) { - LDKMinFinalCltvExpiry this_ptr_conv; +void __attribute__((visibility("default"))) TS_RouteHop_set_cltv_expiry_delta(uint32_t this_ptr, int32_t val) { + LDKRouteHop this_ptr_conv; this_ptr_conv.inner = (void*)(this_ptr & (~1)); this_ptr_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - MinFinalCltvExpiry_set_a(&this_ptr_conv, val); + RouteHop_set_cltv_expiry_delta(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_MinFinalCltvExpiry_new(int64_t a_arg) { - LDKMinFinalCltvExpiry ret_var = MinFinalCltvExpiry_new(a_arg); +uint32_t __attribute__((visibility("default"))) TS_RouteHop_new(int8_tArray pubkey_arg, uint32_t node_features_arg, int64_t short_channel_id_arg, uint32_t channel_features_arg, int64_t fee_msat_arg, int32_t cltv_expiry_delta_arg) { + LDKPublicKey pubkey_arg_ref; + CHECK(pubkey_arg->arr_len == 33); + memcpy(pubkey_arg_ref.compressed_form, pubkey_arg->elems, 33); + LDKNodeFeatures node_features_arg_conv; + node_features_arg_conv.inner = (void*)(node_features_arg & (~1)); + node_features_arg_conv.is_owned = (node_features_arg & 1) || (node_features_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(node_features_arg_conv); + node_features_arg_conv = NodeFeatures_clone(&node_features_arg_conv); + LDKChannelFeatures channel_features_arg_conv; + channel_features_arg_conv.inner = (void*)(channel_features_arg & (~1)); + channel_features_arg_conv.is_owned = (channel_features_arg & 1) || (channel_features_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_features_arg_conv); + channel_features_arg_conv = ChannelFeatures_clone(&channel_features_arg_conv); + LDKRouteHop ret_var = RouteHop_new(pubkey_arg_ref, node_features_arg_conv, short_channel_id_arg, channel_features_arg_conv, fee_msat_arg, cltv_expiry_delta_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -36004,8 +33137,8 @@ uint32_t __attribute__((visibility("default"))) TS_MinFinalCltvExpiry_new(int64 return ret_ref; } -static inline uint64_t MinFinalCltvExpiry_clone_ptr(LDKMinFinalCltvExpiry *NONNULL_PTR arg) { - LDKMinFinalCltvExpiry ret_var = MinFinalCltvExpiry_clone(arg); +static inline uint64_t RouteHop_clone_ptr(LDKRouteHop *NONNULL_PTR arg) { + LDKRouteHop ret_var = RouteHop_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -36016,21 +33149,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_MinFinalCltvExpiry_clone_ptr(uint32_t arg) { - LDKMinFinalCltvExpiry arg_conv; +int64_t __attribute__((visibility("default"))) TS_RouteHop_clone_ptr(uint32_t arg) { + LDKRouteHop arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = MinFinalCltvExpiry_clone_ptr(&arg_conv); + int64_t ret_val = RouteHop_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_MinFinalCltvExpiry_clone(uint32_t orig) { - LDKMinFinalCltvExpiry orig_conv; +uint32_t __attribute__((visibility("default"))) TS_RouteHop_clone(uint32_t orig) { + LDKRouteHop orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKMinFinalCltvExpiry ret_var = MinFinalCltvExpiry_clone(&orig_conv); + LDKRouteHop ret_var = RouteHop_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -36042,137 +33175,193 @@ uint32_t __attribute__((visibility("default"))) TS_MinFinalCltvExpiry_clone(uin return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_MinFinalCltvExpiry_hash(uint32_t o) { - LDKMinFinalCltvExpiry o_conv; +int64_t __attribute__((visibility("default"))) TS_RouteHop_hash(uint32_t o) { + LDKRouteHop o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = MinFinalCltvExpiry_hash(&o_conv); + int64_t ret_val = RouteHop_hash(&o_conv); return ret_val; } -jboolean __attribute__((visibility("default"))) TS_MinFinalCltvExpiry_eq(uint32_t a, uint32_t b) { - LDKMinFinalCltvExpiry a_conv; +jboolean __attribute__((visibility("default"))) TS_RouteHop_eq(uint32_t a, uint32_t b) { + LDKRouteHop a_conv; a_conv.inner = (void*)(a & (~1)); a_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKMinFinalCltvExpiry b_conv; + LDKRouteHop b_conv; b_conv.inner = (void*)(b & (~1)); b_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = MinFinalCltvExpiry_eq(&a_conv, &b_conv); + jboolean ret_val = RouteHop_eq(&a_conv, &b_conv); return ret_val; } -void __attribute__((visibility("default"))) TS_Fallback_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKFallback this_ptr_conv = *(LDKFallback*)(this_ptr_ptr); - FREE((void*)this_ptr); - Fallback_free(this_ptr_conv); +int8_tArray __attribute__((visibility("default"))) TS_RouteHop_write(uint32_t obj) { + LDKRouteHop obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = RouteHop_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -static inline uint64_t Fallback_clone_ptr(LDKFallback *NONNULL_PTR arg) { - LDKFallback *ret_copy = MALLOC(sizeof(LDKFallback), "LDKFallback"); - *ret_copy = Fallback_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_Fallback_clone_ptr(uint32_t arg) { - LDKFallback* arg_conv = (LDKFallback*)arg; - int64_t ret_val = Fallback_clone_ptr(arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_RouteHop_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_RouteHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHopDecodeErrorZ), "LDKCResult_RouteHopDecodeErrorZ"); + *ret_conv = RouteHop_read(ser_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Fallback_clone(uint32_t orig) { - LDKFallback* orig_conv = (LDKFallback*)orig; - LDKFallback *ret_copy = MALLOC(sizeof(LDKFallback), "LDKFallback"); - *ret_copy = Fallback_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_Route_free(uint32_t this_obj) { + LDKRoute this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + Route_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_Fallback_seg_wit_program(int8_t version, int8_tArray program) { +ptrArray __attribute__((visibility("default"))) TS_Route_get_paths(uint32_t this_ptr) { + LDKRoute this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_CVec_RouteHopZZ ret_var = Route_get_paths(&this_ptr_conv); + ptrArray ret_arr = NULL; + ret_arr = init_ptrArray(ret_var.datalen); + uint32_tArray *ret_arr_ptr = (uint32_tArray*)(ret_arr + 4); + for (size_t m = 0; m < ret_var.datalen; m++) { + LDKCVec_RouteHopZ ret_conv_12_var = ret_var.data[m]; + uint32_tArray ret_conv_12_arr = NULL; + ret_conv_12_arr = init_uint32_tArray(ret_conv_12_var.datalen); + uint32_t *ret_conv_12_arr_ptr = (uint32_t*)(ret_conv_12_arr + 4); + for (size_t k = 0; k < ret_conv_12_var.datalen; k++) { + LDKRouteHop ret_conv_12_conv_10_var = ret_conv_12_var.data[k]; + uint64_t ret_conv_12_conv_10_ref = 0; + CHECK((((uint64_t)ret_conv_12_conv_10_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_conv_12_conv_10_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_12_conv_10_var); + ret_conv_12_conv_10_ref = (uint64_t)ret_conv_12_conv_10_var.inner; + if (ret_conv_12_conv_10_var.is_owned) { + ret_conv_12_conv_10_ref |= 1; + } + ret_conv_12_arr_ptr[k] = ret_conv_12_conv_10_ref; + } + + FREE(ret_conv_12_var.data); + ret_arr_ptr[m] = ret_conv_12_arr; + } - LDKCVec_u8Z program_ref; - program_ref.datalen = *((uint32_t*)program); - program_ref.data = MALLOC(program_ref.datalen, "LDKCVec_u8Z Bytes"); - memcpy(program_ref.data, (uint8_t*)(program + 4), program_ref.datalen); - LDKFallback *ret_copy = MALLOC(sizeof(LDKFallback), "LDKFallback"); - *ret_copy = Fallback_seg_wit_program((LDKu5){ ._0 = version }, program_ref); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; + FREE(ret_var.data); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_Fallback_pub_key_hash(int8_tArray a) { - LDKTwentyBytes a_ref; - CHECK(*((uint32_t*)a) == 20); - memcpy(a_ref.data, (uint8_t*)(a + 4), 20); - LDKFallback *ret_copy = MALLOC(sizeof(LDKFallback), "LDKFallback"); - *ret_copy = Fallback_pub_key_hash(a_ref); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_Route_set_paths(uint32_t this_ptr, ptrArray val) { + LDKRoute this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_CVec_RouteHopZZ val_constr; + val_constr.datalen = val->arr_len; + if (val_constr.datalen > 0) + val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKCVec_RouteHopZ), "LDKCVec_CVec_RouteHopZZ Elements"); + else + val_constr.data = NULL; + uint32_tArray* val_vals = (void*) val->elems; + for (size_t m = 0; m < val_constr.datalen; m++) { + uint32_tArray val_conv_12 = val_vals[m]; + LDKCVec_RouteHopZ val_conv_12_constr; + val_conv_12_constr.datalen = val_conv_12->arr_len; + if (val_conv_12_constr.datalen > 0) + val_conv_12_constr.data = MALLOC(val_conv_12_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); + else + val_conv_12_constr.data = NULL; + uint32_t* val_conv_12_vals = val_conv_12->elems; + for (size_t k = 0; k < val_conv_12_constr.datalen; k++) { + uint32_t val_conv_12_conv_10 = val_conv_12_vals[k]; + LDKRouteHop val_conv_12_conv_10_conv; + val_conv_12_conv_10_conv.inner = (void*)(val_conv_12_conv_10 & (~1)); + val_conv_12_conv_10_conv.is_owned = (val_conv_12_conv_10 & 1) || (val_conv_12_conv_10 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_12_conv_10_conv); + val_conv_12_conv_10_conv = RouteHop_clone(&val_conv_12_conv_10_conv); + val_conv_12_constr.data[k] = val_conv_12_conv_10_conv; + } + val_constr.data[m] = val_conv_12_constr; + } + Route_set_paths(&this_ptr_conv, val_constr); } -uint32_t __attribute__((visibility("default"))) TS_Fallback_script_hash(int8_tArray a) { - LDKTwentyBytes a_ref; - CHECK(*((uint32_t*)a) == 20); - memcpy(a_ref.data, (uint8_t*)(a + 4), 20); - LDKFallback *ret_copy = MALLOC(sizeof(LDKFallback), "LDKFallback"); - *ret_copy = Fallback_script_hash(a_ref); - uint64_t ret_ref = (uint64_t)ret_copy; +uint32_t __attribute__((visibility("default"))) TS_Route_get_payee(uint32_t this_ptr) { + LDKRoute this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPayee ret_var = Route_get_payee(&this_ptr_conv); + uint64_t ret_ref = 0; + if ((uint64_t)ret_var.inner > 4096) { + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_Fallback_hash(uint32_t o) { - LDKFallback* o_conv = (LDKFallback*)o; - int64_t ret_val = Fallback_hash(o_conv); - return ret_val; -} - -jboolean __attribute__((visibility("default"))) TS_Fallback_eq(uint32_t a, uint32_t b) { - LDKFallback* a_conv = (LDKFallback*)a; - LDKFallback* b_conv = (LDKFallback*)b; - jboolean ret_val = Fallback_eq(a_conv, b_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_InvoiceSignature_free(uint32_t this_obj) { - LDKInvoiceSignature this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - InvoiceSignature_free(this_obj_conv); -} - -static inline uint64_t InvoiceSignature_clone_ptr(LDKInvoiceSignature *NONNULL_PTR arg) { - LDKInvoiceSignature ret_var = InvoiceSignature_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_InvoiceSignature_clone_ptr(uint32_t arg) { - LDKInvoiceSignature arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = InvoiceSignature_clone_ptr(&arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_Route_set_payee(uint32_t this_ptr, uint32_t val) { + LDKRoute this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPayee val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = Payee_clone(&val_conv); + Route_set_payee(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_InvoiceSignature_clone(uint32_t orig) { - LDKInvoiceSignature orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKInvoiceSignature ret_var = InvoiceSignature_clone(&orig_conv); +uint32_t __attribute__((visibility("default"))) TS_Route_new(ptrArray paths_arg, uint32_t payee_arg) { + LDKCVec_CVec_RouteHopZZ paths_arg_constr; + paths_arg_constr.datalen = paths_arg->arr_len; + if (paths_arg_constr.datalen > 0) + paths_arg_constr.data = MALLOC(paths_arg_constr.datalen * sizeof(LDKCVec_RouteHopZ), "LDKCVec_CVec_RouteHopZZ Elements"); + else + paths_arg_constr.data = NULL; + uint32_tArray* paths_arg_vals = (void*) paths_arg->elems; + for (size_t m = 0; m < paths_arg_constr.datalen; m++) { + uint32_tArray paths_arg_conv_12 = paths_arg_vals[m]; + LDKCVec_RouteHopZ paths_arg_conv_12_constr; + paths_arg_conv_12_constr.datalen = paths_arg_conv_12->arr_len; + if (paths_arg_conv_12_constr.datalen > 0) + paths_arg_conv_12_constr.data = MALLOC(paths_arg_conv_12_constr.datalen * sizeof(LDKRouteHop), "LDKCVec_RouteHopZ Elements"); + else + paths_arg_conv_12_constr.data = NULL; + uint32_t* paths_arg_conv_12_vals = paths_arg_conv_12->elems; + for (size_t k = 0; k < paths_arg_conv_12_constr.datalen; k++) { + uint32_t paths_arg_conv_12_conv_10 = paths_arg_conv_12_vals[k]; + LDKRouteHop paths_arg_conv_12_conv_10_conv; + paths_arg_conv_12_conv_10_conv.inner = (void*)(paths_arg_conv_12_conv_10 & (~1)); + paths_arg_conv_12_conv_10_conv.is_owned = (paths_arg_conv_12_conv_10 & 1) || (paths_arg_conv_12_conv_10 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(paths_arg_conv_12_conv_10_conv); + paths_arg_conv_12_conv_10_conv = RouteHop_clone(&paths_arg_conv_12_conv_10_conv); + paths_arg_conv_12_constr.data[k] = paths_arg_conv_12_conv_10_conv; + } + paths_arg_constr.data[m] = paths_arg_conv_12_constr; + } + LDKPayee payee_arg_conv; + payee_arg_conv.inner = (void*)(payee_arg & (~1)); + payee_arg_conv.is_owned = (payee_arg & 1) || (payee_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(payee_arg_conv); + payee_arg_conv = Payee_clone(&payee_arg_conv); + LDKRoute ret_var = Route_new(paths_arg_constr, payee_arg_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -36184,29 +33373,8 @@ uint32_t __attribute__((visibility("default"))) TS_InvoiceSignature_clone(uint3 return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_InvoiceSignature_eq(uint32_t a, uint32_t b) { - LDKInvoiceSignature a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKInvoiceSignature b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = InvoiceSignature_eq(&a_conv, &b_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_PrivateRoute_free(uint32_t this_obj) { - LDKPrivateRoute this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - PrivateRoute_free(this_obj_conv); -} - -static inline uint64_t PrivateRoute_clone_ptr(LDKPrivateRoute *NONNULL_PTR arg) { - LDKPrivateRoute ret_var = PrivateRoute_clone(arg); +static inline uint64_t Route_clone_ptr(LDKRoute *NONNULL_PTR arg) { + LDKRoute ret_var = Route_clone(arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -36217,21 +33385,21 @@ if (ret_var.is_owned) { } return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_PrivateRoute_clone_ptr(uint32_t arg) { - LDKPrivateRoute arg_conv; +int64_t __attribute__((visibility("default"))) TS_Route_clone_ptr(uint32_t arg) { + LDKRoute arg_conv; arg_conv.inner = (void*)(arg & (~1)); arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = PrivateRoute_clone_ptr(&arg_conv); + int64_t ret_val = Route_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_PrivateRoute_clone(uint32_t orig) { - LDKPrivateRoute orig_conv; +uint32_t __attribute__((visibility("default"))) TS_Route_clone(uint32_t orig) { + LDKRoute orig_conv; orig_conv.inner = (void*)(orig & (~1)); orig_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKPrivateRoute ret_var = PrivateRoute_clone(&orig_conv); + LDKRoute ret_var = Route_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -36243,72 +33411,81 @@ uint32_t __attribute__((visibility("default"))) TS_PrivateRoute_clone(uint32_t return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_PrivateRoute_hash(uint32_t o) { - LDKPrivateRoute o_conv; +int64_t __attribute__((visibility("default"))) TS_Route_hash(uint32_t o) { + LDKRoute o_conv; o_conv.inner = (void*)(o & (~1)); o_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = PrivateRoute_hash(&o_conv); + int64_t ret_val = Route_hash(&o_conv); return ret_val; } -jboolean __attribute__((visibility("default"))) TS_PrivateRoute_eq(uint32_t a, uint32_t b) { - LDKPrivateRoute a_conv; +jboolean __attribute__((visibility("default"))) TS_Route_eq(uint32_t a, uint32_t b) { + LDKRoute a_conv; a_conv.inner = (void*)(a & (~1)); a_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKPrivateRoute b_conv; + LDKRoute b_conv; b_conv.inner = (void*)(b & (~1)); b_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = PrivateRoute_eq(&a_conv, &b_conv); + jboolean ret_val = Route_eq(&a_conv, &b_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_SignedRawInvoice_into_parts(uint32_t this_arg) { - LDKSignedRawInvoice this_arg_conv; +int64_t __attribute__((visibility("default"))) TS_Route_get_total_fees(uint32_t this_arg) { + LDKRoute this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = (this_arg & 1) || (this_arg == 0); + this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - this_arg_conv = SignedRawInvoice_clone(&this_arg_conv); - LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ), "LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ"); - *ret_conv = SignedRawInvoice_into_parts(this_arg_conv); - return ((uint64_t)ret_conv); + int64_t ret_val = Route_get_total_fees(&this_arg_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_SignedRawInvoice_raw_invoice(uint32_t this_arg) { - LDKSignedRawInvoice this_arg_conv; +int64_t __attribute__((visibility("default"))) TS_Route_get_total_amount(uint32_t this_arg) { + LDKRoute this_arg_conv; this_arg_conv.inner = (void*)(this_arg & (~1)); this_arg_conv.is_owned = false; CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKRawInvoice ret_var = SignedRawInvoice_raw_invoice(&this_arg_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; + int64_t ret_val = Route_get_total_amount(&this_arg_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_SignedRawInvoice_hash(uint32_t this_arg) { - LDKSignedRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *SignedRawInvoice_hash(&this_arg_conv), 32); +int8_tArray __attribute__((visibility("default"))) TS_Route_write(uint32_t obj) { + LDKRoute obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = Route_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_SignedRawInvoice_signature(uint32_t this_arg) { - LDKSignedRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKInvoiceSignature ret_var = SignedRawInvoice_signature(&this_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_Route_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_RouteDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteDecodeErrorZ), "LDKCResult_RouteDecodeErrorZ"); + *ret_conv = Route_read(ser_ref); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_RouteParameters_free(uint32_t this_obj) { + LDKRouteParameters this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + RouteParameters_free(this_obj_conv); +} + +uint32_t __attribute__((visibility("default"))) TS_RouteParameters_get_payee(uint32_t this_ptr) { + LDKRouteParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPayee ret_var = RouteParameters_get_payee(&this_ptr_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -36320,165 +33497,165 @@ uint32_t __attribute__((visibility("default"))) TS_SignedRawInvoice_signature(u return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_SignedRawInvoice_recover_payee_pub_key(uint32_t this_arg) { - LDKSignedRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCResult_PayeePubKeyErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeePubKeyErrorZ), "LDKCResult_PayeePubKeyErrorZ"); - *ret_conv = SignedRawInvoice_recover_payee_pub_key(&this_arg_conv); - return (uint64_t)ret_conv; +void __attribute__((visibility("default"))) TS_RouteParameters_set_payee(uint32_t this_ptr, uint32_t val) { + LDKRouteParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPayee val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = Payee_clone(&val_conv); + RouteParameters_set_payee(&this_ptr_conv, val_conv); } -jboolean __attribute__((visibility("default"))) TS_SignedRawInvoice_check_signature(uint32_t this_arg) { - LDKSignedRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = SignedRawInvoice_check_signature(&this_arg_conv); +int64_t __attribute__((visibility("default"))) TS_RouteParameters_get_final_value_msat(uint32_t this_ptr) { + LDKRouteParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = RouteParameters_get_final_value_msat(&this_ptr_conv); return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_RawInvoice_hash(uint32_t this_arg) { - LDKRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), RawInvoice_hash(&this_arg_conv).data, 32); - return ret_arr; +void __attribute__((visibility("default"))) TS_RouteParameters_set_final_value_msat(uint32_t this_ptr, int64_t val) { + LDKRouteParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + RouteParameters_set_final_value_msat(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_RawInvoice_payment_hash(uint32_t this_arg) { - LDKRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKSha256 ret_var = RawInvoice_payment_hash(&this_arg_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } - return ret_ref; +int32_t __attribute__((visibility("default"))) TS_RouteParameters_get_final_cltv_expiry_delta(uint32_t this_ptr) { + LDKRouteParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int32_t ret_val = RouteParameters_get_final_cltv_expiry_delta(&this_ptr_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_RawInvoice_description(uint32_t this_arg) { - LDKRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKDescription ret_var = RawInvoice_description(&this_arg_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } - return ret_ref; +void __attribute__((visibility("default"))) TS_RouteParameters_set_final_cltv_expiry_delta(uint32_t this_ptr, int32_t val) { + LDKRouteParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + RouteParameters_set_final_cltv_expiry_delta(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_RawInvoice_payee_pub_key(uint32_t this_arg) { - LDKRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKPayeePubKey ret_var = RawInvoice_payee_pub_key(&this_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_RouteParameters_new(uint32_t payee_arg, int64_t final_value_msat_arg, int32_t final_cltv_expiry_delta_arg) { + LDKPayee payee_arg_conv; + payee_arg_conv.inner = (void*)(payee_arg & (~1)); + payee_arg_conv.is_owned = (payee_arg & 1) || (payee_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(payee_arg_conv); + payee_arg_conv = Payee_clone(&payee_arg_conv); + LDKRouteParameters ret_var = RouteParameters_new(payee_arg_conv, final_value_msat_arg, final_cltv_expiry_delta_arg); uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_RawInvoice_description_hash(uint32_t this_arg) { - LDKRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKSha256 ret_var = RawInvoice_description_hash(&this_arg_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } +static inline uint64_t RouteParameters_clone_ptr(LDKRouteParameters *NONNULL_PTR arg) { + LDKRouteParameters ret_var = RouteParameters_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; +} return ret_ref; } +int64_t __attribute__((visibility("default"))) TS_RouteParameters_clone_ptr(uint32_t arg) { + LDKRouteParameters arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = RouteParameters_clone_ptr(&arg_conv); + return ret_val; +} -uint32_t __attribute__((visibility("default"))) TS_RawInvoice_expiry_time(uint32_t this_arg) { - LDKRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKExpiryTime ret_var = RawInvoice_expiry_time(&this_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_RouteParameters_clone(uint32_t orig) { + LDKRouteParameters orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKRouteParameters ret_var = RouteParameters_clone(&orig_conv); uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_RawInvoice_min_final_cltv_expiry(uint32_t this_arg) { - LDKRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKMinFinalCltvExpiry ret_var = RawInvoice_min_final_cltv_expiry(&this_arg_conv); - uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - } - return ret_ref; +int8_tArray __attribute__((visibility("default"))) TS_RouteParameters_write(uint32_t obj) { + LDKRouteParameters obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = RouteParameters_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; +} + +uint32_t __attribute__((visibility("default"))) TS_RouteParameters_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_RouteParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteParametersDecodeErrorZ), "LDKCResult_RouteParametersDecodeErrorZ"); + *ret_conv = RouteParameters_read(ser_ref); + return (uint64_t)ret_conv; +} + +void __attribute__((visibility("default"))) TS_Payee_free(uint32_t this_obj) { + LDKPayee this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + Payee_free(this_obj_conv); } -int8_tArray __attribute__((visibility("default"))) TS_RawInvoice_payment_secret(uint32_t this_arg) { - LDKRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), RawInvoice_payment_secret(&this_arg_conv).data, 32); +int8_tArray __attribute__((visibility("default"))) TS_Payee_get_pubkey(uint32_t this_ptr) { + LDKPayee this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, Payee_get_pubkey(&this_ptr_conv).compressed_form, 33); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_RawInvoice_features(uint32_t this_arg) { - LDKRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKInvoiceFeatures ret_var = RawInvoice_features(&this_arg_conv); +void __attribute__((visibility("default"))) TS_Payee_set_pubkey(uint32_t this_ptr, int8_tArray val) { + LDKPayee this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + Payee_set_pubkey(&this_ptr_conv, val_ref); +} + +uint32_t __attribute__((visibility("default"))) TS_Payee_get_features(uint32_t this_ptr) { + LDKPayee this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKInvoiceFeatures ret_var = Payee_get_features(&this_ptr_conv); uint64_t ret_ref = 0; if ((uint64_t)ret_var.inner > 4096) { CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. @@ -36492,89 +33669,160 @@ uint32_t __attribute__((visibility("default"))) TS_RawInvoice_features(uint32_t return ret_ref; } -uint32_tArray __attribute__((visibility("default"))) TS_RawInvoice_private_routes(uint32_t this_arg) { - LDKRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_PrivateRouteZ ret_var = RawInvoice_private_routes(&this_arg_conv); +void __attribute__((visibility("default"))) TS_Payee_set_features(uint32_t this_ptr, uint32_t val) { + LDKPayee this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKInvoiceFeatures val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = InvoiceFeatures_clone(&val_conv); + Payee_set_features(&this_ptr_conv, val_conv); +} + +uint32_tArray __attribute__((visibility("default"))) TS_Payee_get_route_hints(uint32_t this_ptr) { + LDKPayee this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_RouteHintZ ret_var = Payee_get_route_hints(&this_ptr_conv); uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); + ret_arr = init_uint32_tArray(ret_var.datalen); uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t o = 0; o < ret_var.datalen; o++) { - LDKPrivateRoute ret_conv_14_var = ret_var.data[o]; - uint64_t ret_conv_14_ref = 0; - CHECK((((uint64_t)ret_conv_14_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_14_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_14_var); - ret_conv_14_ref = (uint64_t)ret_conv_14_var.inner; - if (ret_conv_14_var.is_owned) { - ret_conv_14_ref |= 1; + for (size_t l = 0; l < ret_var.datalen; l++) { + LDKRouteHint ret_conv_11_var = ret_var.data[l]; + uint64_t ret_conv_11_ref = 0; + CHECK((((uint64_t)ret_conv_11_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_conv_11_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_11_var); + ret_conv_11_ref = (uint64_t)ret_conv_11_var.inner; + if (ret_conv_11_var.is_owned) { + ret_conv_11_ref |= 1; } - ret_arr_ptr[o] = ret_conv_14_ref; + ret_arr_ptr[l] = ret_conv_11_ref; } FREE(ret_var.data); return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_RawInvoice_amount_pico_btc(uint32_t this_arg) { - LDKRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); +void __attribute__((visibility("default"))) TS_Payee_set_route_hints(uint32_t this_ptr, uint32_tArray val) { + LDKPayee this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_RouteHintZ val_constr; + val_constr.datalen = val->arr_len; + if (val_constr.datalen > 0) + val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKRouteHint), "LDKCVec_RouteHintZ Elements"); + else + val_constr.data = NULL; + uint32_t* val_vals = val->elems; + for (size_t l = 0; l < val_constr.datalen; l++) { + uint32_t val_conv_11 = val_vals[l]; + LDKRouteHint val_conv_11_conv; + val_conv_11_conv.inner = (void*)(val_conv_11 & (~1)); + val_conv_11_conv.is_owned = (val_conv_11 & 1) || (val_conv_11 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_11_conv); + val_conv_11_conv = RouteHint_clone(&val_conv_11_conv); + val_constr.data[l] = val_conv_11_conv; + } + Payee_set_route_hints(&this_ptr_conv, val_constr); +} + +uint32_t __attribute__((visibility("default"))) TS_Payee_get_expiry_time(uint32_t this_ptr) { + LDKPayee this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *ret_copy = RawInvoice_amount_pico_btc(&this_arg_conv); + *ret_copy = Payee_get_expiry_time(&this_ptr_conv); uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_RawInvoice_currency(uint32_t this_arg) { - LDKRawInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - uint32_t ret_conv = LDKCurrency_to_js(RawInvoice_currency(&this_arg_conv)); - return ret_conv; +void __attribute__((visibility("default"))) TS_Payee_set_expiry_time(uint32_t this_ptr, uint32_t val) { + LDKPayee this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr); + val_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)val) & ~1)); + Payee_set_expiry_time(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_PositiveTimestamp_from_unix_timestamp(int64_t unix_seconds) { - LDKCResult_PositiveTimestampCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PositiveTimestampCreationErrorZ), "LDKCResult_PositiveTimestampCreationErrorZ"); - *ret_conv = PositiveTimestamp_from_unix_timestamp(unix_seconds); - return (uint64_t)ret_conv; +uint32_t __attribute__((visibility("default"))) TS_Payee_new(int8_tArray pubkey_arg, uint32_t features_arg, uint32_tArray route_hints_arg, uint32_t expiry_time_arg) { + LDKPublicKey pubkey_arg_ref; + CHECK(pubkey_arg->arr_len == 33); + memcpy(pubkey_arg_ref.compressed_form, pubkey_arg->elems, 33); + LDKInvoiceFeatures features_arg_conv; + features_arg_conv.inner = (void*)(features_arg & (~1)); + features_arg_conv.is_owned = (features_arg & 1) || (features_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(features_arg_conv); + features_arg_conv = InvoiceFeatures_clone(&features_arg_conv); + LDKCVec_RouteHintZ route_hints_arg_constr; + route_hints_arg_constr.datalen = route_hints_arg->arr_len; + if (route_hints_arg_constr.datalen > 0) + route_hints_arg_constr.data = MALLOC(route_hints_arg_constr.datalen * sizeof(LDKRouteHint), "LDKCVec_RouteHintZ Elements"); + else + route_hints_arg_constr.data = NULL; + uint32_t* route_hints_arg_vals = route_hints_arg->elems; + for (size_t l = 0; l < route_hints_arg_constr.datalen; l++) { + uint32_t route_hints_arg_conv_11 = route_hints_arg_vals[l]; + LDKRouteHint route_hints_arg_conv_11_conv; + route_hints_arg_conv_11_conv.inner = (void*)(route_hints_arg_conv_11 & (~1)); + route_hints_arg_conv_11_conv.is_owned = (route_hints_arg_conv_11 & 1) || (route_hints_arg_conv_11 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(route_hints_arg_conv_11_conv); + route_hints_arg_conv_11_conv = RouteHint_clone(&route_hints_arg_conv_11_conv); + route_hints_arg_constr.data[l] = route_hints_arg_conv_11_conv; + } + void* expiry_time_arg_ptr = (void*)(((uint64_t)expiry_time_arg) & ~1); + CHECK_ACCESS(expiry_time_arg_ptr); + LDKCOption_u64Z expiry_time_arg_conv = *(LDKCOption_u64Z*)(expiry_time_arg_ptr); + expiry_time_arg_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)expiry_time_arg) & ~1)); + LDKPayee ret_var = Payee_new(pubkey_arg_ref, features_arg_conv, route_hints_arg_constr, expiry_time_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_PositiveTimestamp_from_system_time(int64_t time) { - LDKCResult_PositiveTimestampCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PositiveTimestampCreationErrorZ), "LDKCResult_PositiveTimestampCreationErrorZ"); - *ret_conv = PositiveTimestamp_from_system_time(time); - return (uint64_t)ret_conv; +static inline uint64_t Payee_clone_ptr(LDKPayee *NONNULL_PTR arg) { + LDKPayee ret_var = Payee_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -int64_t __attribute__((visibility("default"))) TS_PositiveTimestamp_as_unix_timestamp(uint32_t this_arg) { - LDKPositiveTimestamp this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = PositiveTimestamp_as_unix_timestamp(&this_arg_conv); - return ret_val; + return ret_ref; } - -int64_t __attribute__((visibility("default"))) TS_PositiveTimestamp_as_time(uint32_t this_arg) { - LDKPositiveTimestamp this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = PositiveTimestamp_as_time(&this_arg_conv); +int64_t __attribute__((visibility("default"))) TS_Payee_clone_ptr(uint32_t arg) { + LDKPayee arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = Payee_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_Invoice_into_signed_raw(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = (this_arg & 1) || (this_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - this_arg_conv = Invoice_clone(&this_arg_conv); - LDKSignedRawInvoice ret_var = Invoice_into_signed_raw(this_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_Payee_clone(uint32_t orig) { + LDKPayee orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKPayee ret_var = Payee_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -36586,133 +33834,100 @@ uint32_t __attribute__((visibility("default"))) TS_Invoice_into_signed_raw(uint return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_Invoice_check_signature(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCResult_NoneSemanticErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneSemanticErrorZ), "LDKCResult_NoneSemanticErrorZ"); - *ret_conv = Invoice_check_signature(&this_arg_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_Invoice_from_signed(uint32_t signed_invoice) { - LDKSignedRawInvoice signed_invoice_conv; - signed_invoice_conv.inner = (void*)(signed_invoice & (~1)); - signed_invoice_conv.is_owned = (signed_invoice & 1) || (signed_invoice == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(signed_invoice_conv); - signed_invoice_conv = SignedRawInvoice_clone(&signed_invoice_conv); - LDKCResult_InvoiceSemanticErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceSemanticErrorZ), "LDKCResult_InvoiceSemanticErrorZ"); - *ret_conv = Invoice_from_signed(signed_invoice_conv); - return (uint64_t)ret_conv; -} - -int64_t __attribute__((visibility("default"))) TS_Invoice_timestamp(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = Invoice_timestamp(&this_arg_conv); +int64_t __attribute__((visibility("default"))) TS_Payee_hash(uint32_t o) { + LDKPayee o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + int64_t ret_val = Payee_hash(&o_conv); return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_Invoice_payment_hash(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *Invoice_payment_hash(&this_arg_conv), 32); - return ret_arr; +jboolean __attribute__((visibility("default"))) TS_Payee_eq(uint32_t a, uint32_t b) { + LDKPayee a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + LDKPayee b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + jboolean ret_val = Payee_eq(&a_conv, &b_conv); + return ret_val; } -int8_tArray __attribute__((visibility("default"))) TS_Invoice_payee_pub_key(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), Invoice_payee_pub_key(&this_arg_conv).compressed_form, 33); +int8_tArray __attribute__((visibility("default"))) TS_Payee_write(uint32_t obj) { + LDKPayee obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = Payee_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); return ret_arr; } -int8_tArray __attribute__((visibility("default"))) TS_Invoice_payment_secret(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int8_tArray ret_arr = init_arr(32, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), *Invoice_payment_secret(&this_arg_conv), 32); - return ret_arr; +uint32_t __attribute__((visibility("default"))) TS_Payee_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_PayeeDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PayeeDecodeErrorZ), "LDKCResult_PayeeDecodeErrorZ"); + *ret_conv = Payee_read(ser_ref); + return (uint64_t)ret_conv; } -uint32_t __attribute__((visibility("default"))) TS_Invoice_features(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKInvoiceFeatures ret_var = Invoice_features(&this_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_Payee_from_node_id(int8_tArray pubkey) { + LDKPublicKey pubkey_ref; + CHECK(pubkey->arr_len == 33); + memcpy(pubkey_ref.compressed_form, pubkey->elems, 33); + LDKPayee ret_var = Payee_from_node_id(pubkey_ref); uint64_t ret_ref = 0; - if ((uint64_t)ret_var.inner > 4096) { - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; } return ret_ref; } -int8_tArray __attribute__((visibility("default"))) TS_Invoice_recover_payee_pub_key(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int8_tArray ret_arr = init_arr(33, sizeof(uint8_t), "Native int8_tArray Bytes"); - memcpy((uint8_t*)(ret_arr + 4), Invoice_recover_payee_pub_key(&this_arg_conv).compressed_form, 33); - return ret_arr; -} - -int64_t __attribute__((visibility("default"))) TS_Invoice_expiry_time(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = Invoice_expiry_time(&this_arg_conv); - return ret_val; -} - -jboolean __attribute__((visibility("default"))) TS_Invoice_is_expired(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - jboolean ret_val = Invoice_is_expired(&this_arg_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_Payee_for_keysend(int8_tArray pubkey) { + LDKPublicKey pubkey_ref; + CHECK(pubkey->arr_len == 33); + memcpy(pubkey_ref.compressed_form, pubkey->elems, 33); + LDKPayee ret_var = Payee_for_keysend(pubkey_ref); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_Invoice_min_final_cltv_expiry(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = Invoice_min_final_cltv_expiry(&this_arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_RouteHint_free(uint32_t this_obj) { + LDKRouteHint this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + RouteHint_free(this_obj_conv); } -uint32_tArray __attribute__((visibility("default"))) TS_Invoice_private_routes(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_PrivateRouteZ ret_var = Invoice_private_routes(&this_arg_conv); +uint32_tArray __attribute__((visibility("default"))) TS_RouteHint_get_a(uint32_t this_ptr) { + LDKRouteHint this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_RouteHintHopZ ret_var = RouteHint_get_a(&this_ptr_conv); uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); + ret_arr = init_uint32_tArray(ret_var.datalen); uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); for (size_t o = 0; o < ret_var.datalen; o++) { - LDKPrivateRoute ret_conv_14_var = ret_var.data[o]; + LDKRouteHintHop ret_conv_14_var = ret_var.data[o]; uint64_t ret_conv_14_ref = 0; CHECK((((uint64_t)ret_conv_14_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_conv_14_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -36728,119 +33943,86 @@ uint32_tArray __attribute__((visibility("default"))) TS_Invoice_private_routes( return ret_arr; } -uint32_tArray __attribute__((visibility("default"))) TS_Invoice_route_hints(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCVec_RouteHintZ ret_var = Invoice_route_hints(&this_arg_conv); - uint32_tArray ret_arr = NULL; - ret_arr = init_arr(ret_var.datalen, sizeof(uint32_t), "Native uint32_tArray Bytes"); - uint32_t *ret_arr_ptr = (uint32_t*)(ret_arr + 4); - for (size_t l = 0; l < ret_var.datalen; l++) { - LDKRouteHint ret_conv_11_var = ret_var.data[l]; - uint64_t ret_conv_11_ref = 0; - CHECK((((uint64_t)ret_conv_11_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_conv_11_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_11_var); - ret_conv_11_ref = (uint64_t)ret_conv_11_var.inner; - if (ret_conv_11_var.is_owned) { - ret_conv_11_ref |= 1; - } - ret_arr_ptr[l] = ret_conv_11_ref; +void __attribute__((visibility("default"))) TS_RouteHint_set_a(uint32_t this_ptr, uint32_tArray val) { + LDKRouteHint this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCVec_RouteHintHopZ val_constr; + val_constr.datalen = val->arr_len; + if (val_constr.datalen > 0) + val_constr.data = MALLOC(val_constr.datalen * sizeof(LDKRouteHintHop), "LDKCVec_RouteHintHopZ Elements"); + else + val_constr.data = NULL; + uint32_t* val_vals = val->elems; + for (size_t o = 0; o < val_constr.datalen; o++) { + uint32_t val_conv_14 = val_vals[o]; + LDKRouteHintHop val_conv_14_conv; + val_conv_14_conv.inner = (void*)(val_conv_14 & (~1)); + val_conv_14_conv.is_owned = (val_conv_14 & 1) || (val_conv_14 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv_14_conv); + val_conv_14_conv = RouteHintHop_clone(&val_conv_14_conv); + val_constr.data[o] = val_conv_14_conv; } - - FREE(ret_var.data); - return ret_arr; -} - -uint32_t __attribute__((visibility("default"))) TS_Invoice_currency(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - uint32_t ret_conv = LDKCurrency_to_js(Invoice_currency(&this_arg_conv)); - return ret_conv; + RouteHint_set_a(&this_ptr_conv, val_constr); } -uint32_t __attribute__((visibility("default"))) TS_Invoice_amount_milli_satoshis(uint32_t this_arg) { - LDKInvoice this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); - *ret_copy = Invoice_amount_milli_satoshis(&this_arg_conv); - uint64_t ret_ref = (uint64_t)ret_copy; +uint32_t __attribute__((visibility("default"))) TS_RouteHint_new(uint32_tArray a_arg) { + LDKCVec_RouteHintHopZ a_arg_constr; + a_arg_constr.datalen = a_arg->arr_len; + if (a_arg_constr.datalen > 0) + a_arg_constr.data = MALLOC(a_arg_constr.datalen * sizeof(LDKRouteHintHop), "LDKCVec_RouteHintHopZ Elements"); + else + a_arg_constr.data = NULL; + uint32_t* a_arg_vals = a_arg->elems; + for (size_t o = 0; o < a_arg_constr.datalen; o++) { + uint32_t a_arg_conv_14 = a_arg_vals[o]; + LDKRouteHintHop a_arg_conv_14_conv; + a_arg_conv_14_conv.inner = (void*)(a_arg_conv_14 & (~1)); + a_arg_conv_14_conv.is_owned = (a_arg_conv_14 & 1) || (a_arg_conv_14 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_arg_conv_14_conv); + a_arg_conv_14_conv = RouteHintHop_clone(&a_arg_conv_14_conv); + a_arg_constr.data[o] = a_arg_conv_14_conv; + } + LDKRouteHint ret_var = RouteHint_new(a_arg_constr); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_Description_new(jstring description) { - LDKStr description_conv = str_ref_to_owned_c(description); - LDKCResult_DescriptionCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DescriptionCreationErrorZ), "LDKCResult_DescriptionCreationErrorZ"); - *ret_conv = Description_new(description_conv); - return (uint64_t)ret_conv; -} - -jstring __attribute__((visibility("default"))) TS_Description_into_inner(uint32_t this_arg) { - LDKDescription this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = (this_arg & 1) || (this_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - this_arg_conv = Description_clone(&this_arg_conv); - LDKStr ret_str = Description_into_inner(this_arg_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_ExpiryTime_from_seconds(int64_t seconds) { - LDKCResult_ExpiryTimeCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ExpiryTimeCreationErrorZ), "LDKCResult_ExpiryTimeCreationErrorZ"); - *ret_conv = ExpiryTime_from_seconds(seconds); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_ExpiryTime_from_duration(int64_t duration) { - LDKCResult_ExpiryTimeCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ExpiryTimeCreationErrorZ), "LDKCResult_ExpiryTimeCreationErrorZ"); - *ret_conv = ExpiryTime_from_duration(duration); - return (uint64_t)ret_conv; +static inline uint64_t RouteHint_clone_ptr(LDKRouteHint *NONNULL_PTR arg) { + LDKRouteHint ret_var = RouteHint_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -int64_t __attribute__((visibility("default"))) TS_ExpiryTime_as_seconds(uint32_t this_arg) { - LDKExpiryTime this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = ExpiryTime_as_seconds(&this_arg_conv); - return ret_val; + return ret_ref; } - -int64_t __attribute__((visibility("default"))) TS_ExpiryTime_as_duration(uint32_t this_arg) { - LDKExpiryTime this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - int64_t ret_val = ExpiryTime_as_duration(&this_arg_conv); +int64_t __attribute__((visibility("default"))) TS_RouteHint_clone_ptr(uint32_t arg) { + LDKRouteHint arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = RouteHint_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_PrivateRoute_new(uint32_t hops) { - LDKRouteHint hops_conv; - hops_conv.inner = (void*)(hops & (~1)); - hops_conv.is_owned = (hops & 1) || (hops == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(hops_conv); - hops_conv = RouteHint_clone(&hops_conv); - LDKCResult_PrivateRouteCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PrivateRouteCreationErrorZ), "LDKCResult_PrivateRouteCreationErrorZ"); - *ret_conv = PrivateRoute_new(hops_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_PrivateRoute_into_inner(uint32_t this_arg) { - LDKPrivateRoute this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = (this_arg & 1) || (this_arg == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - this_arg_conv = PrivateRoute_clone(&this_arg_conv); - LDKRouteHint ret_var = PrivateRoute_into_inner(this_arg_conv); +uint32_t __attribute__((visibility("default"))) TS_RouteHint_clone(uint32_t orig) { + LDKRouteHint orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKRouteHint ret_var = RouteHint_clone(&orig_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -36852,235 +34034,372 @@ uint32_t __attribute__((visibility("default"))) TS_PrivateRoute_into_inner(uint return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_CreationError_clone(uint32_t orig) { - LDKCreationError* orig_conv = (LDKCreationError*)(orig & ~1); - uint32_t ret_conv = LDKCreationError_to_js(CreationError_clone(orig_conv)); - return ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_CreationError_description_too_long() { - uint32_t ret_conv = LDKCreationError_to_js(CreationError_description_too_long()); - return ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_CreationError_route_too_long() { - uint32_t ret_conv = LDKCreationError_to_js(CreationError_route_too_long()); - return ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_CreationError_timestamp_out_of_bounds() { - uint32_t ret_conv = LDKCreationError_to_js(CreationError_timestamp_out_of_bounds()); - return ret_conv; +int64_t __attribute__((visibility("default"))) TS_RouteHint_hash(uint32_t o) { + LDKRouteHint o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + int64_t ret_val = RouteHint_hash(&o_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CreationError_expiry_time_out_of_bounds() { - uint32_t ret_conv = LDKCreationError_to_js(CreationError_expiry_time_out_of_bounds()); - return ret_conv; +jboolean __attribute__((visibility("default"))) TS_RouteHint_eq(uint32_t a, uint32_t b) { + LDKRouteHint a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + LDKRouteHint b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + jboolean ret_val = RouteHint_eq(&a_conv, &b_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_CreationError_invalid_amount() { - uint32_t ret_conv = LDKCreationError_to_js(CreationError_invalid_amount()); - return ret_conv; +int8_tArray __attribute__((visibility("default"))) TS_RouteHint_write(uint32_t obj) { + LDKRouteHint obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = RouteHint_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -jboolean __attribute__((visibility("default"))) TS_CreationError_eq(uint32_t a, uint32_t b) { - LDKCreationError* a_conv = (LDKCreationError*)(a & ~1); - LDKCreationError* b_conv = (LDKCreationError*)(b & ~1); - jboolean ret_val = CreationError_eq(a_conv, b_conv); - return ret_val; +uint32_t __attribute__((visibility("default"))) TS_RouteHint_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_RouteHintDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintDecodeErrorZ), "LDKCResult_RouteHintDecodeErrorZ"); + *ret_conv = RouteHint_read(ser_ref); + return (uint64_t)ret_conv; } -jstring __attribute__((visibility("default"))) TS_CreationError_to_str(uint32_t o) { - LDKCreationError* o_conv = (LDKCreationError*)(o & ~1); - LDKStr ret_str = CreationError_to_str(o_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; +void __attribute__((visibility("default"))) TS_RouteHintHop_free(uint32_t this_obj) { + LDKRouteHintHop this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + RouteHintHop_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_SemanticError_clone(uint32_t orig) { - LDKSemanticError* orig_conv = (LDKSemanticError*)(orig & ~1); - uint32_t ret_conv = LDKSemanticError_to_js(SemanticError_clone(orig_conv)); - return ret_conv; +int8_tArray __attribute__((visibility("default"))) TS_RouteHintHop_get_src_node_id(uint32_t this_ptr) { + LDKRouteHintHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int8_tArray ret_arr = init_int8_tArray(33); + memcpy(ret_arr->elems, RouteHintHop_get_src_node_id(&this_ptr_conv).compressed_form, 33); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_SemanticError_no_payment_hash() { - uint32_t ret_conv = LDKSemanticError_to_js(SemanticError_no_payment_hash()); - return ret_conv; +void __attribute__((visibility("default"))) TS_RouteHintHop_set_src_node_id(uint32_t this_ptr, int8_tArray val) { + LDKRouteHintHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKPublicKey val_ref; + CHECK(val->arr_len == 33); + memcpy(val_ref.compressed_form, val->elems, 33); + RouteHintHop_set_src_node_id(&this_ptr_conv, val_ref); } -uint32_t __attribute__((visibility("default"))) TS_SemanticError_multiple_payment_hashes() { - uint32_t ret_conv = LDKSemanticError_to_js(SemanticError_multiple_payment_hashes()); - return ret_conv; +int64_t __attribute__((visibility("default"))) TS_RouteHintHop_get_short_channel_id(uint32_t this_ptr) { + LDKRouteHintHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = RouteHintHop_get_short_channel_id(&this_ptr_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_SemanticError_no_description() { - uint32_t ret_conv = LDKSemanticError_to_js(SemanticError_no_description()); - return ret_conv; +void __attribute__((visibility("default"))) TS_RouteHintHop_set_short_channel_id(uint32_t this_ptr, int64_t val) { + LDKRouteHintHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + RouteHintHop_set_short_channel_id(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_SemanticError_multiple_descriptions() { - uint32_t ret_conv = LDKSemanticError_to_js(SemanticError_multiple_descriptions()); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_get_fees(uint32_t this_ptr) { + LDKRouteHintHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKRoutingFees ret_var = RouteHintHop_get_fees(&this_ptr_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_SemanticError_no_payment_secret() { - uint32_t ret_conv = LDKSemanticError_to_js(SemanticError_no_payment_secret()); - return ret_conv; +void __attribute__((visibility("default"))) TS_RouteHintHop_set_fees(uint32_t this_ptr, uint32_t val) { + LDKRouteHintHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKRoutingFees val_conv; + val_conv.inner = (void*)(val & (~1)); + val_conv.is_owned = (val & 1) || (val == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv); + val_conv = RoutingFees_clone(&val_conv); + RouteHintHop_set_fees(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_SemanticError_multiple_payment_secrets() { - uint32_t ret_conv = LDKSemanticError_to_js(SemanticError_multiple_payment_secrets()); - return ret_conv; +int16_t __attribute__((visibility("default"))) TS_RouteHintHop_get_cltv_expiry_delta(uint32_t this_ptr) { + LDKRouteHintHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int16_t ret_val = RouteHintHop_get_cltv_expiry_delta(&this_ptr_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_SemanticError_invalid_features() { - uint32_t ret_conv = LDKSemanticError_to_js(SemanticError_invalid_features()); - return ret_conv; +void __attribute__((visibility("default"))) TS_RouteHintHop_set_cltv_expiry_delta(uint32_t this_ptr, int16_t val) { + LDKRouteHintHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + RouteHintHop_set_cltv_expiry_delta(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_SemanticError_invalid_recovery_id() { - uint32_t ret_conv = LDKSemanticError_to_js(SemanticError_invalid_recovery_id()); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_get_htlc_minimum_msat(uint32_t this_ptr) { + LDKRouteHintHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); + *ret_copy = RouteHintHop_get_htlc_minimum_msat(&this_ptr_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_SemanticError_invalid_signature() { - uint32_t ret_conv = LDKSemanticError_to_js(SemanticError_invalid_signature()); - return ret_conv; +void __attribute__((visibility("default"))) TS_RouteHintHop_set_htlc_minimum_msat(uint32_t this_ptr, uint32_t val) { + LDKRouteHintHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr); + val_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)val) & ~1)); + RouteHintHop_set_htlc_minimum_msat(&this_ptr_conv, val_conv); } -uint32_t __attribute__((visibility("default"))) TS_SemanticError_imprecise_amount() { - uint32_t ret_conv = LDKSemanticError_to_js(SemanticError_imprecise_amount()); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_get_htlc_maximum_msat(uint32_t this_ptr) { + LDKRouteHintHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z"); + *ret_copy = RouteHintHop_get_htlc_maximum_msat(&this_ptr_conv); + uint64_t ret_ref = (uint64_t)ret_copy; + return ret_ref; } -jboolean __attribute__((visibility("default"))) TS_SemanticError_eq(uint32_t a, uint32_t b) { - LDKSemanticError* a_conv = (LDKSemanticError*)(a & ~1); - LDKSemanticError* b_conv = (LDKSemanticError*)(b & ~1); - jboolean ret_val = SemanticError_eq(a_conv, b_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_RouteHintHop_set_htlc_maximum_msat(uint32_t this_ptr, uint32_t val) { + LDKRouteHintHop this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + void* val_ptr = (void*)(((uint64_t)val) & ~1); + CHECK_ACCESS(val_ptr); + LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr); + val_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)val) & ~1)); + RouteHintHop_set_htlc_maximum_msat(&this_ptr_conv, val_conv); } -jstring __attribute__((visibility("default"))) TS_SemanticError_to_str(uint32_t o) { - LDKSemanticError* o_conv = (LDKSemanticError*)(o & ~1); - LDKStr ret_str = SemanticError_to_str(o_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_new(int8_tArray src_node_id_arg, int64_t short_channel_id_arg, uint32_t fees_arg, int16_t cltv_expiry_delta_arg, uint32_t htlc_minimum_msat_arg, uint32_t htlc_maximum_msat_arg) { + LDKPublicKey src_node_id_arg_ref; + CHECK(src_node_id_arg->arr_len == 33); + memcpy(src_node_id_arg_ref.compressed_form, src_node_id_arg->elems, 33); + LDKRoutingFees fees_arg_conv; + fees_arg_conv.inner = (void*)(fees_arg & (~1)); + fees_arg_conv.is_owned = (fees_arg & 1) || (fees_arg == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(fees_arg_conv); + fees_arg_conv = RoutingFees_clone(&fees_arg_conv); + void* htlc_minimum_msat_arg_ptr = (void*)(((uint64_t)htlc_minimum_msat_arg) & ~1); + CHECK_ACCESS(htlc_minimum_msat_arg_ptr); + LDKCOption_u64Z htlc_minimum_msat_arg_conv = *(LDKCOption_u64Z*)(htlc_minimum_msat_arg_ptr); + htlc_minimum_msat_arg_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)htlc_minimum_msat_arg) & ~1)); + void* htlc_maximum_msat_arg_ptr = (void*)(((uint64_t)htlc_maximum_msat_arg) & ~1); + CHECK_ACCESS(htlc_maximum_msat_arg_ptr); + LDKCOption_u64Z htlc_maximum_msat_arg_conv = *(LDKCOption_u64Z*)(htlc_maximum_msat_arg_ptr); + htlc_maximum_msat_arg_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)htlc_maximum_msat_arg) & ~1)); + LDKRouteHintHop ret_var = RouteHintHop_new(src_node_id_arg_ref, short_channel_id_arg, fees_arg_conv, cltv_expiry_delta_arg, htlc_minimum_msat_arg_conv, htlc_maximum_msat_arg_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } + return ret_ref; } -void __attribute__((visibility("default"))) TS_SignOrCreationError_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKSignOrCreationError this_ptr_conv = *(LDKSignOrCreationError*)(this_ptr_ptr); - FREE((void*)this_ptr); - SignOrCreationError_free(this_ptr_conv); +static inline uint64_t RouteHintHop_clone_ptr(LDKRouteHintHop *NONNULL_PTR arg) { + LDKRouteHintHop ret_var = RouteHintHop_clone(arg); +uint64_t ret_ref = 0; +CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. +CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. +CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); +ret_ref = (uint64_t)ret_var.inner; +if (ret_var.is_owned) { + ret_ref |= 1; } - -static inline uint64_t SignOrCreationError_clone_ptr(LDKSignOrCreationError *NONNULL_PTR arg) { - LDKSignOrCreationError *ret_copy = MALLOC(sizeof(LDKSignOrCreationError), "LDKSignOrCreationError"); - *ret_copy = SignOrCreationError_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; return ret_ref; } -int64_t __attribute__((visibility("default"))) TS_SignOrCreationError_clone_ptr(uint32_t arg) { - LDKSignOrCreationError* arg_conv = (LDKSignOrCreationError*)arg; - int64_t ret_val = SignOrCreationError_clone_ptr(arg_conv); +int64_t __attribute__((visibility("default"))) TS_RouteHintHop_clone_ptr(uint32_t arg) { + LDKRouteHintHop arg_conv; + arg_conv.inner = (void*)(arg & (~1)); + arg_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); + int64_t ret_val = RouteHintHop_clone_ptr(&arg_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_SignOrCreationError_clone(uint32_t orig) { - LDKSignOrCreationError* orig_conv = (LDKSignOrCreationError*)orig; - LDKSignOrCreationError *ret_copy = MALLOC(sizeof(LDKSignOrCreationError), "LDKSignOrCreationError"); - *ret_copy = SignOrCreationError_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; +uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_clone(uint32_t orig) { + LDKRouteHintHop orig_conv; + orig_conv.inner = (void*)(orig & (~1)); + orig_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); + LDKRouteHintHop ret_var = RouteHintHop_clone(&orig_conv); + uint64_t ret_ref = 0; + CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. + CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. + CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); + ret_ref = (uint64_t)ret_var.inner; + if (ret_var.is_owned) { + ret_ref |= 1; + } return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_SignOrCreationError_sign_error() { - LDKSignOrCreationError *ret_copy = MALLOC(sizeof(LDKSignOrCreationError), "LDKSignOrCreationError"); - *ret_copy = SignOrCreationError_sign_error(); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +int64_t __attribute__((visibility("default"))) TS_RouteHintHop_hash(uint32_t o) { + LDKRouteHintHop o_conv; + o_conv.inner = (void*)(o & (~1)); + o_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); + int64_t ret_val = RouteHintHop_hash(&o_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_SignOrCreationError_creation_error(uint32_t a) { - LDKCreationError a_conv = LDKCreationError_from_js(a); - LDKSignOrCreationError *ret_copy = MALLOC(sizeof(LDKSignOrCreationError), "LDKSignOrCreationError"); - *ret_copy = SignOrCreationError_creation_error(a_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +jboolean __attribute__((visibility("default"))) TS_RouteHintHop_eq(uint32_t a, uint32_t b) { + LDKRouteHintHop a_conv; + a_conv.inner = (void*)(a & (~1)); + a_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); + LDKRouteHintHop b_conv; + b_conv.inner = (void*)(b & (~1)); + b_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); + jboolean ret_val = RouteHintHop_eq(&a_conv, &b_conv); + return ret_val; } -jboolean __attribute__((visibility("default"))) TS_SignOrCreationError_eq(uint32_t a, uint32_t b) { - LDKSignOrCreationError* a_conv = (LDKSignOrCreationError*)a; - LDKSignOrCreationError* b_conv = (LDKSignOrCreationError*)b; - jboolean ret_val = SignOrCreationError_eq(a_conv, b_conv); - return ret_val; +int8_tArray __attribute__((visibility("default"))) TS_RouteHintHop_write(uint32_t obj) { + LDKRouteHintHop obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = RouteHintHop_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -jstring __attribute__((visibility("default"))) TS_SignOrCreationError_to_str(uint32_t o) { - LDKSignOrCreationError* o_conv = (LDKSignOrCreationError*)o; - LDKStr ret_str = SignOrCreationError_to_str(o_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; +uint32_t __attribute__((visibility("default"))) TS_RouteHintHop_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_RouteHintHopDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteHintHopDecodeErrorZ), "LDKCResult_RouteHintHopDecodeErrorZ"); + *ret_conv = RouteHintHop_read(ser_ref); + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_InvoicePayer_free(uint32_t this_obj) { - LDKInvoicePayer this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - InvoicePayer_free(this_obj_conv); +uint32_t __attribute__((visibility("default"))) TS_find_route(int8_tArray our_node_pubkey, uint32_t params, uint32_t network, uint32_tArray first_hops, uint32_t logger, uint32_t scorer) { + LDKPublicKey our_node_pubkey_ref; + CHECK(our_node_pubkey->arr_len == 33); + memcpy(our_node_pubkey_ref.compressed_form, our_node_pubkey->elems, 33); + LDKRouteParameters params_conv; + params_conv.inner = (void*)(params & (~1)); + params_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(params_conv); + LDKNetworkGraph network_conv; + network_conv.inner = (void*)(network & (~1)); + network_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(network_conv); + LDKCVec_ChannelDetailsZ first_hops_constr; + LDKCVec_ChannelDetailsZ *first_hops_ptr = NULL; + if (first_hops != 0) { + first_hops_constr.datalen = first_hops->arr_len; + if (first_hops_constr.datalen > 0) + first_hops_constr.data = MALLOC(first_hops_constr.datalen * sizeof(LDKChannelDetails), "LDKCVec_ChannelDetailsZ Elements"); + else + first_hops_constr.data = NULL; + uint32_t* first_hops_vals = first_hops->elems; + for (size_t q = 0; q < first_hops_constr.datalen; q++) { + uint32_t first_hops_conv_16 = first_hops_vals[q]; + LDKChannelDetails first_hops_conv_16_conv; + first_hops_conv_16_conv.inner = (void*)(first_hops_conv_16 & (~1)); + first_hops_conv_16_conv.is_owned = (first_hops_conv_16 & 1) || (first_hops_conv_16 == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(first_hops_conv_16_conv); + first_hops_constr.data[q] = first_hops_conv_16_conv; + } + first_hops_ptr = &first_hops_constr; + } + void* logger_ptr = (void*)(((uint64_t)logger) & ~1); + CHECK_ACCESS(logger_ptr); + LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); + void* scorer_ptr = (void*)(((uint64_t)scorer) & ~1); + if (!(scorer & 1)) { CHECK_ACCESS(scorer_ptr); } + LDKScore* scorer_conv = (LDKScore*)scorer_ptr; + LDKCResult_RouteLightningErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RouteLightningErrorZ), "LDKCResult_RouteLightningErrorZ"); + *ret_conv = find_route(our_node_pubkey_ref, ¶ms_conv, &network_conv, first_hops_ptr, logger_conv, scorer_conv); + if (first_hops_ptr != NULL) { FREE(first_hops_constr.data); } + return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_Payer_free(uint32_t this_ptr) { +void __attribute__((visibility("default"))) TS_Score_free(uint32_t this_ptr) { if ((this_ptr & 1) != 0) return; void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); CHECK_ACCESS(this_ptr_ptr); - LDKPayer this_ptr_conv = *(LDKPayer*)(this_ptr_ptr); + LDKScore this_ptr_conv = *(LDKScore*)(this_ptr_ptr); FREE((void*)this_ptr); - Payer_free(this_ptr_conv); + Score_free(this_ptr_conv); } -void __attribute__((visibility("default"))) TS_Router_free(uint32_t this_ptr) { +void __attribute__((visibility("default"))) TS_LockableScore_free(uint32_t this_ptr) { if ((this_ptr & 1) != 0) return; void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); CHECK_ACCESS(this_ptr_ptr); - LDKRouter this_ptr_conv = *(LDKRouter*)(this_ptr_ptr); + LDKLockableScore this_ptr_conv = *(LDKLockableScore*)(this_ptr_ptr); FREE((void*)this_ptr); - Router_free(this_ptr_conv); + LockableScore_free(this_ptr_conv); } -void __attribute__((visibility("default"))) TS_RetryAttempts_free(uint32_t this_obj) { - LDKRetryAttempts this_obj_conv; +void __attribute__((visibility("default"))) TS_MultiThreadedLockableScore_free(uint32_t this_obj) { + LDKMultiThreadedLockableScore this_obj_conv; this_obj_conv.inner = (void*)(this_obj & (~1)); this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - RetryAttempts_free(this_obj_conv); -} - -int64_t __attribute__((visibility("default"))) TS_RetryAttempts_get_a(uint32_t this_ptr) { - LDKRetryAttempts this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - int64_t ret_val = RetryAttempts_get_a(&this_ptr_conv); - return ret_val; -} - -void __attribute__((visibility("default"))) TS_RetryAttempts_set_a(uint32_t this_ptr, int64_t val) { - LDKRetryAttempts this_ptr_conv; - this_ptr_conv.inner = (void*)(this_ptr & (~1)); - this_ptr_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); - RetryAttempts_set_a(&this_ptr_conv, val); + MultiThreadedLockableScore_free(this_obj_conv); } -uint32_t __attribute__((visibility("default"))) TS_RetryAttempts_new(int64_t a_arg) { - LDKRetryAttempts ret_var = RetryAttempts_new(a_arg); +uint32_t __attribute__((visibility("default"))) TS_MultiThreadedLockableScore_new(uint32_t score) { + void* score_ptr = (void*)(((uint64_t)score) & ~1); + CHECK_ACCESS(score_ptr); + LDKScore score_conv = *(LDKScore*)(score_ptr); + LDKMultiThreadedLockableScore ret_var = MultiThreadedLockableScore_new(score_conv); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -37092,149 +34411,101 @@ uint32_t __attribute__((visibility("default"))) TS_RetryAttempts_new(int64_t a_ return ret_ref; } -static inline uint64_t RetryAttempts_clone_ptr(LDKRetryAttempts *NONNULL_PTR arg) { - LDKRetryAttempts ret_var = RetryAttempts_clone(arg); -uint64_t ret_ref = 0; -CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. -CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. -CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); -ret_ref = (uint64_t)ret_var.inner; -if (ret_var.is_owned) { - ret_ref |= 1; -} - return ret_ref; +void __attribute__((visibility("default"))) TS_ScoringParameters_free(uint32_t this_obj) { + LDKScoringParameters this_obj_conv; + this_obj_conv.inner = (void*)(this_obj & (~1)); + this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); + ScoringParameters_free(this_obj_conv); } -int64_t __attribute__((visibility("default"))) TS_RetryAttempts_clone_ptr(uint32_t arg) { - LDKRetryAttempts arg_conv; - arg_conv.inner = (void*)(arg & (~1)); - arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv); - int64_t ret_val = RetryAttempts_clone_ptr(&arg_conv); + +int64_t __attribute__((visibility("default"))) TS_ScoringParameters_get_base_penalty_msat(uint32_t this_ptr) { + LDKScoringParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = ScoringParameters_get_base_penalty_msat(&this_ptr_conv); return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_RetryAttempts_clone(uint32_t orig) { - LDKRetryAttempts orig_conv; - orig_conv.inner = (void*)(orig & (~1)); - orig_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv); - LDKRetryAttempts ret_var = RetryAttempts_clone(&orig_conv); - uint64_t ret_ref = 0; - CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. - CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. - CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var); - ret_ref = (uint64_t)ret_var.inner; - if (ret_var.is_owned) { - ret_ref |= 1; - } - return ret_ref; +void __attribute__((visibility("default"))) TS_ScoringParameters_set_base_penalty_msat(uint32_t this_ptr, int64_t val) { + LDKScoringParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ScoringParameters_set_base_penalty_msat(&this_ptr_conv, val); } -jboolean __attribute__((visibility("default"))) TS_RetryAttempts_eq(uint32_t a, uint32_t b) { - LDKRetryAttempts a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - LDKRetryAttempts b_conv; - b_conv.inner = (void*)(b & (~1)); - b_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv); - jboolean ret_val = RetryAttempts_eq(&a_conv, &b_conv); +int64_t __attribute__((visibility("default"))) TS_ScoringParameters_get_failure_penalty_msat(uint32_t this_ptr) { + LDKScoringParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = ScoringParameters_get_failure_penalty_msat(&this_ptr_conv); return ret_val; } -int64_t __attribute__((visibility("default"))) TS_RetryAttempts_hash(uint32_t o) { - LDKRetryAttempts o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - int64_t ret_val = RetryAttempts_hash(&o_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_ScoringParameters_set_failure_penalty_msat(uint32_t this_ptr, int64_t val) { + LDKScoringParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ScoringParameters_set_failure_penalty_msat(&this_ptr_conv, val); } -void __attribute__((visibility("default"))) TS_PaymentError_free(uint32_t this_ptr) { - if ((this_ptr & 1) != 0) return; - void* this_ptr_ptr = (void*)(((uint64_t)this_ptr) & ~1); - CHECK_ACCESS(this_ptr_ptr); - LDKPaymentError this_ptr_conv = *(LDKPaymentError*)(this_ptr_ptr); - FREE((void*)this_ptr); - PaymentError_free(this_ptr_conv); +int16_t __attribute__((visibility("default"))) TS_ScoringParameters_get_overuse_penalty_start_1024th(uint32_t this_ptr) { + LDKScoringParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int16_t ret_val = ScoringParameters_get_overuse_penalty_start_1024th(&this_ptr_conv); + return ret_val; } -static inline uint64_t PaymentError_clone_ptr(LDKPaymentError *NONNULL_PTR arg) { - LDKPaymentError *ret_copy = MALLOC(sizeof(LDKPaymentError), "LDKPaymentError"); - *ret_copy = PaymentError_clone(arg); -uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; -} -int64_t __attribute__((visibility("default"))) TS_PaymentError_clone_ptr(uint32_t arg) { - LDKPaymentError* arg_conv = (LDKPaymentError*)arg; - int64_t ret_val = PaymentError_clone_ptr(arg_conv); - return ret_val; +void __attribute__((visibility("default"))) TS_ScoringParameters_set_overuse_penalty_start_1024th(uint32_t this_ptr, int16_t val) { + LDKScoringParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ScoringParameters_set_overuse_penalty_start_1024th(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_PaymentError_clone(uint32_t orig) { - LDKPaymentError* orig_conv = (LDKPaymentError*)orig; - LDKPaymentError *ret_copy = MALLOC(sizeof(LDKPaymentError), "LDKPaymentError"); - *ret_copy = PaymentError_clone(orig_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +int64_t __attribute__((visibility("default"))) TS_ScoringParameters_get_overuse_penalty_msat_per_1024th(uint32_t this_ptr) { + LDKScoringParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = ScoringParameters_get_overuse_penalty_msat_per_1024th(&this_ptr_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_PaymentError_invoice(jstring a) { - LDKStr a_conv = str_ref_to_owned_c(a); - LDKPaymentError *ret_copy = MALLOC(sizeof(LDKPaymentError), "LDKPaymentError"); - *ret_copy = PaymentError_invoice(a_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_ScoringParameters_set_overuse_penalty_msat_per_1024th(uint32_t this_ptr, int64_t val) { + LDKScoringParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ScoringParameters_set_overuse_penalty_msat_per_1024th(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_PaymentError_routing(uint32_t a) { - LDKLightningError a_conv; - a_conv.inner = (void*)(a & (~1)); - a_conv.is_owned = (a & 1) || (a == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv); - a_conv = LightningError_clone(&a_conv); - LDKPaymentError *ret_copy = MALLOC(sizeof(LDKPaymentError), "LDKPaymentError"); - *ret_copy = PaymentError_routing(a_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +int64_t __attribute__((visibility("default"))) TS_ScoringParameters_get_failure_penalty_half_life(uint32_t this_ptr) { + LDKScoringParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + int64_t ret_val = ScoringParameters_get_failure_penalty_half_life(&this_ptr_conv); + return ret_val; } -uint32_t __attribute__((visibility("default"))) TS_PaymentError_sending(uint32_t a) { - void* a_ptr = (void*)(((uint64_t)a) & ~1); - CHECK_ACCESS(a_ptr); - LDKPaymentSendFailure a_conv = *(LDKPaymentSendFailure*)(a_ptr); - a_conv = PaymentSendFailure_clone((LDKPaymentSendFailure*)(((uint64_t)a) & ~1)); - LDKPaymentError *ret_copy = MALLOC(sizeof(LDKPaymentError), "LDKPaymentError"); - *ret_copy = PaymentError_sending(a_conv); - uint64_t ret_ref = (uint64_t)ret_copy; - return ret_ref; +void __attribute__((visibility("default"))) TS_ScoringParameters_set_failure_penalty_half_life(uint32_t this_ptr, int64_t val) { + LDKScoringParameters this_ptr_conv; + this_ptr_conv.inner = (void*)(this_ptr & (~1)); + this_ptr_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv); + ScoringParameters_set_failure_penalty_half_life(&this_ptr_conv, val); } -uint32_t __attribute__((visibility("default"))) TS_InvoicePayer_new(uint32_t payer, uint32_t router, uint32_t scorer, uint32_t logger, uint32_t event_handler, uint32_t retry_attempts) { - void* payer_ptr = (void*)(((uint64_t)payer) & ~1); - CHECK_ACCESS(payer_ptr); - LDKPayer payer_conv = *(LDKPayer*)(payer_ptr); - void* router_ptr = (void*)(((uint64_t)router) & ~1); - CHECK_ACCESS(router_ptr); - LDKRouter router_conv = *(LDKRouter*)(router_ptr); - LDKMultiThreadedLockableScore scorer_conv; - scorer_conv.inner = (void*)(scorer & (~1)); - scorer_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(scorer_conv); - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - void* event_handler_ptr = (void*)(((uint64_t)event_handler) & ~1); - CHECK_ACCESS(event_handler_ptr); - LDKEventHandler event_handler_conv = *(LDKEventHandler*)(event_handler_ptr); - LDKRetryAttempts retry_attempts_conv; - retry_attempts_conv.inner = (void*)(retry_attempts & (~1)); - retry_attempts_conv.is_owned = (retry_attempts & 1) || (retry_attempts == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(retry_attempts_conv); - retry_attempts_conv = RetryAttempts_clone(&retry_attempts_conv); - LDKInvoicePayer ret_var = InvoicePayer_new(payer_conv, router_conv, &scorer_conv, logger_conv, event_handler_conv, retry_attempts_conv); +uint32_t __attribute__((visibility("default"))) TS_ScoringParameters_new(int64_t base_penalty_msat_arg, int64_t failure_penalty_msat_arg, int16_t overuse_penalty_start_1024th_arg, int64_t overuse_penalty_msat_per_1024th_arg, int64_t failure_penalty_half_life_arg) { + LDKScoringParameters ret_var = ScoringParameters_new(base_penalty_msat_arg, failure_penalty_msat_arg, overuse_penalty_start_1024th_arg, overuse_penalty_msat_per_1024th_arg, failure_penalty_half_life_arg); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -37246,108 +34517,29 @@ uint32_t __attribute__((visibility("default"))) TS_InvoicePayer_new(uint32_t pa return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_InvoicePayer_pay_invoice(uint32_t this_arg, uint32_t invoice) { - LDKInvoicePayer this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKInvoice invoice_conv; - invoice_conv.inner = (void*)(invoice & (~1)); - invoice_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(invoice_conv); - LDKCResult_PaymentIdPaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentErrorZ), "LDKCResult_PaymentIdPaymentErrorZ"); - *ret_conv = InvoicePayer_pay_invoice(&this_arg_conv, &invoice_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_InvoicePayer_pay_zero_value_invoice(uint32_t this_arg, uint32_t invoice, int64_t amount_msats) { - LDKInvoicePayer this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKInvoice invoice_conv; - invoice_conv.inner = (void*)(invoice & (~1)); - invoice_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(invoice_conv); - LDKCResult_PaymentIdPaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentErrorZ), "LDKCResult_PaymentIdPaymentErrorZ"); - *ret_conv = InvoicePayer_pay_zero_value_invoice(&this_arg_conv, &invoice_conv, amount_msats); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_InvoicePayer_pay_pubkey(uint32_t this_arg, int8_tArray pubkey, int8_tArray payment_preimage, int64_t amount_msats, int32_t final_cltv_expiry_delta) { - LDKInvoicePayer this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKPublicKey pubkey_ref; - CHECK(*((uint32_t*)pubkey) == 33); - memcpy(pubkey_ref.compressed_form, (uint8_t*)(pubkey + 4), 33); - LDKThirtyTwoBytes payment_preimage_ref; - CHECK(*((uint32_t*)payment_preimage) == 32); - memcpy(payment_preimage_ref.data, (uint8_t*)(payment_preimage + 4), 32); - LDKCResult_PaymentIdPaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PaymentIdPaymentErrorZ), "LDKCResult_PaymentIdPaymentErrorZ"); - *ret_conv = InvoicePayer_pay_pubkey(&this_arg_conv, pubkey_ref, payment_preimage_ref, amount_msats, final_cltv_expiry_delta); - return (uint64_t)ret_conv; -} - -void __attribute__((visibility("default"))) TS_InvoicePayer_remove_cached_payment(uint32_t this_arg, int8_tArray payment_hash) { - LDKInvoicePayer this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - unsigned char payment_hash_arr[32]; - CHECK(*((uint32_t*)payment_hash) == 32); - memcpy(payment_hash_arr, (uint8_t*)(payment_hash + 4), 32); - unsigned char (*payment_hash_ref)[32] = &payment_hash_arr; - InvoicePayer_remove_cached_payment(&this_arg_conv, payment_hash_ref); -} - -uint32_t __attribute__((visibility("default"))) TS_InvoicePayer_as_EventHandler(uint32_t this_arg) { - LDKInvoicePayer this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKEventHandler* ret_ret = MALLOC(sizeof(LDKEventHandler), "LDKEventHandler"); - *ret_ret = InvoicePayer_as_EventHandler(&this_arg_conv); - return (uint64_t)ret_ret; +int8_tArray __attribute__((visibility("default"))) TS_ScoringParameters_write(uint32_t obj) { + LDKScoringParameters obj_conv; + obj_conv.inner = (void*)(obj & (~1)); + obj_conv.is_owned = false; + CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv); + LDKCVec_u8Z ret_var = ScoringParameters_write(&obj_conv); + int8_tArray ret_arr = init_int8_tArray(ret_var.datalen); + memcpy(ret_arr->elems, ret_var.data, ret_var.datalen); + CVec_u8Z_free(ret_var); + return ret_arr; } -uint32_t __attribute__((visibility("default"))) TS_create_invoice_from_channelmanager(uint32_t channelmanager, uint32_t keys_manager, uint32_t network, uint32_t amt_msat, jstring description) { - LDKChannelManager channelmanager_conv; - channelmanager_conv.inner = (void*)(channelmanager & (~1)); - channelmanager_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(channelmanager_conv); - void* keys_manager_ptr = (void*)(((uint64_t)keys_manager) & ~1); - CHECK_ACCESS(keys_manager_ptr); - LDKKeysInterface keys_manager_conv = *(LDKKeysInterface*)(keys_manager_ptr); - LDKCurrency network_conv = LDKCurrency_from_js(network); - void* amt_msat_ptr = (void*)(((uint64_t)amt_msat) & ~1); - CHECK_ACCESS(amt_msat_ptr); - LDKCOption_u64Z amt_msat_conv = *(LDKCOption_u64Z*)(amt_msat_ptr); - amt_msat_conv = COption_u64Z_clone((LDKCOption_u64Z*)(((uint64_t)amt_msat) & ~1)); - LDKStr description_conv = str_ref_to_owned_c(description); - LDKCResult_InvoiceSignOrCreationErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceSignOrCreationErrorZ), "LDKCResult_InvoiceSignOrCreationErrorZ"); - *ret_conv = create_invoice_from_channelmanager(&channelmanager_conv, keys_manager_conv, network_conv, amt_msat_conv, description_conv); +uint32_t __attribute__((visibility("default"))) TS_ScoringParameters_read(int8_tArray ser) { + LDKu8slice ser_ref; + ser_ref.datalen = ser->arr_len; + ser_ref.data = ser->elems; + LDKCResult_ScoringParametersDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ScoringParametersDecodeErrorZ), "LDKCResult_ScoringParametersDecodeErrorZ"); + *ret_conv = ScoringParameters_read(ser_ref); return (uint64_t)ret_conv; } -void __attribute__((visibility("default"))) TS_DefaultRouter_free(uint32_t this_obj) { - LDKDefaultRouter this_obj_conv; - this_obj_conv.inner = (void*)(this_obj & (~1)); - this_obj_conv.is_owned = (this_obj & 1) || (this_obj == 0); - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv); - DefaultRouter_free(this_obj_conv); -} - -uint32_t __attribute__((visibility("default"))) TS_DefaultRouter_new(uint32_t network_graph, uint32_t logger) { - LDKNetworkGraph network_graph_conv; - network_graph_conv.inner = (void*)(network_graph & (~1)); - network_graph_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(network_graph_conv); - void* logger_ptr = (void*)(((uint64_t)logger) & ~1); - CHECK_ACCESS(logger_ptr); - LDKLogger logger_conv = *(LDKLogger*)(logger_ptr); - LDKDefaultRouter ret_var = DefaultRouter_new(&network_graph_conv, logger_conv); +uint32_t __attribute__((visibility("default"))) TS_ScoringParameters_default() { + LDKScoringParameters ret_var = ScoringParameters_default(); uint64_t ret_ref = 0; CHECK((((uint64_t)ret_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this. CHECK((((uint64_t)&ret_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this. @@ -37359,82 +34551,3 @@ uint32_t __attribute__((visibility("default"))) TS_DefaultRouter_new(uint32_t n return ret_ref; } -uint32_t __attribute__((visibility("default"))) TS_DefaultRouter_as_Router(uint32_t this_arg) { - LDKDefaultRouter this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKRouter* ret_ret = MALLOC(sizeof(LDKRouter), "LDKRouter"); - *ret_ret = DefaultRouter_as_Router(&this_arg_conv); - return (uint64_t)ret_ret; -} - -uint32_t __attribute__((visibility("default"))) TS_ChannelManager_as_Payer(uint32_t this_arg) { - LDKChannelManager this_arg_conv; - this_arg_conv.inner = (void*)(this_arg & (~1)); - this_arg_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv); - LDKPayer* ret_ret = MALLOC(sizeof(LDKPayer), "LDKPayer"); - *ret_ret = ChannelManager_as_Payer(&this_arg_conv); - return (uint64_t)ret_ret; -} - -uint32_t __attribute__((visibility("default"))) TS_SiPrefix_from_str(jstring s) { - LDKStr s_conv = str_ref_to_owned_c(s); - LDKCResult_SiPrefixNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SiPrefixNoneZ), "LDKCResult_SiPrefixNoneZ"); - *ret_conv = SiPrefix_from_str(s_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_Invoice_from_str(jstring s) { - LDKStr s_conv = str_ref_to_owned_c(s); - LDKCResult_InvoiceNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_InvoiceNoneZ), "LDKCResult_InvoiceNoneZ"); - *ret_conv = Invoice_from_str(s_conv); - return (uint64_t)ret_conv; -} - -uint32_t __attribute__((visibility("default"))) TS_SignedRawInvoice_from_str(jstring s) { - LDKStr s_conv = str_ref_to_owned_c(s); - LDKCResult_SignedRawInvoiceNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_SignedRawInvoiceNoneZ), "LDKCResult_SignedRawInvoiceNoneZ"); - *ret_conv = SignedRawInvoice_from_str(s_conv); - return (uint64_t)ret_conv; -} - -jstring __attribute__((visibility("default"))) TS_Invoice_to_str(uint32_t o) { - LDKInvoice o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - LDKStr ret_str = Invoice_to_str(&o_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; -} - -jstring __attribute__((visibility("default"))) TS_SignedRawInvoice_to_str(uint32_t o) { - LDKSignedRawInvoice o_conv; - o_conv.inner = (void*)(o & (~1)); - o_conv.is_owned = false; - CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv); - LDKStr ret_str = SignedRawInvoice_to_str(&o_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; -} - -jstring __attribute__((visibility("default"))) TS_Currency_to_str(uint32_t o) { - LDKCurrency* o_conv = (LDKCurrency*)(o & ~1); - LDKStr ret_str = Currency_to_str(o_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; -} - -jstring __attribute__((visibility("default"))) TS_SiPrefix_to_str(uint32_t o) { - LDKSiPrefix* o_conv = (LDKSiPrefix*)(o & ~1); - LDKStr ret_str = SiPrefix_to_str(o_conv); - jstring ret_conv = str_ref_to_ts(ret_str.chars, ret_str.len); - Str_free(ret_str); - return ret_conv; -} - diff --git a/ts/bindings.ts b/ts/bindings.mts similarity index 71% rename from ts/bindings.ts rename to ts/bindings.mts index 72348502..3ac095cc 100644 --- a/ts/bindings.ts +++ b/ts/bindings.mts @@ -1,9 +1,7 @@ -import * as fs from 'fs'; -const source = fs.readFileSync('./ldk.wasm'); - +function freer(f: () => void) { f() } +const finalizer = new FinalizationRegistry(freer); const memory = new WebAssembly.Memory({initial: 256}); -const wasmModule = new WebAssembly.Module(source); const imports: any = {}; imports.env = {}; @@ -14,23 +12,56 @@ imports.env.tableBase = 0; imports.env.table = new WebAssembly.Table({initial: 4, element: 'anyfunc'}); imports.env["abort"] = function () { - console.error("ABORT"); + console.error("ABORT"); +}; +imports.env["js_invoke_function"] = function(fn: number, arg1: number, arg2: number, arg3: number, arg4: number, arg5: number, arg6: number, arg7: number, arg8: number, arg9: number, arg10: number) { + console.log('function called from wasm:', fn, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10); +}; +imports.env["js_free_function_ptr"] = function(fn: number) { + console.log("function ptr free'd from wasm:", fn); +}; + +imports.wasi_snapshot_preview1 = { + "fd_write" : () => { + console.log("ABORT"); + }, + "random_get" : () => { + console.log("RAND GET"); + }, + "environ_sizes_get" : () => { + console.log("wasi_snapshot_preview1:environ_sizes_get"); + }, + "proc_exit" : () => { + console.log("wasi_snapshot_preview1:proc_exit"); + }, + "environ_get" : () => { + console.log("wasi_snapshot_preview1:environ_get"); + }, }; -let wasm = null; +var wasm = null; let isWasmInitialized: boolean = false; +export async function initializeWasm(uri) { + const stream = fetch(uri); + const { instance: wasmInstance } = await WebAssembly.instantiateStreaming(stream, imports); + wasm = wasmInstance.exports; + isWasmInitialized = true; +}; + + + // WASM CODEC const nextMultipleOfFour = (value: number) => { - return Math.ceil(value / 4) * 4; + return Math.ceil(value / 4) * 4; } const encodeUint8Array = (inputArray) => { const cArrayPointer = wasm.TS_malloc(inputArray.length + 4); const arrayLengthView = new Uint32Array(memory.buffer, cArrayPointer, 1); - arrayLengthView[0] = inputArray.length; + arrayLengthView[0] = inputArray.length; const arrayMemoryView = new Uint8Array(memory.buffer, cArrayPointer + 4, inputArray.length); arrayMemoryView.set(inputArray); return cArrayPointer; @@ -40,7 +71,7 @@ const encodeUint32Array = (inputArray) => { const cArrayPointer = wasm.TS_malloc((inputArray.length + 1) * 4); const arrayMemoryView = new Uint32Array(memory.buffer, cArrayPointer, inputArray.length); arrayMemoryView.set(inputArray, 1); - arrayMemoryView[0] = inputArray.length; + arrayMemoryView[0] = inputArray.length; return cArrayPointer; } @@ -84,36 +115,36 @@ const decodeUint32Array = (arrayPointer, free = true) => { } const encodeString = (string) => { - // make malloc count divisible by 4 - const memoryNeed = nextMultipleOfFour(string.length + 1); - const stringPointer = wasm.TS_malloc(memoryNeed); - const stringMemoryView = new Uint8Array( - memory.buffer, // value - stringPointer, // offset - string.length + 1 // length - ); - for (let i = 0; i < string.length; i++) { - stringMemoryView[i] = string.charCodeAt(i); - } - stringMemoryView[string.length] = 0; - return stringPointer; + // make malloc count divisible by 4 + const memoryNeed = nextMultipleOfFour(string.length + 1); + const stringPointer = wasm.TS_malloc(memoryNeed); + const stringMemoryView = new Uint8Array( + memory.buffer, // value + stringPointer, // offset + string.length + 1 // length + ); + for (let i = 0; i < string.length; i++) { + stringMemoryView[i] = string.charCodeAt(i); + } + stringMemoryView[string.length] = 0; + return stringPointer; } const decodeString = (stringPointer, free = true) => { - const memoryView = new Uint8Array(memory.buffer, stringPointer); - let cursor = 0; - let result = ''; + const memoryView = new Uint8Array(memory.buffer, stringPointer); + let cursor = 0; + let result = ''; - while (memoryView[cursor] !== 0) { - result += String.fromCharCode(memoryView[cursor]); - cursor++; - } + while (memoryView[cursor] !== 0) { + result += String.fromCharCode(memoryView[cursor]); + cursor++; + } - if (free) { - wasm.wasm_free(stringPointer); - } + if (free) { + wasm.wasm_free(stringPointer); + } - return result; + return result; }; export class VecOrSliceDef { @@ -151,1719 +182,1181 @@ public static native long vec_slice_len(long vec); public static native long new_empty_slice_vec(); */ - // struct LDKCVec_u8Z TxOut_get_script_pubkey (struct LDKTxOut* thing) - export function TxOut_get_script_pubkey(thing: number): Uint8Array { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.TxOut_get_script_pubkey(thing); - return decodeArray(nativeResponseValue); - } - // uint64_t TxOut_get_value (struct LDKTxOut* thing) - export function TxOut_get_value(thing: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.TxOut_get_value(thing); - return nativeResponseValue; - } - public static native Uint8Array LDKCResult_SecretKeyErrorZ_get_ok(long arg); - public static native Secp256k1Error LDKCResult_SecretKeyErrorZ_get_err(long arg); - public static native Uint8Array LDKCResult_PublicKeyErrorZ_get_ok(long arg); - public static native Secp256k1Error LDKCResult_PublicKeyErrorZ_get_err(long arg); - public static native number LDKCResult_TxCreationKeysDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_TxCreationKeysDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_ChannelPublicKeysDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_ChannelPublicKeysDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_TxCreationKeysErrorZ_get_ok(long arg); - public static native Secp256k1Error LDKCResult_TxCreationKeysErrorZ_get_err(long arg); - public static class LDKCOption_u32Z { - private LDKCOption_u32Z() {} - export class Some extends LDKCOption_u32Z { - public number some; - Some(number some) { this.some = some; } - } - export class None extends LDKCOption_u32Z { - None() { } - } - static native void init(); - } - static { LDKCOption_u32Z.init(); } - public static native LDKCOption_u32Z LDKCOption_u32Z_ref_from_ptr(long ptr); - public static native number LDKCResult_HTLCOutputInCommitmentDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_HTLCOutputInCommitmentDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_ChannelTransactionParametersDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_ChannelTransactionParametersDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_HolderCommitmentTransactionDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_HolderCommitmentTransactionDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_BuiltCommitmentTransactionDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_BuiltCommitmentTransactionDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_TrustedClosingTransactionNoneZ_get_ok(long arg); - public static native void LDKCResult_TrustedClosingTransactionNoneZ_get_err(long arg); - public static native number LDKCResult_CommitmentTransactionDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_CommitmentTransactionDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_TrustedCommitmentTransactionNoneZ_get_ok(long arg); - public static native void LDKCResult_TrustedCommitmentTransactionNoneZ_get_err(long arg); - public static native Uint8Array[] LDKCResult_CVec_SignatureZNoneZ_get_ok(long arg); - public static native void LDKCResult_CVec_SignatureZNoneZ_get_err(long arg); - public static native number LDKCResult_ShutdownScriptDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_ShutdownScriptDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_ShutdownScriptInvalidShutdownScriptZ_get_ok(long arg); - public static native number LDKCResult_ShutdownScriptInvalidShutdownScriptZ_get_err(long arg); - public static native void LDKCResult_NoneErrorZ_get_ok(long arg); - public static native IOError LDKCResult_NoneErrorZ_get_err(long arg); - public static native number LDKCResult_RouteHopDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_RouteHopDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_RouteDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_RouteDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_RouteParametersDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_RouteParametersDecodeErrorZ_get_err(long arg); - public static class LDKCOption_u64Z { - private LDKCOption_u64Z() {} - export class Some extends LDKCOption_u64Z { - public number some; - Some(number some) { this.some = some; } - } - export class None extends LDKCOption_u64Z { - None() { } - } - static native void init(); - } - static { LDKCOption_u64Z.init(); } - public static native LDKCOption_u64Z LDKCOption_u64Z_ref_from_ptr(long ptr); - public static native number LDKCResult_PayeeDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_PayeeDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_RouteHintDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_RouteHintDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_RouteHintHopDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_RouteHintHopDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_RouteLightningErrorZ_get_ok(long arg); - public static native number LDKCResult_RouteLightningErrorZ_get_err(long arg); - public static native number LDKCResult_TxOutAccessErrorZ_get_ok(long arg); - public static native AccessError LDKCResult_TxOutAccessErrorZ_get_err(long arg); - // uintptr_t C2Tuple_usizeTransactionZ_get_a(LDKC2Tuple_usizeTransactionZ *NONNULL_PTR tuple); - export function C2Tuple_usizeTransactionZ_get_a(tuple: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.C2Tuple_usizeTransactionZ_get_a(tuple); - return nativeResponseValue; - } - // struct LDKTransaction C2Tuple_usizeTransactionZ_get_b(LDKC2Tuple_usizeTransactionZ *NONNULL_PTR tuple); - export function C2Tuple_usizeTransactionZ_get_b(tuple: number): Uint8Array { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.C2Tuple_usizeTransactionZ_get_b(tuple); - return decodeArray(nativeResponseValue); - } - public static native void LDKCResult_NoneChannelMonitorUpdateErrZ_get_ok(long arg); - public static native ChannelMonitorUpdateErr LDKCResult_NoneChannelMonitorUpdateErrZ_get_err(long arg); - public static class LDKMonitorEvent { - private LDKMonitorEvent() {} - export class HTLCEvent extends LDKMonitorEvent { - public number htlc_event; - HTLCEvent(number htlc_event) { this.htlc_event = htlc_event; } - } - export class CommitmentTxConfirmed extends LDKMonitorEvent { - public number commitment_tx_confirmed; - CommitmentTxConfirmed(number commitment_tx_confirmed) { this.commitment_tx_confirmed = commitment_tx_confirmed; } - } - export class UpdateCompleted extends LDKMonitorEvent { - public number funding_txo; - public number monitor_update_id; - UpdateCompleted(number funding_txo, number monitor_update_id) { this.funding_txo = funding_txo; this.monitor_update_id = monitor_update_id; } - } - export class UpdateFailed extends LDKMonitorEvent { - public number update_failed; - UpdateFailed(number update_failed) { this.update_failed = update_failed; } - } - static native void init(); - } - static { LDKMonitorEvent.init(); } - public static native LDKMonitorEvent LDKMonitorEvent_ref_from_ptr(long ptr); - public static class LDKCOption_C2Tuple_usizeTransactionZZ { - private LDKCOption_C2Tuple_usizeTransactionZZ() {} - export class Some extends LDKCOption_C2Tuple_usizeTransactionZZ { - public number some; - Some(number some) { this.some = some; } - } - export class None extends LDKCOption_C2Tuple_usizeTransactionZZ { - None() { } - } - static native void init(); - } - static { LDKCOption_C2Tuple_usizeTransactionZZ.init(); } - public static native LDKCOption_C2Tuple_usizeTransactionZZ LDKCOption_C2Tuple_usizeTransactionZZ_ref_from_ptr(long ptr); - public static class LDKClosureReason { - private LDKClosureReason() {} - export class CounterpartyForceClosed extends LDKClosureReason { - public String peer_msg; - CounterpartyForceClosed(String peer_msg) { this.peer_msg = peer_msg; } - } - export class HolderForceClosed extends LDKClosureReason { - HolderForceClosed() { } - } - export class CooperativeClosure extends LDKClosureReason { - CooperativeClosure() { } - } - export class CommitmentTxConfirmed extends LDKClosureReason { - CommitmentTxConfirmed() { } - } - export class FundingTimedOut extends LDKClosureReason { - FundingTimedOut() { } - } - export class ProcessingError extends LDKClosureReason { - public String err; - ProcessingError(String err) { this.err = err; } - } - export class DisconnectedPeer extends LDKClosureReason { - DisconnectedPeer() { } - } - export class OutdatedChannelManager extends LDKClosureReason { - OutdatedChannelManager() { } - } - static native void init(); - } - static { LDKClosureReason.init(); } - public static native LDKClosureReason LDKClosureReason_ref_from_ptr(long ptr); - public static class LDKCOption_ClosureReasonZ { - private LDKCOption_ClosureReasonZ() {} - export class Some extends LDKCOption_ClosureReasonZ { - public number some; - Some(number some) { this.some = some; } - } - export class None extends LDKCOption_ClosureReasonZ { - None() { } - } - static native void init(); - } - static { LDKCOption_ClosureReasonZ.init(); } - public static native LDKCOption_ClosureReasonZ LDKCOption_ClosureReasonZ_ref_from_ptr(long ptr); - public static native number LDKCResult_COption_ClosureReasonZDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_COption_ClosureReasonZDecodeErrorZ_get_err(long arg); - public static class LDKNetworkUpdate { - private LDKNetworkUpdate() {} - export class ChannelUpdateMessage extends LDKNetworkUpdate { - public number msg; - ChannelUpdateMessage(number msg) { this.msg = msg; } - } - export class ChannelClosed extends LDKNetworkUpdate { - public number short_channel_id; - public boolean is_permanent; - ChannelClosed(number short_channel_id, boolean is_permanent) { this.short_channel_id = short_channel_id; this.is_permanent = is_permanent; } - } - export class NodeFailure extends LDKNetworkUpdate { - public Uint8Array node_id; - public boolean is_permanent; - NodeFailure(Uint8Array node_id, boolean is_permanent) { this.node_id = node_id; this.is_permanent = is_permanent; } - } - static native void init(); - } - static { LDKNetworkUpdate.init(); } - public static native LDKNetworkUpdate LDKNetworkUpdate_ref_from_ptr(long ptr); - public static class LDKCOption_NetworkUpdateZ { - private LDKCOption_NetworkUpdateZ() {} - export class Some extends LDKCOption_NetworkUpdateZ { - public number some; - Some(number some) { this.some = some; } - } - export class None extends LDKCOption_NetworkUpdateZ { - None() { } - } - static native void init(); - } - static { LDKCOption_NetworkUpdateZ.init(); } - public static native LDKCOption_NetworkUpdateZ LDKCOption_NetworkUpdateZ_ref_from_ptr(long ptr); - public static class LDKSpendableOutputDescriptor { - private LDKSpendableOutputDescriptor() {} - export class StaticOutput extends LDKSpendableOutputDescriptor { - public number outpoint; - public number output; - StaticOutput(number outpoint, number output) { this.outpoint = outpoint; this.output = output; } - } - export class DelayedPaymentOutput extends LDKSpendableOutputDescriptor { - public number delayed_payment_output; - DelayedPaymentOutput(number delayed_payment_output) { this.delayed_payment_output = delayed_payment_output; } - } - export class StaticPaymentOutput extends LDKSpendableOutputDescriptor { - public number static_payment_output; - StaticPaymentOutput(number static_payment_output) { this.static_payment_output = static_payment_output; } - } - static native void init(); - } - static { LDKSpendableOutputDescriptor.init(); } - public static native LDKSpendableOutputDescriptor LDKSpendableOutputDescriptor_ref_from_ptr(long ptr); - public static class LDKPaymentPurpose { - private LDKPaymentPurpose() {} - export class InvoicePayment extends LDKPaymentPurpose { - public Uint8Array payment_preimage; - public Uint8Array payment_secret; - InvoicePayment(Uint8Array payment_preimage, Uint8Array payment_secret) { this.payment_preimage = payment_preimage; this.payment_secret = payment_secret; } - } - export class SpontaneousPayment extends LDKPaymentPurpose { - public Uint8Array spontaneous_payment; - SpontaneousPayment(Uint8Array spontaneous_payment) { this.spontaneous_payment = spontaneous_payment; } - } - static native void init(); - } - static { LDKPaymentPurpose.init(); } - public static native LDKPaymentPurpose LDKPaymentPurpose_ref_from_ptr(long ptr); - public static class LDKEvent { - private LDKEvent() {} - export class FundingGenerationReady extends LDKEvent { - public Uint8Array temporary_channel_id; - public number channel_value_satoshis; - public Uint8Array output_script; - public number user_channel_id; - FundingGenerationReady(Uint8Array temporary_channel_id, number channel_value_satoshis, Uint8Array output_script, number user_channel_id) { this.temporary_channel_id = temporary_channel_id; this.channel_value_satoshis = channel_value_satoshis; this.output_script = output_script; this.user_channel_id = user_channel_id; } - } - export class PaymentReceived extends LDKEvent { - public Uint8Array payment_hash; - public number amt; - public number purpose; - PaymentReceived(Uint8Array payment_hash, number amt, number purpose) { this.payment_hash = payment_hash; this.amt = amt; this.purpose = purpose; } - } - export class PaymentSent extends LDKEvent { - public Uint8Array payment_id; - public Uint8Array payment_preimage; - public Uint8Array payment_hash; - public number fee_paid_msat; - PaymentSent(Uint8Array payment_id, Uint8Array payment_preimage, Uint8Array payment_hash, number fee_paid_msat) { this.payment_id = payment_id; this.payment_preimage = payment_preimage; this.payment_hash = payment_hash; this.fee_paid_msat = fee_paid_msat; } - } - export class PaymentPathFailed extends LDKEvent { - public Uint8Array payment_id; - public Uint8Array payment_hash; - public boolean rejected_by_dest; - public number network_update; - public boolean all_paths_failed; - public number[] path; - public number short_channel_id; - public number retry; - PaymentPathFailed(Uint8Array payment_id, Uint8Array payment_hash, boolean rejected_by_dest, number network_update, boolean all_paths_failed, number[] path, number short_channel_id, number retry) { this.payment_id = payment_id; this.payment_hash = payment_hash; this.rejected_by_dest = rejected_by_dest; this.network_update = network_update; this.all_paths_failed = all_paths_failed; this.path = path; this.short_channel_id = short_channel_id; this.retry = retry; } - } - export class PaymentFailed extends LDKEvent { - public Uint8Array payment_id; - public Uint8Array payment_hash; - PaymentFailed(Uint8Array payment_id, Uint8Array payment_hash) { this.payment_id = payment_id; this.payment_hash = payment_hash; } - } - export class PendingHTLCsForwardable extends LDKEvent { - public number time_forwardable; - PendingHTLCsForwardable(number time_forwardable) { this.time_forwardable = time_forwardable; } - } - export class SpendableOutputs extends LDKEvent { - public number[] outputs; - SpendableOutputs(number[] outputs) { this.outputs = outputs; } - } - export class PaymentForwarded extends LDKEvent { - public number fee_earned_msat; - public boolean claim_from_onchain_tx; - PaymentForwarded(number fee_earned_msat, boolean claim_from_onchain_tx) { this.fee_earned_msat = fee_earned_msat; this.claim_from_onchain_tx = claim_from_onchain_tx; } - } - export class ChannelClosed extends LDKEvent { - public Uint8Array channel_id; - public number user_channel_id; - public number reason; - ChannelClosed(Uint8Array channel_id, number user_channel_id, number reason) { this.channel_id = channel_id; this.user_channel_id = user_channel_id; this.reason = reason; } - } - export class DiscardFunding extends LDKEvent { - public Uint8Array channel_id; - public Uint8Array transaction; - DiscardFunding(Uint8Array channel_id, Uint8Array transaction) { this.channel_id = channel_id; this.transaction = transaction; } - } - export class PaymentPathSuccessful extends LDKEvent { - public Uint8Array payment_id; - public Uint8Array payment_hash; - public number[] path; - PaymentPathSuccessful(Uint8Array payment_id, Uint8Array payment_hash, number[] path) { this.payment_id = payment_id; this.payment_hash = payment_hash; this.path = path; } - } - static native void init(); - } - static { LDKEvent.init(); } - public static native LDKEvent LDKEvent_ref_from_ptr(long ptr); - public static class LDKCOption_EventZ { - private LDKCOption_EventZ() {} - export class Some extends LDKCOption_EventZ { - public number some; - Some(number some) { this.some = some; } - } - export class None extends LDKCOption_EventZ { - None() { } - } - static native void init(); - } - static { LDKCOption_EventZ.init(); } - public static native LDKCOption_EventZ LDKCOption_EventZ_ref_from_ptr(long ptr); - public static native number LDKCResult_COption_EventZDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_COption_EventZDecodeErrorZ_get_err(long arg); - public static class LDKErrorAction { - private LDKErrorAction() {} - export class DisconnectPeer extends LDKErrorAction { - public number msg; - DisconnectPeer(number msg) { this.msg = msg; } - } - export class IgnoreError extends LDKErrorAction { - IgnoreError() { } - } - export class IgnoreAndLog extends LDKErrorAction { - public Level ignore_and_log; - IgnoreAndLog(Level ignore_and_log) { this.ignore_and_log = ignore_and_log; } - } - export class IgnoreDuplicateGossip extends LDKErrorAction { - IgnoreDuplicateGossip() { } - } - export class SendErrorMessage extends LDKErrorAction { - public number msg; - SendErrorMessage(number msg) { this.msg = msg; } - } - static native void init(); - } - static { LDKErrorAction.init(); } - public static native LDKErrorAction LDKErrorAction_ref_from_ptr(long ptr); - public static class LDKMessageSendEvent { - private LDKMessageSendEvent() {} - export class SendAcceptChannel extends LDKMessageSendEvent { - public Uint8Array node_id; - public number msg; - SendAcceptChannel(Uint8Array node_id, number msg) { this.node_id = node_id; this.msg = msg; } - } - export class SendOpenChannel extends LDKMessageSendEvent { - public Uint8Array node_id; - public number msg; - SendOpenChannel(Uint8Array node_id, number msg) { this.node_id = node_id; this.msg = msg; } - } - export class SendFundingCreated extends LDKMessageSendEvent { - public Uint8Array node_id; - public number msg; - SendFundingCreated(Uint8Array node_id, number msg) { this.node_id = node_id; this.msg = msg; } - } - export class SendFundingSigned extends LDKMessageSendEvent { - public Uint8Array node_id; - public number msg; - SendFundingSigned(Uint8Array node_id, number msg) { this.node_id = node_id; this.msg = msg; } - } - export class SendFundingLocked extends LDKMessageSendEvent { - public Uint8Array node_id; - public number msg; - SendFundingLocked(Uint8Array node_id, number msg) { this.node_id = node_id; this.msg = msg; } - } - export class SendAnnouncementSignatures extends LDKMessageSendEvent { - public Uint8Array node_id; - public number msg; - SendAnnouncementSignatures(Uint8Array node_id, number msg) { this.node_id = node_id; this.msg = msg; } - } - export class UpdateHTLCs extends LDKMessageSendEvent { - public Uint8Array node_id; - public number updates; - UpdateHTLCs(Uint8Array node_id, number updates) { this.node_id = node_id; this.updates = updates; } - } - export class SendRevokeAndACK extends LDKMessageSendEvent { - public Uint8Array node_id; - public number msg; - SendRevokeAndACK(Uint8Array node_id, number msg) { this.node_id = node_id; this.msg = msg; } - } - export class SendClosingSigned extends LDKMessageSendEvent { - public Uint8Array node_id; - public number msg; - SendClosingSigned(Uint8Array node_id, number msg) { this.node_id = node_id; this.msg = msg; } - } - export class SendShutdown extends LDKMessageSendEvent { - public Uint8Array node_id; - public number msg; - SendShutdown(Uint8Array node_id, number msg) { this.node_id = node_id; this.msg = msg; } - } - export class SendChannelReestablish extends LDKMessageSendEvent { - public Uint8Array node_id; - public number msg; - SendChannelReestablish(Uint8Array node_id, number msg) { this.node_id = node_id; this.msg = msg; } - } - export class BroadcastChannelAnnouncement extends LDKMessageSendEvent { - public number msg; - public number update_msg; - BroadcastChannelAnnouncement(number msg, number update_msg) { this.msg = msg; this.update_msg = update_msg; } - } - export class BroadcastNodeAnnouncement extends LDKMessageSendEvent { - public number msg; - BroadcastNodeAnnouncement(number msg) { this.msg = msg; } - } - export class BroadcastChannelUpdate extends LDKMessageSendEvent { - public number msg; - BroadcastChannelUpdate(number msg) { this.msg = msg; } - } - export class SendChannelUpdate extends LDKMessageSendEvent { - public Uint8Array node_id; - public number msg; - SendChannelUpdate(Uint8Array node_id, number msg) { this.node_id = node_id; this.msg = msg; } - } - export class HandleError extends LDKMessageSendEvent { - public Uint8Array node_id; - public number action; - HandleError(Uint8Array node_id, number action) { this.node_id = node_id; this.action = action; } - } - export class SendChannelRangeQuery extends LDKMessageSendEvent { - public Uint8Array node_id; - public number msg; - SendChannelRangeQuery(Uint8Array node_id, number msg) { this.node_id = node_id; this.msg = msg; } - } - export class SendShortIdsQuery extends LDKMessageSendEvent { - public Uint8Array node_id; - public number msg; - SendShortIdsQuery(Uint8Array node_id, number msg) { this.node_id = node_id; this.msg = msg; } - } - export class SendReplyChannelRange extends LDKMessageSendEvent { - public Uint8Array node_id; - public number msg; - SendReplyChannelRange(Uint8Array node_id, number msg) { this.node_id = node_id; this.msg = msg; } - } - static native void init(); - } - static { LDKMessageSendEvent.init(); } - public static native LDKMessageSendEvent LDKMessageSendEvent_ref_from_ptr(long ptr); - public static native number LDKCResult_ScoringParametersDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_ScoringParametersDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_ScorerDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_ScorerDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_InitFeaturesDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_InitFeaturesDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_ChannelFeaturesDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_ChannelFeaturesDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_NodeFeaturesDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_NodeFeaturesDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_InvoiceFeaturesDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_InvoiceFeaturesDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_ChannelTypeFeaturesDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_ChannelTypeFeaturesDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_SpendableOutputDescriptorDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_SpendableOutputDescriptorDecodeErrorZ_get_err(long arg); - public static native void LDKCResult_NoneNoneZ_get_ok(long arg); - public static native void LDKCResult_NoneNoneZ_get_err(long arg); - // struct LDKSignature C2Tuple_SignatureCVec_SignatureZZ_get_a(LDKC2Tuple_SignatureCVec_SignatureZZ *NONNULL_PTR tuple); - export function C2Tuple_SignatureCVec_SignatureZZ_get_a(tuple: number): Uint8Array { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.C2Tuple_SignatureCVec_SignatureZZ_get_a(tuple); - return decodeArray(nativeResponseValue); - } - // struct LDKCVec_SignatureZ C2Tuple_SignatureCVec_SignatureZZ_get_b(LDKC2Tuple_SignatureCVec_SignatureZZ *NONNULL_PTR tuple); - export function C2Tuple_SignatureCVec_SignatureZZ_get_b(tuple: number): Uint8Array[] { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.C2Tuple_SignatureCVec_SignatureZZ_get_b(tuple); - return nativeResponseValue; - } - public static native number LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_ok(long arg); - public static native void LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_err(long arg); - public static native Uint8Array LDKCResult_SignatureNoneZ_get_ok(long arg); - public static native void LDKCResult_SignatureNoneZ_get_err(long arg); + export enum AccessError { + /** + * The requested chain is unknown. + */ +LDKAccessError_UnknownChain, + /** + * The requested transaction doesn't exist or hasn't confirmed. + */ +LDKAccessError_UnknownTx, + + } + export enum COption_NoneZ { + /** + * When we're in this state, this COption_NoneZ contains a + */ +LDKCOption_NoneZ_Some, + /** + * When we're in this state, this COption_NoneZ contains nothing + */ +LDKCOption_NoneZ_None, + + } -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START + export enum ChannelMonitorUpdateErr { + /** + * 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). - export interface LDKBaseSign { - get_per_commitment_point (idx: number): Uint8Array; - release_commitment_secret (idx: number): Uint8Array; - validate_holder_commitment (holder_tx: number): number; - channel_keys_id (): Uint8Array; - sign_counterparty_commitment (commitment_tx: number): number; - validate_counterparty_revocation (idx: number, secret: Uint8Array): number; - sign_holder_commitment_and_htlcs (commitment_tx: number): number; - sign_justice_revoked_output (justice_tx: Uint8Array, input: number, amount: number, per_commitment_key: Uint8Array): number; - sign_justice_revoked_htlc (justice_tx: Uint8Array, input: number, amount: number, per_commitment_key: Uint8Array, htlc: number): number; - sign_counterparty_htlc_transaction (htlc_tx: Uint8Array, input: number, amount: number, per_commitment_point: Uint8Array, htlc: number): number; - sign_closing_transaction (closing_tx: number): number; - sign_channel_announcement (msg: number): number; - ready_channel (channel_parameters: number): void; - } +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. - export function LDKBaseSign_new(impl: LDKBaseSign, pubkeys: number): number { - throw new Error('unimplemented'); // TODO: bind to WASM - } +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. -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END +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\". +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`]. - // LDKPublicKey BaseSign_get_per_commitment_point LDKBaseSign *NONNULL_PTR this_arg, uint64_t idx - export function BaseSign_get_per_commitment_point(this_arg: number, idx: number): Uint8Array { +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. + +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. + +[`ChainMonitor::channel_monitor_updated`]: chainmonitor::ChainMonitor::channel_monitor_updated + */ +LDKChannelMonitorUpdateErr_TemporaryFailure, + /** + * 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). + +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. + +This failure may also signal a failure to update the local persisted copy of one of +the channel monitor instance. + +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) + +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. + */ +LDKChannelMonitorUpdateErr_PermanentFailure, + + } + + export enum ConfirmationTarget { + /** + * We are happy with this transaction confirming slowly when feerate drops some. + */ +LDKConfirmationTarget_Background, + /** + * We'd like this transaction to confirm without major delay, but 12-18 blocks is fine. + */ +LDKConfirmationTarget_Normal, + /** + * We'd like this transaction to confirm in the next few blocks. + */ +LDKConfirmationTarget_HighPriority, + + } + + export enum Level { + /** + * Designates extremely verbose information, including gossip-induced messages + */ +LDKLevel_Gossip, + /** + * Designates very low priority, often extremely verbose, information + */ +LDKLevel_Trace, + /** + * Designates lower priority information + */ +LDKLevel_Debug, + /** + * Designates useful information + */ +LDKLevel_Info, + /** + * Designates hazardous situations + */ +LDKLevel_Warn, + /** + * Designates very serious errors + */ +LDKLevel_Error, + + } + + export enum Network { + /** + * The main Bitcoin blockchain. + */ +LDKNetwork_Bitcoin, + /** + * The testnet3 blockchain. + */ +LDKNetwork_Testnet, + /** + * A local test blockchain. + */ +LDKNetwork_Regtest, + /** + * A blockchain on which blocks are signed instead of mined. + */ +LDKNetwork_Signet, + + } + + export enum Secp256k1Error { + /** + * Signature failed verification + */ +LDKSecp256k1Error_IncorrectSignature, + /** + * Badly sized message ("messages" are actually fixed-sized digests; see the MESSAGE_SIZE constant) + */ +LDKSecp256k1Error_InvalidMessage, + /** + * Bad public key + */ +LDKSecp256k1Error_InvalidPublicKey, + /** + * Bad signature + */ +LDKSecp256k1Error_InvalidSignature, + /** + * Bad secret key + */ +LDKSecp256k1Error_InvalidSecretKey, + /** + * Bad recovery id + */ +LDKSecp256k1Error_InvalidRecoveryId, + /** + * Invalid tweak for add_assign or mul_assign + */ +LDKSecp256k1Error_InvalidTweak, + /** + * tweak_add_check failed on an xonly public key + */ +LDKSecp256k1Error_TweakCheckFailed, + /** + * Didn't pass enough memory to context creation with preallocated memory + */ +LDKSecp256k1Error_NotEnoughMemory, + + } + // struct LDKCVec_u8Z TxOut_get_script_pubkey (struct LDKTxOut* thing) + export function TxOut_get_script_pubkey(thing: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BaseSign_get_per_commitment_point(this_arg, idx); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_TxOut_get_script_pubkey(thing); + return decodeUint8Array(nativeResponseValue); } - // LDKThirtyTwoBytes BaseSign_release_commitment_secret LDKBaseSign *NONNULL_PTR this_arg, uint64_t idx - export function BaseSign_release_commitment_secret(this_arg: number, idx: number): Uint8Array { + // uint64_t TxOut_get_value (struct LDKTxOut* thing) + export function TxOut_get_value(thing: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BaseSign_release_commitment_secret(this_arg, idx); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_TxOut_get_value(thing); + return nativeResponseValue; } - // LDKCResult_NoneNoneZ BaseSign_validate_holder_commitment LDKBaseSign *NONNULL_PTR this_arg, const struct LDKHolderCommitmentTransaction *NONNULL_PTR holder_tx - export function BaseSign_validate_holder_commitment(this_arg: number, holder_tx: number): number { + // struct LDKChannelConfig CResult_ChannelConfigDecodeErrorZ_get_ok(LDKCResult_ChannelConfigDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ChannelConfigDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BaseSign_validate_holder_commitment(this_arg, holder_tx); + const nativeResponseValue = wasm.TS_CResult_ChannelConfigDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // LDKThirtyTwoBytes BaseSign_channel_keys_id LDKBaseSign *NONNULL_PTR this_arg - export function BaseSign_channel_keys_id(this_arg: number): Uint8Array { + // struct LDKDecodeError CResult_ChannelConfigDecodeErrorZ_get_err(LDKCResult_ChannelConfigDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ChannelConfigDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BaseSign_channel_keys_id(this_arg); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CResult_ChannelConfigDecodeErrorZ_get_err(owner); + return nativeResponseValue; } - // LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ BaseSign_sign_counterparty_commitment LDKBaseSign *NONNULL_PTR this_arg, const struct LDKCommitmentTransaction *NONNULL_PTR commitment_tx - export function BaseSign_sign_counterparty_commitment(this_arg: number, commitment_tx: number): number { + // struct LDKOutPoint CResult_OutPointDecodeErrorZ_get_ok(LDKCResult_OutPointDecodeErrorZ *NONNULL_PTR owner); + export function CResult_OutPointDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BaseSign_sign_counterparty_commitment(this_arg, commitment_tx); + const nativeResponseValue = wasm.TS_CResult_OutPointDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // LDKCResult_NoneNoneZ BaseSign_validate_counterparty_revocation LDKBaseSign *NONNULL_PTR this_arg, uint64_t idx, const uint8_t (*secret)[32] - export function BaseSign_validate_counterparty_revocation(this_arg: number, idx: number, secret: Uint8Array): number { + // struct LDKDecodeError CResult_OutPointDecodeErrorZ_get_err(LDKCResult_OutPointDecodeErrorZ *NONNULL_PTR owner); + export function CResult_OutPointDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BaseSign_validate_counterparty_revocation(this_arg, idx, encodeArray(secret)); + const nativeResponseValue = wasm.TS_CResult_OutPointDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ BaseSign_sign_holder_commitment_and_htlcs LDKBaseSign *NONNULL_PTR this_arg, const struct LDKHolderCommitmentTransaction *NONNULL_PTR commitment_tx - export function BaseSign_sign_holder_commitment_and_htlcs(this_arg: number, commitment_tx: number): number { + // struct LDKSecretKey CResult_SecretKeyErrorZ_get_ok(LDKCResult_SecretKeyErrorZ *NONNULL_PTR owner); + export function CResult_SecretKeyErrorZ_get_ok(owner: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BaseSign_sign_holder_commitment_and_htlcs(this_arg, commitment_tx); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_SecretKeyErrorZ_get_ok(owner); + return decodeUint8Array(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] - export function BaseSign_sign_justice_revoked_output(this_arg: number, justice_tx: Uint8Array, input: number, amount: number, per_commitment_key: Uint8Array): number { + // enum LDKSecp256k1Error CResult_SecretKeyErrorZ_get_err(LDKCResult_SecretKeyErrorZ *NONNULL_PTR owner); + export function CResult_SecretKeyErrorZ_get_err(owner: number): Secp256k1Error { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BaseSign_sign_justice_revoked_output(this_arg, encodeArray(justice_tx), input, amount, encodeArray(per_commitment_key)); + const nativeResponseValue = wasm.TS_CResult_SecretKeyErrorZ_get_err(owner); 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 - export function BaseSign_sign_justice_revoked_htlc(this_arg: number, justice_tx: Uint8Array, input: number, amount: number, per_commitment_key: Uint8Array, htlc: number): number { + // struct LDKPublicKey CResult_PublicKeyErrorZ_get_ok(LDKCResult_PublicKeyErrorZ *NONNULL_PTR owner); + export function CResult_PublicKeyErrorZ_get_ok(owner: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BaseSign_sign_justice_revoked_htlc(this_arg, encodeArray(justice_tx), input, amount, encodeArray(per_commitment_key), htlc); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_PublicKeyErrorZ_get_ok(owner); + return decodeUint8Array(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 - export function BaseSign_sign_counterparty_htlc_transaction(this_arg: number, htlc_tx: Uint8Array, input: number, amount: number, per_commitment_point: Uint8Array, htlc: number): number { + // enum LDKSecp256k1Error CResult_PublicKeyErrorZ_get_err(LDKCResult_PublicKeyErrorZ *NONNULL_PTR owner); + export function CResult_PublicKeyErrorZ_get_err(owner: number): Secp256k1Error { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BaseSign_sign_counterparty_htlc_transaction(this_arg, encodeArray(htlc_tx), input, amount, encodeArray(per_commitment_point), htlc); + const nativeResponseValue = wasm.TS_CResult_PublicKeyErrorZ_get_err(owner); return nativeResponseValue; } - // LDKCResult_SignatureNoneZ BaseSign_sign_closing_transaction LDKBaseSign *NONNULL_PTR this_arg, const struct LDKClosingTransaction *NONNULL_PTR closing_tx - export function BaseSign_sign_closing_transaction(this_arg: number, closing_tx: number): number { + // struct LDKTxCreationKeys CResult_TxCreationKeysDecodeErrorZ_get_ok(LDKCResult_TxCreationKeysDecodeErrorZ *NONNULL_PTR owner); + export function CResult_TxCreationKeysDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BaseSign_sign_closing_transaction(this_arg, closing_tx); + const nativeResponseValue = wasm.TS_CResult_TxCreationKeysDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // LDKCResult_SignatureNoneZ BaseSign_sign_channel_announcement LDKBaseSign *NONNULL_PTR this_arg, const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR msg - export function BaseSign_sign_channel_announcement(this_arg: number, msg: number): number { + // struct LDKDecodeError CResult_TxCreationKeysDecodeErrorZ_get_err(LDKCResult_TxCreationKeysDecodeErrorZ *NONNULL_PTR owner); + export function CResult_TxCreationKeysDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BaseSign_sign_channel_announcement(this_arg, msg); + const nativeResponseValue = wasm.TS_CResult_TxCreationKeysDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // void BaseSign_ready_channel LDKBaseSign *NONNULL_PTR this_arg, const struct LDKChannelTransactionParameters *NONNULL_PTR channel_parameters - export function BaseSign_ready_channel(this_arg: number, channel_parameters: number): void { + // struct LDKChannelPublicKeys CResult_ChannelPublicKeysDecodeErrorZ_get_ok(LDKCResult_ChannelPublicKeysDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ChannelPublicKeysDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BaseSign_ready_channel(this_arg, channel_parameters); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_ChannelPublicKeysDecodeErrorZ_get_ok(owner); + return nativeResponseValue; } - // LDKChannelPublicKeys BaseSign_get_pubkeys LDKBaseSign *NONNULL_PTR this_arg - export function BaseSign_get_pubkeys(this_arg: number): number { + // struct LDKDecodeError CResult_ChannelPublicKeysDecodeErrorZ_get_err(LDKCResult_ChannelPublicKeysDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ChannelPublicKeysDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BaseSign_get_pubkeys(this_arg); + const nativeResponseValue = wasm.TS_CResult_ChannelPublicKeysDecodeErrorZ_get_err(owner); return nativeResponseValue; } - - - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START - - export interface LDKSign { - write (): Uint8Array; - } - - export function LDKSign_new(impl: LDKSign, BaseSign: LDKBaseSign, pubkeys: number): number { - throw new Error('unimplemented'); // TODO: bind to WASM - } - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END - - - // LDKCVec_u8Z Sign_write LDKSign *NONNULL_PTR this_arg - export function Sign_write(this_arg: number): Uint8Array { + // struct LDKTxCreationKeys CResult_TxCreationKeysErrorZ_get_ok(LDKCResult_TxCreationKeysErrorZ *NONNULL_PTR owner); + export function CResult_TxCreationKeysErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Sign_write(this_arg); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CResult_TxCreationKeysErrorZ_get_ok(owner); + return nativeResponseValue; } - public static native number LDKCResult_SignDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_SignDecodeErrorZ_get_err(long arg); - public static native Uint8Array LDKCResult_RecoverableSignatureNoneZ_get_ok(long arg); - public static native void LDKCResult_RecoverableSignatureNoneZ_get_err(long arg); - public static native Uint8Array[] LDKCResult_CVec_CVec_u8ZZNoneZ_get_ok(long arg); - public static native void LDKCResult_CVec_CVec_u8ZZNoneZ_get_err(long arg); - public static native number LDKCResult_InMemorySignerDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_InMemorySignerDecodeErrorZ_get_err(long arg); - public static native Uint8Array LDKCResult_TransactionNoneZ_get_ok(long arg); - public static native void LDKCResult_TransactionNoneZ_get_err(long arg); - // struct LDKThirtyTwoBytes C2Tuple_BlockHashChannelMonitorZ_get_a(LDKC2Tuple_BlockHashChannelMonitorZ *NONNULL_PTR tuple); - export function C2Tuple_BlockHashChannelMonitorZ_get_a(tuple: number): Uint8Array { + // enum LDKSecp256k1Error CResult_TxCreationKeysErrorZ_get_err(LDKCResult_TxCreationKeysErrorZ *NONNULL_PTR owner); + export function CResult_TxCreationKeysErrorZ_get_err(owner: number): Secp256k1Error { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_BlockHashChannelMonitorZ_get_a(tuple); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CResult_TxCreationKeysErrorZ_get_err(owner); + return nativeResponseValue; } - // struct LDKChannelMonitor C2Tuple_BlockHashChannelMonitorZ_get_b(LDKC2Tuple_BlockHashChannelMonitorZ *NONNULL_PTR tuple); - export function C2Tuple_BlockHashChannelMonitorZ_get_b(tuple: number): number { + export class LDKCOption_u32Z { + protected constructor() {} + } + export class LDKCOption_u32Z_Some extends LDKCOption_u32Z { + constructor(public some: number) { super(); } + } + export class LDKCOption_u32Z_None extends LDKCOption_u32Z { + constructor() { super(); } + } + export function LDKCOption_u32Z_ref_from_ptr(ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_BlockHashChannelMonitorZ_get_b(tuple); + const nativeResponseValue = wasm.TS_LDKCOption_u32Z_ref_from_ptr(ptr); return nativeResponseValue; } - public static native number[] LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_get_ok(long arg); - public static native IOError LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_get_err(long arg); - public static class LDKCOption_u16Z { - private LDKCOption_u16Z() {} - export class Some extends LDKCOption_u16Z { - public number some; - Some(number some) { this.some = some; } - } - export class None extends LDKCOption_u16Z { - None() { } + // struct LDKHTLCOutputInCommitment CResult_HTLCOutputInCommitmentDecodeErrorZ_get_ok(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ *NONNULL_PTR owner); + export function CResult_HTLCOutputInCommitmentDecodeErrorZ_get_ok(owner: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); } - static native void init(); + const nativeResponseValue = wasm.TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_get_ok(owner); + return nativeResponseValue; } - static { LDKCOption_u16Z.init(); } - public static native LDKCOption_u16Z LDKCOption_u16Z_ref_from_ptr(long ptr); - public static class LDKAPIError { - private LDKAPIError() {} - export class APIMisuseError extends LDKAPIError { - public String err; - APIMisuseError(String err) { this.err = err; } - } - export class FeeRateTooHigh extends LDKAPIError { - public String err; - public number feerate; - FeeRateTooHigh(String err, number feerate) { this.err = err; this.feerate = feerate; } - } - export class RouteError extends LDKAPIError { - public String err; - RouteError(String err) { this.err = err; } - } - export class ChannelUnavailable extends LDKAPIError { - public String err; - ChannelUnavailable(String err) { this.err = err; } - } - export class MonitorUpdateFailed extends LDKAPIError { - MonitorUpdateFailed() { } - } - export class IncompatibleShutdownScript extends LDKAPIError { - public number script; - IncompatibleShutdownScript(number script) { this.script = script; } + // struct LDKDecodeError CResult_HTLCOutputInCommitmentDecodeErrorZ_get_err(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ *NONNULL_PTR owner); + export function CResult_HTLCOutputInCommitmentDecodeErrorZ_get_err(owner: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); } - static native void init(); + const nativeResponseValue = wasm.TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_get_err(owner); + return nativeResponseValue; } - static { LDKAPIError.init(); } - public static native LDKAPIError LDKAPIError_ref_from_ptr(long ptr); - public static native void LDKCResult_NoneAPIErrorZ_get_ok(long arg); - public static native number LDKCResult_NoneAPIErrorZ_get_err(long arg); - public static native Uint8Array LDKCResult__u832APIErrorZ_get_ok(long arg); - public static native number LDKCResult__u832APIErrorZ_get_err(long arg); - public static class LDKPaymentSendFailure { - private LDKPaymentSendFailure() {} - export class ParameterError extends LDKPaymentSendFailure { - public number parameter_error; - ParameterError(number parameter_error) { this.parameter_error = parameter_error; } - } - export class PathParameterError extends LDKPaymentSendFailure { - public number[] path_parameter_error; - PathParameterError(number[] path_parameter_error) { this.path_parameter_error = path_parameter_error; } - } - export class AllFailedRetrySafe extends LDKPaymentSendFailure { - public number[] all_failed_retry_safe; - AllFailedRetrySafe(number[] all_failed_retry_safe) { this.all_failed_retry_safe = all_failed_retry_safe; } - } - export class PartialFailure extends LDKPaymentSendFailure { - public number[] results; - public number failed_paths_retry; - public Uint8Array payment_id; - PartialFailure(number[] results, number failed_paths_retry, Uint8Array payment_id) { this.results = results; this.failed_paths_retry = failed_paths_retry; this.payment_id = payment_id; } + // struct LDKCounterpartyChannelTransactionParameters CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_get_ok(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ *NONNULL_PTR owner); + export function CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_get_ok(owner: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); } - static native void init(); + const nativeResponseValue = wasm.TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_get_ok(owner); + return nativeResponseValue; } - static { LDKPaymentSendFailure.init(); } - public static native LDKPaymentSendFailure LDKPaymentSendFailure_ref_from_ptr(long ptr); - public static native Uint8Array LDKCResult_PaymentIdPaymentSendFailureZ_get_ok(long arg); - public static native number LDKCResult_PaymentIdPaymentSendFailureZ_get_err(long arg); - public static native void LDKCResult_NonePaymentSendFailureZ_get_ok(long arg); - public static native number LDKCResult_NonePaymentSendFailureZ_get_err(long arg); - // struct LDKThirtyTwoBytes C2Tuple_PaymentHashPaymentIdZ_get_a(LDKC2Tuple_PaymentHashPaymentIdZ *NONNULL_PTR tuple); - export function C2Tuple_PaymentHashPaymentIdZ_get_a(tuple: number): Uint8Array { + // struct LDKDecodeError CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_get_err(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ *NONNULL_PTR owner); + export function CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_PaymentHashPaymentIdZ_get_a(tuple); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_get_err(owner); + return nativeResponseValue; } - // struct LDKThirtyTwoBytes C2Tuple_PaymentHashPaymentIdZ_get_b(LDKC2Tuple_PaymentHashPaymentIdZ *NONNULL_PTR tuple); - export function C2Tuple_PaymentHashPaymentIdZ_get_b(tuple: number): Uint8Array { + // struct LDKChannelTransactionParameters CResult_ChannelTransactionParametersDecodeErrorZ_get_ok(LDKCResult_ChannelTransactionParametersDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ChannelTransactionParametersDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_PaymentHashPaymentIdZ_get_b(tuple); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CResult_ChannelTransactionParametersDecodeErrorZ_get_ok(owner); + return nativeResponseValue; } - public static native number LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_get_ok(long arg); - public static native number LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_get_err(long arg); - public static class LDKNetAddress { - private LDKNetAddress() {} - export class IPv4 extends LDKNetAddress { - public Uint8Array addr; - public number port; - IPv4(Uint8Array addr, number port) { this.addr = addr; this.port = port; } - } - export class IPv6 extends LDKNetAddress { - public Uint8Array addr; - public number port; - IPv6(Uint8Array addr, number port) { this.addr = addr; this.port = port; } - } - export class OnionV2 extends LDKNetAddress { - public Uint8Array onion_v2; - OnionV2(Uint8Array onion_v2) { this.onion_v2 = onion_v2; } - } - export class OnionV3 extends LDKNetAddress { - public Uint8Array ed25519_pubkey; - public number checksum; - public number version; - public number port; - OnionV3(Uint8Array ed25519_pubkey, number checksum, number version, number port) { this.ed25519_pubkey = ed25519_pubkey; this.checksum = checksum; this.version = version; this.port = port; } + // struct LDKDecodeError CResult_ChannelTransactionParametersDecodeErrorZ_get_err(LDKCResult_ChannelTransactionParametersDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ChannelTransactionParametersDecodeErrorZ_get_err(owner: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); } - static native void init(); + const nativeResponseValue = wasm.TS_CResult_ChannelTransactionParametersDecodeErrorZ_get_err(owner); + return nativeResponseValue; } - static { LDKNetAddress.init(); } - public static native LDKNetAddress LDKNetAddress_ref_from_ptr(long ptr); - // struct LDKThirtyTwoBytes C2Tuple_PaymentHashPaymentSecretZ_get_a(LDKC2Tuple_PaymentHashPaymentSecretZ *NONNULL_PTR tuple); - export function C2Tuple_PaymentHashPaymentSecretZ_get_a(tuple: number): Uint8Array { + // struct LDKHolderCommitmentTransaction CResult_HolderCommitmentTransactionDecodeErrorZ_get_ok(LDKCResult_HolderCommitmentTransactionDecodeErrorZ *NONNULL_PTR owner); + export function CResult_HolderCommitmentTransactionDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_PaymentHashPaymentSecretZ_get_a(tuple); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CResult_HolderCommitmentTransactionDecodeErrorZ_get_ok(owner); + return nativeResponseValue; } - // struct LDKThirtyTwoBytes C2Tuple_PaymentHashPaymentSecretZ_get_b(LDKC2Tuple_PaymentHashPaymentSecretZ *NONNULL_PTR tuple); - export function C2Tuple_PaymentHashPaymentSecretZ_get_b(tuple: number): Uint8Array { + // struct LDKDecodeError CResult_HolderCommitmentTransactionDecodeErrorZ_get_err(LDKCResult_HolderCommitmentTransactionDecodeErrorZ *NONNULL_PTR owner); + export function CResult_HolderCommitmentTransactionDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_PaymentHashPaymentSecretZ_get_b(tuple); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CResult_HolderCommitmentTransactionDecodeErrorZ_get_err(owner); + return nativeResponseValue; } - public static native number LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_get_ok(long arg); - public static native void LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_get_err(long arg); - public static native number LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_get_ok(long arg); - public static native number LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_get_err(long arg); - public static native Uint8Array LDKCResult_PaymentSecretNoneZ_get_ok(long arg); - public static native void LDKCResult_PaymentSecretNoneZ_get_err(long arg); - public static native Uint8Array LDKCResult_PaymentSecretAPIErrorZ_get_ok(long arg); - public static native number LDKCResult_PaymentSecretAPIErrorZ_get_err(long arg); - public static native Uint8Array LDKCResult_PaymentPreimageAPIErrorZ_get_ok(long arg); - public static native number LDKCResult_PaymentPreimageAPIErrorZ_get_err(long arg); - - - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START - - export interface LDKWatch { - watch_channel (funding_txo: number, monitor: number): number; - update_channel (funding_txo: number, update: number): number; - release_pending_monitor_events (): number[]; - } - - export function LDKWatch_new(impl: LDKWatch): number { - throw new Error('unimplemented'); // TODO: bind to WASM - } - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END - - - // LDKCResult_NoneChannelMonitorUpdateErrZ Watch_watch_channel LDKWatch *NONNULL_PTR this_arg, struct LDKOutPoint funding_txo, struct LDKChannelMonitor monitor - export function Watch_watch_channel(this_arg: number, funding_txo: number, monitor: number): number { + // struct LDKBuiltCommitmentTransaction CResult_BuiltCommitmentTransactionDecodeErrorZ_get_ok(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ *NONNULL_PTR owner); + export function CResult_BuiltCommitmentTransactionDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Watch_watch_channel(this_arg, funding_txo, monitor); + const nativeResponseValue = wasm.TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // LDKCResult_NoneChannelMonitorUpdateErrZ Watch_update_channel LDKWatch *NONNULL_PTR this_arg, struct LDKOutPoint funding_txo, struct LDKChannelMonitorUpdate update - export function Watch_update_channel(this_arg: number, funding_txo: number, update: number): number { + // struct LDKDecodeError CResult_BuiltCommitmentTransactionDecodeErrorZ_get_err(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ *NONNULL_PTR owner); + export function CResult_BuiltCommitmentTransactionDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Watch_update_channel(this_arg, funding_txo, update); + const nativeResponseValue = wasm.TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // LDKCVec_MonitorEventZ Watch_release_pending_monitor_events LDKWatch *NONNULL_PTR this_arg - export function Watch_release_pending_monitor_events(this_arg: number): number[] { + // struct LDKTrustedClosingTransaction *CResult_TrustedClosingTransactionNoneZ_get_ok(LDKCResult_TrustedClosingTransactionNoneZ *NONNULL_PTR owner); + export function CResult_TrustedClosingTransactionNoneZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Watch_release_pending_monitor_events(this_arg); + const nativeResponseValue = wasm.TS_CResult_TrustedClosingTransactionNoneZ_get_ok(owner); return nativeResponseValue; } - - - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START - - export interface LDKBroadcasterInterface { - broadcast_transaction (tx: Uint8Array): void; - } - - export function LDKBroadcasterInterface_new(impl: LDKBroadcasterInterface): number { - throw new Error('unimplemented'); // TODO: bind to WASM - } - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END - - - // void BroadcasterInterface_broadcast_transaction LDKBroadcasterInterface *NONNULL_PTR this_arg, struct LDKTransaction tx - export function BroadcasterInterface_broadcast_transaction(this_arg: number, tx: Uint8Array): void { + // void CResult_TrustedClosingTransactionNoneZ_get_err(LDKCResult_TrustedClosingTransactionNoneZ *NONNULL_PTR owner); + export function CResult_TrustedClosingTransactionNoneZ_get_err(owner: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BroadcasterInterface_broadcast_transaction(this_arg, encodeArray(tx)); + const nativeResponseValue = wasm.TS_CResult_TrustedClosingTransactionNoneZ_get_err(owner); // debug statements here } - - - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START - - export interface LDKKeysInterface { - get_node_secret (): Uint8Array; - get_destination_script (): Uint8Array; - get_shutdown_scriptpubkey (): number; - get_channel_signer (inbound: boolean, channel_value_satoshis: number): number; - get_secure_random_bytes (): Uint8Array; - read_chan_signer (reader: Uint8Array): number; - sign_invoice (invoice_preimage: Uint8Array): number; - get_inbound_payment_key_material (): Uint8Array; - } - - export function LDKKeysInterface_new(impl: LDKKeysInterface): number { - throw new Error('unimplemented'); // TODO: bind to WASM - } - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END - - - // LDKSecretKey KeysInterface_get_node_secret LDKKeysInterface *NONNULL_PTR this_arg - export function KeysInterface_get_node_secret(this_arg: number): Uint8Array { + // struct LDKCommitmentTransaction CResult_CommitmentTransactionDecodeErrorZ_get_ok(LDKCResult_CommitmentTransactionDecodeErrorZ *NONNULL_PTR owner); + export function CResult_CommitmentTransactionDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.KeysInterface_get_node_secret(this_arg); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CResult_CommitmentTransactionDecodeErrorZ_get_ok(owner); + return nativeResponseValue; } - // LDKCVec_u8Z KeysInterface_get_destination_script LDKKeysInterface *NONNULL_PTR this_arg - export function KeysInterface_get_destination_script(this_arg: number): Uint8Array { + // struct LDKDecodeError CResult_CommitmentTransactionDecodeErrorZ_get_err(LDKCResult_CommitmentTransactionDecodeErrorZ *NONNULL_PTR owner); + export function CResult_CommitmentTransactionDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.KeysInterface_get_destination_script(this_arg); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CResult_CommitmentTransactionDecodeErrorZ_get_err(owner); + return nativeResponseValue; } - // LDKShutdownScript KeysInterface_get_shutdown_scriptpubkey LDKKeysInterface *NONNULL_PTR this_arg - export function KeysInterface_get_shutdown_scriptpubkey(this_arg: number): number { + // struct LDKTrustedCommitmentTransaction *CResult_TrustedCommitmentTransactionNoneZ_get_ok(LDKCResult_TrustedCommitmentTransactionNoneZ *NONNULL_PTR owner); + export function CResult_TrustedCommitmentTransactionNoneZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.KeysInterface_get_shutdown_scriptpubkey(this_arg); + const nativeResponseValue = wasm.TS_CResult_TrustedCommitmentTransactionNoneZ_get_ok(owner); return nativeResponseValue; } - // LDKSign KeysInterface_get_channel_signer LDKKeysInterface *NONNULL_PTR this_arg, bool inbound, uint64_t channel_value_satoshis - export function KeysInterface_get_channel_signer(this_arg: number, inbound: boolean, channel_value_satoshis: number): number { + // void CResult_TrustedCommitmentTransactionNoneZ_get_err(LDKCResult_TrustedCommitmentTransactionNoneZ *NONNULL_PTR owner); + export function CResult_TrustedCommitmentTransactionNoneZ_get_err(owner: number): void { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_CResult_TrustedCommitmentTransactionNoneZ_get_err(owner); + // debug statements here + } + // struct LDKCVec_SignatureZ CResult_CVec_SignatureZNoneZ_get_ok(LDKCResult_CVec_SignatureZNoneZ *NONNULL_PTR owner); + export function CResult_CVec_SignatureZNoneZ_get_ok(owner: number): Uint8Array[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.KeysInterface_get_channel_signer(this_arg, inbound, channel_value_satoshis); + const nativeResponseValue = wasm.TS_CResult_CVec_SignatureZNoneZ_get_ok(owner); return nativeResponseValue; } - // LDKThirtyTwoBytes KeysInterface_get_secure_random_bytes LDKKeysInterface *NONNULL_PTR this_arg - export function KeysInterface_get_secure_random_bytes(this_arg: number): Uint8Array { + // void CResult_CVec_SignatureZNoneZ_get_err(LDKCResult_CVec_SignatureZNoneZ *NONNULL_PTR owner); + export function CResult_CVec_SignatureZNoneZ_get_err(owner: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.KeysInterface_get_secure_random_bytes(this_arg); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CResult_CVec_SignatureZNoneZ_get_err(owner); + // debug statements here } - // LDKCResult_SignDecodeErrorZ KeysInterface_read_chan_signer LDKKeysInterface *NONNULL_PTR this_arg, struct LDKu8slice reader - export function KeysInterface_read_chan_signer(this_arg: number, reader: Uint8Array): number { + // struct LDKShutdownScript CResult_ShutdownScriptDecodeErrorZ_get_ok(LDKCResult_ShutdownScriptDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ShutdownScriptDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.KeysInterface_read_chan_signer(this_arg, encodeArray(reader)); + const nativeResponseValue = wasm.TS_CResult_ShutdownScriptDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // LDKCResult_RecoverableSignatureNoneZ KeysInterface_sign_invoice LDKKeysInterface *NONNULL_PTR this_arg, struct LDKCVec_u8Z invoice_preimage - export function KeysInterface_sign_invoice(this_arg: number, invoice_preimage: Uint8Array): number { + // struct LDKDecodeError CResult_ShutdownScriptDecodeErrorZ_get_err(LDKCResult_ShutdownScriptDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ShutdownScriptDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.KeysInterface_sign_invoice(this_arg, encodeArray(invoice_preimage)); + const nativeResponseValue = wasm.TS_CResult_ShutdownScriptDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // LDKThirtyTwoBytes KeysInterface_get_inbound_payment_key_material LDKKeysInterface *NONNULL_PTR this_arg - export function KeysInterface_get_inbound_payment_key_material(this_arg: number): Uint8Array { + // struct LDKShutdownScript CResult_ShutdownScriptInvalidShutdownScriptZ_get_ok(LDKCResult_ShutdownScriptInvalidShutdownScriptZ *NONNULL_PTR owner); + export function CResult_ShutdownScriptInvalidShutdownScriptZ_get_ok(owner: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_CResult_ShutdownScriptInvalidShutdownScriptZ_get_ok(owner); + return nativeResponseValue; + } + // struct LDKInvalidShutdownScript CResult_ShutdownScriptInvalidShutdownScriptZ_get_err(LDKCResult_ShutdownScriptInvalidShutdownScriptZ *NONNULL_PTR owner); + export function CResult_ShutdownScriptInvalidShutdownScriptZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.KeysInterface_get_inbound_payment_key_material(this_arg); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CResult_ShutdownScriptInvalidShutdownScriptZ_get_err(owner); + return nativeResponseValue; } // OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START - export interface LDKFeeEstimator { - get_est_sat_per_1000_weight (confirmation_target: ConfirmationTarget): number; + export interface LDKType { + type_id (): number; + debug_str (): String; + write (): Uint8Array; } - export function LDKFeeEstimator_new(impl: LDKFeeEstimator): number { + export function LDKType_new(impl: LDKType): number { throw new Error('unimplemented'); // TODO: bind to WASM } // OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END - // uint32_t FeeEstimator_get_est_sat_per_1000_weight LDKFeeEstimator *NONNULL_PTR this_arg, enum LDKConfirmationTarget confirmation_target - export function FeeEstimator_get_est_sat_per_1000_weight(this_arg: number, confirmation_target: ConfirmationTarget): number { + // uint16_t Type_type_id LDKType *NONNULL_PTR this_arg + export function Type_type_id(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FeeEstimator_get_est_sat_per_1000_weight(this_arg, confirmation_target); + const nativeResponseValue = wasm.TS_Type_type_id(this_arg); return nativeResponseValue; } - - - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START - - export interface LDKLogger { - log (record: number): void; + // LDKStr Type_debug_str LDKType *NONNULL_PTR this_arg + export function Type_debug_str(this_arg: number): String { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); } - - export function LDKLogger_new(impl: LDKLogger): number { - throw new Error('unimplemented'); // TODO: bind to WASM - } - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END - - - // struct LDKThirtyTwoBytes C2Tuple_BlockHashChannelManagerZ_get_a(LDKC2Tuple_BlockHashChannelManagerZ *NONNULL_PTR tuple); - export function C2Tuple_BlockHashChannelManagerZ_get_a(tuple: number): Uint8Array { + const nativeResponseValue = wasm.TS_Type_debug_str(this_arg); + return nativeResponseValue; + } + // LDKCVec_u8Z Type_write LDKType *NONNULL_PTR this_arg + export function Type_write(this_arg: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_BlockHashChannelManagerZ_get_a(tuple); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_Type_write(this_arg); + return decodeUint8Array(nativeResponseValue); + } + export class LDKCOption_TypeZ { + protected constructor() {} + } + export class LDKCOption_TypeZ_Some extends LDKCOption_TypeZ { + constructor(public some: number) { super(); } + } + export class LDKCOption_TypeZ_None extends LDKCOption_TypeZ { + constructor() { super(); } } - // struct LDKChannelManager *C2Tuple_BlockHashChannelManagerZ_get_b(LDKC2Tuple_BlockHashChannelManagerZ *NONNULL_PTR tuple); - export function C2Tuple_BlockHashChannelManagerZ_get_b(tuple: number): number { + export function LDKCOption_TypeZ_ref_from_ptr(ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_BlockHashChannelManagerZ_get_b(tuple); + const nativeResponseValue = wasm.TS_LDKCOption_TypeZ_ref_from_ptr(ptr); return nativeResponseValue; } - public static native number LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_ChannelConfigDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_ChannelConfigDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_OutPointDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_OutPointDecodeErrorZ_get_err(long arg); - - - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START - - export interface LDKType { - type_id (): number; - debug_str (): String; - write (): Uint8Array; + // struct LDKCOption_TypeZ CResult_COption_TypeZDecodeErrorZ_get_ok(LDKCResult_COption_TypeZDecodeErrorZ *NONNULL_PTR owner); + export function CResult_COption_TypeZDecodeErrorZ_get_ok(owner: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); } - - export function LDKType_new(impl: LDKType): number { - throw new Error('unimplemented'); // TODO: bind to WASM - } - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END - - - // uint16_t Type_type_id LDKType *NONNULL_PTR this_arg - export function Type_type_id(this_arg: number): number { + const nativeResponseValue = wasm.TS_CResult_COption_TypeZDecodeErrorZ_get_ok(owner); + return nativeResponseValue; + } + // struct LDKDecodeError CResult_COption_TypeZDecodeErrorZ_get_err(LDKCResult_COption_TypeZDecodeErrorZ *NONNULL_PTR owner); + export function CResult_COption_TypeZDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Type_type_id(this_arg); + const nativeResponseValue = wasm.TS_CResult_COption_TypeZDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // LDKStr Type_debug_str LDKType *NONNULL_PTR this_arg - export function Type_debug_str(this_arg: number): String { + // struct LDKStr CResult_StringErrorZ_get_ok(LDKCResult_StringErrorZ *NONNULL_PTR owner); + export function CResult_StringErrorZ_get_ok(owner: number): String { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Type_debug_str(this_arg); + const nativeResponseValue = wasm.TS_CResult_StringErrorZ_get_ok(owner); return nativeResponseValue; } - // LDKCVec_u8Z Type_write LDKType *NONNULL_PTR this_arg - export function Type_write(this_arg: number): Uint8Array { + // enum LDKSecp256k1Error CResult_StringErrorZ_get_err(LDKCResult_StringErrorZ *NONNULL_PTR owner); + export function CResult_StringErrorZ_get_err(owner: number): Secp256k1Error { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Type_write(this_arg); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CResult_StringErrorZ_get_err(owner); + return nativeResponseValue; } - public static class LDKCOption_TypeZ { - private LDKCOption_TypeZ() {} - export class Some extends LDKCOption_TypeZ { - public number some; - Some(number some) { this.some = some; } + // struct LDKChannelMonitorUpdate CResult_ChannelMonitorUpdateDecodeErrorZ_get_ok(LDKCResult_ChannelMonitorUpdateDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ChannelMonitorUpdateDecodeErrorZ_get_ok(owner: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); } - export class None extends LDKCOption_TypeZ { - None() { } + const nativeResponseValue = wasm.TS_CResult_ChannelMonitorUpdateDecodeErrorZ_get_ok(owner); + return nativeResponseValue; + } + // struct LDKDecodeError CResult_ChannelMonitorUpdateDecodeErrorZ_get_err(LDKCResult_ChannelMonitorUpdateDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ChannelMonitorUpdateDecodeErrorZ_get_err(owner: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); } - static native void init(); + const nativeResponseValue = wasm.TS_CResult_ChannelMonitorUpdateDecodeErrorZ_get_err(owner); + return nativeResponseValue; + } + export class LDKMonitorEvent { + protected constructor() {} + } + export class LDKMonitorEvent_HTLCEvent extends LDKMonitorEvent { + constructor(public htlc_event: number) { super(); } + } + export class LDKMonitorEvent_CommitmentTxConfirmed extends LDKMonitorEvent { + constructor(public commitment_tx_confirmed: number) { super(); } + } + export class LDKMonitorEvent_UpdateCompleted extends LDKMonitorEvent { + constructor(public funding_txo: number, public monitor_update_id: number) { super(); } + } + export class LDKMonitorEvent_UpdateFailed extends LDKMonitorEvent { + constructor(public update_failed: number) { super(); } } - static { LDKCOption_TypeZ.init(); } - public static native LDKCOption_TypeZ LDKCOption_TypeZ_ref_from_ptr(long ptr); - public static native number LDKCResult_COption_TypeZDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_COption_TypeZDecodeErrorZ_get_err(long arg); - public static class LDKPaymentError { - private LDKPaymentError() {} - export class Invoice extends LDKPaymentError { - public String invoice; - Invoice(String invoice) { this.invoice = invoice; } + export function LDKMonitorEvent_ref_from_ptr(ptr: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); } - export class Routing extends LDKPaymentError { - public number routing; - Routing(number routing) { this.routing = routing; } + const nativeResponseValue = wasm.TS_LDKMonitorEvent_ref_from_ptr(ptr); + return nativeResponseValue; + } + export class LDKCOption_MonitorEventZ { + protected constructor() {} + } + export class LDKCOption_MonitorEventZ_Some extends LDKCOption_MonitorEventZ { + constructor(public some: number) { super(); } + } + export class LDKCOption_MonitorEventZ_None extends LDKCOption_MonitorEventZ { + constructor() { super(); } + } + export function LDKCOption_MonitorEventZ_ref_from_ptr(ptr: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); } - export class Sending extends LDKPaymentError { - public number sending; - Sending(number sending) { this.sending = sending; } + const nativeResponseValue = wasm.TS_LDKCOption_MonitorEventZ_ref_from_ptr(ptr); + return nativeResponseValue; + } + // struct LDKCOption_MonitorEventZ CResult_COption_MonitorEventZDecodeErrorZ_get_ok(LDKCResult_COption_MonitorEventZDecodeErrorZ *NONNULL_PTR owner); + export function CResult_COption_MonitorEventZDecodeErrorZ_get_ok(owner: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); } - static native void init(); + const nativeResponseValue = wasm.TS_CResult_COption_MonitorEventZDecodeErrorZ_get_ok(owner); + return nativeResponseValue; } - static { LDKPaymentError.init(); } - public static native LDKPaymentError LDKPaymentError_ref_from_ptr(long ptr); - public static native Uint8Array LDKCResult_PaymentIdPaymentErrorZ_get_ok(long arg); - public static native number LDKCResult_PaymentIdPaymentErrorZ_get_err(long arg); - public static native SiPrefix LDKCResult_SiPrefixNoneZ_get_ok(long arg); - public static native void LDKCResult_SiPrefixNoneZ_get_err(long arg); - public static native number LDKCResult_InvoiceNoneZ_get_ok(long arg); - public static native void LDKCResult_InvoiceNoneZ_get_err(long arg); - public static native number LDKCResult_SignedRawInvoiceNoneZ_get_ok(long arg); - public static native void LDKCResult_SignedRawInvoiceNoneZ_get_err(long arg); - // struct LDKRawInvoice C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_a(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ *NONNULL_PTR tuple); - export function C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_a(tuple: number): number { + // struct LDKDecodeError CResult_COption_MonitorEventZDecodeErrorZ_get_err(LDKCResult_COption_MonitorEventZDecodeErrorZ *NONNULL_PTR owner); + export function CResult_COption_MonitorEventZDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_a(tuple); + const nativeResponseValue = wasm.TS_CResult_COption_MonitorEventZDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // struct LDKThirtyTwoBytes C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_b(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ *NONNULL_PTR tuple); - export function C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_b(tuple: number): Uint8Array { + // struct LDKHTLCUpdate CResult_HTLCUpdateDecodeErrorZ_get_ok(LDKCResult_HTLCUpdateDecodeErrorZ *NONNULL_PTR owner); + export function CResult_HTLCUpdateDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_b(tuple); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CResult_HTLCUpdateDecodeErrorZ_get_ok(owner); + return nativeResponseValue; } - // struct LDKInvoiceSignature C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_c(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ *NONNULL_PTR tuple); - export function C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_c(tuple: number): number { + // struct LDKDecodeError CResult_HTLCUpdateDecodeErrorZ_get_err(LDKCResult_HTLCUpdateDecodeErrorZ *NONNULL_PTR owner); + export function CResult_HTLCUpdateDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_c(tuple); + const nativeResponseValue = wasm.TS_CResult_HTLCUpdateDecodeErrorZ_get_err(owner); return nativeResponseValue; } - public static native number LDKCResult_PayeePubKeyErrorZ_get_ok(long arg); - public static native Secp256k1Error LDKCResult_PayeePubKeyErrorZ_get_err(long arg); - public static native number LDKCResult_PositiveTimestampCreationErrorZ_get_ok(long arg); - public static native CreationError LDKCResult_PositiveTimestampCreationErrorZ_get_err(long arg); - public static native void LDKCResult_NoneSemanticErrorZ_get_ok(long arg); - public static native SemanticError LDKCResult_NoneSemanticErrorZ_get_err(long arg); - public static native number LDKCResult_InvoiceSemanticErrorZ_get_ok(long arg); - public static native SemanticError LDKCResult_InvoiceSemanticErrorZ_get_err(long arg); - public static native number LDKCResult_DescriptionCreationErrorZ_get_ok(long arg); - public static native CreationError LDKCResult_DescriptionCreationErrorZ_get_err(long arg); - public static native number LDKCResult_ExpiryTimeCreationErrorZ_get_ok(long arg); - public static native CreationError LDKCResult_ExpiryTimeCreationErrorZ_get_err(long arg); - public static native number LDKCResult_PrivateRouteCreationErrorZ_get_ok(long arg); - public static native CreationError LDKCResult_PrivateRouteCreationErrorZ_get_err(long arg); - public static native String LDKCResult_StringErrorZ_get_ok(long arg); - public static native Secp256k1Error LDKCResult_StringErrorZ_get_err(long arg); - public static native number LDKCResult_ChannelMonitorUpdateDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_ChannelMonitorUpdateDecodeErrorZ_get_err(long arg); - public static class LDKCOption_MonitorEventZ { - private LDKCOption_MonitorEventZ() {} - export class Some extends LDKCOption_MonitorEventZ { - public number some; - Some(number some) { this.some = some; } + // void CResult_NoneNoneZ_get_ok(LDKCResult_NoneNoneZ *NONNULL_PTR owner); + export function CResult_NoneNoneZ_get_ok(owner: number): void { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); } - export class None extends LDKCOption_MonitorEventZ { - None() { } + const nativeResponseValue = wasm.TS_CResult_NoneNoneZ_get_ok(owner); + // debug statements here + } + // void CResult_NoneNoneZ_get_err(LDKCResult_NoneNoneZ *NONNULL_PTR owner); + export function CResult_NoneNoneZ_get_err(owner: number): void { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); } - static native void init(); + const nativeResponseValue = wasm.TS_CResult_NoneNoneZ_get_err(owner); + // debug statements here } - static { LDKCOption_MonitorEventZ.init(); } - public static native LDKCOption_MonitorEventZ LDKCOption_MonitorEventZ_ref_from_ptr(long ptr); - public static native number LDKCResult_COption_MonitorEventZDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_COption_MonitorEventZDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_HTLCUpdateDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_HTLCUpdateDecodeErrorZ_get_err(long arg); - // struct LDKOutPoint C2Tuple_OutPointScriptZ_get_a(LDKC2Tuple_OutPointScriptZ *NONNULL_PTR tuple); - export function C2Tuple_OutPointScriptZ_get_a(tuple: number): number { + // struct LDKOutPoint C2Tuple_OutPointScriptZ_get_a(LDKC2Tuple_OutPointScriptZ *NONNULL_PTR owner); + export function C2Tuple_OutPointScriptZ_get_a(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_OutPointScriptZ_get_a(tuple); + const nativeResponseValue = wasm.TS_C2Tuple_OutPointScriptZ_get_a(owner); return nativeResponseValue; } - // struct LDKCVec_u8Z C2Tuple_OutPointScriptZ_get_b(LDKC2Tuple_OutPointScriptZ *NONNULL_PTR tuple); - export function C2Tuple_OutPointScriptZ_get_b(tuple: number): Uint8Array { + // struct LDKCVec_u8Z C2Tuple_OutPointScriptZ_get_b(LDKC2Tuple_OutPointScriptZ *NONNULL_PTR owner); + export function C2Tuple_OutPointScriptZ_get_b(owner: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_OutPointScriptZ_get_b(tuple); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_C2Tuple_OutPointScriptZ_get_b(owner); + return decodeUint8Array(nativeResponseValue); } - // uint32_t C2Tuple_u32ScriptZ_get_a(LDKC2Tuple_u32ScriptZ *NONNULL_PTR tuple); - export function C2Tuple_u32ScriptZ_get_a(tuple: number): number { + // uint32_t C2Tuple_u32ScriptZ_get_a(LDKC2Tuple_u32ScriptZ *NONNULL_PTR owner); + export function C2Tuple_u32ScriptZ_get_a(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_u32ScriptZ_get_a(tuple); + const nativeResponseValue = wasm.TS_C2Tuple_u32ScriptZ_get_a(owner); return nativeResponseValue; } - // struct LDKCVec_u8Z C2Tuple_u32ScriptZ_get_b(LDKC2Tuple_u32ScriptZ *NONNULL_PTR tuple); - export function C2Tuple_u32ScriptZ_get_b(tuple: number): Uint8Array { + // struct LDKCVec_u8Z C2Tuple_u32ScriptZ_get_b(LDKC2Tuple_u32ScriptZ *NONNULL_PTR owner); + export function C2Tuple_u32ScriptZ_get_b(owner: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_u32ScriptZ_get_b(tuple); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_C2Tuple_u32ScriptZ_get_b(owner); + return decodeUint8Array(nativeResponseValue); } - // struct LDKThirtyTwoBytes C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_a(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ *NONNULL_PTR tuple); - export function C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_a(tuple: number): Uint8Array { + // struct LDKThirtyTwoBytes C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_a(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ *NONNULL_PTR owner); + export function C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_a(owner: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_a(tuple); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_a(owner); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCVec_C2Tuple_u32ScriptZZ C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_b(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ *NONNULL_PTR tuple); - export function C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_b(tuple: number): number[] { + // struct LDKCVec_C2Tuple_u32ScriptZZ C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_b(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ *NONNULL_PTR owner); + export function C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_b(owner: number): number[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_b(tuple); + const nativeResponseValue = wasm.TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_b(owner); return nativeResponseValue; } - // uint32_t C2Tuple_u32TxOutZ_get_a(LDKC2Tuple_u32TxOutZ *NONNULL_PTR tuple); - export function C2Tuple_u32TxOutZ_get_a(tuple: number): number { + export class LDKPaymentPurpose { + protected constructor() {} + } + export class LDKPaymentPurpose_InvoicePayment extends LDKPaymentPurpose { + constructor(public payment_preimage: Uint8Array, public payment_secret: Uint8Array) { super(); } + } + export class LDKPaymentPurpose_SpontaneousPayment extends LDKPaymentPurpose { + constructor(public spontaneous_payment: Uint8Array) { super(); } + } + export function LDKPaymentPurpose_ref_from_ptr(ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_u32TxOutZ_get_a(tuple); + const nativeResponseValue = wasm.TS_LDKPaymentPurpose_ref_from_ptr(ptr); return nativeResponseValue; } - // struct LDKTxOut C2Tuple_u32TxOutZ_get_b(LDKC2Tuple_u32TxOutZ *NONNULL_PTR tuple); - export function C2Tuple_u32TxOutZ_get_b(tuple: number): number { + export class LDKCOption_u64Z { + protected constructor() {} + } + export class LDKCOption_u64Z_Some extends LDKCOption_u64Z { + constructor(public some: number) { super(); } + } + export class LDKCOption_u64Z_None extends LDKCOption_u64Z { + constructor() { super(); } + } + export function LDKCOption_u64Z_ref_from_ptr(ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_u32TxOutZ_get_b(tuple); + const nativeResponseValue = wasm.TS_LDKCOption_u64Z_ref_from_ptr(ptr); return nativeResponseValue; } - // struct LDKThirtyTwoBytes C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_a(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ *NONNULL_PTR tuple); - export function C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_a(tuple: number): Uint8Array { + export class LDKNetworkUpdate { + protected constructor() {} + } + export class LDKNetworkUpdate_ChannelUpdateMessage extends LDKNetworkUpdate { + constructor(public msg: number) { super(); } + } + export class LDKNetworkUpdate_ChannelClosed extends LDKNetworkUpdate { + constructor(public short_channel_id: number, public is_permanent: boolean) { super(); } + } + export class LDKNetworkUpdate_NodeFailure extends LDKNetworkUpdate { + constructor(public node_id: Uint8Array, public is_permanent: boolean) { super(); } + } + export function LDKNetworkUpdate_ref_from_ptr(ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_a(tuple); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_LDKNetworkUpdate_ref_from_ptr(ptr); + return nativeResponseValue; + } + export class LDKCOption_NetworkUpdateZ { + protected constructor() {} + } + export class LDKCOption_NetworkUpdateZ_Some extends LDKCOption_NetworkUpdateZ { + constructor(public some: number) { super(); } + } + export class LDKCOption_NetworkUpdateZ_None extends LDKCOption_NetworkUpdateZ { + constructor() { super(); } } - // struct LDKCVec_C2Tuple_u32TxOutZZ C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_b(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ *NONNULL_PTR tuple); - export function C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_b(tuple: number): number[] { + export function LDKCOption_NetworkUpdateZ_ref_from_ptr(ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_b(tuple); + const nativeResponseValue = wasm.TS_LDKCOption_NetworkUpdateZ_ref_from_ptr(ptr); return nativeResponseValue; } - public static class LDKBalance { - private LDKBalance() {} - export class ClaimableOnChannelClose extends LDKBalance { - public number claimable_amount_satoshis; - ClaimableOnChannelClose(number claimable_amount_satoshis) { this.claimable_amount_satoshis = claimable_amount_satoshis; } + export class LDKSpendableOutputDescriptor { + protected constructor() {} + } + export class LDKSpendableOutputDescriptor_StaticOutput extends LDKSpendableOutputDescriptor { + constructor(public outpoint: number, public output: number) { super(); } + } + export class LDKSpendableOutputDescriptor_DelayedPaymentOutput extends LDKSpendableOutputDescriptor { + constructor(public delayed_payment_output: number) { super(); } + } + export class LDKSpendableOutputDescriptor_StaticPaymentOutput extends LDKSpendableOutputDescriptor { + constructor(public static_payment_output: number) { super(); } + } + export function LDKSpendableOutputDescriptor_ref_from_ptr(ptr: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); } - export class ClaimableAwaitingConfirmations extends LDKBalance { - public number claimable_amount_satoshis; - public number confirmation_height; - ClaimableAwaitingConfirmations(number claimable_amount_satoshis, number confirmation_height) { this.claimable_amount_satoshis = claimable_amount_satoshis; this.confirmation_height = confirmation_height; } + const nativeResponseValue = wasm.TS_LDKSpendableOutputDescriptor_ref_from_ptr(ptr); + return nativeResponseValue; + } + export class LDKClosureReason { + protected constructor() {} + } + export class LDKClosureReason_CounterpartyForceClosed extends LDKClosureReason { + constructor(public peer_msg: String) { super(); } + } + export class LDKClosureReason_HolderForceClosed extends LDKClosureReason { + constructor() { super(); } + } + export class LDKClosureReason_CooperativeClosure extends LDKClosureReason { + constructor() { super(); } + } + export class LDKClosureReason_CommitmentTxConfirmed extends LDKClosureReason { + constructor() { super(); } + } + export class LDKClosureReason_FundingTimedOut extends LDKClosureReason { + constructor() { super(); } + } + export class LDKClosureReason_ProcessingError extends LDKClosureReason { + constructor(public err: String) { super(); } + } + export class LDKClosureReason_DisconnectedPeer extends LDKClosureReason { + constructor() { super(); } + } + export class LDKClosureReason_OutdatedChannelManager extends LDKClosureReason { + constructor() { super(); } + } + export function LDKClosureReason_ref_from_ptr(ptr: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); } - export class ContentiousClaimable extends LDKBalance { - public number claimable_amount_satoshis; - public number timeout_height; - ContentiousClaimable(number claimable_amount_satoshis, number timeout_height) { this.claimable_amount_satoshis = claimable_amount_satoshis; this.timeout_height = timeout_height; } + const nativeResponseValue = wasm.TS_LDKClosureReason_ref_from_ptr(ptr); + return nativeResponseValue; + } + export class LDKEvent { + protected constructor() {} + } + export class LDKEvent_FundingGenerationReady extends LDKEvent { + constructor(public temporary_channel_id: Uint8Array, public channel_value_satoshis: number, public output_script: Uint8Array, public user_channel_id: number) { super(); } + } + export class LDKEvent_PaymentReceived extends LDKEvent { + constructor(public payment_hash: Uint8Array, public amt: number, public purpose: number) { super(); } + } + export class LDKEvent_PaymentSent extends LDKEvent { + constructor(public payment_id: Uint8Array, public payment_preimage: Uint8Array, public payment_hash: Uint8Array, public fee_paid_msat: number) { super(); } + } + export class LDKEvent_PaymentPathFailed extends LDKEvent { + constructor(public payment_id: Uint8Array, public payment_hash: Uint8Array, public rejected_by_dest: boolean, public network_update: number, public all_paths_failed: boolean, public path: number[], public short_channel_id: number, public retry: number) { super(); } + } + export class LDKEvent_PaymentFailed extends LDKEvent { + constructor(public payment_id: Uint8Array, public payment_hash: Uint8Array) { super(); } + } + export class LDKEvent_PendingHTLCsForwardable extends LDKEvent { + constructor(public time_forwardable: number) { super(); } + } + export class LDKEvent_SpendableOutputs extends LDKEvent { + constructor(public outputs: number[]) { super(); } + } + export class LDKEvent_PaymentForwarded extends LDKEvent { + constructor(public fee_earned_msat: number, public claim_from_onchain_tx: boolean) { super(); } + } + export class LDKEvent_ChannelClosed extends LDKEvent { + constructor(public channel_id: Uint8Array, public user_channel_id: number, public reason: number) { super(); } + } + export class LDKEvent_DiscardFunding extends LDKEvent { + constructor(public channel_id: Uint8Array, public transaction: Uint8Array) { super(); } + } + export class LDKEvent_PaymentPathSuccessful extends LDKEvent { + constructor(public payment_id: Uint8Array, public payment_hash: Uint8Array, public path: number[]) { super(); } + } + export function LDKEvent_ref_from_ptr(ptr: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); } - export class MaybeClaimableHTLCAwaitingTimeout extends LDKBalance { - public number claimable_amount_satoshis; - public number claimable_height; - MaybeClaimableHTLCAwaitingTimeout(number claimable_amount_satoshis, number claimable_height) { this.claimable_amount_satoshis = claimable_amount_satoshis; this.claimable_height = claimable_height; } + const nativeResponseValue = wasm.TS_LDKEvent_ref_from_ptr(ptr); + return nativeResponseValue; + } + // uintptr_t C2Tuple_usizeTransactionZ_get_a(LDKC2Tuple_usizeTransactionZ *NONNULL_PTR owner); + export function C2Tuple_usizeTransactionZ_get_a(owner: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); } - static native void init(); + const nativeResponseValue = wasm.TS_C2Tuple_usizeTransactionZ_get_a(owner); + return nativeResponseValue; } - static { LDKBalance.init(); } - public static native LDKBalance LDKBalance_ref_from_ptr(long ptr); - public static native number LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_err(long arg); - public static native void LDKCResult_NoneLightningErrorZ_get_ok(long arg); - public static native number LDKCResult_NoneLightningErrorZ_get_err(long arg); - // struct LDKPublicKey C2Tuple_PublicKeyTypeZ_get_a(LDKC2Tuple_PublicKeyTypeZ *NONNULL_PTR tuple); - export function C2Tuple_PublicKeyTypeZ_get_a(tuple: number): Uint8Array { + // struct LDKTransaction C2Tuple_usizeTransactionZ_get_b(LDKC2Tuple_usizeTransactionZ *NONNULL_PTR owner); + export function C2Tuple_usizeTransactionZ_get_b(owner: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_PublicKeyTypeZ_get_a(tuple); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_C2Tuple_usizeTransactionZ_get_b(owner); + return decodeUint8Array(nativeResponseValue); } - // struct LDKType C2Tuple_PublicKeyTypeZ_get_b(LDKC2Tuple_PublicKeyTypeZ *NONNULL_PTR tuple); - export function C2Tuple_PublicKeyTypeZ_get_b(tuple: number): number { + // uint32_t C2Tuple_u32TxOutZ_get_a(LDKC2Tuple_u32TxOutZ *NONNULL_PTR owner); + export function C2Tuple_u32TxOutZ_get_a(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_PublicKeyTypeZ_get_b(tuple); + const nativeResponseValue = wasm.TS_C2Tuple_u32TxOutZ_get_a(owner); return nativeResponseValue; } - public static native boolean LDKCResult_boolLightningErrorZ_get_ok(long arg); - public static native number LDKCResult_boolLightningErrorZ_get_err(long arg); - // struct LDKChannelAnnouncement C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_a(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ *NONNULL_PTR tuple); - export function C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_a(tuple: number): number { + // struct LDKTxOut C2Tuple_u32TxOutZ_get_b(LDKC2Tuple_u32TxOutZ *NONNULL_PTR owner); + export function C2Tuple_u32TxOutZ_get_b(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_a(tuple); + const nativeResponseValue = wasm.TS_C2Tuple_u32TxOutZ_get_b(owner); return nativeResponseValue; } - // struct LDKChannelUpdate C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_b(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ *NONNULL_PTR tuple); - export function C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_b(tuple: number): number { + // struct LDKThirtyTwoBytes C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_a(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ *NONNULL_PTR owner); + export function C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_a(owner: number): Uint8Array { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_a(owner); + return decodeUint8Array(nativeResponseValue); + } + // struct LDKCVec_C2Tuple_u32TxOutZZ C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_b(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ *NONNULL_PTR owner); + export function C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_b(owner: number): number[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_b(tuple); + const nativeResponseValue = wasm.TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_b(owner); return nativeResponseValue; } - // struct LDKChannelUpdate C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_c(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ *NONNULL_PTR tuple); - export function C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_c(tuple: number): number { + export class LDKBalance { + protected constructor() {} + } + export class LDKBalance_ClaimableOnChannelClose extends LDKBalance { + constructor(public claimable_amount_satoshis: number) { super(); } + } + export class LDKBalance_ClaimableAwaitingConfirmations extends LDKBalance { + constructor(public claimable_amount_satoshis: number, public confirmation_height: number) { super(); } + } + export class LDKBalance_ContentiousClaimable extends LDKBalance { + constructor(public claimable_amount_satoshis: number, public timeout_height: number) { super(); } + } + export class LDKBalance_MaybeClaimableHTLCAwaitingTimeout extends LDKBalance { + constructor(public claimable_amount_satoshis: number, public claimable_height: number) { super(); } + } + export function LDKBalance_ref_from_ptr(ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_c(tuple); + const nativeResponseValue = wasm.TS_LDKBalance_ref_from_ptr(ptr); return nativeResponseValue; } - public static native Uint8Array LDKCResult_CVec_u8ZPeerHandleErrorZ_get_ok(long arg); - public static native number LDKCResult_CVec_u8ZPeerHandleErrorZ_get_err(long arg); - public static native void LDKCResult_NonePeerHandleErrorZ_get_ok(long arg); - public static native number LDKCResult_NonePeerHandleErrorZ_get_err(long arg); - public static native boolean LDKCResult_boolPeerHandleErrorZ_get_ok(long arg); - public static native number LDKCResult_boolPeerHandleErrorZ_get_err(long arg); - public static native number LDKCResult_NodeIdDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_NodeIdDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_COption_NetworkUpdateZDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_COption_NetworkUpdateZDecodeErrorZ_get_err(long arg); - - - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START - - export interface LDKAccess { - get_utxo (genesis_hash: Uint8Array, short_channel_id: number): number; + // struct LDKSignature C2Tuple_SignatureCVec_SignatureZZ_get_a(LDKC2Tuple_SignatureCVec_SignatureZZ *NONNULL_PTR owner); + export function C2Tuple_SignatureCVec_SignatureZZ_get_a(owner: number): Uint8Array { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); } - - export function LDKAccess_new(impl: LDKAccess): number { - throw new Error('unimplemented'); // TODO: bind to WASM - } - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END - - - // LDKCResult_TxOutAccessErrorZ Access_get_utxo LDKAccess *NONNULL_PTR this_arg, const uint8_t (*genesis_hash)[32], uint64_t short_channel_id - export function Access_get_utxo(this_arg: number, genesis_hash: Uint8Array, short_channel_id: number): number { + const nativeResponseValue = wasm.TS_C2Tuple_SignatureCVec_SignatureZZ_get_a(owner); + return decodeUint8Array(nativeResponseValue); + } + // struct LDKCVec_SignatureZ C2Tuple_SignatureCVec_SignatureZZ_get_b(LDKC2Tuple_SignatureCVec_SignatureZZ *NONNULL_PTR owner); + export function C2Tuple_SignatureCVec_SignatureZZ_get_b(owner: number): Uint8Array[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Access_get_utxo(this_arg, encodeArray(genesis_hash), short_channel_id); - return nativeResponseValue; - } - public static class LDKCOption_AccessZ { - private LDKCOption_AccessZ() {} - export class Some extends LDKCOption_AccessZ { - public number some; - Some(number some) { this.some = some; } - } - export class None extends LDKCOption_AccessZ { - None() { } - } - static native void init(); - } - static { LDKCOption_AccessZ.init(); } - public static native LDKCOption_AccessZ LDKCOption_AccessZ_ref_from_ptr(long ptr); - public static native number LDKCResult_DirectionalChannelInfoDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_DirectionalChannelInfoDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_ChannelInfoDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_ChannelInfoDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_RoutingFeesDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_RoutingFeesDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_NodeAnnouncementInfoDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_NodeAnnouncementInfoDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_NodeInfoDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_NodeInfoDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_NetworkGraphDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_NetworkGraphDecodeErrorZ_get_err(long arg); - public static class LDKCOption_CVec_NetAddressZZ { - private LDKCOption_CVec_NetAddressZZ() {} - export class Some extends LDKCOption_CVec_NetAddressZZ { - public number[] some; - Some(number[] some) { this.some = some; } - } - export class None extends LDKCOption_CVec_NetAddressZZ { - None() { } - } - static native void init(); - } - static { LDKCOption_CVec_NetAddressZZ.init(); } - public static native LDKCOption_CVec_NetAddressZZ LDKCOption_CVec_NetAddressZZ_ref_from_ptr(long ptr); - public static native number LDKCResult_NetAddressDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_NetAddressDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_AcceptChannelDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_AcceptChannelDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_AnnouncementSignaturesDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_AnnouncementSignaturesDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_ChannelReestablishDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_ChannelReestablishDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_ClosingSignedDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_ClosingSignedDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_ClosingSignedFeeRangeDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_ClosingSignedFeeRangeDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_CommitmentSignedDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_CommitmentSignedDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_FundingCreatedDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_FundingCreatedDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_FundingSignedDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_FundingSignedDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_FundingLockedDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_FundingLockedDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_InitDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_InitDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_OpenChannelDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_OpenChannelDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_RevokeAndACKDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_RevokeAndACKDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_ShutdownDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_ShutdownDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_UpdateFailHTLCDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_UpdateFailHTLCDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_UpdateFeeDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_UpdateFeeDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_UpdateFulfillHTLCDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_UpdateFulfillHTLCDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_UpdateAddHTLCDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_UpdateAddHTLCDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_PingDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_PingDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_PongDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_PongDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_ChannelAnnouncementDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_ChannelAnnouncementDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_UnsignedChannelUpdateDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_UnsignedChannelUpdateDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_ChannelUpdateDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_ChannelUpdateDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_ErrorMessageDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_ErrorMessageDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_NodeAnnouncementDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_NodeAnnouncementDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_QueryShortChannelIdsDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_QueryShortChannelIdsDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_QueryChannelRangeDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_QueryChannelRangeDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_ReplyChannelRangeDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_ReplyChannelRangeDecodeErrorZ_get_err(long arg); - public static native number LDKCResult_GossipTimestampFilterDecodeErrorZ_get_ok(long arg); - public static native number LDKCResult_GossipTimestampFilterDecodeErrorZ_get_err(long arg); - public static class LDKSignOrCreationError { - private LDKSignOrCreationError() {} - export class SignError extends LDKSignOrCreationError { - SignError() { } - } - export class CreationError extends LDKSignOrCreationError { - public CreationError creation_error; - CreationError(CreationError creation_error) { this.creation_error = creation_error; } - } - static native void init(); - } - static { LDKSignOrCreationError.init(); } - public static native LDKSignOrCreationError LDKSignOrCreationError_ref_from_ptr(long ptr); - public static native number LDKCResult_InvoiceSignOrCreationErrorZ_get_ok(long arg); - public static native number LDKCResult_InvoiceSignOrCreationErrorZ_get_err(long arg); - - - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START - - export interface LDKFilter { - register_tx (txid: Uint8Array, script_pubkey: Uint8Array): void; - register_output (output: number): number; + const nativeResponseValue = wasm.TS_C2Tuple_SignatureCVec_SignatureZZ_get_b(owner); + return nativeResponseValue; + } + // struct LDKC2Tuple_SignatureCVec_SignatureZZ CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_ok(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ *NONNULL_PTR owner); + export function CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_ok(owner: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); } - - export function LDKFilter_new(impl: LDKFilter): number { - throw new Error('unimplemented'); // TODO: bind to WASM - } - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END - - - // void Filter_register_tx LDKFilter *NONNULL_PTR this_arg, const uint8_t (*txid)[32], struct LDKu8slice script_pubkey - export function Filter_register_tx(this_arg: number, txid: Uint8Array, script_pubkey: Uint8Array): void { + const nativeResponseValue = wasm.TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_ok(owner); + return nativeResponseValue; + } + // void CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_err(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ *NONNULL_PTR owner); + export function CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_err(owner: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Filter_register_tx(this_arg, encodeArray(txid), encodeArray(script_pubkey)); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_err(owner); // debug statements here } - // LDKCOption_C2Tuple_usizeTransactionZZ Filter_register_output LDKFilter *NONNULL_PTR this_arg, struct LDKWatchedOutput output - export function Filter_register_output(this_arg: number, output: number): number { + // struct LDKSignature CResult_SignatureNoneZ_get_ok(LDKCResult_SignatureNoneZ *NONNULL_PTR owner); + export function CResult_SignatureNoneZ_get_ok(owner: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Filter_register_output(this_arg, output); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_SignatureNoneZ_get_ok(owner); + return decodeUint8Array(nativeResponseValue); } - public static class LDKCOption_FilterZ { - private LDKCOption_FilterZ() {} - export class Some extends LDKCOption_FilterZ { - public number some; - Some(number some) { this.some = some; } - } - export class None extends LDKCOption_FilterZ { - None() { } + // void CResult_SignatureNoneZ_get_err(LDKCResult_SignatureNoneZ *NONNULL_PTR owner); + export function CResult_SignatureNoneZ_get_err(owner: number): void { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); } - static native void init(); + const nativeResponseValue = wasm.TS_CResult_SignatureNoneZ_get_err(owner); + // debug statements here } - static { LDKCOption_FilterZ.init(); } - public static native LDKCOption_FilterZ LDKCOption_FilterZ_ref_from_ptr(long ptr); - public static native number LDKCResult_LockedChannelMonitorNoneZ_get_ok(long arg); - public static native void LDKCResult_LockedChannelMonitorNoneZ_get_err(long arg); // OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START - export interface LDKMessageSendEventsProvider { - get_and_clear_pending_msg_events (): number[]; + export interface LDKBaseSign { + get_per_commitment_point (idx: number): Uint8Array; + release_commitment_secret (idx: number): Uint8Array; + validate_holder_commitment (holder_tx: number): number; + channel_keys_id (): Uint8Array; + sign_counterparty_commitment (commitment_tx: number): number; + validate_counterparty_revocation (idx: number, secret: Uint8Array): number; + sign_holder_commitment_and_htlcs (commitment_tx: number): number; + sign_justice_revoked_output (justice_tx: Uint8Array, input: number, amount: number, per_commitment_key: Uint8Array): number; + sign_justice_revoked_htlc (justice_tx: Uint8Array, input: number, amount: number, per_commitment_key: Uint8Array, htlc: number): number; + sign_counterparty_htlc_transaction (htlc_tx: Uint8Array, input: number, amount: number, per_commitment_point: Uint8Array, htlc: number): number; + sign_closing_transaction (closing_tx: number): number; + sign_channel_announcement (msg: number): number; + ready_channel (channel_parameters: number): void; } - export function LDKMessageSendEventsProvider_new(impl: LDKMessageSendEventsProvider): number { + export function LDKBaseSign_new(impl: LDKBaseSign, pubkeys: number): number { throw new Error('unimplemented'); // TODO: bind to WASM } // OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END - // LDKCVec_MessageSendEventZ MessageSendEventsProvider_get_and_clear_pending_msg_events LDKMessageSendEventsProvider *NONNULL_PTR this_arg - export function MessageSendEventsProvider_get_and_clear_pending_msg_events(this_arg: number): number[] { + // LDKPublicKey BaseSign_get_per_commitment_point LDKBaseSign *NONNULL_PTR this_arg, uint64_t idx + export function BaseSign_get_per_commitment_point(this_arg: number, idx: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageSendEventsProvider_get_and_clear_pending_msg_events(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_BaseSign_get_per_commitment_point(this_arg, idx); + return decodeUint8Array(nativeResponseValue); } - - - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START - - export interface LDKEventHandler { - handle_event (event: number): void; - } - - export function LDKEventHandler_new(impl: LDKEventHandler): number { - throw new Error('unimplemented'); // TODO: bind to WASM - } - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END - - - // void EventHandler_handle_event LDKEventHandler *NONNULL_PTR this_arg, const struct LDKEvent *NONNULL_PTR event - export function EventHandler_handle_event(this_arg: number, event: number): void { + // LDKThirtyTwoBytes BaseSign_release_commitment_secret LDKBaseSign *NONNULL_PTR this_arg, uint64_t idx + export function BaseSign_release_commitment_secret(this_arg: number, idx: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.EventHandler_handle_event(this_arg, event); - // debug statements here + const nativeResponseValue = wasm.TS_BaseSign_release_commitment_secret(this_arg, idx); + return decodeUint8Array(nativeResponseValue); } - - - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START - - export interface LDKEventsProvider { - process_pending_events (handler: number): void; + // LDKCResult_NoneNoneZ BaseSign_validate_holder_commitment LDKBaseSign *NONNULL_PTR this_arg, const struct LDKHolderCommitmentTransaction *NONNULL_PTR holder_tx + export function BaseSign_validate_holder_commitment(this_arg: number, holder_tx: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); } - - export function LDKEventsProvider_new(impl: LDKEventsProvider): number { - throw new Error('unimplemented'); // TODO: bind to WASM - } - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END - - - // void EventsProvider_process_pending_events LDKEventsProvider *NONNULL_PTR this_arg, struct LDKEventHandler handler - export function EventsProvider_process_pending_events(this_arg: number, handler: number): void { + const nativeResponseValue = wasm.TS_BaseSign_validate_holder_commitment(this_arg, holder_tx); + return nativeResponseValue; + } + // LDKThirtyTwoBytes BaseSign_channel_keys_id LDKBaseSign *NONNULL_PTR this_arg + export function BaseSign_channel_keys_id(this_arg: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.EventsProvider_process_pending_events(this_arg, handler); - // debug statements here + const nativeResponseValue = wasm.TS_BaseSign_channel_keys_id(this_arg); + return decodeUint8Array(nativeResponseValue); } - - - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START - - export interface LDKListen { - block_connected (block: Uint8Array, height: number): void; - block_disconnected (header: Uint8Array, height: number): void; + // LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ BaseSign_sign_counterparty_commitment LDKBaseSign *NONNULL_PTR this_arg, const struct LDKCommitmentTransaction *NONNULL_PTR commitment_tx + export function BaseSign_sign_counterparty_commitment(this_arg: number, commitment_tx: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); } - - export function LDKListen_new(impl: LDKListen): number { - throw new Error('unimplemented'); // TODO: bind to WASM - } - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END - - - // void Listen_block_connected LDKListen *NONNULL_PTR this_arg, struct LDKu8slice block, uint32_t height - export function Listen_block_connected(this_arg: number, block: Uint8Array, height: number): void { + const nativeResponseValue = wasm.TS_BaseSign_sign_counterparty_commitment(this_arg, commitment_tx); + return nativeResponseValue; + } + // LDKCResult_NoneNoneZ BaseSign_validate_counterparty_revocation LDKBaseSign *NONNULL_PTR this_arg, uint64_t idx, const uint8_t (*secret)[32] + export function BaseSign_validate_counterparty_revocation(this_arg: number, idx: number, secret: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Listen_block_connected(this_arg, encodeArray(block), height); - // debug statements here + const nativeResponseValue = wasm.TS_BaseSign_validate_counterparty_revocation(this_arg, idx, encodeUint8Array(secret)); + return nativeResponseValue; } - // void Listen_block_disconnected LDKListen *NONNULL_PTR this_arg, const uint8_t (*header)[80], uint32_t height - export function Listen_block_disconnected(this_arg: number, header: Uint8Array, height: number): void { + // LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ BaseSign_sign_holder_commitment_and_htlcs LDKBaseSign *NONNULL_PTR this_arg, const struct LDKHolderCommitmentTransaction *NONNULL_PTR commitment_tx + export function BaseSign_sign_holder_commitment_and_htlcs(this_arg: number, commitment_tx: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Listen_block_disconnected(this_arg, encodeArray(header), height); - // debug statements here + const nativeResponseValue = wasm.TS_BaseSign_sign_holder_commitment_and_htlcs(this_arg, commitment_tx); + return nativeResponseValue; } - - - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START - - export interface LDKConfirm { - transactions_confirmed (header: Uint8Array, txdata: number[], height: number): void; - transaction_unconfirmed (txid: Uint8Array): void; - best_block_updated (header: Uint8Array, height: number): void; - get_relevant_txids (): Uint8Array[]; + // 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] + export function BaseSign_sign_justice_revoked_output(this_arg: number, justice_tx: Uint8Array, input: number, amount: number, per_commitment_key: Uint8Array): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); } - - export function LDKConfirm_new(impl: LDKConfirm): number { - throw new Error('unimplemented'); // TODO: bind to WASM - } - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END - - - // void Confirm_transactions_confirmed LDKConfirm *NONNULL_PTR this_arg, const uint8_t (*header)[80], struct LDKCVec_C2Tuple_usizeTransactionZZ txdata, uint32_t height - export function Confirm_transactions_confirmed(this_arg: number, header: Uint8Array, txdata: number[], height: number): void { + const nativeResponseValue = wasm.TS_BaseSign_sign_justice_revoked_output(this_arg, encodeUint8Array(justice_tx), input, amount, encodeUint8Array(per_commitment_key)); + 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 + export function BaseSign_sign_justice_revoked_htlc(this_arg: number, justice_tx: Uint8Array, input: number, amount: number, per_commitment_key: Uint8Array, htlc: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Confirm_transactions_confirmed(this_arg, encodeArray(header), txdata, height); - // debug statements here + const nativeResponseValue = wasm.TS_BaseSign_sign_justice_revoked_htlc(this_arg, encodeUint8Array(justice_tx), input, amount, encodeUint8Array(per_commitment_key), htlc); + return nativeResponseValue; } - // void Confirm_transaction_unconfirmed LDKConfirm *NONNULL_PTR this_arg, const uint8_t (*txid)[32] - export function Confirm_transaction_unconfirmed(this_arg: number, txid: Uint8Array): void { + // 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 + export function BaseSign_sign_counterparty_htlc_transaction(this_arg: number, htlc_tx: Uint8Array, input: number, amount: number, per_commitment_point: Uint8Array, htlc: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Confirm_transaction_unconfirmed(this_arg, encodeArray(txid)); - // debug statements here + const nativeResponseValue = wasm.TS_BaseSign_sign_counterparty_htlc_transaction(this_arg, encodeUint8Array(htlc_tx), input, amount, encodeUint8Array(per_commitment_point), htlc); + return nativeResponseValue; } - // void Confirm_best_block_updated LDKConfirm *NONNULL_PTR this_arg, const uint8_t (*header)[80], uint32_t height - export function Confirm_best_block_updated(this_arg: number, header: Uint8Array, height: number): void { + // LDKCResult_SignatureNoneZ BaseSign_sign_closing_transaction LDKBaseSign *NONNULL_PTR this_arg, const struct LDKClosingTransaction *NONNULL_PTR closing_tx + export function BaseSign_sign_closing_transaction(this_arg: number, closing_tx: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Confirm_best_block_updated(this_arg, encodeArray(header), height); + const nativeResponseValue = wasm.TS_BaseSign_sign_closing_transaction(this_arg, closing_tx); + return nativeResponseValue; + } + // LDKCResult_SignatureNoneZ BaseSign_sign_channel_announcement LDKBaseSign *NONNULL_PTR this_arg, const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR msg + export function BaseSign_sign_channel_announcement(this_arg: number, msg: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_BaseSign_sign_channel_announcement(this_arg, msg); + return nativeResponseValue; + } + // void BaseSign_ready_channel LDKBaseSign *NONNULL_PTR this_arg, const struct LDKChannelTransactionParameters *NONNULL_PTR channel_parameters + export function BaseSign_ready_channel(this_arg: number, channel_parameters: number): void { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_BaseSign_ready_channel(this_arg, channel_parameters); // debug statements here } - // LDKCVec_TxidZ Confirm_get_relevant_txids LDKConfirm *NONNULL_PTR this_arg - export function Confirm_get_relevant_txids(this_arg: number): Uint8Array[] { + // LDKChannelPublicKeys BaseSign_get_pubkeys LDKBaseSign *NONNULL_PTR this_arg + export function BaseSign_get_pubkeys(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Confirm_get_relevant_txids(this_arg); + const nativeResponseValue = wasm.TS_BaseSign_get_pubkeys(this_arg); return nativeResponseValue; } @@ -1871,4043 +1364,3613 @@ public static native long new_empty_slice_vec(); // OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START - export interface LDKPersist { - persist_new_channel (channel_id: number, data: number, update_id: number): number; - update_persisted_channel (channel_id: number, update: number, data: number, update_id: number): number; + export interface LDKSign { + write (): Uint8Array; } - export function LDKPersist_new(impl: LDKPersist): number { + export function LDKSign_new(impl: LDKSign, BaseSign: LDKBaseSign, pubkeys: number): number { throw new Error('unimplemented'); // TODO: bind to WASM } // OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END - // 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 - export function Persist_persist_new_channel(this_arg: number, channel_id: number, data: number, update_id: number): number { + // LDKCVec_u8Z Sign_write LDKSign *NONNULL_PTR this_arg + export function Sign_write(this_arg: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Persist_persist_new_channel(this_arg, channel_id, data, update_id); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Sign_write(this_arg); + return decodeUint8Array(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 - export function Persist_update_persisted_channel(this_arg: number, channel_id: number, update: number, data: number, update_id: number): number { + // struct LDKThirtyTwoBytes C2Tuple_BlockHashChannelMonitorZ_get_a(LDKC2Tuple_BlockHashChannelMonitorZ *NONNULL_PTR owner); + export function C2Tuple_BlockHashChannelMonitorZ_get_a(owner: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Persist_update_persisted_channel(this_arg, channel_id, update, data, update_id); + const nativeResponseValue = wasm.TS_C2Tuple_BlockHashChannelMonitorZ_get_a(owner); + return decodeUint8Array(nativeResponseValue); + } + // struct LDKChannelMonitor C2Tuple_BlockHashChannelMonitorZ_get_b(LDKC2Tuple_BlockHashChannelMonitorZ *NONNULL_PTR owner); + export function C2Tuple_BlockHashChannelMonitorZ_get_b(owner: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_C2Tuple_BlockHashChannelMonitorZ_get_b(owner); return nativeResponseValue; } - - - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START - - export interface LDKChannelMessageHandler { - handle_open_channel (their_node_id: Uint8Array, their_features: number, msg: number): void; - handle_accept_channel (their_node_id: Uint8Array, their_features: number, msg: number): void; - handle_funding_created (their_node_id: Uint8Array, msg: number): void; - handle_funding_signed (their_node_id: Uint8Array, msg: number): void; - handle_funding_locked (their_node_id: Uint8Array, msg: number): void; - handle_shutdown (their_node_id: Uint8Array, their_features: number, msg: number): void; - handle_closing_signed (their_node_id: Uint8Array, msg: number): void; - handle_update_add_htlc (their_node_id: Uint8Array, msg: number): void; - handle_update_fulfill_htlc (their_node_id: Uint8Array, msg: number): void; - handle_update_fail_htlc (their_node_id: Uint8Array, msg: number): void; - handle_update_fail_malformed_htlc (their_node_id: Uint8Array, msg: number): void; - handle_commitment_signed (their_node_id: Uint8Array, msg: number): void; - handle_revoke_and_ack (their_node_id: Uint8Array, msg: number): void; - handle_update_fee (their_node_id: Uint8Array, msg: number): void; - handle_announcement_signatures (their_node_id: Uint8Array, msg: number): void; - peer_disconnected (their_node_id: Uint8Array, no_connection_possible: boolean): void; - peer_connected (their_node_id: Uint8Array, msg: number): void; - handle_channel_reestablish (their_node_id: Uint8Array, msg: number): void; - handle_channel_update (their_node_id: Uint8Array, msg: number): void; - handle_error (their_node_id: Uint8Array, msg: number): void; + // struct LDKC2Tuple_BlockHashChannelMonitorZ CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_ok(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ *NONNULL_PTR owner); + export function CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_ok(owner: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); } - - export function LDKChannelMessageHandler_new(impl: LDKChannelMessageHandler, MessageSendEventsProvider: LDKMessageSendEventsProvider): number { - throw new Error('unimplemented'); // TODO: bind to WASM - } - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END - - - // 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 - export function ChannelMessageHandler_handle_open_channel(this_arg: number, their_node_id: Uint8Array, their_features: number, msg: number): void { + const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_ok(owner); + return nativeResponseValue; + } + // struct LDKDecodeError CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_err(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ *NONNULL_PTR owner); + export function CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMessageHandler_handle_open_channel(this_arg, encodeArray(their_node_id), their_features, msg); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_err(owner); + return nativeResponseValue; } - // 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 - export function ChannelMessageHandler_handle_accept_channel(this_arg: number, their_node_id: Uint8Array, their_features: number, msg: number): void { + // struct LDKRouteHop CResult_RouteHopDecodeErrorZ_get_ok(LDKCResult_RouteHopDecodeErrorZ *NONNULL_PTR owner); + export function CResult_RouteHopDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMessageHandler_handle_accept_channel(this_arg, encodeArray(their_node_id), their_features, msg); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_RouteHopDecodeErrorZ_get_ok(owner); + return nativeResponseValue; } - // void ChannelMessageHandler_handle_funding_created LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKFundingCreated *NONNULL_PTR msg - export function ChannelMessageHandler_handle_funding_created(this_arg: number, their_node_id: Uint8Array, msg: number): void { + // struct LDKDecodeError CResult_RouteHopDecodeErrorZ_get_err(LDKCResult_RouteHopDecodeErrorZ *NONNULL_PTR owner); + export function CResult_RouteHopDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMessageHandler_handle_funding_created(this_arg, encodeArray(their_node_id), msg); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_RouteHopDecodeErrorZ_get_err(owner); + return nativeResponseValue; } - // void ChannelMessageHandler_handle_funding_signed LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKFundingSigned *NONNULL_PTR msg - export function ChannelMessageHandler_handle_funding_signed(this_arg: number, their_node_id: Uint8Array, msg: number): void { + // struct LDKRoute CResult_RouteDecodeErrorZ_get_ok(LDKCResult_RouteDecodeErrorZ *NONNULL_PTR owner); + export function CResult_RouteDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMessageHandler_handle_funding_signed(this_arg, encodeArray(their_node_id), msg); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_RouteDecodeErrorZ_get_ok(owner); + return nativeResponseValue; } - // void ChannelMessageHandler_handle_funding_locked LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKFundingLocked *NONNULL_PTR msg - export function ChannelMessageHandler_handle_funding_locked(this_arg: number, their_node_id: Uint8Array, msg: number): void { + // struct LDKDecodeError CResult_RouteDecodeErrorZ_get_err(LDKCResult_RouteDecodeErrorZ *NONNULL_PTR owner); + export function CResult_RouteDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMessageHandler_handle_funding_locked(this_arg, encodeArray(their_node_id), msg); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_RouteDecodeErrorZ_get_err(owner); + return nativeResponseValue; } - // 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 - export function ChannelMessageHandler_handle_shutdown(this_arg: number, their_node_id: Uint8Array, their_features: number, msg: number): void { + // struct LDKRouteParameters CResult_RouteParametersDecodeErrorZ_get_ok(LDKCResult_RouteParametersDecodeErrorZ *NONNULL_PTR owner); + export function CResult_RouteParametersDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMessageHandler_handle_shutdown(this_arg, encodeArray(their_node_id), their_features, msg); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_RouteParametersDecodeErrorZ_get_ok(owner); + return nativeResponseValue; } - // void ChannelMessageHandler_handle_closing_signed LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKClosingSigned *NONNULL_PTR msg - export function ChannelMessageHandler_handle_closing_signed(this_arg: number, their_node_id: Uint8Array, msg: number): void { + // struct LDKDecodeError CResult_RouteParametersDecodeErrorZ_get_err(LDKCResult_RouteParametersDecodeErrorZ *NONNULL_PTR owner); + export function CResult_RouteParametersDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMessageHandler_handle_closing_signed(this_arg, encodeArray(their_node_id), msg); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_RouteParametersDecodeErrorZ_get_err(owner); + return nativeResponseValue; } - // void ChannelMessageHandler_handle_update_add_htlc LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKUpdateAddHTLC *NONNULL_PTR msg - export function ChannelMessageHandler_handle_update_add_htlc(this_arg: number, their_node_id: Uint8Array, msg: number): void { + // struct LDKPayee CResult_PayeeDecodeErrorZ_get_ok(LDKCResult_PayeeDecodeErrorZ *NONNULL_PTR owner); + export function CResult_PayeeDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMessageHandler_handle_update_add_htlc(this_arg, encodeArray(their_node_id), msg); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_PayeeDecodeErrorZ_get_ok(owner); + return nativeResponseValue; } - // void ChannelMessageHandler_handle_update_fulfill_htlc LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKUpdateFulfillHTLC *NONNULL_PTR msg - export function ChannelMessageHandler_handle_update_fulfill_htlc(this_arg: number, their_node_id: Uint8Array, msg: number): void { + // struct LDKDecodeError CResult_PayeeDecodeErrorZ_get_err(LDKCResult_PayeeDecodeErrorZ *NONNULL_PTR owner); + export function CResult_PayeeDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMessageHandler_handle_update_fulfill_htlc(this_arg, encodeArray(their_node_id), msg); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_PayeeDecodeErrorZ_get_err(owner); + return nativeResponseValue; } - // void ChannelMessageHandler_handle_update_fail_htlc LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKUpdateFailHTLC *NONNULL_PTR msg - export function ChannelMessageHandler_handle_update_fail_htlc(this_arg: number, their_node_id: Uint8Array, msg: number): void { + // struct LDKRouteHint CResult_RouteHintDecodeErrorZ_get_ok(LDKCResult_RouteHintDecodeErrorZ *NONNULL_PTR owner); + export function CResult_RouteHintDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMessageHandler_handle_update_fail_htlc(this_arg, encodeArray(their_node_id), msg); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_RouteHintDecodeErrorZ_get_ok(owner); + return nativeResponseValue; } - // void ChannelMessageHandler_handle_update_fail_malformed_htlc LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKUpdateFailMalformedHTLC *NONNULL_PTR msg - export function ChannelMessageHandler_handle_update_fail_malformed_htlc(this_arg: number, their_node_id: Uint8Array, msg: number): void { + // struct LDKDecodeError CResult_RouteHintDecodeErrorZ_get_err(LDKCResult_RouteHintDecodeErrorZ *NONNULL_PTR owner); + export function CResult_RouteHintDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMessageHandler_handle_update_fail_malformed_htlc(this_arg, encodeArray(their_node_id), msg); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_RouteHintDecodeErrorZ_get_err(owner); + return nativeResponseValue; } - // void ChannelMessageHandler_handle_commitment_signed LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKCommitmentSigned *NONNULL_PTR msg - export function ChannelMessageHandler_handle_commitment_signed(this_arg: number, their_node_id: Uint8Array, msg: number): void { + // struct LDKRouteHintHop CResult_RouteHintHopDecodeErrorZ_get_ok(LDKCResult_RouteHintHopDecodeErrorZ *NONNULL_PTR owner); + export function CResult_RouteHintHopDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMessageHandler_handle_commitment_signed(this_arg, encodeArray(their_node_id), msg); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_RouteHintHopDecodeErrorZ_get_ok(owner); + return nativeResponseValue; } - // void ChannelMessageHandler_handle_revoke_and_ack LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKRevokeAndACK *NONNULL_PTR msg - export function ChannelMessageHandler_handle_revoke_and_ack(this_arg: number, their_node_id: Uint8Array, msg: number): void { + // struct LDKDecodeError CResult_RouteHintHopDecodeErrorZ_get_err(LDKCResult_RouteHintHopDecodeErrorZ *NONNULL_PTR owner); + export function CResult_RouteHintHopDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMessageHandler_handle_revoke_and_ack(this_arg, encodeArray(their_node_id), msg); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_RouteHintHopDecodeErrorZ_get_err(owner); + return nativeResponseValue; } - // void ChannelMessageHandler_handle_update_fee LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKUpdateFee *NONNULL_PTR msg - export function ChannelMessageHandler_handle_update_fee(this_arg: number, their_node_id: Uint8Array, msg: number): void { + // struct LDKRoute CResult_RouteLightningErrorZ_get_ok(LDKCResult_RouteLightningErrorZ *NONNULL_PTR owner); + export function CResult_RouteLightningErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMessageHandler_handle_update_fee(this_arg, encodeArray(their_node_id), msg); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_RouteLightningErrorZ_get_ok(owner); + return nativeResponseValue; } - // void ChannelMessageHandler_handle_announcement_signatures LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKAnnouncementSignatures *NONNULL_PTR msg - export function ChannelMessageHandler_handle_announcement_signatures(this_arg: number, their_node_id: Uint8Array, msg: number): void { + // struct LDKLightningError CResult_RouteLightningErrorZ_get_err(LDKCResult_RouteLightningErrorZ *NONNULL_PTR owner); + export function CResult_RouteLightningErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMessageHandler_handle_announcement_signatures(this_arg, encodeArray(their_node_id), msg); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_RouteLightningErrorZ_get_err(owner); + return nativeResponseValue; } - // void ChannelMessageHandler_peer_disconnected LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, bool no_connection_possible - export function ChannelMessageHandler_peer_disconnected(this_arg: number, their_node_id: Uint8Array, no_connection_possible: boolean): void { + // void CResult_NoneLightningErrorZ_get_ok(LDKCResult_NoneLightningErrorZ *NONNULL_PTR owner); + export function CResult_NoneLightningErrorZ_get_ok(owner: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMessageHandler_peer_disconnected(this_arg, encodeArray(their_node_id), no_connection_possible); + const nativeResponseValue = wasm.TS_CResult_NoneLightningErrorZ_get_ok(owner); // debug statements here } - // void ChannelMessageHandler_peer_connected LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKInit *NONNULL_PTR msg - export function ChannelMessageHandler_peer_connected(this_arg: number, their_node_id: Uint8Array, msg: number): void { + // struct LDKLightningError CResult_NoneLightningErrorZ_get_err(LDKCResult_NoneLightningErrorZ *NONNULL_PTR owner); + export function CResult_NoneLightningErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMessageHandler_peer_connected(this_arg, encodeArray(their_node_id), msg); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_NoneLightningErrorZ_get_err(owner); + return nativeResponseValue; } - // void ChannelMessageHandler_handle_channel_reestablish LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKChannelReestablish *NONNULL_PTR msg - export function ChannelMessageHandler_handle_channel_reestablish(this_arg: number, their_node_id: Uint8Array, msg: number): void { + // struct LDKPublicKey C2Tuple_PublicKeyTypeZ_get_a(LDKC2Tuple_PublicKeyTypeZ *NONNULL_PTR owner); + export function C2Tuple_PublicKeyTypeZ_get_a(owner: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMessageHandler_handle_channel_reestablish(this_arg, encodeArray(their_node_id), msg); - // debug statements here + const nativeResponseValue = wasm.TS_C2Tuple_PublicKeyTypeZ_get_a(owner); + return decodeUint8Array(nativeResponseValue); } - // void ChannelMessageHandler_handle_channel_update LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKChannelUpdate *NONNULL_PTR msg - export function ChannelMessageHandler_handle_channel_update(this_arg: number, their_node_id: Uint8Array, msg: number): void { + // struct LDKType C2Tuple_PublicKeyTypeZ_get_b(LDKC2Tuple_PublicKeyTypeZ *NONNULL_PTR owner); + export function C2Tuple_PublicKeyTypeZ_get_b(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMessageHandler_handle_channel_update(this_arg, encodeArray(their_node_id), msg); - // debug statements here + const nativeResponseValue = wasm.TS_C2Tuple_PublicKeyTypeZ_get_b(owner); + return nativeResponseValue; } - // void ChannelMessageHandler_handle_error LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKErrorMessage *NONNULL_PTR msg - export function ChannelMessageHandler_handle_error(this_arg: number, their_node_id: Uint8Array, msg: number): void { + export class LDKErrorAction { + protected constructor() {} + } + export class LDKErrorAction_DisconnectPeer extends LDKErrorAction { + constructor(public msg: number) { super(); } + } + export class LDKErrorAction_IgnoreError extends LDKErrorAction { + constructor() { super(); } + } + export class LDKErrorAction_IgnoreAndLog extends LDKErrorAction { + constructor(public ignore_and_log: Level) { super(); } + } + export class LDKErrorAction_IgnoreDuplicateGossip extends LDKErrorAction { + constructor() { super(); } + } + export class LDKErrorAction_SendErrorMessage extends LDKErrorAction { + constructor(public msg: number) { super(); } + } + export function LDKErrorAction_ref_from_ptr(ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMessageHandler_handle_error(this_arg, encodeArray(their_node_id), msg); - // debug statements here + const nativeResponseValue = wasm.TS_LDKErrorAction_ref_from_ptr(ptr); + return nativeResponseValue; } - - - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START - - export interface LDKRoutingMessageHandler { - handle_node_announcement (msg: number): number; - handle_channel_announcement (msg: number): number; - handle_channel_update (msg: number): number; - get_next_channel_announcements (starting_point: number, batch_amount: number): number[]; - get_next_node_announcements (starting_point: Uint8Array, batch_amount: number): number[]; - sync_routing_table (their_node_id: Uint8Array, init: number): void; - handle_reply_channel_range (their_node_id: Uint8Array, msg: number): number; - handle_reply_short_channel_ids_end (their_node_id: Uint8Array, msg: number): number; - handle_query_channel_range (their_node_id: Uint8Array, msg: number): number; - handle_query_short_channel_ids (their_node_id: Uint8Array, msg: number): number; - } - - export function LDKRoutingMessageHandler_new(impl: LDKRoutingMessageHandler, MessageSendEventsProvider: LDKMessageSendEventsProvider): number { - throw new Error('unimplemented'); // TODO: bind to WASM - } - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END - - - // LDKCResult_boolLightningErrorZ RoutingMessageHandler_handle_node_announcement LDKRoutingMessageHandler *NONNULL_PTR this_arg, const struct LDKNodeAnnouncement *NONNULL_PTR msg - export function RoutingMessageHandler_handle_node_announcement(this_arg: number, msg: number): number { + export class LDKMessageSendEvent { + protected constructor() {} + } + export class LDKMessageSendEvent_SendAcceptChannel extends LDKMessageSendEvent { + constructor(public node_id: Uint8Array, public msg: number) { super(); } + } + export class LDKMessageSendEvent_SendOpenChannel extends LDKMessageSendEvent { + constructor(public node_id: Uint8Array, public msg: number) { super(); } + } + export class LDKMessageSendEvent_SendFundingCreated extends LDKMessageSendEvent { + constructor(public node_id: Uint8Array, public msg: number) { super(); } + } + export class LDKMessageSendEvent_SendFundingSigned extends LDKMessageSendEvent { + constructor(public node_id: Uint8Array, public msg: number) { super(); } + } + export class LDKMessageSendEvent_SendFundingLocked extends LDKMessageSendEvent { + constructor(public node_id: Uint8Array, public msg: number) { super(); } + } + export class LDKMessageSendEvent_SendAnnouncementSignatures extends LDKMessageSendEvent { + constructor(public node_id: Uint8Array, public msg: number) { super(); } + } + export class LDKMessageSendEvent_UpdateHTLCs extends LDKMessageSendEvent { + constructor(public node_id: Uint8Array, public updates: number) { super(); } + } + export class LDKMessageSendEvent_SendRevokeAndACK extends LDKMessageSendEvent { + constructor(public node_id: Uint8Array, public msg: number) { super(); } + } + export class LDKMessageSendEvent_SendClosingSigned extends LDKMessageSendEvent { + constructor(public node_id: Uint8Array, public msg: number) { super(); } + } + export class LDKMessageSendEvent_SendShutdown extends LDKMessageSendEvent { + constructor(public node_id: Uint8Array, public msg: number) { super(); } + } + export class LDKMessageSendEvent_SendChannelReestablish extends LDKMessageSendEvent { + constructor(public node_id: Uint8Array, public msg: number) { super(); } + } + export class LDKMessageSendEvent_BroadcastChannelAnnouncement extends LDKMessageSendEvent { + constructor(public msg: number, public update_msg: number) { super(); } + } + export class LDKMessageSendEvent_BroadcastNodeAnnouncement extends LDKMessageSendEvent { + constructor(public msg: number) { super(); } + } + export class LDKMessageSendEvent_BroadcastChannelUpdate extends LDKMessageSendEvent { + constructor(public msg: number) { super(); } + } + export class LDKMessageSendEvent_SendChannelUpdate extends LDKMessageSendEvent { + constructor(public node_id: Uint8Array, public msg: number) { super(); } + } + export class LDKMessageSendEvent_HandleError extends LDKMessageSendEvent { + constructor(public node_id: Uint8Array, public action: number) { super(); } + } + export class LDKMessageSendEvent_SendChannelRangeQuery extends LDKMessageSendEvent { + constructor(public node_id: Uint8Array, public msg: number) { super(); } + } + export class LDKMessageSendEvent_SendShortIdsQuery extends LDKMessageSendEvent { + constructor(public node_id: Uint8Array, public msg: number) { super(); } + } + export class LDKMessageSendEvent_SendReplyChannelRange extends LDKMessageSendEvent { + constructor(public node_id: Uint8Array, public msg: number) { super(); } + } + export function LDKMessageSendEvent_ref_from_ptr(ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RoutingMessageHandler_handle_node_announcement(this_arg, msg); + const nativeResponseValue = wasm.TS_LDKMessageSendEvent_ref_from_ptr(ptr); return nativeResponseValue; } - // LDKCResult_boolLightningErrorZ RoutingMessageHandler_handle_channel_announcement LDKRoutingMessageHandler *NONNULL_PTR this_arg, const struct LDKChannelAnnouncement *NONNULL_PTR msg - export function RoutingMessageHandler_handle_channel_announcement(this_arg: number, msg: number): number { + // bool CResult_boolLightningErrorZ_get_ok(LDKCResult_boolLightningErrorZ *NONNULL_PTR owner); + export function CResult_boolLightningErrorZ_get_ok(owner: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RoutingMessageHandler_handle_channel_announcement(this_arg, msg); + const nativeResponseValue = wasm.TS_CResult_boolLightningErrorZ_get_ok(owner); return nativeResponseValue; } - // LDKCResult_boolLightningErrorZ RoutingMessageHandler_handle_channel_update LDKRoutingMessageHandler *NONNULL_PTR this_arg, const struct LDKChannelUpdate *NONNULL_PTR msg - export function RoutingMessageHandler_handle_channel_update(this_arg: number, msg: number): number { + // struct LDKLightningError CResult_boolLightningErrorZ_get_err(LDKCResult_boolLightningErrorZ *NONNULL_PTR owner); + export function CResult_boolLightningErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RoutingMessageHandler_handle_channel_update(this_arg, msg); + const nativeResponseValue = wasm.TS_CResult_boolLightningErrorZ_get_err(owner); return nativeResponseValue; } - // LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ RoutingMessageHandler_get_next_channel_announcements LDKRoutingMessageHandler *NONNULL_PTR this_arg, uint64_t starting_point, uint8_t batch_amount - export function RoutingMessageHandler_get_next_channel_announcements(this_arg: number, starting_point: number, batch_amount: number): number[] { + // struct LDKChannelAnnouncement C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_a(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ *NONNULL_PTR owner); + export function C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_a(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RoutingMessageHandler_get_next_channel_announcements(this_arg, starting_point, batch_amount); + const nativeResponseValue = wasm.TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_a(owner); return nativeResponseValue; } - // LDKCVec_NodeAnnouncementZ RoutingMessageHandler_get_next_node_announcements LDKRoutingMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey starting_point, uint8_t batch_amount - export function RoutingMessageHandler_get_next_node_announcements(this_arg: number, starting_point: Uint8Array, batch_amount: number): number[] { + // struct LDKChannelUpdate C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_b(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ *NONNULL_PTR owner); + export function C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_b(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RoutingMessageHandler_get_next_node_announcements(this_arg, encodeArray(starting_point), batch_amount); + const nativeResponseValue = wasm.TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_b(owner); return nativeResponseValue; } - // void RoutingMessageHandler_sync_routing_table LDKRoutingMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKInit *NONNULL_PTR init - export function RoutingMessageHandler_sync_routing_table(this_arg: number, their_node_id: Uint8Array, init: number): void { + // struct LDKChannelUpdate C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_c(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ *NONNULL_PTR owner); + export function C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_c(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RoutingMessageHandler_sync_routing_table(this_arg, encodeArray(their_node_id), init); - // debug statements here + const nativeResponseValue = wasm.TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_c(owner); + return nativeResponseValue; } - // LDKCResult_NoneLightningErrorZ RoutingMessageHandler_handle_reply_channel_range LDKRoutingMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, struct LDKReplyChannelRange msg - export function RoutingMessageHandler_handle_reply_channel_range(this_arg: number, their_node_id: Uint8Array, msg: number): number { + // struct LDKCVec_u8Z CResult_CVec_u8ZPeerHandleErrorZ_get_ok(LDKCResult_CVec_u8ZPeerHandleErrorZ *NONNULL_PTR owner); + export function CResult_CVec_u8ZPeerHandleErrorZ_get_ok(owner: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RoutingMessageHandler_handle_reply_channel_range(this_arg, encodeArray(their_node_id), msg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_CVec_u8ZPeerHandleErrorZ_get_ok(owner); + return decodeUint8Array(nativeResponseValue); } - // LDKCResult_NoneLightningErrorZ RoutingMessageHandler_handle_reply_short_channel_ids_end LDKRoutingMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, struct LDKReplyShortChannelIdsEnd msg - export function RoutingMessageHandler_handle_reply_short_channel_ids_end(this_arg: number, their_node_id: Uint8Array, msg: number): number { + // struct LDKPeerHandleError CResult_CVec_u8ZPeerHandleErrorZ_get_err(LDKCResult_CVec_u8ZPeerHandleErrorZ *NONNULL_PTR owner); + export function CResult_CVec_u8ZPeerHandleErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RoutingMessageHandler_handle_reply_short_channel_ids_end(this_arg, encodeArray(their_node_id), msg); + const nativeResponseValue = wasm.TS_CResult_CVec_u8ZPeerHandleErrorZ_get_err(owner); return nativeResponseValue; } - // LDKCResult_NoneLightningErrorZ RoutingMessageHandler_handle_query_channel_range LDKRoutingMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, struct LDKQueryChannelRange msg - export function RoutingMessageHandler_handle_query_channel_range(this_arg: number, their_node_id: Uint8Array, msg: number): number { + // void CResult_NonePeerHandleErrorZ_get_ok(LDKCResult_NonePeerHandleErrorZ *NONNULL_PTR owner); + export function CResult_NonePeerHandleErrorZ_get_ok(owner: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RoutingMessageHandler_handle_query_channel_range(this_arg, encodeArray(their_node_id), msg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_NonePeerHandleErrorZ_get_ok(owner); + // debug statements here } - // LDKCResult_NoneLightningErrorZ RoutingMessageHandler_handle_query_short_channel_ids LDKRoutingMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, struct LDKQueryShortChannelIds msg - export function RoutingMessageHandler_handle_query_short_channel_ids(this_arg: number, their_node_id: Uint8Array, msg: number): number { + // struct LDKPeerHandleError CResult_NonePeerHandleErrorZ_get_err(LDKCResult_NonePeerHandleErrorZ *NONNULL_PTR owner); + export function CResult_NonePeerHandleErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RoutingMessageHandler_handle_query_short_channel_ids(this_arg, encodeArray(their_node_id), msg); + const nativeResponseValue = wasm.TS_CResult_NonePeerHandleErrorZ_get_err(owner); return nativeResponseValue; } - - - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START - - export interface LDKCustomMessageReader { - read (message_type: number, buffer: Uint8Array): number; - } - - export function LDKCustomMessageReader_new(impl: LDKCustomMessageReader): number { - throw new Error('unimplemented'); // TODO: bind to WASM - } - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END - - - // LDKCResult_COption_TypeZDecodeErrorZ CustomMessageReader_read LDKCustomMessageReader *NONNULL_PTR this_arg, uint16_t message_type, struct LDKu8slice buffer - export function CustomMessageReader_read(this_arg: number, message_type: number, buffer: Uint8Array): number { + // bool CResult_boolPeerHandleErrorZ_get_ok(LDKCResult_boolPeerHandleErrorZ *NONNULL_PTR owner); + export function CResult_boolPeerHandleErrorZ_get_ok(owner: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CustomMessageReader_read(this_arg, message_type, encodeArray(buffer)); + const nativeResponseValue = wasm.TS_CResult_boolPeerHandleErrorZ_get_ok(owner); return nativeResponseValue; } - - - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START - - export interface LDKCustomMessageHandler { - handle_custom_message (msg: number, sender_node_id: Uint8Array): number; - get_and_clear_pending_msg (): number[]; - } - - export function LDKCustomMessageHandler_new(impl: LDKCustomMessageHandler, CustomMessageReader: LDKCustomMessageReader): number { - throw new Error('unimplemented'); // TODO: bind to WASM - } - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END - - - // LDKCResult_NoneLightningErrorZ CustomMessageHandler_handle_custom_message LDKCustomMessageHandler *NONNULL_PTR this_arg, struct LDKType msg, struct LDKPublicKey sender_node_id - export function CustomMessageHandler_handle_custom_message(this_arg: number, msg: number, sender_node_id: Uint8Array): number { + // struct LDKPeerHandleError CResult_boolPeerHandleErrorZ_get_err(LDKCResult_boolPeerHandleErrorZ *NONNULL_PTR owner); + export function CResult_boolPeerHandleErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CustomMessageHandler_handle_custom_message(this_arg, msg, encodeArray(sender_node_id)); + const nativeResponseValue = wasm.TS_CResult_boolPeerHandleErrorZ_get_err(owner); return nativeResponseValue; } - // LDKCVec_C2Tuple_PublicKeyTypeZZ CustomMessageHandler_get_and_clear_pending_msg LDKCustomMessageHandler *NONNULL_PTR this_arg - export function CustomMessageHandler_get_and_clear_pending_msg(this_arg: number): number[] { + // struct LDKTxOut CResult_TxOutAccessErrorZ_get_ok(LDKCResult_TxOutAccessErrorZ *NONNULL_PTR owner); + export function CResult_TxOutAccessErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CustomMessageHandler_get_and_clear_pending_msg(this_arg); + const nativeResponseValue = wasm.TS_CResult_TxOutAccessErrorZ_get_ok(owner); return nativeResponseValue; } - - - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START - - export interface LDKSocketDescriptor { - send_data (data: Uint8Array, resume_read: boolean): number; - disconnect_socket (): void; - eq (other_arg: number): boolean; - hash (): number; - } - - export function LDKSocketDescriptor_new(impl: LDKSocketDescriptor): number { - throw new Error('unimplemented'); // TODO: bind to WASM - } - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END - - - // uintptr_t SocketDescriptor_send_data LDKSocketDescriptor *NONNULL_PTR this_arg, struct LDKu8slice data, bool resume_read - export function SocketDescriptor_send_data(this_arg: number, data: Uint8Array, resume_read: boolean): number { + // enum LDKAccessError CResult_TxOutAccessErrorZ_get_err(LDKCResult_TxOutAccessErrorZ *NONNULL_PTR owner); + export function CResult_TxOutAccessErrorZ_get_err(owner: number): AccessError { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SocketDescriptor_send_data(this_arg, encodeArray(data), resume_read); + const nativeResponseValue = wasm.TS_CResult_TxOutAccessErrorZ_get_err(owner); return nativeResponseValue; } - // void SocketDescriptor_disconnect_socket LDKSocketDescriptor *NONNULL_PTR this_arg - export function SocketDescriptor_disconnect_socket(this_arg: number): void { + // void CResult_NoneChannelMonitorUpdateErrZ_get_ok(LDKCResult_NoneChannelMonitorUpdateErrZ *NONNULL_PTR owner); + export function CResult_NoneChannelMonitorUpdateErrZ_get_ok(owner: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SocketDescriptor_disconnect_socket(this_arg); + const nativeResponseValue = wasm.TS_CResult_NoneChannelMonitorUpdateErrZ_get_ok(owner); // debug statements here } - // uint64_t SocketDescriptor_hash LDKSocketDescriptor *NONNULL_PTR this_arg - export function SocketDescriptor_hash(this_arg: number): number { + // enum LDKChannelMonitorUpdateErr CResult_NoneChannelMonitorUpdateErrZ_get_err(LDKCResult_NoneChannelMonitorUpdateErrZ *NONNULL_PTR owner); + export function CResult_NoneChannelMonitorUpdateErrZ_get_err(owner: number): ChannelMonitorUpdateErr { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SocketDescriptor_hash(this_arg); + const nativeResponseValue = wasm.TS_CResult_NoneChannelMonitorUpdateErrZ_get_err(owner); return nativeResponseValue; } - - - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START - - export interface LDKScore { - channel_penalty_msat (short_channel_id: number, send_amt_msat: number, channel_capacity_msat: number, source: number, target: number): number; - payment_path_failed (path: number[], short_channel_id: number): void; - payment_path_successful (path: number[]): void; - write (): Uint8Array; - } - - export function LDKScore_new(impl: LDKScore): number { - throw new Error('unimplemented'); // TODO: bind to WASM - } - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END - - - // uint64_t Score_channel_penalty_msat LDKScore *NONNULL_PTR this_arg, uint64_t short_channel_id, uint64_t send_amt_msat, struct LDKCOption_u64Z channel_capacity_msat, const struct LDKNodeId *NONNULL_PTR source, const struct LDKNodeId *NONNULL_PTR target - export function Score_channel_penalty_msat(this_arg: number, short_channel_id: number, send_amt_msat: number, channel_capacity_msat: number, source: number, target: number): number { + export class LDKCOption_C2Tuple_usizeTransactionZZ { + protected constructor() {} + } + export class LDKCOption_C2Tuple_usizeTransactionZZ_Some extends LDKCOption_C2Tuple_usizeTransactionZZ { + constructor(public some: number) { super(); } + } + export class LDKCOption_C2Tuple_usizeTransactionZZ_None extends LDKCOption_C2Tuple_usizeTransactionZZ { + constructor() { super(); } + } + export function LDKCOption_C2Tuple_usizeTransactionZZ_ref_from_ptr(ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Score_channel_penalty_msat(this_arg, short_channel_id, send_amt_msat, channel_capacity_msat, source, target); + const nativeResponseValue = wasm.TS_LDKCOption_C2Tuple_usizeTransactionZZ_ref_from_ptr(ptr); return nativeResponseValue; } - // void Score_payment_path_failed LDKScore *NONNULL_PTR this_arg, struct LDKCVec_RouteHopZ path, uint64_t short_channel_id - export function Score_payment_path_failed(this_arg: number, path: number[], short_channel_id: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.Score_payment_path_failed(this_arg, path, short_channel_id); - // debug statements here + export class LDKCOption_ClosureReasonZ { + protected constructor() {} } - // void Score_payment_path_successful LDKScore *NONNULL_PTR this_arg, struct LDKCVec_RouteHopZ path - export function Score_payment_path_successful(this_arg: number, path: number[]): void { + export class LDKCOption_ClosureReasonZ_Some extends LDKCOption_ClosureReasonZ { + constructor(public some: number) { super(); } + } + export class LDKCOption_ClosureReasonZ_None extends LDKCOption_ClosureReasonZ { + constructor() { super(); } + } + export function LDKCOption_ClosureReasonZ_ref_from_ptr(ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Score_payment_path_successful(this_arg, path); - // debug statements here + const nativeResponseValue = wasm.TS_LDKCOption_ClosureReasonZ_ref_from_ptr(ptr); + return nativeResponseValue; } - // LDKCVec_u8Z Score_write LDKScore *NONNULL_PTR this_arg - export function Score_write(this_arg: number): Uint8Array { + // struct LDKCOption_ClosureReasonZ CResult_COption_ClosureReasonZDecodeErrorZ_get_ok(LDKCResult_COption_ClosureReasonZDecodeErrorZ *NONNULL_PTR owner); + export function CResult_COption_ClosureReasonZDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Score_write(this_arg); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CResult_COption_ClosureReasonZDecodeErrorZ_get_ok(owner); + return nativeResponseValue; } - - - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START - - export interface LDKLockableScore { - lock (): number; - } - - export function LDKLockableScore_new(impl: LDKLockableScore): number { - throw new Error('unimplemented'); // TODO: bind to WASM - } - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END - - - // LDKScore LockableScore_lock LDKLockableScore *NONNULL_PTR this_arg - export function LockableScore_lock(this_arg: number): number { + // struct LDKDecodeError CResult_COption_ClosureReasonZDecodeErrorZ_get_err(LDKCResult_COption_ClosureReasonZDecodeErrorZ *NONNULL_PTR owner); + export function CResult_COption_ClosureReasonZDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.LockableScore_lock(this_arg); + const nativeResponseValue = wasm.TS_CResult_COption_ClosureReasonZDecodeErrorZ_get_err(owner); return nativeResponseValue; } - - - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START - - export interface LDKChannelManagerPersister { - persist_manager (channel_manager: number): number; - } - - export function LDKChannelManagerPersister_new(impl: LDKChannelManagerPersister): number { - throw new Error('unimplemented'); // TODO: bind to WASM - } - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END - - - // LDKCResult_NoneErrorZ ChannelManagerPersister_persist_manager LDKChannelManagerPersister *NONNULL_PTR this_arg, const struct LDKChannelManager *NONNULL_PTR channel_manager - export function ChannelManagerPersister_persist_manager(this_arg: number, channel_manager: number): number { + export class LDKCOption_EventZ { + protected constructor() {} + } + export class LDKCOption_EventZ_Some extends LDKCOption_EventZ { + constructor(public some: number) { super(); } + } + export class LDKCOption_EventZ_None extends LDKCOption_EventZ { + constructor() { super(); } + } + export function LDKCOption_EventZ_ref_from_ptr(ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManagerPersister_persist_manager(this_arg, channel_manager); + const nativeResponseValue = wasm.TS_LDKCOption_EventZ_ref_from_ptr(ptr); return nativeResponseValue; } - public static class LDKFallback { - private LDKFallback() {} - export class SegWitProgram extends LDKFallback { - public number version; - public Uint8Array program; - SegWitProgram(number version, Uint8Array program) { this.version = version; this.program = program; } - } - export class PubKeyHash extends LDKFallback { - public Uint8Array pub_key_hash; - PubKeyHash(Uint8Array pub_key_hash) { this.pub_key_hash = pub_key_hash; } - } - export class ScriptHash extends LDKFallback { - public Uint8Array script_hash; - ScriptHash(Uint8Array script_hash) { this.script_hash = script_hash; } - } - static native void init(); - } - static { LDKFallback.init(); } - public static native LDKFallback LDKFallback_ref_from_ptr(long ptr); - - - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START - - export interface LDKPayer { - node_id (): Uint8Array; - first_hops (): number[]; - send_payment (route: number, payment_hash: Uint8Array, payment_secret: Uint8Array): number; - send_spontaneous_payment (route: number, payment_preimage: Uint8Array): number; - retry_payment (route: number, payment_id: Uint8Array): number; - abandon_payment (payment_id: Uint8Array): void; - } - - export function LDKPayer_new(impl: LDKPayer): number { - throw new Error('unimplemented'); // TODO: bind to WASM - } - -// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END - - - // LDKPublicKey Payer_node_id LDKPayer *NONNULL_PTR this_arg - export function Payer_node_id(this_arg: number): Uint8Array { + // struct LDKCOption_EventZ CResult_COption_EventZDecodeErrorZ_get_ok(LDKCResult_COption_EventZDecodeErrorZ *NONNULL_PTR owner); + export function CResult_COption_EventZDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Payer_node_id(this_arg); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CResult_COption_EventZDecodeErrorZ_get_ok(owner); + return nativeResponseValue; } - // LDKCVec_ChannelDetailsZ Payer_first_hops LDKPayer *NONNULL_PTR this_arg - export function Payer_first_hops(this_arg: number): number[] { + // struct LDKDecodeError CResult_COption_EventZDecodeErrorZ_get_err(LDKCResult_COption_EventZDecodeErrorZ *NONNULL_PTR owner); + export function CResult_COption_EventZDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Payer_first_hops(this_arg); + const nativeResponseValue = wasm.TS_CResult_COption_EventZDecodeErrorZ_get_err(owner); 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 - export function Payer_send_payment(this_arg: number, route: number, payment_hash: Uint8Array, payment_secret: Uint8Array): number { + // struct LDKNodeId CResult_NodeIdDecodeErrorZ_get_ok(LDKCResult_NodeIdDecodeErrorZ *NONNULL_PTR owner); + export function CResult_NodeIdDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Payer_send_payment(this_arg, route, encodeArray(payment_hash), encodeArray(payment_secret)); + const nativeResponseValue = wasm.TS_CResult_NodeIdDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // LDKCResult_PaymentIdPaymentSendFailureZ Payer_send_spontaneous_payment LDKPayer *NONNULL_PTR this_arg, const struct LDKRoute *NONNULL_PTR route, struct LDKThirtyTwoBytes payment_preimage - export function Payer_send_spontaneous_payment(this_arg: number, route: number, payment_preimage: Uint8Array): number { + // struct LDKDecodeError CResult_NodeIdDecodeErrorZ_get_err(LDKCResult_NodeIdDecodeErrorZ *NONNULL_PTR owner); + export function CResult_NodeIdDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Payer_send_spontaneous_payment(this_arg, route, encodeArray(payment_preimage)); + const nativeResponseValue = wasm.TS_CResult_NodeIdDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // LDKCResult_NonePaymentSendFailureZ Payer_retry_payment LDKPayer *NONNULL_PTR this_arg, const struct LDKRoute *NONNULL_PTR route, struct LDKThirtyTwoBytes payment_id - export function Payer_retry_payment(this_arg: number, route: number, payment_id: Uint8Array): number { + // struct LDKCOption_NetworkUpdateZ CResult_COption_NetworkUpdateZDecodeErrorZ_get_ok(LDKCResult_COption_NetworkUpdateZDecodeErrorZ *NONNULL_PTR owner); + export function CResult_COption_NetworkUpdateZDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Payer_retry_payment(this_arg, route, encodeArray(payment_id)); + const nativeResponseValue = wasm.TS_CResult_COption_NetworkUpdateZDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // void Payer_abandon_payment LDKPayer *NONNULL_PTR this_arg, struct LDKThirtyTwoBytes payment_id - export function Payer_abandon_payment(this_arg: number, payment_id: Uint8Array): void { + // struct LDKDecodeError CResult_COption_NetworkUpdateZDecodeErrorZ_get_err(LDKCResult_COption_NetworkUpdateZDecodeErrorZ *NONNULL_PTR owner); + export function CResult_COption_NetworkUpdateZDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Payer_abandon_payment(this_arg, encodeArray(payment_id)); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_COption_NetworkUpdateZDecodeErrorZ_get_err(owner); + return nativeResponseValue; } // OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START - export interface LDKRouter { - find_route (payer: Uint8Array, params: number, payment_hash: Uint8Array, first_hops: number[], scorer: number): number; + export interface LDKAccess { + get_utxo (genesis_hash: Uint8Array, short_channel_id: number): number; } - export function LDKRouter_new(impl: LDKRouter): number { + export function LDKAccess_new(impl: LDKAccess): number { throw new Error('unimplemented'); // TODO: bind to WASM } // OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END - // LDKCResult_RouteLightningErrorZ Router_find_route LDKRouter *NONNULL_PTR this_arg, struct LDKPublicKey payer, const struct LDKRouteParameters *NONNULL_PTR params, const uint8_t (*payment_hash)[32], struct LDKCVec_ChannelDetailsZ *first_hops, const struct LDKScore *NONNULL_PTR scorer - export function Router_find_route(this_arg: number, payer: Uint8Array, params: number, payment_hash: Uint8Array, first_hops: number[], scorer: number): number { + // LDKCResult_TxOutAccessErrorZ Access_get_utxo LDKAccess *NONNULL_PTR this_arg, const uint8_t (*genesis_hash)[32], uint64_t short_channel_id + export function Access_get_utxo(this_arg: number, genesis_hash: Uint8Array, short_channel_id: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Router_find_route(this_arg, encodeArray(payer), params, encodeArray(payment_hash), first_hops, scorer); + const nativeResponseValue = wasm.TS_Access_get_utxo(this_arg, encodeUint8Array(genesis_hash), short_channel_id); return nativeResponseValue; } - // struct LDKStr _ldk_get_compiled_version(void); - export function _ldk_get_compiled_version(): String { + export class LDKCOption_AccessZ { + protected constructor() {} + } + export class LDKCOption_AccessZ_Some extends LDKCOption_AccessZ { + constructor(public some: number) { super(); } + } + export class LDKCOption_AccessZ_None extends LDKCOption_AccessZ { + constructor() { super(); } + } + export function LDKCOption_AccessZ_ref_from_ptr(ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm._ldk_get_compiled_version(); + const nativeResponseValue = wasm.TS_LDKCOption_AccessZ_ref_from_ptr(ptr); return nativeResponseValue; } - // struct LDKStr _ldk_c_bindings_get_compiled_version(void); - export function _ldk_c_bindings_get_compiled_version(): String { + // struct LDKDirectionalChannelInfo CResult_DirectionalChannelInfoDecodeErrorZ_get_ok(LDKCResult_DirectionalChannelInfoDecodeErrorZ *NONNULL_PTR owner); + export function CResult_DirectionalChannelInfoDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm._ldk_c_bindings_get_compiled_version(); + const nativeResponseValue = wasm.TS_CResult_DirectionalChannelInfoDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // void Transaction_free(struct LDKTransaction _res); - export function Transaction_free(_res: Uint8Array): void { + // struct LDKDecodeError CResult_DirectionalChannelInfoDecodeErrorZ_get_err(LDKCResult_DirectionalChannelInfoDecodeErrorZ *NONNULL_PTR owner); + export function CResult_DirectionalChannelInfoDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Transaction_free(encodeArray(_res)); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_DirectionalChannelInfoDecodeErrorZ_get_err(owner); + return nativeResponseValue; } - // struct LDKTxOut TxOut_new(struct LDKCVec_u8Z script_pubkey, uint64_t value); - export function TxOut_new(script_pubkey: Uint8Array, value: number): number { + // struct LDKChannelInfo CResult_ChannelInfoDecodeErrorZ_get_ok(LDKCResult_ChannelInfoDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ChannelInfoDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TxOut_new(encodeArray(script_pubkey), value); + const nativeResponseValue = wasm.TS_CResult_ChannelInfoDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // void TxOut_free(struct LDKTxOut _res); - export function TxOut_free(_res: number): void { + // struct LDKDecodeError CResult_ChannelInfoDecodeErrorZ_get_err(LDKCResult_ChannelInfoDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ChannelInfoDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TxOut_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_ChannelInfoDecodeErrorZ_get_err(owner); + return nativeResponseValue; } - // uint64_t TxOut_clone_ptr(LDKTxOut *NONNULL_PTR arg); - export function TxOut_clone_ptr(arg: number): number { + // struct LDKRoutingFees CResult_RoutingFeesDecodeErrorZ_get_ok(LDKCResult_RoutingFeesDecodeErrorZ *NONNULL_PTR owner); + export function CResult_RoutingFeesDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TxOut_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_RoutingFeesDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // struct LDKTxOut TxOut_clone(const struct LDKTxOut *NONNULL_PTR orig); - export function TxOut_clone(orig: number): number { + // struct LDKDecodeError CResult_RoutingFeesDecodeErrorZ_get_err(LDKCResult_RoutingFeesDecodeErrorZ *NONNULL_PTR owner); + export function CResult_RoutingFeesDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TxOut_clone(orig); + const nativeResponseValue = wasm.TS_CResult_RoutingFeesDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // void Str_free(struct LDKStr _res); - export function Str_free(_res: String): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.Str_free(_res); - // debug statements here + export class LDKNetAddress { + protected constructor() {} } - // struct LDKCResult_SecretKeyErrorZ CResult_SecretKeyErrorZ_ok(struct LDKSecretKey o); - export function CResult_SecretKeyErrorZ_ok(o: Uint8Array): number { + export class LDKNetAddress_IPv4 extends LDKNetAddress { + constructor(public addr: Uint8Array, public port: number) { super(); } + } + export class LDKNetAddress_IPv6 extends LDKNetAddress { + constructor(public addr: Uint8Array, public port: number) { super(); } + } + export class LDKNetAddress_OnionV2 extends LDKNetAddress { + constructor(public onion_v2: Uint8Array) { super(); } + } + export class LDKNetAddress_OnionV3 extends LDKNetAddress { + constructor(public ed25519_pubkey: Uint8Array, public checksum: number, public version: number, public port: number) { super(); } + } + export function LDKNetAddress_ref_from_ptr(ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SecretKeyErrorZ_ok(encodeArray(o)); + const nativeResponseValue = wasm.TS_LDKNetAddress_ref_from_ptr(ptr); return nativeResponseValue; } - // struct LDKCResult_SecretKeyErrorZ CResult_SecretKeyErrorZ_err(enum LDKSecp256k1Error e); - export function CResult_SecretKeyErrorZ_err(e: Secp256k1Error): number { + // struct LDKNodeAnnouncementInfo CResult_NodeAnnouncementInfoDecodeErrorZ_get_ok(LDKCResult_NodeAnnouncementInfoDecodeErrorZ *NONNULL_PTR owner); + export function CResult_NodeAnnouncementInfoDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SecretKeyErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_NodeAnnouncementInfoDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // bool CResult_SecretKeyErrorZ_is_ok(const struct LDKCResult_SecretKeyErrorZ *NONNULL_PTR o); - export function CResult_SecretKeyErrorZ_is_ok(o: number): boolean { + // struct LDKDecodeError CResult_NodeAnnouncementInfoDecodeErrorZ_get_err(LDKCResult_NodeAnnouncementInfoDecodeErrorZ *NONNULL_PTR owner); + export function CResult_NodeAnnouncementInfoDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SecretKeyErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_NodeAnnouncementInfoDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // void CResult_SecretKeyErrorZ_free(struct LDKCResult_SecretKeyErrorZ _res); - export function CResult_SecretKeyErrorZ_free(_res: number): void { + // struct LDKNodeInfo CResult_NodeInfoDecodeErrorZ_get_ok(LDKCResult_NodeInfoDecodeErrorZ *NONNULL_PTR owner); + export function CResult_NodeInfoDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SecretKeyErrorZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_NodeInfoDecodeErrorZ_get_ok(owner); + return nativeResponseValue; } - // struct LDKCResult_PublicKeyErrorZ CResult_PublicKeyErrorZ_ok(struct LDKPublicKey o); - export function CResult_PublicKeyErrorZ_ok(o: Uint8Array): number { + // struct LDKDecodeError CResult_NodeInfoDecodeErrorZ_get_err(LDKCResult_NodeInfoDecodeErrorZ *NONNULL_PTR owner); + export function CResult_NodeInfoDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PublicKeyErrorZ_ok(encodeArray(o)); + const nativeResponseValue = wasm.TS_CResult_NodeInfoDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // struct LDKCResult_PublicKeyErrorZ CResult_PublicKeyErrorZ_err(enum LDKSecp256k1Error e); - export function CResult_PublicKeyErrorZ_err(e: Secp256k1Error): number { + // struct LDKNetworkGraph CResult_NetworkGraphDecodeErrorZ_get_ok(LDKCResult_NetworkGraphDecodeErrorZ *NONNULL_PTR owner); + export function CResult_NetworkGraphDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PublicKeyErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_NetworkGraphDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // bool CResult_PublicKeyErrorZ_is_ok(const struct LDKCResult_PublicKeyErrorZ *NONNULL_PTR o); - export function CResult_PublicKeyErrorZ_is_ok(o: number): boolean { + // struct LDKDecodeError CResult_NetworkGraphDecodeErrorZ_get_err(LDKCResult_NetworkGraphDecodeErrorZ *NONNULL_PTR owner); + export function CResult_NetworkGraphDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PublicKeyErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_NetworkGraphDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // void CResult_PublicKeyErrorZ_free(struct LDKCResult_PublicKeyErrorZ _res); - export function CResult_PublicKeyErrorZ_free(_res: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_PublicKeyErrorZ_free(_res); - // debug statements here + export class LDKCOption_CVec_NetAddressZZ { + protected constructor() {} } - // uint64_t CResult_PublicKeyErrorZ_clone_ptr(LDKCResult_PublicKeyErrorZ *NONNULL_PTR arg); - export function CResult_PublicKeyErrorZ_clone_ptr(arg: number): number { + export class LDKCOption_CVec_NetAddressZZ_Some extends LDKCOption_CVec_NetAddressZZ { + constructor(public some: number[]) { super(); } + } + export class LDKCOption_CVec_NetAddressZZ_None extends LDKCOption_CVec_NetAddressZZ { + constructor() { super(); } + } + export function LDKCOption_CVec_NetAddressZZ_ref_from_ptr(ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PublicKeyErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_LDKCOption_CVec_NetAddressZZ_ref_from_ptr(ptr); return nativeResponseValue; } - // struct LDKCResult_PublicKeyErrorZ CResult_PublicKeyErrorZ_clone(const struct LDKCResult_PublicKeyErrorZ *NONNULL_PTR orig); - export function CResult_PublicKeyErrorZ_clone(orig: number): number { + // struct LDKScoringParameters *CResult_ScoringParametersDecodeErrorZ_get_ok(LDKCResult_ScoringParametersDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ScoringParametersDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PublicKeyErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_ScoringParametersDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // struct LDKCResult_TxCreationKeysDecodeErrorZ CResult_TxCreationKeysDecodeErrorZ_ok(struct LDKTxCreationKeys o); - export function CResult_TxCreationKeysDecodeErrorZ_ok(o: number): number { + // struct LDKDecodeError CResult_ScoringParametersDecodeErrorZ_get_err(LDKCResult_ScoringParametersDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ScoringParametersDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TxCreationKeysDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_ScoringParametersDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // struct LDKCResult_TxCreationKeysDecodeErrorZ CResult_TxCreationKeysDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_TxCreationKeysDecodeErrorZ_err(e: number): number { + // struct LDKInitFeatures CResult_InitFeaturesDecodeErrorZ_get_ok(LDKCResult_InitFeaturesDecodeErrorZ *NONNULL_PTR owner); + export function CResult_InitFeaturesDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TxCreationKeysDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_InitFeaturesDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // bool CResult_TxCreationKeysDecodeErrorZ_is_ok(const struct LDKCResult_TxCreationKeysDecodeErrorZ *NONNULL_PTR o); - export function CResult_TxCreationKeysDecodeErrorZ_is_ok(o: number): boolean { + // struct LDKDecodeError CResult_InitFeaturesDecodeErrorZ_get_err(LDKCResult_InitFeaturesDecodeErrorZ *NONNULL_PTR owner); + export function CResult_InitFeaturesDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TxCreationKeysDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_InitFeaturesDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // void CResult_TxCreationKeysDecodeErrorZ_free(struct LDKCResult_TxCreationKeysDecodeErrorZ _res); - export function CResult_TxCreationKeysDecodeErrorZ_free(_res: number): void { + // struct LDKChannelFeatures CResult_ChannelFeaturesDecodeErrorZ_get_ok(LDKCResult_ChannelFeaturesDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ChannelFeaturesDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TxCreationKeysDecodeErrorZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_ChannelFeaturesDecodeErrorZ_get_ok(owner); + return nativeResponseValue; } - // uint64_t CResult_TxCreationKeysDecodeErrorZ_clone_ptr(LDKCResult_TxCreationKeysDecodeErrorZ *NONNULL_PTR arg); - export function CResult_TxCreationKeysDecodeErrorZ_clone_ptr(arg: number): number { + // struct LDKDecodeError CResult_ChannelFeaturesDecodeErrorZ_get_err(LDKCResult_ChannelFeaturesDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ChannelFeaturesDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TxCreationKeysDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_ChannelFeaturesDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // struct LDKCResult_TxCreationKeysDecodeErrorZ CResult_TxCreationKeysDecodeErrorZ_clone(const struct LDKCResult_TxCreationKeysDecodeErrorZ *NONNULL_PTR orig); - export function CResult_TxCreationKeysDecodeErrorZ_clone(orig: number): number { + // struct LDKNodeFeatures CResult_NodeFeaturesDecodeErrorZ_get_ok(LDKCResult_NodeFeaturesDecodeErrorZ *NONNULL_PTR owner); + export function CResult_NodeFeaturesDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TxCreationKeysDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_NodeFeaturesDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // struct LDKCResult_ChannelPublicKeysDecodeErrorZ CResult_ChannelPublicKeysDecodeErrorZ_ok(struct LDKChannelPublicKeys o); - export function CResult_ChannelPublicKeysDecodeErrorZ_ok(o: number): number { + // struct LDKDecodeError CResult_NodeFeaturesDecodeErrorZ_get_err(LDKCResult_NodeFeaturesDecodeErrorZ *NONNULL_PTR owner); + export function CResult_NodeFeaturesDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelPublicKeysDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_NodeFeaturesDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // struct LDKCResult_ChannelPublicKeysDecodeErrorZ CResult_ChannelPublicKeysDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_ChannelPublicKeysDecodeErrorZ_err(e: number): number { + // struct LDKInvoiceFeatures CResult_InvoiceFeaturesDecodeErrorZ_get_ok(LDKCResult_InvoiceFeaturesDecodeErrorZ *NONNULL_PTR owner); + export function CResult_InvoiceFeaturesDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelPublicKeysDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_InvoiceFeaturesDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // bool CResult_ChannelPublicKeysDecodeErrorZ_is_ok(const struct LDKCResult_ChannelPublicKeysDecodeErrorZ *NONNULL_PTR o); - export function CResult_ChannelPublicKeysDecodeErrorZ_is_ok(o: number): boolean { + // struct LDKDecodeError CResult_InvoiceFeaturesDecodeErrorZ_get_err(LDKCResult_InvoiceFeaturesDecodeErrorZ *NONNULL_PTR owner); + export function CResult_InvoiceFeaturesDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelPublicKeysDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_InvoiceFeaturesDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // void CResult_ChannelPublicKeysDecodeErrorZ_free(struct LDKCResult_ChannelPublicKeysDecodeErrorZ _res); - export function CResult_ChannelPublicKeysDecodeErrorZ_free(_res: number): void { + // struct LDKChannelTypeFeatures CResult_ChannelTypeFeaturesDecodeErrorZ_get_ok(LDKCResult_ChannelTypeFeaturesDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ChannelTypeFeaturesDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelPublicKeysDecodeErrorZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_ChannelTypeFeaturesDecodeErrorZ_get_ok(owner); + return nativeResponseValue; } - // uint64_t CResult_ChannelPublicKeysDecodeErrorZ_clone_ptr(LDKCResult_ChannelPublicKeysDecodeErrorZ *NONNULL_PTR arg); - export function CResult_ChannelPublicKeysDecodeErrorZ_clone_ptr(arg: number): number { + // struct LDKDecodeError CResult_ChannelTypeFeaturesDecodeErrorZ_get_err(LDKCResult_ChannelTypeFeaturesDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ChannelTypeFeaturesDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelPublicKeysDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_ChannelTypeFeaturesDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // struct LDKCResult_ChannelPublicKeysDecodeErrorZ CResult_ChannelPublicKeysDecodeErrorZ_clone(const struct LDKCResult_ChannelPublicKeysDecodeErrorZ *NONNULL_PTR orig); - export function CResult_ChannelPublicKeysDecodeErrorZ_clone(orig: number): number { + // struct LDKNetAddress CResult_NetAddressDecodeErrorZ_get_ok(LDKCResult_NetAddressDecodeErrorZ *NONNULL_PTR owner); + export function CResult_NetAddressDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelPublicKeysDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_NetAddressDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // struct LDKCResult_TxCreationKeysErrorZ CResult_TxCreationKeysErrorZ_ok(struct LDKTxCreationKeys o); - export function CResult_TxCreationKeysErrorZ_ok(o: number): number { + // struct LDKDecodeError CResult_NetAddressDecodeErrorZ_get_err(LDKCResult_NetAddressDecodeErrorZ *NONNULL_PTR owner); + export function CResult_NetAddressDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TxCreationKeysErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_NetAddressDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // struct LDKCResult_TxCreationKeysErrorZ CResult_TxCreationKeysErrorZ_err(enum LDKSecp256k1Error e); - export function CResult_TxCreationKeysErrorZ_err(e: Secp256k1Error): number { + // struct LDKAcceptChannel CResult_AcceptChannelDecodeErrorZ_get_ok(LDKCResult_AcceptChannelDecodeErrorZ *NONNULL_PTR owner); + export function CResult_AcceptChannelDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TxCreationKeysErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_AcceptChannelDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // bool CResult_TxCreationKeysErrorZ_is_ok(const struct LDKCResult_TxCreationKeysErrorZ *NONNULL_PTR o); - export function CResult_TxCreationKeysErrorZ_is_ok(o: number): boolean { + // struct LDKDecodeError CResult_AcceptChannelDecodeErrorZ_get_err(LDKCResult_AcceptChannelDecodeErrorZ *NONNULL_PTR owner); + export function CResult_AcceptChannelDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TxCreationKeysErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_AcceptChannelDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // void CResult_TxCreationKeysErrorZ_free(struct LDKCResult_TxCreationKeysErrorZ _res); - export function CResult_TxCreationKeysErrorZ_free(_res: number): void { + // struct LDKAnnouncementSignatures CResult_AnnouncementSignaturesDecodeErrorZ_get_ok(LDKCResult_AnnouncementSignaturesDecodeErrorZ *NONNULL_PTR owner); + export function CResult_AnnouncementSignaturesDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TxCreationKeysErrorZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_AnnouncementSignaturesDecodeErrorZ_get_ok(owner); + return nativeResponseValue; } - // uint64_t CResult_TxCreationKeysErrorZ_clone_ptr(LDKCResult_TxCreationKeysErrorZ *NONNULL_PTR arg); - export function CResult_TxCreationKeysErrorZ_clone_ptr(arg: number): number { + // struct LDKDecodeError CResult_AnnouncementSignaturesDecodeErrorZ_get_err(LDKCResult_AnnouncementSignaturesDecodeErrorZ *NONNULL_PTR owner); + export function CResult_AnnouncementSignaturesDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TxCreationKeysErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_AnnouncementSignaturesDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // struct LDKCResult_TxCreationKeysErrorZ CResult_TxCreationKeysErrorZ_clone(const struct LDKCResult_TxCreationKeysErrorZ *NONNULL_PTR orig); - export function CResult_TxCreationKeysErrorZ_clone(orig: number): number { + // struct LDKChannelReestablish CResult_ChannelReestablishDecodeErrorZ_get_ok(LDKCResult_ChannelReestablishDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ChannelReestablishDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TxCreationKeysErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_ChannelReestablishDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // struct LDKCOption_u32Z COption_u32Z_some(uint32_t o); - export function COption_u32Z_some(o: number): number { + // struct LDKDecodeError CResult_ChannelReestablishDecodeErrorZ_get_err(LDKCResult_ChannelReestablishDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ChannelReestablishDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_u32Z_some(o); + const nativeResponseValue = wasm.TS_CResult_ChannelReestablishDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // struct LDKCOption_u32Z COption_u32Z_none(void); - export function COption_u32Z_none(): number { + // struct LDKClosingSigned CResult_ClosingSignedDecodeErrorZ_get_ok(LDKCResult_ClosingSignedDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ClosingSignedDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_u32Z_none(); + const nativeResponseValue = wasm.TS_CResult_ClosingSignedDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // void COption_u32Z_free(struct LDKCOption_u32Z _res); - export function COption_u32Z_free(_res: number): void { + // struct LDKDecodeError CResult_ClosingSignedDecodeErrorZ_get_err(LDKCResult_ClosingSignedDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ClosingSignedDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_u32Z_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_ClosingSignedDecodeErrorZ_get_err(owner); + return nativeResponseValue; } - // uint64_t COption_u32Z_clone_ptr(LDKCOption_u32Z *NONNULL_PTR arg); - export function COption_u32Z_clone_ptr(arg: number): number { + // struct LDKClosingSignedFeeRange CResult_ClosingSignedFeeRangeDecodeErrorZ_get_ok(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ClosingSignedFeeRangeDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_u32Z_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // struct LDKCOption_u32Z COption_u32Z_clone(const struct LDKCOption_u32Z *NONNULL_PTR orig); - export function COption_u32Z_clone(orig: number): number { + // struct LDKDecodeError CResult_ClosingSignedFeeRangeDecodeErrorZ_get_err(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ClosingSignedFeeRangeDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_u32Z_clone(orig); + const nativeResponseValue = wasm.TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // struct LDKCResult_HTLCOutputInCommitmentDecodeErrorZ CResult_HTLCOutputInCommitmentDecodeErrorZ_ok(struct LDKHTLCOutputInCommitment o); - export function CResult_HTLCOutputInCommitmentDecodeErrorZ_ok(o: number): number { + // struct LDKCommitmentSigned CResult_CommitmentSignedDecodeErrorZ_get_ok(LDKCResult_CommitmentSignedDecodeErrorZ *NONNULL_PTR owner); + export function CResult_CommitmentSignedDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_HTLCOutputInCommitmentDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_CommitmentSignedDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // struct LDKCResult_HTLCOutputInCommitmentDecodeErrorZ CResult_HTLCOutputInCommitmentDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_HTLCOutputInCommitmentDecodeErrorZ_err(e: number): number { + // struct LDKDecodeError CResult_CommitmentSignedDecodeErrorZ_get_err(LDKCResult_CommitmentSignedDecodeErrorZ *NONNULL_PTR owner); + export function CResult_CommitmentSignedDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_HTLCOutputInCommitmentDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_CommitmentSignedDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // bool CResult_HTLCOutputInCommitmentDecodeErrorZ_is_ok(const struct LDKCResult_HTLCOutputInCommitmentDecodeErrorZ *NONNULL_PTR o); - export function CResult_HTLCOutputInCommitmentDecodeErrorZ_is_ok(o: number): boolean { + // struct LDKFundingCreated CResult_FundingCreatedDecodeErrorZ_get_ok(LDKCResult_FundingCreatedDecodeErrorZ *NONNULL_PTR owner); + export function CResult_FundingCreatedDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_HTLCOutputInCommitmentDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_FundingCreatedDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // void CResult_HTLCOutputInCommitmentDecodeErrorZ_free(struct LDKCResult_HTLCOutputInCommitmentDecodeErrorZ _res); - export function CResult_HTLCOutputInCommitmentDecodeErrorZ_free(_res: number): void { + // struct LDKDecodeError CResult_FundingCreatedDecodeErrorZ_get_err(LDKCResult_FundingCreatedDecodeErrorZ *NONNULL_PTR owner); + export function CResult_FundingCreatedDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_HTLCOutputInCommitmentDecodeErrorZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_FundingCreatedDecodeErrorZ_get_err(owner); + return nativeResponseValue; } - // uint64_t CResult_HTLCOutputInCommitmentDecodeErrorZ_clone_ptr(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ *NONNULL_PTR arg); - export function CResult_HTLCOutputInCommitmentDecodeErrorZ_clone_ptr(arg: number): number { + // struct LDKFundingSigned CResult_FundingSignedDecodeErrorZ_get_ok(LDKCResult_FundingSignedDecodeErrorZ *NONNULL_PTR owner); + export function CResult_FundingSignedDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_HTLCOutputInCommitmentDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_FundingSignedDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // struct LDKCResult_HTLCOutputInCommitmentDecodeErrorZ CResult_HTLCOutputInCommitmentDecodeErrorZ_clone(const struct LDKCResult_HTLCOutputInCommitmentDecodeErrorZ *NONNULL_PTR orig); - export function CResult_HTLCOutputInCommitmentDecodeErrorZ_clone(orig: number): number { + // struct LDKDecodeError CResult_FundingSignedDecodeErrorZ_get_err(LDKCResult_FundingSignedDecodeErrorZ *NONNULL_PTR owner); + export function CResult_FundingSignedDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_HTLCOutputInCommitmentDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_FundingSignedDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // enum LDKCOption_NoneZ COption_NoneZ_some(void); - export function COption_NoneZ_some(): COption_NoneZ { + // struct LDKFundingLocked CResult_FundingLockedDecodeErrorZ_get_ok(LDKCResult_FundingLockedDecodeErrorZ *NONNULL_PTR owner); + export function CResult_FundingLockedDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_NoneZ_some(); + const nativeResponseValue = wasm.TS_CResult_FundingLockedDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // enum LDKCOption_NoneZ COption_NoneZ_none(void); - export function COption_NoneZ_none(): COption_NoneZ { + // struct LDKDecodeError CResult_FundingLockedDecodeErrorZ_get_err(LDKCResult_FundingLockedDecodeErrorZ *NONNULL_PTR owner); + export function CResult_FundingLockedDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_NoneZ_none(); + const nativeResponseValue = wasm.TS_CResult_FundingLockedDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // void COption_NoneZ_free(enum LDKCOption_NoneZ _res); - export function COption_NoneZ_free(_res: COption_NoneZ): void { + // struct LDKInit CResult_InitDecodeErrorZ_get_ok(LDKCResult_InitDecodeErrorZ *NONNULL_PTR owner); + export function CResult_InitDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_NoneZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_InitDecodeErrorZ_get_ok(owner); + return nativeResponseValue; } - // struct LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_ok(struct LDKCounterpartyChannelTransactionParameters o); - export function CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_ok(o: number): number { + // struct LDKDecodeError CResult_InitDecodeErrorZ_get_err(LDKCResult_InitDecodeErrorZ *NONNULL_PTR owner); + export function CResult_InitDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_InitDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // struct LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_err(e: number): number { + // struct LDKOpenChannel CResult_OpenChannelDecodeErrorZ_get_ok(LDKCResult_OpenChannelDecodeErrorZ *NONNULL_PTR owner); + export function CResult_OpenChannelDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_OpenChannelDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // bool CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_is_ok(const struct LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ *NONNULL_PTR o); - export function CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_is_ok(o: number): boolean { + // struct LDKDecodeError CResult_OpenChannelDecodeErrorZ_get_err(LDKCResult_OpenChannelDecodeErrorZ *NONNULL_PTR owner); + export function CResult_OpenChannelDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_OpenChannelDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // void CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_free(struct LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ _res); - export function CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_free(_res: number): void { + // struct LDKRevokeAndACK CResult_RevokeAndACKDecodeErrorZ_get_ok(LDKCResult_RevokeAndACKDecodeErrorZ *NONNULL_PTR owner); + export function CResult_RevokeAndACKDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_RevokeAndACKDecodeErrorZ_get_ok(owner); + return nativeResponseValue; } - // uint64_t CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone_ptr(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ *NONNULL_PTR arg); - export function CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone_ptr(arg: number): number { + // struct LDKDecodeError CResult_RevokeAndACKDecodeErrorZ_get_err(LDKCResult_RevokeAndACKDecodeErrorZ *NONNULL_PTR owner); + export function CResult_RevokeAndACKDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_RevokeAndACKDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // struct LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone(const struct LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ *NONNULL_PTR orig); - export function CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone(orig: number): number { + // struct LDKShutdown CResult_ShutdownDecodeErrorZ_get_ok(LDKCResult_ShutdownDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ShutdownDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_ShutdownDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // struct LDKCResult_ChannelTransactionParametersDecodeErrorZ CResult_ChannelTransactionParametersDecodeErrorZ_ok(struct LDKChannelTransactionParameters o); - export function CResult_ChannelTransactionParametersDecodeErrorZ_ok(o: number): number { + // struct LDKDecodeError CResult_ShutdownDecodeErrorZ_get_err(LDKCResult_ShutdownDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ShutdownDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelTransactionParametersDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_ShutdownDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // struct LDKCResult_ChannelTransactionParametersDecodeErrorZ CResult_ChannelTransactionParametersDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_ChannelTransactionParametersDecodeErrorZ_err(e: number): number { + // struct LDKUpdateFailHTLC CResult_UpdateFailHTLCDecodeErrorZ_get_ok(LDKCResult_UpdateFailHTLCDecodeErrorZ *NONNULL_PTR owner); + export function CResult_UpdateFailHTLCDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelTransactionParametersDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_UpdateFailHTLCDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // bool CResult_ChannelTransactionParametersDecodeErrorZ_is_ok(const struct LDKCResult_ChannelTransactionParametersDecodeErrorZ *NONNULL_PTR o); - export function CResult_ChannelTransactionParametersDecodeErrorZ_is_ok(o: number): boolean { + // struct LDKDecodeError CResult_UpdateFailHTLCDecodeErrorZ_get_err(LDKCResult_UpdateFailHTLCDecodeErrorZ *NONNULL_PTR owner); + export function CResult_UpdateFailHTLCDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelTransactionParametersDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_UpdateFailHTLCDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // void CResult_ChannelTransactionParametersDecodeErrorZ_free(struct LDKCResult_ChannelTransactionParametersDecodeErrorZ _res); - export function CResult_ChannelTransactionParametersDecodeErrorZ_free(_res: number): void { + // struct LDKUpdateFailMalformedHTLC CResult_UpdateFailMalformedHTLCDecodeErrorZ_get_ok(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ *NONNULL_PTR owner); + export function CResult_UpdateFailMalformedHTLCDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelTransactionParametersDecodeErrorZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_get_ok(owner); + return nativeResponseValue; } - // uint64_t CResult_ChannelTransactionParametersDecodeErrorZ_clone_ptr(LDKCResult_ChannelTransactionParametersDecodeErrorZ *NONNULL_PTR arg); - export function CResult_ChannelTransactionParametersDecodeErrorZ_clone_ptr(arg: number): number { + // struct LDKDecodeError CResult_UpdateFailMalformedHTLCDecodeErrorZ_get_err(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ *NONNULL_PTR owner); + export function CResult_UpdateFailMalformedHTLCDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelTransactionParametersDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // struct LDKCResult_ChannelTransactionParametersDecodeErrorZ CResult_ChannelTransactionParametersDecodeErrorZ_clone(const struct LDKCResult_ChannelTransactionParametersDecodeErrorZ *NONNULL_PTR orig); - export function CResult_ChannelTransactionParametersDecodeErrorZ_clone(orig: number): number { + // struct LDKUpdateFee CResult_UpdateFeeDecodeErrorZ_get_ok(LDKCResult_UpdateFeeDecodeErrorZ *NONNULL_PTR owner); + export function CResult_UpdateFeeDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelTransactionParametersDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_UpdateFeeDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // void CVec_SignatureZ_free(struct LDKCVec_SignatureZ _res); - export function CVec_SignatureZ_free(_res: Uint8Array[]): void { + // struct LDKDecodeError CResult_UpdateFeeDecodeErrorZ_get_err(LDKCResult_UpdateFeeDecodeErrorZ *NONNULL_PTR owner); + export function CResult_UpdateFeeDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_SignatureZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_UpdateFeeDecodeErrorZ_get_err(owner); + return nativeResponseValue; } - // struct LDKCResult_HolderCommitmentTransactionDecodeErrorZ CResult_HolderCommitmentTransactionDecodeErrorZ_ok(struct LDKHolderCommitmentTransaction o); - export function CResult_HolderCommitmentTransactionDecodeErrorZ_ok(o: number): number { + // struct LDKUpdateFulfillHTLC CResult_UpdateFulfillHTLCDecodeErrorZ_get_ok(LDKCResult_UpdateFulfillHTLCDecodeErrorZ *NONNULL_PTR owner); + export function CResult_UpdateFulfillHTLCDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_HolderCommitmentTransactionDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_UpdateFulfillHTLCDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // struct LDKCResult_HolderCommitmentTransactionDecodeErrorZ CResult_HolderCommitmentTransactionDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_HolderCommitmentTransactionDecodeErrorZ_err(e: number): number { + // struct LDKDecodeError CResult_UpdateFulfillHTLCDecodeErrorZ_get_err(LDKCResult_UpdateFulfillHTLCDecodeErrorZ *NONNULL_PTR owner); + export function CResult_UpdateFulfillHTLCDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_HolderCommitmentTransactionDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_UpdateFulfillHTLCDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // bool CResult_HolderCommitmentTransactionDecodeErrorZ_is_ok(const struct LDKCResult_HolderCommitmentTransactionDecodeErrorZ *NONNULL_PTR o); - export function CResult_HolderCommitmentTransactionDecodeErrorZ_is_ok(o: number): boolean { + // struct LDKUpdateAddHTLC CResult_UpdateAddHTLCDecodeErrorZ_get_ok(LDKCResult_UpdateAddHTLCDecodeErrorZ *NONNULL_PTR owner); + export function CResult_UpdateAddHTLCDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_HolderCommitmentTransactionDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_UpdateAddHTLCDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // void CResult_HolderCommitmentTransactionDecodeErrorZ_free(struct LDKCResult_HolderCommitmentTransactionDecodeErrorZ _res); - export function CResult_HolderCommitmentTransactionDecodeErrorZ_free(_res: number): void { + // struct LDKDecodeError CResult_UpdateAddHTLCDecodeErrorZ_get_err(LDKCResult_UpdateAddHTLCDecodeErrorZ *NONNULL_PTR owner); + export function CResult_UpdateAddHTLCDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_HolderCommitmentTransactionDecodeErrorZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_UpdateAddHTLCDecodeErrorZ_get_err(owner); + return nativeResponseValue; } - // uint64_t CResult_HolderCommitmentTransactionDecodeErrorZ_clone_ptr(LDKCResult_HolderCommitmentTransactionDecodeErrorZ *NONNULL_PTR arg); - export function CResult_HolderCommitmentTransactionDecodeErrorZ_clone_ptr(arg: number): number { + // struct LDKPing CResult_PingDecodeErrorZ_get_ok(LDKCResult_PingDecodeErrorZ *NONNULL_PTR owner); + export function CResult_PingDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_HolderCommitmentTransactionDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_PingDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // struct LDKCResult_HolderCommitmentTransactionDecodeErrorZ CResult_HolderCommitmentTransactionDecodeErrorZ_clone(const struct LDKCResult_HolderCommitmentTransactionDecodeErrorZ *NONNULL_PTR orig); - export function CResult_HolderCommitmentTransactionDecodeErrorZ_clone(orig: number): number { + // struct LDKDecodeError CResult_PingDecodeErrorZ_get_err(LDKCResult_PingDecodeErrorZ *NONNULL_PTR owner); + export function CResult_PingDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_HolderCommitmentTransactionDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_PingDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // struct LDKCResult_BuiltCommitmentTransactionDecodeErrorZ CResult_BuiltCommitmentTransactionDecodeErrorZ_ok(struct LDKBuiltCommitmentTransaction o); - export function CResult_BuiltCommitmentTransactionDecodeErrorZ_ok(o: number): number { + // struct LDKPong CResult_PongDecodeErrorZ_get_ok(LDKCResult_PongDecodeErrorZ *NONNULL_PTR owner); + export function CResult_PongDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_BuiltCommitmentTransactionDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_PongDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // struct LDKCResult_BuiltCommitmentTransactionDecodeErrorZ CResult_BuiltCommitmentTransactionDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_BuiltCommitmentTransactionDecodeErrorZ_err(e: number): number { + // struct LDKDecodeError CResult_PongDecodeErrorZ_get_err(LDKCResult_PongDecodeErrorZ *NONNULL_PTR owner); + export function CResult_PongDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_BuiltCommitmentTransactionDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_PongDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // bool CResult_BuiltCommitmentTransactionDecodeErrorZ_is_ok(const struct LDKCResult_BuiltCommitmentTransactionDecodeErrorZ *NONNULL_PTR o); - export function CResult_BuiltCommitmentTransactionDecodeErrorZ_is_ok(o: number): boolean { + // struct LDKUnsignedChannelAnnouncement CResult_UnsignedChannelAnnouncementDecodeErrorZ_get_ok(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ *NONNULL_PTR owner); + export function CResult_UnsignedChannelAnnouncementDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_BuiltCommitmentTransactionDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // void CResult_BuiltCommitmentTransactionDecodeErrorZ_free(struct LDKCResult_BuiltCommitmentTransactionDecodeErrorZ _res); - export function CResult_BuiltCommitmentTransactionDecodeErrorZ_free(_res: number): void { + // struct LDKDecodeError CResult_UnsignedChannelAnnouncementDecodeErrorZ_get_err(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ *NONNULL_PTR owner); + export function CResult_UnsignedChannelAnnouncementDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_BuiltCommitmentTransactionDecodeErrorZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_get_err(owner); + return nativeResponseValue; } - // uint64_t CResult_BuiltCommitmentTransactionDecodeErrorZ_clone_ptr(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ *NONNULL_PTR arg); - export function CResult_BuiltCommitmentTransactionDecodeErrorZ_clone_ptr(arg: number): number { + // struct LDKChannelAnnouncement CResult_ChannelAnnouncementDecodeErrorZ_get_ok(LDKCResult_ChannelAnnouncementDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ChannelAnnouncementDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_BuiltCommitmentTransactionDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_ChannelAnnouncementDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // struct LDKCResult_BuiltCommitmentTransactionDecodeErrorZ CResult_BuiltCommitmentTransactionDecodeErrorZ_clone(const struct LDKCResult_BuiltCommitmentTransactionDecodeErrorZ *NONNULL_PTR orig); - export function CResult_BuiltCommitmentTransactionDecodeErrorZ_clone(orig: number): number { + // struct LDKDecodeError CResult_ChannelAnnouncementDecodeErrorZ_get_err(LDKCResult_ChannelAnnouncementDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ChannelAnnouncementDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_BuiltCommitmentTransactionDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_ChannelAnnouncementDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // struct LDKCResult_TrustedClosingTransactionNoneZ CResult_TrustedClosingTransactionNoneZ_ok(struct LDKTrustedClosingTransaction o); - export function CResult_TrustedClosingTransactionNoneZ_ok(o: number): number { + // struct LDKUnsignedChannelUpdate CResult_UnsignedChannelUpdateDecodeErrorZ_get_ok(LDKCResult_UnsignedChannelUpdateDecodeErrorZ *NONNULL_PTR owner); + export function CResult_UnsignedChannelUpdateDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TrustedClosingTransactionNoneZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_UnsignedChannelUpdateDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // struct LDKCResult_TrustedClosingTransactionNoneZ CResult_TrustedClosingTransactionNoneZ_err(void); - export function CResult_TrustedClosingTransactionNoneZ_err(): number { + // struct LDKDecodeError CResult_UnsignedChannelUpdateDecodeErrorZ_get_err(LDKCResult_UnsignedChannelUpdateDecodeErrorZ *NONNULL_PTR owner); + export function CResult_UnsignedChannelUpdateDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TrustedClosingTransactionNoneZ_err(); + const nativeResponseValue = wasm.TS_CResult_UnsignedChannelUpdateDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // bool CResult_TrustedClosingTransactionNoneZ_is_ok(const struct LDKCResult_TrustedClosingTransactionNoneZ *NONNULL_PTR o); - export function CResult_TrustedClosingTransactionNoneZ_is_ok(o: number): boolean { + // struct LDKChannelUpdate CResult_ChannelUpdateDecodeErrorZ_get_ok(LDKCResult_ChannelUpdateDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ChannelUpdateDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TrustedClosingTransactionNoneZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_ChannelUpdateDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // void CResult_TrustedClosingTransactionNoneZ_free(struct LDKCResult_TrustedClosingTransactionNoneZ _res); - export function CResult_TrustedClosingTransactionNoneZ_free(_res: number): void { + // struct LDKDecodeError CResult_ChannelUpdateDecodeErrorZ_get_err(LDKCResult_ChannelUpdateDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ChannelUpdateDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TrustedClosingTransactionNoneZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_ChannelUpdateDecodeErrorZ_get_err(owner); + return nativeResponseValue; } - // struct LDKCResult_CommitmentTransactionDecodeErrorZ CResult_CommitmentTransactionDecodeErrorZ_ok(struct LDKCommitmentTransaction o); - export function CResult_CommitmentTransactionDecodeErrorZ_ok(o: number): number { + // struct LDKErrorMessage CResult_ErrorMessageDecodeErrorZ_get_ok(LDKCResult_ErrorMessageDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ErrorMessageDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CommitmentTransactionDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_ErrorMessageDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // struct LDKCResult_CommitmentTransactionDecodeErrorZ CResult_CommitmentTransactionDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_CommitmentTransactionDecodeErrorZ_err(e: number): number { + // struct LDKDecodeError CResult_ErrorMessageDecodeErrorZ_get_err(LDKCResult_ErrorMessageDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ErrorMessageDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CommitmentTransactionDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_ErrorMessageDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // bool CResult_CommitmentTransactionDecodeErrorZ_is_ok(const struct LDKCResult_CommitmentTransactionDecodeErrorZ *NONNULL_PTR o); - export function CResult_CommitmentTransactionDecodeErrorZ_is_ok(o: number): boolean { + // struct LDKUnsignedNodeAnnouncement CResult_UnsignedNodeAnnouncementDecodeErrorZ_get_ok(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ *NONNULL_PTR owner); + export function CResult_UnsignedNodeAnnouncementDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CommitmentTransactionDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // void CResult_CommitmentTransactionDecodeErrorZ_free(struct LDKCResult_CommitmentTransactionDecodeErrorZ _res); - export function CResult_CommitmentTransactionDecodeErrorZ_free(_res: number): void { + // struct LDKDecodeError CResult_UnsignedNodeAnnouncementDecodeErrorZ_get_err(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ *NONNULL_PTR owner); + export function CResult_UnsignedNodeAnnouncementDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CommitmentTransactionDecodeErrorZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_get_err(owner); + return nativeResponseValue; } - // uint64_t CResult_CommitmentTransactionDecodeErrorZ_clone_ptr(LDKCResult_CommitmentTransactionDecodeErrorZ *NONNULL_PTR arg); - export function CResult_CommitmentTransactionDecodeErrorZ_clone_ptr(arg: number): number { + // struct LDKNodeAnnouncement CResult_NodeAnnouncementDecodeErrorZ_get_ok(LDKCResult_NodeAnnouncementDecodeErrorZ *NONNULL_PTR owner); + export function CResult_NodeAnnouncementDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CommitmentTransactionDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_NodeAnnouncementDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // struct LDKCResult_CommitmentTransactionDecodeErrorZ CResult_CommitmentTransactionDecodeErrorZ_clone(const struct LDKCResult_CommitmentTransactionDecodeErrorZ *NONNULL_PTR orig); - export function CResult_CommitmentTransactionDecodeErrorZ_clone(orig: number): number { + // struct LDKDecodeError CResult_NodeAnnouncementDecodeErrorZ_get_err(LDKCResult_NodeAnnouncementDecodeErrorZ *NONNULL_PTR owner); + export function CResult_NodeAnnouncementDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CommitmentTransactionDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_NodeAnnouncementDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // struct LDKCResult_TrustedCommitmentTransactionNoneZ CResult_TrustedCommitmentTransactionNoneZ_ok(struct LDKTrustedCommitmentTransaction o); - export function CResult_TrustedCommitmentTransactionNoneZ_ok(o: number): number { + // struct LDKQueryShortChannelIds CResult_QueryShortChannelIdsDecodeErrorZ_get_ok(LDKCResult_QueryShortChannelIdsDecodeErrorZ *NONNULL_PTR owner); + export function CResult_QueryShortChannelIdsDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TrustedCommitmentTransactionNoneZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_QueryShortChannelIdsDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // struct LDKCResult_TrustedCommitmentTransactionNoneZ CResult_TrustedCommitmentTransactionNoneZ_err(void); - export function CResult_TrustedCommitmentTransactionNoneZ_err(): number { + // struct LDKDecodeError CResult_QueryShortChannelIdsDecodeErrorZ_get_err(LDKCResult_QueryShortChannelIdsDecodeErrorZ *NONNULL_PTR owner); + export function CResult_QueryShortChannelIdsDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TrustedCommitmentTransactionNoneZ_err(); + const nativeResponseValue = wasm.TS_CResult_QueryShortChannelIdsDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // bool CResult_TrustedCommitmentTransactionNoneZ_is_ok(const struct LDKCResult_TrustedCommitmentTransactionNoneZ *NONNULL_PTR o); - export function CResult_TrustedCommitmentTransactionNoneZ_is_ok(o: number): boolean { + // struct LDKReplyShortChannelIdsEnd CResult_ReplyShortChannelIdsEndDecodeErrorZ_get_ok(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ReplyShortChannelIdsEndDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TrustedCommitmentTransactionNoneZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // void CResult_TrustedCommitmentTransactionNoneZ_free(struct LDKCResult_TrustedCommitmentTransactionNoneZ _res); - export function CResult_TrustedCommitmentTransactionNoneZ_free(_res: number): void { + // struct LDKDecodeError CResult_ReplyShortChannelIdsEndDecodeErrorZ_get_err(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ReplyShortChannelIdsEndDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TrustedCommitmentTransactionNoneZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_get_err(owner); + return nativeResponseValue; } - // struct LDKCResult_CVec_SignatureZNoneZ CResult_CVec_SignatureZNoneZ_ok(struct LDKCVec_SignatureZ o); - export function CResult_CVec_SignatureZNoneZ_ok(o: Uint8Array[]): number { + // struct LDKQueryChannelRange CResult_QueryChannelRangeDecodeErrorZ_get_ok(LDKCResult_QueryChannelRangeDecodeErrorZ *NONNULL_PTR owner); + export function CResult_QueryChannelRangeDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CVec_SignatureZNoneZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_QueryChannelRangeDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // struct LDKCResult_CVec_SignatureZNoneZ CResult_CVec_SignatureZNoneZ_err(void); - export function CResult_CVec_SignatureZNoneZ_err(): number { + // struct LDKDecodeError CResult_QueryChannelRangeDecodeErrorZ_get_err(LDKCResult_QueryChannelRangeDecodeErrorZ *NONNULL_PTR owner); + export function CResult_QueryChannelRangeDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CVec_SignatureZNoneZ_err(); + const nativeResponseValue = wasm.TS_CResult_QueryChannelRangeDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // bool CResult_CVec_SignatureZNoneZ_is_ok(const struct LDKCResult_CVec_SignatureZNoneZ *NONNULL_PTR o); - export function CResult_CVec_SignatureZNoneZ_is_ok(o: number): boolean { + // struct LDKReplyChannelRange CResult_ReplyChannelRangeDecodeErrorZ_get_ok(LDKCResult_ReplyChannelRangeDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ReplyChannelRangeDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CVec_SignatureZNoneZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_ReplyChannelRangeDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // void CResult_CVec_SignatureZNoneZ_free(struct LDKCResult_CVec_SignatureZNoneZ _res); - export function CResult_CVec_SignatureZNoneZ_free(_res: number): void { + // struct LDKDecodeError CResult_ReplyChannelRangeDecodeErrorZ_get_err(LDKCResult_ReplyChannelRangeDecodeErrorZ *NONNULL_PTR owner); + export function CResult_ReplyChannelRangeDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CVec_SignatureZNoneZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_ReplyChannelRangeDecodeErrorZ_get_err(owner); + return nativeResponseValue; } - // uint64_t CResult_CVec_SignatureZNoneZ_clone_ptr(LDKCResult_CVec_SignatureZNoneZ *NONNULL_PTR arg); - export function CResult_CVec_SignatureZNoneZ_clone_ptr(arg: number): number { + // struct LDKGossipTimestampFilter CResult_GossipTimestampFilterDecodeErrorZ_get_ok(LDKCResult_GossipTimestampFilterDecodeErrorZ *NONNULL_PTR owner); + export function CResult_GossipTimestampFilterDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CVec_SignatureZNoneZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_GossipTimestampFilterDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // struct LDKCResult_CVec_SignatureZNoneZ CResult_CVec_SignatureZNoneZ_clone(const struct LDKCResult_CVec_SignatureZNoneZ *NONNULL_PTR orig); - export function CResult_CVec_SignatureZNoneZ_clone(orig: number): number { + // struct LDKDecodeError CResult_GossipTimestampFilterDecodeErrorZ_get_err(LDKCResult_GossipTimestampFilterDecodeErrorZ *NONNULL_PTR owner); + export function CResult_GossipTimestampFilterDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CVec_SignatureZNoneZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_GossipTimestampFilterDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // struct LDKCResult_ShutdownScriptDecodeErrorZ CResult_ShutdownScriptDecodeErrorZ_ok(struct LDKShutdownScript o); - export function CResult_ShutdownScriptDecodeErrorZ_ok(o: number): number { + // struct LDKDelayedPaymentOutputDescriptor CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_get_ok(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR owner); + export function CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ShutdownScriptDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // struct LDKCResult_ShutdownScriptDecodeErrorZ CResult_ShutdownScriptDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_ShutdownScriptDecodeErrorZ_err(e: number): number { + // struct LDKDecodeError CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_get_err(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR owner); + export function CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ShutdownScriptDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // bool CResult_ShutdownScriptDecodeErrorZ_is_ok(const struct LDKCResult_ShutdownScriptDecodeErrorZ *NONNULL_PTR o); - export function CResult_ShutdownScriptDecodeErrorZ_is_ok(o: number): boolean { + // struct LDKStaticPaymentOutputDescriptor CResult_StaticPaymentOutputDescriptorDecodeErrorZ_get_ok(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR owner); + export function CResult_StaticPaymentOutputDescriptorDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ShutdownScriptDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // void CResult_ShutdownScriptDecodeErrorZ_free(struct LDKCResult_ShutdownScriptDecodeErrorZ _res); - export function CResult_ShutdownScriptDecodeErrorZ_free(_res: number): void { + // struct LDKDecodeError CResult_StaticPaymentOutputDescriptorDecodeErrorZ_get_err(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR owner); + export function CResult_StaticPaymentOutputDescriptorDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ShutdownScriptDecodeErrorZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_get_err(owner); + return nativeResponseValue; } - // uint64_t CResult_ShutdownScriptDecodeErrorZ_clone_ptr(LDKCResult_ShutdownScriptDecodeErrorZ *NONNULL_PTR arg); - export function CResult_ShutdownScriptDecodeErrorZ_clone_ptr(arg: number): number { + // struct LDKSpendableOutputDescriptor CResult_SpendableOutputDescriptorDecodeErrorZ_get_ok(LDKCResult_SpendableOutputDescriptorDecodeErrorZ *NONNULL_PTR owner); + export function CResult_SpendableOutputDescriptorDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ShutdownScriptDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_SpendableOutputDescriptorDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // struct LDKCResult_ShutdownScriptDecodeErrorZ CResult_ShutdownScriptDecodeErrorZ_clone(const struct LDKCResult_ShutdownScriptDecodeErrorZ *NONNULL_PTR orig); - export function CResult_ShutdownScriptDecodeErrorZ_clone(orig: number): number { + // struct LDKDecodeError CResult_SpendableOutputDescriptorDecodeErrorZ_get_err(LDKCResult_SpendableOutputDescriptorDecodeErrorZ *NONNULL_PTR owner); + export function CResult_SpendableOutputDescriptorDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ShutdownScriptDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_SpendableOutputDescriptorDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // struct LDKCResult_ShutdownScriptInvalidShutdownScriptZ CResult_ShutdownScriptInvalidShutdownScriptZ_ok(struct LDKShutdownScript o); - export function CResult_ShutdownScriptInvalidShutdownScriptZ_ok(o: number): number { + // struct LDKSign CResult_SignDecodeErrorZ_get_ok(LDKCResult_SignDecodeErrorZ *NONNULL_PTR owner); + export function CResult_SignDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ShutdownScriptInvalidShutdownScriptZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_SignDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // struct LDKCResult_ShutdownScriptInvalidShutdownScriptZ CResult_ShutdownScriptInvalidShutdownScriptZ_err(struct LDKInvalidShutdownScript e); - export function CResult_ShutdownScriptInvalidShutdownScriptZ_err(e: number): number { + // struct LDKDecodeError CResult_SignDecodeErrorZ_get_err(LDKCResult_SignDecodeErrorZ *NONNULL_PTR owner); + export function CResult_SignDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ShutdownScriptInvalidShutdownScriptZ_err(e); + const nativeResponseValue = wasm.TS_CResult_SignDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // bool CResult_ShutdownScriptInvalidShutdownScriptZ_is_ok(const struct LDKCResult_ShutdownScriptInvalidShutdownScriptZ *NONNULL_PTR o); - export function CResult_ShutdownScriptInvalidShutdownScriptZ_is_ok(o: number): boolean { + // struct LDKRecoverableSignature CResult_RecoverableSignatureNoneZ_get_ok(LDKCResult_RecoverableSignatureNoneZ *NONNULL_PTR owner); + export function CResult_RecoverableSignatureNoneZ_get_ok(owner: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ShutdownScriptInvalidShutdownScriptZ_is_ok(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_RecoverableSignatureNoneZ_get_ok(owner); + return decodeUint8Array(nativeResponseValue); } - // void CResult_ShutdownScriptInvalidShutdownScriptZ_free(struct LDKCResult_ShutdownScriptInvalidShutdownScriptZ _res); - export function CResult_ShutdownScriptInvalidShutdownScriptZ_free(_res: number): void { + // void CResult_RecoverableSignatureNoneZ_get_err(LDKCResult_RecoverableSignatureNoneZ *NONNULL_PTR owner); + export function CResult_RecoverableSignatureNoneZ_get_err(owner: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ShutdownScriptInvalidShutdownScriptZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_RecoverableSignatureNoneZ_get_err(owner); // debug statements here } - // uint64_t CResult_ShutdownScriptInvalidShutdownScriptZ_clone_ptr(LDKCResult_ShutdownScriptInvalidShutdownScriptZ *NONNULL_PTR arg); - export function CResult_ShutdownScriptInvalidShutdownScriptZ_clone_ptr(arg: number): number { + // struct LDKCVec_CVec_u8ZZ CResult_CVec_CVec_u8ZZNoneZ_get_ok(LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR owner); + export function CResult_CVec_CVec_u8ZZNoneZ_get_ok(owner: number): Uint8Array[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ShutdownScriptInvalidShutdownScriptZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_CVec_CVec_u8ZZNoneZ_get_ok(owner); return nativeResponseValue; } - // struct LDKCResult_ShutdownScriptInvalidShutdownScriptZ CResult_ShutdownScriptInvalidShutdownScriptZ_clone(const struct LDKCResult_ShutdownScriptInvalidShutdownScriptZ *NONNULL_PTR orig); - export function CResult_ShutdownScriptInvalidShutdownScriptZ_clone(orig: number): number { + // void CResult_CVec_CVec_u8ZZNoneZ_get_err(LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR owner); + export function CResult_CVec_CVec_u8ZZNoneZ_get_err(owner: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ShutdownScriptInvalidShutdownScriptZ_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_CVec_CVec_u8ZZNoneZ_get_err(owner); + // debug statements here } - // struct LDKCResult_NoneErrorZ CResult_NoneErrorZ_ok(void); - export function CResult_NoneErrorZ_ok(): number { + // struct LDKInMemorySigner CResult_InMemorySignerDecodeErrorZ_get_ok(LDKCResult_InMemorySignerDecodeErrorZ *NONNULL_PTR owner); + export function CResult_InMemorySignerDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneErrorZ_ok(); + const nativeResponseValue = wasm.TS_CResult_InMemorySignerDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // struct LDKCResult_NoneErrorZ CResult_NoneErrorZ_err(enum LDKIOError e); - export function CResult_NoneErrorZ_err(e: IOError): number { + // struct LDKDecodeError CResult_InMemorySignerDecodeErrorZ_get_err(LDKCResult_InMemorySignerDecodeErrorZ *NONNULL_PTR owner); + export function CResult_InMemorySignerDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_InMemorySignerDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // bool CResult_NoneErrorZ_is_ok(const struct LDKCResult_NoneErrorZ *NONNULL_PTR o); - export function CResult_NoneErrorZ_is_ok(o: number): boolean { + // struct LDKTransaction CResult_TransactionNoneZ_get_ok(LDKCResult_TransactionNoneZ *NONNULL_PTR owner); + export function CResult_TransactionNoneZ_get_ok(owner: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneErrorZ_is_ok(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_TransactionNoneZ_get_ok(owner); + return decodeUint8Array(nativeResponseValue); } - // void CResult_NoneErrorZ_free(struct LDKCResult_NoneErrorZ _res); - export function CResult_NoneErrorZ_free(_res: number): void { + // void CResult_TransactionNoneZ_get_err(LDKCResult_TransactionNoneZ *NONNULL_PTR owner); + export function CResult_TransactionNoneZ_get_err(owner: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_TransactionNoneZ_get_err(owner); // debug statements here } - // uint64_t CResult_NoneErrorZ_clone_ptr(LDKCResult_NoneErrorZ *NONNULL_PTR arg); - export function CResult_NoneErrorZ_clone_ptr(arg: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); + + + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START + + export interface LDKFilter { + register_tx (txid: Uint8Array, script_pubkey: Uint8Array): void; + register_output (output: number): number; } - const nativeResponseValue = wasm.CResult_NoneErrorZ_clone_ptr(arg); - return nativeResponseValue; - } - // struct LDKCResult_NoneErrorZ CResult_NoneErrorZ_clone(const struct LDKCResult_NoneErrorZ *NONNULL_PTR orig); - export function CResult_NoneErrorZ_clone(orig: number): number { + + export function LDKFilter_new(impl: LDKFilter): number { + throw new Error('unimplemented'); // TODO: bind to WASM + } + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END + + + // void Filter_register_tx LDKFilter *NONNULL_PTR this_arg, const uint8_t (*txid)[32], struct LDKu8slice script_pubkey + export function Filter_register_tx(this_arg: number, txid: Uint8Array, script_pubkey: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneErrorZ_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Filter_register_tx(this_arg, encodeUint8Array(txid), encodeUint8Array(script_pubkey)); + // debug statements here } - // struct LDKCResult_RouteHopDecodeErrorZ CResult_RouteHopDecodeErrorZ_ok(struct LDKRouteHop o); - export function CResult_RouteHopDecodeErrorZ_ok(o: number): number { + // LDKCOption_C2Tuple_usizeTransactionZZ Filter_register_output LDKFilter *NONNULL_PTR this_arg, struct LDKWatchedOutput output + export function Filter_register_output(this_arg: number, output: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteHopDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_Filter_register_output(this_arg, output); return nativeResponseValue; } - // struct LDKCResult_RouteHopDecodeErrorZ CResult_RouteHopDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_RouteHopDecodeErrorZ_err(e: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_RouteHopDecodeErrorZ_err(e); - return nativeResponseValue; + export class LDKCOption_FilterZ { + protected constructor() {} } - // bool CResult_RouteHopDecodeErrorZ_is_ok(const struct LDKCResult_RouteHopDecodeErrorZ *NONNULL_PTR o); - export function CResult_RouteHopDecodeErrorZ_is_ok(o: number): boolean { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_RouteHopDecodeErrorZ_is_ok(o); - return nativeResponseValue; + export class LDKCOption_FilterZ_Some extends LDKCOption_FilterZ { + constructor(public some: number) { super(); } } - // void CResult_RouteHopDecodeErrorZ_free(struct LDKCResult_RouteHopDecodeErrorZ _res); - export function CResult_RouteHopDecodeErrorZ_free(_res: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_RouteHopDecodeErrorZ_free(_res); - // debug statements here + export class LDKCOption_FilterZ_None extends LDKCOption_FilterZ { + constructor() { super(); } } - // uint64_t CResult_RouteHopDecodeErrorZ_clone_ptr(LDKCResult_RouteHopDecodeErrorZ *NONNULL_PTR arg); - export function CResult_RouteHopDecodeErrorZ_clone_ptr(arg: number): number { + export function LDKCOption_FilterZ_ref_from_ptr(ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteHopDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_LDKCOption_FilterZ_ref_from_ptr(ptr); return nativeResponseValue; } - // struct LDKCResult_RouteHopDecodeErrorZ CResult_RouteHopDecodeErrorZ_clone(const struct LDKCResult_RouteHopDecodeErrorZ *NONNULL_PTR orig); - export function CResult_RouteHopDecodeErrorZ_clone(orig: number): number { + // struct LDKLockedChannelMonitor *CResult_LockedChannelMonitorNoneZ_get_ok(LDKCResult_LockedChannelMonitorNoneZ *NONNULL_PTR owner); + export function CResult_LockedChannelMonitorNoneZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteHopDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_LockedChannelMonitorNoneZ_get_ok(owner); return nativeResponseValue; } - // void CVec_RouteHopZ_free(struct LDKCVec_RouteHopZ _res); - export function CVec_RouteHopZ_free(_res: number[]): void { + // void CResult_LockedChannelMonitorNoneZ_get_err(LDKCResult_LockedChannelMonitorNoneZ *NONNULL_PTR owner); + export function CResult_LockedChannelMonitorNoneZ_get_err(owner: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_RouteHopZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_LockedChannelMonitorNoneZ_get_err(owner); // debug statements here } - // void CVec_CVec_RouteHopZZ_free(struct LDKCVec_CVec_RouteHopZZ _res); - export function CVec_CVec_RouteHopZZ_free(_res: number[][]): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CVec_CVec_RouteHopZZ_free(_res); - // debug statements here + export class LDKAPIError { + protected constructor() {} } - // struct LDKCResult_RouteDecodeErrorZ CResult_RouteDecodeErrorZ_ok(struct LDKRoute o); - export function CResult_RouteDecodeErrorZ_ok(o: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_RouteDecodeErrorZ_ok(o); - return nativeResponseValue; + export class LDKAPIError_APIMisuseError extends LDKAPIError { + constructor(public err: String) { super(); } } - // struct LDKCResult_RouteDecodeErrorZ CResult_RouteDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_RouteDecodeErrorZ_err(e: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_RouteDecodeErrorZ_err(e); - return nativeResponseValue; + export class LDKAPIError_FeeRateTooHigh extends LDKAPIError { + constructor(public err: String, public feerate: number) { super(); } } - // bool CResult_RouteDecodeErrorZ_is_ok(const struct LDKCResult_RouteDecodeErrorZ *NONNULL_PTR o); - export function CResult_RouteDecodeErrorZ_is_ok(o: number): boolean { + export class LDKAPIError_RouteError extends LDKAPIError { + constructor(public err: String) { super(); } + } + export class LDKAPIError_ChannelUnavailable extends LDKAPIError { + constructor(public err: String) { super(); } + } + export class LDKAPIError_MonitorUpdateFailed extends LDKAPIError { + constructor() { super(); } + } + export class LDKAPIError_IncompatibleShutdownScript extends LDKAPIError { + constructor(public script: number) { super(); } + } + export function LDKAPIError_ref_from_ptr(ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_LDKAPIError_ref_from_ptr(ptr); return nativeResponseValue; } - // void CResult_RouteDecodeErrorZ_free(struct LDKCResult_RouteDecodeErrorZ _res); - export function CResult_RouteDecodeErrorZ_free(_res: number): void { + // void CResult_NoneAPIErrorZ_get_ok(LDKCResult_NoneAPIErrorZ *NONNULL_PTR owner); + export function CResult_NoneAPIErrorZ_get_ok(owner: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_NoneAPIErrorZ_get_ok(owner); // debug statements here } - // uint64_t CResult_RouteDecodeErrorZ_clone_ptr(LDKCResult_RouteDecodeErrorZ *NONNULL_PTR arg); - export function CResult_RouteDecodeErrorZ_clone_ptr(arg: number): number { + // struct LDKAPIError CResult_NoneAPIErrorZ_get_err(LDKCResult_NoneAPIErrorZ *NONNULL_PTR owner); + export function CResult_NoneAPIErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_NoneAPIErrorZ_get_err(owner); return nativeResponseValue; } - // struct LDKCResult_RouteDecodeErrorZ CResult_RouteDecodeErrorZ_clone(const struct LDKCResult_RouteDecodeErrorZ *NONNULL_PTR orig); - export function CResult_RouteDecodeErrorZ_clone(orig: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_RouteDecodeErrorZ_clone(orig); - return nativeResponseValue; + export class LDKCOption_u16Z { + protected constructor() {} } - // struct LDKCResult_RouteParametersDecodeErrorZ CResult_RouteParametersDecodeErrorZ_ok(struct LDKRouteParameters o); - export function CResult_RouteParametersDecodeErrorZ_ok(o: number): number { + export class LDKCOption_u16Z_Some extends LDKCOption_u16Z { + constructor(public some: number) { super(); } + } + export class LDKCOption_u16Z_None extends LDKCOption_u16Z { + constructor() { super(); } + } + export function LDKCOption_u16Z_ref_from_ptr(ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteParametersDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_LDKCOption_u16Z_ref_from_ptr(ptr); return nativeResponseValue; } - // struct LDKCResult_RouteParametersDecodeErrorZ CResult_RouteParametersDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_RouteParametersDecodeErrorZ_err(e: number): number { + // struct LDKThirtyTwoBytes CResult__u832APIErrorZ_get_ok(LDKCResult__u832APIErrorZ *NONNULL_PTR owner); + export function CResult__u832APIErrorZ_get_ok(owner: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteParametersDecodeErrorZ_err(e); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult__u832APIErrorZ_get_ok(owner); + return decodeUint8Array(nativeResponseValue); } - // bool CResult_RouteParametersDecodeErrorZ_is_ok(const struct LDKCResult_RouteParametersDecodeErrorZ *NONNULL_PTR o); - export function CResult_RouteParametersDecodeErrorZ_is_ok(o: number): boolean { + // struct LDKAPIError CResult__u832APIErrorZ_get_err(LDKCResult__u832APIErrorZ *NONNULL_PTR owner); + export function CResult__u832APIErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteParametersDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult__u832APIErrorZ_get_err(owner); return nativeResponseValue; } - // void CResult_RouteParametersDecodeErrorZ_free(struct LDKCResult_RouteParametersDecodeErrorZ _res); - export function CResult_RouteParametersDecodeErrorZ_free(_res: number): void { + export class LDKPaymentSendFailure { + protected constructor() {} + } + export class LDKPaymentSendFailure_ParameterError extends LDKPaymentSendFailure { + constructor(public parameter_error: number) { super(); } + } + export class LDKPaymentSendFailure_PathParameterError extends LDKPaymentSendFailure { + constructor(public path_parameter_error: number[]) { super(); } + } + export class LDKPaymentSendFailure_AllFailedRetrySafe extends LDKPaymentSendFailure { + constructor(public all_failed_retry_safe: number[]) { super(); } + } + export class LDKPaymentSendFailure_PartialFailure extends LDKPaymentSendFailure { + constructor(public results: number[], public failed_paths_retry: number, public payment_id: Uint8Array) { super(); } + } + export function LDKPaymentSendFailure_ref_from_ptr(ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteParametersDecodeErrorZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_LDKPaymentSendFailure_ref_from_ptr(ptr); + return nativeResponseValue; } - // uint64_t CResult_RouteParametersDecodeErrorZ_clone_ptr(LDKCResult_RouteParametersDecodeErrorZ *NONNULL_PTR arg); - export function CResult_RouteParametersDecodeErrorZ_clone_ptr(arg: number): number { + // struct LDKThirtyTwoBytes CResult_PaymentIdPaymentSendFailureZ_get_ok(LDKCResult_PaymentIdPaymentSendFailureZ *NONNULL_PTR owner); + export function CResult_PaymentIdPaymentSendFailureZ_get_ok(owner: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteParametersDecodeErrorZ_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_PaymentIdPaymentSendFailureZ_get_ok(owner); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCResult_RouteParametersDecodeErrorZ CResult_RouteParametersDecodeErrorZ_clone(const struct LDKCResult_RouteParametersDecodeErrorZ *NONNULL_PTR orig); - export function CResult_RouteParametersDecodeErrorZ_clone(orig: number): number { + // struct LDKPaymentSendFailure CResult_PaymentIdPaymentSendFailureZ_get_err(LDKCResult_PaymentIdPaymentSendFailureZ *NONNULL_PTR owner); + export function CResult_PaymentIdPaymentSendFailureZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteParametersDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_PaymentIdPaymentSendFailureZ_get_err(owner); return nativeResponseValue; } - // void CVec_RouteHintZ_free(struct LDKCVec_RouteHintZ _res); - export function CVec_RouteHintZ_free(_res: number[]): void { + // void CResult_NonePaymentSendFailureZ_get_ok(LDKCResult_NonePaymentSendFailureZ *NONNULL_PTR owner); + export function CResult_NonePaymentSendFailureZ_get_ok(owner: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_RouteHintZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_NonePaymentSendFailureZ_get_ok(owner); // debug statements here } - // struct LDKCOption_u64Z COption_u64Z_some(uint64_t o); - export function COption_u64Z_some(o: number): number { + // struct LDKPaymentSendFailure CResult_NonePaymentSendFailureZ_get_err(LDKCResult_NonePaymentSendFailureZ *NONNULL_PTR owner); + export function CResult_NonePaymentSendFailureZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_u64Z_some(o); + const nativeResponseValue = wasm.TS_CResult_NonePaymentSendFailureZ_get_err(owner); return nativeResponseValue; } - // struct LDKCOption_u64Z COption_u64Z_none(void); - export function COption_u64Z_none(): number { + // struct LDKThirtyTwoBytes C2Tuple_PaymentHashPaymentIdZ_get_a(LDKC2Tuple_PaymentHashPaymentIdZ *NONNULL_PTR owner); + export function C2Tuple_PaymentHashPaymentIdZ_get_a(owner: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_u64Z_none(); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_C2Tuple_PaymentHashPaymentIdZ_get_a(owner); + return decodeUint8Array(nativeResponseValue); } - // void COption_u64Z_free(struct LDKCOption_u64Z _res); - export function COption_u64Z_free(_res: number): void { + // struct LDKThirtyTwoBytes C2Tuple_PaymentHashPaymentIdZ_get_b(LDKC2Tuple_PaymentHashPaymentIdZ *NONNULL_PTR owner); + export function C2Tuple_PaymentHashPaymentIdZ_get_b(owner: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_u64Z_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_C2Tuple_PaymentHashPaymentIdZ_get_b(owner); + return decodeUint8Array(nativeResponseValue); } - // uint64_t COption_u64Z_clone_ptr(LDKCOption_u64Z *NONNULL_PTR arg); - export function COption_u64Z_clone_ptr(arg: number): number { + // struct LDKC2Tuple_PaymentHashPaymentIdZ CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_get_ok(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ *NONNULL_PTR owner); + export function CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_u64Z_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_get_ok(owner); return nativeResponseValue; } - // struct LDKCOption_u64Z COption_u64Z_clone(const struct LDKCOption_u64Z *NONNULL_PTR orig); - export function COption_u64Z_clone(orig: number): number { + // struct LDKPaymentSendFailure CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_get_err(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ *NONNULL_PTR owner); + export function CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_u64Z_clone(orig); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_get_err(owner); return nativeResponseValue; } - // struct LDKCResult_PayeeDecodeErrorZ CResult_PayeeDecodeErrorZ_ok(struct LDKPayee o); - export function CResult_PayeeDecodeErrorZ_ok(o: number): number { + // struct LDKThirtyTwoBytes C2Tuple_PaymentHashPaymentSecretZ_get_a(LDKC2Tuple_PaymentHashPaymentSecretZ *NONNULL_PTR owner); + export function C2Tuple_PaymentHashPaymentSecretZ_get_a(owner: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PayeeDecodeErrorZ_ok(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_C2Tuple_PaymentHashPaymentSecretZ_get_a(owner); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCResult_PayeeDecodeErrorZ CResult_PayeeDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_PayeeDecodeErrorZ_err(e: number): number { + // struct LDKThirtyTwoBytes C2Tuple_PaymentHashPaymentSecretZ_get_b(LDKC2Tuple_PaymentHashPaymentSecretZ *NONNULL_PTR owner); + export function C2Tuple_PaymentHashPaymentSecretZ_get_b(owner: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PayeeDecodeErrorZ_err(e); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_C2Tuple_PaymentHashPaymentSecretZ_get_b(owner); + return decodeUint8Array(nativeResponseValue); } - // bool CResult_PayeeDecodeErrorZ_is_ok(const struct LDKCResult_PayeeDecodeErrorZ *NONNULL_PTR o); - export function CResult_PayeeDecodeErrorZ_is_ok(o: number): boolean { + // struct LDKC2Tuple_PaymentHashPaymentSecretZ CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_get_ok(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ *NONNULL_PTR owner); + export function CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PayeeDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_get_ok(owner); return nativeResponseValue; } - // void CResult_PayeeDecodeErrorZ_free(struct LDKCResult_PayeeDecodeErrorZ _res); - export function CResult_PayeeDecodeErrorZ_free(_res: number): void { + // void CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_get_err(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ *NONNULL_PTR owner); + export function CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_get_err(owner: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PayeeDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_get_err(owner); // debug statements here } - // uint64_t CResult_PayeeDecodeErrorZ_clone_ptr(LDKCResult_PayeeDecodeErrorZ *NONNULL_PTR arg); - export function CResult_PayeeDecodeErrorZ_clone_ptr(arg: number): number { + // struct LDKC2Tuple_PaymentHashPaymentSecretZ CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_get_ok(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ *NONNULL_PTR owner); + export function CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PayeeDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_get_ok(owner); return nativeResponseValue; } - // struct LDKCResult_PayeeDecodeErrorZ CResult_PayeeDecodeErrorZ_clone(const struct LDKCResult_PayeeDecodeErrorZ *NONNULL_PTR orig); - export function CResult_PayeeDecodeErrorZ_clone(orig: number): number { + // struct LDKAPIError CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_get_err(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ *NONNULL_PTR owner); + export function CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PayeeDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_get_err(owner); return nativeResponseValue; } - // void CVec_RouteHintHopZ_free(struct LDKCVec_RouteHintHopZ _res); - export function CVec_RouteHintHopZ_free(_res: number[]): void { + // struct LDKThirtyTwoBytes CResult_PaymentSecretNoneZ_get_ok(LDKCResult_PaymentSecretNoneZ *NONNULL_PTR owner); + export function CResult_PaymentSecretNoneZ_get_ok(owner: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_RouteHintHopZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_PaymentSecretNoneZ_get_ok(owner); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCResult_RouteHintDecodeErrorZ CResult_RouteHintDecodeErrorZ_ok(struct LDKRouteHint o); - export function CResult_RouteHintDecodeErrorZ_ok(o: number): number { + // void CResult_PaymentSecretNoneZ_get_err(LDKCResult_PaymentSecretNoneZ *NONNULL_PTR owner); + export function CResult_PaymentSecretNoneZ_get_err(owner: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteHintDecodeErrorZ_ok(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_PaymentSecretNoneZ_get_err(owner); + // debug statements here } - // struct LDKCResult_RouteHintDecodeErrorZ CResult_RouteHintDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_RouteHintDecodeErrorZ_err(e: number): number { + // struct LDKThirtyTwoBytes CResult_PaymentSecretAPIErrorZ_get_ok(LDKCResult_PaymentSecretAPIErrorZ *NONNULL_PTR owner); + export function CResult_PaymentSecretAPIErrorZ_get_ok(owner: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteHintDecodeErrorZ_err(e); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_PaymentSecretAPIErrorZ_get_ok(owner); + return decodeUint8Array(nativeResponseValue); } - // bool CResult_RouteHintDecodeErrorZ_is_ok(const struct LDKCResult_RouteHintDecodeErrorZ *NONNULL_PTR o); - export function CResult_RouteHintDecodeErrorZ_is_ok(o: number): boolean { + // struct LDKAPIError CResult_PaymentSecretAPIErrorZ_get_err(LDKCResult_PaymentSecretAPIErrorZ *NONNULL_PTR owner); + export function CResult_PaymentSecretAPIErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteHintDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_PaymentSecretAPIErrorZ_get_err(owner); return nativeResponseValue; } - // void CResult_RouteHintDecodeErrorZ_free(struct LDKCResult_RouteHintDecodeErrorZ _res); - export function CResult_RouteHintDecodeErrorZ_free(_res: number): void { + // struct LDKThirtyTwoBytes CResult_PaymentPreimageAPIErrorZ_get_ok(LDKCResult_PaymentPreimageAPIErrorZ *NONNULL_PTR owner); + export function CResult_PaymentPreimageAPIErrorZ_get_ok(owner: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteHintDecodeErrorZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_PaymentPreimageAPIErrorZ_get_ok(owner); + return decodeUint8Array(nativeResponseValue); } - // uint64_t CResult_RouteHintDecodeErrorZ_clone_ptr(LDKCResult_RouteHintDecodeErrorZ *NONNULL_PTR arg); - export function CResult_RouteHintDecodeErrorZ_clone_ptr(arg: number): number { + // struct LDKAPIError CResult_PaymentPreimageAPIErrorZ_get_err(LDKCResult_PaymentPreimageAPIErrorZ *NONNULL_PTR owner); + export function CResult_PaymentPreimageAPIErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteHintDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_PaymentPreimageAPIErrorZ_get_err(owner); return nativeResponseValue; } - // struct LDKCResult_RouteHintDecodeErrorZ CResult_RouteHintDecodeErrorZ_clone(const struct LDKCResult_RouteHintDecodeErrorZ *NONNULL_PTR orig); - export function CResult_RouteHintDecodeErrorZ_clone(orig: number): number { + + + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START + + export interface LDKWatch { + watch_channel (funding_txo: number, monitor: number): number; + update_channel (funding_txo: number, update: number): number; + release_pending_monitor_events (): number[]; + } + + export function LDKWatch_new(impl: LDKWatch): number { + throw new Error('unimplemented'); // TODO: bind to WASM + } + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END + + + // LDKCResult_NoneChannelMonitorUpdateErrZ Watch_watch_channel LDKWatch *NONNULL_PTR this_arg, struct LDKOutPoint funding_txo, struct LDKChannelMonitor monitor + export function Watch_watch_channel(this_arg: number, funding_txo: number, monitor: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteHintDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_Watch_watch_channel(this_arg, funding_txo, monitor); return nativeResponseValue; } - // struct LDKCResult_RouteHintHopDecodeErrorZ CResult_RouteHintHopDecodeErrorZ_ok(struct LDKRouteHintHop o); - export function CResult_RouteHintHopDecodeErrorZ_ok(o: number): number { + // LDKCResult_NoneChannelMonitorUpdateErrZ Watch_update_channel LDKWatch *NONNULL_PTR this_arg, struct LDKOutPoint funding_txo, struct LDKChannelMonitorUpdate update + export function Watch_update_channel(this_arg: number, funding_txo: number, update: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteHintHopDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_Watch_update_channel(this_arg, funding_txo, update); return nativeResponseValue; } - // struct LDKCResult_RouteHintHopDecodeErrorZ CResult_RouteHintHopDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_RouteHintHopDecodeErrorZ_err(e: number): number { + // LDKCVec_MonitorEventZ Watch_release_pending_monitor_events LDKWatch *NONNULL_PTR this_arg + export function Watch_release_pending_monitor_events(this_arg: number): number[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteHintHopDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_Watch_release_pending_monitor_events(this_arg); return nativeResponseValue; } - // bool CResult_RouteHintHopDecodeErrorZ_is_ok(const struct LDKCResult_RouteHintHopDecodeErrorZ *NONNULL_PTR o); - export function CResult_RouteHintHopDecodeErrorZ_is_ok(o: number): boolean { + + + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START + + export interface LDKBroadcasterInterface { + broadcast_transaction (tx: Uint8Array): void; + } + + export function LDKBroadcasterInterface_new(impl: LDKBroadcasterInterface): number { + throw new Error('unimplemented'); // TODO: bind to WASM + } + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END + + + // void BroadcasterInterface_broadcast_transaction LDKBroadcasterInterface *NONNULL_PTR this_arg, struct LDKTransaction tx + export function BroadcasterInterface_broadcast_transaction(this_arg: number, tx: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteHintHopDecodeErrorZ_is_ok(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_BroadcasterInterface_broadcast_transaction(this_arg, encodeUint8Array(tx)); + // debug statements here } - // void CResult_RouteHintHopDecodeErrorZ_free(struct LDKCResult_RouteHintHopDecodeErrorZ _res); - export function CResult_RouteHintHopDecodeErrorZ_free(_res: number): void { + + + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START + + export interface LDKKeysInterface { + get_node_secret (): Uint8Array; + get_destination_script (): Uint8Array; + get_shutdown_scriptpubkey (): number; + get_channel_signer (inbound: boolean, channel_value_satoshis: number): number; + get_secure_random_bytes (): Uint8Array; + read_chan_signer (reader: Uint8Array): number; + sign_invoice (invoice_preimage: Uint8Array): number; + get_inbound_payment_key_material (): Uint8Array; + } + + export function LDKKeysInterface_new(impl: LDKKeysInterface): number { + throw new Error('unimplemented'); // TODO: bind to WASM + } + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END + + + // LDKSecretKey KeysInterface_get_node_secret LDKKeysInterface *NONNULL_PTR this_arg + export function KeysInterface_get_node_secret(this_arg: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteHintHopDecodeErrorZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_KeysInterface_get_node_secret(this_arg); + return decodeUint8Array(nativeResponseValue); } - // uint64_t CResult_RouteHintHopDecodeErrorZ_clone_ptr(LDKCResult_RouteHintHopDecodeErrorZ *NONNULL_PTR arg); - export function CResult_RouteHintHopDecodeErrorZ_clone_ptr(arg: number): number { + // LDKCVec_u8Z KeysInterface_get_destination_script LDKKeysInterface *NONNULL_PTR this_arg + export function KeysInterface_get_destination_script(this_arg: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteHintHopDecodeErrorZ_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_KeysInterface_get_destination_script(this_arg); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCResult_RouteHintHopDecodeErrorZ CResult_RouteHintHopDecodeErrorZ_clone(const struct LDKCResult_RouteHintHopDecodeErrorZ *NONNULL_PTR orig); - export function CResult_RouteHintHopDecodeErrorZ_clone(orig: number): number { + // LDKShutdownScript KeysInterface_get_shutdown_scriptpubkey LDKKeysInterface *NONNULL_PTR this_arg + export function KeysInterface_get_shutdown_scriptpubkey(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteHintHopDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_KeysInterface_get_shutdown_scriptpubkey(this_arg); return nativeResponseValue; } - // void CVec_ChannelDetailsZ_free(struct LDKCVec_ChannelDetailsZ _res); - export function CVec_ChannelDetailsZ_free(_res: number[]): void { + // LDKSign KeysInterface_get_channel_signer LDKKeysInterface *NONNULL_PTR this_arg, bool inbound, uint64_t channel_value_satoshis + export function KeysInterface_get_channel_signer(this_arg: number, inbound: boolean, channel_value_satoshis: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_ChannelDetailsZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_KeysInterface_get_channel_signer(this_arg, inbound, channel_value_satoshis); + return nativeResponseValue; } - // struct LDKCResult_RouteLightningErrorZ CResult_RouteLightningErrorZ_ok(struct LDKRoute o); - export function CResult_RouteLightningErrorZ_ok(o: number): number { + // LDKThirtyTwoBytes KeysInterface_get_secure_random_bytes LDKKeysInterface *NONNULL_PTR this_arg + export function KeysInterface_get_secure_random_bytes(this_arg: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteLightningErrorZ_ok(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_KeysInterface_get_secure_random_bytes(this_arg); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCResult_RouteLightningErrorZ CResult_RouteLightningErrorZ_err(struct LDKLightningError e); - export function CResult_RouteLightningErrorZ_err(e: number): number { + // LDKCResult_SignDecodeErrorZ KeysInterface_read_chan_signer LDKKeysInterface *NONNULL_PTR this_arg, struct LDKu8slice reader + export function KeysInterface_read_chan_signer(this_arg: number, reader: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteLightningErrorZ_err(e); + const nativeResponseValue = wasm.TS_KeysInterface_read_chan_signer(this_arg, encodeUint8Array(reader)); return nativeResponseValue; } - // bool CResult_RouteLightningErrorZ_is_ok(const struct LDKCResult_RouteLightningErrorZ *NONNULL_PTR o); - export function CResult_RouteLightningErrorZ_is_ok(o: number): boolean { + // LDKCResult_RecoverableSignatureNoneZ KeysInterface_sign_invoice LDKKeysInterface *NONNULL_PTR this_arg, struct LDKCVec_u8Z invoice_preimage + export function KeysInterface_sign_invoice(this_arg: number, invoice_preimage: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteLightningErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_KeysInterface_sign_invoice(this_arg, encodeUint8Array(invoice_preimage)); return nativeResponseValue; } - // void CResult_RouteLightningErrorZ_free(struct LDKCResult_RouteLightningErrorZ _res); - export function CResult_RouteLightningErrorZ_free(_res: number): void { + // LDKThirtyTwoBytes KeysInterface_get_inbound_payment_key_material LDKKeysInterface *NONNULL_PTR this_arg + export function KeysInterface_get_inbound_payment_key_material(this_arg: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteLightningErrorZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_KeysInterface_get_inbound_payment_key_material(this_arg); + return decodeUint8Array(nativeResponseValue); } - // uint64_t CResult_RouteLightningErrorZ_clone_ptr(LDKCResult_RouteLightningErrorZ *NONNULL_PTR arg); - export function CResult_RouteLightningErrorZ_clone_ptr(arg: number): number { + + + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START + + export interface LDKFeeEstimator { + get_est_sat_per_1000_weight (confirmation_target: ConfirmationTarget): number; + } + + export function LDKFeeEstimator_new(impl: LDKFeeEstimator): number { + throw new Error('unimplemented'); // TODO: bind to WASM + } + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END + + + // uint32_t FeeEstimator_get_est_sat_per_1000_weight LDKFeeEstimator *NONNULL_PTR this_arg, enum LDKConfirmationTarget confirmation_target + export function FeeEstimator_get_est_sat_per_1000_weight(this_arg: number, confirmation_target: ConfirmationTarget): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteLightningErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_FeeEstimator_get_est_sat_per_1000_weight(this_arg, confirmation_target); return nativeResponseValue; } - // struct LDKCResult_RouteLightningErrorZ CResult_RouteLightningErrorZ_clone(const struct LDKCResult_RouteLightningErrorZ *NONNULL_PTR orig); - export function CResult_RouteLightningErrorZ_clone(orig: number): number { + + + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START + + export interface LDKLogger { + log (record: number): void; + } + + export function LDKLogger_new(impl: LDKLogger): number { + throw new Error('unimplemented'); // TODO: bind to WASM + } + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END + + + // struct LDKThirtyTwoBytes C2Tuple_BlockHashChannelManagerZ_get_a(LDKC2Tuple_BlockHashChannelManagerZ *NONNULL_PTR owner); + export function C2Tuple_BlockHashChannelManagerZ_get_a(owner: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RouteLightningErrorZ_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_C2Tuple_BlockHashChannelManagerZ_get_a(owner); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCResult_TxOutAccessErrorZ CResult_TxOutAccessErrorZ_ok(struct LDKTxOut o); - export function CResult_TxOutAccessErrorZ_ok(o: number): number { + // struct LDKChannelManager *C2Tuple_BlockHashChannelManagerZ_get_b(LDKC2Tuple_BlockHashChannelManagerZ *NONNULL_PTR owner); + export function C2Tuple_BlockHashChannelManagerZ_get_b(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TxOutAccessErrorZ_ok(o); + const nativeResponseValue = wasm.TS_C2Tuple_BlockHashChannelManagerZ_get_b(owner); return nativeResponseValue; } - // struct LDKCResult_TxOutAccessErrorZ CResult_TxOutAccessErrorZ_err(enum LDKAccessError e); - export function CResult_TxOutAccessErrorZ_err(e: AccessError): number { + // struct LDKC2Tuple_BlockHashChannelManagerZ *CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_ok(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ *NONNULL_PTR owner); + export function CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_ok(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TxOutAccessErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_ok(owner); return nativeResponseValue; } - // bool CResult_TxOutAccessErrorZ_is_ok(const struct LDKCResult_TxOutAccessErrorZ *NONNULL_PTR o); - export function CResult_TxOutAccessErrorZ_is_ok(o: number): boolean { + // struct LDKDecodeError CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_err(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ *NONNULL_PTR owner); + export function CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_err(owner: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TxOutAccessErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_err(owner); return nativeResponseValue; } - // void CResult_TxOutAccessErrorZ_free(struct LDKCResult_TxOutAccessErrorZ _res); - export function CResult_TxOutAccessErrorZ_free(_res: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); + + + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START + + export interface LDKMessageSendEventsProvider { + get_and_clear_pending_msg_events (): number[]; } - const nativeResponseValue = wasm.CResult_TxOutAccessErrorZ_free(_res); - // debug statements here - } - // uint64_t CResult_TxOutAccessErrorZ_clone_ptr(LDKCResult_TxOutAccessErrorZ *NONNULL_PTR arg); - export function CResult_TxOutAccessErrorZ_clone_ptr(arg: number): number { + + export function LDKMessageSendEventsProvider_new(impl: LDKMessageSendEventsProvider): number { + throw new Error('unimplemented'); // TODO: bind to WASM + } + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END + + + // LDKCVec_MessageSendEventZ MessageSendEventsProvider_get_and_clear_pending_msg_events LDKMessageSendEventsProvider *NONNULL_PTR this_arg + export function MessageSendEventsProvider_get_and_clear_pending_msg_events(this_arg: number): number[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TxOutAccessErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_MessageSendEventsProvider_get_and_clear_pending_msg_events(this_arg); return nativeResponseValue; } - // struct LDKCResult_TxOutAccessErrorZ CResult_TxOutAccessErrorZ_clone(const struct LDKCResult_TxOutAccessErrorZ *NONNULL_PTR orig); - export function CResult_TxOutAccessErrorZ_clone(orig: number): number { + + + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START + + export interface LDKEventHandler { + handle_event (event: number): void; + } + + export function LDKEventHandler_new(impl: LDKEventHandler): number { + throw new Error('unimplemented'); // TODO: bind to WASM + } + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END + + + // void EventHandler_handle_event LDKEventHandler *NONNULL_PTR this_arg, const struct LDKEvent *NONNULL_PTR event + export function EventHandler_handle_event(this_arg: number, event: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TxOutAccessErrorZ_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_EventHandler_handle_event(this_arg, event); + // debug statements here } - // uint64_t C2Tuple_usizeTransactionZ_clone_ptr(LDKC2Tuple_usizeTransactionZ *NONNULL_PTR arg); - export function C2Tuple_usizeTransactionZ_clone_ptr(arg: number): number { + + + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START + + export interface LDKEventsProvider { + process_pending_events (handler: number): void; + } + + export function LDKEventsProvider_new(impl: LDKEventsProvider): number { + throw new Error('unimplemented'); // TODO: bind to WASM + } + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END + + + // void EventsProvider_process_pending_events LDKEventsProvider *NONNULL_PTR this_arg, struct LDKEventHandler handler + export function EventsProvider_process_pending_events(this_arg: number, handler: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_usizeTransactionZ_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_EventsProvider_process_pending_events(this_arg, handler); + // debug statements here } - // struct LDKC2Tuple_usizeTransactionZ C2Tuple_usizeTransactionZ_clone(const struct LDKC2Tuple_usizeTransactionZ *NONNULL_PTR orig); - export function C2Tuple_usizeTransactionZ_clone(orig: number): number { + + + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START + + export interface LDKListen { + block_connected (block: Uint8Array, height: number): void; + block_disconnected (header: Uint8Array, height: number): void; + } + + export function LDKListen_new(impl: LDKListen): number { + throw new Error('unimplemented'); // TODO: bind to WASM + } + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END + + + // void Listen_block_connected LDKListen *NONNULL_PTR this_arg, struct LDKu8slice block, uint32_t height + export function Listen_block_connected(this_arg: number, block: Uint8Array, height: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_usizeTransactionZ_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Listen_block_connected(this_arg, encodeUint8Array(block), height); + // debug statements here } - // struct LDKC2Tuple_usizeTransactionZ C2Tuple_usizeTransactionZ_new(uintptr_t a, struct LDKTransaction b); - export function C2Tuple_usizeTransactionZ_new(a: number, b: Uint8Array): number { + // void Listen_block_disconnected LDKListen *NONNULL_PTR this_arg, const uint8_t (*header)[80], uint32_t height + export function Listen_block_disconnected(this_arg: number, header: Uint8Array, height: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_usizeTransactionZ_new(a, encodeArray(b)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Listen_block_disconnected(this_arg, encodeUint8Array(header), height); + // debug statements here } - // void C2Tuple_usizeTransactionZ_free(struct LDKC2Tuple_usizeTransactionZ _res); - export function C2Tuple_usizeTransactionZ_free(_res: number): void { + + + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START + + export interface LDKConfirm { + transactions_confirmed (header: Uint8Array, txdata: number[], height: number): void; + transaction_unconfirmed (txid: Uint8Array): void; + best_block_updated (header: Uint8Array, height: number): void; + get_relevant_txids (): Uint8Array[]; + } + + export function LDKConfirm_new(impl: LDKConfirm): number { + throw new Error('unimplemented'); // TODO: bind to WASM + } + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END + + + // void Confirm_transactions_confirmed LDKConfirm *NONNULL_PTR this_arg, const uint8_t (*header)[80], struct LDKCVec_C2Tuple_usizeTransactionZZ txdata, uint32_t height + export function Confirm_transactions_confirmed(this_arg: number, header: Uint8Array, txdata: number[], height: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_usizeTransactionZ_free(_res); + const nativeResponseValue = wasm.TS_Confirm_transactions_confirmed(this_arg, encodeUint8Array(header), txdata, height); // debug statements here } - // void CVec_C2Tuple_usizeTransactionZZ_free(struct LDKCVec_C2Tuple_usizeTransactionZZ _res); - export function CVec_C2Tuple_usizeTransactionZZ_free(_res: number[]): void { + // void Confirm_transaction_unconfirmed LDKConfirm *NONNULL_PTR this_arg, const uint8_t (*txid)[32] + export function Confirm_transaction_unconfirmed(this_arg: number, txid: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_C2Tuple_usizeTransactionZZ_free(_res); + const nativeResponseValue = wasm.TS_Confirm_transaction_unconfirmed(this_arg, encodeUint8Array(txid)); // debug statements here } - // void CVec_TxidZ_free(struct LDKCVec_TxidZ _res); - export function CVec_TxidZ_free(_res: Uint8Array[]): void { + // void Confirm_best_block_updated LDKConfirm *NONNULL_PTR this_arg, const uint8_t (*header)[80], uint32_t height + export function Confirm_best_block_updated(this_arg: number, header: Uint8Array, height: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_TxidZ_free(_res); + const nativeResponseValue = wasm.TS_Confirm_best_block_updated(this_arg, encodeUint8Array(header), height); // debug statements here } - // struct LDKCResult_NoneChannelMonitorUpdateErrZ CResult_NoneChannelMonitorUpdateErrZ_ok(void); - export function CResult_NoneChannelMonitorUpdateErrZ_ok(): number { + // LDKCVec_TxidZ Confirm_get_relevant_txids LDKConfirm *NONNULL_PTR this_arg + export function Confirm_get_relevant_txids(this_arg: number): Uint8Array[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneChannelMonitorUpdateErrZ_ok(); + const nativeResponseValue = wasm.TS_Confirm_get_relevant_txids(this_arg); return nativeResponseValue; } - // struct LDKCResult_NoneChannelMonitorUpdateErrZ CResult_NoneChannelMonitorUpdateErrZ_err(enum LDKChannelMonitorUpdateErr e); - export function CResult_NoneChannelMonitorUpdateErrZ_err(e: ChannelMonitorUpdateErr): number { + + + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START + + export interface LDKPersist { + persist_new_channel (channel_id: number, data: number, update_id: number): number; + update_persisted_channel (channel_id: number, update: number, data: number, update_id: number): number; + } + + export function LDKPersist_new(impl: LDKPersist): number { + throw new Error('unimplemented'); // TODO: bind to WASM + } + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END + + + // 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 + export function Persist_persist_new_channel(this_arg: number, channel_id: number, data: number, update_id: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneChannelMonitorUpdateErrZ_err(e); + const nativeResponseValue = wasm.TS_Persist_persist_new_channel(this_arg, channel_id, data, update_id); return nativeResponseValue; } - // bool CResult_NoneChannelMonitorUpdateErrZ_is_ok(const struct LDKCResult_NoneChannelMonitorUpdateErrZ *NONNULL_PTR o); - export function CResult_NoneChannelMonitorUpdateErrZ_is_ok(o: number): boolean { + // 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 + export function Persist_update_persisted_channel(this_arg: number, channel_id: number, update: number, data: number, update_id: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneChannelMonitorUpdateErrZ_is_ok(o); + const nativeResponseValue = wasm.TS_Persist_update_persisted_channel(this_arg, channel_id, update, data, update_id); return nativeResponseValue; } - // void CResult_NoneChannelMonitorUpdateErrZ_free(struct LDKCResult_NoneChannelMonitorUpdateErrZ _res); - export function CResult_NoneChannelMonitorUpdateErrZ_free(_res: number): void { + + + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START + + export interface LDKChannelMessageHandler { + handle_open_channel (their_node_id: Uint8Array, their_features: number, msg: number): void; + handle_accept_channel (their_node_id: Uint8Array, their_features: number, msg: number): void; + handle_funding_created (their_node_id: Uint8Array, msg: number): void; + handle_funding_signed (their_node_id: Uint8Array, msg: number): void; + handle_funding_locked (their_node_id: Uint8Array, msg: number): void; + handle_shutdown (their_node_id: Uint8Array, their_features: number, msg: number): void; + handle_closing_signed (their_node_id: Uint8Array, msg: number): void; + handle_update_add_htlc (their_node_id: Uint8Array, msg: number): void; + handle_update_fulfill_htlc (their_node_id: Uint8Array, msg: number): void; + handle_update_fail_htlc (their_node_id: Uint8Array, msg: number): void; + handle_update_fail_malformed_htlc (their_node_id: Uint8Array, msg: number): void; + handle_commitment_signed (their_node_id: Uint8Array, msg: number): void; + handle_revoke_and_ack (their_node_id: Uint8Array, msg: number): void; + handle_update_fee (their_node_id: Uint8Array, msg: number): void; + handle_announcement_signatures (their_node_id: Uint8Array, msg: number): void; + peer_disconnected (their_node_id: Uint8Array, no_connection_possible: boolean): void; + peer_connected (their_node_id: Uint8Array, msg: number): void; + handle_channel_reestablish (their_node_id: Uint8Array, msg: number): void; + handle_channel_update (their_node_id: Uint8Array, msg: number): void; + handle_error (their_node_id: Uint8Array, msg: number): void; + } + + export function LDKChannelMessageHandler_new(impl: LDKChannelMessageHandler, MessageSendEventsProvider: LDKMessageSendEventsProvider): number { + throw new Error('unimplemented'); // TODO: bind to WASM + } + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END + + + // 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 + export function ChannelMessageHandler_handle_open_channel(this_arg: number, their_node_id: Uint8Array, their_features: number, msg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneChannelMonitorUpdateErrZ_free(_res); + const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_open_channel(this_arg, encodeUint8Array(their_node_id), their_features, msg); // debug statements here } - // uint64_t CResult_NoneChannelMonitorUpdateErrZ_clone_ptr(LDKCResult_NoneChannelMonitorUpdateErrZ *NONNULL_PTR arg); - export function CResult_NoneChannelMonitorUpdateErrZ_clone_ptr(arg: number): number { + // 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 + export function ChannelMessageHandler_handle_accept_channel(this_arg: number, their_node_id: Uint8Array, their_features: number, msg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneChannelMonitorUpdateErrZ_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_accept_channel(this_arg, encodeUint8Array(their_node_id), their_features, msg); + // debug statements here } - // struct LDKCResult_NoneChannelMonitorUpdateErrZ CResult_NoneChannelMonitorUpdateErrZ_clone(const struct LDKCResult_NoneChannelMonitorUpdateErrZ *NONNULL_PTR orig); - export function CResult_NoneChannelMonitorUpdateErrZ_clone(orig: number): number { + // void ChannelMessageHandler_handle_funding_created LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKFundingCreated *NONNULL_PTR msg + export function ChannelMessageHandler_handle_funding_created(this_arg: number, their_node_id: Uint8Array, msg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneChannelMonitorUpdateErrZ_clone(orig); - return nativeResponseValue; - } - // void CVec_MonitorEventZ_free(struct LDKCVec_MonitorEventZ _res); - export function CVec_MonitorEventZ_free(_res: number[]): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CVec_MonitorEventZ_free(_res); - // debug statements here - } - // struct LDKCOption_C2Tuple_usizeTransactionZZ COption_C2Tuple_usizeTransactionZZ_some(struct LDKC2Tuple_usizeTransactionZ o); - export function COption_C2Tuple_usizeTransactionZZ_some(o: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.COption_C2Tuple_usizeTransactionZZ_some(o); - return nativeResponseValue; - } - // struct LDKCOption_C2Tuple_usizeTransactionZZ COption_C2Tuple_usizeTransactionZZ_none(void); - export function COption_C2Tuple_usizeTransactionZZ_none(): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.COption_C2Tuple_usizeTransactionZZ_none(); - return nativeResponseValue; - } - // void COption_C2Tuple_usizeTransactionZZ_free(struct LDKCOption_C2Tuple_usizeTransactionZZ _res); - export function COption_C2Tuple_usizeTransactionZZ_free(_res: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.COption_C2Tuple_usizeTransactionZZ_free(_res); - // debug statements here - } - // uint64_t COption_C2Tuple_usizeTransactionZZ_clone_ptr(LDKCOption_C2Tuple_usizeTransactionZZ *NONNULL_PTR arg); - export function COption_C2Tuple_usizeTransactionZZ_clone_ptr(arg: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.COption_C2Tuple_usizeTransactionZZ_clone_ptr(arg); - return nativeResponseValue; - } - // struct LDKCOption_C2Tuple_usizeTransactionZZ COption_C2Tuple_usizeTransactionZZ_clone(const struct LDKCOption_C2Tuple_usizeTransactionZZ *NONNULL_PTR orig); - export function COption_C2Tuple_usizeTransactionZZ_clone(orig: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.COption_C2Tuple_usizeTransactionZZ_clone(orig); - return nativeResponseValue; - } - // struct LDKCOption_ClosureReasonZ COption_ClosureReasonZ_some(struct LDKClosureReason o); - export function COption_ClosureReasonZ_some(o: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.COption_ClosureReasonZ_some(o); - return nativeResponseValue; - } - // struct LDKCOption_ClosureReasonZ COption_ClosureReasonZ_none(void); - export function COption_ClosureReasonZ_none(): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.COption_ClosureReasonZ_none(); - return nativeResponseValue; - } - // void COption_ClosureReasonZ_free(struct LDKCOption_ClosureReasonZ _res); - export function COption_ClosureReasonZ_free(_res: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.COption_ClosureReasonZ_free(_res); - // debug statements here - } - // uint64_t COption_ClosureReasonZ_clone_ptr(LDKCOption_ClosureReasonZ *NONNULL_PTR arg); - export function COption_ClosureReasonZ_clone_ptr(arg: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.COption_ClosureReasonZ_clone_ptr(arg); - return nativeResponseValue; - } - // struct LDKCOption_ClosureReasonZ COption_ClosureReasonZ_clone(const struct LDKCOption_ClosureReasonZ *NONNULL_PTR orig); - export function COption_ClosureReasonZ_clone(orig: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.COption_ClosureReasonZ_clone(orig); - return nativeResponseValue; - } - // struct LDKCResult_COption_ClosureReasonZDecodeErrorZ CResult_COption_ClosureReasonZDecodeErrorZ_ok(struct LDKCOption_ClosureReasonZ o); - export function CResult_COption_ClosureReasonZDecodeErrorZ_ok(o: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_COption_ClosureReasonZDecodeErrorZ_ok(o); - return nativeResponseValue; - } - // struct LDKCResult_COption_ClosureReasonZDecodeErrorZ CResult_COption_ClosureReasonZDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_COption_ClosureReasonZDecodeErrorZ_err(e: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_COption_ClosureReasonZDecodeErrorZ_err(e); - return nativeResponseValue; - } - // bool CResult_COption_ClosureReasonZDecodeErrorZ_is_ok(const struct LDKCResult_COption_ClosureReasonZDecodeErrorZ *NONNULL_PTR o); - export function CResult_COption_ClosureReasonZDecodeErrorZ_is_ok(o: number): boolean { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_COption_ClosureReasonZDecodeErrorZ_is_ok(o); - return nativeResponseValue; - } - // void CResult_COption_ClosureReasonZDecodeErrorZ_free(struct LDKCResult_COption_ClosureReasonZDecodeErrorZ _res); - export function CResult_COption_ClosureReasonZDecodeErrorZ_free(_res: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_COption_ClosureReasonZDecodeErrorZ_free(_res); - // debug statements here - } - // uint64_t CResult_COption_ClosureReasonZDecodeErrorZ_clone_ptr(LDKCResult_COption_ClosureReasonZDecodeErrorZ *NONNULL_PTR arg); - export function CResult_COption_ClosureReasonZDecodeErrorZ_clone_ptr(arg: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_COption_ClosureReasonZDecodeErrorZ_clone_ptr(arg); - return nativeResponseValue; - } - // struct LDKCResult_COption_ClosureReasonZDecodeErrorZ CResult_COption_ClosureReasonZDecodeErrorZ_clone(const struct LDKCResult_COption_ClosureReasonZDecodeErrorZ *NONNULL_PTR orig); - export function CResult_COption_ClosureReasonZDecodeErrorZ_clone(orig: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_COption_ClosureReasonZDecodeErrorZ_clone(orig); - return nativeResponseValue; - } - // struct LDKCOption_NetworkUpdateZ COption_NetworkUpdateZ_some(struct LDKNetworkUpdate o); - export function COption_NetworkUpdateZ_some(o: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.COption_NetworkUpdateZ_some(o); - return nativeResponseValue; - } - // struct LDKCOption_NetworkUpdateZ COption_NetworkUpdateZ_none(void); - export function COption_NetworkUpdateZ_none(): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.COption_NetworkUpdateZ_none(); - return nativeResponseValue; - } - // void COption_NetworkUpdateZ_free(struct LDKCOption_NetworkUpdateZ _res); - export function COption_NetworkUpdateZ_free(_res: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.COption_NetworkUpdateZ_free(_res); - // debug statements here - } - // uint64_t COption_NetworkUpdateZ_clone_ptr(LDKCOption_NetworkUpdateZ *NONNULL_PTR arg); - export function COption_NetworkUpdateZ_clone_ptr(arg: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.COption_NetworkUpdateZ_clone_ptr(arg); - return nativeResponseValue; - } - // struct LDKCOption_NetworkUpdateZ COption_NetworkUpdateZ_clone(const struct LDKCOption_NetworkUpdateZ *NONNULL_PTR orig); - export function COption_NetworkUpdateZ_clone(orig: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.COption_NetworkUpdateZ_clone(orig); - return nativeResponseValue; - } - // void CVec_SpendableOutputDescriptorZ_free(struct LDKCVec_SpendableOutputDescriptorZ _res); - export function CVec_SpendableOutputDescriptorZ_free(_res: number[]): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CVec_SpendableOutputDescriptorZ_free(_res); - // debug statements here - } - // struct LDKCOption_EventZ COption_EventZ_some(struct LDKEvent o); - export function COption_EventZ_some(o: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.COption_EventZ_some(o); - return nativeResponseValue; - } - // struct LDKCOption_EventZ COption_EventZ_none(void); - export function COption_EventZ_none(): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.COption_EventZ_none(); - return nativeResponseValue; - } - // void COption_EventZ_free(struct LDKCOption_EventZ _res); - export function COption_EventZ_free(_res: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.COption_EventZ_free(_res); - // debug statements here - } - // uint64_t COption_EventZ_clone_ptr(LDKCOption_EventZ *NONNULL_PTR arg); - export function COption_EventZ_clone_ptr(arg: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.COption_EventZ_clone_ptr(arg); - return nativeResponseValue; - } - // struct LDKCOption_EventZ COption_EventZ_clone(const struct LDKCOption_EventZ *NONNULL_PTR orig); - export function COption_EventZ_clone(orig: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.COption_EventZ_clone(orig); - return nativeResponseValue; - } - // struct LDKCResult_COption_EventZDecodeErrorZ CResult_COption_EventZDecodeErrorZ_ok(struct LDKCOption_EventZ o); - export function CResult_COption_EventZDecodeErrorZ_ok(o: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_COption_EventZDecodeErrorZ_ok(o); - return nativeResponseValue; - } - // struct LDKCResult_COption_EventZDecodeErrorZ CResult_COption_EventZDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_COption_EventZDecodeErrorZ_err(e: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_COption_EventZDecodeErrorZ_err(e); - return nativeResponseValue; - } - // bool CResult_COption_EventZDecodeErrorZ_is_ok(const struct LDKCResult_COption_EventZDecodeErrorZ *NONNULL_PTR o); - export function CResult_COption_EventZDecodeErrorZ_is_ok(o: number): boolean { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_COption_EventZDecodeErrorZ_is_ok(o); - return nativeResponseValue; - } - // void CResult_COption_EventZDecodeErrorZ_free(struct LDKCResult_COption_EventZDecodeErrorZ _res); - export function CResult_COption_EventZDecodeErrorZ_free(_res: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_COption_EventZDecodeErrorZ_free(_res); - // debug statements here - } - // uint64_t CResult_COption_EventZDecodeErrorZ_clone_ptr(LDKCResult_COption_EventZDecodeErrorZ *NONNULL_PTR arg); - export function CResult_COption_EventZDecodeErrorZ_clone_ptr(arg: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_COption_EventZDecodeErrorZ_clone_ptr(arg); - return nativeResponseValue; - } - // struct LDKCResult_COption_EventZDecodeErrorZ CResult_COption_EventZDecodeErrorZ_clone(const struct LDKCResult_COption_EventZDecodeErrorZ *NONNULL_PTR orig); - export function CResult_COption_EventZDecodeErrorZ_clone(orig: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_COption_EventZDecodeErrorZ_clone(orig); - return nativeResponseValue; - } - // void CVec_MessageSendEventZ_free(struct LDKCVec_MessageSendEventZ _res); - export function CVec_MessageSendEventZ_free(_res: number[]): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CVec_MessageSendEventZ_free(_res); - // debug statements here - } - // struct LDKCResult_ScoringParametersDecodeErrorZ CResult_ScoringParametersDecodeErrorZ_ok(struct LDKScoringParameters o); - export function CResult_ScoringParametersDecodeErrorZ_ok(o: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_ScoringParametersDecodeErrorZ_ok(o); - return nativeResponseValue; - } - // struct LDKCResult_ScoringParametersDecodeErrorZ CResult_ScoringParametersDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_ScoringParametersDecodeErrorZ_err(e: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_ScoringParametersDecodeErrorZ_err(e); - return nativeResponseValue; - } - // bool CResult_ScoringParametersDecodeErrorZ_is_ok(const struct LDKCResult_ScoringParametersDecodeErrorZ *NONNULL_PTR o); - export function CResult_ScoringParametersDecodeErrorZ_is_ok(o: number): boolean { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_ScoringParametersDecodeErrorZ_is_ok(o); - return nativeResponseValue; - } - // void CResult_ScoringParametersDecodeErrorZ_free(struct LDKCResult_ScoringParametersDecodeErrorZ _res); - export function CResult_ScoringParametersDecodeErrorZ_free(_res: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_ScoringParametersDecodeErrorZ_free(_res); - // debug statements here - } - // struct LDKCResult_ScorerDecodeErrorZ CResult_ScorerDecodeErrorZ_ok(struct LDKScorer o); - export function CResult_ScorerDecodeErrorZ_ok(o: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_ScorerDecodeErrorZ_ok(o); - return nativeResponseValue; - } - // struct LDKCResult_ScorerDecodeErrorZ CResult_ScorerDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_ScorerDecodeErrorZ_err(e: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_ScorerDecodeErrorZ_err(e); - return nativeResponseValue; - } - // bool CResult_ScorerDecodeErrorZ_is_ok(const struct LDKCResult_ScorerDecodeErrorZ *NONNULL_PTR o); - export function CResult_ScorerDecodeErrorZ_is_ok(o: number): boolean { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_ScorerDecodeErrorZ_is_ok(o); - return nativeResponseValue; - } - // void CResult_ScorerDecodeErrorZ_free(struct LDKCResult_ScorerDecodeErrorZ _res); - export function CResult_ScorerDecodeErrorZ_free(_res: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_ScorerDecodeErrorZ_free(_res); - // debug statements here - } - // struct LDKCResult_InitFeaturesDecodeErrorZ CResult_InitFeaturesDecodeErrorZ_ok(struct LDKInitFeatures o); - export function CResult_InitFeaturesDecodeErrorZ_ok(o: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_InitFeaturesDecodeErrorZ_ok(o); - return nativeResponseValue; - } - // struct LDKCResult_InitFeaturesDecodeErrorZ CResult_InitFeaturesDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_InitFeaturesDecodeErrorZ_err(e: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_InitFeaturesDecodeErrorZ_err(e); - return nativeResponseValue; - } - // bool CResult_InitFeaturesDecodeErrorZ_is_ok(const struct LDKCResult_InitFeaturesDecodeErrorZ *NONNULL_PTR o); - export function CResult_InitFeaturesDecodeErrorZ_is_ok(o: number): boolean { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_InitFeaturesDecodeErrorZ_is_ok(o); - return nativeResponseValue; - } - // void CResult_InitFeaturesDecodeErrorZ_free(struct LDKCResult_InitFeaturesDecodeErrorZ _res); - export function CResult_InitFeaturesDecodeErrorZ_free(_res: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_InitFeaturesDecodeErrorZ_free(_res); - // debug statements here - } - // struct LDKCResult_ChannelFeaturesDecodeErrorZ CResult_ChannelFeaturesDecodeErrorZ_ok(struct LDKChannelFeatures o); - export function CResult_ChannelFeaturesDecodeErrorZ_ok(o: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_ChannelFeaturesDecodeErrorZ_ok(o); - return nativeResponseValue; - } - // struct LDKCResult_ChannelFeaturesDecodeErrorZ CResult_ChannelFeaturesDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_ChannelFeaturesDecodeErrorZ_err(e: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_ChannelFeaturesDecodeErrorZ_err(e); - return nativeResponseValue; - } - // bool CResult_ChannelFeaturesDecodeErrorZ_is_ok(const struct LDKCResult_ChannelFeaturesDecodeErrorZ *NONNULL_PTR o); - export function CResult_ChannelFeaturesDecodeErrorZ_is_ok(o: number): boolean { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_ChannelFeaturesDecodeErrorZ_is_ok(o); - return nativeResponseValue; - } - // void CResult_ChannelFeaturesDecodeErrorZ_free(struct LDKCResult_ChannelFeaturesDecodeErrorZ _res); - export function CResult_ChannelFeaturesDecodeErrorZ_free(_res: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_ChannelFeaturesDecodeErrorZ_free(_res); - // debug statements here - } - // struct LDKCResult_NodeFeaturesDecodeErrorZ CResult_NodeFeaturesDecodeErrorZ_ok(struct LDKNodeFeatures o); - export function CResult_NodeFeaturesDecodeErrorZ_ok(o: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_NodeFeaturesDecodeErrorZ_ok(o); - return nativeResponseValue; - } - // struct LDKCResult_NodeFeaturesDecodeErrorZ CResult_NodeFeaturesDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_NodeFeaturesDecodeErrorZ_err(e: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_NodeFeaturesDecodeErrorZ_err(e); - return nativeResponseValue; - } - // bool CResult_NodeFeaturesDecodeErrorZ_is_ok(const struct LDKCResult_NodeFeaturesDecodeErrorZ *NONNULL_PTR o); - export function CResult_NodeFeaturesDecodeErrorZ_is_ok(o: number): boolean { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_NodeFeaturesDecodeErrorZ_is_ok(o); - return nativeResponseValue; - } - // void CResult_NodeFeaturesDecodeErrorZ_free(struct LDKCResult_NodeFeaturesDecodeErrorZ _res); - export function CResult_NodeFeaturesDecodeErrorZ_free(_res: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_NodeFeaturesDecodeErrorZ_free(_res); - // debug statements here - } - // struct LDKCResult_InvoiceFeaturesDecodeErrorZ CResult_InvoiceFeaturesDecodeErrorZ_ok(struct LDKInvoiceFeatures o); - export function CResult_InvoiceFeaturesDecodeErrorZ_ok(o: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_InvoiceFeaturesDecodeErrorZ_ok(o); - return nativeResponseValue; - } - // struct LDKCResult_InvoiceFeaturesDecodeErrorZ CResult_InvoiceFeaturesDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_InvoiceFeaturesDecodeErrorZ_err(e: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_InvoiceFeaturesDecodeErrorZ_err(e); - return nativeResponseValue; - } - // bool CResult_InvoiceFeaturesDecodeErrorZ_is_ok(const struct LDKCResult_InvoiceFeaturesDecodeErrorZ *NONNULL_PTR o); - export function CResult_InvoiceFeaturesDecodeErrorZ_is_ok(o: number): boolean { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_InvoiceFeaturesDecodeErrorZ_is_ok(o); - return nativeResponseValue; - } - // void CResult_InvoiceFeaturesDecodeErrorZ_free(struct LDKCResult_InvoiceFeaturesDecodeErrorZ _res); - export function CResult_InvoiceFeaturesDecodeErrorZ_free(_res: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_InvoiceFeaturesDecodeErrorZ_free(_res); - // debug statements here - } - // struct LDKCResult_ChannelTypeFeaturesDecodeErrorZ CResult_ChannelTypeFeaturesDecodeErrorZ_ok(struct LDKChannelTypeFeatures o); - export function CResult_ChannelTypeFeaturesDecodeErrorZ_ok(o: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_ChannelTypeFeaturesDecodeErrorZ_ok(o); - return nativeResponseValue; - } - // struct LDKCResult_ChannelTypeFeaturesDecodeErrorZ CResult_ChannelTypeFeaturesDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_ChannelTypeFeaturesDecodeErrorZ_err(e: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_ChannelTypeFeaturesDecodeErrorZ_err(e); - return nativeResponseValue; - } - // bool CResult_ChannelTypeFeaturesDecodeErrorZ_is_ok(const struct LDKCResult_ChannelTypeFeaturesDecodeErrorZ *NONNULL_PTR o); - export function CResult_ChannelTypeFeaturesDecodeErrorZ_is_ok(o: number): boolean { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_ChannelTypeFeaturesDecodeErrorZ_is_ok(o); - return nativeResponseValue; - } - // void CResult_ChannelTypeFeaturesDecodeErrorZ_free(struct LDKCResult_ChannelTypeFeaturesDecodeErrorZ _res); - export function CResult_ChannelTypeFeaturesDecodeErrorZ_free(_res: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_ChannelTypeFeaturesDecodeErrorZ_free(_res); - // debug statements here - } - // struct LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_ok(struct LDKDelayedPaymentOutputDescriptor o); - export function CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_ok(o: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_ok(o); - return nativeResponseValue; - } - // struct LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_err(e: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_err(e); - return nativeResponseValue; - } - // bool CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_is_ok(const struct LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR o); - export function CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_is_ok(o: number): boolean { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_is_ok(o); - return nativeResponseValue; - } - // void CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_free(struct LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ _res); - export function CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_free(_res: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_free(_res); - // debug statements here - } - // uint64_t CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone_ptr(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR arg); - export function CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone_ptr(arg: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone_ptr(arg); - return nativeResponseValue; - } - // struct LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone(const struct LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR orig); - export function CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone(orig: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone(orig); - return nativeResponseValue; - } - // struct LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ CResult_StaticPaymentOutputDescriptorDecodeErrorZ_ok(struct LDKStaticPaymentOutputDescriptor o); - export function CResult_StaticPaymentOutputDescriptorDecodeErrorZ_ok(o: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_StaticPaymentOutputDescriptorDecodeErrorZ_ok(o); - return nativeResponseValue; - } - // struct LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ CResult_StaticPaymentOutputDescriptorDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_StaticPaymentOutputDescriptorDecodeErrorZ_err(e: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_StaticPaymentOutputDescriptorDecodeErrorZ_err(e); - return nativeResponseValue; - } - // bool CResult_StaticPaymentOutputDescriptorDecodeErrorZ_is_ok(const struct LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR o); - export function CResult_StaticPaymentOutputDescriptorDecodeErrorZ_is_ok(o: number): boolean { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_StaticPaymentOutputDescriptorDecodeErrorZ_is_ok(o); - return nativeResponseValue; - } - // void CResult_StaticPaymentOutputDescriptorDecodeErrorZ_free(struct LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ _res); - export function CResult_StaticPaymentOutputDescriptorDecodeErrorZ_free(_res: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_StaticPaymentOutputDescriptorDecodeErrorZ_free(_res); - // debug statements here - } - // uint64_t CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone_ptr(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR arg); - export function CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone_ptr(arg: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone_ptr(arg); - return nativeResponseValue; - } - // struct LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone(const struct LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR orig); - export function CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone(orig: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone(orig); - return nativeResponseValue; - } - // struct LDKCResult_SpendableOutputDescriptorDecodeErrorZ CResult_SpendableOutputDescriptorDecodeErrorZ_ok(struct LDKSpendableOutputDescriptor o); - export function CResult_SpendableOutputDescriptorDecodeErrorZ_ok(o: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_SpendableOutputDescriptorDecodeErrorZ_ok(o); - return nativeResponseValue; - } - // struct LDKCResult_SpendableOutputDescriptorDecodeErrorZ CResult_SpendableOutputDescriptorDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_SpendableOutputDescriptorDecodeErrorZ_err(e: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_SpendableOutputDescriptorDecodeErrorZ_err(e); - return nativeResponseValue; - } - // bool CResult_SpendableOutputDescriptorDecodeErrorZ_is_ok(const struct LDKCResult_SpendableOutputDescriptorDecodeErrorZ *NONNULL_PTR o); - export function CResult_SpendableOutputDescriptorDecodeErrorZ_is_ok(o: number): boolean { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_SpendableOutputDescriptorDecodeErrorZ_is_ok(o); - return nativeResponseValue; - } - // void CResult_SpendableOutputDescriptorDecodeErrorZ_free(struct LDKCResult_SpendableOutputDescriptorDecodeErrorZ _res); - export function CResult_SpendableOutputDescriptorDecodeErrorZ_free(_res: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_SpendableOutputDescriptorDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_funding_created(this_arg, encodeUint8Array(their_node_id), msg); // debug statements here - } - // uint64_t CResult_SpendableOutputDescriptorDecodeErrorZ_clone_ptr(LDKCResult_SpendableOutputDescriptorDecodeErrorZ *NONNULL_PTR arg); - export function CResult_SpendableOutputDescriptorDecodeErrorZ_clone_ptr(arg: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_SpendableOutputDescriptorDecodeErrorZ_clone_ptr(arg); - return nativeResponseValue; - } - // struct LDKCResult_SpendableOutputDescriptorDecodeErrorZ CResult_SpendableOutputDescriptorDecodeErrorZ_clone(const struct LDKCResult_SpendableOutputDescriptorDecodeErrorZ *NONNULL_PTR orig); - export function CResult_SpendableOutputDescriptorDecodeErrorZ_clone(orig: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_SpendableOutputDescriptorDecodeErrorZ_clone(orig); - return nativeResponseValue; - } - // struct LDKCResult_NoneNoneZ CResult_NoneNoneZ_ok(void); - export function CResult_NoneNoneZ_ok(): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_NoneNoneZ_ok(); - return nativeResponseValue; - } - // struct LDKCResult_NoneNoneZ CResult_NoneNoneZ_err(void); - export function CResult_NoneNoneZ_err(): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_NoneNoneZ_err(); - return nativeResponseValue; - } - // bool CResult_NoneNoneZ_is_ok(const struct LDKCResult_NoneNoneZ *NONNULL_PTR o); - export function CResult_NoneNoneZ_is_ok(o: number): boolean { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_NoneNoneZ_is_ok(o); - return nativeResponseValue; - } - // void CResult_NoneNoneZ_free(struct LDKCResult_NoneNoneZ _res); - export function CResult_NoneNoneZ_free(_res: number): void { + } + // void ChannelMessageHandler_handle_funding_signed LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKFundingSigned *NONNULL_PTR msg + export function ChannelMessageHandler_handle_funding_signed(this_arg: number, their_node_id: Uint8Array, msg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneNoneZ_free(_res); + const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_funding_signed(this_arg, encodeUint8Array(their_node_id), msg); // debug statements here } - // uint64_t CResult_NoneNoneZ_clone_ptr(LDKCResult_NoneNoneZ *NONNULL_PTR arg); - export function CResult_NoneNoneZ_clone_ptr(arg: number): number { + // void ChannelMessageHandler_handle_funding_locked LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKFundingLocked *NONNULL_PTR msg + export function ChannelMessageHandler_handle_funding_locked(this_arg: number, their_node_id: Uint8Array, msg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneNoneZ_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_funding_locked(this_arg, encodeUint8Array(their_node_id), msg); + // debug statements here } - // struct LDKCResult_NoneNoneZ CResult_NoneNoneZ_clone(const struct LDKCResult_NoneNoneZ *NONNULL_PTR orig); - export function CResult_NoneNoneZ_clone(orig: number): number { + // 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 + export function ChannelMessageHandler_handle_shutdown(this_arg: number, their_node_id: Uint8Array, their_features: number, msg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneNoneZ_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_shutdown(this_arg, encodeUint8Array(their_node_id), their_features, msg); + // debug statements here } - // uint64_t C2Tuple_SignatureCVec_SignatureZZ_clone_ptr(LDKC2Tuple_SignatureCVec_SignatureZZ *NONNULL_PTR arg); - export function C2Tuple_SignatureCVec_SignatureZZ_clone_ptr(arg: number): number { + // void ChannelMessageHandler_handle_closing_signed LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKClosingSigned *NONNULL_PTR msg + export function ChannelMessageHandler_handle_closing_signed(this_arg: number, their_node_id: Uint8Array, msg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_SignatureCVec_SignatureZZ_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_closing_signed(this_arg, encodeUint8Array(their_node_id), msg); + // debug statements here } - // struct LDKC2Tuple_SignatureCVec_SignatureZZ C2Tuple_SignatureCVec_SignatureZZ_clone(const struct LDKC2Tuple_SignatureCVec_SignatureZZ *NONNULL_PTR orig); - export function C2Tuple_SignatureCVec_SignatureZZ_clone(orig: number): number { + // void ChannelMessageHandler_handle_update_add_htlc LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKUpdateAddHTLC *NONNULL_PTR msg + export function ChannelMessageHandler_handle_update_add_htlc(this_arg: number, their_node_id: Uint8Array, msg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_SignatureCVec_SignatureZZ_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_update_add_htlc(this_arg, encodeUint8Array(their_node_id), msg); + // debug statements here } - // struct LDKC2Tuple_SignatureCVec_SignatureZZ C2Tuple_SignatureCVec_SignatureZZ_new(struct LDKSignature a, struct LDKCVec_SignatureZ b); - export function C2Tuple_SignatureCVec_SignatureZZ_new(a: Uint8Array, b: Uint8Array[]): number { + // void ChannelMessageHandler_handle_update_fulfill_htlc LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKUpdateFulfillHTLC *NONNULL_PTR msg + export function ChannelMessageHandler_handle_update_fulfill_htlc(this_arg: number, their_node_id: Uint8Array, msg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_SignatureCVec_SignatureZZ_new(encodeArray(a), b); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_update_fulfill_htlc(this_arg, encodeUint8Array(their_node_id), msg); + // debug statements here } - // void C2Tuple_SignatureCVec_SignatureZZ_free(struct LDKC2Tuple_SignatureCVec_SignatureZZ _res); - export function C2Tuple_SignatureCVec_SignatureZZ_free(_res: number): void { + // void ChannelMessageHandler_handle_update_fail_htlc LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKUpdateFailHTLC *NONNULL_PTR msg + export function ChannelMessageHandler_handle_update_fail_htlc(this_arg: number, their_node_id: Uint8Array, msg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_SignatureCVec_SignatureZZ_free(_res); + const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_update_fail_htlc(this_arg, encodeUint8Array(their_node_id), msg); // debug statements here } - // struct LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_ok(struct LDKC2Tuple_SignatureCVec_SignatureZZ o); - export function CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_ok(o: number): number { + // void ChannelMessageHandler_handle_update_fail_malformed_htlc LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKUpdateFailMalformedHTLC *NONNULL_PTR msg + export function ChannelMessageHandler_handle_update_fail_malformed_htlc(this_arg: number, their_node_id: Uint8Array, msg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_ok(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_update_fail_malformed_htlc(this_arg, encodeUint8Array(their_node_id), msg); + // debug statements here } - // struct LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_err(void); - export function CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_err(): number { + // void ChannelMessageHandler_handle_commitment_signed LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKCommitmentSigned *NONNULL_PTR msg + export function ChannelMessageHandler_handle_commitment_signed(this_arg: number, their_node_id: Uint8Array, msg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_err(); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_commitment_signed(this_arg, encodeUint8Array(their_node_id), msg); + // debug statements here } - // bool CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_is_ok(const struct LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ *NONNULL_PTR o); - export function CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_is_ok(o: number): boolean { + // void ChannelMessageHandler_handle_revoke_and_ack LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKRevokeAndACK *NONNULL_PTR msg + export function ChannelMessageHandler_handle_revoke_and_ack(this_arg: number, their_node_id: Uint8Array, msg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_is_ok(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_revoke_and_ack(this_arg, encodeUint8Array(their_node_id), msg); + // debug statements here } - // void CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_free(struct LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ _res); - export function CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_free(_res: number): void { + // void ChannelMessageHandler_handle_update_fee LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKUpdateFee *NONNULL_PTR msg + export function ChannelMessageHandler_handle_update_fee(this_arg: number, their_node_id: Uint8Array, msg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_free(_res); + const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_update_fee(this_arg, encodeUint8Array(their_node_id), msg); // debug statements here } - // uint64_t CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone_ptr(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ *NONNULL_PTR arg); - export function CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone_ptr(arg: number): number { + // void ChannelMessageHandler_handle_announcement_signatures LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKAnnouncementSignatures *NONNULL_PTR msg + export function ChannelMessageHandler_handle_announcement_signatures(this_arg: number, their_node_id: Uint8Array, msg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_announcement_signatures(this_arg, encodeUint8Array(their_node_id), msg); + // debug statements here } - // struct LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone(const struct LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ *NONNULL_PTR orig); - export function CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone(orig: number): number { + // void ChannelMessageHandler_peer_disconnected LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, bool no_connection_possible + export function ChannelMessageHandler_peer_disconnected(this_arg: number, their_node_id: Uint8Array, no_connection_possible: boolean): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelMessageHandler_peer_disconnected(this_arg, encodeUint8Array(their_node_id), no_connection_possible); + // debug statements here } - // struct LDKCResult_SignatureNoneZ CResult_SignatureNoneZ_ok(struct LDKSignature o); - export function CResult_SignatureNoneZ_ok(o: Uint8Array): number { + // void ChannelMessageHandler_peer_connected LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKInit *NONNULL_PTR msg + export function ChannelMessageHandler_peer_connected(this_arg: number, their_node_id: Uint8Array, msg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SignatureNoneZ_ok(encodeArray(o)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelMessageHandler_peer_connected(this_arg, encodeUint8Array(their_node_id), msg); + // debug statements here } - // struct LDKCResult_SignatureNoneZ CResult_SignatureNoneZ_err(void); - export function CResult_SignatureNoneZ_err(): number { + // void ChannelMessageHandler_handle_channel_reestablish LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKChannelReestablish *NONNULL_PTR msg + export function ChannelMessageHandler_handle_channel_reestablish(this_arg: number, their_node_id: Uint8Array, msg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SignatureNoneZ_err(); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_channel_reestablish(this_arg, encodeUint8Array(their_node_id), msg); + // debug statements here } - // bool CResult_SignatureNoneZ_is_ok(const struct LDKCResult_SignatureNoneZ *NONNULL_PTR o); - export function CResult_SignatureNoneZ_is_ok(o: number): boolean { + // void ChannelMessageHandler_handle_channel_update LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKChannelUpdate *NONNULL_PTR msg + export function ChannelMessageHandler_handle_channel_update(this_arg: number, their_node_id: Uint8Array, msg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SignatureNoneZ_is_ok(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_channel_update(this_arg, encodeUint8Array(their_node_id), msg); + // debug statements here } - // void CResult_SignatureNoneZ_free(struct LDKCResult_SignatureNoneZ _res); - export function CResult_SignatureNoneZ_free(_res: number): void { + // void ChannelMessageHandler_handle_error LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKErrorMessage *NONNULL_PTR msg + export function ChannelMessageHandler_handle_error(this_arg: number, their_node_id: Uint8Array, msg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SignatureNoneZ_free(_res); + const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_error(this_arg, encodeUint8Array(their_node_id), msg); // debug statements here } - // uint64_t CResult_SignatureNoneZ_clone_ptr(LDKCResult_SignatureNoneZ *NONNULL_PTR arg); - export function CResult_SignatureNoneZ_clone_ptr(arg: number): number { + + + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START + + export interface LDKRoutingMessageHandler { + handle_node_announcement (msg: number): number; + handle_channel_announcement (msg: number): number; + handle_channel_update (msg: number): number; + get_next_channel_announcements (starting_point: number, batch_amount: number): number[]; + get_next_node_announcements (starting_point: Uint8Array, batch_amount: number): number[]; + sync_routing_table (their_node_id: Uint8Array, init: number): void; + handle_reply_channel_range (their_node_id: Uint8Array, msg: number): number; + handle_reply_short_channel_ids_end (their_node_id: Uint8Array, msg: number): number; + handle_query_channel_range (their_node_id: Uint8Array, msg: number): number; + handle_query_short_channel_ids (their_node_id: Uint8Array, msg: number): number; + } + + export function LDKRoutingMessageHandler_new(impl: LDKRoutingMessageHandler, MessageSendEventsProvider: LDKMessageSendEventsProvider): number { + throw new Error('unimplemented'); // TODO: bind to WASM + } + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END + + + // LDKCResult_boolLightningErrorZ RoutingMessageHandler_handle_node_announcement LDKRoutingMessageHandler *NONNULL_PTR this_arg, const struct LDKNodeAnnouncement *NONNULL_PTR msg + export function RoutingMessageHandler_handle_node_announcement(this_arg: number, msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SignatureNoneZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_RoutingMessageHandler_handle_node_announcement(this_arg, msg); return nativeResponseValue; } - // struct LDKCResult_SignatureNoneZ CResult_SignatureNoneZ_clone(const struct LDKCResult_SignatureNoneZ *NONNULL_PTR orig); - export function CResult_SignatureNoneZ_clone(orig: number): number { + // LDKCResult_boolLightningErrorZ RoutingMessageHandler_handle_channel_announcement LDKRoutingMessageHandler *NONNULL_PTR this_arg, const struct LDKChannelAnnouncement *NONNULL_PTR msg + export function RoutingMessageHandler_handle_channel_announcement(this_arg: number, msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SignatureNoneZ_clone(orig); + const nativeResponseValue = wasm.TS_RoutingMessageHandler_handle_channel_announcement(this_arg, msg); return nativeResponseValue; } - // struct LDKCResult_SignDecodeErrorZ CResult_SignDecodeErrorZ_ok(struct LDKSign o); - export function CResult_SignDecodeErrorZ_ok(o: number): number { + // LDKCResult_boolLightningErrorZ RoutingMessageHandler_handle_channel_update LDKRoutingMessageHandler *NONNULL_PTR this_arg, const struct LDKChannelUpdate *NONNULL_PTR msg + export function RoutingMessageHandler_handle_channel_update(this_arg: number, msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SignDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_RoutingMessageHandler_handle_channel_update(this_arg, msg); return nativeResponseValue; } - // struct LDKCResult_SignDecodeErrorZ CResult_SignDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_SignDecodeErrorZ_err(e: number): number { + // LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ RoutingMessageHandler_get_next_channel_announcements LDKRoutingMessageHandler *NONNULL_PTR this_arg, uint64_t starting_point, uint8_t batch_amount + export function RoutingMessageHandler_get_next_channel_announcements(this_arg: number, starting_point: number, batch_amount: number): number[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SignDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_RoutingMessageHandler_get_next_channel_announcements(this_arg, starting_point, batch_amount); return nativeResponseValue; } - // bool CResult_SignDecodeErrorZ_is_ok(const struct LDKCResult_SignDecodeErrorZ *NONNULL_PTR o); - export function CResult_SignDecodeErrorZ_is_ok(o: number): boolean { + // LDKCVec_NodeAnnouncementZ RoutingMessageHandler_get_next_node_announcements LDKRoutingMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey starting_point, uint8_t batch_amount + export function RoutingMessageHandler_get_next_node_announcements(this_arg: number, starting_point: Uint8Array, batch_amount: number): number[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SignDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_RoutingMessageHandler_get_next_node_announcements(this_arg, encodeUint8Array(starting_point), batch_amount); return nativeResponseValue; } - // void CResult_SignDecodeErrorZ_free(struct LDKCResult_SignDecodeErrorZ _res); - export function CResult_SignDecodeErrorZ_free(_res: number): void { + // void RoutingMessageHandler_sync_routing_table LDKRoutingMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKInit *NONNULL_PTR init + export function RoutingMessageHandler_sync_routing_table(this_arg: number, their_node_id: Uint8Array, init: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SignDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_RoutingMessageHandler_sync_routing_table(this_arg, encodeUint8Array(their_node_id), init); // debug statements here } - // uint64_t CResult_SignDecodeErrorZ_clone_ptr(LDKCResult_SignDecodeErrorZ *NONNULL_PTR arg); - export function CResult_SignDecodeErrorZ_clone_ptr(arg: number): number { + // LDKCResult_NoneLightningErrorZ RoutingMessageHandler_handle_reply_channel_range LDKRoutingMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, struct LDKReplyChannelRange msg + export function RoutingMessageHandler_handle_reply_channel_range(this_arg: number, their_node_id: Uint8Array, msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SignDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_RoutingMessageHandler_handle_reply_channel_range(this_arg, encodeUint8Array(their_node_id), msg); return nativeResponseValue; } - // struct LDKCResult_SignDecodeErrorZ CResult_SignDecodeErrorZ_clone(const struct LDKCResult_SignDecodeErrorZ *NONNULL_PTR orig); - export function CResult_SignDecodeErrorZ_clone(orig: number): number { + // LDKCResult_NoneLightningErrorZ RoutingMessageHandler_handle_reply_short_channel_ids_end LDKRoutingMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, struct LDKReplyShortChannelIdsEnd msg + export function RoutingMessageHandler_handle_reply_short_channel_ids_end(this_arg: number, their_node_id: Uint8Array, msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SignDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_RoutingMessageHandler_handle_reply_short_channel_ids_end(this_arg, encodeUint8Array(their_node_id), msg); return nativeResponseValue; } - // void CVec_u8Z_free(struct LDKCVec_u8Z _res); - export function CVec_u8Z_free(_res: Uint8Array): void { + // LDKCResult_NoneLightningErrorZ RoutingMessageHandler_handle_query_channel_range LDKRoutingMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, struct LDKQueryChannelRange msg + export function RoutingMessageHandler_handle_query_channel_range(this_arg: number, their_node_id: Uint8Array, msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_u8Z_free(encodeArray(_res)); - // debug statements here + const nativeResponseValue = wasm.TS_RoutingMessageHandler_handle_query_channel_range(this_arg, encodeUint8Array(their_node_id), msg); + return nativeResponseValue; } - // struct LDKCResult_RecoverableSignatureNoneZ CResult_RecoverableSignatureNoneZ_ok(struct LDKRecoverableSignature o); - export function CResult_RecoverableSignatureNoneZ_ok(arg: Uint8Array): number { + // LDKCResult_NoneLightningErrorZ RoutingMessageHandler_handle_query_short_channel_ids LDKRoutingMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, struct LDKQueryShortChannelIds msg + export function RoutingMessageHandler_handle_query_short_channel_ids(this_arg: number, their_node_id: Uint8Array, msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RecoverableSignatureNoneZ_ok(encodeArray(arg)); + const nativeResponseValue = wasm.TS_RoutingMessageHandler_handle_query_short_channel_ids(this_arg, encodeUint8Array(their_node_id), msg); return nativeResponseValue; } - // struct LDKCResult_RecoverableSignatureNoneZ CResult_RecoverableSignatureNoneZ_err(void); - export function CResult_RecoverableSignatureNoneZ_err(): number { + + + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START + + export interface LDKCustomMessageReader { + read (message_type: number, buffer: Uint8Array): number; + } + + export function LDKCustomMessageReader_new(impl: LDKCustomMessageReader): number { + throw new Error('unimplemented'); // TODO: bind to WASM + } + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END + + + // LDKCResult_COption_TypeZDecodeErrorZ CustomMessageReader_read LDKCustomMessageReader *NONNULL_PTR this_arg, uint16_t message_type, struct LDKu8slice buffer + export function CustomMessageReader_read(this_arg: number, message_type: number, buffer: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RecoverableSignatureNoneZ_err(); + const nativeResponseValue = wasm.TS_CustomMessageReader_read(this_arg, message_type, encodeUint8Array(buffer)); return nativeResponseValue; } - // bool CResult_RecoverableSignatureNoneZ_is_ok(const struct LDKCResult_RecoverableSignatureNoneZ *NONNULL_PTR o); - export function CResult_RecoverableSignatureNoneZ_is_ok(o: number): boolean { + + + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START + + export interface LDKCustomMessageHandler { + handle_custom_message (msg: number, sender_node_id: Uint8Array): number; + get_and_clear_pending_msg (): number[]; + } + + export function LDKCustomMessageHandler_new(impl: LDKCustomMessageHandler, CustomMessageReader: LDKCustomMessageReader): number { + throw new Error('unimplemented'); // TODO: bind to WASM + } + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END + + + // LDKCResult_NoneLightningErrorZ CustomMessageHandler_handle_custom_message LDKCustomMessageHandler *NONNULL_PTR this_arg, struct LDKType msg, struct LDKPublicKey sender_node_id + export function CustomMessageHandler_handle_custom_message(this_arg: number, msg: number, sender_node_id: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RecoverableSignatureNoneZ_is_ok(o); + const nativeResponseValue = wasm.TS_CustomMessageHandler_handle_custom_message(this_arg, msg, encodeUint8Array(sender_node_id)); return nativeResponseValue; } - // void CResult_RecoverableSignatureNoneZ_free(struct LDKCResult_RecoverableSignatureNoneZ _res); - export function CResult_RecoverableSignatureNoneZ_free(_res: number): void { + // LDKCVec_C2Tuple_PublicKeyTypeZZ CustomMessageHandler_get_and_clear_pending_msg LDKCustomMessageHandler *NONNULL_PTR this_arg + export function CustomMessageHandler_get_and_clear_pending_msg(this_arg: number): number[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RecoverableSignatureNoneZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CustomMessageHandler_get_and_clear_pending_msg(this_arg); + return nativeResponseValue; } - // uint64_t CResult_RecoverableSignatureNoneZ_clone_ptr(LDKCResult_RecoverableSignatureNoneZ *NONNULL_PTR arg); - export function CResult_RecoverableSignatureNoneZ_clone_ptr(arg: number): number { + + + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START + + export interface LDKSocketDescriptor { + send_data (data: Uint8Array, resume_read: boolean): number; + disconnect_socket (): void; + eq (other_arg: number): boolean; + hash (): number; + } + + export function LDKSocketDescriptor_new(impl: LDKSocketDescriptor): number { + throw new Error('unimplemented'); // TODO: bind to WASM + } + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END + + + // uintptr_t SocketDescriptor_send_data LDKSocketDescriptor *NONNULL_PTR this_arg, struct LDKu8slice data, bool resume_read + export function SocketDescriptor_send_data(this_arg: number, data: Uint8Array, resume_read: boolean): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RecoverableSignatureNoneZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_SocketDescriptor_send_data(this_arg, encodeUint8Array(data), resume_read); return nativeResponseValue; } - // struct LDKCResult_RecoverableSignatureNoneZ CResult_RecoverableSignatureNoneZ_clone(const struct LDKCResult_RecoverableSignatureNoneZ *NONNULL_PTR orig); - export function CResult_RecoverableSignatureNoneZ_clone(orig: number): number { + // void SocketDescriptor_disconnect_socket LDKSocketDescriptor *NONNULL_PTR this_arg + export function SocketDescriptor_disconnect_socket(this_arg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RecoverableSignatureNoneZ_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_SocketDescriptor_disconnect_socket(this_arg); + // debug statements here } - // void CVec_CVec_u8ZZ_free(struct LDKCVec_CVec_u8ZZ _res); - export function CVec_CVec_u8ZZ_free(_res: Uint8Array[]): void { + // uint64_t SocketDescriptor_hash LDKSocketDescriptor *NONNULL_PTR this_arg + export function SocketDescriptor_hash(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_CVec_u8ZZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_SocketDescriptor_hash(this_arg); + return nativeResponseValue; } - // struct LDKCResult_CVec_CVec_u8ZZNoneZ CResult_CVec_CVec_u8ZZNoneZ_ok(struct LDKCVec_CVec_u8ZZ o); - export function CResult_CVec_CVec_u8ZZNoneZ_ok(o: Uint8Array[]): number { + + + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START + + export interface LDKScore { + channel_penalty_msat (short_channel_id: number, send_amt_msat: number, channel_capacity_msat: number, source: number, target: number): number; + payment_path_failed (path: number[], short_channel_id: number): void; + payment_path_successful (path: number[]): void; + write (): Uint8Array; + } + + export function LDKScore_new(impl: LDKScore): number { + throw new Error('unimplemented'); // TODO: bind to WASM + } + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END + + + // uint64_t Score_channel_penalty_msat LDKScore *NONNULL_PTR this_arg, uint64_t short_channel_id, uint64_t send_amt_msat, struct LDKCOption_u64Z channel_capacity_msat, const struct LDKNodeId *NONNULL_PTR source, const struct LDKNodeId *NONNULL_PTR target + export function Score_channel_penalty_msat(this_arg: number, short_channel_id: number, send_amt_msat: number, channel_capacity_msat: number, source: number, target: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CVec_CVec_u8ZZNoneZ_ok(o); + const nativeResponseValue = wasm.TS_Score_channel_penalty_msat(this_arg, short_channel_id, send_amt_msat, channel_capacity_msat, source, target); return nativeResponseValue; } - // struct LDKCResult_CVec_CVec_u8ZZNoneZ CResult_CVec_CVec_u8ZZNoneZ_err(void); - export function CResult_CVec_CVec_u8ZZNoneZ_err(): number { + // void Score_payment_path_failed LDKScore *NONNULL_PTR this_arg, struct LDKCVec_RouteHopZ path, uint64_t short_channel_id + export function Score_payment_path_failed(this_arg: number, path: number[], short_channel_id: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CVec_CVec_u8ZZNoneZ_err(); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Score_payment_path_failed(this_arg, path, short_channel_id); + // debug statements here } - // bool CResult_CVec_CVec_u8ZZNoneZ_is_ok(const struct LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR o); - export function CResult_CVec_CVec_u8ZZNoneZ_is_ok(o: number): boolean { + // void Score_payment_path_successful LDKScore *NONNULL_PTR this_arg, struct LDKCVec_RouteHopZ path + export function Score_payment_path_successful(this_arg: number, path: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CVec_CVec_u8ZZNoneZ_is_ok(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Score_payment_path_successful(this_arg, path); + // debug statements here } - // void CResult_CVec_CVec_u8ZZNoneZ_free(struct LDKCResult_CVec_CVec_u8ZZNoneZ _res); - export function CResult_CVec_CVec_u8ZZNoneZ_free(_res: number): void { + // LDKCVec_u8Z Score_write LDKScore *NONNULL_PTR this_arg + export function Score_write(this_arg: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CVec_CVec_u8ZZNoneZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_Score_write(this_arg); + return decodeUint8Array(nativeResponseValue); } - // uint64_t CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR arg); - export function CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(arg: number): number { + + + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: START + + export interface LDKLockableScore { + lock (): number; + } + + export function LDKLockableScore_new(impl: LDKLockableScore): number { + throw new Error('unimplemented'); // TODO: bind to WASM + } + +// OUT_TYPESCRIPT_BINDINGS :: MAP_TRAIT :: END + + + // LDKScore LockableScore_lock LDKLockableScore *NONNULL_PTR this_arg + export function LockableScore_lock(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_LockableScore_lock(this_arg); return nativeResponseValue; } - // struct LDKCResult_CVec_CVec_u8ZZNoneZ CResult_CVec_CVec_u8ZZNoneZ_clone(const struct LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR orig); - export function CResult_CVec_CVec_u8ZZNoneZ_clone(orig: number): number { + // struct LDKStr _ldk_get_compiled_version(void); + export function _ldk_get_compiled_version(): String { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CVec_CVec_u8ZZNoneZ_clone(orig); + const nativeResponseValue = wasm.TS__ldk_get_compiled_version(); return nativeResponseValue; } - // struct LDKCResult_InMemorySignerDecodeErrorZ CResult_InMemorySignerDecodeErrorZ_ok(struct LDKInMemorySigner o); - export function CResult_InMemorySignerDecodeErrorZ_ok(o: number): number { + // struct LDKStr _ldk_c_bindings_get_compiled_version(void); + export function _ldk_c_bindings_get_compiled_version(): String { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InMemorySignerDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS__ldk_c_bindings_get_compiled_version(); return nativeResponseValue; } - // struct LDKCResult_InMemorySignerDecodeErrorZ CResult_InMemorySignerDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_InMemorySignerDecodeErrorZ_err(e: number): number { + // void Transaction_free(struct LDKTransaction _res); + export function Transaction_free(_res: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InMemorySignerDecodeErrorZ_err(e); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Transaction_free(encodeUint8Array(_res)); + // debug statements here } - // bool CResult_InMemorySignerDecodeErrorZ_is_ok(const struct LDKCResult_InMemorySignerDecodeErrorZ *NONNULL_PTR o); - export function CResult_InMemorySignerDecodeErrorZ_is_ok(o: number): boolean { + // struct LDKTxOut TxOut_new(struct LDKCVec_u8Z script_pubkey, uint64_t value); + export function TxOut_new(script_pubkey: Uint8Array, value: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InMemorySignerDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_TxOut_new(encodeUint8Array(script_pubkey), value); return nativeResponseValue; } - // void CResult_InMemorySignerDecodeErrorZ_free(struct LDKCResult_InMemorySignerDecodeErrorZ _res); - export function CResult_InMemorySignerDecodeErrorZ_free(_res: number): void { + // void TxOut_free(struct LDKTxOut _res); + export function TxOut_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InMemorySignerDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_TxOut_free(_res); // debug statements here } - // uint64_t CResult_InMemorySignerDecodeErrorZ_clone_ptr(LDKCResult_InMemorySignerDecodeErrorZ *NONNULL_PTR arg); - export function CResult_InMemorySignerDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t TxOut_clone_ptr(LDKTxOut *NONNULL_PTR arg); + export function TxOut_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InMemorySignerDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_TxOut_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_InMemorySignerDecodeErrorZ CResult_InMemorySignerDecodeErrorZ_clone(const struct LDKCResult_InMemorySignerDecodeErrorZ *NONNULL_PTR orig); - export function CResult_InMemorySignerDecodeErrorZ_clone(orig: number): number { + // struct LDKTxOut TxOut_clone(const struct LDKTxOut *NONNULL_PTR orig); + export function TxOut_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InMemorySignerDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_TxOut_clone(orig); return nativeResponseValue; } - // void CVec_TxOutZ_free(struct LDKCVec_TxOutZ _res); - export function CVec_TxOutZ_free(_res: number[]): void { + // void Str_free(struct LDKStr _res); + export function Str_free(_res: String): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_TxOutZ_free(_res); + const nativeResponseValue = wasm.TS_Str_free(_res); // debug statements here } - // struct LDKCResult_TransactionNoneZ CResult_TransactionNoneZ_ok(struct LDKTransaction o); - export function CResult_TransactionNoneZ_ok(o: Uint8Array): number { + // struct LDKCResult_ChannelConfigDecodeErrorZ CResult_ChannelConfigDecodeErrorZ_ok(struct LDKChannelConfig o); + export function CResult_ChannelConfigDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TransactionNoneZ_ok(encodeArray(o)); + const nativeResponseValue = wasm.TS_CResult_ChannelConfigDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_TransactionNoneZ CResult_TransactionNoneZ_err(void); - export function CResult_TransactionNoneZ_err(): number { + // struct LDKCResult_ChannelConfigDecodeErrorZ CResult_ChannelConfigDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_ChannelConfigDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TransactionNoneZ_err(); + const nativeResponseValue = wasm.TS_CResult_ChannelConfigDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_TransactionNoneZ_is_ok(const struct LDKCResult_TransactionNoneZ *NONNULL_PTR o); - export function CResult_TransactionNoneZ_is_ok(o: number): boolean { + // bool CResult_ChannelConfigDecodeErrorZ_is_ok(const struct LDKCResult_ChannelConfigDecodeErrorZ *NONNULL_PTR o); + export function CResult_ChannelConfigDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TransactionNoneZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_ChannelConfigDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_TransactionNoneZ_free(struct LDKCResult_TransactionNoneZ _res); - export function CResult_TransactionNoneZ_free(_res: number): void { + // void CResult_ChannelConfigDecodeErrorZ_free(struct LDKCResult_ChannelConfigDecodeErrorZ _res); + export function CResult_ChannelConfigDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TransactionNoneZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_ChannelConfigDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_TransactionNoneZ_clone_ptr(LDKCResult_TransactionNoneZ *NONNULL_PTR arg); - export function CResult_TransactionNoneZ_clone_ptr(arg: number): number { + // uint64_t CResult_ChannelConfigDecodeErrorZ_clone_ptr(LDKCResult_ChannelConfigDecodeErrorZ *NONNULL_PTR arg); + export function CResult_ChannelConfigDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TransactionNoneZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_ChannelConfigDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_TransactionNoneZ CResult_TransactionNoneZ_clone(const struct LDKCResult_TransactionNoneZ *NONNULL_PTR orig); - export function CResult_TransactionNoneZ_clone(orig: number): number { + // struct LDKCResult_ChannelConfigDecodeErrorZ CResult_ChannelConfigDecodeErrorZ_clone(const struct LDKCResult_ChannelConfigDecodeErrorZ *NONNULL_PTR orig); + export function CResult_ChannelConfigDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_TransactionNoneZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_ChannelConfigDecodeErrorZ_clone(orig); return nativeResponseValue; } - // uint64_t C2Tuple_BlockHashChannelMonitorZ_clone_ptr(LDKC2Tuple_BlockHashChannelMonitorZ *NONNULL_PTR arg); - export function C2Tuple_BlockHashChannelMonitorZ_clone_ptr(arg: number): number { + // struct LDKCResult_OutPointDecodeErrorZ CResult_OutPointDecodeErrorZ_ok(struct LDKOutPoint o); + export function CResult_OutPointDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_BlockHashChannelMonitorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_OutPointDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKC2Tuple_BlockHashChannelMonitorZ C2Tuple_BlockHashChannelMonitorZ_clone(const struct LDKC2Tuple_BlockHashChannelMonitorZ *NONNULL_PTR orig); - export function C2Tuple_BlockHashChannelMonitorZ_clone(orig: number): number { + // struct LDKCResult_OutPointDecodeErrorZ CResult_OutPointDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_OutPointDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_BlockHashChannelMonitorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_OutPointDecodeErrorZ_err(e); return nativeResponseValue; } - // struct LDKC2Tuple_BlockHashChannelMonitorZ C2Tuple_BlockHashChannelMonitorZ_new(struct LDKThirtyTwoBytes a, struct LDKChannelMonitor b); - export function C2Tuple_BlockHashChannelMonitorZ_new(a: Uint8Array, b: number): number { + // bool CResult_OutPointDecodeErrorZ_is_ok(const struct LDKCResult_OutPointDecodeErrorZ *NONNULL_PTR o); + export function CResult_OutPointDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_BlockHashChannelMonitorZ_new(encodeArray(a), b); + const nativeResponseValue = wasm.TS_CResult_OutPointDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void C2Tuple_BlockHashChannelMonitorZ_free(struct LDKC2Tuple_BlockHashChannelMonitorZ _res); - export function C2Tuple_BlockHashChannelMonitorZ_free(_res: number): void { + // void CResult_OutPointDecodeErrorZ_free(struct LDKCResult_OutPointDecodeErrorZ _res); + export function CResult_OutPointDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_BlockHashChannelMonitorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_OutPointDecodeErrorZ_free(_res); // debug statements here } - // void CVec_C2Tuple_BlockHashChannelMonitorZZ_free(struct LDKCVec_C2Tuple_BlockHashChannelMonitorZZ _res); - export function CVec_C2Tuple_BlockHashChannelMonitorZZ_free(_res: number[]): void { + // uint64_t CResult_OutPointDecodeErrorZ_clone_ptr(LDKCResult_OutPointDecodeErrorZ *NONNULL_PTR arg); + export function CResult_OutPointDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_C2Tuple_BlockHashChannelMonitorZZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_OutPointDecodeErrorZ_clone_ptr(arg); + return nativeResponseValue; } - // struct LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_ok(struct LDKCVec_C2Tuple_BlockHashChannelMonitorZZ o); - export function CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_ok(o: number[]): number { + // struct LDKCResult_OutPointDecodeErrorZ CResult_OutPointDecodeErrorZ_clone(const struct LDKCResult_OutPointDecodeErrorZ *NONNULL_PTR orig); + export function CResult_OutPointDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_OutPointDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_err(enum LDKIOError e); - export function CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_err(e: IOError): number { + // struct LDKCResult_SecretKeyErrorZ CResult_SecretKeyErrorZ_ok(struct LDKSecretKey o); + export function CResult_SecretKeyErrorZ_ok(o: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_SecretKeyErrorZ_ok(encodeUint8Array(o)); return nativeResponseValue; } - // bool CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_is_ok(const struct LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ *NONNULL_PTR o); - export function CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_is_ok(o: number): boolean { + // struct LDKCResult_SecretKeyErrorZ CResult_SecretKeyErrorZ_err(enum LDKSecp256k1Error e); + export function CResult_SecretKeyErrorZ_err(e: Secp256k1Error): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_SecretKeyErrorZ_err(e); return nativeResponseValue; } - // void CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_free(struct LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ _res); - export function CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_free(_res: number): void { + // bool CResult_SecretKeyErrorZ_is_ok(const struct LDKCResult_SecretKeyErrorZ *NONNULL_PTR o); + export function CResult_SecretKeyErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_SecretKeyErrorZ_is_ok(o); + return nativeResponseValue; } - // uint64_t CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_clone_ptr(LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ *NONNULL_PTR arg); - export function CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_clone_ptr(arg: number): number { + // void CResult_SecretKeyErrorZ_free(struct LDKCResult_SecretKeyErrorZ _res); + export function CResult_SecretKeyErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_SecretKeyErrorZ_free(_res); + // debug statements here } - // struct LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_clone(const struct LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ *NONNULL_PTR orig); - export function CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_clone(orig: number): number { + // struct LDKCResult_PublicKeyErrorZ CResult_PublicKeyErrorZ_ok(struct LDKPublicKey o); + export function CResult_PublicKeyErrorZ_ok(o: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_PublicKeyErrorZ_ok(encodeUint8Array(o)); return nativeResponseValue; } - // struct LDKCOption_u16Z COption_u16Z_some(uint16_t o); - export function COption_u16Z_some(o: number): number { + // struct LDKCResult_PublicKeyErrorZ CResult_PublicKeyErrorZ_err(enum LDKSecp256k1Error e); + export function CResult_PublicKeyErrorZ_err(e: Secp256k1Error): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_u16Z_some(o); + const nativeResponseValue = wasm.TS_CResult_PublicKeyErrorZ_err(e); return nativeResponseValue; } - // struct LDKCOption_u16Z COption_u16Z_none(void); - export function COption_u16Z_none(): number { + // bool CResult_PublicKeyErrorZ_is_ok(const struct LDKCResult_PublicKeyErrorZ *NONNULL_PTR o); + export function CResult_PublicKeyErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_u16Z_none(); + const nativeResponseValue = wasm.TS_CResult_PublicKeyErrorZ_is_ok(o); return nativeResponseValue; } - // void COption_u16Z_free(struct LDKCOption_u16Z _res); - export function COption_u16Z_free(_res: number): void { + // void CResult_PublicKeyErrorZ_free(struct LDKCResult_PublicKeyErrorZ _res); + export function CResult_PublicKeyErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_u16Z_free(_res); + const nativeResponseValue = wasm.TS_CResult_PublicKeyErrorZ_free(_res); // debug statements here } - // uint64_t COption_u16Z_clone_ptr(LDKCOption_u16Z *NONNULL_PTR arg); - export function COption_u16Z_clone_ptr(arg: number): number { + // uint64_t CResult_PublicKeyErrorZ_clone_ptr(LDKCResult_PublicKeyErrorZ *NONNULL_PTR arg); + export function CResult_PublicKeyErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_u16Z_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_PublicKeyErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCOption_u16Z COption_u16Z_clone(const struct LDKCOption_u16Z *NONNULL_PTR orig); - export function COption_u16Z_clone(orig: number): number { + // struct LDKCResult_PublicKeyErrorZ CResult_PublicKeyErrorZ_clone(const struct LDKCResult_PublicKeyErrorZ *NONNULL_PTR orig); + export function CResult_PublicKeyErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_u16Z_clone(orig); + const nativeResponseValue = wasm.TS_CResult_PublicKeyErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_NoneAPIErrorZ CResult_NoneAPIErrorZ_ok(void); - export function CResult_NoneAPIErrorZ_ok(): number { + // struct LDKCResult_TxCreationKeysDecodeErrorZ CResult_TxCreationKeysDecodeErrorZ_ok(struct LDKTxCreationKeys o); + export function CResult_TxCreationKeysDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneAPIErrorZ_ok(); + const nativeResponseValue = wasm.TS_CResult_TxCreationKeysDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_NoneAPIErrorZ CResult_NoneAPIErrorZ_err(struct LDKAPIError e); - export function CResult_NoneAPIErrorZ_err(e: number): number { + // struct LDKCResult_TxCreationKeysDecodeErrorZ CResult_TxCreationKeysDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_TxCreationKeysDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneAPIErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_TxCreationKeysDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_NoneAPIErrorZ_is_ok(const struct LDKCResult_NoneAPIErrorZ *NONNULL_PTR o); - export function CResult_NoneAPIErrorZ_is_ok(o: number): boolean { + // bool CResult_TxCreationKeysDecodeErrorZ_is_ok(const struct LDKCResult_TxCreationKeysDecodeErrorZ *NONNULL_PTR o); + export function CResult_TxCreationKeysDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneAPIErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_TxCreationKeysDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_NoneAPIErrorZ_free(struct LDKCResult_NoneAPIErrorZ _res); - export function CResult_NoneAPIErrorZ_free(_res: number): void { + // void CResult_TxCreationKeysDecodeErrorZ_free(struct LDKCResult_TxCreationKeysDecodeErrorZ _res); + export function CResult_TxCreationKeysDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneAPIErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_TxCreationKeysDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_NoneAPIErrorZ_clone_ptr(LDKCResult_NoneAPIErrorZ *NONNULL_PTR arg); - export function CResult_NoneAPIErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_TxCreationKeysDecodeErrorZ_clone_ptr(LDKCResult_TxCreationKeysDecodeErrorZ *NONNULL_PTR arg); + export function CResult_TxCreationKeysDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneAPIErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_TxCreationKeysDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_NoneAPIErrorZ CResult_NoneAPIErrorZ_clone(const struct LDKCResult_NoneAPIErrorZ *NONNULL_PTR orig); - export function CResult_NoneAPIErrorZ_clone(orig: number): number { + // struct LDKCResult_TxCreationKeysDecodeErrorZ CResult_TxCreationKeysDecodeErrorZ_clone(const struct LDKCResult_TxCreationKeysDecodeErrorZ *NONNULL_PTR orig); + export function CResult_TxCreationKeysDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneAPIErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_TxCreationKeysDecodeErrorZ_clone(orig); return nativeResponseValue; } - // void CVec_CResult_NoneAPIErrorZZ_free(struct LDKCVec_CResult_NoneAPIErrorZZ _res); - export function CVec_CResult_NoneAPIErrorZZ_free(_res: number[]): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CVec_CResult_NoneAPIErrorZZ_free(_res); - // debug statements here - } - // void CVec_APIErrorZ_free(struct LDKCVec_APIErrorZ _res); - export function CVec_APIErrorZ_free(_res: number[]): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CVec_APIErrorZ_free(_res); - // debug statements here - } - // struct LDKCResult__u832APIErrorZ CResult__u832APIErrorZ_ok(struct LDKThirtyTwoBytes o); - export function CResult__u832APIErrorZ_ok(o: Uint8Array): number { + // struct LDKCResult_ChannelPublicKeysDecodeErrorZ CResult_ChannelPublicKeysDecodeErrorZ_ok(struct LDKChannelPublicKeys o); + export function CResult_ChannelPublicKeysDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult__u832APIErrorZ_ok(encodeArray(o)); + const nativeResponseValue = wasm.TS_CResult_ChannelPublicKeysDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult__u832APIErrorZ CResult__u832APIErrorZ_err(struct LDKAPIError e); - export function CResult__u832APIErrorZ_err(e: number): number { + // struct LDKCResult_ChannelPublicKeysDecodeErrorZ CResult_ChannelPublicKeysDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_ChannelPublicKeysDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult__u832APIErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_ChannelPublicKeysDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult__u832APIErrorZ_is_ok(const struct LDKCResult__u832APIErrorZ *NONNULL_PTR o); - export function CResult__u832APIErrorZ_is_ok(o: number): boolean { + // bool CResult_ChannelPublicKeysDecodeErrorZ_is_ok(const struct LDKCResult_ChannelPublicKeysDecodeErrorZ *NONNULL_PTR o); + export function CResult_ChannelPublicKeysDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult__u832APIErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_ChannelPublicKeysDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult__u832APIErrorZ_free(struct LDKCResult__u832APIErrorZ _res); - export function CResult__u832APIErrorZ_free(_res: number): void { + // void CResult_ChannelPublicKeysDecodeErrorZ_free(struct LDKCResult_ChannelPublicKeysDecodeErrorZ _res); + export function CResult_ChannelPublicKeysDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult__u832APIErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_ChannelPublicKeysDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult__u832APIErrorZ_clone_ptr(LDKCResult__u832APIErrorZ *NONNULL_PTR arg); - export function CResult__u832APIErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_ChannelPublicKeysDecodeErrorZ_clone_ptr(LDKCResult_ChannelPublicKeysDecodeErrorZ *NONNULL_PTR arg); + export function CResult_ChannelPublicKeysDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult__u832APIErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_ChannelPublicKeysDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult__u832APIErrorZ CResult__u832APIErrorZ_clone(const struct LDKCResult__u832APIErrorZ *NONNULL_PTR orig); - export function CResult__u832APIErrorZ_clone(orig: number): number { + // struct LDKCResult_ChannelPublicKeysDecodeErrorZ CResult_ChannelPublicKeysDecodeErrorZ_clone(const struct LDKCResult_ChannelPublicKeysDecodeErrorZ *NONNULL_PTR orig); + export function CResult_ChannelPublicKeysDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult__u832APIErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_ChannelPublicKeysDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_PaymentIdPaymentSendFailureZ CResult_PaymentIdPaymentSendFailureZ_ok(struct LDKThirtyTwoBytes o); - export function CResult_PaymentIdPaymentSendFailureZ_ok(o: Uint8Array): number { + // struct LDKCResult_TxCreationKeysErrorZ CResult_TxCreationKeysErrorZ_ok(struct LDKTxCreationKeys o); + export function CResult_TxCreationKeysErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentIdPaymentSendFailureZ_ok(encodeArray(o)); + const nativeResponseValue = wasm.TS_CResult_TxCreationKeysErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_PaymentIdPaymentSendFailureZ CResult_PaymentIdPaymentSendFailureZ_err(struct LDKPaymentSendFailure e); - export function CResult_PaymentIdPaymentSendFailureZ_err(e: number): number { + // struct LDKCResult_TxCreationKeysErrorZ CResult_TxCreationKeysErrorZ_err(enum LDKSecp256k1Error e); + export function CResult_TxCreationKeysErrorZ_err(e: Secp256k1Error): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentIdPaymentSendFailureZ_err(e); + const nativeResponseValue = wasm.TS_CResult_TxCreationKeysErrorZ_err(e); return nativeResponseValue; } - // bool CResult_PaymentIdPaymentSendFailureZ_is_ok(const struct LDKCResult_PaymentIdPaymentSendFailureZ *NONNULL_PTR o); - export function CResult_PaymentIdPaymentSendFailureZ_is_ok(o: number): boolean { + // bool CResult_TxCreationKeysErrorZ_is_ok(const struct LDKCResult_TxCreationKeysErrorZ *NONNULL_PTR o); + export function CResult_TxCreationKeysErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentIdPaymentSendFailureZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_TxCreationKeysErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_PaymentIdPaymentSendFailureZ_free(struct LDKCResult_PaymentIdPaymentSendFailureZ _res); - export function CResult_PaymentIdPaymentSendFailureZ_free(_res: number): void { + // void CResult_TxCreationKeysErrorZ_free(struct LDKCResult_TxCreationKeysErrorZ _res); + export function CResult_TxCreationKeysErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentIdPaymentSendFailureZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_TxCreationKeysErrorZ_free(_res); // debug statements here } - // uint64_t CResult_PaymentIdPaymentSendFailureZ_clone_ptr(LDKCResult_PaymentIdPaymentSendFailureZ *NONNULL_PTR arg); - export function CResult_PaymentIdPaymentSendFailureZ_clone_ptr(arg: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_PaymentIdPaymentSendFailureZ_clone_ptr(arg); - return nativeResponseValue; - } - // struct LDKCResult_PaymentIdPaymentSendFailureZ CResult_PaymentIdPaymentSendFailureZ_clone(const struct LDKCResult_PaymentIdPaymentSendFailureZ *NONNULL_PTR orig); - export function CResult_PaymentIdPaymentSendFailureZ_clone(orig: number): number { + // uint64_t CResult_TxCreationKeysErrorZ_clone_ptr(LDKCResult_TxCreationKeysErrorZ *NONNULL_PTR arg); + export function CResult_TxCreationKeysErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentIdPaymentSendFailureZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_TxCreationKeysErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_NonePaymentSendFailureZ CResult_NonePaymentSendFailureZ_ok(void); - export function CResult_NonePaymentSendFailureZ_ok(): number { + // struct LDKCResult_TxCreationKeysErrorZ CResult_TxCreationKeysErrorZ_clone(const struct LDKCResult_TxCreationKeysErrorZ *NONNULL_PTR orig); + export function CResult_TxCreationKeysErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NonePaymentSendFailureZ_ok(); + const nativeResponseValue = wasm.TS_CResult_TxCreationKeysErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_NonePaymentSendFailureZ CResult_NonePaymentSendFailureZ_err(struct LDKPaymentSendFailure e); - export function CResult_NonePaymentSendFailureZ_err(e: number): number { + // struct LDKCOption_u32Z COption_u32Z_some(uint32_t o); + export function COption_u32Z_some(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NonePaymentSendFailureZ_err(e); + const nativeResponseValue = wasm.TS_COption_u32Z_some(o); return nativeResponseValue; } - // bool CResult_NonePaymentSendFailureZ_is_ok(const struct LDKCResult_NonePaymentSendFailureZ *NONNULL_PTR o); - export function CResult_NonePaymentSendFailureZ_is_ok(o: number): boolean { + // struct LDKCOption_u32Z COption_u32Z_none(void); + export function COption_u32Z_none(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NonePaymentSendFailureZ_is_ok(o); + const nativeResponseValue = wasm.TS_COption_u32Z_none(); return nativeResponseValue; } - // void CResult_NonePaymentSendFailureZ_free(struct LDKCResult_NonePaymentSendFailureZ _res); - export function CResult_NonePaymentSendFailureZ_free(_res: number): void { + // void COption_u32Z_free(struct LDKCOption_u32Z _res); + export function COption_u32Z_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NonePaymentSendFailureZ_free(_res); + const nativeResponseValue = wasm.TS_COption_u32Z_free(_res); // debug statements here } - // uint64_t CResult_NonePaymentSendFailureZ_clone_ptr(LDKCResult_NonePaymentSendFailureZ *NONNULL_PTR arg); - export function CResult_NonePaymentSendFailureZ_clone_ptr(arg: number): number { + // uint64_t COption_u32Z_clone_ptr(LDKCOption_u32Z *NONNULL_PTR arg); + export function COption_u32Z_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NonePaymentSendFailureZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_COption_u32Z_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_NonePaymentSendFailureZ CResult_NonePaymentSendFailureZ_clone(const struct LDKCResult_NonePaymentSendFailureZ *NONNULL_PTR orig); - export function CResult_NonePaymentSendFailureZ_clone(orig: number): number { + // struct LDKCOption_u32Z COption_u32Z_clone(const struct LDKCOption_u32Z *NONNULL_PTR orig); + export function COption_u32Z_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NonePaymentSendFailureZ_clone(orig); + const nativeResponseValue = wasm.TS_COption_u32Z_clone(orig); return nativeResponseValue; } - // uint64_t C2Tuple_PaymentHashPaymentIdZ_clone_ptr(LDKC2Tuple_PaymentHashPaymentIdZ *NONNULL_PTR arg); - export function C2Tuple_PaymentHashPaymentIdZ_clone_ptr(arg: number): number { + // struct LDKCResult_HTLCOutputInCommitmentDecodeErrorZ CResult_HTLCOutputInCommitmentDecodeErrorZ_ok(struct LDKHTLCOutputInCommitment o); + export function CResult_HTLCOutputInCommitmentDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_PaymentHashPaymentIdZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKC2Tuple_PaymentHashPaymentIdZ C2Tuple_PaymentHashPaymentIdZ_clone(const struct LDKC2Tuple_PaymentHashPaymentIdZ *NONNULL_PTR orig); - export function C2Tuple_PaymentHashPaymentIdZ_clone(orig: number): number { + // struct LDKCResult_HTLCOutputInCommitmentDecodeErrorZ CResult_HTLCOutputInCommitmentDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_HTLCOutputInCommitmentDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_PaymentHashPaymentIdZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_err(e); return nativeResponseValue; } - // struct LDKC2Tuple_PaymentHashPaymentIdZ C2Tuple_PaymentHashPaymentIdZ_new(struct LDKThirtyTwoBytes a, struct LDKThirtyTwoBytes b); - export function C2Tuple_PaymentHashPaymentIdZ_new(a: Uint8Array, b: Uint8Array): number { + // bool CResult_HTLCOutputInCommitmentDecodeErrorZ_is_ok(const struct LDKCResult_HTLCOutputInCommitmentDecodeErrorZ *NONNULL_PTR o); + export function CResult_HTLCOutputInCommitmentDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_PaymentHashPaymentIdZ_new(encodeArray(a), encodeArray(b)); + const nativeResponseValue = wasm.TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void C2Tuple_PaymentHashPaymentIdZ_free(struct LDKC2Tuple_PaymentHashPaymentIdZ _res); - export function C2Tuple_PaymentHashPaymentIdZ_free(_res: number): void { + // void CResult_HTLCOutputInCommitmentDecodeErrorZ_free(struct LDKCResult_HTLCOutputInCommitmentDecodeErrorZ _res); + export function CResult_HTLCOutputInCommitmentDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_PaymentHashPaymentIdZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_free(_res); // debug statements here } - // struct LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_ok(struct LDKC2Tuple_PaymentHashPaymentIdZ o); - export function CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_ok(o: number): number { + // uint64_t CResult_HTLCOutputInCommitmentDecodeErrorZ_clone_ptr(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ *NONNULL_PTR arg); + export function CResult_HTLCOutputInCommitmentDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_err(struct LDKPaymentSendFailure e); - export function CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_err(e: number): number { + // struct LDKCResult_HTLCOutputInCommitmentDecodeErrorZ CResult_HTLCOutputInCommitmentDecodeErrorZ_clone(const struct LDKCResult_HTLCOutputInCommitmentDecodeErrorZ *NONNULL_PTR orig); + export function CResult_HTLCOutputInCommitmentDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_err(e); + const nativeResponseValue = wasm.TS_CResult_HTLCOutputInCommitmentDecodeErrorZ_clone(orig); return nativeResponseValue; } - // bool CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_is_ok(const struct LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ *NONNULL_PTR o); - export function CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_is_ok(o: number): boolean { + // enum LDKCOption_NoneZ COption_NoneZ_some(void); + export function COption_NoneZ_some(): COption_NoneZ { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_is_ok(o); + const nativeResponseValue = wasm.TS_COption_NoneZ_some(); return nativeResponseValue; } - // void CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_free(struct LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ _res); - export function CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_free(_res: number): void { + // enum LDKCOption_NoneZ COption_NoneZ_none(void); + export function COption_NoneZ_none(): COption_NoneZ { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_COption_NoneZ_none(); + return nativeResponseValue; } - // uint64_t CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone_ptr(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ *NONNULL_PTR arg); - export function CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone_ptr(arg: number): number { + // void COption_NoneZ_free(enum LDKCOption_NoneZ _res); + export function COption_NoneZ_free(_res: COption_NoneZ): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_COption_NoneZ_free(_res); + // debug statements here } - // struct LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone(const struct LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ *NONNULL_PTR orig); - export function CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone(orig: number): number { + // struct LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_ok(struct LDKCounterpartyChannelTransactionParameters o); + export function CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_ok(o); return nativeResponseValue; } - // void CVec_NetAddressZ_free(struct LDKCVec_NetAddressZ _res); - export function CVec_NetAddressZ_free(_res: number[]): void { + // struct LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_NetAddressZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_err(e); + return nativeResponseValue; } - // uint64_t C2Tuple_PaymentHashPaymentSecretZ_clone_ptr(LDKC2Tuple_PaymentHashPaymentSecretZ *NONNULL_PTR arg); - export function C2Tuple_PaymentHashPaymentSecretZ_clone_ptr(arg: number): number { + // bool CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_is_ok(const struct LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ *NONNULL_PTR o); + export function CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_PaymentHashPaymentSecretZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // struct LDKC2Tuple_PaymentHashPaymentSecretZ C2Tuple_PaymentHashPaymentSecretZ_clone(const struct LDKC2Tuple_PaymentHashPaymentSecretZ *NONNULL_PTR orig); - export function C2Tuple_PaymentHashPaymentSecretZ_clone(orig: number): number { + // void CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_free(struct LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ _res); + export function CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_PaymentHashPaymentSecretZ_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_free(_res); + // debug statements here } - // struct LDKC2Tuple_PaymentHashPaymentSecretZ C2Tuple_PaymentHashPaymentSecretZ_new(struct LDKThirtyTwoBytes a, struct LDKThirtyTwoBytes b); - export function C2Tuple_PaymentHashPaymentSecretZ_new(a: Uint8Array, b: Uint8Array): number { + // uint64_t CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone_ptr(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ *NONNULL_PTR arg); + export function CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_PaymentHashPaymentSecretZ_new(encodeArray(a), encodeArray(b)); + const nativeResponseValue = wasm.TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // void C2Tuple_PaymentHashPaymentSecretZ_free(struct LDKC2Tuple_PaymentHashPaymentSecretZ _res); - export function C2Tuple_PaymentHashPaymentSecretZ_free(_res: number): void { + // struct LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone(const struct LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ *NONNULL_PTR orig); + export function CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_PaymentHashPaymentSecretZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone(orig); + return nativeResponseValue; } - // struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_ok(struct LDKC2Tuple_PaymentHashPaymentSecretZ o); - export function CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_ok(o: number): number { + // struct LDKCResult_ChannelTransactionParametersDecodeErrorZ CResult_ChannelTransactionParametersDecodeErrorZ_ok(struct LDKChannelTransactionParameters o); + export function CResult_ChannelTransactionParametersDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_ChannelTransactionParametersDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_err(void); - export function CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_err(): number { + // struct LDKCResult_ChannelTransactionParametersDecodeErrorZ CResult_ChannelTransactionParametersDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_ChannelTransactionParametersDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_err(); + const nativeResponseValue = wasm.TS_CResult_ChannelTransactionParametersDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_is_ok(const struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ *NONNULL_PTR o); - export function CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_is_ok(o: number): boolean { + // bool CResult_ChannelTransactionParametersDecodeErrorZ_is_ok(const struct LDKCResult_ChannelTransactionParametersDecodeErrorZ *NONNULL_PTR o); + export function CResult_ChannelTransactionParametersDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_ChannelTransactionParametersDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_free(struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ _res); - export function CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_free(_res: number): void { + // void CResult_ChannelTransactionParametersDecodeErrorZ_free(struct LDKCResult_ChannelTransactionParametersDecodeErrorZ _res); + export function CResult_ChannelTransactionParametersDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_ChannelTransactionParametersDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone_ptr(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ *NONNULL_PTR arg); - export function CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone_ptr(arg: number): number { + // uint64_t CResult_ChannelTransactionParametersDecodeErrorZ_clone_ptr(LDKCResult_ChannelTransactionParametersDecodeErrorZ *NONNULL_PTR arg); + export function CResult_ChannelTransactionParametersDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_ChannelTransactionParametersDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone(const struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ *NONNULL_PTR orig); - export function CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone(orig: number): number { + // struct LDKCResult_ChannelTransactionParametersDecodeErrorZ CResult_ChannelTransactionParametersDecodeErrorZ_clone(const struct LDKCResult_ChannelTransactionParametersDecodeErrorZ *NONNULL_PTR orig); + export function CResult_ChannelTransactionParametersDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_ChannelTransactionParametersDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_ok(struct LDKC2Tuple_PaymentHashPaymentSecretZ o); - export function CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_ok(o: number): number { + // void CVec_SignatureZ_free(struct LDKCVec_SignatureZ _res); + export function CVec_SignatureZ_free(_res: Uint8Array[]): void { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_CVec_SignatureZ_free(_res); + // debug statements here + } + // struct LDKCResult_HolderCommitmentTransactionDecodeErrorZ CResult_HolderCommitmentTransactionDecodeErrorZ_ok(struct LDKHolderCommitmentTransaction o); + export function CResult_HolderCommitmentTransactionDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_HolderCommitmentTransactionDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_err(struct LDKAPIError e); - export function CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_err(e: number): number { + // struct LDKCResult_HolderCommitmentTransactionDecodeErrorZ CResult_HolderCommitmentTransactionDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_HolderCommitmentTransactionDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_HolderCommitmentTransactionDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_is_ok(const struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ *NONNULL_PTR o); - export function CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_is_ok(o: number): boolean { + // bool CResult_HolderCommitmentTransactionDecodeErrorZ_is_ok(const struct LDKCResult_HolderCommitmentTransactionDecodeErrorZ *NONNULL_PTR o); + export function CResult_HolderCommitmentTransactionDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_HolderCommitmentTransactionDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_free(struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ _res); - export function CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_free(_res: number): void { + // void CResult_HolderCommitmentTransactionDecodeErrorZ_free(struct LDKCResult_HolderCommitmentTransactionDecodeErrorZ _res); + export function CResult_HolderCommitmentTransactionDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_HolderCommitmentTransactionDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone_ptr(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ *NONNULL_PTR arg); - export function CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_HolderCommitmentTransactionDecodeErrorZ_clone_ptr(LDKCResult_HolderCommitmentTransactionDecodeErrorZ *NONNULL_PTR arg); + export function CResult_HolderCommitmentTransactionDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_HolderCommitmentTransactionDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone(const struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ *NONNULL_PTR orig); - export function CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone(orig: number): number { + // struct LDKCResult_HolderCommitmentTransactionDecodeErrorZ CResult_HolderCommitmentTransactionDecodeErrorZ_clone(const struct LDKCResult_HolderCommitmentTransactionDecodeErrorZ *NONNULL_PTR orig); + export function CResult_HolderCommitmentTransactionDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_HolderCommitmentTransactionDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_PaymentSecretNoneZ CResult_PaymentSecretNoneZ_ok(struct LDKThirtyTwoBytes o); - export function CResult_PaymentSecretNoneZ_ok(o: Uint8Array): number { + // struct LDKCResult_BuiltCommitmentTransactionDecodeErrorZ CResult_BuiltCommitmentTransactionDecodeErrorZ_ok(struct LDKBuiltCommitmentTransaction o); + export function CResult_BuiltCommitmentTransactionDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentSecretNoneZ_ok(encodeArray(o)); + const nativeResponseValue = wasm.TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_PaymentSecretNoneZ CResult_PaymentSecretNoneZ_err(void); - export function CResult_PaymentSecretNoneZ_err(): number { + // struct LDKCResult_BuiltCommitmentTransactionDecodeErrorZ CResult_BuiltCommitmentTransactionDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_BuiltCommitmentTransactionDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentSecretNoneZ_err(); + const nativeResponseValue = wasm.TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_PaymentSecretNoneZ_is_ok(const struct LDKCResult_PaymentSecretNoneZ *NONNULL_PTR o); - export function CResult_PaymentSecretNoneZ_is_ok(o: number): boolean { + // bool CResult_BuiltCommitmentTransactionDecodeErrorZ_is_ok(const struct LDKCResult_BuiltCommitmentTransactionDecodeErrorZ *NONNULL_PTR o); + export function CResult_BuiltCommitmentTransactionDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentSecretNoneZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_PaymentSecretNoneZ_free(struct LDKCResult_PaymentSecretNoneZ _res); - export function CResult_PaymentSecretNoneZ_free(_res: number): void { + // void CResult_BuiltCommitmentTransactionDecodeErrorZ_free(struct LDKCResult_BuiltCommitmentTransactionDecodeErrorZ _res); + export function CResult_BuiltCommitmentTransactionDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentSecretNoneZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_PaymentSecretNoneZ_clone_ptr(LDKCResult_PaymentSecretNoneZ *NONNULL_PTR arg); - export function CResult_PaymentSecretNoneZ_clone_ptr(arg: number): number { + // uint64_t CResult_BuiltCommitmentTransactionDecodeErrorZ_clone_ptr(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ *NONNULL_PTR arg); + export function CResult_BuiltCommitmentTransactionDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentSecretNoneZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_PaymentSecretNoneZ CResult_PaymentSecretNoneZ_clone(const struct LDKCResult_PaymentSecretNoneZ *NONNULL_PTR orig); - export function CResult_PaymentSecretNoneZ_clone(orig: number): number { + // struct LDKCResult_BuiltCommitmentTransactionDecodeErrorZ CResult_BuiltCommitmentTransactionDecodeErrorZ_clone(const struct LDKCResult_BuiltCommitmentTransactionDecodeErrorZ *NONNULL_PTR orig); + export function CResult_BuiltCommitmentTransactionDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentSecretNoneZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_BuiltCommitmentTransactionDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_PaymentSecretAPIErrorZ CResult_PaymentSecretAPIErrorZ_ok(struct LDKThirtyTwoBytes o); - export function CResult_PaymentSecretAPIErrorZ_ok(o: Uint8Array): number { + // struct LDKCResult_TrustedClosingTransactionNoneZ CResult_TrustedClosingTransactionNoneZ_ok(struct LDKTrustedClosingTransaction o); + export function CResult_TrustedClosingTransactionNoneZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentSecretAPIErrorZ_ok(encodeArray(o)); + const nativeResponseValue = wasm.TS_CResult_TrustedClosingTransactionNoneZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_PaymentSecretAPIErrorZ CResult_PaymentSecretAPIErrorZ_err(struct LDKAPIError e); - export function CResult_PaymentSecretAPIErrorZ_err(e: number): number { + // struct LDKCResult_TrustedClosingTransactionNoneZ CResult_TrustedClosingTransactionNoneZ_err(void); + export function CResult_TrustedClosingTransactionNoneZ_err(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentSecretAPIErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_TrustedClosingTransactionNoneZ_err(); return nativeResponseValue; } - // bool CResult_PaymentSecretAPIErrorZ_is_ok(const struct LDKCResult_PaymentSecretAPIErrorZ *NONNULL_PTR o); - export function CResult_PaymentSecretAPIErrorZ_is_ok(o: number): boolean { + // bool CResult_TrustedClosingTransactionNoneZ_is_ok(const struct LDKCResult_TrustedClosingTransactionNoneZ *NONNULL_PTR o); + export function CResult_TrustedClosingTransactionNoneZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentSecretAPIErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_TrustedClosingTransactionNoneZ_is_ok(o); return nativeResponseValue; } - // void CResult_PaymentSecretAPIErrorZ_free(struct LDKCResult_PaymentSecretAPIErrorZ _res); - export function CResult_PaymentSecretAPIErrorZ_free(_res: number): void { + // void CResult_TrustedClosingTransactionNoneZ_free(struct LDKCResult_TrustedClosingTransactionNoneZ _res); + export function CResult_TrustedClosingTransactionNoneZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentSecretAPIErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_TrustedClosingTransactionNoneZ_free(_res); // debug statements here } - // uint64_t CResult_PaymentSecretAPIErrorZ_clone_ptr(LDKCResult_PaymentSecretAPIErrorZ *NONNULL_PTR arg); - export function CResult_PaymentSecretAPIErrorZ_clone_ptr(arg: number): number { + // struct LDKCResult_CommitmentTransactionDecodeErrorZ CResult_CommitmentTransactionDecodeErrorZ_ok(struct LDKCommitmentTransaction o); + export function CResult_CommitmentTransactionDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentSecretAPIErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_CommitmentTransactionDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_PaymentSecretAPIErrorZ CResult_PaymentSecretAPIErrorZ_clone(const struct LDKCResult_PaymentSecretAPIErrorZ *NONNULL_PTR orig); - export function CResult_PaymentSecretAPIErrorZ_clone(orig: number): number { + // struct LDKCResult_CommitmentTransactionDecodeErrorZ CResult_CommitmentTransactionDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_CommitmentTransactionDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentSecretAPIErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_CommitmentTransactionDecodeErrorZ_err(e); return nativeResponseValue; } - // struct LDKCResult_PaymentPreimageAPIErrorZ CResult_PaymentPreimageAPIErrorZ_ok(struct LDKThirtyTwoBytes o); - export function CResult_PaymentPreimageAPIErrorZ_ok(o: Uint8Array): number { + // bool CResult_CommitmentTransactionDecodeErrorZ_is_ok(const struct LDKCResult_CommitmentTransactionDecodeErrorZ *NONNULL_PTR o); + export function CResult_CommitmentTransactionDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentPreimageAPIErrorZ_ok(encodeArray(o)); + const nativeResponseValue = wasm.TS_CResult_CommitmentTransactionDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // struct LDKCResult_PaymentPreimageAPIErrorZ CResult_PaymentPreimageAPIErrorZ_err(struct LDKAPIError e); - export function CResult_PaymentPreimageAPIErrorZ_err(e: number): number { + // void CResult_CommitmentTransactionDecodeErrorZ_free(struct LDKCResult_CommitmentTransactionDecodeErrorZ _res); + export function CResult_CommitmentTransactionDecodeErrorZ_free(_res: number): void { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_CResult_CommitmentTransactionDecodeErrorZ_free(_res); + // debug statements here + } + // uint64_t CResult_CommitmentTransactionDecodeErrorZ_clone_ptr(LDKCResult_CommitmentTransactionDecodeErrorZ *NONNULL_PTR arg); + export function CResult_CommitmentTransactionDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentPreimageAPIErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_CommitmentTransactionDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // bool CResult_PaymentPreimageAPIErrorZ_is_ok(const struct LDKCResult_PaymentPreimageAPIErrorZ *NONNULL_PTR o); - export function CResult_PaymentPreimageAPIErrorZ_is_ok(o: number): boolean { + // struct LDKCResult_CommitmentTransactionDecodeErrorZ CResult_CommitmentTransactionDecodeErrorZ_clone(const struct LDKCResult_CommitmentTransactionDecodeErrorZ *NONNULL_PTR orig); + export function CResult_CommitmentTransactionDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentPreimageAPIErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_CommitmentTransactionDecodeErrorZ_clone(orig); return nativeResponseValue; } - // void CResult_PaymentPreimageAPIErrorZ_free(struct LDKCResult_PaymentPreimageAPIErrorZ _res); - export function CResult_PaymentPreimageAPIErrorZ_free(_res: number): void { + // struct LDKCResult_TrustedCommitmentTransactionNoneZ CResult_TrustedCommitmentTransactionNoneZ_ok(struct LDKTrustedCommitmentTransaction o); + export function CResult_TrustedCommitmentTransactionNoneZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentPreimageAPIErrorZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_TrustedCommitmentTransactionNoneZ_ok(o); + return nativeResponseValue; } - // uint64_t CResult_PaymentPreimageAPIErrorZ_clone_ptr(LDKCResult_PaymentPreimageAPIErrorZ *NONNULL_PTR arg); - export function CResult_PaymentPreimageAPIErrorZ_clone_ptr(arg: number): number { + // struct LDKCResult_TrustedCommitmentTransactionNoneZ CResult_TrustedCommitmentTransactionNoneZ_err(void); + export function CResult_TrustedCommitmentTransactionNoneZ_err(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentPreimageAPIErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_TrustedCommitmentTransactionNoneZ_err(); return nativeResponseValue; } - // struct LDKCResult_PaymentPreimageAPIErrorZ CResult_PaymentPreimageAPIErrorZ_clone(const struct LDKCResult_PaymentPreimageAPIErrorZ *NONNULL_PTR orig); - export function CResult_PaymentPreimageAPIErrorZ_clone(orig: number): number { + // bool CResult_TrustedCommitmentTransactionNoneZ_is_ok(const struct LDKCResult_TrustedCommitmentTransactionNoneZ *NONNULL_PTR o); + export function CResult_TrustedCommitmentTransactionNoneZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentPreimageAPIErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_TrustedCommitmentTransactionNoneZ_is_ok(o); return nativeResponseValue; } - // void CVec_ChannelMonitorZ_free(struct LDKCVec_ChannelMonitorZ _res); - export function CVec_ChannelMonitorZ_free(_res: number[]): void { + // void CResult_TrustedCommitmentTransactionNoneZ_free(struct LDKCResult_TrustedCommitmentTransactionNoneZ _res); + export function CResult_TrustedCommitmentTransactionNoneZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_ChannelMonitorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_TrustedCommitmentTransactionNoneZ_free(_res); // debug statements here } - // struct LDKC2Tuple_BlockHashChannelManagerZ C2Tuple_BlockHashChannelManagerZ_new(struct LDKThirtyTwoBytes a, struct LDKChannelManager b); - export function C2Tuple_BlockHashChannelManagerZ_new(a: Uint8Array, b: number): number { + // struct LDKCResult_CVec_SignatureZNoneZ CResult_CVec_SignatureZNoneZ_ok(struct LDKCVec_SignatureZ o); + export function CResult_CVec_SignatureZNoneZ_ok(o: Uint8Array[]): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_BlockHashChannelManagerZ_new(encodeArray(a), b); + const nativeResponseValue = wasm.TS_CResult_CVec_SignatureZNoneZ_ok(o); return nativeResponseValue; } - // void C2Tuple_BlockHashChannelManagerZ_free(struct LDKC2Tuple_BlockHashChannelManagerZ _res); - export function C2Tuple_BlockHashChannelManagerZ_free(_res: number): void { + // struct LDKCResult_CVec_SignatureZNoneZ CResult_CVec_SignatureZNoneZ_err(void); + export function CResult_CVec_SignatureZNoneZ_err(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_BlockHashChannelManagerZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_CVec_SignatureZNoneZ_err(); + return nativeResponseValue; } - // struct LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_ok(struct LDKC2Tuple_BlockHashChannelManagerZ o); - export function CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_ok(o: number): number { + // bool CResult_CVec_SignatureZNoneZ_is_ok(const struct LDKCResult_CVec_SignatureZNoneZ *NONNULL_PTR o); + export function CResult_CVec_SignatureZNoneZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_CVec_SignatureZNoneZ_is_ok(o); return nativeResponseValue; } - // struct LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_err(e: number): number { + // void CResult_CVec_SignatureZNoneZ_free(struct LDKCResult_CVec_SignatureZNoneZ _res); + export function CResult_CVec_SignatureZNoneZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_err(e); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_CVec_SignatureZNoneZ_free(_res); + // debug statements here } - // bool CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_is_ok(const struct LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ *NONNULL_PTR o); - export function CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_is_ok(o: number): boolean { + // uint64_t CResult_CVec_SignatureZNoneZ_clone_ptr(LDKCResult_CVec_SignatureZNoneZ *NONNULL_PTR arg); + export function CResult_CVec_SignatureZNoneZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_CVec_SignatureZNoneZ_clone_ptr(arg); return nativeResponseValue; } - // void CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_free(struct LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ _res); - export function CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_free(_res: number): void { + // struct LDKCResult_CVec_SignatureZNoneZ CResult_CVec_SignatureZNoneZ_clone(const struct LDKCResult_CVec_SignatureZNoneZ *NONNULL_PTR orig); + export function CResult_CVec_SignatureZNoneZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_CVec_SignatureZNoneZ_clone(orig); + return nativeResponseValue; } - // struct LDKCResult_ChannelConfigDecodeErrorZ CResult_ChannelConfigDecodeErrorZ_ok(struct LDKChannelConfig o); - export function CResult_ChannelConfigDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_ShutdownScriptDecodeErrorZ CResult_ShutdownScriptDecodeErrorZ_ok(struct LDKShutdownScript o); + export function CResult_ShutdownScriptDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelConfigDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_ShutdownScriptDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_ChannelConfigDecodeErrorZ CResult_ChannelConfigDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_ChannelConfigDecodeErrorZ_err(e: number): number { + // struct LDKCResult_ShutdownScriptDecodeErrorZ CResult_ShutdownScriptDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_ShutdownScriptDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelConfigDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_ShutdownScriptDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_ChannelConfigDecodeErrorZ_is_ok(const struct LDKCResult_ChannelConfigDecodeErrorZ *NONNULL_PTR o); - export function CResult_ChannelConfigDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_ShutdownScriptDecodeErrorZ_is_ok(const struct LDKCResult_ShutdownScriptDecodeErrorZ *NONNULL_PTR o); + export function CResult_ShutdownScriptDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelConfigDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_ShutdownScriptDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_ChannelConfigDecodeErrorZ_free(struct LDKCResult_ChannelConfigDecodeErrorZ _res); - export function CResult_ChannelConfigDecodeErrorZ_free(_res: number): void { + // void CResult_ShutdownScriptDecodeErrorZ_free(struct LDKCResult_ShutdownScriptDecodeErrorZ _res); + export function CResult_ShutdownScriptDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelConfigDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_ShutdownScriptDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_ChannelConfigDecodeErrorZ_clone_ptr(LDKCResult_ChannelConfigDecodeErrorZ *NONNULL_PTR arg); - export function CResult_ChannelConfigDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_ShutdownScriptDecodeErrorZ_clone_ptr(LDKCResult_ShutdownScriptDecodeErrorZ *NONNULL_PTR arg); + export function CResult_ShutdownScriptDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelConfigDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_ShutdownScriptDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_ChannelConfigDecodeErrorZ CResult_ChannelConfigDecodeErrorZ_clone(const struct LDKCResult_ChannelConfigDecodeErrorZ *NONNULL_PTR orig); - export function CResult_ChannelConfigDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_ShutdownScriptDecodeErrorZ CResult_ShutdownScriptDecodeErrorZ_clone(const struct LDKCResult_ShutdownScriptDecodeErrorZ *NONNULL_PTR orig); + export function CResult_ShutdownScriptDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelConfigDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_ShutdownScriptDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_OutPointDecodeErrorZ CResult_OutPointDecodeErrorZ_ok(struct LDKOutPoint o); - export function CResult_OutPointDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_ShutdownScriptInvalidShutdownScriptZ CResult_ShutdownScriptInvalidShutdownScriptZ_ok(struct LDKShutdownScript o); + export function CResult_ShutdownScriptInvalidShutdownScriptZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_OutPointDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_ShutdownScriptInvalidShutdownScriptZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_OutPointDecodeErrorZ CResult_OutPointDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_OutPointDecodeErrorZ_err(e: number): number { + // struct LDKCResult_ShutdownScriptInvalidShutdownScriptZ CResult_ShutdownScriptInvalidShutdownScriptZ_err(struct LDKInvalidShutdownScript e); + export function CResult_ShutdownScriptInvalidShutdownScriptZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_OutPointDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_ShutdownScriptInvalidShutdownScriptZ_err(e); return nativeResponseValue; } - // bool CResult_OutPointDecodeErrorZ_is_ok(const struct LDKCResult_OutPointDecodeErrorZ *NONNULL_PTR o); - export function CResult_OutPointDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_ShutdownScriptInvalidShutdownScriptZ_is_ok(const struct LDKCResult_ShutdownScriptInvalidShutdownScriptZ *NONNULL_PTR o); + export function CResult_ShutdownScriptInvalidShutdownScriptZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_OutPointDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_ShutdownScriptInvalidShutdownScriptZ_is_ok(o); return nativeResponseValue; } - // void CResult_OutPointDecodeErrorZ_free(struct LDKCResult_OutPointDecodeErrorZ _res); - export function CResult_OutPointDecodeErrorZ_free(_res: number): void { + // void CResult_ShutdownScriptInvalidShutdownScriptZ_free(struct LDKCResult_ShutdownScriptInvalidShutdownScriptZ _res); + export function CResult_ShutdownScriptInvalidShutdownScriptZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_OutPointDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_ShutdownScriptInvalidShutdownScriptZ_free(_res); // debug statements here } - // uint64_t CResult_OutPointDecodeErrorZ_clone_ptr(LDKCResult_OutPointDecodeErrorZ *NONNULL_PTR arg); - export function CResult_OutPointDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_ShutdownScriptInvalidShutdownScriptZ_clone_ptr(LDKCResult_ShutdownScriptInvalidShutdownScriptZ *NONNULL_PTR arg); + export function CResult_ShutdownScriptInvalidShutdownScriptZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_OutPointDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_ShutdownScriptInvalidShutdownScriptZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_OutPointDecodeErrorZ CResult_OutPointDecodeErrorZ_clone(const struct LDKCResult_OutPointDecodeErrorZ *NONNULL_PTR orig); - export function CResult_OutPointDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_ShutdownScriptInvalidShutdownScriptZ CResult_ShutdownScriptInvalidShutdownScriptZ_clone(const struct LDKCResult_ShutdownScriptInvalidShutdownScriptZ *NONNULL_PTR orig); + export function CResult_ShutdownScriptInvalidShutdownScriptZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_OutPointDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_ShutdownScriptInvalidShutdownScriptZ_clone(orig); return nativeResponseValue; } // struct LDKCOption_TypeZ COption_TypeZ_some(struct LDKType o); @@ -5915,7 +4978,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_TypeZ_some(o); + const nativeResponseValue = wasm.TS_COption_TypeZ_some(o); return nativeResponseValue; } // struct LDKCOption_TypeZ COption_TypeZ_none(void); @@ -5923,7 +4986,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_TypeZ_none(); + const nativeResponseValue = wasm.TS_COption_TypeZ_none(); return nativeResponseValue; } // void COption_TypeZ_free(struct LDKCOption_TypeZ _res); @@ -5931,7 +4994,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_TypeZ_free(_res); + const nativeResponseValue = wasm.TS_COption_TypeZ_free(_res); // debug statements here } // uint64_t COption_TypeZ_clone_ptr(LDKCOption_TypeZ *NONNULL_PTR arg); @@ -5939,7 +5002,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_TypeZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_COption_TypeZ_clone_ptr(arg); return nativeResponseValue; } // struct LDKCOption_TypeZ COption_TypeZ_clone(const struct LDKCOption_TypeZ *NONNULL_PTR orig); @@ -5947,7 +5010,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_TypeZ_clone(orig); + const nativeResponseValue = wasm.TS_COption_TypeZ_clone(orig); return nativeResponseValue; } // struct LDKCResult_COption_TypeZDecodeErrorZ CResult_COption_TypeZDecodeErrorZ_ok(struct LDKCOption_TypeZ o); @@ -5955,7 +5018,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_COption_TypeZDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_COption_TypeZDecodeErrorZ_ok(o); return nativeResponseValue; } // struct LDKCResult_COption_TypeZDecodeErrorZ CResult_COption_TypeZDecodeErrorZ_err(struct LDKDecodeError e); @@ -5963,7 +5026,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_COption_TypeZDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_COption_TypeZDecodeErrorZ_err(e); return nativeResponseValue; } // bool CResult_COption_TypeZDecodeErrorZ_is_ok(const struct LDKCResult_COption_TypeZDecodeErrorZ *NONNULL_PTR o); @@ -5971,7 +5034,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_COption_TypeZDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_COption_TypeZDecodeErrorZ_is_ok(o); return nativeResponseValue; } // void CResult_COption_TypeZDecodeErrorZ_free(struct LDKCResult_COption_TypeZDecodeErrorZ _res); @@ -5979,7 +5042,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_COption_TypeZDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_COption_TypeZDecodeErrorZ_free(_res); // debug statements here } // uint64_t CResult_COption_TypeZDecodeErrorZ_clone_ptr(LDKCResult_COption_TypeZDecodeErrorZ *NONNULL_PTR arg); @@ -5987,7 +5050,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_COption_TypeZDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_COption_TypeZDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } // struct LDKCResult_COption_TypeZDecodeErrorZ CResult_COption_TypeZDecodeErrorZ_clone(const struct LDKCResult_COption_TypeZDecodeErrorZ *NONNULL_PTR orig); @@ -5995,1055 +5058,991 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_COption_TypeZDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_COption_TypeZDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_PaymentIdPaymentErrorZ CResult_PaymentIdPaymentErrorZ_ok(struct LDKThirtyTwoBytes o); - export function CResult_PaymentIdPaymentErrorZ_ok(o: Uint8Array): number { + // struct LDKCResult_StringErrorZ CResult_StringErrorZ_ok(struct LDKStr o); + export function CResult_StringErrorZ_ok(o: String): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentIdPaymentErrorZ_ok(encodeArray(o)); + const nativeResponseValue = wasm.TS_CResult_StringErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_PaymentIdPaymentErrorZ CResult_PaymentIdPaymentErrorZ_err(struct LDKPaymentError e); - export function CResult_PaymentIdPaymentErrorZ_err(e: number): number { + // struct LDKCResult_StringErrorZ CResult_StringErrorZ_err(enum LDKSecp256k1Error e); + export function CResult_StringErrorZ_err(e: Secp256k1Error): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentIdPaymentErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_StringErrorZ_err(e); return nativeResponseValue; } - // bool CResult_PaymentIdPaymentErrorZ_is_ok(const struct LDKCResult_PaymentIdPaymentErrorZ *NONNULL_PTR o); - export function CResult_PaymentIdPaymentErrorZ_is_ok(o: number): boolean { + // bool CResult_StringErrorZ_is_ok(const struct LDKCResult_StringErrorZ *NONNULL_PTR o); + export function CResult_StringErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentIdPaymentErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_StringErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_PaymentIdPaymentErrorZ_free(struct LDKCResult_PaymentIdPaymentErrorZ _res); - export function CResult_PaymentIdPaymentErrorZ_free(_res: number): void { + // void CResult_StringErrorZ_free(struct LDKCResult_StringErrorZ _res); + export function CResult_StringErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PaymentIdPaymentErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_StringErrorZ_free(_res); // debug statements here } - // uint64_t CResult_PaymentIdPaymentErrorZ_clone_ptr(LDKCResult_PaymentIdPaymentErrorZ *NONNULL_PTR arg); - export function CResult_PaymentIdPaymentErrorZ_clone_ptr(arg: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_PaymentIdPaymentErrorZ_clone_ptr(arg); - return nativeResponseValue; - } - // struct LDKCResult_PaymentIdPaymentErrorZ CResult_PaymentIdPaymentErrorZ_clone(const struct LDKCResult_PaymentIdPaymentErrorZ *NONNULL_PTR orig); - export function CResult_PaymentIdPaymentErrorZ_clone(orig: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_PaymentIdPaymentErrorZ_clone(orig); - return nativeResponseValue; - } - // struct LDKCResult_SiPrefixNoneZ CResult_SiPrefixNoneZ_ok(enum LDKSiPrefix o); - export function CResult_SiPrefixNoneZ_ok(o: SiPrefix): number { + // struct LDKCResult_ChannelMonitorUpdateDecodeErrorZ CResult_ChannelMonitorUpdateDecodeErrorZ_ok(struct LDKChannelMonitorUpdate o); + export function CResult_ChannelMonitorUpdateDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SiPrefixNoneZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_ChannelMonitorUpdateDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_SiPrefixNoneZ CResult_SiPrefixNoneZ_err(void); - export function CResult_SiPrefixNoneZ_err(): number { + // struct LDKCResult_ChannelMonitorUpdateDecodeErrorZ CResult_ChannelMonitorUpdateDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_ChannelMonitorUpdateDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SiPrefixNoneZ_err(); + const nativeResponseValue = wasm.TS_CResult_ChannelMonitorUpdateDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_SiPrefixNoneZ_is_ok(const struct LDKCResult_SiPrefixNoneZ *NONNULL_PTR o); - export function CResult_SiPrefixNoneZ_is_ok(o: number): boolean { + // bool CResult_ChannelMonitorUpdateDecodeErrorZ_is_ok(const struct LDKCResult_ChannelMonitorUpdateDecodeErrorZ *NONNULL_PTR o); + export function CResult_ChannelMonitorUpdateDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SiPrefixNoneZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_ChannelMonitorUpdateDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_SiPrefixNoneZ_free(struct LDKCResult_SiPrefixNoneZ _res); - export function CResult_SiPrefixNoneZ_free(_res: number): void { + // void CResult_ChannelMonitorUpdateDecodeErrorZ_free(struct LDKCResult_ChannelMonitorUpdateDecodeErrorZ _res); + export function CResult_ChannelMonitorUpdateDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SiPrefixNoneZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_ChannelMonitorUpdateDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_SiPrefixNoneZ_clone_ptr(LDKCResult_SiPrefixNoneZ *NONNULL_PTR arg); - export function CResult_SiPrefixNoneZ_clone_ptr(arg: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_SiPrefixNoneZ_clone_ptr(arg); - return nativeResponseValue; - } - // struct LDKCResult_SiPrefixNoneZ CResult_SiPrefixNoneZ_clone(const struct LDKCResult_SiPrefixNoneZ *NONNULL_PTR orig); - export function CResult_SiPrefixNoneZ_clone(orig: number): number { + // uint64_t CResult_ChannelMonitorUpdateDecodeErrorZ_clone_ptr(LDKCResult_ChannelMonitorUpdateDecodeErrorZ *NONNULL_PTR arg); + export function CResult_ChannelMonitorUpdateDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SiPrefixNoneZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_ChannelMonitorUpdateDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_InvoiceNoneZ CResult_InvoiceNoneZ_ok(struct LDKInvoice o); - export function CResult_InvoiceNoneZ_ok(o: number): number { + // struct LDKCResult_ChannelMonitorUpdateDecodeErrorZ CResult_ChannelMonitorUpdateDecodeErrorZ_clone(const struct LDKCResult_ChannelMonitorUpdateDecodeErrorZ *NONNULL_PTR orig); + export function CResult_ChannelMonitorUpdateDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InvoiceNoneZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_ChannelMonitorUpdateDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_InvoiceNoneZ CResult_InvoiceNoneZ_err(void); - export function CResult_InvoiceNoneZ_err(): number { + // struct LDKCOption_MonitorEventZ COption_MonitorEventZ_some(struct LDKMonitorEvent o); + export function COption_MonitorEventZ_some(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InvoiceNoneZ_err(); + const nativeResponseValue = wasm.TS_COption_MonitorEventZ_some(o); return nativeResponseValue; } - // bool CResult_InvoiceNoneZ_is_ok(const struct LDKCResult_InvoiceNoneZ *NONNULL_PTR o); - export function CResult_InvoiceNoneZ_is_ok(o: number): boolean { + // struct LDKCOption_MonitorEventZ COption_MonitorEventZ_none(void); + export function COption_MonitorEventZ_none(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InvoiceNoneZ_is_ok(o); + const nativeResponseValue = wasm.TS_COption_MonitorEventZ_none(); return nativeResponseValue; } - // void CResult_InvoiceNoneZ_free(struct LDKCResult_InvoiceNoneZ _res); - export function CResult_InvoiceNoneZ_free(_res: number): void { + // void COption_MonitorEventZ_free(struct LDKCOption_MonitorEventZ _res); + export function COption_MonitorEventZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InvoiceNoneZ_free(_res); + const nativeResponseValue = wasm.TS_COption_MonitorEventZ_free(_res); // debug statements here } - // uint64_t CResult_InvoiceNoneZ_clone_ptr(LDKCResult_InvoiceNoneZ *NONNULL_PTR arg); - export function CResult_InvoiceNoneZ_clone_ptr(arg: number): number { + // uint64_t COption_MonitorEventZ_clone_ptr(LDKCOption_MonitorEventZ *NONNULL_PTR arg); + export function COption_MonitorEventZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InvoiceNoneZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_COption_MonitorEventZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_InvoiceNoneZ CResult_InvoiceNoneZ_clone(const struct LDKCResult_InvoiceNoneZ *NONNULL_PTR orig); - export function CResult_InvoiceNoneZ_clone(orig: number): number { + // struct LDKCOption_MonitorEventZ COption_MonitorEventZ_clone(const struct LDKCOption_MonitorEventZ *NONNULL_PTR orig); + export function COption_MonitorEventZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InvoiceNoneZ_clone(orig); + const nativeResponseValue = wasm.TS_COption_MonitorEventZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_SignedRawInvoiceNoneZ CResult_SignedRawInvoiceNoneZ_ok(struct LDKSignedRawInvoice o); - export function CResult_SignedRawInvoiceNoneZ_ok(o: number): number { + // struct LDKCResult_COption_MonitorEventZDecodeErrorZ CResult_COption_MonitorEventZDecodeErrorZ_ok(struct LDKCOption_MonitorEventZ o); + export function CResult_COption_MonitorEventZDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SignedRawInvoiceNoneZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_COption_MonitorEventZDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_SignedRawInvoiceNoneZ CResult_SignedRawInvoiceNoneZ_err(void); - export function CResult_SignedRawInvoiceNoneZ_err(): number { + // struct LDKCResult_COption_MonitorEventZDecodeErrorZ CResult_COption_MonitorEventZDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_COption_MonitorEventZDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SignedRawInvoiceNoneZ_err(); + const nativeResponseValue = wasm.TS_CResult_COption_MonitorEventZDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_SignedRawInvoiceNoneZ_is_ok(const struct LDKCResult_SignedRawInvoiceNoneZ *NONNULL_PTR o); - export function CResult_SignedRawInvoiceNoneZ_is_ok(o: number): boolean { + // bool CResult_COption_MonitorEventZDecodeErrorZ_is_ok(const struct LDKCResult_COption_MonitorEventZDecodeErrorZ *NONNULL_PTR o); + export function CResult_COption_MonitorEventZDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SignedRawInvoiceNoneZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_COption_MonitorEventZDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_SignedRawInvoiceNoneZ_free(struct LDKCResult_SignedRawInvoiceNoneZ _res); - export function CResult_SignedRawInvoiceNoneZ_free(_res: number): void { + // void CResult_COption_MonitorEventZDecodeErrorZ_free(struct LDKCResult_COption_MonitorEventZDecodeErrorZ _res); + export function CResult_COption_MonitorEventZDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SignedRawInvoiceNoneZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_COption_MonitorEventZDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_SignedRawInvoiceNoneZ_clone_ptr(LDKCResult_SignedRawInvoiceNoneZ *NONNULL_PTR arg); - export function CResult_SignedRawInvoiceNoneZ_clone_ptr(arg: number): number { + // uint64_t CResult_COption_MonitorEventZDecodeErrorZ_clone_ptr(LDKCResult_COption_MonitorEventZDecodeErrorZ *NONNULL_PTR arg); + export function CResult_COption_MonitorEventZDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SignedRawInvoiceNoneZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_COption_MonitorEventZDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_SignedRawInvoiceNoneZ CResult_SignedRawInvoiceNoneZ_clone(const struct LDKCResult_SignedRawInvoiceNoneZ *NONNULL_PTR orig); - export function CResult_SignedRawInvoiceNoneZ_clone(orig: number): number { + // struct LDKCResult_COption_MonitorEventZDecodeErrorZ CResult_COption_MonitorEventZDecodeErrorZ_clone(const struct LDKCResult_COption_MonitorEventZDecodeErrorZ *NONNULL_PTR orig); + export function CResult_COption_MonitorEventZDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_SignedRawInvoiceNoneZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_COption_MonitorEventZDecodeErrorZ_clone(orig); return nativeResponseValue; } - // uint64_t C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone_ptr(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ *NONNULL_PTR arg); - export function C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone_ptr(arg: number): number { + // struct LDKCResult_HTLCUpdateDecodeErrorZ CResult_HTLCUpdateDecodeErrorZ_ok(struct LDKHTLCUpdate o); + export function CResult_HTLCUpdateDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_HTLCUpdateDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone(const struct LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ *NONNULL_PTR orig); - export function C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone(orig: number): number { + // struct LDKCResult_HTLCUpdateDecodeErrorZ CResult_HTLCUpdateDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_HTLCUpdateDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_HTLCUpdateDecodeErrorZ_err(e); return nativeResponseValue; } - // struct LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ C3Tuple_RawInvoice_u832InvoiceSignatureZ_new(struct LDKRawInvoice a, struct LDKThirtyTwoBytes b, struct LDKInvoiceSignature c); - export function C3Tuple_RawInvoice_u832InvoiceSignatureZ_new(a: number, b: Uint8Array, c: number): number { + // bool CResult_HTLCUpdateDecodeErrorZ_is_ok(const struct LDKCResult_HTLCUpdateDecodeErrorZ *NONNULL_PTR o); + export function CResult_HTLCUpdateDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C3Tuple_RawInvoice_u832InvoiceSignatureZ_new(a, encodeArray(b), c); + const nativeResponseValue = wasm.TS_CResult_HTLCUpdateDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void C3Tuple_RawInvoice_u832InvoiceSignatureZ_free(struct LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ _res); - export function C3Tuple_RawInvoice_u832InvoiceSignatureZ_free(_res: number): void { + // void CResult_HTLCUpdateDecodeErrorZ_free(struct LDKCResult_HTLCUpdateDecodeErrorZ _res); + export function CResult_HTLCUpdateDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C3Tuple_RawInvoice_u832InvoiceSignatureZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_HTLCUpdateDecodeErrorZ_free(_res); // debug statements here } - // struct LDKCResult_PayeePubKeyErrorZ CResult_PayeePubKeyErrorZ_ok(struct LDKPayeePubKey o); - export function CResult_PayeePubKeyErrorZ_ok(o: number): number { + // uint64_t CResult_HTLCUpdateDecodeErrorZ_clone_ptr(LDKCResult_HTLCUpdateDecodeErrorZ *NONNULL_PTR arg); + export function CResult_HTLCUpdateDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PayeePubKeyErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_HTLCUpdateDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_PayeePubKeyErrorZ CResult_PayeePubKeyErrorZ_err(enum LDKSecp256k1Error e); - export function CResult_PayeePubKeyErrorZ_err(e: Secp256k1Error): number { + // struct LDKCResult_HTLCUpdateDecodeErrorZ CResult_HTLCUpdateDecodeErrorZ_clone(const struct LDKCResult_HTLCUpdateDecodeErrorZ *NONNULL_PTR orig); + export function CResult_HTLCUpdateDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PayeePubKeyErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_HTLCUpdateDecodeErrorZ_clone(orig); return nativeResponseValue; } - // bool CResult_PayeePubKeyErrorZ_is_ok(const struct LDKCResult_PayeePubKeyErrorZ *NONNULL_PTR o); - export function CResult_PayeePubKeyErrorZ_is_ok(o: number): boolean { + // struct LDKCResult_NoneNoneZ CResult_NoneNoneZ_ok(void); + export function CResult_NoneNoneZ_ok(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PayeePubKeyErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_NoneNoneZ_ok(); return nativeResponseValue; } - // void CResult_PayeePubKeyErrorZ_free(struct LDKCResult_PayeePubKeyErrorZ _res); - export function CResult_PayeePubKeyErrorZ_free(_res: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_PayeePubKeyErrorZ_free(_res); - // debug statements here - } - // uint64_t CResult_PayeePubKeyErrorZ_clone_ptr(LDKCResult_PayeePubKeyErrorZ *NONNULL_PTR arg); - export function CResult_PayeePubKeyErrorZ_clone_ptr(arg: number): number { + // struct LDKCResult_NoneNoneZ CResult_NoneNoneZ_err(void); + export function CResult_NoneNoneZ_err(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PayeePubKeyErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_NoneNoneZ_err(); return nativeResponseValue; } - // struct LDKCResult_PayeePubKeyErrorZ CResult_PayeePubKeyErrorZ_clone(const struct LDKCResult_PayeePubKeyErrorZ *NONNULL_PTR orig); - export function CResult_PayeePubKeyErrorZ_clone(orig: number): number { + // bool CResult_NoneNoneZ_is_ok(const struct LDKCResult_NoneNoneZ *NONNULL_PTR o); + export function CResult_NoneNoneZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PayeePubKeyErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_NoneNoneZ_is_ok(o); return nativeResponseValue; } - // void CVec_PrivateRouteZ_free(struct LDKCVec_PrivateRouteZ _res); - export function CVec_PrivateRouteZ_free(_res: number[]): void { + // void CResult_NoneNoneZ_free(struct LDKCResult_NoneNoneZ _res); + export function CResult_NoneNoneZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_PrivateRouteZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_NoneNoneZ_free(_res); // debug statements here } - // struct LDKCResult_PositiveTimestampCreationErrorZ CResult_PositiveTimestampCreationErrorZ_ok(struct LDKPositiveTimestamp o); - export function CResult_PositiveTimestampCreationErrorZ_ok(o: number): number { + // uint64_t CResult_NoneNoneZ_clone_ptr(LDKCResult_NoneNoneZ *NONNULL_PTR arg); + export function CResult_NoneNoneZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PositiveTimestampCreationErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_NoneNoneZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_PositiveTimestampCreationErrorZ CResult_PositiveTimestampCreationErrorZ_err(enum LDKCreationError e); - export function CResult_PositiveTimestampCreationErrorZ_err(e: CreationError): number { + // struct LDKCResult_NoneNoneZ CResult_NoneNoneZ_clone(const struct LDKCResult_NoneNoneZ *NONNULL_PTR orig); + export function CResult_NoneNoneZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PositiveTimestampCreationErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_NoneNoneZ_clone(orig); return nativeResponseValue; } - // bool CResult_PositiveTimestampCreationErrorZ_is_ok(const struct LDKCResult_PositiveTimestampCreationErrorZ *NONNULL_PTR o); - export function CResult_PositiveTimestampCreationErrorZ_is_ok(o: number): boolean { + // struct LDKC2Tuple_OutPointScriptZ C2Tuple_OutPointScriptZ_new(struct LDKOutPoint a, struct LDKCVec_u8Z b); + export function C2Tuple_OutPointScriptZ_new(a: number, b: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PositiveTimestampCreationErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_C2Tuple_OutPointScriptZ_new(a, encodeUint8Array(b)); return nativeResponseValue; } - // void CResult_PositiveTimestampCreationErrorZ_free(struct LDKCResult_PositiveTimestampCreationErrorZ _res); - export function CResult_PositiveTimestampCreationErrorZ_free(_res: number): void { + // void C2Tuple_OutPointScriptZ_free(struct LDKC2Tuple_OutPointScriptZ _res); + export function C2Tuple_OutPointScriptZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PositiveTimestampCreationErrorZ_free(_res); + const nativeResponseValue = wasm.TS_C2Tuple_OutPointScriptZ_free(_res); // debug statements here } - // uint64_t CResult_PositiveTimestampCreationErrorZ_clone_ptr(LDKCResult_PositiveTimestampCreationErrorZ *NONNULL_PTR arg); - export function CResult_PositiveTimestampCreationErrorZ_clone_ptr(arg: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_PositiveTimestampCreationErrorZ_clone_ptr(arg); - return nativeResponseValue; - } - // struct LDKCResult_PositiveTimestampCreationErrorZ CResult_PositiveTimestampCreationErrorZ_clone(const struct LDKCResult_PositiveTimestampCreationErrorZ *NONNULL_PTR orig); - export function CResult_PositiveTimestampCreationErrorZ_clone(orig: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_PositiveTimestampCreationErrorZ_clone(orig); - return nativeResponseValue; - } - // struct LDKCResult_NoneSemanticErrorZ CResult_NoneSemanticErrorZ_ok(void); - export function CResult_NoneSemanticErrorZ_ok(): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_NoneSemanticErrorZ_ok(); - return nativeResponseValue; - } - // struct LDKCResult_NoneSemanticErrorZ CResult_NoneSemanticErrorZ_err(enum LDKSemanticError e); - export function CResult_NoneSemanticErrorZ_err(e: SemanticError): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_NoneSemanticErrorZ_err(e); - return nativeResponseValue; - } - // bool CResult_NoneSemanticErrorZ_is_ok(const struct LDKCResult_NoneSemanticErrorZ *NONNULL_PTR o); - export function CResult_NoneSemanticErrorZ_is_ok(o: number): boolean { + // struct LDKC2Tuple_u32ScriptZ C2Tuple_u32ScriptZ_new(uint32_t a, struct LDKCVec_u8Z b); + export function C2Tuple_u32ScriptZ_new(a: number, b: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneSemanticErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_C2Tuple_u32ScriptZ_new(a, encodeUint8Array(b)); return nativeResponseValue; } - // void CResult_NoneSemanticErrorZ_free(struct LDKCResult_NoneSemanticErrorZ _res); - export function CResult_NoneSemanticErrorZ_free(_res: number): void { + // void C2Tuple_u32ScriptZ_free(struct LDKC2Tuple_u32ScriptZ _res); + export function C2Tuple_u32ScriptZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneSemanticErrorZ_free(_res); + const nativeResponseValue = wasm.TS_C2Tuple_u32ScriptZ_free(_res); // debug statements here } - // uint64_t CResult_NoneSemanticErrorZ_clone_ptr(LDKCResult_NoneSemanticErrorZ *NONNULL_PTR arg); - export function CResult_NoneSemanticErrorZ_clone_ptr(arg: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_NoneSemanticErrorZ_clone_ptr(arg); - return nativeResponseValue; - } - // struct LDKCResult_NoneSemanticErrorZ CResult_NoneSemanticErrorZ_clone(const struct LDKCResult_NoneSemanticErrorZ *NONNULL_PTR orig); - export function CResult_NoneSemanticErrorZ_clone(orig: number): number { + // void CVec_C2Tuple_u32ScriptZZ_free(struct LDKCVec_C2Tuple_u32ScriptZZ _res); + export function CVec_C2Tuple_u32ScriptZZ_free(_res: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneSemanticErrorZ_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CVec_C2Tuple_u32ScriptZZ_free(_res); + // debug statements here } - // struct LDKCResult_InvoiceSemanticErrorZ CResult_InvoiceSemanticErrorZ_ok(struct LDKInvoice o); - export function CResult_InvoiceSemanticErrorZ_ok(o: number): number { + // struct LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_new(struct LDKThirtyTwoBytes a, struct LDKCVec_C2Tuple_u32ScriptZZ b); + export function C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_new(a: Uint8Array, b: number[]): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InvoiceSemanticErrorZ_ok(o); + const nativeResponseValue = wasm.TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_new(encodeUint8Array(a), b); return nativeResponseValue; } - // struct LDKCResult_InvoiceSemanticErrorZ CResult_InvoiceSemanticErrorZ_err(enum LDKSemanticError e); - export function CResult_InvoiceSemanticErrorZ_err(e: SemanticError): number { + // void C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_free(struct LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ _res); + export function C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InvoiceSemanticErrorZ_err(e); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_free(_res); + // debug statements here } - // bool CResult_InvoiceSemanticErrorZ_is_ok(const struct LDKCResult_InvoiceSemanticErrorZ *NONNULL_PTR o); - export function CResult_InvoiceSemanticErrorZ_is_ok(o: number): boolean { + // void CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ_free(struct LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ _res); + export function CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ_free(_res: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InvoiceSemanticErrorZ_is_ok(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ_free(_res); + // debug statements here } - // void CResult_InvoiceSemanticErrorZ_free(struct LDKCResult_InvoiceSemanticErrorZ _res); - export function CResult_InvoiceSemanticErrorZ_free(_res: number): void { + // void CVec_MonitorEventZ_free(struct LDKCVec_MonitorEventZ _res); + export function CVec_MonitorEventZ_free(_res: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InvoiceSemanticErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CVec_MonitorEventZ_free(_res); // debug statements here } - // uint64_t CResult_InvoiceSemanticErrorZ_clone_ptr(LDKCResult_InvoiceSemanticErrorZ *NONNULL_PTR arg); - export function CResult_InvoiceSemanticErrorZ_clone_ptr(arg: number): number { + // void CVec_EventZ_free(struct LDKCVec_EventZ _res); + export function CVec_EventZ_free(_res: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InvoiceSemanticErrorZ_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CVec_EventZ_free(_res); + // debug statements here } - // struct LDKCResult_InvoiceSemanticErrorZ CResult_InvoiceSemanticErrorZ_clone(const struct LDKCResult_InvoiceSemanticErrorZ *NONNULL_PTR orig); - export function CResult_InvoiceSemanticErrorZ_clone(orig: number): number { + // void CVec_TransactionZ_free(struct LDKCVec_TransactionZ _res); + export function CVec_TransactionZ_free(_res: Uint8Array[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InvoiceSemanticErrorZ_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CVec_TransactionZ_free(_res); + // debug statements here } - // struct LDKCResult_DescriptionCreationErrorZ CResult_DescriptionCreationErrorZ_ok(struct LDKDescription o); - export function CResult_DescriptionCreationErrorZ_ok(o: number): number { + // uint64_t C2Tuple_usizeTransactionZ_clone_ptr(LDKC2Tuple_usizeTransactionZ *NONNULL_PTR arg); + export function C2Tuple_usizeTransactionZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_DescriptionCreationErrorZ_ok(o); + const nativeResponseValue = wasm.TS_C2Tuple_usizeTransactionZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_DescriptionCreationErrorZ CResult_DescriptionCreationErrorZ_err(enum LDKCreationError e); - export function CResult_DescriptionCreationErrorZ_err(e: CreationError): number { + // struct LDKC2Tuple_usizeTransactionZ C2Tuple_usizeTransactionZ_clone(const struct LDKC2Tuple_usizeTransactionZ *NONNULL_PTR orig); + export function C2Tuple_usizeTransactionZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_DescriptionCreationErrorZ_err(e); + const nativeResponseValue = wasm.TS_C2Tuple_usizeTransactionZ_clone(orig); return nativeResponseValue; } - // bool CResult_DescriptionCreationErrorZ_is_ok(const struct LDKCResult_DescriptionCreationErrorZ *NONNULL_PTR o); - export function CResult_DescriptionCreationErrorZ_is_ok(o: number): boolean { + // struct LDKC2Tuple_usizeTransactionZ C2Tuple_usizeTransactionZ_new(uintptr_t a, struct LDKTransaction b); + export function C2Tuple_usizeTransactionZ_new(a: number, b: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_DescriptionCreationErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_C2Tuple_usizeTransactionZ_new(a, encodeUint8Array(b)); return nativeResponseValue; } - // void CResult_DescriptionCreationErrorZ_free(struct LDKCResult_DescriptionCreationErrorZ _res); - export function CResult_DescriptionCreationErrorZ_free(_res: number): void { + // void C2Tuple_usizeTransactionZ_free(struct LDKC2Tuple_usizeTransactionZ _res); + export function C2Tuple_usizeTransactionZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_DescriptionCreationErrorZ_free(_res); + const nativeResponseValue = wasm.TS_C2Tuple_usizeTransactionZ_free(_res); // debug statements here } - // uint64_t CResult_DescriptionCreationErrorZ_clone_ptr(LDKCResult_DescriptionCreationErrorZ *NONNULL_PTR arg); - export function CResult_DescriptionCreationErrorZ_clone_ptr(arg: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_DescriptionCreationErrorZ_clone_ptr(arg); - return nativeResponseValue; - } - // struct LDKCResult_DescriptionCreationErrorZ CResult_DescriptionCreationErrorZ_clone(const struct LDKCResult_DescriptionCreationErrorZ *NONNULL_PTR orig); - export function CResult_DescriptionCreationErrorZ_clone(orig: number): number { + // void CVec_C2Tuple_usizeTransactionZZ_free(struct LDKCVec_C2Tuple_usizeTransactionZZ _res); + export function CVec_C2Tuple_usizeTransactionZZ_free(_res: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_DescriptionCreationErrorZ_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CVec_C2Tuple_usizeTransactionZZ_free(_res); + // debug statements here } - // struct LDKCResult_ExpiryTimeCreationErrorZ CResult_ExpiryTimeCreationErrorZ_ok(struct LDKExpiryTime o); - export function CResult_ExpiryTimeCreationErrorZ_ok(o: number): number { + // uint64_t C2Tuple_u32TxOutZ_clone_ptr(LDKC2Tuple_u32TxOutZ *NONNULL_PTR arg); + export function C2Tuple_u32TxOutZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ExpiryTimeCreationErrorZ_ok(o); + const nativeResponseValue = wasm.TS_C2Tuple_u32TxOutZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_ExpiryTimeCreationErrorZ CResult_ExpiryTimeCreationErrorZ_err(enum LDKCreationError e); - export function CResult_ExpiryTimeCreationErrorZ_err(e: CreationError): number { + // struct LDKC2Tuple_u32TxOutZ C2Tuple_u32TxOutZ_clone(const struct LDKC2Tuple_u32TxOutZ *NONNULL_PTR orig); + export function C2Tuple_u32TxOutZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ExpiryTimeCreationErrorZ_err(e); + const nativeResponseValue = wasm.TS_C2Tuple_u32TxOutZ_clone(orig); return nativeResponseValue; } - // bool CResult_ExpiryTimeCreationErrorZ_is_ok(const struct LDKCResult_ExpiryTimeCreationErrorZ *NONNULL_PTR o); - export function CResult_ExpiryTimeCreationErrorZ_is_ok(o: number): boolean { + // struct LDKC2Tuple_u32TxOutZ C2Tuple_u32TxOutZ_new(uint32_t a, struct LDKTxOut b); + export function C2Tuple_u32TxOutZ_new(a: number, b: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ExpiryTimeCreationErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_C2Tuple_u32TxOutZ_new(a, b); return nativeResponseValue; } - // void CResult_ExpiryTimeCreationErrorZ_free(struct LDKCResult_ExpiryTimeCreationErrorZ _res); - export function CResult_ExpiryTimeCreationErrorZ_free(_res: number): void { + // void C2Tuple_u32TxOutZ_free(struct LDKC2Tuple_u32TxOutZ _res); + export function C2Tuple_u32TxOutZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ExpiryTimeCreationErrorZ_free(_res); + const nativeResponseValue = wasm.TS_C2Tuple_u32TxOutZ_free(_res); // debug statements here } - // uint64_t CResult_ExpiryTimeCreationErrorZ_clone_ptr(LDKCResult_ExpiryTimeCreationErrorZ *NONNULL_PTR arg); - export function CResult_ExpiryTimeCreationErrorZ_clone_ptr(arg: number): number { + // void CVec_C2Tuple_u32TxOutZZ_free(struct LDKCVec_C2Tuple_u32TxOutZZ _res); + export function CVec_C2Tuple_u32TxOutZZ_free(_res: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ExpiryTimeCreationErrorZ_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CVec_C2Tuple_u32TxOutZZ_free(_res); + // debug statements here } - // struct LDKCResult_ExpiryTimeCreationErrorZ CResult_ExpiryTimeCreationErrorZ_clone(const struct LDKCResult_ExpiryTimeCreationErrorZ *NONNULL_PTR orig); - export function CResult_ExpiryTimeCreationErrorZ_clone(orig: number): number { + // uint64_t C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone_ptr(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ *NONNULL_PTR arg); + export function C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ExpiryTimeCreationErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_PrivateRouteCreationErrorZ CResult_PrivateRouteCreationErrorZ_ok(struct LDKPrivateRoute o); - export function CResult_PrivateRouteCreationErrorZ_ok(o: number): number { + // struct LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(const struct LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ *NONNULL_PTR orig); + export function C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PrivateRouteCreationErrorZ_ok(o); + const nativeResponseValue = wasm.TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_PrivateRouteCreationErrorZ CResult_PrivateRouteCreationErrorZ_err(enum LDKCreationError e); - export function CResult_PrivateRouteCreationErrorZ_err(e: CreationError): number { + // struct LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_new(struct LDKThirtyTwoBytes a, struct LDKCVec_C2Tuple_u32TxOutZZ b); + export function C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_new(a: Uint8Array, b: number[]): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PrivateRouteCreationErrorZ_err(e); + const nativeResponseValue = wasm.TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_new(encodeUint8Array(a), b); return nativeResponseValue; } - // bool CResult_PrivateRouteCreationErrorZ_is_ok(const struct LDKCResult_PrivateRouteCreationErrorZ *NONNULL_PTR o); - export function CResult_PrivateRouteCreationErrorZ_is_ok(o: number): boolean { + // void C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_free(struct LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ _res); + export function C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PrivateRouteCreationErrorZ_is_ok(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_free(_res); + // debug statements here } - // void CResult_PrivateRouteCreationErrorZ_free(struct LDKCResult_PrivateRouteCreationErrorZ _res); - export function CResult_PrivateRouteCreationErrorZ_free(_res: number): void { + // void CVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ_free(struct LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ _res); + export function CVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ_free(_res: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PrivateRouteCreationErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ_free(_res); // debug statements here } - // uint64_t CResult_PrivateRouteCreationErrorZ_clone_ptr(LDKCResult_PrivateRouteCreationErrorZ *NONNULL_PTR arg); - export function CResult_PrivateRouteCreationErrorZ_clone_ptr(arg: number): number { + // void CVec_TxidZ_free(struct LDKCVec_TxidZ _res); + export function CVec_TxidZ_free(_res: Uint8Array[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PrivateRouteCreationErrorZ_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CVec_TxidZ_free(_res); + // debug statements here } - // struct LDKCResult_PrivateRouteCreationErrorZ CResult_PrivateRouteCreationErrorZ_clone(const struct LDKCResult_PrivateRouteCreationErrorZ *NONNULL_PTR orig); - export function CResult_PrivateRouteCreationErrorZ_clone(orig: number): number { + // void CVec_BalanceZ_free(struct LDKCVec_BalanceZ _res); + export function CVec_BalanceZ_free(_res: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PrivateRouteCreationErrorZ_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CVec_BalanceZ_free(_res); + // debug statements here } - // struct LDKCResult_StringErrorZ CResult_StringErrorZ_ok(struct LDKStr o); - export function CResult_StringErrorZ_ok(o: String): number { + // uint64_t C2Tuple_BlockHashChannelMonitorZ_clone_ptr(LDKC2Tuple_BlockHashChannelMonitorZ *NONNULL_PTR arg); + export function C2Tuple_BlockHashChannelMonitorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_StringErrorZ_ok(o); + const nativeResponseValue = wasm.TS_C2Tuple_BlockHashChannelMonitorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_StringErrorZ CResult_StringErrorZ_err(enum LDKSecp256k1Error e); - export function CResult_StringErrorZ_err(e: Secp256k1Error): number { + // struct LDKC2Tuple_BlockHashChannelMonitorZ C2Tuple_BlockHashChannelMonitorZ_clone(const struct LDKC2Tuple_BlockHashChannelMonitorZ *NONNULL_PTR orig); + export function C2Tuple_BlockHashChannelMonitorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_StringErrorZ_err(e); + const nativeResponseValue = wasm.TS_C2Tuple_BlockHashChannelMonitorZ_clone(orig); return nativeResponseValue; } - // bool CResult_StringErrorZ_is_ok(const struct LDKCResult_StringErrorZ *NONNULL_PTR o); - export function CResult_StringErrorZ_is_ok(o: number): boolean { + // struct LDKC2Tuple_BlockHashChannelMonitorZ C2Tuple_BlockHashChannelMonitorZ_new(struct LDKThirtyTwoBytes a, struct LDKChannelMonitor b); + export function C2Tuple_BlockHashChannelMonitorZ_new(a: Uint8Array, b: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_StringErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_C2Tuple_BlockHashChannelMonitorZ_new(encodeUint8Array(a), b); return nativeResponseValue; } - // void CResult_StringErrorZ_free(struct LDKCResult_StringErrorZ _res); - export function CResult_StringErrorZ_free(_res: number): void { + // void C2Tuple_BlockHashChannelMonitorZ_free(struct LDKC2Tuple_BlockHashChannelMonitorZ _res); + export function C2Tuple_BlockHashChannelMonitorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_StringErrorZ_free(_res); + const nativeResponseValue = wasm.TS_C2Tuple_BlockHashChannelMonitorZ_free(_res); // debug statements here } - // struct LDKCResult_ChannelMonitorUpdateDecodeErrorZ CResult_ChannelMonitorUpdateDecodeErrorZ_ok(struct LDKChannelMonitorUpdate o); - export function CResult_ChannelMonitorUpdateDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_ok(struct LDKC2Tuple_BlockHashChannelMonitorZ o); + export function CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelMonitorUpdateDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_ChannelMonitorUpdateDecodeErrorZ CResult_ChannelMonitorUpdateDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_ChannelMonitorUpdateDecodeErrorZ_err(e: number): number { + // struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelMonitorUpdateDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_ChannelMonitorUpdateDecodeErrorZ_is_ok(const struct LDKCResult_ChannelMonitorUpdateDecodeErrorZ *NONNULL_PTR o); - export function CResult_ChannelMonitorUpdateDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_is_ok(const struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ *NONNULL_PTR o); + export function CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelMonitorUpdateDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_ChannelMonitorUpdateDecodeErrorZ_free(struct LDKCResult_ChannelMonitorUpdateDecodeErrorZ _res); - export function CResult_ChannelMonitorUpdateDecodeErrorZ_free(_res: number): void { + // void CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_free(struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ _res); + export function CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelMonitorUpdateDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_ChannelMonitorUpdateDecodeErrorZ_clone_ptr(LDKCResult_ChannelMonitorUpdateDecodeErrorZ *NONNULL_PTR arg); - export function CResult_ChannelMonitorUpdateDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone_ptr(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ *NONNULL_PTR arg); + export function CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelMonitorUpdateDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_ChannelMonitorUpdateDecodeErrorZ CResult_ChannelMonitorUpdateDecodeErrorZ_clone(const struct LDKCResult_ChannelMonitorUpdateDecodeErrorZ *NONNULL_PTR orig); - export function CResult_ChannelMonitorUpdateDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone(const struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ *NONNULL_PTR orig); + export function CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelMonitorUpdateDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCOption_MonitorEventZ COption_MonitorEventZ_some(struct LDKMonitorEvent o); - export function COption_MonitorEventZ_some(o: number): number { + // struct LDKCResult_RouteHopDecodeErrorZ CResult_RouteHopDecodeErrorZ_ok(struct LDKRouteHop o); + export function CResult_RouteHopDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_MonitorEventZ_some(o); + const nativeResponseValue = wasm.TS_CResult_RouteHopDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCOption_MonitorEventZ COption_MonitorEventZ_none(void); - export function COption_MonitorEventZ_none(): number { + // struct LDKCResult_RouteHopDecodeErrorZ CResult_RouteHopDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_RouteHopDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_MonitorEventZ_none(); + const nativeResponseValue = wasm.TS_CResult_RouteHopDecodeErrorZ_err(e); return nativeResponseValue; } - // void COption_MonitorEventZ_free(struct LDKCOption_MonitorEventZ _res); - export function COption_MonitorEventZ_free(_res: number): void { + // bool CResult_RouteHopDecodeErrorZ_is_ok(const struct LDKCResult_RouteHopDecodeErrorZ *NONNULL_PTR o); + export function CResult_RouteHopDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_MonitorEventZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_RouteHopDecodeErrorZ_is_ok(o); + return nativeResponseValue; } - // uint64_t COption_MonitorEventZ_clone_ptr(LDKCOption_MonitorEventZ *NONNULL_PTR arg); - export function COption_MonitorEventZ_clone_ptr(arg: number): number { + // void CResult_RouteHopDecodeErrorZ_free(struct LDKCResult_RouteHopDecodeErrorZ _res); + export function CResult_RouteHopDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_MonitorEventZ_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_RouteHopDecodeErrorZ_free(_res); + // debug statements here } - // struct LDKCOption_MonitorEventZ COption_MonitorEventZ_clone(const struct LDKCOption_MonitorEventZ *NONNULL_PTR orig); - export function COption_MonitorEventZ_clone(orig: number): number { + // uint64_t CResult_RouteHopDecodeErrorZ_clone_ptr(LDKCResult_RouteHopDecodeErrorZ *NONNULL_PTR arg); + export function CResult_RouteHopDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_MonitorEventZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_RouteHopDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_COption_MonitorEventZDecodeErrorZ CResult_COption_MonitorEventZDecodeErrorZ_ok(struct LDKCOption_MonitorEventZ o); - export function CResult_COption_MonitorEventZDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_RouteHopDecodeErrorZ CResult_RouteHopDecodeErrorZ_clone(const struct LDKCResult_RouteHopDecodeErrorZ *NONNULL_PTR orig); + export function CResult_RouteHopDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_COption_MonitorEventZDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_RouteHopDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_COption_MonitorEventZDecodeErrorZ CResult_COption_MonitorEventZDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_COption_MonitorEventZDecodeErrorZ_err(e: number): number { + // void CVec_RouteHopZ_free(struct LDKCVec_RouteHopZ _res); + export function CVec_RouteHopZ_free(_res: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_COption_MonitorEventZDecodeErrorZ_err(e); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CVec_RouteHopZ_free(_res); + // debug statements here } - // bool CResult_COption_MonitorEventZDecodeErrorZ_is_ok(const struct LDKCResult_COption_MonitorEventZDecodeErrorZ *NONNULL_PTR o); - export function CResult_COption_MonitorEventZDecodeErrorZ_is_ok(o: number): boolean { + // void CVec_CVec_RouteHopZZ_free(struct LDKCVec_CVec_RouteHopZZ _res); + export function CVec_CVec_RouteHopZZ_free(_res: number[][]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_COption_MonitorEventZDecodeErrorZ_is_ok(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CVec_CVec_RouteHopZZ_free(_res); + // debug statements here } - // void CResult_COption_MonitorEventZDecodeErrorZ_free(struct LDKCResult_COption_MonitorEventZDecodeErrorZ _res); - export function CResult_COption_MonitorEventZDecodeErrorZ_free(_res: number): void { + // struct LDKCResult_RouteDecodeErrorZ CResult_RouteDecodeErrorZ_ok(struct LDKRoute o); + export function CResult_RouteDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_COption_MonitorEventZDecodeErrorZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_RouteDecodeErrorZ_ok(o); + return nativeResponseValue; } - // uint64_t CResult_COption_MonitorEventZDecodeErrorZ_clone_ptr(LDKCResult_COption_MonitorEventZDecodeErrorZ *NONNULL_PTR arg); - export function CResult_COption_MonitorEventZDecodeErrorZ_clone_ptr(arg: number): number { + // struct LDKCResult_RouteDecodeErrorZ CResult_RouteDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_RouteDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_COption_MonitorEventZDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_RouteDecodeErrorZ_err(e); return nativeResponseValue; } - // struct LDKCResult_COption_MonitorEventZDecodeErrorZ CResult_COption_MonitorEventZDecodeErrorZ_clone(const struct LDKCResult_COption_MonitorEventZDecodeErrorZ *NONNULL_PTR orig); - export function CResult_COption_MonitorEventZDecodeErrorZ_clone(orig: number): number { + // bool CResult_RouteDecodeErrorZ_is_ok(const struct LDKCResult_RouteDecodeErrorZ *NONNULL_PTR o); + export function CResult_RouteDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_COption_MonitorEventZDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_RouteDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // struct LDKCResult_HTLCUpdateDecodeErrorZ CResult_HTLCUpdateDecodeErrorZ_ok(struct LDKHTLCUpdate o); - export function CResult_HTLCUpdateDecodeErrorZ_ok(o: number): number { + // void CResult_RouteDecodeErrorZ_free(struct LDKCResult_RouteDecodeErrorZ _res); + export function CResult_RouteDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_HTLCUpdateDecodeErrorZ_ok(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_RouteDecodeErrorZ_free(_res); + // debug statements here } - // struct LDKCResult_HTLCUpdateDecodeErrorZ CResult_HTLCUpdateDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_HTLCUpdateDecodeErrorZ_err(e: number): number { + // uint64_t CResult_RouteDecodeErrorZ_clone_ptr(LDKCResult_RouteDecodeErrorZ *NONNULL_PTR arg); + export function CResult_RouteDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_HTLCUpdateDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_RouteDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // bool CResult_HTLCUpdateDecodeErrorZ_is_ok(const struct LDKCResult_HTLCUpdateDecodeErrorZ *NONNULL_PTR o); - export function CResult_HTLCUpdateDecodeErrorZ_is_ok(o: number): boolean { + // struct LDKCResult_RouteDecodeErrorZ CResult_RouteDecodeErrorZ_clone(const struct LDKCResult_RouteDecodeErrorZ *NONNULL_PTR orig); + export function CResult_RouteDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_HTLCUpdateDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_RouteDecodeErrorZ_clone(orig); return nativeResponseValue; } - // void CResult_HTLCUpdateDecodeErrorZ_free(struct LDKCResult_HTLCUpdateDecodeErrorZ _res); - export function CResult_HTLCUpdateDecodeErrorZ_free(_res: number): void { + // struct LDKCResult_RouteParametersDecodeErrorZ CResult_RouteParametersDecodeErrorZ_ok(struct LDKRouteParameters o); + export function CResult_RouteParametersDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_HTLCUpdateDecodeErrorZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_RouteParametersDecodeErrorZ_ok(o); + return nativeResponseValue; } - // uint64_t CResult_HTLCUpdateDecodeErrorZ_clone_ptr(LDKCResult_HTLCUpdateDecodeErrorZ *NONNULL_PTR arg); - export function CResult_HTLCUpdateDecodeErrorZ_clone_ptr(arg: number): number { + // struct LDKCResult_RouteParametersDecodeErrorZ CResult_RouteParametersDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_RouteParametersDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_HTLCUpdateDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_RouteParametersDecodeErrorZ_err(e); return nativeResponseValue; } - // struct LDKCResult_HTLCUpdateDecodeErrorZ CResult_HTLCUpdateDecodeErrorZ_clone(const struct LDKCResult_HTLCUpdateDecodeErrorZ *NONNULL_PTR orig); - export function CResult_HTLCUpdateDecodeErrorZ_clone(orig: number): number { + // bool CResult_RouteParametersDecodeErrorZ_is_ok(const struct LDKCResult_RouteParametersDecodeErrorZ *NONNULL_PTR o); + export function CResult_RouteParametersDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_HTLCUpdateDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_RouteParametersDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // uint64_t C2Tuple_OutPointScriptZ_clone_ptr(LDKC2Tuple_OutPointScriptZ *NONNULL_PTR arg); - export function C2Tuple_OutPointScriptZ_clone_ptr(arg: number): number { + // void CResult_RouteParametersDecodeErrorZ_free(struct LDKCResult_RouteParametersDecodeErrorZ _res); + export function CResult_RouteParametersDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_OutPointScriptZ_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_RouteParametersDecodeErrorZ_free(_res); + // debug statements here } - // struct LDKC2Tuple_OutPointScriptZ C2Tuple_OutPointScriptZ_clone(const struct LDKC2Tuple_OutPointScriptZ *NONNULL_PTR orig); - export function C2Tuple_OutPointScriptZ_clone(orig: number): number { + // uint64_t CResult_RouteParametersDecodeErrorZ_clone_ptr(LDKCResult_RouteParametersDecodeErrorZ *NONNULL_PTR arg); + export function CResult_RouteParametersDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_OutPointScriptZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_RouteParametersDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKC2Tuple_OutPointScriptZ C2Tuple_OutPointScriptZ_new(struct LDKOutPoint a, struct LDKCVec_u8Z b); - export function C2Tuple_OutPointScriptZ_new(a: number, b: Uint8Array): number { + // struct LDKCResult_RouteParametersDecodeErrorZ CResult_RouteParametersDecodeErrorZ_clone(const struct LDKCResult_RouteParametersDecodeErrorZ *NONNULL_PTR orig); + export function CResult_RouteParametersDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_OutPointScriptZ_new(a, encodeArray(b)); + const nativeResponseValue = wasm.TS_CResult_RouteParametersDecodeErrorZ_clone(orig); return nativeResponseValue; } - // void C2Tuple_OutPointScriptZ_free(struct LDKC2Tuple_OutPointScriptZ _res); - export function C2Tuple_OutPointScriptZ_free(_res: number): void { + // void CVec_RouteHintZ_free(struct LDKCVec_RouteHintZ _res); + export function CVec_RouteHintZ_free(_res: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_OutPointScriptZ_free(_res); + const nativeResponseValue = wasm.TS_CVec_RouteHintZ_free(_res); // debug statements here } - // uint64_t C2Tuple_u32ScriptZ_clone_ptr(LDKC2Tuple_u32ScriptZ *NONNULL_PTR arg); - export function C2Tuple_u32ScriptZ_clone_ptr(arg: number): number { + // struct LDKCOption_u64Z COption_u64Z_some(uint64_t o); + export function COption_u64Z_some(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_u32ScriptZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_COption_u64Z_some(o); return nativeResponseValue; } - // struct LDKC2Tuple_u32ScriptZ C2Tuple_u32ScriptZ_clone(const struct LDKC2Tuple_u32ScriptZ *NONNULL_PTR orig); - export function C2Tuple_u32ScriptZ_clone(orig: number): number { + // struct LDKCOption_u64Z COption_u64Z_none(void); + export function COption_u64Z_none(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_u32ScriptZ_clone(orig); + const nativeResponseValue = wasm.TS_COption_u64Z_none(); return nativeResponseValue; } - // struct LDKC2Tuple_u32ScriptZ C2Tuple_u32ScriptZ_new(uint32_t a, struct LDKCVec_u8Z b); - export function C2Tuple_u32ScriptZ_new(a: number, b: Uint8Array): number { + // void COption_u64Z_free(struct LDKCOption_u64Z _res); + export function COption_u64Z_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_u32ScriptZ_new(a, encodeArray(b)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_COption_u64Z_free(_res); + // debug statements here } - // void C2Tuple_u32ScriptZ_free(struct LDKC2Tuple_u32ScriptZ _res); - export function C2Tuple_u32ScriptZ_free(_res: number): void { + // uint64_t COption_u64Z_clone_ptr(LDKCOption_u64Z *NONNULL_PTR arg); + export function COption_u64Z_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_u32ScriptZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_COption_u64Z_clone_ptr(arg); + return nativeResponseValue; } - // void CVec_C2Tuple_u32ScriptZZ_free(struct LDKCVec_C2Tuple_u32ScriptZZ _res); - export function CVec_C2Tuple_u32ScriptZZ_free(_res: number[]): void { + // struct LDKCOption_u64Z COption_u64Z_clone(const struct LDKCOption_u64Z *NONNULL_PTR orig); + export function COption_u64Z_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_C2Tuple_u32ScriptZZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_COption_u64Z_clone(orig); + return nativeResponseValue; } - // uint64_t C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone_ptr(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ *NONNULL_PTR arg); - export function C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone_ptr(arg: number): number { + // struct LDKCResult_PayeeDecodeErrorZ CResult_PayeeDecodeErrorZ_ok(struct LDKPayee o); + export function CResult_PayeeDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_PayeeDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone(const struct LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ *NONNULL_PTR orig); - export function C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone(orig: number): number { + // struct LDKCResult_PayeeDecodeErrorZ CResult_PayeeDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_PayeeDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_PayeeDecodeErrorZ_err(e); return nativeResponseValue; } - // struct LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_new(struct LDKThirtyTwoBytes a, struct LDKCVec_C2Tuple_u32ScriptZZ b); - export function C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_new(a: Uint8Array, b: number[]): number { + // bool CResult_PayeeDecodeErrorZ_is_ok(const struct LDKCResult_PayeeDecodeErrorZ *NONNULL_PTR o); + export function CResult_PayeeDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_new(encodeArray(a), b); + const nativeResponseValue = wasm.TS_CResult_PayeeDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_free(struct LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ _res); - export function C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_free(_res: number): void { + // void CResult_PayeeDecodeErrorZ_free(struct LDKCResult_PayeeDecodeErrorZ _res); + export function CResult_PayeeDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_PayeeDecodeErrorZ_free(_res); // debug statements here } - // void CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ_free(struct LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ _res); - export function CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ_free(_res: number[]): void { + // uint64_t CResult_PayeeDecodeErrorZ_clone_ptr(LDKCResult_PayeeDecodeErrorZ *NONNULL_PTR arg); + export function CResult_PayeeDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_PayeeDecodeErrorZ_clone_ptr(arg); + return nativeResponseValue; } - // void CVec_EventZ_free(struct LDKCVec_EventZ _res); - export function CVec_EventZ_free(_res: number[]): void { + // struct LDKCResult_PayeeDecodeErrorZ CResult_PayeeDecodeErrorZ_clone(const struct LDKCResult_PayeeDecodeErrorZ *NONNULL_PTR orig); + export function CResult_PayeeDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_EventZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_PayeeDecodeErrorZ_clone(orig); + return nativeResponseValue; } - // void CVec_TransactionZ_free(struct LDKCVec_TransactionZ _res); - export function CVec_TransactionZ_free(_res: Uint8Array[]): void { + // void CVec_RouteHintHopZ_free(struct LDKCVec_RouteHintHopZ _res); + export function CVec_RouteHintHopZ_free(_res: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_TransactionZ_free(_res); + const nativeResponseValue = wasm.TS_CVec_RouteHintHopZ_free(_res); // debug statements here } - // uint64_t C2Tuple_u32TxOutZ_clone_ptr(LDKC2Tuple_u32TxOutZ *NONNULL_PTR arg); - export function C2Tuple_u32TxOutZ_clone_ptr(arg: number): number { + // struct LDKCResult_RouteHintDecodeErrorZ CResult_RouteHintDecodeErrorZ_ok(struct LDKRouteHint o); + export function CResult_RouteHintDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_u32TxOutZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_RouteHintDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKC2Tuple_u32TxOutZ C2Tuple_u32TxOutZ_clone(const struct LDKC2Tuple_u32TxOutZ *NONNULL_PTR orig); - export function C2Tuple_u32TxOutZ_clone(orig: number): number { + // struct LDKCResult_RouteHintDecodeErrorZ CResult_RouteHintDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_RouteHintDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_u32TxOutZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_RouteHintDecodeErrorZ_err(e); return nativeResponseValue; } - // struct LDKC2Tuple_u32TxOutZ C2Tuple_u32TxOutZ_new(uint32_t a, struct LDKTxOut b); - export function C2Tuple_u32TxOutZ_new(a: number, b: number): number { + // bool CResult_RouteHintDecodeErrorZ_is_ok(const struct LDKCResult_RouteHintDecodeErrorZ *NONNULL_PTR o); + export function CResult_RouteHintDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_u32TxOutZ_new(a, b); + const nativeResponseValue = wasm.TS_CResult_RouteHintDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void C2Tuple_u32TxOutZ_free(struct LDKC2Tuple_u32TxOutZ _res); - export function C2Tuple_u32TxOutZ_free(_res: number): void { + // void CResult_RouteHintDecodeErrorZ_free(struct LDKCResult_RouteHintDecodeErrorZ _res); + export function CResult_RouteHintDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_u32TxOutZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_RouteHintDecodeErrorZ_free(_res); // debug statements here } - // void CVec_C2Tuple_u32TxOutZZ_free(struct LDKCVec_C2Tuple_u32TxOutZZ _res); - export function CVec_C2Tuple_u32TxOutZZ_free(_res: number[]): void { + // uint64_t CResult_RouteHintDecodeErrorZ_clone_ptr(LDKCResult_RouteHintDecodeErrorZ *NONNULL_PTR arg); + export function CResult_RouteHintDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_C2Tuple_u32TxOutZZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_RouteHintDecodeErrorZ_clone_ptr(arg); + return nativeResponseValue; } - // uint64_t C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone_ptr(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ *NONNULL_PTR arg); - export function C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone_ptr(arg: number): number { + // struct LDKCResult_RouteHintDecodeErrorZ CResult_RouteHintDecodeErrorZ_clone(const struct LDKCResult_RouteHintDecodeErrorZ *NONNULL_PTR orig); + export function CResult_RouteHintDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_RouteHintDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(const struct LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ *NONNULL_PTR orig); - export function C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(orig: number): number { + // struct LDKCResult_RouteHintHopDecodeErrorZ CResult_RouteHintHopDecodeErrorZ_ok(struct LDKRouteHintHop o); + export function CResult_RouteHintHopDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_RouteHintHopDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_new(struct LDKThirtyTwoBytes a, struct LDKCVec_C2Tuple_u32TxOutZZ b); - export function C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_new(a: Uint8Array, b: number[]): number { + // struct LDKCResult_RouteHintHopDecodeErrorZ CResult_RouteHintHopDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_RouteHintHopDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_new(encodeArray(a), b); + const nativeResponseValue = wasm.TS_CResult_RouteHintHopDecodeErrorZ_err(e); return nativeResponseValue; } - // void C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_free(struct LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ _res); - export function C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_free(_res: number): void { + // bool CResult_RouteHintHopDecodeErrorZ_is_ok(const struct LDKCResult_RouteHintHopDecodeErrorZ *NONNULL_PTR o); + export function CResult_RouteHintHopDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_RouteHintHopDecodeErrorZ_is_ok(o); + return nativeResponseValue; } - // void CVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ_free(struct LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ _res); - export function CVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ_free(_res: number[]): void { + // void CResult_RouteHintHopDecodeErrorZ_free(struct LDKCResult_RouteHintHopDecodeErrorZ _res); + export function CResult_RouteHintHopDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_RouteHintHopDecodeErrorZ_free(_res); // debug statements here } - // void CVec_BalanceZ_free(struct LDKCVec_BalanceZ _res); - export function CVec_BalanceZ_free(_res: number[]): void { + // uint64_t CResult_RouteHintHopDecodeErrorZ_clone_ptr(LDKCResult_RouteHintHopDecodeErrorZ *NONNULL_PTR arg); + export function CResult_RouteHintHopDecodeErrorZ_clone_ptr(arg: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_CResult_RouteHintHopDecodeErrorZ_clone_ptr(arg); + return nativeResponseValue; + } + // struct LDKCResult_RouteHintHopDecodeErrorZ CResult_RouteHintHopDecodeErrorZ_clone(const struct LDKCResult_RouteHintHopDecodeErrorZ *NONNULL_PTR orig); + export function CResult_RouteHintHopDecodeErrorZ_clone(orig: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_CResult_RouteHintHopDecodeErrorZ_clone(orig); + return nativeResponseValue; + } + // void CVec_ChannelDetailsZ_free(struct LDKCVec_ChannelDetailsZ _res); + export function CVec_ChannelDetailsZ_free(_res: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_BalanceZ_free(_res); + const nativeResponseValue = wasm.TS_CVec_ChannelDetailsZ_free(_res); // debug statements here } - // struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_ok(struct LDKC2Tuple_BlockHashChannelMonitorZ o); - export function CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_RouteLightningErrorZ CResult_RouteLightningErrorZ_ok(struct LDKRoute o); + export function CResult_RouteLightningErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_RouteLightningErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_err(e: number): number { + // struct LDKCResult_RouteLightningErrorZ CResult_RouteLightningErrorZ_err(struct LDKLightningError e); + export function CResult_RouteLightningErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_RouteLightningErrorZ_err(e); return nativeResponseValue; } - // bool CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_is_ok(const struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ *NONNULL_PTR o); - export function CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_RouteLightningErrorZ_is_ok(const struct LDKCResult_RouteLightningErrorZ *NONNULL_PTR o); + export function CResult_RouteLightningErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_RouteLightningErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_free(struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ _res); - export function CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_free(_res: number): void { + // void CResult_RouteLightningErrorZ_free(struct LDKCResult_RouteLightningErrorZ _res); + export function CResult_RouteLightningErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_RouteLightningErrorZ_free(_res); // debug statements here } - // uint64_t CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone_ptr(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ *NONNULL_PTR arg); - export function CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_RouteLightningErrorZ_clone_ptr(LDKCResult_RouteLightningErrorZ *NONNULL_PTR arg); + export function CResult_RouteLightningErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_RouteLightningErrorZ_clone_ptr(arg); return nativeResponseValue; - } - // struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone(const struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ *NONNULL_PTR orig); - export function CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone(orig: number): number { + } + // struct LDKCResult_RouteLightningErrorZ CResult_RouteLightningErrorZ_clone(const struct LDKCResult_RouteLightningErrorZ *NONNULL_PTR orig); + export function CResult_RouteLightningErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_RouteLightningErrorZ_clone(orig); return nativeResponseValue; } // struct LDKCResult_NoneLightningErrorZ CResult_NoneLightningErrorZ_ok(void); @@ -7051,7 +6050,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneLightningErrorZ_ok(); + const nativeResponseValue = wasm.TS_CResult_NoneLightningErrorZ_ok(); return nativeResponseValue; } // struct LDKCResult_NoneLightningErrorZ CResult_NoneLightningErrorZ_err(struct LDKLightningError e); @@ -7059,7 +6058,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneLightningErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_NoneLightningErrorZ_err(e); return nativeResponseValue; } // bool CResult_NoneLightningErrorZ_is_ok(const struct LDKCResult_NoneLightningErrorZ *NONNULL_PTR o); @@ -7067,7 +6066,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneLightningErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_NoneLightningErrorZ_is_ok(o); return nativeResponseValue; } // void CResult_NoneLightningErrorZ_free(struct LDKCResult_NoneLightningErrorZ _res); @@ -7075,7 +6074,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneLightningErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_NoneLightningErrorZ_free(_res); // debug statements here } // uint64_t CResult_NoneLightningErrorZ_clone_ptr(LDKCResult_NoneLightningErrorZ *NONNULL_PTR arg); @@ -7083,7 +6082,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneLightningErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_NoneLightningErrorZ_clone_ptr(arg); return nativeResponseValue; } // struct LDKCResult_NoneLightningErrorZ CResult_NoneLightningErrorZ_clone(const struct LDKCResult_NoneLightningErrorZ *NONNULL_PTR orig); @@ -7091,7 +6090,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NoneLightningErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_NoneLightningErrorZ_clone(orig); return nativeResponseValue; } // uint64_t C2Tuple_PublicKeyTypeZ_clone_ptr(LDKC2Tuple_PublicKeyTypeZ *NONNULL_PTR arg); @@ -7099,7 +6098,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_PublicKeyTypeZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_C2Tuple_PublicKeyTypeZ_clone_ptr(arg); return nativeResponseValue; } // struct LDKC2Tuple_PublicKeyTypeZ C2Tuple_PublicKeyTypeZ_clone(const struct LDKC2Tuple_PublicKeyTypeZ *NONNULL_PTR orig); @@ -7107,7 +6106,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_PublicKeyTypeZ_clone(orig); + const nativeResponseValue = wasm.TS_C2Tuple_PublicKeyTypeZ_clone(orig); return nativeResponseValue; } // struct LDKC2Tuple_PublicKeyTypeZ C2Tuple_PublicKeyTypeZ_new(struct LDKPublicKey a, struct LDKType b); @@ -7115,7 +6114,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_PublicKeyTypeZ_new(encodeArray(a), b); + const nativeResponseValue = wasm.TS_C2Tuple_PublicKeyTypeZ_new(encodeUint8Array(a), b); return nativeResponseValue; } // void C2Tuple_PublicKeyTypeZ_free(struct LDKC2Tuple_PublicKeyTypeZ _res); @@ -7123,7 +6122,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_PublicKeyTypeZ_free(_res); + const nativeResponseValue = wasm.TS_C2Tuple_PublicKeyTypeZ_free(_res); // debug statements here } // void CVec_C2Tuple_PublicKeyTypeZZ_free(struct LDKCVec_C2Tuple_PublicKeyTypeZZ _res); @@ -7131,7 +6130,15 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_C2Tuple_PublicKeyTypeZZ_free(_res); + const nativeResponseValue = wasm.TS_CVec_C2Tuple_PublicKeyTypeZZ_free(_res); + // debug statements here + } + // void CVec_MessageSendEventZ_free(struct LDKCVec_MessageSendEventZ _res); + export function CVec_MessageSendEventZ_free(_res: number[]): void { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_CVec_MessageSendEventZ_free(_res); // debug statements here } // struct LDKCResult_boolLightningErrorZ CResult_boolLightningErrorZ_ok(bool o); @@ -7139,7 +6146,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_boolLightningErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_boolLightningErrorZ_ok(o); return nativeResponseValue; } // struct LDKCResult_boolLightningErrorZ CResult_boolLightningErrorZ_err(struct LDKLightningError e); @@ -7147,7 +6154,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_boolLightningErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_boolLightningErrorZ_err(e); return nativeResponseValue; } // bool CResult_boolLightningErrorZ_is_ok(const struct LDKCResult_boolLightningErrorZ *NONNULL_PTR o); @@ -7155,7 +6162,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_boolLightningErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_boolLightningErrorZ_is_ok(o); return nativeResponseValue; } // void CResult_boolLightningErrorZ_free(struct LDKCResult_boolLightningErrorZ _res); @@ -7163,7 +6170,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_boolLightningErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_boolLightningErrorZ_free(_res); // debug statements here } // uint64_t CResult_boolLightningErrorZ_clone_ptr(LDKCResult_boolLightningErrorZ *NONNULL_PTR arg); @@ -7171,7 +6178,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_boolLightningErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_boolLightningErrorZ_clone_ptr(arg); return nativeResponseValue; } // struct LDKCResult_boolLightningErrorZ CResult_boolLightningErrorZ_clone(const struct LDKCResult_boolLightningErrorZ *NONNULL_PTR orig); @@ -7179,7 +6186,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_boolLightningErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_boolLightningErrorZ_clone(orig); return nativeResponseValue; } // uint64_t C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone_ptr(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ *NONNULL_PTR arg); @@ -7187,7 +6194,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone_ptr(arg); return nativeResponseValue; } // struct LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone(const struct LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ *NONNULL_PTR orig); @@ -7195,7 +6202,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone(orig); + const nativeResponseValue = wasm.TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone(orig); return nativeResponseValue; } // struct LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_new(struct LDKChannelAnnouncement a, struct LDKChannelUpdate b, struct LDKChannelUpdate c); @@ -7203,7 +6210,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_new(a, b, c); + const nativeResponseValue = wasm.TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_new(a, b, c); return nativeResponseValue; } // void C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_free(struct LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ _res); @@ -7211,7 +6218,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.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); @@ -7219,7 +6226,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_free(_res); + const nativeResponseValue = wasm.TS_CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_free(_res); // debug statements here } // void CVec_NodeAnnouncementZ_free(struct LDKCVec_NodeAnnouncementZ _res); @@ -7227,7 +6234,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_NodeAnnouncementZ_free(_res); + const nativeResponseValue = wasm.TS_CVec_NodeAnnouncementZ_free(_res); // debug statements here } // void CVec_PublicKeyZ_free(struct LDKCVec_PublicKeyZ _res); @@ -7235,7 +6242,15 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_PublicKeyZ_free(_res); + const nativeResponseValue = wasm.TS_CVec_PublicKeyZ_free(_res); + // debug statements here + } + // void CVec_u8Z_free(struct LDKCVec_u8Z _res); + export function CVec_u8Z_free(_res: Uint8Array): void { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_CVec_u8Z_free(encodeUint8Array(_res)); // debug statements here } // struct LDKCResult_CVec_u8ZPeerHandleErrorZ CResult_CVec_u8ZPeerHandleErrorZ_ok(struct LDKCVec_u8Z o); @@ -7243,7 +6258,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CVec_u8ZPeerHandleErrorZ_ok(encodeArray(o)); + const nativeResponseValue = wasm.TS_CResult_CVec_u8ZPeerHandleErrorZ_ok(encodeUint8Array(o)); return nativeResponseValue; } // struct LDKCResult_CVec_u8ZPeerHandleErrorZ CResult_CVec_u8ZPeerHandleErrorZ_err(struct LDKPeerHandleError e); @@ -7251,7 +6266,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CVec_u8ZPeerHandleErrorZ_err(e); + 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); @@ -7259,7 +6274,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CVec_u8ZPeerHandleErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_CVec_u8ZPeerHandleErrorZ_is_ok(o); return nativeResponseValue; } // void CResult_CVec_u8ZPeerHandleErrorZ_free(struct LDKCResult_CVec_u8ZPeerHandleErrorZ _res); @@ -7267,7 +6282,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CVec_u8ZPeerHandleErrorZ_free(_res); + 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); @@ -7275,7 +6290,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CVec_u8ZPeerHandleErrorZ_clone_ptr(arg); + 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); @@ -7283,7 +6298,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CVec_u8ZPeerHandleErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_CVec_u8ZPeerHandleErrorZ_clone(orig); return nativeResponseValue; } // struct LDKCResult_NonePeerHandleErrorZ CResult_NonePeerHandleErrorZ_ok(void); @@ -7291,7 +6306,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NonePeerHandleErrorZ_ok(); + const nativeResponseValue = wasm.TS_CResult_NonePeerHandleErrorZ_ok(); return nativeResponseValue; } // struct LDKCResult_NonePeerHandleErrorZ CResult_NonePeerHandleErrorZ_err(struct LDKPeerHandleError e); @@ -7299,7 +6314,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NonePeerHandleErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_NonePeerHandleErrorZ_err(e); return nativeResponseValue; } // bool CResult_NonePeerHandleErrorZ_is_ok(const struct LDKCResult_NonePeerHandleErrorZ *NONNULL_PTR o); @@ -7307,7 +6322,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NonePeerHandleErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_NonePeerHandleErrorZ_is_ok(o); return nativeResponseValue; } // void CResult_NonePeerHandleErrorZ_free(struct LDKCResult_NonePeerHandleErrorZ _res); @@ -7315,7 +6330,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NonePeerHandleErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_NonePeerHandleErrorZ_free(_res); // debug statements here } // uint64_t CResult_NonePeerHandleErrorZ_clone_ptr(LDKCResult_NonePeerHandleErrorZ *NONNULL_PTR arg); @@ -7323,7 +6338,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NonePeerHandleErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_NonePeerHandleErrorZ_clone_ptr(arg); return nativeResponseValue; } // struct LDKCResult_NonePeerHandleErrorZ CResult_NonePeerHandleErrorZ_clone(const struct LDKCResult_NonePeerHandleErrorZ *NONNULL_PTR orig); @@ -7331,7 +6346,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NonePeerHandleErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_NonePeerHandleErrorZ_clone(orig); return nativeResponseValue; } // struct LDKCResult_boolPeerHandleErrorZ CResult_boolPeerHandleErrorZ_ok(bool o); @@ -7339,7 +6354,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_boolPeerHandleErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_boolPeerHandleErrorZ_ok(o); return nativeResponseValue; } // struct LDKCResult_boolPeerHandleErrorZ CResult_boolPeerHandleErrorZ_err(struct LDKPeerHandleError e); @@ -7347,7 +6362,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_boolPeerHandleErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_boolPeerHandleErrorZ_err(e); return nativeResponseValue; } // bool CResult_boolPeerHandleErrorZ_is_ok(const struct LDKCResult_boolPeerHandleErrorZ *NONNULL_PTR o); @@ -7355,7 +6370,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_boolPeerHandleErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_boolPeerHandleErrorZ_is_ok(o); return nativeResponseValue; } // void CResult_boolPeerHandleErrorZ_free(struct LDKCResult_boolPeerHandleErrorZ _res); @@ -7363,7 +6378,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_boolPeerHandleErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_boolPeerHandleErrorZ_free(_res); // debug statements here } // uint64_t CResult_boolPeerHandleErrorZ_clone_ptr(LDKCResult_boolPeerHandleErrorZ *NONNULL_PTR arg); @@ -7371,7 +6386,7 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_boolPeerHandleErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_boolPeerHandleErrorZ_clone_ptr(arg); return nativeResponseValue; } // struct LDKCResult_boolPeerHandleErrorZ CResult_boolPeerHandleErrorZ_clone(const struct LDKCResult_boolPeerHandleErrorZ *NONNULL_PTR orig); @@ -7379,15616 +6394,15582 @@ public static native long new_empty_slice_vec(); if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_boolPeerHandleErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_boolPeerHandleErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_NodeIdDecodeErrorZ CResult_NodeIdDecodeErrorZ_ok(struct LDKNodeId o); - export function CResult_NodeIdDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_TxOutAccessErrorZ CResult_TxOutAccessErrorZ_ok(struct LDKTxOut o); + export function CResult_TxOutAccessErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NodeIdDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_TxOutAccessErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_NodeIdDecodeErrorZ CResult_NodeIdDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_NodeIdDecodeErrorZ_err(e: number): number { + // struct LDKCResult_TxOutAccessErrorZ CResult_TxOutAccessErrorZ_err(enum LDKAccessError e); + export function CResult_TxOutAccessErrorZ_err(e: AccessError): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NodeIdDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_TxOutAccessErrorZ_err(e); return nativeResponseValue; } - // bool CResult_NodeIdDecodeErrorZ_is_ok(const struct LDKCResult_NodeIdDecodeErrorZ *NONNULL_PTR o); - export function CResult_NodeIdDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_TxOutAccessErrorZ_is_ok(const struct LDKCResult_TxOutAccessErrorZ *NONNULL_PTR o); + export function CResult_TxOutAccessErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NodeIdDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_TxOutAccessErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_NodeIdDecodeErrorZ_free(struct LDKCResult_NodeIdDecodeErrorZ _res); - export function CResult_NodeIdDecodeErrorZ_free(_res: number): void { + // void CResult_TxOutAccessErrorZ_free(struct LDKCResult_TxOutAccessErrorZ _res); + export function CResult_TxOutAccessErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NodeIdDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_TxOutAccessErrorZ_free(_res); // debug statements here } - // uint64_t CResult_NodeIdDecodeErrorZ_clone_ptr(LDKCResult_NodeIdDecodeErrorZ *NONNULL_PTR arg); - export function CResult_NodeIdDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_TxOutAccessErrorZ_clone_ptr(LDKCResult_TxOutAccessErrorZ *NONNULL_PTR arg); + export function CResult_TxOutAccessErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NodeIdDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_TxOutAccessErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_NodeIdDecodeErrorZ CResult_NodeIdDecodeErrorZ_clone(const struct LDKCResult_NodeIdDecodeErrorZ *NONNULL_PTR orig); - export function CResult_NodeIdDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_TxOutAccessErrorZ CResult_TxOutAccessErrorZ_clone(const struct LDKCResult_TxOutAccessErrorZ *NONNULL_PTR orig); + export function CResult_TxOutAccessErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NodeIdDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_TxOutAccessErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_COption_NetworkUpdateZDecodeErrorZ CResult_COption_NetworkUpdateZDecodeErrorZ_ok(struct LDKCOption_NetworkUpdateZ o); - export function CResult_COption_NetworkUpdateZDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_NoneChannelMonitorUpdateErrZ CResult_NoneChannelMonitorUpdateErrZ_ok(void); + export function CResult_NoneChannelMonitorUpdateErrZ_ok(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_COption_NetworkUpdateZDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_NoneChannelMonitorUpdateErrZ_ok(); return nativeResponseValue; } - // struct LDKCResult_COption_NetworkUpdateZDecodeErrorZ CResult_COption_NetworkUpdateZDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_COption_NetworkUpdateZDecodeErrorZ_err(e: number): number { + // struct LDKCResult_NoneChannelMonitorUpdateErrZ CResult_NoneChannelMonitorUpdateErrZ_err(enum LDKChannelMonitorUpdateErr e); + export function CResult_NoneChannelMonitorUpdateErrZ_err(e: ChannelMonitorUpdateErr): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_COption_NetworkUpdateZDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_NoneChannelMonitorUpdateErrZ_err(e); return nativeResponseValue; } - // bool CResult_COption_NetworkUpdateZDecodeErrorZ_is_ok(const struct LDKCResult_COption_NetworkUpdateZDecodeErrorZ *NONNULL_PTR o); - export function CResult_COption_NetworkUpdateZDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_NoneChannelMonitorUpdateErrZ_is_ok(const struct LDKCResult_NoneChannelMonitorUpdateErrZ *NONNULL_PTR o); + export function CResult_NoneChannelMonitorUpdateErrZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_COption_NetworkUpdateZDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_NoneChannelMonitorUpdateErrZ_is_ok(o); return nativeResponseValue; } - // void CResult_COption_NetworkUpdateZDecodeErrorZ_free(struct LDKCResult_COption_NetworkUpdateZDecodeErrorZ _res); - export function CResult_COption_NetworkUpdateZDecodeErrorZ_free(_res: number): void { + // void CResult_NoneChannelMonitorUpdateErrZ_free(struct LDKCResult_NoneChannelMonitorUpdateErrZ _res); + export function CResult_NoneChannelMonitorUpdateErrZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_COption_NetworkUpdateZDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_NoneChannelMonitorUpdateErrZ_free(_res); // debug statements here } - // uint64_t CResult_COption_NetworkUpdateZDecodeErrorZ_clone_ptr(LDKCResult_COption_NetworkUpdateZDecodeErrorZ *NONNULL_PTR arg); - export function CResult_COption_NetworkUpdateZDecodeErrorZ_clone_ptr(arg: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_COption_NetworkUpdateZDecodeErrorZ_clone_ptr(arg); - return nativeResponseValue; - } - // struct LDKCResult_COption_NetworkUpdateZDecodeErrorZ CResult_COption_NetworkUpdateZDecodeErrorZ_clone(const struct LDKCResult_COption_NetworkUpdateZDecodeErrorZ *NONNULL_PTR orig); - export function CResult_COption_NetworkUpdateZDecodeErrorZ_clone(orig: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_COption_NetworkUpdateZDecodeErrorZ_clone(orig); - return nativeResponseValue; - } - // struct LDKCOption_AccessZ COption_AccessZ_some(struct LDKAccess o); - export function COption_AccessZ_some(o: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.COption_AccessZ_some(o); - return nativeResponseValue; - } - // struct LDKCOption_AccessZ COption_AccessZ_none(void); - export function COption_AccessZ_none(): number { + // uint64_t CResult_NoneChannelMonitorUpdateErrZ_clone_ptr(LDKCResult_NoneChannelMonitorUpdateErrZ *NONNULL_PTR arg); + export function CResult_NoneChannelMonitorUpdateErrZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_AccessZ_none(); + const nativeResponseValue = wasm.TS_CResult_NoneChannelMonitorUpdateErrZ_clone_ptr(arg); return nativeResponseValue; } - // void COption_AccessZ_free(struct LDKCOption_AccessZ _res); - export function COption_AccessZ_free(_res: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.COption_AccessZ_free(_res); - // debug statements here - } - // struct LDKCResult_DirectionalChannelInfoDecodeErrorZ CResult_DirectionalChannelInfoDecodeErrorZ_ok(struct LDKDirectionalChannelInfo o); - export function CResult_DirectionalChannelInfoDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_NoneChannelMonitorUpdateErrZ CResult_NoneChannelMonitorUpdateErrZ_clone(const struct LDKCResult_NoneChannelMonitorUpdateErrZ *NONNULL_PTR orig); + export function CResult_NoneChannelMonitorUpdateErrZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_DirectionalChannelInfoDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_NoneChannelMonitorUpdateErrZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_DirectionalChannelInfoDecodeErrorZ CResult_DirectionalChannelInfoDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_DirectionalChannelInfoDecodeErrorZ_err(e: number): number { + // struct LDKCOption_C2Tuple_usizeTransactionZZ COption_C2Tuple_usizeTransactionZZ_some(struct LDKC2Tuple_usizeTransactionZ o); + export function COption_C2Tuple_usizeTransactionZZ_some(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_DirectionalChannelInfoDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_COption_C2Tuple_usizeTransactionZZ_some(o); return nativeResponseValue; } - // bool CResult_DirectionalChannelInfoDecodeErrorZ_is_ok(const struct LDKCResult_DirectionalChannelInfoDecodeErrorZ *NONNULL_PTR o); - export function CResult_DirectionalChannelInfoDecodeErrorZ_is_ok(o: number): boolean { + // struct LDKCOption_C2Tuple_usizeTransactionZZ COption_C2Tuple_usizeTransactionZZ_none(void); + export function COption_C2Tuple_usizeTransactionZZ_none(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_DirectionalChannelInfoDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_COption_C2Tuple_usizeTransactionZZ_none(); return nativeResponseValue; } - // void CResult_DirectionalChannelInfoDecodeErrorZ_free(struct LDKCResult_DirectionalChannelInfoDecodeErrorZ _res); - export function CResult_DirectionalChannelInfoDecodeErrorZ_free(_res: number): void { + // void COption_C2Tuple_usizeTransactionZZ_free(struct LDKCOption_C2Tuple_usizeTransactionZZ _res); + export function COption_C2Tuple_usizeTransactionZZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_DirectionalChannelInfoDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_COption_C2Tuple_usizeTransactionZZ_free(_res); // debug statements here } - // uint64_t CResult_DirectionalChannelInfoDecodeErrorZ_clone_ptr(LDKCResult_DirectionalChannelInfoDecodeErrorZ *NONNULL_PTR arg); - export function CResult_DirectionalChannelInfoDecodeErrorZ_clone_ptr(arg: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_DirectionalChannelInfoDecodeErrorZ_clone_ptr(arg); - return nativeResponseValue; - } - // struct LDKCResult_DirectionalChannelInfoDecodeErrorZ CResult_DirectionalChannelInfoDecodeErrorZ_clone(const struct LDKCResult_DirectionalChannelInfoDecodeErrorZ *NONNULL_PTR orig); - export function CResult_DirectionalChannelInfoDecodeErrorZ_clone(orig: number): number { + // uint64_t COption_C2Tuple_usizeTransactionZZ_clone_ptr(LDKCOption_C2Tuple_usizeTransactionZZ *NONNULL_PTR arg); + export function COption_C2Tuple_usizeTransactionZZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_DirectionalChannelInfoDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_COption_C2Tuple_usizeTransactionZZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_ChannelInfoDecodeErrorZ CResult_ChannelInfoDecodeErrorZ_ok(struct LDKChannelInfo o); - export function CResult_ChannelInfoDecodeErrorZ_ok(o: number): number { + // struct LDKCOption_C2Tuple_usizeTransactionZZ COption_C2Tuple_usizeTransactionZZ_clone(const struct LDKCOption_C2Tuple_usizeTransactionZZ *NONNULL_PTR orig); + export function COption_C2Tuple_usizeTransactionZZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelInfoDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_COption_C2Tuple_usizeTransactionZZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_ChannelInfoDecodeErrorZ CResult_ChannelInfoDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_ChannelInfoDecodeErrorZ_err(e: number): number { + // struct LDKCOption_ClosureReasonZ COption_ClosureReasonZ_some(struct LDKClosureReason o); + export function COption_ClosureReasonZ_some(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelInfoDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_COption_ClosureReasonZ_some(o); return nativeResponseValue; } - // bool CResult_ChannelInfoDecodeErrorZ_is_ok(const struct LDKCResult_ChannelInfoDecodeErrorZ *NONNULL_PTR o); - export function CResult_ChannelInfoDecodeErrorZ_is_ok(o: number): boolean { + // struct LDKCOption_ClosureReasonZ COption_ClosureReasonZ_none(void); + export function COption_ClosureReasonZ_none(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelInfoDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_COption_ClosureReasonZ_none(); return nativeResponseValue; } - // void CResult_ChannelInfoDecodeErrorZ_free(struct LDKCResult_ChannelInfoDecodeErrorZ _res); - export function CResult_ChannelInfoDecodeErrorZ_free(_res: number): void { + // void COption_ClosureReasonZ_free(struct LDKCOption_ClosureReasonZ _res); + export function COption_ClosureReasonZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelInfoDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_COption_ClosureReasonZ_free(_res); // debug statements here } - // uint64_t CResult_ChannelInfoDecodeErrorZ_clone_ptr(LDKCResult_ChannelInfoDecodeErrorZ *NONNULL_PTR arg); - export function CResult_ChannelInfoDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t COption_ClosureReasonZ_clone_ptr(LDKCOption_ClosureReasonZ *NONNULL_PTR arg); + export function COption_ClosureReasonZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelInfoDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_COption_ClosureReasonZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_ChannelInfoDecodeErrorZ CResult_ChannelInfoDecodeErrorZ_clone(const struct LDKCResult_ChannelInfoDecodeErrorZ *NONNULL_PTR orig); - export function CResult_ChannelInfoDecodeErrorZ_clone(orig: number): number { + // struct LDKCOption_ClosureReasonZ COption_ClosureReasonZ_clone(const struct LDKCOption_ClosureReasonZ *NONNULL_PTR orig); + export function COption_ClosureReasonZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelInfoDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_COption_ClosureReasonZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_RoutingFeesDecodeErrorZ CResult_RoutingFeesDecodeErrorZ_ok(struct LDKRoutingFees o); - export function CResult_RoutingFeesDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_COption_ClosureReasonZDecodeErrorZ CResult_COption_ClosureReasonZDecodeErrorZ_ok(struct LDKCOption_ClosureReasonZ o); + export function CResult_COption_ClosureReasonZDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RoutingFeesDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_COption_ClosureReasonZDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_RoutingFeesDecodeErrorZ CResult_RoutingFeesDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_RoutingFeesDecodeErrorZ_err(e: number): number { + // struct LDKCResult_COption_ClosureReasonZDecodeErrorZ CResult_COption_ClosureReasonZDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_COption_ClosureReasonZDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RoutingFeesDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_COption_ClosureReasonZDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_RoutingFeesDecodeErrorZ_is_ok(const struct LDKCResult_RoutingFeesDecodeErrorZ *NONNULL_PTR o); - export function CResult_RoutingFeesDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_COption_ClosureReasonZDecodeErrorZ_is_ok(const struct LDKCResult_COption_ClosureReasonZDecodeErrorZ *NONNULL_PTR o); + export function CResult_COption_ClosureReasonZDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RoutingFeesDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_COption_ClosureReasonZDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_RoutingFeesDecodeErrorZ_free(struct LDKCResult_RoutingFeesDecodeErrorZ _res); - export function CResult_RoutingFeesDecodeErrorZ_free(_res: number): void { + // void CResult_COption_ClosureReasonZDecodeErrorZ_free(struct LDKCResult_COption_ClosureReasonZDecodeErrorZ _res); + export function CResult_COption_ClosureReasonZDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RoutingFeesDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_COption_ClosureReasonZDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_RoutingFeesDecodeErrorZ_clone_ptr(LDKCResult_RoutingFeesDecodeErrorZ *NONNULL_PTR arg); - export function CResult_RoutingFeesDecodeErrorZ_clone_ptr(arg: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_RoutingFeesDecodeErrorZ_clone_ptr(arg); - return nativeResponseValue; - } - // struct LDKCResult_RoutingFeesDecodeErrorZ CResult_RoutingFeesDecodeErrorZ_clone(const struct LDKCResult_RoutingFeesDecodeErrorZ *NONNULL_PTR orig); - export function CResult_RoutingFeesDecodeErrorZ_clone(orig: number): number { + // uint64_t CResult_COption_ClosureReasonZDecodeErrorZ_clone_ptr(LDKCResult_COption_ClosureReasonZDecodeErrorZ *NONNULL_PTR arg); + export function CResult_COption_ClosureReasonZDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RoutingFeesDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_COption_ClosureReasonZDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_NodeAnnouncementInfoDecodeErrorZ CResult_NodeAnnouncementInfoDecodeErrorZ_ok(struct LDKNodeAnnouncementInfo o); - export function CResult_NodeAnnouncementInfoDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_COption_ClosureReasonZDecodeErrorZ CResult_COption_ClosureReasonZDecodeErrorZ_clone(const struct LDKCResult_COption_ClosureReasonZDecodeErrorZ *NONNULL_PTR orig); + export function CResult_COption_ClosureReasonZDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NodeAnnouncementInfoDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_COption_ClosureReasonZDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_NodeAnnouncementInfoDecodeErrorZ CResult_NodeAnnouncementInfoDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_NodeAnnouncementInfoDecodeErrorZ_err(e: number): number { + // struct LDKCOption_NetworkUpdateZ COption_NetworkUpdateZ_some(struct LDKNetworkUpdate o); + export function COption_NetworkUpdateZ_some(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NodeAnnouncementInfoDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_COption_NetworkUpdateZ_some(o); return nativeResponseValue; } - // bool CResult_NodeAnnouncementInfoDecodeErrorZ_is_ok(const struct LDKCResult_NodeAnnouncementInfoDecodeErrorZ *NONNULL_PTR o); - export function CResult_NodeAnnouncementInfoDecodeErrorZ_is_ok(o: number): boolean { + // struct LDKCOption_NetworkUpdateZ COption_NetworkUpdateZ_none(void); + export function COption_NetworkUpdateZ_none(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NodeAnnouncementInfoDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_COption_NetworkUpdateZ_none(); return nativeResponseValue; } - // void CResult_NodeAnnouncementInfoDecodeErrorZ_free(struct LDKCResult_NodeAnnouncementInfoDecodeErrorZ _res); - export function CResult_NodeAnnouncementInfoDecodeErrorZ_free(_res: number): void { + // void COption_NetworkUpdateZ_free(struct LDKCOption_NetworkUpdateZ _res); + export function COption_NetworkUpdateZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NodeAnnouncementInfoDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_COption_NetworkUpdateZ_free(_res); // debug statements here } - // uint64_t CResult_NodeAnnouncementInfoDecodeErrorZ_clone_ptr(LDKCResult_NodeAnnouncementInfoDecodeErrorZ *NONNULL_PTR arg); - export function CResult_NodeAnnouncementInfoDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t COption_NetworkUpdateZ_clone_ptr(LDKCOption_NetworkUpdateZ *NONNULL_PTR arg); + export function COption_NetworkUpdateZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NodeAnnouncementInfoDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_COption_NetworkUpdateZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_NodeAnnouncementInfoDecodeErrorZ CResult_NodeAnnouncementInfoDecodeErrorZ_clone(const struct LDKCResult_NodeAnnouncementInfoDecodeErrorZ *NONNULL_PTR orig); - export function CResult_NodeAnnouncementInfoDecodeErrorZ_clone(orig: number): number { + // struct LDKCOption_NetworkUpdateZ COption_NetworkUpdateZ_clone(const struct LDKCOption_NetworkUpdateZ *NONNULL_PTR orig); + export function COption_NetworkUpdateZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NodeAnnouncementInfoDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_COption_NetworkUpdateZ_clone(orig); return nativeResponseValue; } - // void CVec_u64Z_free(struct LDKCVec_u64Z _res); - export function CVec_u64Z_free(_res: number[]): void { + // void CVec_SpendableOutputDescriptorZ_free(struct LDKCVec_SpendableOutputDescriptorZ _res); + export function CVec_SpendableOutputDescriptorZ_free(_res: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_u64Z_free(_res); + const nativeResponseValue = wasm.TS_CVec_SpendableOutputDescriptorZ_free(_res); // debug statements here } - // struct LDKCResult_NodeInfoDecodeErrorZ CResult_NodeInfoDecodeErrorZ_ok(struct LDKNodeInfo o); - export function CResult_NodeInfoDecodeErrorZ_ok(o: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_NodeInfoDecodeErrorZ_ok(o); - return nativeResponseValue; - } - // struct LDKCResult_NodeInfoDecodeErrorZ CResult_NodeInfoDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_NodeInfoDecodeErrorZ_err(e: number): number { + // struct LDKCOption_EventZ COption_EventZ_some(struct LDKEvent o); + export function COption_EventZ_some(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NodeInfoDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_COption_EventZ_some(o); return nativeResponseValue; } - // bool CResult_NodeInfoDecodeErrorZ_is_ok(const struct LDKCResult_NodeInfoDecodeErrorZ *NONNULL_PTR o); - export function CResult_NodeInfoDecodeErrorZ_is_ok(o: number): boolean { + // struct LDKCOption_EventZ COption_EventZ_none(void); + export function COption_EventZ_none(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NodeInfoDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_COption_EventZ_none(); return nativeResponseValue; } - // void CResult_NodeInfoDecodeErrorZ_free(struct LDKCResult_NodeInfoDecodeErrorZ _res); - export function CResult_NodeInfoDecodeErrorZ_free(_res: number): void { + // void COption_EventZ_free(struct LDKCOption_EventZ _res); + export function COption_EventZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NodeInfoDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_COption_EventZ_free(_res); // debug statements here } - // uint64_t CResult_NodeInfoDecodeErrorZ_clone_ptr(LDKCResult_NodeInfoDecodeErrorZ *NONNULL_PTR arg); - export function CResult_NodeInfoDecodeErrorZ_clone_ptr(arg: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_NodeInfoDecodeErrorZ_clone_ptr(arg); - return nativeResponseValue; - } - // struct LDKCResult_NodeInfoDecodeErrorZ CResult_NodeInfoDecodeErrorZ_clone(const struct LDKCResult_NodeInfoDecodeErrorZ *NONNULL_PTR orig); - export function CResult_NodeInfoDecodeErrorZ_clone(orig: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_NodeInfoDecodeErrorZ_clone(orig); - return nativeResponseValue; - } - // struct LDKCResult_NetworkGraphDecodeErrorZ CResult_NetworkGraphDecodeErrorZ_ok(struct LDKNetworkGraph o); - export function CResult_NetworkGraphDecodeErrorZ_ok(o: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_NetworkGraphDecodeErrorZ_ok(o); - return nativeResponseValue; - } - // struct LDKCResult_NetworkGraphDecodeErrorZ CResult_NetworkGraphDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_NetworkGraphDecodeErrorZ_err(e: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_NetworkGraphDecodeErrorZ_err(e); - return nativeResponseValue; - } - // bool CResult_NetworkGraphDecodeErrorZ_is_ok(const struct LDKCResult_NetworkGraphDecodeErrorZ *NONNULL_PTR o); - export function CResult_NetworkGraphDecodeErrorZ_is_ok(o: number): boolean { + // uint64_t COption_EventZ_clone_ptr(LDKCOption_EventZ *NONNULL_PTR arg); + export function COption_EventZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NetworkGraphDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_COption_EventZ_clone_ptr(arg); return nativeResponseValue; - } - // void CResult_NetworkGraphDecodeErrorZ_free(struct LDKCResult_NetworkGraphDecodeErrorZ _res); - export function CResult_NetworkGraphDecodeErrorZ_free(_res: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_NetworkGraphDecodeErrorZ_free(_res); - // debug statements here - } - // uint64_t CResult_NetworkGraphDecodeErrorZ_clone_ptr(LDKCResult_NetworkGraphDecodeErrorZ *NONNULL_PTR arg); - export function CResult_NetworkGraphDecodeErrorZ_clone_ptr(arg: number): number { + } + // struct LDKCOption_EventZ COption_EventZ_clone(const struct LDKCOption_EventZ *NONNULL_PTR orig); + export function COption_EventZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NetworkGraphDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_COption_EventZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_NetworkGraphDecodeErrorZ CResult_NetworkGraphDecodeErrorZ_clone(const struct LDKCResult_NetworkGraphDecodeErrorZ *NONNULL_PTR orig); - export function CResult_NetworkGraphDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_COption_EventZDecodeErrorZ CResult_COption_EventZDecodeErrorZ_ok(struct LDKCOption_EventZ o); + export function CResult_COption_EventZDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NetworkGraphDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_COption_EventZDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCOption_CVec_NetAddressZZ COption_CVec_NetAddressZZ_some(struct LDKCVec_NetAddressZ o); - export function COption_CVec_NetAddressZZ_some(o: number[]): number { + // struct LDKCResult_COption_EventZDecodeErrorZ CResult_COption_EventZDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_COption_EventZDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_CVec_NetAddressZZ_some(o); + const nativeResponseValue = wasm.TS_CResult_COption_EventZDecodeErrorZ_err(e); return nativeResponseValue; } - // struct LDKCOption_CVec_NetAddressZZ COption_CVec_NetAddressZZ_none(void); - export function COption_CVec_NetAddressZZ_none(): number { + // bool CResult_COption_EventZDecodeErrorZ_is_ok(const struct LDKCResult_COption_EventZDecodeErrorZ *NONNULL_PTR o); + export function CResult_COption_EventZDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_CVec_NetAddressZZ_none(); + const nativeResponseValue = wasm.TS_CResult_COption_EventZDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void COption_CVec_NetAddressZZ_free(struct LDKCOption_CVec_NetAddressZZ _res); - export function COption_CVec_NetAddressZZ_free(_res: number): void { + // void CResult_COption_EventZDecodeErrorZ_free(struct LDKCResult_COption_EventZDecodeErrorZ _res); + export function CResult_COption_EventZDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_CVec_NetAddressZZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_COption_EventZDecodeErrorZ_free(_res); // debug statements here } - // uint64_t COption_CVec_NetAddressZZ_clone_ptr(LDKCOption_CVec_NetAddressZZ *NONNULL_PTR arg); - export function COption_CVec_NetAddressZZ_clone_ptr(arg: number): number { + // uint64_t CResult_COption_EventZDecodeErrorZ_clone_ptr(LDKCResult_COption_EventZDecodeErrorZ *NONNULL_PTR arg); + export function CResult_COption_EventZDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_CVec_NetAddressZZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_COption_EventZDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCOption_CVec_NetAddressZZ COption_CVec_NetAddressZZ_clone(const struct LDKCOption_CVec_NetAddressZZ *NONNULL_PTR orig); - export function COption_CVec_NetAddressZZ_clone(orig: number): number { + // struct LDKCResult_COption_EventZDecodeErrorZ CResult_COption_EventZDecodeErrorZ_clone(const struct LDKCResult_COption_EventZDecodeErrorZ *NONNULL_PTR orig); + export function CResult_COption_EventZDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_CVec_NetAddressZZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_COption_EventZDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_NetAddressDecodeErrorZ CResult_NetAddressDecodeErrorZ_ok(struct LDKNetAddress o); - export function CResult_NetAddressDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_NodeIdDecodeErrorZ CResult_NodeIdDecodeErrorZ_ok(struct LDKNodeId o); + export function CResult_NodeIdDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NetAddressDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_NodeIdDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_NetAddressDecodeErrorZ CResult_NetAddressDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_NetAddressDecodeErrorZ_err(e: number): number { + // struct LDKCResult_NodeIdDecodeErrorZ CResult_NodeIdDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_NodeIdDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NetAddressDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_NodeIdDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_NetAddressDecodeErrorZ_is_ok(const struct LDKCResult_NetAddressDecodeErrorZ *NONNULL_PTR o); - export function CResult_NetAddressDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_NodeIdDecodeErrorZ_is_ok(const struct LDKCResult_NodeIdDecodeErrorZ *NONNULL_PTR o); + export function CResult_NodeIdDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NetAddressDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_NodeIdDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_NetAddressDecodeErrorZ_free(struct LDKCResult_NetAddressDecodeErrorZ _res); - export function CResult_NetAddressDecodeErrorZ_free(_res: number): void { + // void CResult_NodeIdDecodeErrorZ_free(struct LDKCResult_NodeIdDecodeErrorZ _res); + export function CResult_NodeIdDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NetAddressDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_NodeIdDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_NetAddressDecodeErrorZ_clone_ptr(LDKCResult_NetAddressDecodeErrorZ *NONNULL_PTR arg); - export function CResult_NetAddressDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_NodeIdDecodeErrorZ_clone_ptr(LDKCResult_NodeIdDecodeErrorZ *NONNULL_PTR arg); + export function CResult_NodeIdDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NetAddressDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_NodeIdDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_NetAddressDecodeErrorZ CResult_NetAddressDecodeErrorZ_clone(const struct LDKCResult_NetAddressDecodeErrorZ *NONNULL_PTR orig); - export function CResult_NetAddressDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_NodeIdDecodeErrorZ CResult_NodeIdDecodeErrorZ_clone(const struct LDKCResult_NodeIdDecodeErrorZ *NONNULL_PTR orig); + export function CResult_NodeIdDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NetAddressDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_NodeIdDecodeErrorZ_clone(orig); return nativeResponseValue; } - // void CVec_UpdateAddHTLCZ_free(struct LDKCVec_UpdateAddHTLCZ _res); - export function CVec_UpdateAddHTLCZ_free(_res: number[]): void { + // struct LDKCResult_COption_NetworkUpdateZDecodeErrorZ CResult_COption_NetworkUpdateZDecodeErrorZ_ok(struct LDKCOption_NetworkUpdateZ o); + export function CResult_COption_NetworkUpdateZDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_UpdateAddHTLCZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_COption_NetworkUpdateZDecodeErrorZ_ok(o); + return nativeResponseValue; } - // void CVec_UpdateFulfillHTLCZ_free(struct LDKCVec_UpdateFulfillHTLCZ _res); - export function CVec_UpdateFulfillHTLCZ_free(_res: number[]): void { + // struct LDKCResult_COption_NetworkUpdateZDecodeErrorZ CResult_COption_NetworkUpdateZDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_COption_NetworkUpdateZDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_UpdateFulfillHTLCZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_COption_NetworkUpdateZDecodeErrorZ_err(e); + return nativeResponseValue; } - // void CVec_UpdateFailHTLCZ_free(struct LDKCVec_UpdateFailHTLCZ _res); - export function CVec_UpdateFailHTLCZ_free(_res: number[]): void { + // bool CResult_COption_NetworkUpdateZDecodeErrorZ_is_ok(const struct LDKCResult_COption_NetworkUpdateZDecodeErrorZ *NONNULL_PTR o); + export function CResult_COption_NetworkUpdateZDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_UpdateFailHTLCZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_COption_NetworkUpdateZDecodeErrorZ_is_ok(o); + return nativeResponseValue; } - // void CVec_UpdateFailMalformedHTLCZ_free(struct LDKCVec_UpdateFailMalformedHTLCZ _res); - export function CVec_UpdateFailMalformedHTLCZ_free(_res: number[]): void { + // void CResult_COption_NetworkUpdateZDecodeErrorZ_free(struct LDKCResult_COption_NetworkUpdateZDecodeErrorZ _res); + export function CResult_COption_NetworkUpdateZDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_UpdateFailMalformedHTLCZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_COption_NetworkUpdateZDecodeErrorZ_free(_res); // debug statements here } - // struct LDKCResult_AcceptChannelDecodeErrorZ CResult_AcceptChannelDecodeErrorZ_ok(struct LDKAcceptChannel o); - export function CResult_AcceptChannelDecodeErrorZ_ok(o: number): number { + // uint64_t CResult_COption_NetworkUpdateZDecodeErrorZ_clone_ptr(LDKCResult_COption_NetworkUpdateZDecodeErrorZ *NONNULL_PTR arg); + export function CResult_COption_NetworkUpdateZDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_AcceptChannelDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_COption_NetworkUpdateZDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_AcceptChannelDecodeErrorZ CResult_AcceptChannelDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_AcceptChannelDecodeErrorZ_err(e: number): number { + // struct LDKCResult_COption_NetworkUpdateZDecodeErrorZ CResult_COption_NetworkUpdateZDecodeErrorZ_clone(const struct LDKCResult_COption_NetworkUpdateZDecodeErrorZ *NONNULL_PTR orig); + export function CResult_COption_NetworkUpdateZDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_AcceptChannelDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_COption_NetworkUpdateZDecodeErrorZ_clone(orig); return nativeResponseValue; } - // bool CResult_AcceptChannelDecodeErrorZ_is_ok(const struct LDKCResult_AcceptChannelDecodeErrorZ *NONNULL_PTR o); - export function CResult_AcceptChannelDecodeErrorZ_is_ok(o: number): boolean { + // struct LDKCOption_AccessZ COption_AccessZ_some(struct LDKAccess o); + export function COption_AccessZ_some(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_AcceptChannelDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_COption_AccessZ_some(o); return nativeResponseValue; } - // void CResult_AcceptChannelDecodeErrorZ_free(struct LDKCResult_AcceptChannelDecodeErrorZ _res); - export function CResult_AcceptChannelDecodeErrorZ_free(_res: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_AcceptChannelDecodeErrorZ_free(_res); - // debug statements here - } - // uint64_t CResult_AcceptChannelDecodeErrorZ_clone_ptr(LDKCResult_AcceptChannelDecodeErrorZ *NONNULL_PTR arg); - export function CResult_AcceptChannelDecodeErrorZ_clone_ptr(arg: number): number { + // struct LDKCOption_AccessZ COption_AccessZ_none(void); + export function COption_AccessZ_none(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_AcceptChannelDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_COption_AccessZ_none(); return nativeResponseValue; } - // struct LDKCResult_AcceptChannelDecodeErrorZ CResult_AcceptChannelDecodeErrorZ_clone(const struct LDKCResult_AcceptChannelDecodeErrorZ *NONNULL_PTR orig); - export function CResult_AcceptChannelDecodeErrorZ_clone(orig: number): number { + // void COption_AccessZ_free(struct LDKCOption_AccessZ _res); + export function COption_AccessZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_AcceptChannelDecodeErrorZ_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_COption_AccessZ_free(_res); + // debug statements here } - // struct LDKCResult_AnnouncementSignaturesDecodeErrorZ CResult_AnnouncementSignaturesDecodeErrorZ_ok(struct LDKAnnouncementSignatures o); - export function CResult_AnnouncementSignaturesDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_DirectionalChannelInfoDecodeErrorZ CResult_DirectionalChannelInfoDecodeErrorZ_ok(struct LDKDirectionalChannelInfo o); + export function CResult_DirectionalChannelInfoDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_AnnouncementSignaturesDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_DirectionalChannelInfoDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_AnnouncementSignaturesDecodeErrorZ CResult_AnnouncementSignaturesDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_AnnouncementSignaturesDecodeErrorZ_err(e: number): number { + // struct LDKCResult_DirectionalChannelInfoDecodeErrorZ CResult_DirectionalChannelInfoDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_DirectionalChannelInfoDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_AnnouncementSignaturesDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_DirectionalChannelInfoDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_AnnouncementSignaturesDecodeErrorZ_is_ok(const struct LDKCResult_AnnouncementSignaturesDecodeErrorZ *NONNULL_PTR o); - export function CResult_AnnouncementSignaturesDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_DirectionalChannelInfoDecodeErrorZ_is_ok(const struct LDKCResult_DirectionalChannelInfoDecodeErrorZ *NONNULL_PTR o); + export function CResult_DirectionalChannelInfoDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_AnnouncementSignaturesDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_DirectionalChannelInfoDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_AnnouncementSignaturesDecodeErrorZ_free(struct LDKCResult_AnnouncementSignaturesDecodeErrorZ _res); - export function CResult_AnnouncementSignaturesDecodeErrorZ_free(_res: number): void { + // void CResult_DirectionalChannelInfoDecodeErrorZ_free(struct LDKCResult_DirectionalChannelInfoDecodeErrorZ _res); + export function CResult_DirectionalChannelInfoDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_AnnouncementSignaturesDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_DirectionalChannelInfoDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_AnnouncementSignaturesDecodeErrorZ_clone_ptr(LDKCResult_AnnouncementSignaturesDecodeErrorZ *NONNULL_PTR arg); - export function CResult_AnnouncementSignaturesDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_DirectionalChannelInfoDecodeErrorZ_clone_ptr(LDKCResult_DirectionalChannelInfoDecodeErrorZ *NONNULL_PTR arg); + export function CResult_DirectionalChannelInfoDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_AnnouncementSignaturesDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_DirectionalChannelInfoDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_AnnouncementSignaturesDecodeErrorZ CResult_AnnouncementSignaturesDecodeErrorZ_clone(const struct LDKCResult_AnnouncementSignaturesDecodeErrorZ *NONNULL_PTR orig); - export function CResult_AnnouncementSignaturesDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_DirectionalChannelInfoDecodeErrorZ CResult_DirectionalChannelInfoDecodeErrorZ_clone(const struct LDKCResult_DirectionalChannelInfoDecodeErrorZ *NONNULL_PTR orig); + export function CResult_DirectionalChannelInfoDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_AnnouncementSignaturesDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_DirectionalChannelInfoDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_ChannelReestablishDecodeErrorZ CResult_ChannelReestablishDecodeErrorZ_ok(struct LDKChannelReestablish o); - export function CResult_ChannelReestablishDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_ChannelInfoDecodeErrorZ CResult_ChannelInfoDecodeErrorZ_ok(struct LDKChannelInfo o); + export function CResult_ChannelInfoDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelReestablishDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_ChannelInfoDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_ChannelReestablishDecodeErrorZ CResult_ChannelReestablishDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_ChannelReestablishDecodeErrorZ_err(e: number): number { + // struct LDKCResult_ChannelInfoDecodeErrorZ CResult_ChannelInfoDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_ChannelInfoDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelReestablishDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_ChannelInfoDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_ChannelReestablishDecodeErrorZ_is_ok(const struct LDKCResult_ChannelReestablishDecodeErrorZ *NONNULL_PTR o); - export function CResult_ChannelReestablishDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_ChannelInfoDecodeErrorZ_is_ok(const struct LDKCResult_ChannelInfoDecodeErrorZ *NONNULL_PTR o); + export function CResult_ChannelInfoDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelReestablishDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_ChannelInfoDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_ChannelReestablishDecodeErrorZ_free(struct LDKCResult_ChannelReestablishDecodeErrorZ _res); - export function CResult_ChannelReestablishDecodeErrorZ_free(_res: number): void { + // void CResult_ChannelInfoDecodeErrorZ_free(struct LDKCResult_ChannelInfoDecodeErrorZ _res); + export function CResult_ChannelInfoDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelReestablishDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_ChannelInfoDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_ChannelReestablishDecodeErrorZ_clone_ptr(LDKCResult_ChannelReestablishDecodeErrorZ *NONNULL_PTR arg); - export function CResult_ChannelReestablishDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_ChannelInfoDecodeErrorZ_clone_ptr(LDKCResult_ChannelInfoDecodeErrorZ *NONNULL_PTR arg); + export function CResult_ChannelInfoDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelReestablishDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_ChannelInfoDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_ChannelReestablishDecodeErrorZ CResult_ChannelReestablishDecodeErrorZ_clone(const struct LDKCResult_ChannelReestablishDecodeErrorZ *NONNULL_PTR orig); - export function CResult_ChannelReestablishDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_ChannelInfoDecodeErrorZ CResult_ChannelInfoDecodeErrorZ_clone(const struct LDKCResult_ChannelInfoDecodeErrorZ *NONNULL_PTR orig); + export function CResult_ChannelInfoDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelReestablishDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_ChannelInfoDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_ClosingSignedDecodeErrorZ CResult_ClosingSignedDecodeErrorZ_ok(struct LDKClosingSigned o); - export function CResult_ClosingSignedDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_RoutingFeesDecodeErrorZ CResult_RoutingFeesDecodeErrorZ_ok(struct LDKRoutingFees o); + export function CResult_RoutingFeesDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ClosingSignedDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_RoutingFeesDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_ClosingSignedDecodeErrorZ CResult_ClosingSignedDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_ClosingSignedDecodeErrorZ_err(e: number): number { + // struct LDKCResult_RoutingFeesDecodeErrorZ CResult_RoutingFeesDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_RoutingFeesDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ClosingSignedDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_RoutingFeesDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_ClosingSignedDecodeErrorZ_is_ok(const struct LDKCResult_ClosingSignedDecodeErrorZ *NONNULL_PTR o); - export function CResult_ClosingSignedDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_RoutingFeesDecodeErrorZ_is_ok(const struct LDKCResult_RoutingFeesDecodeErrorZ *NONNULL_PTR o); + export function CResult_RoutingFeesDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ClosingSignedDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_RoutingFeesDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_ClosingSignedDecodeErrorZ_free(struct LDKCResult_ClosingSignedDecodeErrorZ _res); - export function CResult_ClosingSignedDecodeErrorZ_free(_res: number): void { + // void CResult_RoutingFeesDecodeErrorZ_free(struct LDKCResult_RoutingFeesDecodeErrorZ _res); + export function CResult_RoutingFeesDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ClosingSignedDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_RoutingFeesDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_ClosingSignedDecodeErrorZ_clone_ptr(LDKCResult_ClosingSignedDecodeErrorZ *NONNULL_PTR arg); - export function CResult_ClosingSignedDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_RoutingFeesDecodeErrorZ_clone_ptr(LDKCResult_RoutingFeesDecodeErrorZ *NONNULL_PTR arg); + export function CResult_RoutingFeesDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ClosingSignedDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_RoutingFeesDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_ClosingSignedDecodeErrorZ CResult_ClosingSignedDecodeErrorZ_clone(const struct LDKCResult_ClosingSignedDecodeErrorZ *NONNULL_PTR orig); - export function CResult_ClosingSignedDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_RoutingFeesDecodeErrorZ CResult_RoutingFeesDecodeErrorZ_clone(const struct LDKCResult_RoutingFeesDecodeErrorZ *NONNULL_PTR orig); + export function CResult_RoutingFeesDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ClosingSignedDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_RoutingFeesDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_ClosingSignedFeeRangeDecodeErrorZ CResult_ClosingSignedFeeRangeDecodeErrorZ_ok(struct LDKClosingSignedFeeRange o); - export function CResult_ClosingSignedFeeRangeDecodeErrorZ_ok(o: number): number { + // void CVec_NetAddressZ_free(struct LDKCVec_NetAddressZ _res); + export function CVec_NetAddressZ_free(_res: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ClosingSignedFeeRangeDecodeErrorZ_ok(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CVec_NetAddressZ_free(_res); + // debug statements here } - // struct LDKCResult_ClosingSignedFeeRangeDecodeErrorZ CResult_ClosingSignedFeeRangeDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_ClosingSignedFeeRangeDecodeErrorZ_err(e: number): number { + // struct LDKCResult_NodeAnnouncementInfoDecodeErrorZ CResult_NodeAnnouncementInfoDecodeErrorZ_ok(struct LDKNodeAnnouncementInfo o); + export function CResult_NodeAnnouncementInfoDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ClosingSignedFeeRangeDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_NodeAnnouncementInfoDecodeErrorZ_ok(o); return nativeResponseValue; } - // bool CResult_ClosingSignedFeeRangeDecodeErrorZ_is_ok(const struct LDKCResult_ClosingSignedFeeRangeDecodeErrorZ *NONNULL_PTR o); - export function CResult_ClosingSignedFeeRangeDecodeErrorZ_is_ok(o: number): boolean { + // struct LDKCResult_NodeAnnouncementInfoDecodeErrorZ CResult_NodeAnnouncementInfoDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_NodeAnnouncementInfoDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ClosingSignedFeeRangeDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_NodeAnnouncementInfoDecodeErrorZ_err(e); return nativeResponseValue; } - // void CResult_ClosingSignedFeeRangeDecodeErrorZ_free(struct LDKCResult_ClosingSignedFeeRangeDecodeErrorZ _res); - export function CResult_ClosingSignedFeeRangeDecodeErrorZ_free(_res: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.CResult_ClosingSignedFeeRangeDecodeErrorZ_free(_res); - // debug statements here - } - // uint64_t CResult_ClosingSignedFeeRangeDecodeErrorZ_clone_ptr(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ *NONNULL_PTR arg); - export function CResult_ClosingSignedFeeRangeDecodeErrorZ_clone_ptr(arg: number): number { + // bool CResult_NodeAnnouncementInfoDecodeErrorZ_is_ok(const struct LDKCResult_NodeAnnouncementInfoDecodeErrorZ *NONNULL_PTR o); + export function CResult_NodeAnnouncementInfoDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ClosingSignedFeeRangeDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_NodeAnnouncementInfoDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // struct LDKCResult_ClosingSignedFeeRangeDecodeErrorZ CResult_ClosingSignedFeeRangeDecodeErrorZ_clone(const struct LDKCResult_ClosingSignedFeeRangeDecodeErrorZ *NONNULL_PTR orig); - export function CResult_ClosingSignedFeeRangeDecodeErrorZ_clone(orig: number): number { + // void CResult_NodeAnnouncementInfoDecodeErrorZ_free(struct LDKCResult_NodeAnnouncementInfoDecodeErrorZ _res); + export function CResult_NodeAnnouncementInfoDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ClosingSignedFeeRangeDecodeErrorZ_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_NodeAnnouncementInfoDecodeErrorZ_free(_res); + // debug statements here } - // struct LDKCResult_CommitmentSignedDecodeErrorZ CResult_CommitmentSignedDecodeErrorZ_ok(struct LDKCommitmentSigned o); - export function CResult_CommitmentSignedDecodeErrorZ_ok(o: number): number { + // uint64_t CResult_NodeAnnouncementInfoDecodeErrorZ_clone_ptr(LDKCResult_NodeAnnouncementInfoDecodeErrorZ *NONNULL_PTR arg); + export function CResult_NodeAnnouncementInfoDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CommitmentSignedDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_NodeAnnouncementInfoDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_CommitmentSignedDecodeErrorZ CResult_CommitmentSignedDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_CommitmentSignedDecodeErrorZ_err(e: number): number { + // struct LDKCResult_NodeAnnouncementInfoDecodeErrorZ CResult_NodeAnnouncementInfoDecodeErrorZ_clone(const struct LDKCResult_NodeAnnouncementInfoDecodeErrorZ *NONNULL_PTR orig); + export function CResult_NodeAnnouncementInfoDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CommitmentSignedDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_NodeAnnouncementInfoDecodeErrorZ_clone(orig); return nativeResponseValue; } - // bool CResult_CommitmentSignedDecodeErrorZ_is_ok(const struct LDKCResult_CommitmentSignedDecodeErrorZ *NONNULL_PTR o); - export function CResult_CommitmentSignedDecodeErrorZ_is_ok(o: number): boolean { + // void CVec_u64Z_free(struct LDKCVec_u64Z _res); + export function CVec_u64Z_free(_res: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CommitmentSignedDecodeErrorZ_is_ok(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CVec_u64Z_free(_res); + // debug statements here } - // void CResult_CommitmentSignedDecodeErrorZ_free(struct LDKCResult_CommitmentSignedDecodeErrorZ _res); - export function CResult_CommitmentSignedDecodeErrorZ_free(_res: number): void { + // struct LDKCResult_NodeInfoDecodeErrorZ CResult_NodeInfoDecodeErrorZ_ok(struct LDKNodeInfo o); + export function CResult_NodeInfoDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CommitmentSignedDecodeErrorZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_NodeInfoDecodeErrorZ_ok(o); + return nativeResponseValue; } - // uint64_t CResult_CommitmentSignedDecodeErrorZ_clone_ptr(LDKCResult_CommitmentSignedDecodeErrorZ *NONNULL_PTR arg); - export function CResult_CommitmentSignedDecodeErrorZ_clone_ptr(arg: number): number { + // struct LDKCResult_NodeInfoDecodeErrorZ CResult_NodeInfoDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_NodeInfoDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CommitmentSignedDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_NodeInfoDecodeErrorZ_err(e); return nativeResponseValue; } - // struct LDKCResult_CommitmentSignedDecodeErrorZ CResult_CommitmentSignedDecodeErrorZ_clone(const struct LDKCResult_CommitmentSignedDecodeErrorZ *NONNULL_PTR orig); - export function CResult_CommitmentSignedDecodeErrorZ_clone(orig: number): number { + // bool CResult_NodeInfoDecodeErrorZ_is_ok(const struct LDKCResult_NodeInfoDecodeErrorZ *NONNULL_PTR o); + export function CResult_NodeInfoDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_CommitmentSignedDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_NodeInfoDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // struct LDKCResult_FundingCreatedDecodeErrorZ CResult_FundingCreatedDecodeErrorZ_ok(struct LDKFundingCreated o); - export function CResult_FundingCreatedDecodeErrorZ_ok(o: number): number { + // void CResult_NodeInfoDecodeErrorZ_free(struct LDKCResult_NodeInfoDecodeErrorZ _res); + export function CResult_NodeInfoDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_FundingCreatedDecodeErrorZ_ok(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_NodeInfoDecodeErrorZ_free(_res); + // debug statements here } - // struct LDKCResult_FundingCreatedDecodeErrorZ CResult_FundingCreatedDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_FundingCreatedDecodeErrorZ_err(e: number): number { + // uint64_t CResult_NodeInfoDecodeErrorZ_clone_ptr(LDKCResult_NodeInfoDecodeErrorZ *NONNULL_PTR arg); + export function CResult_NodeInfoDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_FundingCreatedDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_NodeInfoDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // bool CResult_FundingCreatedDecodeErrorZ_is_ok(const struct LDKCResult_FundingCreatedDecodeErrorZ *NONNULL_PTR o); - export function CResult_FundingCreatedDecodeErrorZ_is_ok(o: number): boolean { + // struct LDKCResult_NodeInfoDecodeErrorZ CResult_NodeInfoDecodeErrorZ_clone(const struct LDKCResult_NodeInfoDecodeErrorZ *NONNULL_PTR orig); + export function CResult_NodeInfoDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_FundingCreatedDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_NodeInfoDecodeErrorZ_clone(orig); return nativeResponseValue; } - // void CResult_FundingCreatedDecodeErrorZ_free(struct LDKCResult_FundingCreatedDecodeErrorZ _res); - export function CResult_FundingCreatedDecodeErrorZ_free(_res: number): void { + // struct LDKCResult_NetworkGraphDecodeErrorZ CResult_NetworkGraphDecodeErrorZ_ok(struct LDKNetworkGraph o); + export function CResult_NetworkGraphDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_FundingCreatedDecodeErrorZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_NetworkGraphDecodeErrorZ_ok(o); + return nativeResponseValue; } - // uint64_t CResult_FundingCreatedDecodeErrorZ_clone_ptr(LDKCResult_FundingCreatedDecodeErrorZ *NONNULL_PTR arg); - export function CResult_FundingCreatedDecodeErrorZ_clone_ptr(arg: number): number { + // struct LDKCResult_NetworkGraphDecodeErrorZ CResult_NetworkGraphDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_NetworkGraphDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_FundingCreatedDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_NetworkGraphDecodeErrorZ_err(e); return nativeResponseValue; } - // struct LDKCResult_FundingCreatedDecodeErrorZ CResult_FundingCreatedDecodeErrorZ_clone(const struct LDKCResult_FundingCreatedDecodeErrorZ *NONNULL_PTR orig); - export function CResult_FundingCreatedDecodeErrorZ_clone(orig: number): number { + // bool CResult_NetworkGraphDecodeErrorZ_is_ok(const struct LDKCResult_NetworkGraphDecodeErrorZ *NONNULL_PTR o); + export function CResult_NetworkGraphDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_FundingCreatedDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_NetworkGraphDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // struct LDKCResult_FundingSignedDecodeErrorZ CResult_FundingSignedDecodeErrorZ_ok(struct LDKFundingSigned o); - export function CResult_FundingSignedDecodeErrorZ_ok(o: number): number { + // void CResult_NetworkGraphDecodeErrorZ_free(struct LDKCResult_NetworkGraphDecodeErrorZ _res); + export function CResult_NetworkGraphDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_FundingSignedDecodeErrorZ_ok(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_NetworkGraphDecodeErrorZ_free(_res); + // debug statements here } - // struct LDKCResult_FundingSignedDecodeErrorZ CResult_FundingSignedDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_FundingSignedDecodeErrorZ_err(e: number): number { + // uint64_t CResult_NetworkGraphDecodeErrorZ_clone_ptr(LDKCResult_NetworkGraphDecodeErrorZ *NONNULL_PTR arg); + export function CResult_NetworkGraphDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_FundingSignedDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_NetworkGraphDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // bool CResult_FundingSignedDecodeErrorZ_is_ok(const struct LDKCResult_FundingSignedDecodeErrorZ *NONNULL_PTR o); - export function CResult_FundingSignedDecodeErrorZ_is_ok(o: number): boolean { + // struct LDKCResult_NetworkGraphDecodeErrorZ CResult_NetworkGraphDecodeErrorZ_clone(const struct LDKCResult_NetworkGraphDecodeErrorZ *NONNULL_PTR orig); + export function CResult_NetworkGraphDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_FundingSignedDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_NetworkGraphDecodeErrorZ_clone(orig); return nativeResponseValue; } - // void CResult_FundingSignedDecodeErrorZ_free(struct LDKCResult_FundingSignedDecodeErrorZ _res); - export function CResult_FundingSignedDecodeErrorZ_free(_res: number): void { + // struct LDKCOption_CVec_NetAddressZZ COption_CVec_NetAddressZZ_some(struct LDKCVec_NetAddressZ o); + export function COption_CVec_NetAddressZZ_some(o: number[]): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_FundingSignedDecodeErrorZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_COption_CVec_NetAddressZZ_some(o); + return nativeResponseValue; } - // uint64_t CResult_FundingSignedDecodeErrorZ_clone_ptr(LDKCResult_FundingSignedDecodeErrorZ *NONNULL_PTR arg); - export function CResult_FundingSignedDecodeErrorZ_clone_ptr(arg: number): number { + // struct LDKCOption_CVec_NetAddressZZ COption_CVec_NetAddressZZ_none(void); + export function COption_CVec_NetAddressZZ_none(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_FundingSignedDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_COption_CVec_NetAddressZZ_none(); return nativeResponseValue; } - // struct LDKCResult_FundingSignedDecodeErrorZ CResult_FundingSignedDecodeErrorZ_clone(const struct LDKCResult_FundingSignedDecodeErrorZ *NONNULL_PTR orig); - export function CResult_FundingSignedDecodeErrorZ_clone(orig: number): number { + // void COption_CVec_NetAddressZZ_free(struct LDKCOption_CVec_NetAddressZZ _res); + export function COption_CVec_NetAddressZZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_FundingSignedDecodeErrorZ_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_COption_CVec_NetAddressZZ_free(_res); + // debug statements here } - // struct LDKCResult_FundingLockedDecodeErrorZ CResult_FundingLockedDecodeErrorZ_ok(struct LDKFundingLocked o); - export function CResult_FundingLockedDecodeErrorZ_ok(o: number): number { + // uint64_t COption_CVec_NetAddressZZ_clone_ptr(LDKCOption_CVec_NetAddressZZ *NONNULL_PTR arg); + export function COption_CVec_NetAddressZZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_FundingLockedDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_COption_CVec_NetAddressZZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_FundingLockedDecodeErrorZ CResult_FundingLockedDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_FundingLockedDecodeErrorZ_err(e: number): number { + // struct LDKCOption_CVec_NetAddressZZ COption_CVec_NetAddressZZ_clone(const struct LDKCOption_CVec_NetAddressZZ *NONNULL_PTR orig); + export function COption_CVec_NetAddressZZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_FundingLockedDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_COption_CVec_NetAddressZZ_clone(orig); return nativeResponseValue; } - // bool CResult_FundingLockedDecodeErrorZ_is_ok(const struct LDKCResult_FundingLockedDecodeErrorZ *NONNULL_PTR o); - export function CResult_FundingLockedDecodeErrorZ_is_ok(o: number): boolean { + // struct LDKCResult_ScoringParametersDecodeErrorZ CResult_ScoringParametersDecodeErrorZ_ok(struct LDKScoringParameters o); + export function CResult_ScoringParametersDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_FundingLockedDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_ScoringParametersDecodeErrorZ_ok(o); return nativeResponseValue; } - // void CResult_FundingLockedDecodeErrorZ_free(struct LDKCResult_FundingLockedDecodeErrorZ _res); - export function CResult_FundingLockedDecodeErrorZ_free(_res: number): void { + // struct LDKCResult_ScoringParametersDecodeErrorZ CResult_ScoringParametersDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_ScoringParametersDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_FundingLockedDecodeErrorZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_ScoringParametersDecodeErrorZ_err(e); + return nativeResponseValue; } - // uint64_t CResult_FundingLockedDecodeErrorZ_clone_ptr(LDKCResult_FundingLockedDecodeErrorZ *NONNULL_PTR arg); - export function CResult_FundingLockedDecodeErrorZ_clone_ptr(arg: number): number { + // bool CResult_ScoringParametersDecodeErrorZ_is_ok(const struct LDKCResult_ScoringParametersDecodeErrorZ *NONNULL_PTR o); + export function CResult_ScoringParametersDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_FundingLockedDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_ScoringParametersDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // struct LDKCResult_FundingLockedDecodeErrorZ CResult_FundingLockedDecodeErrorZ_clone(const struct LDKCResult_FundingLockedDecodeErrorZ *NONNULL_PTR orig); - export function CResult_FundingLockedDecodeErrorZ_clone(orig: number): number { + // void CResult_ScoringParametersDecodeErrorZ_free(struct LDKCResult_ScoringParametersDecodeErrorZ _res); + export function CResult_ScoringParametersDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_FundingLockedDecodeErrorZ_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_ScoringParametersDecodeErrorZ_free(_res); + // debug statements here } - // struct LDKCResult_InitDecodeErrorZ CResult_InitDecodeErrorZ_ok(struct LDKInit o); - export function CResult_InitDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_InitFeaturesDecodeErrorZ CResult_InitFeaturesDecodeErrorZ_ok(struct LDKInitFeatures o); + export function CResult_InitFeaturesDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InitDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_InitFeaturesDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_InitDecodeErrorZ CResult_InitDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_InitDecodeErrorZ_err(e: number): number { + // struct LDKCResult_InitFeaturesDecodeErrorZ CResult_InitFeaturesDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_InitFeaturesDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InitDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_InitFeaturesDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_InitDecodeErrorZ_is_ok(const struct LDKCResult_InitDecodeErrorZ *NONNULL_PTR o); - export function CResult_InitDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_InitFeaturesDecodeErrorZ_is_ok(const struct LDKCResult_InitFeaturesDecodeErrorZ *NONNULL_PTR o); + export function CResult_InitFeaturesDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InitDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_InitFeaturesDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_InitDecodeErrorZ_free(struct LDKCResult_InitDecodeErrorZ _res); - export function CResult_InitDecodeErrorZ_free(_res: number): void { + // void CResult_InitFeaturesDecodeErrorZ_free(struct LDKCResult_InitFeaturesDecodeErrorZ _res); + export function CResult_InitFeaturesDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InitDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_InitFeaturesDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_InitDecodeErrorZ_clone_ptr(LDKCResult_InitDecodeErrorZ *NONNULL_PTR arg); - export function CResult_InitDecodeErrorZ_clone_ptr(arg: number): number { + // struct LDKCResult_ChannelFeaturesDecodeErrorZ CResult_ChannelFeaturesDecodeErrorZ_ok(struct LDKChannelFeatures o); + export function CResult_ChannelFeaturesDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InitDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_ChannelFeaturesDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_InitDecodeErrorZ CResult_InitDecodeErrorZ_clone(const struct LDKCResult_InitDecodeErrorZ *NONNULL_PTR orig); - export function CResult_InitDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_ChannelFeaturesDecodeErrorZ CResult_ChannelFeaturesDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_ChannelFeaturesDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InitDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_ChannelFeaturesDecodeErrorZ_err(e); return nativeResponseValue; } - // struct LDKCResult_OpenChannelDecodeErrorZ CResult_OpenChannelDecodeErrorZ_ok(struct LDKOpenChannel o); - export function CResult_OpenChannelDecodeErrorZ_ok(o: number): number { + // bool CResult_ChannelFeaturesDecodeErrorZ_is_ok(const struct LDKCResult_ChannelFeaturesDecodeErrorZ *NONNULL_PTR o); + export function CResult_ChannelFeaturesDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_OpenChannelDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_ChannelFeaturesDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // struct LDKCResult_OpenChannelDecodeErrorZ CResult_OpenChannelDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_OpenChannelDecodeErrorZ_err(e: number): number { + // void CResult_ChannelFeaturesDecodeErrorZ_free(struct LDKCResult_ChannelFeaturesDecodeErrorZ _res); + export function CResult_ChannelFeaturesDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_OpenChannelDecodeErrorZ_err(e); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_ChannelFeaturesDecodeErrorZ_free(_res); + // debug statements here } - // bool CResult_OpenChannelDecodeErrorZ_is_ok(const struct LDKCResult_OpenChannelDecodeErrorZ *NONNULL_PTR o); - export function CResult_OpenChannelDecodeErrorZ_is_ok(o: number): boolean { + // struct LDKCResult_NodeFeaturesDecodeErrorZ CResult_NodeFeaturesDecodeErrorZ_ok(struct LDKNodeFeatures o); + export function CResult_NodeFeaturesDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_OpenChannelDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_NodeFeaturesDecodeErrorZ_ok(o); return nativeResponseValue; } - // void CResult_OpenChannelDecodeErrorZ_free(struct LDKCResult_OpenChannelDecodeErrorZ _res); - export function CResult_OpenChannelDecodeErrorZ_free(_res: number): void { + // struct LDKCResult_NodeFeaturesDecodeErrorZ CResult_NodeFeaturesDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_NodeFeaturesDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_OpenChannelDecodeErrorZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_NodeFeaturesDecodeErrorZ_err(e); + return nativeResponseValue; } - // uint64_t CResult_OpenChannelDecodeErrorZ_clone_ptr(LDKCResult_OpenChannelDecodeErrorZ *NONNULL_PTR arg); - export function CResult_OpenChannelDecodeErrorZ_clone_ptr(arg: number): number { + // bool CResult_NodeFeaturesDecodeErrorZ_is_ok(const struct LDKCResult_NodeFeaturesDecodeErrorZ *NONNULL_PTR o); + export function CResult_NodeFeaturesDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_OpenChannelDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_NodeFeaturesDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // struct LDKCResult_OpenChannelDecodeErrorZ CResult_OpenChannelDecodeErrorZ_clone(const struct LDKCResult_OpenChannelDecodeErrorZ *NONNULL_PTR orig); - export function CResult_OpenChannelDecodeErrorZ_clone(orig: number): number { + // void CResult_NodeFeaturesDecodeErrorZ_free(struct LDKCResult_NodeFeaturesDecodeErrorZ _res); + export function CResult_NodeFeaturesDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_OpenChannelDecodeErrorZ_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_NodeFeaturesDecodeErrorZ_free(_res); + // debug statements here } - // struct LDKCResult_RevokeAndACKDecodeErrorZ CResult_RevokeAndACKDecodeErrorZ_ok(struct LDKRevokeAndACK o); - export function CResult_RevokeAndACKDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_InvoiceFeaturesDecodeErrorZ CResult_InvoiceFeaturesDecodeErrorZ_ok(struct LDKInvoiceFeatures o); + export function CResult_InvoiceFeaturesDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RevokeAndACKDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_InvoiceFeaturesDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_RevokeAndACKDecodeErrorZ CResult_RevokeAndACKDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_RevokeAndACKDecodeErrorZ_err(e: number): number { + // struct LDKCResult_InvoiceFeaturesDecodeErrorZ CResult_InvoiceFeaturesDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_InvoiceFeaturesDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RevokeAndACKDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_InvoiceFeaturesDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_RevokeAndACKDecodeErrorZ_is_ok(const struct LDKCResult_RevokeAndACKDecodeErrorZ *NONNULL_PTR o); - export function CResult_RevokeAndACKDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_InvoiceFeaturesDecodeErrorZ_is_ok(const struct LDKCResult_InvoiceFeaturesDecodeErrorZ *NONNULL_PTR o); + export function CResult_InvoiceFeaturesDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RevokeAndACKDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_InvoiceFeaturesDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_RevokeAndACKDecodeErrorZ_free(struct LDKCResult_RevokeAndACKDecodeErrorZ _res); - export function CResult_RevokeAndACKDecodeErrorZ_free(_res: number): void { + // void CResult_InvoiceFeaturesDecodeErrorZ_free(struct LDKCResult_InvoiceFeaturesDecodeErrorZ _res); + export function CResult_InvoiceFeaturesDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RevokeAndACKDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_InvoiceFeaturesDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_RevokeAndACKDecodeErrorZ_clone_ptr(LDKCResult_RevokeAndACKDecodeErrorZ *NONNULL_PTR arg); - export function CResult_RevokeAndACKDecodeErrorZ_clone_ptr(arg: number): number { + // struct LDKCResult_ChannelTypeFeaturesDecodeErrorZ CResult_ChannelTypeFeaturesDecodeErrorZ_ok(struct LDKChannelTypeFeatures o); + export function CResult_ChannelTypeFeaturesDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RevokeAndACKDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_ChannelTypeFeaturesDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_RevokeAndACKDecodeErrorZ CResult_RevokeAndACKDecodeErrorZ_clone(const struct LDKCResult_RevokeAndACKDecodeErrorZ *NONNULL_PTR orig); - export function CResult_RevokeAndACKDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_ChannelTypeFeaturesDecodeErrorZ CResult_ChannelTypeFeaturesDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_ChannelTypeFeaturesDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_RevokeAndACKDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_ChannelTypeFeaturesDecodeErrorZ_err(e); return nativeResponseValue; } - // struct LDKCResult_ShutdownDecodeErrorZ CResult_ShutdownDecodeErrorZ_ok(struct LDKShutdown o); - export function CResult_ShutdownDecodeErrorZ_ok(o: number): number { + // bool CResult_ChannelTypeFeaturesDecodeErrorZ_is_ok(const struct LDKCResult_ChannelTypeFeaturesDecodeErrorZ *NONNULL_PTR o); + export function CResult_ChannelTypeFeaturesDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ShutdownDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_ChannelTypeFeaturesDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // struct LDKCResult_ShutdownDecodeErrorZ CResult_ShutdownDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_ShutdownDecodeErrorZ_err(e: number): number { + // void CResult_ChannelTypeFeaturesDecodeErrorZ_free(struct LDKCResult_ChannelTypeFeaturesDecodeErrorZ _res); + export function CResult_ChannelTypeFeaturesDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ShutdownDecodeErrorZ_err(e); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_ChannelTypeFeaturesDecodeErrorZ_free(_res); + // debug statements here } - // bool CResult_ShutdownDecodeErrorZ_is_ok(const struct LDKCResult_ShutdownDecodeErrorZ *NONNULL_PTR o); - export function CResult_ShutdownDecodeErrorZ_is_ok(o: number): boolean { + // struct LDKCResult_NetAddressDecodeErrorZ CResult_NetAddressDecodeErrorZ_ok(struct LDKNetAddress o); + export function CResult_NetAddressDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ShutdownDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_NetAddressDecodeErrorZ_ok(o); return nativeResponseValue; } - // void CResult_ShutdownDecodeErrorZ_free(struct LDKCResult_ShutdownDecodeErrorZ _res); - export function CResult_ShutdownDecodeErrorZ_free(_res: number): void { + // struct LDKCResult_NetAddressDecodeErrorZ CResult_NetAddressDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_NetAddressDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ShutdownDecodeErrorZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_NetAddressDecodeErrorZ_err(e); + return nativeResponseValue; } - // uint64_t CResult_ShutdownDecodeErrorZ_clone_ptr(LDKCResult_ShutdownDecodeErrorZ *NONNULL_PTR arg); - export function CResult_ShutdownDecodeErrorZ_clone_ptr(arg: number): number { + // bool CResult_NetAddressDecodeErrorZ_is_ok(const struct LDKCResult_NetAddressDecodeErrorZ *NONNULL_PTR o); + export function CResult_NetAddressDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ShutdownDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_NetAddressDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // struct LDKCResult_ShutdownDecodeErrorZ CResult_ShutdownDecodeErrorZ_clone(const struct LDKCResult_ShutdownDecodeErrorZ *NONNULL_PTR orig); - export function CResult_ShutdownDecodeErrorZ_clone(orig: number): number { + // void CResult_NetAddressDecodeErrorZ_free(struct LDKCResult_NetAddressDecodeErrorZ _res); + export function CResult_NetAddressDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ShutdownDecodeErrorZ_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_NetAddressDecodeErrorZ_free(_res); + // debug statements here } - // struct LDKCResult_UpdateFailHTLCDecodeErrorZ CResult_UpdateFailHTLCDecodeErrorZ_ok(struct LDKUpdateFailHTLC o); - export function CResult_UpdateFailHTLCDecodeErrorZ_ok(o: number): number { + // uint64_t CResult_NetAddressDecodeErrorZ_clone_ptr(LDKCResult_NetAddressDecodeErrorZ *NONNULL_PTR arg); + export function CResult_NetAddressDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateFailHTLCDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_NetAddressDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_UpdateFailHTLCDecodeErrorZ CResult_UpdateFailHTLCDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_UpdateFailHTLCDecodeErrorZ_err(e: number): number { + // struct LDKCResult_NetAddressDecodeErrorZ CResult_NetAddressDecodeErrorZ_clone(const struct LDKCResult_NetAddressDecodeErrorZ *NONNULL_PTR orig); + export function CResult_NetAddressDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateFailHTLCDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_NetAddressDecodeErrorZ_clone(orig); return nativeResponseValue; } - // bool CResult_UpdateFailHTLCDecodeErrorZ_is_ok(const struct LDKCResult_UpdateFailHTLCDecodeErrorZ *NONNULL_PTR o); - export function CResult_UpdateFailHTLCDecodeErrorZ_is_ok(o: number): boolean { + // void CVec_UpdateAddHTLCZ_free(struct LDKCVec_UpdateAddHTLCZ _res); + export function CVec_UpdateAddHTLCZ_free(_res: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateFailHTLCDecodeErrorZ_is_ok(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CVec_UpdateAddHTLCZ_free(_res); + // debug statements here } - // void CResult_UpdateFailHTLCDecodeErrorZ_free(struct LDKCResult_UpdateFailHTLCDecodeErrorZ _res); - export function CResult_UpdateFailHTLCDecodeErrorZ_free(_res: number): void { + // void CVec_UpdateFulfillHTLCZ_free(struct LDKCVec_UpdateFulfillHTLCZ _res); + export function CVec_UpdateFulfillHTLCZ_free(_res: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateFailHTLCDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CVec_UpdateFulfillHTLCZ_free(_res); // debug statements here } - // uint64_t CResult_UpdateFailHTLCDecodeErrorZ_clone_ptr(LDKCResult_UpdateFailHTLCDecodeErrorZ *NONNULL_PTR arg); - export function CResult_UpdateFailHTLCDecodeErrorZ_clone_ptr(arg: number): number { + // void CVec_UpdateFailHTLCZ_free(struct LDKCVec_UpdateFailHTLCZ _res); + export function CVec_UpdateFailHTLCZ_free(_res: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateFailHTLCDecodeErrorZ_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CVec_UpdateFailHTLCZ_free(_res); + // debug statements here } - // struct LDKCResult_UpdateFailHTLCDecodeErrorZ CResult_UpdateFailHTLCDecodeErrorZ_clone(const struct LDKCResult_UpdateFailHTLCDecodeErrorZ *NONNULL_PTR orig); - export function CResult_UpdateFailHTLCDecodeErrorZ_clone(orig: number): number { + // void CVec_UpdateFailMalformedHTLCZ_free(struct LDKCVec_UpdateFailMalformedHTLCZ _res); + export function CVec_UpdateFailMalformedHTLCZ_free(_res: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateFailHTLCDecodeErrorZ_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CVec_UpdateFailMalformedHTLCZ_free(_res); + // debug statements here } - // struct LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ CResult_UpdateFailMalformedHTLCDecodeErrorZ_ok(struct LDKUpdateFailMalformedHTLC o); - export function CResult_UpdateFailMalformedHTLCDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_AcceptChannelDecodeErrorZ CResult_AcceptChannelDecodeErrorZ_ok(struct LDKAcceptChannel o); + export function CResult_AcceptChannelDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateFailMalformedHTLCDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_AcceptChannelDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ CResult_UpdateFailMalformedHTLCDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_UpdateFailMalformedHTLCDecodeErrorZ_err(e: number): number { + // struct LDKCResult_AcceptChannelDecodeErrorZ CResult_AcceptChannelDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_AcceptChannelDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateFailMalformedHTLCDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_AcceptChannelDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_UpdateFailMalformedHTLCDecodeErrorZ_is_ok(const struct LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ *NONNULL_PTR o); - export function CResult_UpdateFailMalformedHTLCDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_AcceptChannelDecodeErrorZ_is_ok(const struct LDKCResult_AcceptChannelDecodeErrorZ *NONNULL_PTR o); + export function CResult_AcceptChannelDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateFailMalformedHTLCDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_AcceptChannelDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_UpdateFailMalformedHTLCDecodeErrorZ_free(struct LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ _res); - export function CResult_UpdateFailMalformedHTLCDecodeErrorZ_free(_res: number): void { + // void CResult_AcceptChannelDecodeErrorZ_free(struct LDKCResult_AcceptChannelDecodeErrorZ _res); + export function CResult_AcceptChannelDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateFailMalformedHTLCDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_AcceptChannelDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone_ptr(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ *NONNULL_PTR arg); - export function CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_AcceptChannelDecodeErrorZ_clone_ptr(LDKCResult_AcceptChannelDecodeErrorZ *NONNULL_PTR arg); + export function CResult_AcceptChannelDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_AcceptChannelDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone(const struct LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ *NONNULL_PTR orig); - export function CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_AcceptChannelDecodeErrorZ CResult_AcceptChannelDecodeErrorZ_clone(const struct LDKCResult_AcceptChannelDecodeErrorZ *NONNULL_PTR orig); + export function CResult_AcceptChannelDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_AcceptChannelDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_UpdateFeeDecodeErrorZ CResult_UpdateFeeDecodeErrorZ_ok(struct LDKUpdateFee o); - export function CResult_UpdateFeeDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_AnnouncementSignaturesDecodeErrorZ CResult_AnnouncementSignaturesDecodeErrorZ_ok(struct LDKAnnouncementSignatures o); + export function CResult_AnnouncementSignaturesDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateFeeDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_AnnouncementSignaturesDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_UpdateFeeDecodeErrorZ CResult_UpdateFeeDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_UpdateFeeDecodeErrorZ_err(e: number): number { + // struct LDKCResult_AnnouncementSignaturesDecodeErrorZ CResult_AnnouncementSignaturesDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_AnnouncementSignaturesDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateFeeDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_AnnouncementSignaturesDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_UpdateFeeDecodeErrorZ_is_ok(const struct LDKCResult_UpdateFeeDecodeErrorZ *NONNULL_PTR o); - export function CResult_UpdateFeeDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_AnnouncementSignaturesDecodeErrorZ_is_ok(const struct LDKCResult_AnnouncementSignaturesDecodeErrorZ *NONNULL_PTR o); + export function CResult_AnnouncementSignaturesDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateFeeDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_AnnouncementSignaturesDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_UpdateFeeDecodeErrorZ_free(struct LDKCResult_UpdateFeeDecodeErrorZ _res); - export function CResult_UpdateFeeDecodeErrorZ_free(_res: number): void { + // void CResult_AnnouncementSignaturesDecodeErrorZ_free(struct LDKCResult_AnnouncementSignaturesDecodeErrorZ _res); + export function CResult_AnnouncementSignaturesDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateFeeDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_AnnouncementSignaturesDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_UpdateFeeDecodeErrorZ_clone_ptr(LDKCResult_UpdateFeeDecodeErrorZ *NONNULL_PTR arg); - export function CResult_UpdateFeeDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_AnnouncementSignaturesDecodeErrorZ_clone_ptr(LDKCResult_AnnouncementSignaturesDecodeErrorZ *NONNULL_PTR arg); + export function CResult_AnnouncementSignaturesDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateFeeDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_AnnouncementSignaturesDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_UpdateFeeDecodeErrorZ CResult_UpdateFeeDecodeErrorZ_clone(const struct LDKCResult_UpdateFeeDecodeErrorZ *NONNULL_PTR orig); - export function CResult_UpdateFeeDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_AnnouncementSignaturesDecodeErrorZ CResult_AnnouncementSignaturesDecodeErrorZ_clone(const struct LDKCResult_AnnouncementSignaturesDecodeErrorZ *NONNULL_PTR orig); + export function CResult_AnnouncementSignaturesDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateFeeDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_AnnouncementSignaturesDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_UpdateFulfillHTLCDecodeErrorZ CResult_UpdateFulfillHTLCDecodeErrorZ_ok(struct LDKUpdateFulfillHTLC o); - export function CResult_UpdateFulfillHTLCDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_ChannelReestablishDecodeErrorZ CResult_ChannelReestablishDecodeErrorZ_ok(struct LDKChannelReestablish o); + export function CResult_ChannelReestablishDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateFulfillHTLCDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_ChannelReestablishDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_UpdateFulfillHTLCDecodeErrorZ CResult_UpdateFulfillHTLCDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_UpdateFulfillHTLCDecodeErrorZ_err(e: number): number { + // struct LDKCResult_ChannelReestablishDecodeErrorZ CResult_ChannelReestablishDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_ChannelReestablishDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateFulfillHTLCDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_ChannelReestablishDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_UpdateFulfillHTLCDecodeErrorZ_is_ok(const struct LDKCResult_UpdateFulfillHTLCDecodeErrorZ *NONNULL_PTR o); - export function CResult_UpdateFulfillHTLCDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_ChannelReestablishDecodeErrorZ_is_ok(const struct LDKCResult_ChannelReestablishDecodeErrorZ *NONNULL_PTR o); + export function CResult_ChannelReestablishDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateFulfillHTLCDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_ChannelReestablishDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_UpdateFulfillHTLCDecodeErrorZ_free(struct LDKCResult_UpdateFulfillHTLCDecodeErrorZ _res); - export function CResult_UpdateFulfillHTLCDecodeErrorZ_free(_res: number): void { + // void CResult_ChannelReestablishDecodeErrorZ_free(struct LDKCResult_ChannelReestablishDecodeErrorZ _res); + export function CResult_ChannelReestablishDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateFulfillHTLCDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_ChannelReestablishDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_UpdateFulfillHTLCDecodeErrorZ_clone_ptr(LDKCResult_UpdateFulfillHTLCDecodeErrorZ *NONNULL_PTR arg); - export function CResult_UpdateFulfillHTLCDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_ChannelReestablishDecodeErrorZ_clone_ptr(LDKCResult_ChannelReestablishDecodeErrorZ *NONNULL_PTR arg); + export function CResult_ChannelReestablishDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateFulfillHTLCDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_ChannelReestablishDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_UpdateFulfillHTLCDecodeErrorZ CResult_UpdateFulfillHTLCDecodeErrorZ_clone(const struct LDKCResult_UpdateFulfillHTLCDecodeErrorZ *NONNULL_PTR orig); - export function CResult_UpdateFulfillHTLCDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_ChannelReestablishDecodeErrorZ CResult_ChannelReestablishDecodeErrorZ_clone(const struct LDKCResult_ChannelReestablishDecodeErrorZ *NONNULL_PTR orig); + export function CResult_ChannelReestablishDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateFulfillHTLCDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_ChannelReestablishDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_UpdateAddHTLCDecodeErrorZ CResult_UpdateAddHTLCDecodeErrorZ_ok(struct LDKUpdateAddHTLC o); - export function CResult_UpdateAddHTLCDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_ClosingSignedDecodeErrorZ CResult_ClosingSignedDecodeErrorZ_ok(struct LDKClosingSigned o); + export function CResult_ClosingSignedDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateAddHTLCDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_ClosingSignedDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_UpdateAddHTLCDecodeErrorZ CResult_UpdateAddHTLCDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_UpdateAddHTLCDecodeErrorZ_err(e: number): number { + // struct LDKCResult_ClosingSignedDecodeErrorZ CResult_ClosingSignedDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_ClosingSignedDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateAddHTLCDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_ClosingSignedDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_UpdateAddHTLCDecodeErrorZ_is_ok(const struct LDKCResult_UpdateAddHTLCDecodeErrorZ *NONNULL_PTR o); - export function CResult_UpdateAddHTLCDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_ClosingSignedDecodeErrorZ_is_ok(const struct LDKCResult_ClosingSignedDecodeErrorZ *NONNULL_PTR o); + export function CResult_ClosingSignedDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateAddHTLCDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_ClosingSignedDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_UpdateAddHTLCDecodeErrorZ_free(struct LDKCResult_UpdateAddHTLCDecodeErrorZ _res); - export function CResult_UpdateAddHTLCDecodeErrorZ_free(_res: number): void { + // void CResult_ClosingSignedDecodeErrorZ_free(struct LDKCResult_ClosingSignedDecodeErrorZ _res); + export function CResult_ClosingSignedDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateAddHTLCDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_ClosingSignedDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_UpdateAddHTLCDecodeErrorZ_clone_ptr(LDKCResult_UpdateAddHTLCDecodeErrorZ *NONNULL_PTR arg); - export function CResult_UpdateAddHTLCDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_ClosingSignedDecodeErrorZ_clone_ptr(LDKCResult_ClosingSignedDecodeErrorZ *NONNULL_PTR arg); + export function CResult_ClosingSignedDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateAddHTLCDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_ClosingSignedDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_UpdateAddHTLCDecodeErrorZ CResult_UpdateAddHTLCDecodeErrorZ_clone(const struct LDKCResult_UpdateAddHTLCDecodeErrorZ *NONNULL_PTR orig); - export function CResult_UpdateAddHTLCDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_ClosingSignedDecodeErrorZ CResult_ClosingSignedDecodeErrorZ_clone(const struct LDKCResult_ClosingSignedDecodeErrorZ *NONNULL_PTR orig); + export function CResult_ClosingSignedDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UpdateAddHTLCDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_ClosingSignedDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_PingDecodeErrorZ CResult_PingDecodeErrorZ_ok(struct LDKPing o); - export function CResult_PingDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_ClosingSignedFeeRangeDecodeErrorZ CResult_ClosingSignedFeeRangeDecodeErrorZ_ok(struct LDKClosingSignedFeeRange o); + export function CResult_ClosingSignedFeeRangeDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PingDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_PingDecodeErrorZ CResult_PingDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_PingDecodeErrorZ_err(e: number): number { + // struct LDKCResult_ClosingSignedFeeRangeDecodeErrorZ CResult_ClosingSignedFeeRangeDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_ClosingSignedFeeRangeDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PingDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_PingDecodeErrorZ_is_ok(const struct LDKCResult_PingDecodeErrorZ *NONNULL_PTR o); - export function CResult_PingDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_ClosingSignedFeeRangeDecodeErrorZ_is_ok(const struct LDKCResult_ClosingSignedFeeRangeDecodeErrorZ *NONNULL_PTR o); + export function CResult_ClosingSignedFeeRangeDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PingDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_PingDecodeErrorZ_free(struct LDKCResult_PingDecodeErrorZ _res); - export function CResult_PingDecodeErrorZ_free(_res: number): void { + // void CResult_ClosingSignedFeeRangeDecodeErrorZ_free(struct LDKCResult_ClosingSignedFeeRangeDecodeErrorZ _res); + export function CResult_ClosingSignedFeeRangeDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PingDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_PingDecodeErrorZ_clone_ptr(LDKCResult_PingDecodeErrorZ *NONNULL_PTR arg); - export function CResult_PingDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_ClosingSignedFeeRangeDecodeErrorZ_clone_ptr(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ *NONNULL_PTR arg); + export function CResult_ClosingSignedFeeRangeDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PingDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_PingDecodeErrorZ CResult_PingDecodeErrorZ_clone(const struct LDKCResult_PingDecodeErrorZ *NONNULL_PTR orig); - export function CResult_PingDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_ClosingSignedFeeRangeDecodeErrorZ CResult_ClosingSignedFeeRangeDecodeErrorZ_clone(const struct LDKCResult_ClosingSignedFeeRangeDecodeErrorZ *NONNULL_PTR orig); + export function CResult_ClosingSignedFeeRangeDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PingDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_PongDecodeErrorZ CResult_PongDecodeErrorZ_ok(struct LDKPong o); - export function CResult_PongDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_CommitmentSignedDecodeErrorZ CResult_CommitmentSignedDecodeErrorZ_ok(struct LDKCommitmentSigned o); + export function CResult_CommitmentSignedDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PongDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_CommitmentSignedDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_PongDecodeErrorZ CResult_PongDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_PongDecodeErrorZ_err(e: number): number { + // struct LDKCResult_CommitmentSignedDecodeErrorZ CResult_CommitmentSignedDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_CommitmentSignedDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PongDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_CommitmentSignedDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_PongDecodeErrorZ_is_ok(const struct LDKCResult_PongDecodeErrorZ *NONNULL_PTR o); - export function CResult_PongDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_CommitmentSignedDecodeErrorZ_is_ok(const struct LDKCResult_CommitmentSignedDecodeErrorZ *NONNULL_PTR o); + export function CResult_CommitmentSignedDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PongDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_CommitmentSignedDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_PongDecodeErrorZ_free(struct LDKCResult_PongDecodeErrorZ _res); - export function CResult_PongDecodeErrorZ_free(_res: number): void { + // void CResult_CommitmentSignedDecodeErrorZ_free(struct LDKCResult_CommitmentSignedDecodeErrorZ _res); + export function CResult_CommitmentSignedDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PongDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_CommitmentSignedDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_PongDecodeErrorZ_clone_ptr(LDKCResult_PongDecodeErrorZ *NONNULL_PTR arg); - export function CResult_PongDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_CommitmentSignedDecodeErrorZ_clone_ptr(LDKCResult_CommitmentSignedDecodeErrorZ *NONNULL_PTR arg); + export function CResult_CommitmentSignedDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PongDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_CommitmentSignedDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_PongDecodeErrorZ CResult_PongDecodeErrorZ_clone(const struct LDKCResult_PongDecodeErrorZ *NONNULL_PTR orig); - export function CResult_PongDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_CommitmentSignedDecodeErrorZ CResult_CommitmentSignedDecodeErrorZ_clone(const struct LDKCResult_CommitmentSignedDecodeErrorZ *NONNULL_PTR orig); + export function CResult_CommitmentSignedDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_PongDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_CommitmentSignedDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ CResult_UnsignedChannelAnnouncementDecodeErrorZ_ok(struct LDKUnsignedChannelAnnouncement o); - export function CResult_UnsignedChannelAnnouncementDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_FundingCreatedDecodeErrorZ CResult_FundingCreatedDecodeErrorZ_ok(struct LDKFundingCreated o); + export function CResult_FundingCreatedDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UnsignedChannelAnnouncementDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_FundingCreatedDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ CResult_UnsignedChannelAnnouncementDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_UnsignedChannelAnnouncementDecodeErrorZ_err(e: number): number { + // struct LDKCResult_FundingCreatedDecodeErrorZ CResult_FundingCreatedDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_FundingCreatedDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UnsignedChannelAnnouncementDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_FundingCreatedDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_UnsignedChannelAnnouncementDecodeErrorZ_is_ok(const struct LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ *NONNULL_PTR o); - export function CResult_UnsignedChannelAnnouncementDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_FundingCreatedDecodeErrorZ_is_ok(const struct LDKCResult_FundingCreatedDecodeErrorZ *NONNULL_PTR o); + export function CResult_FundingCreatedDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UnsignedChannelAnnouncementDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_FundingCreatedDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_UnsignedChannelAnnouncementDecodeErrorZ_free(struct LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ _res); - export function CResult_UnsignedChannelAnnouncementDecodeErrorZ_free(_res: number): void { + // void CResult_FundingCreatedDecodeErrorZ_free(struct LDKCResult_FundingCreatedDecodeErrorZ _res); + export function CResult_FundingCreatedDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UnsignedChannelAnnouncementDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_FundingCreatedDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone_ptr(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ *NONNULL_PTR arg); - export function CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_FundingCreatedDecodeErrorZ_clone_ptr(LDKCResult_FundingCreatedDecodeErrorZ *NONNULL_PTR arg); + export function CResult_FundingCreatedDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_FundingCreatedDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone(const struct LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ *NONNULL_PTR orig); - export function CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_FundingCreatedDecodeErrorZ CResult_FundingCreatedDecodeErrorZ_clone(const struct LDKCResult_FundingCreatedDecodeErrorZ *NONNULL_PTR orig); + export function CResult_FundingCreatedDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_FundingCreatedDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_ChannelAnnouncementDecodeErrorZ CResult_ChannelAnnouncementDecodeErrorZ_ok(struct LDKChannelAnnouncement o); - export function CResult_ChannelAnnouncementDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_FundingSignedDecodeErrorZ CResult_FundingSignedDecodeErrorZ_ok(struct LDKFundingSigned o); + export function CResult_FundingSignedDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelAnnouncementDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_FundingSignedDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_ChannelAnnouncementDecodeErrorZ CResult_ChannelAnnouncementDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_ChannelAnnouncementDecodeErrorZ_err(e: number): number { + // struct LDKCResult_FundingSignedDecodeErrorZ CResult_FundingSignedDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_FundingSignedDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelAnnouncementDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_FundingSignedDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_ChannelAnnouncementDecodeErrorZ_is_ok(const struct LDKCResult_ChannelAnnouncementDecodeErrorZ *NONNULL_PTR o); - export function CResult_ChannelAnnouncementDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_FundingSignedDecodeErrorZ_is_ok(const struct LDKCResult_FundingSignedDecodeErrorZ *NONNULL_PTR o); + export function CResult_FundingSignedDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelAnnouncementDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_FundingSignedDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_ChannelAnnouncementDecodeErrorZ_free(struct LDKCResult_ChannelAnnouncementDecodeErrorZ _res); - export function CResult_ChannelAnnouncementDecodeErrorZ_free(_res: number): void { + // void CResult_FundingSignedDecodeErrorZ_free(struct LDKCResult_FundingSignedDecodeErrorZ _res); + export function CResult_FundingSignedDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelAnnouncementDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_FundingSignedDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_ChannelAnnouncementDecodeErrorZ_clone_ptr(LDKCResult_ChannelAnnouncementDecodeErrorZ *NONNULL_PTR arg); - export function CResult_ChannelAnnouncementDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_FundingSignedDecodeErrorZ_clone_ptr(LDKCResult_FundingSignedDecodeErrorZ *NONNULL_PTR arg); + export function CResult_FundingSignedDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelAnnouncementDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_FundingSignedDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_ChannelAnnouncementDecodeErrorZ CResult_ChannelAnnouncementDecodeErrorZ_clone(const struct LDKCResult_ChannelAnnouncementDecodeErrorZ *NONNULL_PTR orig); - export function CResult_ChannelAnnouncementDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_FundingSignedDecodeErrorZ CResult_FundingSignedDecodeErrorZ_clone(const struct LDKCResult_FundingSignedDecodeErrorZ *NONNULL_PTR orig); + export function CResult_FundingSignedDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelAnnouncementDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_FundingSignedDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_UnsignedChannelUpdateDecodeErrorZ CResult_UnsignedChannelUpdateDecodeErrorZ_ok(struct LDKUnsignedChannelUpdate o); - export function CResult_UnsignedChannelUpdateDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_FundingLockedDecodeErrorZ CResult_FundingLockedDecodeErrorZ_ok(struct LDKFundingLocked o); + export function CResult_FundingLockedDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UnsignedChannelUpdateDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_FundingLockedDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_UnsignedChannelUpdateDecodeErrorZ CResult_UnsignedChannelUpdateDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_UnsignedChannelUpdateDecodeErrorZ_err(e: number): number { + // struct LDKCResult_FundingLockedDecodeErrorZ CResult_FundingLockedDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_FundingLockedDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UnsignedChannelUpdateDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_FundingLockedDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_UnsignedChannelUpdateDecodeErrorZ_is_ok(const struct LDKCResult_UnsignedChannelUpdateDecodeErrorZ *NONNULL_PTR o); - export function CResult_UnsignedChannelUpdateDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_FundingLockedDecodeErrorZ_is_ok(const struct LDKCResult_FundingLockedDecodeErrorZ *NONNULL_PTR o); + export function CResult_FundingLockedDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UnsignedChannelUpdateDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_FundingLockedDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_UnsignedChannelUpdateDecodeErrorZ_free(struct LDKCResult_UnsignedChannelUpdateDecodeErrorZ _res); - export function CResult_UnsignedChannelUpdateDecodeErrorZ_free(_res: number): void { + // void CResult_FundingLockedDecodeErrorZ_free(struct LDKCResult_FundingLockedDecodeErrorZ _res); + export function CResult_FundingLockedDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UnsignedChannelUpdateDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_FundingLockedDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_UnsignedChannelUpdateDecodeErrorZ_clone_ptr(LDKCResult_UnsignedChannelUpdateDecodeErrorZ *NONNULL_PTR arg); - export function CResult_UnsignedChannelUpdateDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_FundingLockedDecodeErrorZ_clone_ptr(LDKCResult_FundingLockedDecodeErrorZ *NONNULL_PTR arg); + export function CResult_FundingLockedDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UnsignedChannelUpdateDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_FundingLockedDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_UnsignedChannelUpdateDecodeErrorZ CResult_UnsignedChannelUpdateDecodeErrorZ_clone(const struct LDKCResult_UnsignedChannelUpdateDecodeErrorZ *NONNULL_PTR orig); - export function CResult_UnsignedChannelUpdateDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_FundingLockedDecodeErrorZ CResult_FundingLockedDecodeErrorZ_clone(const struct LDKCResult_FundingLockedDecodeErrorZ *NONNULL_PTR orig); + export function CResult_FundingLockedDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UnsignedChannelUpdateDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_FundingLockedDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_ChannelUpdateDecodeErrorZ CResult_ChannelUpdateDecodeErrorZ_ok(struct LDKChannelUpdate o); - export function CResult_ChannelUpdateDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_InitDecodeErrorZ CResult_InitDecodeErrorZ_ok(struct LDKInit o); + export function CResult_InitDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelUpdateDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_InitDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_ChannelUpdateDecodeErrorZ CResult_ChannelUpdateDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_ChannelUpdateDecodeErrorZ_err(e: number): number { + // struct LDKCResult_InitDecodeErrorZ CResult_InitDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_InitDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelUpdateDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_InitDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_ChannelUpdateDecodeErrorZ_is_ok(const struct LDKCResult_ChannelUpdateDecodeErrorZ *NONNULL_PTR o); - export function CResult_ChannelUpdateDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_InitDecodeErrorZ_is_ok(const struct LDKCResult_InitDecodeErrorZ *NONNULL_PTR o); + export function CResult_InitDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelUpdateDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_InitDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_ChannelUpdateDecodeErrorZ_free(struct LDKCResult_ChannelUpdateDecodeErrorZ _res); - export function CResult_ChannelUpdateDecodeErrorZ_free(_res: number): void { + // void CResult_InitDecodeErrorZ_free(struct LDKCResult_InitDecodeErrorZ _res); + export function CResult_InitDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelUpdateDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_InitDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_ChannelUpdateDecodeErrorZ_clone_ptr(LDKCResult_ChannelUpdateDecodeErrorZ *NONNULL_PTR arg); - export function CResult_ChannelUpdateDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_InitDecodeErrorZ_clone_ptr(LDKCResult_InitDecodeErrorZ *NONNULL_PTR arg); + export function CResult_InitDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelUpdateDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_InitDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_ChannelUpdateDecodeErrorZ CResult_ChannelUpdateDecodeErrorZ_clone(const struct LDKCResult_ChannelUpdateDecodeErrorZ *NONNULL_PTR orig); - export function CResult_ChannelUpdateDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_InitDecodeErrorZ CResult_InitDecodeErrorZ_clone(const struct LDKCResult_InitDecodeErrorZ *NONNULL_PTR orig); + export function CResult_InitDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ChannelUpdateDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_InitDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_ErrorMessageDecodeErrorZ CResult_ErrorMessageDecodeErrorZ_ok(struct LDKErrorMessage o); - export function CResult_ErrorMessageDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_OpenChannelDecodeErrorZ CResult_OpenChannelDecodeErrorZ_ok(struct LDKOpenChannel o); + export function CResult_OpenChannelDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ErrorMessageDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_OpenChannelDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_ErrorMessageDecodeErrorZ CResult_ErrorMessageDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_ErrorMessageDecodeErrorZ_err(e: number): number { + // struct LDKCResult_OpenChannelDecodeErrorZ CResult_OpenChannelDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_OpenChannelDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ErrorMessageDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_OpenChannelDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_ErrorMessageDecodeErrorZ_is_ok(const struct LDKCResult_ErrorMessageDecodeErrorZ *NONNULL_PTR o); - export function CResult_ErrorMessageDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_OpenChannelDecodeErrorZ_is_ok(const struct LDKCResult_OpenChannelDecodeErrorZ *NONNULL_PTR o); + export function CResult_OpenChannelDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ErrorMessageDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_OpenChannelDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_ErrorMessageDecodeErrorZ_free(struct LDKCResult_ErrorMessageDecodeErrorZ _res); - export function CResult_ErrorMessageDecodeErrorZ_free(_res: number): void { + // void CResult_OpenChannelDecodeErrorZ_free(struct LDKCResult_OpenChannelDecodeErrorZ _res); + export function CResult_OpenChannelDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ErrorMessageDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_OpenChannelDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_ErrorMessageDecodeErrorZ_clone_ptr(LDKCResult_ErrorMessageDecodeErrorZ *NONNULL_PTR arg); - export function CResult_ErrorMessageDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_OpenChannelDecodeErrorZ_clone_ptr(LDKCResult_OpenChannelDecodeErrorZ *NONNULL_PTR arg); + export function CResult_OpenChannelDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ErrorMessageDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_OpenChannelDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_ErrorMessageDecodeErrorZ CResult_ErrorMessageDecodeErrorZ_clone(const struct LDKCResult_ErrorMessageDecodeErrorZ *NONNULL_PTR orig); - export function CResult_ErrorMessageDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_OpenChannelDecodeErrorZ CResult_OpenChannelDecodeErrorZ_clone(const struct LDKCResult_OpenChannelDecodeErrorZ *NONNULL_PTR orig); + export function CResult_OpenChannelDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ErrorMessageDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_OpenChannelDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ CResult_UnsignedNodeAnnouncementDecodeErrorZ_ok(struct LDKUnsignedNodeAnnouncement o); - export function CResult_UnsignedNodeAnnouncementDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_RevokeAndACKDecodeErrorZ CResult_RevokeAndACKDecodeErrorZ_ok(struct LDKRevokeAndACK o); + export function CResult_RevokeAndACKDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UnsignedNodeAnnouncementDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_RevokeAndACKDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ CResult_UnsignedNodeAnnouncementDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_UnsignedNodeAnnouncementDecodeErrorZ_err(e: number): number { + // struct LDKCResult_RevokeAndACKDecodeErrorZ CResult_RevokeAndACKDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_RevokeAndACKDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UnsignedNodeAnnouncementDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_RevokeAndACKDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_UnsignedNodeAnnouncementDecodeErrorZ_is_ok(const struct LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ *NONNULL_PTR o); - export function CResult_UnsignedNodeAnnouncementDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_RevokeAndACKDecodeErrorZ_is_ok(const struct LDKCResult_RevokeAndACKDecodeErrorZ *NONNULL_PTR o); + export function CResult_RevokeAndACKDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UnsignedNodeAnnouncementDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_RevokeAndACKDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_UnsignedNodeAnnouncementDecodeErrorZ_free(struct LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ _res); - export function CResult_UnsignedNodeAnnouncementDecodeErrorZ_free(_res: number): void { + // void CResult_RevokeAndACKDecodeErrorZ_free(struct LDKCResult_RevokeAndACKDecodeErrorZ _res); + export function CResult_RevokeAndACKDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UnsignedNodeAnnouncementDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_RevokeAndACKDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone_ptr(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ *NONNULL_PTR arg); - export function CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_RevokeAndACKDecodeErrorZ_clone_ptr(LDKCResult_RevokeAndACKDecodeErrorZ *NONNULL_PTR arg); + export function CResult_RevokeAndACKDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_RevokeAndACKDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone(const struct LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ *NONNULL_PTR orig); - export function CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_RevokeAndACKDecodeErrorZ CResult_RevokeAndACKDecodeErrorZ_clone(const struct LDKCResult_RevokeAndACKDecodeErrorZ *NONNULL_PTR orig); + export function CResult_RevokeAndACKDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_RevokeAndACKDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_NodeAnnouncementDecodeErrorZ CResult_NodeAnnouncementDecodeErrorZ_ok(struct LDKNodeAnnouncement o); - export function CResult_NodeAnnouncementDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_ShutdownDecodeErrorZ CResult_ShutdownDecodeErrorZ_ok(struct LDKShutdown o); + export function CResult_ShutdownDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NodeAnnouncementDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_ShutdownDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_NodeAnnouncementDecodeErrorZ CResult_NodeAnnouncementDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_NodeAnnouncementDecodeErrorZ_err(e: number): number { + // struct LDKCResult_ShutdownDecodeErrorZ CResult_ShutdownDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_ShutdownDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NodeAnnouncementDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_ShutdownDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_NodeAnnouncementDecodeErrorZ_is_ok(const struct LDKCResult_NodeAnnouncementDecodeErrorZ *NONNULL_PTR o); - export function CResult_NodeAnnouncementDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_ShutdownDecodeErrorZ_is_ok(const struct LDKCResult_ShutdownDecodeErrorZ *NONNULL_PTR o); + export function CResult_ShutdownDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NodeAnnouncementDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_ShutdownDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_NodeAnnouncementDecodeErrorZ_free(struct LDKCResult_NodeAnnouncementDecodeErrorZ _res); - export function CResult_NodeAnnouncementDecodeErrorZ_free(_res: number): void { + // void CResult_ShutdownDecodeErrorZ_free(struct LDKCResult_ShutdownDecodeErrorZ _res); + export function CResult_ShutdownDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NodeAnnouncementDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_ShutdownDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_NodeAnnouncementDecodeErrorZ_clone_ptr(LDKCResult_NodeAnnouncementDecodeErrorZ *NONNULL_PTR arg); - export function CResult_NodeAnnouncementDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_ShutdownDecodeErrorZ_clone_ptr(LDKCResult_ShutdownDecodeErrorZ *NONNULL_PTR arg); + export function CResult_ShutdownDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NodeAnnouncementDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_ShutdownDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; - } - // struct LDKCResult_NodeAnnouncementDecodeErrorZ CResult_NodeAnnouncementDecodeErrorZ_clone(const struct LDKCResult_NodeAnnouncementDecodeErrorZ *NONNULL_PTR orig); - export function CResult_NodeAnnouncementDecodeErrorZ_clone(orig: number): number { + } + // struct LDKCResult_ShutdownDecodeErrorZ CResult_ShutdownDecodeErrorZ_clone(const struct LDKCResult_ShutdownDecodeErrorZ *NONNULL_PTR orig); + export function CResult_ShutdownDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_NodeAnnouncementDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_ShutdownDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_QueryShortChannelIdsDecodeErrorZ CResult_QueryShortChannelIdsDecodeErrorZ_ok(struct LDKQueryShortChannelIds o); - export function CResult_QueryShortChannelIdsDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_UpdateFailHTLCDecodeErrorZ CResult_UpdateFailHTLCDecodeErrorZ_ok(struct LDKUpdateFailHTLC o); + export function CResult_UpdateFailHTLCDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_QueryShortChannelIdsDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_UpdateFailHTLCDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_QueryShortChannelIdsDecodeErrorZ CResult_QueryShortChannelIdsDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_QueryShortChannelIdsDecodeErrorZ_err(e: number): number { + // struct LDKCResult_UpdateFailHTLCDecodeErrorZ CResult_UpdateFailHTLCDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_UpdateFailHTLCDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_QueryShortChannelIdsDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_UpdateFailHTLCDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_QueryShortChannelIdsDecodeErrorZ_is_ok(const struct LDKCResult_QueryShortChannelIdsDecodeErrorZ *NONNULL_PTR o); - export function CResult_QueryShortChannelIdsDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_UpdateFailHTLCDecodeErrorZ_is_ok(const struct LDKCResult_UpdateFailHTLCDecodeErrorZ *NONNULL_PTR o); + export function CResult_UpdateFailHTLCDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_QueryShortChannelIdsDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_UpdateFailHTLCDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_QueryShortChannelIdsDecodeErrorZ_free(struct LDKCResult_QueryShortChannelIdsDecodeErrorZ _res); - export function CResult_QueryShortChannelIdsDecodeErrorZ_free(_res: number): void { + // void CResult_UpdateFailHTLCDecodeErrorZ_free(struct LDKCResult_UpdateFailHTLCDecodeErrorZ _res); + export function CResult_UpdateFailHTLCDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_QueryShortChannelIdsDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_UpdateFailHTLCDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_QueryShortChannelIdsDecodeErrorZ_clone_ptr(LDKCResult_QueryShortChannelIdsDecodeErrorZ *NONNULL_PTR arg); - export function CResult_QueryShortChannelIdsDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_UpdateFailHTLCDecodeErrorZ_clone_ptr(LDKCResult_UpdateFailHTLCDecodeErrorZ *NONNULL_PTR arg); + export function CResult_UpdateFailHTLCDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_QueryShortChannelIdsDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_UpdateFailHTLCDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_QueryShortChannelIdsDecodeErrorZ CResult_QueryShortChannelIdsDecodeErrorZ_clone(const struct LDKCResult_QueryShortChannelIdsDecodeErrorZ *NONNULL_PTR orig); - export function CResult_QueryShortChannelIdsDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_UpdateFailHTLCDecodeErrorZ CResult_UpdateFailHTLCDecodeErrorZ_clone(const struct LDKCResult_UpdateFailHTLCDecodeErrorZ *NONNULL_PTR orig); + export function CResult_UpdateFailHTLCDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_QueryShortChannelIdsDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_UpdateFailHTLCDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ CResult_ReplyShortChannelIdsEndDecodeErrorZ_ok(struct LDKReplyShortChannelIdsEnd o); - export function CResult_ReplyShortChannelIdsEndDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ CResult_UpdateFailMalformedHTLCDecodeErrorZ_ok(struct LDKUpdateFailMalformedHTLC o); + export function CResult_UpdateFailMalformedHTLCDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ReplyShortChannelIdsEndDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ CResult_ReplyShortChannelIdsEndDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_ReplyShortChannelIdsEndDecodeErrorZ_err(e: number): number { + // struct LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ CResult_UpdateFailMalformedHTLCDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_UpdateFailMalformedHTLCDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ReplyShortChannelIdsEndDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_ReplyShortChannelIdsEndDecodeErrorZ_is_ok(const struct LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ *NONNULL_PTR o); - export function CResult_ReplyShortChannelIdsEndDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_UpdateFailMalformedHTLCDecodeErrorZ_is_ok(const struct LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ *NONNULL_PTR o); + export function CResult_UpdateFailMalformedHTLCDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ReplyShortChannelIdsEndDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_ReplyShortChannelIdsEndDecodeErrorZ_free(struct LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ _res); - export function CResult_ReplyShortChannelIdsEndDecodeErrorZ_free(_res: number): void { + // void CResult_UpdateFailMalformedHTLCDecodeErrorZ_free(struct LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ _res); + export function CResult_UpdateFailMalformedHTLCDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ReplyShortChannelIdsEndDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone_ptr(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ *NONNULL_PTR arg); - export function CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone_ptr(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ *NONNULL_PTR arg); + export function CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone(const struct LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ *NONNULL_PTR orig); - export function CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone(const struct LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ *NONNULL_PTR orig); + export function CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_QueryChannelRangeDecodeErrorZ CResult_QueryChannelRangeDecodeErrorZ_ok(struct LDKQueryChannelRange o); - export function CResult_QueryChannelRangeDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_UpdateFeeDecodeErrorZ CResult_UpdateFeeDecodeErrorZ_ok(struct LDKUpdateFee o); + export function CResult_UpdateFeeDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_QueryChannelRangeDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_UpdateFeeDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_QueryChannelRangeDecodeErrorZ CResult_QueryChannelRangeDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_QueryChannelRangeDecodeErrorZ_err(e: number): number { + // struct LDKCResult_UpdateFeeDecodeErrorZ CResult_UpdateFeeDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_UpdateFeeDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_QueryChannelRangeDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_UpdateFeeDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_QueryChannelRangeDecodeErrorZ_is_ok(const struct LDKCResult_QueryChannelRangeDecodeErrorZ *NONNULL_PTR o); - export function CResult_QueryChannelRangeDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_UpdateFeeDecodeErrorZ_is_ok(const struct LDKCResult_UpdateFeeDecodeErrorZ *NONNULL_PTR o); + export function CResult_UpdateFeeDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_QueryChannelRangeDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_UpdateFeeDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_QueryChannelRangeDecodeErrorZ_free(struct LDKCResult_QueryChannelRangeDecodeErrorZ _res); - export function CResult_QueryChannelRangeDecodeErrorZ_free(_res: number): void { + // void CResult_UpdateFeeDecodeErrorZ_free(struct LDKCResult_UpdateFeeDecodeErrorZ _res); + export function CResult_UpdateFeeDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_QueryChannelRangeDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_UpdateFeeDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_QueryChannelRangeDecodeErrorZ_clone_ptr(LDKCResult_QueryChannelRangeDecodeErrorZ *NONNULL_PTR arg); - export function CResult_QueryChannelRangeDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_UpdateFeeDecodeErrorZ_clone_ptr(LDKCResult_UpdateFeeDecodeErrorZ *NONNULL_PTR arg); + export function CResult_UpdateFeeDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_QueryChannelRangeDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_UpdateFeeDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_QueryChannelRangeDecodeErrorZ CResult_QueryChannelRangeDecodeErrorZ_clone(const struct LDKCResult_QueryChannelRangeDecodeErrorZ *NONNULL_PTR orig); - export function CResult_QueryChannelRangeDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_UpdateFeeDecodeErrorZ CResult_UpdateFeeDecodeErrorZ_clone(const struct LDKCResult_UpdateFeeDecodeErrorZ *NONNULL_PTR orig); + export function CResult_UpdateFeeDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_QueryChannelRangeDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_UpdateFeeDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_ReplyChannelRangeDecodeErrorZ CResult_ReplyChannelRangeDecodeErrorZ_ok(struct LDKReplyChannelRange o); - export function CResult_ReplyChannelRangeDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_UpdateFulfillHTLCDecodeErrorZ CResult_UpdateFulfillHTLCDecodeErrorZ_ok(struct LDKUpdateFulfillHTLC o); + export function CResult_UpdateFulfillHTLCDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ReplyChannelRangeDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_UpdateFulfillHTLCDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_ReplyChannelRangeDecodeErrorZ CResult_ReplyChannelRangeDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_ReplyChannelRangeDecodeErrorZ_err(e: number): number { + // struct LDKCResult_UpdateFulfillHTLCDecodeErrorZ CResult_UpdateFulfillHTLCDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_UpdateFulfillHTLCDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ReplyChannelRangeDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_UpdateFulfillHTLCDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_ReplyChannelRangeDecodeErrorZ_is_ok(const struct LDKCResult_ReplyChannelRangeDecodeErrorZ *NONNULL_PTR o); - export function CResult_ReplyChannelRangeDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_UpdateFulfillHTLCDecodeErrorZ_is_ok(const struct LDKCResult_UpdateFulfillHTLCDecodeErrorZ *NONNULL_PTR o); + export function CResult_UpdateFulfillHTLCDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ReplyChannelRangeDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_UpdateFulfillHTLCDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_ReplyChannelRangeDecodeErrorZ_free(struct LDKCResult_ReplyChannelRangeDecodeErrorZ _res); - export function CResult_ReplyChannelRangeDecodeErrorZ_free(_res: number): void { + // void CResult_UpdateFulfillHTLCDecodeErrorZ_free(struct LDKCResult_UpdateFulfillHTLCDecodeErrorZ _res); + export function CResult_UpdateFulfillHTLCDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ReplyChannelRangeDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_UpdateFulfillHTLCDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_ReplyChannelRangeDecodeErrorZ_clone_ptr(LDKCResult_ReplyChannelRangeDecodeErrorZ *NONNULL_PTR arg); - export function CResult_ReplyChannelRangeDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_UpdateFulfillHTLCDecodeErrorZ_clone_ptr(LDKCResult_UpdateFulfillHTLCDecodeErrorZ *NONNULL_PTR arg); + export function CResult_UpdateFulfillHTLCDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ReplyChannelRangeDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_UpdateFulfillHTLCDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_ReplyChannelRangeDecodeErrorZ CResult_ReplyChannelRangeDecodeErrorZ_clone(const struct LDKCResult_ReplyChannelRangeDecodeErrorZ *NONNULL_PTR orig); - export function CResult_ReplyChannelRangeDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_UpdateFulfillHTLCDecodeErrorZ CResult_UpdateFulfillHTLCDecodeErrorZ_clone(const struct LDKCResult_UpdateFulfillHTLCDecodeErrorZ *NONNULL_PTR orig); + export function CResult_UpdateFulfillHTLCDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_ReplyChannelRangeDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_UpdateFulfillHTLCDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_GossipTimestampFilterDecodeErrorZ CResult_GossipTimestampFilterDecodeErrorZ_ok(struct LDKGossipTimestampFilter o); - export function CResult_GossipTimestampFilterDecodeErrorZ_ok(o: number): number { + // struct LDKCResult_UpdateAddHTLCDecodeErrorZ CResult_UpdateAddHTLCDecodeErrorZ_ok(struct LDKUpdateAddHTLC o); + export function CResult_UpdateAddHTLCDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_GossipTimestampFilterDecodeErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_UpdateAddHTLCDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_GossipTimestampFilterDecodeErrorZ CResult_GossipTimestampFilterDecodeErrorZ_err(struct LDKDecodeError e); - export function CResult_GossipTimestampFilterDecodeErrorZ_err(e: number): number { + // struct LDKCResult_UpdateAddHTLCDecodeErrorZ CResult_UpdateAddHTLCDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_UpdateAddHTLCDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_GossipTimestampFilterDecodeErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_UpdateAddHTLCDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_GossipTimestampFilterDecodeErrorZ_is_ok(const struct LDKCResult_GossipTimestampFilterDecodeErrorZ *NONNULL_PTR o); - export function CResult_GossipTimestampFilterDecodeErrorZ_is_ok(o: number): boolean { + // bool CResult_UpdateAddHTLCDecodeErrorZ_is_ok(const struct LDKCResult_UpdateAddHTLCDecodeErrorZ *NONNULL_PTR o); + export function CResult_UpdateAddHTLCDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_GossipTimestampFilterDecodeErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_UpdateAddHTLCDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_GossipTimestampFilterDecodeErrorZ_free(struct LDKCResult_GossipTimestampFilterDecodeErrorZ _res); - export function CResult_GossipTimestampFilterDecodeErrorZ_free(_res: number): void { + // void CResult_UpdateAddHTLCDecodeErrorZ_free(struct LDKCResult_UpdateAddHTLCDecodeErrorZ _res); + export function CResult_UpdateAddHTLCDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_GossipTimestampFilterDecodeErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_UpdateAddHTLCDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_GossipTimestampFilterDecodeErrorZ_clone_ptr(LDKCResult_GossipTimestampFilterDecodeErrorZ *NONNULL_PTR arg); - export function CResult_GossipTimestampFilterDecodeErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_UpdateAddHTLCDecodeErrorZ_clone_ptr(LDKCResult_UpdateAddHTLCDecodeErrorZ *NONNULL_PTR arg); + export function CResult_UpdateAddHTLCDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_GossipTimestampFilterDecodeErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_UpdateAddHTLCDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_GossipTimestampFilterDecodeErrorZ CResult_GossipTimestampFilterDecodeErrorZ_clone(const struct LDKCResult_GossipTimestampFilterDecodeErrorZ *NONNULL_PTR orig); - export function CResult_GossipTimestampFilterDecodeErrorZ_clone(orig: number): number { + // struct LDKCResult_UpdateAddHTLCDecodeErrorZ CResult_UpdateAddHTLCDecodeErrorZ_clone(const struct LDKCResult_UpdateAddHTLCDecodeErrorZ *NONNULL_PTR orig); + export function CResult_UpdateAddHTLCDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_GossipTimestampFilterDecodeErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_UpdateAddHTLCDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCResult_InvoiceSignOrCreationErrorZ CResult_InvoiceSignOrCreationErrorZ_ok(struct LDKInvoice o); - export function CResult_InvoiceSignOrCreationErrorZ_ok(o: number): number { + // struct LDKCResult_PingDecodeErrorZ CResult_PingDecodeErrorZ_ok(struct LDKPing o); + export function CResult_PingDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InvoiceSignOrCreationErrorZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_PingDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_InvoiceSignOrCreationErrorZ CResult_InvoiceSignOrCreationErrorZ_err(struct LDKSignOrCreationError e); - export function CResult_InvoiceSignOrCreationErrorZ_err(e: number): number { + // struct LDKCResult_PingDecodeErrorZ CResult_PingDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_PingDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InvoiceSignOrCreationErrorZ_err(e); + const nativeResponseValue = wasm.TS_CResult_PingDecodeErrorZ_err(e); return nativeResponseValue; } - // bool CResult_InvoiceSignOrCreationErrorZ_is_ok(const struct LDKCResult_InvoiceSignOrCreationErrorZ *NONNULL_PTR o); - export function CResult_InvoiceSignOrCreationErrorZ_is_ok(o: number): boolean { + // bool CResult_PingDecodeErrorZ_is_ok(const struct LDKCResult_PingDecodeErrorZ *NONNULL_PTR o); + export function CResult_PingDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InvoiceSignOrCreationErrorZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_PingDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void CResult_InvoiceSignOrCreationErrorZ_free(struct LDKCResult_InvoiceSignOrCreationErrorZ _res); - export function CResult_InvoiceSignOrCreationErrorZ_free(_res: number): void { + // void CResult_PingDecodeErrorZ_free(struct LDKCResult_PingDecodeErrorZ _res); + export function CResult_PingDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InvoiceSignOrCreationErrorZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_PingDecodeErrorZ_free(_res); // debug statements here } - // uint64_t CResult_InvoiceSignOrCreationErrorZ_clone_ptr(LDKCResult_InvoiceSignOrCreationErrorZ *NONNULL_PTR arg); - export function CResult_InvoiceSignOrCreationErrorZ_clone_ptr(arg: number): number { + // uint64_t CResult_PingDecodeErrorZ_clone_ptr(LDKCResult_PingDecodeErrorZ *NONNULL_PTR arg); + export function CResult_PingDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InvoiceSignOrCreationErrorZ_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_PingDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_InvoiceSignOrCreationErrorZ CResult_InvoiceSignOrCreationErrorZ_clone(const struct LDKCResult_InvoiceSignOrCreationErrorZ *NONNULL_PTR orig); - export function CResult_InvoiceSignOrCreationErrorZ_clone(orig: number): number { + // struct LDKCResult_PingDecodeErrorZ CResult_PingDecodeErrorZ_clone(const struct LDKCResult_PingDecodeErrorZ *NONNULL_PTR orig); + export function CResult_PingDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_InvoiceSignOrCreationErrorZ_clone(orig); + const nativeResponseValue = wasm.TS_CResult_PingDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCOption_FilterZ COption_FilterZ_some(struct LDKFilter o); - export function COption_FilterZ_some(o: number): number { + // struct LDKCResult_PongDecodeErrorZ CResult_PongDecodeErrorZ_ok(struct LDKPong o); + export function CResult_PongDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_FilterZ_some(o); + const nativeResponseValue = wasm.TS_CResult_PongDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCOption_FilterZ COption_FilterZ_none(void); - export function COption_FilterZ_none(): number { + // struct LDKCResult_PongDecodeErrorZ CResult_PongDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_PongDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_FilterZ_none(); + const nativeResponseValue = wasm.TS_CResult_PongDecodeErrorZ_err(e); return nativeResponseValue; } - // void COption_FilterZ_free(struct LDKCOption_FilterZ _res); - export function COption_FilterZ_free(_res: number): void { + // bool CResult_PongDecodeErrorZ_is_ok(const struct LDKCResult_PongDecodeErrorZ *NONNULL_PTR o); + export function CResult_PongDecodeErrorZ_is_ok(o: number): boolean { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_CResult_PongDecodeErrorZ_is_ok(o); + return nativeResponseValue; + } + // void CResult_PongDecodeErrorZ_free(struct LDKCResult_PongDecodeErrorZ _res); + export function CResult_PongDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.COption_FilterZ_free(_res); + const nativeResponseValue = wasm.TS_CResult_PongDecodeErrorZ_free(_res); // debug statements here } - // struct LDKCResult_LockedChannelMonitorNoneZ CResult_LockedChannelMonitorNoneZ_ok(struct LDKLockedChannelMonitor o); - export function CResult_LockedChannelMonitorNoneZ_ok(o: number): number { + // uint64_t CResult_PongDecodeErrorZ_clone_ptr(LDKCResult_PongDecodeErrorZ *NONNULL_PTR arg); + export function CResult_PongDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_LockedChannelMonitorNoneZ_ok(o); + const nativeResponseValue = wasm.TS_CResult_PongDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_LockedChannelMonitorNoneZ CResult_LockedChannelMonitorNoneZ_err(void); - export function CResult_LockedChannelMonitorNoneZ_err(): number { + // struct LDKCResult_PongDecodeErrorZ CResult_PongDecodeErrorZ_clone(const struct LDKCResult_PongDecodeErrorZ *NONNULL_PTR orig); + export function CResult_PongDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_LockedChannelMonitorNoneZ_err(); + const nativeResponseValue = wasm.TS_CResult_PongDecodeErrorZ_clone(orig); return nativeResponseValue; } - // bool CResult_LockedChannelMonitorNoneZ_is_ok(const struct LDKCResult_LockedChannelMonitorNoneZ *NONNULL_PTR o); - export function CResult_LockedChannelMonitorNoneZ_is_ok(o: number): boolean { + // struct LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ CResult_UnsignedChannelAnnouncementDecodeErrorZ_ok(struct LDKUnsignedChannelAnnouncement o); + export function CResult_UnsignedChannelAnnouncementDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_LockedChannelMonitorNoneZ_is_ok(o); + const nativeResponseValue = wasm.TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_ok(o); return nativeResponseValue; } - // void CResult_LockedChannelMonitorNoneZ_free(struct LDKCResult_LockedChannelMonitorNoneZ _res); - export function CResult_LockedChannelMonitorNoneZ_free(_res: number): void { + // struct LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ CResult_UnsignedChannelAnnouncementDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_UnsignedChannelAnnouncementDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CResult_LockedChannelMonitorNoneZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_err(e); + return nativeResponseValue; } - // void CVec_OutPointZ_free(struct LDKCVec_OutPointZ _res); - export function CVec_OutPointZ_free(_res: number[]): void { + // bool CResult_UnsignedChannelAnnouncementDecodeErrorZ_is_ok(const struct LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ *NONNULL_PTR o); + export function CResult_UnsignedChannelAnnouncementDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CVec_OutPointZ_free(_res); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_is_ok(o); + return nativeResponseValue; } - // void PaymentPurpose_free(struct LDKPaymentPurpose this_ptr); - export function PaymentPurpose_free(this_ptr: number): void { + // void CResult_UnsignedChannelAnnouncementDecodeErrorZ_free(struct LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ _res); + export function CResult_UnsignedChannelAnnouncementDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PaymentPurpose_free(this_ptr); + const nativeResponseValue = wasm.TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_free(_res); // debug statements here } - // uint64_t PaymentPurpose_clone_ptr(LDKPaymentPurpose *NONNULL_PTR arg); - export function PaymentPurpose_clone_ptr(arg: number): number { + // uint64_t CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone_ptr(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ *NONNULL_PTR arg); + export function CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PaymentPurpose_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKPaymentPurpose PaymentPurpose_clone(const struct LDKPaymentPurpose *NONNULL_PTR orig); - export function PaymentPurpose_clone(orig: number): number { + // struct LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone(const struct LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ *NONNULL_PTR orig); + export function CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PaymentPurpose_clone(orig); + const nativeResponseValue = wasm.TS_CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKPaymentPurpose PaymentPurpose_invoice_payment(struct LDKThirtyTwoBytes payment_preimage, struct LDKThirtyTwoBytes payment_secret); - export function PaymentPurpose_invoice_payment(payment_preimage: Uint8Array, payment_secret: Uint8Array): number { + // struct LDKCResult_ChannelAnnouncementDecodeErrorZ CResult_ChannelAnnouncementDecodeErrorZ_ok(struct LDKChannelAnnouncement o); + export function CResult_ChannelAnnouncementDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PaymentPurpose_invoice_payment(encodeArray(payment_preimage), encodeArray(payment_secret)); + const nativeResponseValue = wasm.TS_CResult_ChannelAnnouncementDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKPaymentPurpose PaymentPurpose_spontaneous_payment(struct LDKThirtyTwoBytes a); - export function PaymentPurpose_spontaneous_payment(a: Uint8Array): number { + // struct LDKCResult_ChannelAnnouncementDecodeErrorZ CResult_ChannelAnnouncementDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_ChannelAnnouncementDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PaymentPurpose_spontaneous_payment(encodeArray(a)); + const nativeResponseValue = wasm.TS_CResult_ChannelAnnouncementDecodeErrorZ_err(e); return nativeResponseValue; } - // void ClosureReason_free(struct LDKClosureReason this_ptr); - export function ClosureReason_free(this_ptr: number): void { + // bool CResult_ChannelAnnouncementDecodeErrorZ_is_ok(const struct LDKCResult_ChannelAnnouncementDecodeErrorZ *NONNULL_PTR o); + export function CResult_ChannelAnnouncementDecodeErrorZ_is_ok(o: number): boolean { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_CResult_ChannelAnnouncementDecodeErrorZ_is_ok(o); + return nativeResponseValue; + } + // void CResult_ChannelAnnouncementDecodeErrorZ_free(struct LDKCResult_ChannelAnnouncementDecodeErrorZ _res); + export function CResult_ChannelAnnouncementDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosureReason_free(this_ptr); + const nativeResponseValue = wasm.TS_CResult_ChannelAnnouncementDecodeErrorZ_free(_res); // debug statements here } - // uint64_t ClosureReason_clone_ptr(LDKClosureReason *NONNULL_PTR arg); - export function ClosureReason_clone_ptr(arg: number): number { + // uint64_t CResult_ChannelAnnouncementDecodeErrorZ_clone_ptr(LDKCResult_ChannelAnnouncementDecodeErrorZ *NONNULL_PTR arg); + export function CResult_ChannelAnnouncementDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosureReason_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_ChannelAnnouncementDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKClosureReason ClosureReason_clone(const struct LDKClosureReason *NONNULL_PTR orig); - export function ClosureReason_clone(orig: number): number { + // struct LDKCResult_ChannelAnnouncementDecodeErrorZ CResult_ChannelAnnouncementDecodeErrorZ_clone(const struct LDKCResult_ChannelAnnouncementDecodeErrorZ *NONNULL_PTR orig); + export function CResult_ChannelAnnouncementDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosureReason_clone(orig); + const nativeResponseValue = wasm.TS_CResult_ChannelAnnouncementDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKClosureReason ClosureReason_counterparty_force_closed(struct LDKStr peer_msg); - export function ClosureReason_counterparty_force_closed(peer_msg: String): number { + // struct LDKCResult_UnsignedChannelUpdateDecodeErrorZ CResult_UnsignedChannelUpdateDecodeErrorZ_ok(struct LDKUnsignedChannelUpdate o); + export function CResult_UnsignedChannelUpdateDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosureReason_counterparty_force_closed(peer_msg); + const nativeResponseValue = wasm.TS_CResult_UnsignedChannelUpdateDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKClosureReason ClosureReason_holder_force_closed(void); - export function ClosureReason_holder_force_closed(): number { + // struct LDKCResult_UnsignedChannelUpdateDecodeErrorZ CResult_UnsignedChannelUpdateDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_UnsignedChannelUpdateDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosureReason_holder_force_closed(); + const nativeResponseValue = wasm.TS_CResult_UnsignedChannelUpdateDecodeErrorZ_err(e); return nativeResponseValue; } - // struct LDKClosureReason ClosureReason_cooperative_closure(void); - export function ClosureReason_cooperative_closure(): number { + // bool CResult_UnsignedChannelUpdateDecodeErrorZ_is_ok(const struct LDKCResult_UnsignedChannelUpdateDecodeErrorZ *NONNULL_PTR o); + export function CResult_UnsignedChannelUpdateDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosureReason_cooperative_closure(); + const nativeResponseValue = wasm.TS_CResult_UnsignedChannelUpdateDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // struct LDKClosureReason ClosureReason_commitment_tx_confirmed(void); - export function ClosureReason_commitment_tx_confirmed(): number { + // void CResult_UnsignedChannelUpdateDecodeErrorZ_free(struct LDKCResult_UnsignedChannelUpdateDecodeErrorZ _res); + export function CResult_UnsignedChannelUpdateDecodeErrorZ_free(_res: number): void { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_CResult_UnsignedChannelUpdateDecodeErrorZ_free(_res); + // debug statements here + } + // uint64_t CResult_UnsignedChannelUpdateDecodeErrorZ_clone_ptr(LDKCResult_UnsignedChannelUpdateDecodeErrorZ *NONNULL_PTR arg); + export function CResult_UnsignedChannelUpdateDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosureReason_commitment_tx_confirmed(); + const nativeResponseValue = wasm.TS_CResult_UnsignedChannelUpdateDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKClosureReason ClosureReason_funding_timed_out(void); - export function ClosureReason_funding_timed_out(): number { + // struct LDKCResult_UnsignedChannelUpdateDecodeErrorZ CResult_UnsignedChannelUpdateDecodeErrorZ_clone(const struct LDKCResult_UnsignedChannelUpdateDecodeErrorZ *NONNULL_PTR orig); + export function CResult_UnsignedChannelUpdateDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosureReason_funding_timed_out(); + const nativeResponseValue = wasm.TS_CResult_UnsignedChannelUpdateDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKClosureReason ClosureReason_processing_error(struct LDKStr err); - export function ClosureReason_processing_error(err: String): number { + // struct LDKCResult_ChannelUpdateDecodeErrorZ CResult_ChannelUpdateDecodeErrorZ_ok(struct LDKChannelUpdate o); + export function CResult_ChannelUpdateDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosureReason_processing_error(err); + const nativeResponseValue = wasm.TS_CResult_ChannelUpdateDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKClosureReason ClosureReason_disconnected_peer(void); - export function ClosureReason_disconnected_peer(): number { + // struct LDKCResult_ChannelUpdateDecodeErrorZ CResult_ChannelUpdateDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_ChannelUpdateDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosureReason_disconnected_peer(); + const nativeResponseValue = wasm.TS_CResult_ChannelUpdateDecodeErrorZ_err(e); return nativeResponseValue; } - // struct LDKClosureReason ClosureReason_outdated_channel_manager(void); - export function ClosureReason_outdated_channel_manager(): number { + // bool CResult_ChannelUpdateDecodeErrorZ_is_ok(const struct LDKCResult_ChannelUpdateDecodeErrorZ *NONNULL_PTR o); + export function CResult_ChannelUpdateDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosureReason_outdated_channel_manager(); + const nativeResponseValue = wasm.TS_CResult_ChannelUpdateDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // struct LDKCVec_u8Z ClosureReason_write(const struct LDKClosureReason *NONNULL_PTR obj); - export function ClosureReason_write(obj: number): Uint8Array { + // void CResult_ChannelUpdateDecodeErrorZ_free(struct LDKCResult_ChannelUpdateDecodeErrorZ _res); + export function CResult_ChannelUpdateDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosureReason_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CResult_ChannelUpdateDecodeErrorZ_free(_res); + // debug statements here } - // struct LDKCResult_COption_ClosureReasonZDecodeErrorZ ClosureReason_read(struct LDKu8slice ser); - export function ClosureReason_read(ser: Uint8Array): number { + // uint64_t CResult_ChannelUpdateDecodeErrorZ_clone_ptr(LDKCResult_ChannelUpdateDecodeErrorZ *NONNULL_PTR arg); + export function CResult_ChannelUpdateDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosureReason_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_CResult_ChannelUpdateDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // void Event_free(struct LDKEvent this_ptr); - export function Event_free(this_ptr: number): void { + // struct LDKCResult_ChannelUpdateDecodeErrorZ CResult_ChannelUpdateDecodeErrorZ_clone(const struct LDKCResult_ChannelUpdateDecodeErrorZ *NONNULL_PTR orig); + export function CResult_ChannelUpdateDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Event_free(this_ptr); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_ChannelUpdateDecodeErrorZ_clone(orig); + return nativeResponseValue; } - // uint64_t Event_clone_ptr(LDKEvent *NONNULL_PTR arg); - export function Event_clone_ptr(arg: number): number { + // struct LDKCResult_ErrorMessageDecodeErrorZ CResult_ErrorMessageDecodeErrorZ_ok(struct LDKErrorMessage o); + export function CResult_ErrorMessageDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Event_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_ErrorMessageDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKEvent Event_clone(const struct LDKEvent *NONNULL_PTR orig); - export function Event_clone(orig: number): number { + // struct LDKCResult_ErrorMessageDecodeErrorZ CResult_ErrorMessageDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_ErrorMessageDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Event_clone(orig); + const nativeResponseValue = wasm.TS_CResult_ErrorMessageDecodeErrorZ_err(e); return nativeResponseValue; } - // struct LDKEvent Event_funding_generation_ready(struct LDKThirtyTwoBytes temporary_channel_id, uint64_t channel_value_satoshis, struct LDKCVec_u8Z output_script, uint64_t user_channel_id); - export function Event_funding_generation_ready(temporary_channel_id: Uint8Array, channel_value_satoshis: number, output_script: Uint8Array, user_channel_id: number): number { + // bool CResult_ErrorMessageDecodeErrorZ_is_ok(const struct LDKCResult_ErrorMessageDecodeErrorZ *NONNULL_PTR o); + export function CResult_ErrorMessageDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Event_funding_generation_ready(encodeArray(temporary_channel_id), channel_value_satoshis, encodeArray(output_script), user_channel_id); + const nativeResponseValue = wasm.TS_CResult_ErrorMessageDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // struct LDKEvent Event_payment_received(struct LDKThirtyTwoBytes payment_hash, uint64_t amt, struct LDKPaymentPurpose purpose); - export function Event_payment_received(payment_hash: Uint8Array, amt: number, purpose: number): number { + // void CResult_ErrorMessageDecodeErrorZ_free(struct LDKCResult_ErrorMessageDecodeErrorZ _res); + export function CResult_ErrorMessageDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Event_payment_received(encodeArray(payment_hash), amt, purpose); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_ErrorMessageDecodeErrorZ_free(_res); + // debug statements here } - // struct LDKEvent Event_payment_sent(struct LDKThirtyTwoBytes payment_id, struct LDKThirtyTwoBytes payment_preimage, struct LDKThirtyTwoBytes payment_hash, struct LDKCOption_u64Z fee_paid_msat); - export function Event_payment_sent(payment_id: Uint8Array, payment_preimage: Uint8Array, payment_hash: Uint8Array, fee_paid_msat: number): number { + // uint64_t CResult_ErrorMessageDecodeErrorZ_clone_ptr(LDKCResult_ErrorMessageDecodeErrorZ *NONNULL_PTR arg); + export function CResult_ErrorMessageDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Event_payment_sent(encodeArray(payment_id), encodeArray(payment_preimage), encodeArray(payment_hash), fee_paid_msat); + const nativeResponseValue = wasm.TS_CResult_ErrorMessageDecodeErrorZ_clone_ptr(arg); 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); - export function Event_payment_path_failed(payment_id: Uint8Array, payment_hash: Uint8Array, rejected_by_dest: boolean, network_update: number, all_paths_failed: boolean, path: number[], short_channel_id: number, retry: number): number { + // struct LDKCResult_ErrorMessageDecodeErrorZ CResult_ErrorMessageDecodeErrorZ_clone(const struct LDKCResult_ErrorMessageDecodeErrorZ *NONNULL_PTR orig); + export function CResult_ErrorMessageDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Event_payment_path_failed(encodeArray(payment_id), encodeArray(payment_hash), rejected_by_dest, network_update, all_paths_failed, path, short_channel_id, retry); + const nativeResponseValue = wasm.TS_CResult_ErrorMessageDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKEvent Event_payment_failed(struct LDKThirtyTwoBytes payment_id, struct LDKThirtyTwoBytes payment_hash); - export function Event_payment_failed(payment_id: Uint8Array, payment_hash: Uint8Array): number { + // struct LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ CResult_UnsignedNodeAnnouncementDecodeErrorZ_ok(struct LDKUnsignedNodeAnnouncement o); + export function CResult_UnsignedNodeAnnouncementDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Event_payment_failed(encodeArray(payment_id), encodeArray(payment_hash)); + const nativeResponseValue = wasm.TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKEvent Event_pending_htlcs_forwardable(uint64_t time_forwardable); - export function Event_pending_htlcs_forwardable(time_forwardable: number): number { + // struct LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ CResult_UnsignedNodeAnnouncementDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_UnsignedNodeAnnouncementDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Event_pending_htlcs_forwardable(time_forwardable); + const nativeResponseValue = wasm.TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_err(e); return nativeResponseValue; } - // struct LDKEvent Event_spendable_outputs(struct LDKCVec_SpendableOutputDescriptorZ outputs); - export function Event_spendable_outputs(outputs: number[]): number { + // bool CResult_UnsignedNodeAnnouncementDecodeErrorZ_is_ok(const struct LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ *NONNULL_PTR o); + export function CResult_UnsignedNodeAnnouncementDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Event_spendable_outputs(outputs); + const nativeResponseValue = wasm.TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // struct LDKEvent Event_payment_forwarded(struct LDKCOption_u64Z fee_earned_msat, bool claim_from_onchain_tx); - export function Event_payment_forwarded(fee_earned_msat: number, claim_from_onchain_tx: boolean): number { + // void CResult_UnsignedNodeAnnouncementDecodeErrorZ_free(struct LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ _res); + export function CResult_UnsignedNodeAnnouncementDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Event_payment_forwarded(fee_earned_msat, claim_from_onchain_tx); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_free(_res); + // debug statements here } - // struct LDKEvent Event_channel_closed(struct LDKThirtyTwoBytes channel_id, uint64_t user_channel_id, struct LDKClosureReason reason); - export function Event_channel_closed(channel_id: Uint8Array, user_channel_id: number, reason: number): number { + // uint64_t CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone_ptr(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ *NONNULL_PTR arg); + export function CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Event_channel_closed(encodeArray(channel_id), user_channel_id, reason); + const nativeResponseValue = wasm.TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKEvent Event_discard_funding(struct LDKThirtyTwoBytes channel_id, struct LDKTransaction transaction); - export function Event_discard_funding(channel_id: Uint8Array, transaction: Uint8Array): number { + // struct LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone(const struct LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ *NONNULL_PTR orig); + export function CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Event_discard_funding(encodeArray(channel_id), encodeArray(transaction)); + const nativeResponseValue = wasm.TS_CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKEvent Event_payment_path_successful(struct LDKThirtyTwoBytes payment_id, struct LDKThirtyTwoBytes payment_hash, struct LDKCVec_RouteHopZ path); - export function Event_payment_path_successful(payment_id: Uint8Array, payment_hash: Uint8Array, path: number[]): number { + // struct LDKCResult_NodeAnnouncementDecodeErrorZ CResult_NodeAnnouncementDecodeErrorZ_ok(struct LDKNodeAnnouncement o); + export function CResult_NodeAnnouncementDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Event_payment_path_successful(encodeArray(payment_id), encodeArray(payment_hash), path); + const nativeResponseValue = wasm.TS_CResult_NodeAnnouncementDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCVec_u8Z Event_write(const struct LDKEvent *NONNULL_PTR obj); - export function Event_write(obj: number): Uint8Array { + // struct LDKCResult_NodeAnnouncementDecodeErrorZ CResult_NodeAnnouncementDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_NodeAnnouncementDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Event_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CResult_NodeAnnouncementDecodeErrorZ_err(e); + return nativeResponseValue; } - // struct LDKCResult_COption_EventZDecodeErrorZ Event_read(struct LDKu8slice ser); - export function Event_read(ser: Uint8Array): number { + // bool CResult_NodeAnnouncementDecodeErrorZ_is_ok(const struct LDKCResult_NodeAnnouncementDecodeErrorZ *NONNULL_PTR o); + export function CResult_NodeAnnouncementDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Event_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_CResult_NodeAnnouncementDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void MessageSendEvent_free(struct LDKMessageSendEvent this_ptr); - export function MessageSendEvent_free(this_ptr: number): void { + // void CResult_NodeAnnouncementDecodeErrorZ_free(struct LDKCResult_NodeAnnouncementDecodeErrorZ _res); + export function CResult_NodeAnnouncementDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageSendEvent_free(this_ptr); + const nativeResponseValue = wasm.TS_CResult_NodeAnnouncementDecodeErrorZ_free(_res); // debug statements here } - // uint64_t MessageSendEvent_clone_ptr(LDKMessageSendEvent *NONNULL_PTR arg); - export function MessageSendEvent_clone_ptr(arg: number): number { + // uint64_t CResult_NodeAnnouncementDecodeErrorZ_clone_ptr(LDKCResult_NodeAnnouncementDecodeErrorZ *NONNULL_PTR arg); + export function CResult_NodeAnnouncementDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageSendEvent_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_NodeAnnouncementDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKMessageSendEvent MessageSendEvent_clone(const struct LDKMessageSendEvent *NONNULL_PTR orig); - export function MessageSendEvent_clone(orig: number): number { + // struct LDKCResult_NodeAnnouncementDecodeErrorZ CResult_NodeAnnouncementDecodeErrorZ_clone(const struct LDKCResult_NodeAnnouncementDecodeErrorZ *NONNULL_PTR orig); + export function CResult_NodeAnnouncementDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageSendEvent_clone(orig); + const nativeResponseValue = wasm.TS_CResult_NodeAnnouncementDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKMessageSendEvent MessageSendEvent_send_accept_channel(struct LDKPublicKey node_id, struct LDKAcceptChannel msg); - export function MessageSendEvent_send_accept_channel(node_id: Uint8Array, msg: number): number { + // struct LDKCResult_QueryShortChannelIdsDecodeErrorZ CResult_QueryShortChannelIdsDecodeErrorZ_ok(struct LDKQueryShortChannelIds o); + export function CResult_QueryShortChannelIdsDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageSendEvent_send_accept_channel(encodeArray(node_id), msg); + const nativeResponseValue = wasm.TS_CResult_QueryShortChannelIdsDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKMessageSendEvent MessageSendEvent_send_open_channel(struct LDKPublicKey node_id, struct LDKOpenChannel msg); - export function MessageSendEvent_send_open_channel(node_id: Uint8Array, msg: number): number { + // struct LDKCResult_QueryShortChannelIdsDecodeErrorZ CResult_QueryShortChannelIdsDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_QueryShortChannelIdsDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageSendEvent_send_open_channel(encodeArray(node_id), msg); + const nativeResponseValue = wasm.TS_CResult_QueryShortChannelIdsDecodeErrorZ_err(e); return nativeResponseValue; } - // struct LDKMessageSendEvent MessageSendEvent_send_funding_created(struct LDKPublicKey node_id, struct LDKFundingCreated msg); - export function MessageSendEvent_send_funding_created(node_id: Uint8Array, msg: number): number { + // bool CResult_QueryShortChannelIdsDecodeErrorZ_is_ok(const struct LDKCResult_QueryShortChannelIdsDecodeErrorZ *NONNULL_PTR o); + export function CResult_QueryShortChannelIdsDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageSendEvent_send_funding_created(encodeArray(node_id), msg); + const nativeResponseValue = wasm.TS_CResult_QueryShortChannelIdsDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // struct LDKMessageSendEvent MessageSendEvent_send_funding_signed(struct LDKPublicKey node_id, struct LDKFundingSigned msg); - export function MessageSendEvent_send_funding_signed(node_id: Uint8Array, msg: number): number { + // void CResult_QueryShortChannelIdsDecodeErrorZ_free(struct LDKCResult_QueryShortChannelIdsDecodeErrorZ _res); + export function CResult_QueryShortChannelIdsDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageSendEvent_send_funding_signed(encodeArray(node_id), msg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_QueryShortChannelIdsDecodeErrorZ_free(_res); + // debug statements here } - // struct LDKMessageSendEvent MessageSendEvent_send_funding_locked(struct LDKPublicKey node_id, struct LDKFundingLocked msg); - export function MessageSendEvent_send_funding_locked(node_id: Uint8Array, msg: number): number { + // uint64_t CResult_QueryShortChannelIdsDecodeErrorZ_clone_ptr(LDKCResult_QueryShortChannelIdsDecodeErrorZ *NONNULL_PTR arg); + export function CResult_QueryShortChannelIdsDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageSendEvent_send_funding_locked(encodeArray(node_id), msg); + const nativeResponseValue = wasm.TS_CResult_QueryShortChannelIdsDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKMessageSendEvent MessageSendEvent_send_announcement_signatures(struct LDKPublicKey node_id, struct LDKAnnouncementSignatures msg); - export function MessageSendEvent_send_announcement_signatures(node_id: Uint8Array, msg: number): number { + // struct LDKCResult_QueryShortChannelIdsDecodeErrorZ CResult_QueryShortChannelIdsDecodeErrorZ_clone(const struct LDKCResult_QueryShortChannelIdsDecodeErrorZ *NONNULL_PTR orig); + export function CResult_QueryShortChannelIdsDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageSendEvent_send_announcement_signatures(encodeArray(node_id), msg); + const nativeResponseValue = wasm.TS_CResult_QueryShortChannelIdsDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKMessageSendEvent MessageSendEvent_update_htlcs(struct LDKPublicKey node_id, struct LDKCommitmentUpdate updates); - export function MessageSendEvent_update_htlcs(node_id: Uint8Array, updates: number): number { + // struct LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ CResult_ReplyShortChannelIdsEndDecodeErrorZ_ok(struct LDKReplyShortChannelIdsEnd o); + export function CResult_ReplyShortChannelIdsEndDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageSendEvent_update_htlcs(encodeArray(node_id), updates); + const nativeResponseValue = wasm.TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKMessageSendEvent MessageSendEvent_send_revoke_and_ack(struct LDKPublicKey node_id, struct LDKRevokeAndACK msg); - export function MessageSendEvent_send_revoke_and_ack(node_id: Uint8Array, msg: number): number { + // struct LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ CResult_ReplyShortChannelIdsEndDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_ReplyShortChannelIdsEndDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageSendEvent_send_revoke_and_ack(encodeArray(node_id), msg); + const nativeResponseValue = wasm.TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_err(e); return nativeResponseValue; } - // struct LDKMessageSendEvent MessageSendEvent_send_closing_signed(struct LDKPublicKey node_id, struct LDKClosingSigned msg); - export function MessageSendEvent_send_closing_signed(node_id: Uint8Array, msg: number): number { + // bool CResult_ReplyShortChannelIdsEndDecodeErrorZ_is_ok(const struct LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ *NONNULL_PTR o); + export function CResult_ReplyShortChannelIdsEndDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageSendEvent_send_closing_signed(encodeArray(node_id), msg); + const nativeResponseValue = wasm.TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // struct LDKMessageSendEvent MessageSendEvent_send_shutdown(struct LDKPublicKey node_id, struct LDKShutdown msg); - export function MessageSendEvent_send_shutdown(node_id: Uint8Array, msg: number): number { + // void CResult_ReplyShortChannelIdsEndDecodeErrorZ_free(struct LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ _res); + export function CResult_ReplyShortChannelIdsEndDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageSendEvent_send_shutdown(encodeArray(node_id), msg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_free(_res); + // debug statements here } - // struct LDKMessageSendEvent MessageSendEvent_send_channel_reestablish(struct LDKPublicKey node_id, struct LDKChannelReestablish msg); - export function MessageSendEvent_send_channel_reestablish(node_id: Uint8Array, msg: number): number { + // uint64_t CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone_ptr(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ *NONNULL_PTR arg); + export function CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageSendEvent_send_channel_reestablish(encodeArray(node_id), msg); + const nativeResponseValue = wasm.TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKMessageSendEvent MessageSendEvent_broadcast_channel_announcement(struct LDKChannelAnnouncement msg, struct LDKChannelUpdate update_msg); - export function MessageSendEvent_broadcast_channel_announcement(msg: number, update_msg: number): number { + // struct LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone(const struct LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ *NONNULL_PTR orig); + export function CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageSendEvent_broadcast_channel_announcement(msg, update_msg); + const nativeResponseValue = wasm.TS_CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKMessageSendEvent MessageSendEvent_broadcast_node_announcement(struct LDKNodeAnnouncement msg); - export function MessageSendEvent_broadcast_node_announcement(msg: number): number { + // struct LDKCResult_QueryChannelRangeDecodeErrorZ CResult_QueryChannelRangeDecodeErrorZ_ok(struct LDKQueryChannelRange o); + export function CResult_QueryChannelRangeDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageSendEvent_broadcast_node_announcement(msg); + const nativeResponseValue = wasm.TS_CResult_QueryChannelRangeDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKMessageSendEvent MessageSendEvent_broadcast_channel_update(struct LDKChannelUpdate msg); - export function MessageSendEvent_broadcast_channel_update(msg: number): number { + // struct LDKCResult_QueryChannelRangeDecodeErrorZ CResult_QueryChannelRangeDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_QueryChannelRangeDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageSendEvent_broadcast_channel_update(msg); + const nativeResponseValue = wasm.TS_CResult_QueryChannelRangeDecodeErrorZ_err(e); return nativeResponseValue; } - // struct LDKMessageSendEvent MessageSendEvent_send_channel_update(struct LDKPublicKey node_id, struct LDKChannelUpdate msg); - export function MessageSendEvent_send_channel_update(node_id: Uint8Array, msg: number): number { + // bool CResult_QueryChannelRangeDecodeErrorZ_is_ok(const struct LDKCResult_QueryChannelRangeDecodeErrorZ *NONNULL_PTR o); + export function CResult_QueryChannelRangeDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageSendEvent_send_channel_update(encodeArray(node_id), msg); + const nativeResponseValue = wasm.TS_CResult_QueryChannelRangeDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // struct LDKMessageSendEvent MessageSendEvent_handle_error(struct LDKPublicKey node_id, struct LDKErrorAction action); - export function MessageSendEvent_handle_error(node_id: Uint8Array, action: number): number { + // void CResult_QueryChannelRangeDecodeErrorZ_free(struct LDKCResult_QueryChannelRangeDecodeErrorZ _res); + export function CResult_QueryChannelRangeDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageSendEvent_handle_error(encodeArray(node_id), action); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_QueryChannelRangeDecodeErrorZ_free(_res); + // debug statements here } - // struct LDKMessageSendEvent MessageSendEvent_send_channel_range_query(struct LDKPublicKey node_id, struct LDKQueryChannelRange msg); - export function MessageSendEvent_send_channel_range_query(node_id: Uint8Array, msg: number): number { + // uint64_t CResult_QueryChannelRangeDecodeErrorZ_clone_ptr(LDKCResult_QueryChannelRangeDecodeErrorZ *NONNULL_PTR arg); + export function CResult_QueryChannelRangeDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageSendEvent_send_channel_range_query(encodeArray(node_id), msg); + const nativeResponseValue = wasm.TS_CResult_QueryChannelRangeDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKMessageSendEvent MessageSendEvent_send_short_ids_query(struct LDKPublicKey node_id, struct LDKQueryShortChannelIds msg); - export function MessageSendEvent_send_short_ids_query(node_id: Uint8Array, msg: number): number { + // struct LDKCResult_QueryChannelRangeDecodeErrorZ CResult_QueryChannelRangeDecodeErrorZ_clone(const struct LDKCResult_QueryChannelRangeDecodeErrorZ *NONNULL_PTR orig); + export function CResult_QueryChannelRangeDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageSendEvent_send_short_ids_query(encodeArray(node_id), msg); + const nativeResponseValue = wasm.TS_CResult_QueryChannelRangeDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKMessageSendEvent MessageSendEvent_send_reply_channel_range(struct LDKPublicKey node_id, struct LDKReplyChannelRange msg); - export function MessageSendEvent_send_reply_channel_range(node_id: Uint8Array, msg: number): number { + // struct LDKCResult_ReplyChannelRangeDecodeErrorZ CResult_ReplyChannelRangeDecodeErrorZ_ok(struct LDKReplyChannelRange o); + export function CResult_ReplyChannelRangeDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageSendEvent_send_reply_channel_range(encodeArray(node_id), msg); + const nativeResponseValue = wasm.TS_CResult_ReplyChannelRangeDecodeErrorZ_ok(o); return nativeResponseValue; } - // void MessageSendEventsProvider_free(struct LDKMessageSendEventsProvider this_ptr); - export function MessageSendEventsProvider_free(this_ptr: number): void { + // struct LDKCResult_ReplyChannelRangeDecodeErrorZ CResult_ReplyChannelRangeDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_ReplyChannelRangeDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageSendEventsProvider_free(this_ptr); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_ReplyChannelRangeDecodeErrorZ_err(e); + return nativeResponseValue; } - // void EventsProvider_free(struct LDKEventsProvider this_ptr); - export function EventsProvider_free(this_ptr: number): void { + // bool CResult_ReplyChannelRangeDecodeErrorZ_is_ok(const struct LDKCResult_ReplyChannelRangeDecodeErrorZ *NONNULL_PTR o); + export function CResult_ReplyChannelRangeDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.EventsProvider_free(this_ptr); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_ReplyChannelRangeDecodeErrorZ_is_ok(o); + return nativeResponseValue; } - // void EventHandler_free(struct LDKEventHandler this_ptr); - export function EventHandler_free(this_ptr: number): void { + // void CResult_ReplyChannelRangeDecodeErrorZ_free(struct LDKCResult_ReplyChannelRangeDecodeErrorZ _res); + export function CResult_ReplyChannelRangeDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.EventHandler_free(this_ptr); + const nativeResponseValue = wasm.TS_CResult_ReplyChannelRangeDecodeErrorZ_free(_res); // debug statements here } - // void APIError_free(struct LDKAPIError this_ptr); - export function APIError_free(this_ptr: number): void { + // uint64_t CResult_ReplyChannelRangeDecodeErrorZ_clone_ptr(LDKCResult_ReplyChannelRangeDecodeErrorZ *NONNULL_PTR arg); + export function CResult_ReplyChannelRangeDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.APIError_free(this_ptr); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_ReplyChannelRangeDecodeErrorZ_clone_ptr(arg); + return nativeResponseValue; } - // uint64_t APIError_clone_ptr(LDKAPIError *NONNULL_PTR arg); - export function APIError_clone_ptr(arg: number): number { + // struct LDKCResult_ReplyChannelRangeDecodeErrorZ CResult_ReplyChannelRangeDecodeErrorZ_clone(const struct LDKCResult_ReplyChannelRangeDecodeErrorZ *NONNULL_PTR orig); + export function CResult_ReplyChannelRangeDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.APIError_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_ReplyChannelRangeDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKAPIError APIError_clone(const struct LDKAPIError *NONNULL_PTR orig); - export function APIError_clone(orig: number): number { + // struct LDKCResult_GossipTimestampFilterDecodeErrorZ CResult_GossipTimestampFilterDecodeErrorZ_ok(struct LDKGossipTimestampFilter o); + export function CResult_GossipTimestampFilterDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.APIError_clone(orig); + const nativeResponseValue = wasm.TS_CResult_GossipTimestampFilterDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKAPIError APIError_apimisuse_error(struct LDKStr err); - export function APIError_apimisuse_error(err: String): number { + // struct LDKCResult_GossipTimestampFilterDecodeErrorZ CResult_GossipTimestampFilterDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_GossipTimestampFilterDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.APIError_apimisuse_error(err); + const nativeResponseValue = wasm.TS_CResult_GossipTimestampFilterDecodeErrorZ_err(e); return nativeResponseValue; } - // struct LDKAPIError APIError_fee_rate_too_high(struct LDKStr err, uint32_t feerate); - export function APIError_fee_rate_too_high(err: String, feerate: number): number { + // bool CResult_GossipTimestampFilterDecodeErrorZ_is_ok(const struct LDKCResult_GossipTimestampFilterDecodeErrorZ *NONNULL_PTR o); + export function CResult_GossipTimestampFilterDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.APIError_fee_rate_too_high(err, feerate); + const nativeResponseValue = wasm.TS_CResult_GossipTimestampFilterDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // struct LDKAPIError APIError_route_error(struct LDKStr err); - export function APIError_route_error(err: String): number { + // void CResult_GossipTimestampFilterDecodeErrorZ_free(struct LDKCResult_GossipTimestampFilterDecodeErrorZ _res); + export function CResult_GossipTimestampFilterDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.APIError_route_error(err); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_GossipTimestampFilterDecodeErrorZ_free(_res); + // debug statements here } - // struct LDKAPIError APIError_channel_unavailable(struct LDKStr err); - export function APIError_channel_unavailable(err: String): number { + // uint64_t CResult_GossipTimestampFilterDecodeErrorZ_clone_ptr(LDKCResult_GossipTimestampFilterDecodeErrorZ *NONNULL_PTR arg); + export function CResult_GossipTimestampFilterDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.APIError_channel_unavailable(err); + const nativeResponseValue = wasm.TS_CResult_GossipTimestampFilterDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKAPIError APIError_monitor_update_failed(void); - export function APIError_monitor_update_failed(): number { + // struct LDKCResult_GossipTimestampFilterDecodeErrorZ CResult_GossipTimestampFilterDecodeErrorZ_clone(const struct LDKCResult_GossipTimestampFilterDecodeErrorZ *NONNULL_PTR orig); + export function CResult_GossipTimestampFilterDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.APIError_monitor_update_failed(); + const nativeResponseValue = wasm.TS_CResult_GossipTimestampFilterDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKAPIError APIError_incompatible_shutdown_script(struct LDKShutdownScript script); - export function APIError_incompatible_shutdown_script(script: number): number { + // struct LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_ok(struct LDKDelayedPaymentOutputDescriptor o); + export function CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.APIError_incompatible_shutdown_script(script); + const nativeResponseValue = wasm.TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_ok(o); return nativeResponseValue; } - // struct LDKCResult_StringErrorZ sign(struct LDKu8slice msg, const uint8_t (*sk)[32]); - export function sign(msg: Uint8Array, sk: Uint8Array): number { + // struct LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.sign(encodeArray(msg), encodeArray(sk)); + const nativeResponseValue = wasm.TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_err(e); return nativeResponseValue; } - // struct LDKCResult_PublicKeyErrorZ recover_pk(struct LDKu8slice msg, struct LDKStr sig); - export function recover_pk(msg: Uint8Array, sig: String): number { + // bool CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_is_ok(const struct LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR o); + export function CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.recover_pk(encodeArray(msg), sig); + const nativeResponseValue = wasm.TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // bool verify(struct LDKu8slice msg, struct LDKStr sig, struct LDKPublicKey pk); - export function verify(msg: Uint8Array, sig: String, pk: Uint8Array): boolean { + // void CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_free(struct LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ _res); + export function CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.verify(encodeArray(msg), sig, encodeArray(pk)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_free(_res); + // debug statements here } - // enum LDKLevel Level_clone(const enum LDKLevel *NONNULL_PTR orig); - export function Level_clone(orig: number): Level { + // uint64_t CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone_ptr(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR arg); + export function CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Level_clone(orig); + const nativeResponseValue = wasm.TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // enum LDKLevel Level_gossip(void); - export function Level_gossip(): Level { + // struct LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone(const struct LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR orig); + export function CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone(orig: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone(orig); + return nativeResponseValue; + } + // struct LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ CResult_StaticPaymentOutputDescriptorDecodeErrorZ_ok(struct LDKStaticPaymentOutputDescriptor o); + export function CResult_StaticPaymentOutputDescriptorDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Level_gossip(); + const nativeResponseValue = wasm.TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_ok(o); return nativeResponseValue; } - // enum LDKLevel Level_trace(void); - export function Level_trace(): Level { + // struct LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ CResult_StaticPaymentOutputDescriptorDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_StaticPaymentOutputDescriptorDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Level_trace(); + const nativeResponseValue = wasm.TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_err(e); return nativeResponseValue; } - // enum LDKLevel Level_debug(void); - export function Level_debug(): Level { + // bool CResult_StaticPaymentOutputDescriptorDecodeErrorZ_is_ok(const struct LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR o); + export function CResult_StaticPaymentOutputDescriptorDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Level_debug(); + const nativeResponseValue = wasm.TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // enum LDKLevel Level_info(void); - export function Level_info(): Level { + // void CResult_StaticPaymentOutputDescriptorDecodeErrorZ_free(struct LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ _res); + export function CResult_StaticPaymentOutputDescriptorDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Level_info(); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_free(_res); + // debug statements here } - // enum LDKLevel Level_warn(void); - export function Level_warn(): Level { + // uint64_t CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone_ptr(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR arg); + export function CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Level_warn(); + const nativeResponseValue = wasm.TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // enum LDKLevel Level_error(void); - export function Level_error(): Level { + // struct LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone(const struct LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ *NONNULL_PTR orig); + export function CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Level_error(); + const nativeResponseValue = wasm.TS_CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone(orig); return nativeResponseValue; } - // bool Level_eq(const enum LDKLevel *NONNULL_PTR a, const enum LDKLevel *NONNULL_PTR b); - export function Level_eq(a: number, b: number): boolean { + // struct LDKCResult_SpendableOutputDescriptorDecodeErrorZ CResult_SpendableOutputDescriptorDecodeErrorZ_ok(struct LDKSpendableOutputDescriptor o); + export function CResult_SpendableOutputDescriptorDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Level_eq(a, b); + const nativeResponseValue = wasm.TS_CResult_SpendableOutputDescriptorDecodeErrorZ_ok(o); return nativeResponseValue; } - // uint64_t Level_hash(const enum LDKLevel *NONNULL_PTR o); - export function Level_hash(o: number): number { + // struct LDKCResult_SpendableOutputDescriptorDecodeErrorZ CResult_SpendableOutputDescriptorDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_SpendableOutputDescriptorDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Level_hash(o); + const nativeResponseValue = wasm.TS_CResult_SpendableOutputDescriptorDecodeErrorZ_err(e); return nativeResponseValue; } - // MUST_USE_RES enum LDKLevel Level_max(void); - export function Level_max(): Level { + // bool CResult_SpendableOutputDescriptorDecodeErrorZ_is_ok(const struct LDKCResult_SpendableOutputDescriptorDecodeErrorZ *NONNULL_PTR o); + export function CResult_SpendableOutputDescriptorDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Level_max(); + const nativeResponseValue = wasm.TS_CResult_SpendableOutputDescriptorDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void Record_free(struct LDKRecord this_obj); - export function Record_free(this_obj: number): void { + // void CResult_SpendableOutputDescriptorDecodeErrorZ_free(struct LDKCResult_SpendableOutputDescriptorDecodeErrorZ _res); + export function CResult_SpendableOutputDescriptorDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Record_free(this_obj); + const nativeResponseValue = wasm.TS_CResult_SpendableOutputDescriptorDecodeErrorZ_free(_res); // debug statements here } - // enum LDKLevel Record_get_level(const struct LDKRecord *NONNULL_PTR this_ptr); - export function Record_get_level(this_ptr: number): Level { + // uint64_t CResult_SpendableOutputDescriptorDecodeErrorZ_clone_ptr(LDKCResult_SpendableOutputDescriptorDecodeErrorZ *NONNULL_PTR arg); + export function CResult_SpendableOutputDescriptorDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Record_get_level(this_ptr); + const nativeResponseValue = wasm.TS_CResult_SpendableOutputDescriptorDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // void Record_set_level(struct LDKRecord *NONNULL_PTR this_ptr, enum LDKLevel val); - export function Record_set_level(this_ptr: number, val: Level): void { + // struct LDKCResult_SpendableOutputDescriptorDecodeErrorZ CResult_SpendableOutputDescriptorDecodeErrorZ_clone(const struct LDKCResult_SpendableOutputDescriptorDecodeErrorZ *NONNULL_PTR orig); + export function CResult_SpendableOutputDescriptorDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Record_set_level(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_SpendableOutputDescriptorDecodeErrorZ_clone(orig); + return nativeResponseValue; } - // struct LDKStr Record_get_args(const struct LDKRecord *NONNULL_PTR this_ptr); - export function Record_get_args(this_ptr: number): String { + // uint64_t C2Tuple_SignatureCVec_SignatureZZ_clone_ptr(LDKC2Tuple_SignatureCVec_SignatureZZ *NONNULL_PTR arg); + export function C2Tuple_SignatureCVec_SignatureZZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Record_get_args(this_ptr); + const nativeResponseValue = wasm.TS_C2Tuple_SignatureCVec_SignatureZZ_clone_ptr(arg); return nativeResponseValue; } - // void Record_set_args(struct LDKRecord *NONNULL_PTR this_ptr, struct LDKStr val); - export function Record_set_args(this_ptr: number, val: String): void { + // struct LDKC2Tuple_SignatureCVec_SignatureZZ C2Tuple_SignatureCVec_SignatureZZ_clone(const struct LDKC2Tuple_SignatureCVec_SignatureZZ *NONNULL_PTR orig); + export function C2Tuple_SignatureCVec_SignatureZZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Record_set_args(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_C2Tuple_SignatureCVec_SignatureZZ_clone(orig); + return nativeResponseValue; } - // struct LDKStr Record_get_module_path(const struct LDKRecord *NONNULL_PTR this_ptr); - export function Record_get_module_path(this_ptr: number): String { + // struct LDKC2Tuple_SignatureCVec_SignatureZZ C2Tuple_SignatureCVec_SignatureZZ_new(struct LDKSignature a, struct LDKCVec_SignatureZ b); + export function C2Tuple_SignatureCVec_SignatureZZ_new(a: Uint8Array, b: Uint8Array[]): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Record_get_module_path(this_ptr); + const nativeResponseValue = wasm.TS_C2Tuple_SignatureCVec_SignatureZZ_new(encodeUint8Array(a), b); return nativeResponseValue; } - // void Record_set_module_path(struct LDKRecord *NONNULL_PTR this_ptr, struct LDKStr val); - export function Record_set_module_path(this_ptr: number, val: String): void { + // void C2Tuple_SignatureCVec_SignatureZZ_free(struct LDKC2Tuple_SignatureCVec_SignatureZZ _res); + export function C2Tuple_SignatureCVec_SignatureZZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Record_set_module_path(this_ptr, val); + const nativeResponseValue = wasm.TS_C2Tuple_SignatureCVec_SignatureZZ_free(_res); // debug statements here } - // struct LDKStr Record_get_file(const struct LDKRecord *NONNULL_PTR this_ptr); - export function Record_get_file(this_ptr: number): String { + // struct LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_ok(struct LDKC2Tuple_SignatureCVec_SignatureZZ o); + export function CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Record_get_file(this_ptr); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_ok(o); return nativeResponseValue; } - // void Record_set_file(struct LDKRecord *NONNULL_PTR this_ptr, struct LDKStr val); - export function Record_set_file(this_ptr: number, val: String): void { + // struct LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_err(void); + export function CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_err(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Record_set_file(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_err(); + return nativeResponseValue; } - // uint32_t Record_get_line(const struct LDKRecord *NONNULL_PTR this_ptr); - export function Record_get_line(this_ptr: number): number { + // bool CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_is_ok(const struct LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ *NONNULL_PTR o); + export function CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Record_get_line(this_ptr); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_is_ok(o); return nativeResponseValue; } - // void Record_set_line(struct LDKRecord *NONNULL_PTR this_ptr, uint32_t val); - export function Record_set_line(this_ptr: number, val: number): void { + // void CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_free(struct LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ _res); + export function CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Record_set_line(this_ptr, val); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_free(_res); // debug statements here } - // uint64_t Record_clone_ptr(LDKRecord *NONNULL_PTR arg); - export function Record_clone_ptr(arg: number): number { + // uint64_t CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone_ptr(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ *NONNULL_PTR arg); + export function CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Record_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKRecord Record_clone(const struct LDKRecord *NONNULL_PTR orig); - export function Record_clone(orig: number): number { + // struct LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone(const struct LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ *NONNULL_PTR orig); + export function CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Record_clone(orig); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone(orig); return nativeResponseValue; } - // void Logger_free(struct LDKLogger this_ptr); - export function Logger_free(this_ptr: number): void { + // struct LDKCResult_SignatureNoneZ CResult_SignatureNoneZ_ok(struct LDKSignature o); + export function CResult_SignatureNoneZ_ok(o: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Logger_free(this_ptr); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_SignatureNoneZ_ok(encodeUint8Array(o)); + return nativeResponseValue; } - // void ChannelHandshakeConfig_free(struct LDKChannelHandshakeConfig this_obj); - export function ChannelHandshakeConfig_free(this_obj: number): void { + // struct LDKCResult_SignatureNoneZ CResult_SignatureNoneZ_err(void); + export function CResult_SignatureNoneZ_err(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeConfig_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_SignatureNoneZ_err(); + return nativeResponseValue; } - // uint32_t ChannelHandshakeConfig_get_minimum_depth(const struct LDKChannelHandshakeConfig *NONNULL_PTR this_ptr); - export function ChannelHandshakeConfig_get_minimum_depth(this_ptr: number): number { + // bool CResult_SignatureNoneZ_is_ok(const struct LDKCResult_SignatureNoneZ *NONNULL_PTR o); + export function CResult_SignatureNoneZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeConfig_get_minimum_depth(this_ptr); + const nativeResponseValue = wasm.TS_CResult_SignatureNoneZ_is_ok(o); return nativeResponseValue; } - // void ChannelHandshakeConfig_set_minimum_depth(struct LDKChannelHandshakeConfig *NONNULL_PTR this_ptr, uint32_t val); - export function ChannelHandshakeConfig_set_minimum_depth(this_ptr: number, val: number): void { + // void CResult_SignatureNoneZ_free(struct LDKCResult_SignatureNoneZ _res); + export function CResult_SignatureNoneZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeConfig_set_minimum_depth(this_ptr, val); + const nativeResponseValue = wasm.TS_CResult_SignatureNoneZ_free(_res); // debug statements here } - // uint16_t ChannelHandshakeConfig_get_our_to_self_delay(const struct LDKChannelHandshakeConfig *NONNULL_PTR this_ptr); - export function ChannelHandshakeConfig_get_our_to_self_delay(this_ptr: number): number { + // uint64_t CResult_SignatureNoneZ_clone_ptr(LDKCResult_SignatureNoneZ *NONNULL_PTR arg); + export function CResult_SignatureNoneZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeConfig_get_our_to_self_delay(this_ptr); + const nativeResponseValue = wasm.TS_CResult_SignatureNoneZ_clone_ptr(arg); return nativeResponseValue; } - // void ChannelHandshakeConfig_set_our_to_self_delay(struct LDKChannelHandshakeConfig *NONNULL_PTR this_ptr, uint16_t val); - export function ChannelHandshakeConfig_set_our_to_self_delay(this_ptr: number, val: number): void { + // struct LDKCResult_SignatureNoneZ CResult_SignatureNoneZ_clone(const struct LDKCResult_SignatureNoneZ *NONNULL_PTR orig); + export function CResult_SignatureNoneZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeConfig_set_our_to_self_delay(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_SignatureNoneZ_clone(orig); + return nativeResponseValue; } - // uint64_t ChannelHandshakeConfig_get_our_htlc_minimum_msat(const struct LDKChannelHandshakeConfig *NONNULL_PTR this_ptr); - export function ChannelHandshakeConfig_get_our_htlc_minimum_msat(this_ptr: number): number { + // struct LDKCResult_SignDecodeErrorZ CResult_SignDecodeErrorZ_ok(struct LDKSign o); + export function CResult_SignDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeConfig_get_our_htlc_minimum_msat(this_ptr); + const nativeResponseValue = wasm.TS_CResult_SignDecodeErrorZ_ok(o); return nativeResponseValue; } - // void ChannelHandshakeConfig_set_our_htlc_minimum_msat(struct LDKChannelHandshakeConfig *NONNULL_PTR this_ptr, uint64_t val); - export function ChannelHandshakeConfig_set_our_htlc_minimum_msat(this_ptr: number, val: number): void { + // struct LDKCResult_SignDecodeErrorZ CResult_SignDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_SignDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeConfig_set_our_htlc_minimum_msat(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_SignDecodeErrorZ_err(e); + return nativeResponseValue; } - // 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); - export function ChannelHandshakeConfig_new(minimum_depth_arg: number, our_to_self_delay_arg: number, our_htlc_minimum_msat_arg: number): number { + // bool CResult_SignDecodeErrorZ_is_ok(const struct LDKCResult_SignDecodeErrorZ *NONNULL_PTR o); + export function CResult_SignDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeConfig_new(minimum_depth_arg, our_to_self_delay_arg, our_htlc_minimum_msat_arg); + const nativeResponseValue = wasm.TS_CResult_SignDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // uint64_t ChannelHandshakeConfig_clone_ptr(LDKChannelHandshakeConfig *NONNULL_PTR arg); - export function ChannelHandshakeConfig_clone_ptr(arg: number): number { + // void CResult_SignDecodeErrorZ_free(struct LDKCResult_SignDecodeErrorZ _res); + export function CResult_SignDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeConfig_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_SignDecodeErrorZ_free(_res); + // debug statements here } - // struct LDKChannelHandshakeConfig ChannelHandshakeConfig_clone(const struct LDKChannelHandshakeConfig *NONNULL_PTR orig); - export function ChannelHandshakeConfig_clone(orig: number): number { + // uint64_t CResult_SignDecodeErrorZ_clone_ptr(LDKCResult_SignDecodeErrorZ *NONNULL_PTR arg); + export function CResult_SignDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeConfig_clone(orig); + const nativeResponseValue = wasm.TS_CResult_SignDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // MUST_USE_RES struct LDKChannelHandshakeConfig ChannelHandshakeConfig_default(void); - export function ChannelHandshakeConfig_default(): number { + // struct LDKCResult_SignDecodeErrorZ CResult_SignDecodeErrorZ_clone(const struct LDKCResult_SignDecodeErrorZ *NONNULL_PTR orig); + export function CResult_SignDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeConfig_default(); + const nativeResponseValue = wasm.TS_CResult_SignDecodeErrorZ_clone(orig); return nativeResponseValue; } - // void ChannelHandshakeLimits_free(struct LDKChannelHandshakeLimits this_obj); - export function ChannelHandshakeLimits_free(this_obj: number): void { + // struct LDKCResult_RecoverableSignatureNoneZ CResult_RecoverableSignatureNoneZ_ok(struct LDKRecoverableSignature o); + export function CResult_RecoverableSignatureNoneZ_ok(arg: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeLimits_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_RecoverableSignatureNoneZ_ok(encodeUint8Array(arg)); + return nativeResponseValue; } - // uint64_t ChannelHandshakeLimits_get_min_funding_satoshis(const struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr); - export function ChannelHandshakeLimits_get_min_funding_satoshis(this_ptr: number): number { + // struct LDKCResult_RecoverableSignatureNoneZ CResult_RecoverableSignatureNoneZ_err(void); + export function CResult_RecoverableSignatureNoneZ_err(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeLimits_get_min_funding_satoshis(this_ptr); + const nativeResponseValue = wasm.TS_CResult_RecoverableSignatureNoneZ_err(); return nativeResponseValue; } - // void ChannelHandshakeLimits_set_min_funding_satoshis(struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr, uint64_t val); - export function ChannelHandshakeLimits_set_min_funding_satoshis(this_ptr: number, val: number): void { + // bool CResult_RecoverableSignatureNoneZ_is_ok(const struct LDKCResult_RecoverableSignatureNoneZ *NONNULL_PTR o); + export function CResult_RecoverableSignatureNoneZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeLimits_set_min_funding_satoshis(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_RecoverableSignatureNoneZ_is_ok(o); + return nativeResponseValue; } - // uint64_t ChannelHandshakeLimits_get_max_htlc_minimum_msat(const struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr); - export function ChannelHandshakeLimits_get_max_htlc_minimum_msat(this_ptr: number): number { + // void CResult_RecoverableSignatureNoneZ_free(struct LDKCResult_RecoverableSignatureNoneZ _res); + export function CResult_RecoverableSignatureNoneZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeLimits_get_max_htlc_minimum_msat(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_RecoverableSignatureNoneZ_free(_res); + // debug statements here } - // void ChannelHandshakeLimits_set_max_htlc_minimum_msat(struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr, uint64_t val); - export function ChannelHandshakeLimits_set_max_htlc_minimum_msat(this_ptr: number, val: number): void { + // uint64_t CResult_RecoverableSignatureNoneZ_clone_ptr(LDKCResult_RecoverableSignatureNoneZ *NONNULL_PTR arg); + export function CResult_RecoverableSignatureNoneZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeLimits_set_max_htlc_minimum_msat(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_RecoverableSignatureNoneZ_clone_ptr(arg); + return nativeResponseValue; } - // uint64_t ChannelHandshakeLimits_get_min_max_htlc_value_in_flight_msat(const struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr); - export function ChannelHandshakeLimits_get_min_max_htlc_value_in_flight_msat(this_ptr: number): number { + // struct LDKCResult_RecoverableSignatureNoneZ CResult_RecoverableSignatureNoneZ_clone(const struct LDKCResult_RecoverableSignatureNoneZ *NONNULL_PTR orig); + export function CResult_RecoverableSignatureNoneZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeLimits_get_min_max_htlc_value_in_flight_msat(this_ptr); + const nativeResponseValue = wasm.TS_CResult_RecoverableSignatureNoneZ_clone(orig); return nativeResponseValue; } - // void ChannelHandshakeLimits_set_min_max_htlc_value_in_flight_msat(struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr, uint64_t val); - export function ChannelHandshakeLimits_set_min_max_htlc_value_in_flight_msat(this_ptr: number, val: number): void { + // void CVec_CVec_u8ZZ_free(struct LDKCVec_CVec_u8ZZ _res); + export function CVec_CVec_u8ZZ_free(_res: Uint8Array[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeLimits_set_min_max_htlc_value_in_flight_msat(this_ptr, val); + const nativeResponseValue = wasm.TS_CVec_CVec_u8ZZ_free(_res); // debug statements here } - // uint64_t ChannelHandshakeLimits_get_max_channel_reserve_satoshis(const struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr); - export function ChannelHandshakeLimits_get_max_channel_reserve_satoshis(this_ptr: number): number { + // struct LDKCResult_CVec_CVec_u8ZZNoneZ CResult_CVec_CVec_u8ZZNoneZ_ok(struct LDKCVec_CVec_u8ZZ o); + export function CResult_CVec_CVec_u8ZZNoneZ_ok(o: Uint8Array[]): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeLimits_get_max_channel_reserve_satoshis(this_ptr); + const nativeResponseValue = wasm.TS_CResult_CVec_CVec_u8ZZNoneZ_ok(o); return nativeResponseValue; } - // void ChannelHandshakeLimits_set_max_channel_reserve_satoshis(struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr, uint64_t val); - export function ChannelHandshakeLimits_set_max_channel_reserve_satoshis(this_ptr: number, val: number): void { + // struct LDKCResult_CVec_CVec_u8ZZNoneZ CResult_CVec_CVec_u8ZZNoneZ_err(void); + export function CResult_CVec_CVec_u8ZZNoneZ_err(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeLimits_set_max_channel_reserve_satoshis(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_CVec_CVec_u8ZZNoneZ_err(); + return nativeResponseValue; } - // uint16_t ChannelHandshakeLimits_get_min_max_accepted_htlcs(const struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr); - export function ChannelHandshakeLimits_get_min_max_accepted_htlcs(this_ptr: number): number { + // bool CResult_CVec_CVec_u8ZZNoneZ_is_ok(const struct LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR o); + export function CResult_CVec_CVec_u8ZZNoneZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeLimits_get_min_max_accepted_htlcs(this_ptr); + const nativeResponseValue = wasm.TS_CResult_CVec_CVec_u8ZZNoneZ_is_ok(o); return nativeResponseValue; } - // void ChannelHandshakeLimits_set_min_max_accepted_htlcs(struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr, uint16_t val); - export function ChannelHandshakeLimits_set_min_max_accepted_htlcs(this_ptr: number, val: number): void { + // void CResult_CVec_CVec_u8ZZNoneZ_free(struct LDKCResult_CVec_CVec_u8ZZNoneZ _res); + export function CResult_CVec_CVec_u8ZZNoneZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeLimits_set_min_max_accepted_htlcs(this_ptr, val); + const nativeResponseValue = wasm.TS_CResult_CVec_CVec_u8ZZNoneZ_free(_res); // debug statements here } - // uint32_t ChannelHandshakeLimits_get_max_minimum_depth(const struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr); - export function ChannelHandshakeLimits_get_max_minimum_depth(this_ptr: number): number { + // uint64_t CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR arg); + export function CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeLimits_get_max_minimum_depth(this_ptr); + const nativeResponseValue = wasm.TS_CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(arg); return nativeResponseValue; } - // void ChannelHandshakeLimits_set_max_minimum_depth(struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr, uint32_t val); - export function ChannelHandshakeLimits_set_max_minimum_depth(this_ptr: number, val: number): void { + // struct LDKCResult_CVec_CVec_u8ZZNoneZ CResult_CVec_CVec_u8ZZNoneZ_clone(const struct LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR orig); + export function CResult_CVec_CVec_u8ZZNoneZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeLimits_set_max_minimum_depth(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_CVec_CVec_u8ZZNoneZ_clone(orig); + return nativeResponseValue; } - // bool ChannelHandshakeLimits_get_force_announced_channel_preference(const struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr); - export function ChannelHandshakeLimits_get_force_announced_channel_preference(this_ptr: number): boolean { + // struct LDKCResult_InMemorySignerDecodeErrorZ CResult_InMemorySignerDecodeErrorZ_ok(struct LDKInMemorySigner o); + export function CResult_InMemorySignerDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeLimits_get_force_announced_channel_preference(this_ptr); + const nativeResponseValue = wasm.TS_CResult_InMemorySignerDecodeErrorZ_ok(o); return nativeResponseValue; } - // void ChannelHandshakeLimits_set_force_announced_channel_preference(struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr, bool val); - export function ChannelHandshakeLimits_set_force_announced_channel_preference(this_ptr: number, val: boolean): void { + // struct LDKCResult_InMemorySignerDecodeErrorZ CResult_InMemorySignerDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_InMemorySignerDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeLimits_set_force_announced_channel_preference(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_InMemorySignerDecodeErrorZ_err(e); + return nativeResponseValue; } - // uint16_t ChannelHandshakeLimits_get_their_to_self_delay(const struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr); - export function ChannelHandshakeLimits_get_their_to_self_delay(this_ptr: number): number { + // bool CResult_InMemorySignerDecodeErrorZ_is_ok(const struct LDKCResult_InMemorySignerDecodeErrorZ *NONNULL_PTR o); + export function CResult_InMemorySignerDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeLimits_get_their_to_self_delay(this_ptr); + const nativeResponseValue = wasm.TS_CResult_InMemorySignerDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void ChannelHandshakeLimits_set_their_to_self_delay(struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr, uint16_t val); - export function ChannelHandshakeLimits_set_their_to_self_delay(this_ptr: number, val: number): void { + // void CResult_InMemorySignerDecodeErrorZ_free(struct LDKCResult_InMemorySignerDecodeErrorZ _res); + export function CResult_InMemorySignerDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeLimits_set_their_to_self_delay(this_ptr, val); + const nativeResponseValue = wasm.TS_CResult_InMemorySignerDecodeErrorZ_free(_res); // debug statements here } - // MUST_USE_RES struct LDKChannelHandshakeLimits ChannelHandshakeLimits_new(uint64_t min_funding_satoshis_arg, uint64_t max_htlc_minimum_msat_arg, uint64_t min_max_htlc_value_in_flight_msat_arg, uint64_t max_channel_reserve_satoshis_arg, uint16_t min_max_accepted_htlcs_arg, uint32_t max_minimum_depth_arg, bool force_announced_channel_preference_arg, uint16_t their_to_self_delay_arg); - export function ChannelHandshakeLimits_new(min_funding_satoshis_arg: number, max_htlc_minimum_msat_arg: number, min_max_htlc_value_in_flight_msat_arg: number, max_channel_reserve_satoshis_arg: number, min_max_accepted_htlcs_arg: number, max_minimum_depth_arg: number, force_announced_channel_preference_arg: boolean, their_to_self_delay_arg: number): number { + // uint64_t CResult_InMemorySignerDecodeErrorZ_clone_ptr(LDKCResult_InMemorySignerDecodeErrorZ *NONNULL_PTR arg); + export function CResult_InMemorySignerDecodeErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeLimits_new(min_funding_satoshis_arg, max_htlc_minimum_msat_arg, min_max_htlc_value_in_flight_msat_arg, max_channel_reserve_satoshis_arg, min_max_accepted_htlcs_arg, max_minimum_depth_arg, force_announced_channel_preference_arg, their_to_self_delay_arg); + const nativeResponseValue = wasm.TS_CResult_InMemorySignerDecodeErrorZ_clone_ptr(arg); return nativeResponseValue; } - // uint64_t ChannelHandshakeLimits_clone_ptr(LDKChannelHandshakeLimits *NONNULL_PTR arg); - export function ChannelHandshakeLimits_clone_ptr(arg: number): number { + // struct LDKCResult_InMemorySignerDecodeErrorZ CResult_InMemorySignerDecodeErrorZ_clone(const struct LDKCResult_InMemorySignerDecodeErrorZ *NONNULL_PTR orig); + export function CResult_InMemorySignerDecodeErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeLimits_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_InMemorySignerDecodeErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKChannelHandshakeLimits ChannelHandshakeLimits_clone(const struct LDKChannelHandshakeLimits *NONNULL_PTR orig); - export function ChannelHandshakeLimits_clone(orig: number): number { + // void CVec_TxOutZ_free(struct LDKCVec_TxOutZ _res); + export function CVec_TxOutZ_free(_res: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeLimits_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CVec_TxOutZ_free(_res); + // debug statements here } - // MUST_USE_RES struct LDKChannelHandshakeLimits ChannelHandshakeLimits_default(void); - export function ChannelHandshakeLimits_default(): number { + // struct LDKCResult_TransactionNoneZ CResult_TransactionNoneZ_ok(struct LDKTransaction o); + export function CResult_TransactionNoneZ_ok(o: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelHandshakeLimits_default(); + const nativeResponseValue = wasm.TS_CResult_TransactionNoneZ_ok(encodeUint8Array(o)); return nativeResponseValue; } - // void ChannelConfig_free(struct LDKChannelConfig this_obj); - export function ChannelConfig_free(this_obj: number): void { + // struct LDKCResult_TransactionNoneZ CResult_TransactionNoneZ_err(void); + export function CResult_TransactionNoneZ_err(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelConfig_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_TransactionNoneZ_err(); + return nativeResponseValue; } - // uint32_t ChannelConfig_get_forwarding_fee_proportional_millionths(const struct LDKChannelConfig *NONNULL_PTR this_ptr); - export function ChannelConfig_get_forwarding_fee_proportional_millionths(this_ptr: number): number { + // bool CResult_TransactionNoneZ_is_ok(const struct LDKCResult_TransactionNoneZ *NONNULL_PTR o); + export function CResult_TransactionNoneZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelConfig_get_forwarding_fee_proportional_millionths(this_ptr); + const nativeResponseValue = wasm.TS_CResult_TransactionNoneZ_is_ok(o); return nativeResponseValue; } - // void ChannelConfig_set_forwarding_fee_proportional_millionths(struct LDKChannelConfig *NONNULL_PTR this_ptr, uint32_t val); - export function ChannelConfig_set_forwarding_fee_proportional_millionths(this_ptr: number, val: number): void { + // void CResult_TransactionNoneZ_free(struct LDKCResult_TransactionNoneZ _res); + export function CResult_TransactionNoneZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelConfig_set_forwarding_fee_proportional_millionths(this_ptr, val); + const nativeResponseValue = wasm.TS_CResult_TransactionNoneZ_free(_res); // debug statements here } - // uint32_t ChannelConfig_get_forwarding_fee_base_msat(const struct LDKChannelConfig *NONNULL_PTR this_ptr); - export function ChannelConfig_get_forwarding_fee_base_msat(this_ptr: number): number { + // uint64_t CResult_TransactionNoneZ_clone_ptr(LDKCResult_TransactionNoneZ *NONNULL_PTR arg); + export function CResult_TransactionNoneZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelConfig_get_forwarding_fee_base_msat(this_ptr); + const nativeResponseValue = wasm.TS_CResult_TransactionNoneZ_clone_ptr(arg); return nativeResponseValue; } - // void ChannelConfig_set_forwarding_fee_base_msat(struct LDKChannelConfig *NONNULL_PTR this_ptr, uint32_t val); - export function ChannelConfig_set_forwarding_fee_base_msat(this_ptr: number, val: number): void { + // struct LDKCResult_TransactionNoneZ CResult_TransactionNoneZ_clone(const struct LDKCResult_TransactionNoneZ *NONNULL_PTR orig); + export function CResult_TransactionNoneZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelConfig_set_forwarding_fee_base_msat(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_TransactionNoneZ_clone(orig); + return nativeResponseValue; } - // uint16_t ChannelConfig_get_cltv_expiry_delta(const struct LDKChannelConfig *NONNULL_PTR this_ptr); - export function ChannelConfig_get_cltv_expiry_delta(this_ptr: number): number { + // struct LDKCOption_FilterZ COption_FilterZ_some(struct LDKFilter o); + export function COption_FilterZ_some(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelConfig_get_cltv_expiry_delta(this_ptr); + const nativeResponseValue = wasm.TS_COption_FilterZ_some(o); return nativeResponseValue; } - // void ChannelConfig_set_cltv_expiry_delta(struct LDKChannelConfig *NONNULL_PTR this_ptr, uint16_t val); - export function ChannelConfig_set_cltv_expiry_delta(this_ptr: number, val: number): void { + // struct LDKCOption_FilterZ COption_FilterZ_none(void); + export function COption_FilterZ_none(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelConfig_set_cltv_expiry_delta(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_COption_FilterZ_none(); + return nativeResponseValue; } - // bool ChannelConfig_get_announced_channel(const struct LDKChannelConfig *NONNULL_PTR this_ptr); - export function ChannelConfig_get_announced_channel(this_ptr: number): boolean { + // void COption_FilterZ_free(struct LDKCOption_FilterZ _res); + export function COption_FilterZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelConfig_get_announced_channel(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_COption_FilterZ_free(_res); + // debug statements here } - // void ChannelConfig_set_announced_channel(struct LDKChannelConfig *NONNULL_PTR this_ptr, bool val); - export function ChannelConfig_set_announced_channel(this_ptr: number, val: boolean): void { + // struct LDKCResult_LockedChannelMonitorNoneZ CResult_LockedChannelMonitorNoneZ_ok(struct LDKLockedChannelMonitor o); + export function CResult_LockedChannelMonitorNoneZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelConfig_set_announced_channel(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_LockedChannelMonitorNoneZ_ok(o); + return nativeResponseValue; } - // bool ChannelConfig_get_commit_upfront_shutdown_pubkey(const struct LDKChannelConfig *NONNULL_PTR this_ptr); - export function ChannelConfig_get_commit_upfront_shutdown_pubkey(this_ptr: number): boolean { + // struct LDKCResult_LockedChannelMonitorNoneZ CResult_LockedChannelMonitorNoneZ_err(void); + export function CResult_LockedChannelMonitorNoneZ_err(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelConfig_get_commit_upfront_shutdown_pubkey(this_ptr); + const nativeResponseValue = wasm.TS_CResult_LockedChannelMonitorNoneZ_err(); return nativeResponseValue; } - // void ChannelConfig_set_commit_upfront_shutdown_pubkey(struct LDKChannelConfig *NONNULL_PTR this_ptr, bool val); - export function ChannelConfig_set_commit_upfront_shutdown_pubkey(this_ptr: number, val: boolean): void { + // bool CResult_LockedChannelMonitorNoneZ_is_ok(const struct LDKCResult_LockedChannelMonitorNoneZ *NONNULL_PTR o); + export function CResult_LockedChannelMonitorNoneZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelConfig_set_commit_upfront_shutdown_pubkey(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_LockedChannelMonitorNoneZ_is_ok(o); + return nativeResponseValue; } - // uint64_t ChannelConfig_get_max_dust_htlc_exposure_msat(const struct LDKChannelConfig *NONNULL_PTR this_ptr); - export function ChannelConfig_get_max_dust_htlc_exposure_msat(this_ptr: number): number { + // void CResult_LockedChannelMonitorNoneZ_free(struct LDKCResult_LockedChannelMonitorNoneZ _res); + export function CResult_LockedChannelMonitorNoneZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelConfig_get_max_dust_htlc_exposure_msat(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_LockedChannelMonitorNoneZ_free(_res); + // debug statements here } - // void ChannelConfig_set_max_dust_htlc_exposure_msat(struct LDKChannelConfig *NONNULL_PTR this_ptr, uint64_t val); - export function ChannelConfig_set_max_dust_htlc_exposure_msat(this_ptr: number, val: number): void { + // void CVec_OutPointZ_free(struct LDKCVec_OutPointZ _res); + export function CVec_OutPointZ_free(_res: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelConfig_set_max_dust_htlc_exposure_msat(this_ptr, val); + const nativeResponseValue = wasm.TS_CVec_OutPointZ_free(_res); // debug statements here } - // uint64_t ChannelConfig_get_force_close_avoidance_max_fee_satoshis(const struct LDKChannelConfig *NONNULL_PTR this_ptr); - export function ChannelConfig_get_force_close_avoidance_max_fee_satoshis(this_ptr: number): number { + // struct LDKCResult_NoneAPIErrorZ CResult_NoneAPIErrorZ_ok(void); + export function CResult_NoneAPIErrorZ_ok(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelConfig_get_force_close_avoidance_max_fee_satoshis(this_ptr); + const nativeResponseValue = wasm.TS_CResult_NoneAPIErrorZ_ok(); return nativeResponseValue; } - // void ChannelConfig_set_force_close_avoidance_max_fee_satoshis(struct LDKChannelConfig *NONNULL_PTR this_ptr, uint64_t val); - export function ChannelConfig_set_force_close_avoidance_max_fee_satoshis(this_ptr: number, val: number): void { + // struct LDKCResult_NoneAPIErrorZ CResult_NoneAPIErrorZ_err(struct LDKAPIError e); + export function CResult_NoneAPIErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelConfig_set_force_close_avoidance_max_fee_satoshis(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_NoneAPIErrorZ_err(e); + return nativeResponseValue; } - // MUST_USE_RES struct LDKChannelConfig ChannelConfig_new(uint32_t forwarding_fee_proportional_millionths_arg, uint32_t forwarding_fee_base_msat_arg, uint16_t cltv_expiry_delta_arg, bool announced_channel_arg, bool commit_upfront_shutdown_pubkey_arg, uint64_t max_dust_htlc_exposure_msat_arg, uint64_t force_close_avoidance_max_fee_satoshis_arg); - export function ChannelConfig_new(forwarding_fee_proportional_millionths_arg: number, forwarding_fee_base_msat_arg: number, cltv_expiry_delta_arg: number, announced_channel_arg: boolean, commit_upfront_shutdown_pubkey_arg: boolean, max_dust_htlc_exposure_msat_arg: number, force_close_avoidance_max_fee_satoshis_arg: number): number { + // bool CResult_NoneAPIErrorZ_is_ok(const struct LDKCResult_NoneAPIErrorZ *NONNULL_PTR o); + export function CResult_NoneAPIErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelConfig_new(forwarding_fee_proportional_millionths_arg, forwarding_fee_base_msat_arg, cltv_expiry_delta_arg, announced_channel_arg, commit_upfront_shutdown_pubkey_arg, max_dust_htlc_exposure_msat_arg, force_close_avoidance_max_fee_satoshis_arg); + const nativeResponseValue = wasm.TS_CResult_NoneAPIErrorZ_is_ok(o); return nativeResponseValue; } - // uint64_t ChannelConfig_clone_ptr(LDKChannelConfig *NONNULL_PTR arg); - export function ChannelConfig_clone_ptr(arg: number): number { + // void CResult_NoneAPIErrorZ_free(struct LDKCResult_NoneAPIErrorZ _res); + export function CResult_NoneAPIErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelConfig_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_NoneAPIErrorZ_free(_res); + // debug statements here } - // struct LDKChannelConfig ChannelConfig_clone(const struct LDKChannelConfig *NONNULL_PTR orig); - export function ChannelConfig_clone(orig: number): number { + // uint64_t CResult_NoneAPIErrorZ_clone_ptr(LDKCResult_NoneAPIErrorZ *NONNULL_PTR arg); + export function CResult_NoneAPIErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelConfig_clone(orig); + const nativeResponseValue = wasm.TS_CResult_NoneAPIErrorZ_clone_ptr(arg); return nativeResponseValue; } - // MUST_USE_RES struct LDKChannelConfig ChannelConfig_default(void); - export function ChannelConfig_default(): number { + // struct LDKCResult_NoneAPIErrorZ CResult_NoneAPIErrorZ_clone(const struct LDKCResult_NoneAPIErrorZ *NONNULL_PTR orig); + export function CResult_NoneAPIErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelConfig_default(); + const nativeResponseValue = wasm.TS_CResult_NoneAPIErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKCVec_u8Z ChannelConfig_write(const struct LDKChannelConfig *NONNULL_PTR obj); - export function ChannelConfig_write(obj: number): Uint8Array { + // struct LDKCOption_u16Z COption_u16Z_some(uint16_t o); + export function COption_u16Z_some(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelConfig_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_COption_u16Z_some(o); + return nativeResponseValue; } - // struct LDKCResult_ChannelConfigDecodeErrorZ ChannelConfig_read(struct LDKu8slice ser); - export function ChannelConfig_read(ser: Uint8Array): number { + // struct LDKCOption_u16Z COption_u16Z_none(void); + export function COption_u16Z_none(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelConfig_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_COption_u16Z_none(); return nativeResponseValue; } - // void UserConfig_free(struct LDKUserConfig this_obj); - export function UserConfig_free(this_obj: number): void { + // void COption_u16Z_free(struct LDKCOption_u16Z _res); + export function COption_u16Z_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UserConfig_free(this_obj); + const nativeResponseValue = wasm.TS_COption_u16Z_free(_res); // debug statements here } - // struct LDKChannelHandshakeConfig UserConfig_get_own_channel_config(const struct LDKUserConfig *NONNULL_PTR this_ptr); - export function UserConfig_get_own_channel_config(this_ptr: number): number { + // uint64_t COption_u16Z_clone_ptr(LDKCOption_u16Z *NONNULL_PTR arg); + export function COption_u16Z_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UserConfig_get_own_channel_config(this_ptr); + const nativeResponseValue = wasm.TS_COption_u16Z_clone_ptr(arg); return nativeResponseValue; } - // void UserConfig_set_own_channel_config(struct LDKUserConfig *NONNULL_PTR this_ptr, struct LDKChannelHandshakeConfig val); - export function UserConfig_set_own_channel_config(this_ptr: number, val: number): void { + // struct LDKCOption_u16Z COption_u16Z_clone(const struct LDKCOption_u16Z *NONNULL_PTR orig); + export function COption_u16Z_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UserConfig_set_own_channel_config(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_COption_u16Z_clone(orig); + return nativeResponseValue; } - // struct LDKChannelHandshakeLimits UserConfig_get_peer_channel_config_limits(const struct LDKUserConfig *NONNULL_PTR this_ptr); - export function UserConfig_get_peer_channel_config_limits(this_ptr: number): number { + // void CVec_CResult_NoneAPIErrorZZ_free(struct LDKCVec_CResult_NoneAPIErrorZZ _res); + export function CVec_CResult_NoneAPIErrorZZ_free(_res: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UserConfig_get_peer_channel_config_limits(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CVec_CResult_NoneAPIErrorZZ_free(_res); + // debug statements here } - // void UserConfig_set_peer_channel_config_limits(struct LDKUserConfig *NONNULL_PTR this_ptr, struct LDKChannelHandshakeLimits val); - export function UserConfig_set_peer_channel_config_limits(this_ptr: number, val: number): void { + // void CVec_APIErrorZ_free(struct LDKCVec_APIErrorZ _res); + export function CVec_APIErrorZ_free(_res: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UserConfig_set_peer_channel_config_limits(this_ptr, val); + const nativeResponseValue = wasm.TS_CVec_APIErrorZ_free(_res); // debug statements here } - // struct LDKChannelConfig UserConfig_get_channel_options(const struct LDKUserConfig *NONNULL_PTR this_ptr); - export function UserConfig_get_channel_options(this_ptr: number): number { + // struct LDKCResult__u832APIErrorZ CResult__u832APIErrorZ_ok(struct LDKThirtyTwoBytes o); + export function CResult__u832APIErrorZ_ok(o: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UserConfig_get_channel_options(this_ptr); + const nativeResponseValue = wasm.TS_CResult__u832APIErrorZ_ok(encodeUint8Array(o)); return nativeResponseValue; } - // void UserConfig_set_channel_options(struct LDKUserConfig *NONNULL_PTR this_ptr, struct LDKChannelConfig val); - export function UserConfig_set_channel_options(this_ptr: number, val: number): void { + // struct LDKCResult__u832APIErrorZ CResult__u832APIErrorZ_err(struct LDKAPIError e); + export function CResult__u832APIErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UserConfig_set_channel_options(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_CResult__u832APIErrorZ_err(e); + return nativeResponseValue; } - // bool UserConfig_get_accept_forwards_to_priv_channels(const struct LDKUserConfig *NONNULL_PTR this_ptr); - export function UserConfig_get_accept_forwards_to_priv_channels(this_ptr: number): boolean { + // bool CResult__u832APIErrorZ_is_ok(const struct LDKCResult__u832APIErrorZ *NONNULL_PTR o); + export function CResult__u832APIErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UserConfig_get_accept_forwards_to_priv_channels(this_ptr); + const nativeResponseValue = wasm.TS_CResult__u832APIErrorZ_is_ok(o); return nativeResponseValue; } - // void UserConfig_set_accept_forwards_to_priv_channels(struct LDKUserConfig *NONNULL_PTR this_ptr, bool val); - export function UserConfig_set_accept_forwards_to_priv_channels(this_ptr: number, val: boolean): void { + // void CResult__u832APIErrorZ_free(struct LDKCResult__u832APIErrorZ _res); + export function CResult__u832APIErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UserConfig_set_accept_forwards_to_priv_channels(this_ptr, val); + const nativeResponseValue = wasm.TS_CResult__u832APIErrorZ_free(_res); // debug statements here } - // bool UserConfig_get_accept_inbound_channels(const struct LDKUserConfig *NONNULL_PTR this_ptr); - export function UserConfig_get_accept_inbound_channels(this_ptr: number): boolean { + // uint64_t CResult__u832APIErrorZ_clone_ptr(LDKCResult__u832APIErrorZ *NONNULL_PTR arg); + export function CResult__u832APIErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UserConfig_get_accept_inbound_channels(this_ptr); + const nativeResponseValue = wasm.TS_CResult__u832APIErrorZ_clone_ptr(arg); return nativeResponseValue; } - // void UserConfig_set_accept_inbound_channels(struct LDKUserConfig *NONNULL_PTR this_ptr, bool val); - export function UserConfig_set_accept_inbound_channels(this_ptr: number, val: boolean): void { + // struct LDKCResult__u832APIErrorZ CResult__u832APIErrorZ_clone(const struct LDKCResult__u832APIErrorZ *NONNULL_PTR orig); + export function CResult__u832APIErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UserConfig_set_accept_inbound_channels(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_CResult__u832APIErrorZ_clone(orig); + return nativeResponseValue; } - // MUST_USE_RES struct LDKUserConfig UserConfig_new(struct LDKChannelHandshakeConfig own_channel_config_arg, struct LDKChannelHandshakeLimits peer_channel_config_limits_arg, struct LDKChannelConfig channel_options_arg, bool accept_forwards_to_priv_channels_arg, bool accept_inbound_channels_arg); - export function UserConfig_new(own_channel_config_arg: number, peer_channel_config_limits_arg: number, channel_options_arg: number, accept_forwards_to_priv_channels_arg: boolean, accept_inbound_channels_arg: boolean): number { + // struct LDKCResult_PaymentIdPaymentSendFailureZ CResult_PaymentIdPaymentSendFailureZ_ok(struct LDKThirtyTwoBytes o); + export function CResult_PaymentIdPaymentSendFailureZ_ok(o: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UserConfig_new(own_channel_config_arg, peer_channel_config_limits_arg, channel_options_arg, accept_forwards_to_priv_channels_arg, accept_inbound_channels_arg); + const nativeResponseValue = wasm.TS_CResult_PaymentIdPaymentSendFailureZ_ok(encodeUint8Array(o)); return nativeResponseValue; } - // uint64_t UserConfig_clone_ptr(LDKUserConfig *NONNULL_PTR arg); - export function UserConfig_clone_ptr(arg: number): number { + // struct LDKCResult_PaymentIdPaymentSendFailureZ CResult_PaymentIdPaymentSendFailureZ_err(struct LDKPaymentSendFailure e); + export function CResult_PaymentIdPaymentSendFailureZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UserConfig_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_PaymentIdPaymentSendFailureZ_err(e); return nativeResponseValue; } - // struct LDKUserConfig UserConfig_clone(const struct LDKUserConfig *NONNULL_PTR orig); - export function UserConfig_clone(orig: number): number { + // bool CResult_PaymentIdPaymentSendFailureZ_is_ok(const struct LDKCResult_PaymentIdPaymentSendFailureZ *NONNULL_PTR o); + export function CResult_PaymentIdPaymentSendFailureZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UserConfig_clone(orig); + const nativeResponseValue = wasm.TS_CResult_PaymentIdPaymentSendFailureZ_is_ok(o); return nativeResponseValue; } - // MUST_USE_RES struct LDKUserConfig UserConfig_default(void); - export function UserConfig_default(): number { + // void CResult_PaymentIdPaymentSendFailureZ_free(struct LDKCResult_PaymentIdPaymentSendFailureZ _res); + export function CResult_PaymentIdPaymentSendFailureZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UserConfig_default(); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_PaymentIdPaymentSendFailureZ_free(_res); + // debug statements here } - // void BestBlock_free(struct LDKBestBlock this_obj); - export function BestBlock_free(this_obj: number): void { + // uint64_t CResult_PaymentIdPaymentSendFailureZ_clone_ptr(LDKCResult_PaymentIdPaymentSendFailureZ *NONNULL_PTR arg); + export function CResult_PaymentIdPaymentSendFailureZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BestBlock_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_PaymentIdPaymentSendFailureZ_clone_ptr(arg); + return nativeResponseValue; } - // uint64_t BestBlock_clone_ptr(LDKBestBlock *NONNULL_PTR arg); - export function BestBlock_clone_ptr(arg: number): number { + // struct LDKCResult_PaymentIdPaymentSendFailureZ CResult_PaymentIdPaymentSendFailureZ_clone(const struct LDKCResult_PaymentIdPaymentSendFailureZ *NONNULL_PTR orig); + export function CResult_PaymentIdPaymentSendFailureZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BestBlock_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_PaymentIdPaymentSendFailureZ_clone(orig); return nativeResponseValue; } - // struct LDKBestBlock BestBlock_clone(const struct LDKBestBlock *NONNULL_PTR orig); - export function BestBlock_clone(orig: number): number { + // struct LDKCResult_NonePaymentSendFailureZ CResult_NonePaymentSendFailureZ_ok(void); + export function CResult_NonePaymentSendFailureZ_ok(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BestBlock_clone(orig); + const nativeResponseValue = wasm.TS_CResult_NonePaymentSendFailureZ_ok(); return nativeResponseValue; } - // MUST_USE_RES struct LDKBestBlock BestBlock_from_genesis(enum LDKNetwork network); - export function BestBlock_from_genesis(network: Network): number { + // struct LDKCResult_NonePaymentSendFailureZ CResult_NonePaymentSendFailureZ_err(struct LDKPaymentSendFailure e); + export function CResult_NonePaymentSendFailureZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BestBlock_from_genesis(network); + const nativeResponseValue = wasm.TS_CResult_NonePaymentSendFailureZ_err(e); return nativeResponseValue; } - // MUST_USE_RES struct LDKBestBlock BestBlock_new(struct LDKThirtyTwoBytes block_hash, uint32_t height); - export function BestBlock_new(block_hash: Uint8Array, height: number): number { + // bool CResult_NonePaymentSendFailureZ_is_ok(const struct LDKCResult_NonePaymentSendFailureZ *NONNULL_PTR o); + export function CResult_NonePaymentSendFailureZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BestBlock_new(encodeArray(block_hash), height); + const nativeResponseValue = wasm.TS_CResult_NonePaymentSendFailureZ_is_ok(o); return nativeResponseValue; } - // MUST_USE_RES struct LDKThirtyTwoBytes BestBlock_block_hash(const struct LDKBestBlock *NONNULL_PTR this_arg); - export function BestBlock_block_hash(this_arg: number): Uint8Array { + // void CResult_NonePaymentSendFailureZ_free(struct LDKCResult_NonePaymentSendFailureZ _res); + export function CResult_NonePaymentSendFailureZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BestBlock_block_hash(this_arg); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CResult_NonePaymentSendFailureZ_free(_res); + // debug statements here } - // MUST_USE_RES uint32_t BestBlock_height(const struct LDKBestBlock *NONNULL_PTR this_arg); - export function BestBlock_height(this_arg: number): number { + // uint64_t CResult_NonePaymentSendFailureZ_clone_ptr(LDKCResult_NonePaymentSendFailureZ *NONNULL_PTR arg); + export function CResult_NonePaymentSendFailureZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BestBlock_height(this_arg); + const nativeResponseValue = wasm.TS_CResult_NonePaymentSendFailureZ_clone_ptr(arg); return nativeResponseValue; } - // enum LDKAccessError AccessError_clone(const enum LDKAccessError *NONNULL_PTR orig); - export function AccessError_clone(orig: number): AccessError { + // struct LDKCResult_NonePaymentSendFailureZ CResult_NonePaymentSendFailureZ_clone(const struct LDKCResult_NonePaymentSendFailureZ *NONNULL_PTR orig); + export function CResult_NonePaymentSendFailureZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AccessError_clone(orig); + const nativeResponseValue = wasm.TS_CResult_NonePaymentSendFailureZ_clone(orig); return nativeResponseValue; } - // enum LDKAccessError AccessError_unknown_chain(void); - export function AccessError_unknown_chain(): AccessError { + // uint64_t C2Tuple_PaymentHashPaymentIdZ_clone_ptr(LDKC2Tuple_PaymentHashPaymentIdZ *NONNULL_PTR arg); + export function C2Tuple_PaymentHashPaymentIdZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AccessError_unknown_chain(); + const nativeResponseValue = wasm.TS_C2Tuple_PaymentHashPaymentIdZ_clone_ptr(arg); return nativeResponseValue; } - // enum LDKAccessError AccessError_unknown_tx(void); - export function AccessError_unknown_tx(): AccessError { + // struct LDKC2Tuple_PaymentHashPaymentIdZ C2Tuple_PaymentHashPaymentIdZ_clone(const struct LDKC2Tuple_PaymentHashPaymentIdZ *NONNULL_PTR orig); + export function C2Tuple_PaymentHashPaymentIdZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AccessError_unknown_tx(); + const nativeResponseValue = wasm.TS_C2Tuple_PaymentHashPaymentIdZ_clone(orig); return nativeResponseValue; } - // void Access_free(struct LDKAccess this_ptr); - export function Access_free(this_ptr: number): void { + // struct LDKC2Tuple_PaymentHashPaymentIdZ C2Tuple_PaymentHashPaymentIdZ_new(struct LDKThirtyTwoBytes a, struct LDKThirtyTwoBytes b); + export function C2Tuple_PaymentHashPaymentIdZ_new(a: Uint8Array, b: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Access_free(this_ptr); - // debug statements here + const nativeResponseValue = wasm.TS_C2Tuple_PaymentHashPaymentIdZ_new(encodeUint8Array(a), encodeUint8Array(b)); + return nativeResponseValue; } - // void Listen_free(struct LDKListen this_ptr); - export function Listen_free(this_ptr: number): void { + // void C2Tuple_PaymentHashPaymentIdZ_free(struct LDKC2Tuple_PaymentHashPaymentIdZ _res); + export function C2Tuple_PaymentHashPaymentIdZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Listen_free(this_ptr); + const nativeResponseValue = wasm.TS_C2Tuple_PaymentHashPaymentIdZ_free(_res); // debug statements here } - // void Confirm_free(struct LDKConfirm this_ptr); - export function Confirm_free(this_ptr: number): void { + // struct LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_ok(struct LDKC2Tuple_PaymentHashPaymentIdZ o); + export function CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Confirm_free(this_ptr); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_ok(o); + return nativeResponseValue; } - // enum LDKChannelMonitorUpdateErr ChannelMonitorUpdateErr_clone(const enum LDKChannelMonitorUpdateErr *NONNULL_PTR orig); - export function ChannelMonitorUpdateErr_clone(orig: number): ChannelMonitorUpdateErr { + // struct LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_err(struct LDKPaymentSendFailure e); + export function CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitorUpdateErr_clone(orig); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_err(e); return nativeResponseValue; } - // enum LDKChannelMonitorUpdateErr ChannelMonitorUpdateErr_temporary_failure(void); - export function ChannelMonitorUpdateErr_temporary_failure(): ChannelMonitorUpdateErr { + // bool CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_is_ok(const struct LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ *NONNULL_PTR o); + export function CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitorUpdateErr_temporary_failure(); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_is_ok(o); return nativeResponseValue; } - // enum LDKChannelMonitorUpdateErr ChannelMonitorUpdateErr_permanent_failure(void); - export function ChannelMonitorUpdateErr_permanent_failure(): ChannelMonitorUpdateErr { + // void CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_free(struct LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ _res); + export function CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_free(_res: number): void { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_free(_res); + // debug statements here + } + // uint64_t CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone_ptr(LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ *NONNULL_PTR arg); + export function CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitorUpdateErr_permanent_failure(); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone_ptr(arg); return nativeResponseValue; } - // void Watch_free(struct LDKWatch this_ptr); - export function Watch_free(this_ptr: number): void { + // struct LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone(const struct LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ *NONNULL_PTR orig); + export function CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Watch_free(this_ptr); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone(orig); + return nativeResponseValue; } - // void Filter_free(struct LDKFilter this_ptr); - export function Filter_free(this_ptr: number): void { + // uint64_t C2Tuple_PaymentHashPaymentSecretZ_clone_ptr(LDKC2Tuple_PaymentHashPaymentSecretZ *NONNULL_PTR arg); + export function C2Tuple_PaymentHashPaymentSecretZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Filter_free(this_ptr); - // debug statements here + const nativeResponseValue = wasm.TS_C2Tuple_PaymentHashPaymentSecretZ_clone_ptr(arg); + return nativeResponseValue; } - // void WatchedOutput_free(struct LDKWatchedOutput this_obj); - export function WatchedOutput_free(this_obj: number): void { + // struct LDKC2Tuple_PaymentHashPaymentSecretZ C2Tuple_PaymentHashPaymentSecretZ_clone(const struct LDKC2Tuple_PaymentHashPaymentSecretZ *NONNULL_PTR orig); + export function C2Tuple_PaymentHashPaymentSecretZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.WatchedOutput_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_C2Tuple_PaymentHashPaymentSecretZ_clone(orig); + return nativeResponseValue; } - // struct LDKThirtyTwoBytes WatchedOutput_get_block_hash(const struct LDKWatchedOutput *NONNULL_PTR this_ptr); - export function WatchedOutput_get_block_hash(this_ptr: number): Uint8Array { + // struct LDKC2Tuple_PaymentHashPaymentSecretZ C2Tuple_PaymentHashPaymentSecretZ_new(struct LDKThirtyTwoBytes a, struct LDKThirtyTwoBytes b); + export function C2Tuple_PaymentHashPaymentSecretZ_new(a: Uint8Array, b: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.WatchedOutput_get_block_hash(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_C2Tuple_PaymentHashPaymentSecretZ_new(encodeUint8Array(a), encodeUint8Array(b)); + return nativeResponseValue; } - // void WatchedOutput_set_block_hash(struct LDKWatchedOutput *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function WatchedOutput_set_block_hash(this_ptr: number, val: Uint8Array): void { + // void C2Tuple_PaymentHashPaymentSecretZ_free(struct LDKC2Tuple_PaymentHashPaymentSecretZ _res); + export function C2Tuple_PaymentHashPaymentSecretZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.WatchedOutput_set_block_hash(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_C2Tuple_PaymentHashPaymentSecretZ_free(_res); // debug statements here } - // struct LDKOutPoint WatchedOutput_get_outpoint(const struct LDKWatchedOutput *NONNULL_PTR this_ptr); - export function WatchedOutput_get_outpoint(this_ptr: number): number { + // struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_ok(struct LDKC2Tuple_PaymentHashPaymentSecretZ o); + export function CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.WatchedOutput_get_outpoint(this_ptr); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_ok(o); return nativeResponseValue; } - // void WatchedOutput_set_outpoint(struct LDKWatchedOutput *NONNULL_PTR this_ptr, struct LDKOutPoint val); - export function WatchedOutput_set_outpoint(this_ptr: number, val: number): void { + // struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_err(void); + export function CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_err(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.WatchedOutput_set_outpoint(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_err(); + return nativeResponseValue; } - // struct LDKu8slice WatchedOutput_get_script_pubkey(const struct LDKWatchedOutput *NONNULL_PTR this_ptr); - export function WatchedOutput_get_script_pubkey(this_ptr: number): Uint8Array { + // bool CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_is_ok(const struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ *NONNULL_PTR o); + export function CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.WatchedOutput_get_script_pubkey(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_is_ok(o); + return nativeResponseValue; } - // void WatchedOutput_set_script_pubkey(struct LDKWatchedOutput *NONNULL_PTR this_ptr, struct LDKCVec_u8Z val); - export function WatchedOutput_set_script_pubkey(this_ptr: number, val: Uint8Array): void { + // void CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_free(struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ _res); + export function CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.WatchedOutput_set_script_pubkey(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_free(_res); // debug statements here } - // MUST_USE_RES struct LDKWatchedOutput WatchedOutput_new(struct LDKThirtyTwoBytes block_hash_arg, struct LDKOutPoint outpoint_arg, struct LDKCVec_u8Z script_pubkey_arg); - export function WatchedOutput_new(block_hash_arg: Uint8Array, outpoint_arg: number, script_pubkey_arg: Uint8Array): number { + // uint64_t CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone_ptr(LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ *NONNULL_PTR arg); + export function CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.WatchedOutput_new(encodeArray(block_hash_arg), outpoint_arg, encodeArray(script_pubkey_arg)); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone_ptr(arg); return nativeResponseValue; } - // uint64_t WatchedOutput_clone_ptr(LDKWatchedOutput *NONNULL_PTR arg); - export function WatchedOutput_clone_ptr(arg: number): number { + // struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone(const struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ *NONNULL_PTR orig); + export function CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.WatchedOutput_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone(orig); return nativeResponseValue; } - // struct LDKWatchedOutput WatchedOutput_clone(const struct LDKWatchedOutput *NONNULL_PTR orig); - export function WatchedOutput_clone(orig: number): number { + // struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_ok(struct LDKC2Tuple_PaymentHashPaymentSecretZ o); + export function CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.WatchedOutput_clone(orig); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_ok(o); return nativeResponseValue; } - // uint64_t WatchedOutput_hash(const struct LDKWatchedOutput *NONNULL_PTR o); - export function WatchedOutput_hash(o: number): number { + // struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_err(struct LDKAPIError e); + export function CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.WatchedOutput_hash(o); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_err(e); return nativeResponseValue; } - // void BroadcasterInterface_free(struct LDKBroadcasterInterface this_ptr); - export function BroadcasterInterface_free(this_ptr: number): void { + // bool CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_is_ok(const struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ *NONNULL_PTR o); + export function CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_is_ok(o: number): boolean { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_is_ok(o); + return nativeResponseValue; + } + // void CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_free(struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ _res); + export function CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BroadcasterInterface_free(this_ptr); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_free(_res); // debug statements here } - // enum LDKConfirmationTarget ConfirmationTarget_clone(const enum LDKConfirmationTarget *NONNULL_PTR orig); - export function ConfirmationTarget_clone(orig: number): ConfirmationTarget { + // uint64_t CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone_ptr(LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ *NONNULL_PTR arg); + export function CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ConfirmationTarget_clone(orig); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone_ptr(arg); return nativeResponseValue; } - // enum LDKConfirmationTarget ConfirmationTarget_background(void); - export function ConfirmationTarget_background(): ConfirmationTarget { + // struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone(const struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ *NONNULL_PTR orig); + export function CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ConfirmationTarget_background(); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone(orig); return nativeResponseValue; } - // enum LDKConfirmationTarget ConfirmationTarget_normal(void); - export function ConfirmationTarget_normal(): ConfirmationTarget { + // struct LDKCResult_PaymentSecretNoneZ CResult_PaymentSecretNoneZ_ok(struct LDKThirtyTwoBytes o); + export function CResult_PaymentSecretNoneZ_ok(o: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ConfirmationTarget_normal(); + const nativeResponseValue = wasm.TS_CResult_PaymentSecretNoneZ_ok(encodeUint8Array(o)); return nativeResponseValue; } - // enum LDKConfirmationTarget ConfirmationTarget_high_priority(void); - export function ConfirmationTarget_high_priority(): ConfirmationTarget { + // struct LDKCResult_PaymentSecretNoneZ CResult_PaymentSecretNoneZ_err(void); + export function CResult_PaymentSecretNoneZ_err(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ConfirmationTarget_high_priority(); + const nativeResponseValue = wasm.TS_CResult_PaymentSecretNoneZ_err(); return nativeResponseValue; } - // bool ConfirmationTarget_eq(const enum LDKConfirmationTarget *NONNULL_PTR a, const enum LDKConfirmationTarget *NONNULL_PTR b); - export function ConfirmationTarget_eq(a: number, b: number): boolean { + // bool CResult_PaymentSecretNoneZ_is_ok(const struct LDKCResult_PaymentSecretNoneZ *NONNULL_PTR o); + export function CResult_PaymentSecretNoneZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ConfirmationTarget_eq(a, b); + const nativeResponseValue = wasm.TS_CResult_PaymentSecretNoneZ_is_ok(o); return nativeResponseValue; } - // void FeeEstimator_free(struct LDKFeeEstimator this_ptr); - export function FeeEstimator_free(this_ptr: number): void { + // void CResult_PaymentSecretNoneZ_free(struct LDKCResult_PaymentSecretNoneZ _res); + export function CResult_PaymentSecretNoneZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FeeEstimator_free(this_ptr); + const nativeResponseValue = wasm.TS_CResult_PaymentSecretNoneZ_free(_res); // debug statements here } - // void MonitorUpdateId_free(struct LDKMonitorUpdateId this_obj); - export function MonitorUpdateId_free(this_obj: number): void { + // uint64_t CResult_PaymentSecretNoneZ_clone_ptr(LDKCResult_PaymentSecretNoneZ *NONNULL_PTR arg); + export function CResult_PaymentSecretNoneZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MonitorUpdateId_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_PaymentSecretNoneZ_clone_ptr(arg); + return nativeResponseValue; } - // uint64_t MonitorUpdateId_clone_ptr(LDKMonitorUpdateId *NONNULL_PTR arg); - export function MonitorUpdateId_clone_ptr(arg: number): number { + // struct LDKCResult_PaymentSecretNoneZ CResult_PaymentSecretNoneZ_clone(const struct LDKCResult_PaymentSecretNoneZ *NONNULL_PTR orig); + export function CResult_PaymentSecretNoneZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MonitorUpdateId_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CResult_PaymentSecretNoneZ_clone(orig); return nativeResponseValue; } - // struct LDKMonitorUpdateId MonitorUpdateId_clone(const struct LDKMonitorUpdateId *NONNULL_PTR orig); - export function MonitorUpdateId_clone(orig: number): number { + // struct LDKCResult_PaymentSecretAPIErrorZ CResult_PaymentSecretAPIErrorZ_ok(struct LDKThirtyTwoBytes o); + export function CResult_PaymentSecretAPIErrorZ_ok(o: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MonitorUpdateId_clone(orig); + const nativeResponseValue = wasm.TS_CResult_PaymentSecretAPIErrorZ_ok(encodeUint8Array(o)); return nativeResponseValue; } - // uint64_t MonitorUpdateId_hash(const struct LDKMonitorUpdateId *NONNULL_PTR o); - export function MonitorUpdateId_hash(o: number): number { + // struct LDKCResult_PaymentSecretAPIErrorZ CResult_PaymentSecretAPIErrorZ_err(struct LDKAPIError e); + export function CResult_PaymentSecretAPIErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MonitorUpdateId_hash(o); + const nativeResponseValue = wasm.TS_CResult_PaymentSecretAPIErrorZ_err(e); return nativeResponseValue; } - // bool MonitorUpdateId_eq(const struct LDKMonitorUpdateId *NONNULL_PTR a, const struct LDKMonitorUpdateId *NONNULL_PTR b); - export function MonitorUpdateId_eq(a: number, b: number): boolean { + // bool CResult_PaymentSecretAPIErrorZ_is_ok(const struct LDKCResult_PaymentSecretAPIErrorZ *NONNULL_PTR o); + export function CResult_PaymentSecretAPIErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MonitorUpdateId_eq(a, b); + const nativeResponseValue = wasm.TS_CResult_PaymentSecretAPIErrorZ_is_ok(o); return nativeResponseValue; } - // void Persist_free(struct LDKPersist this_ptr); - export function Persist_free(this_ptr: number): void { + // void CResult_PaymentSecretAPIErrorZ_free(struct LDKCResult_PaymentSecretAPIErrorZ _res); + export function CResult_PaymentSecretAPIErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Persist_free(this_ptr); + const nativeResponseValue = wasm.TS_CResult_PaymentSecretAPIErrorZ_free(_res); // debug statements here } - // void LockedChannelMonitor_free(struct LDKLockedChannelMonitor this_obj); - export function LockedChannelMonitor_free(this_obj: number): void { + // uint64_t CResult_PaymentSecretAPIErrorZ_clone_ptr(LDKCResult_PaymentSecretAPIErrorZ *NONNULL_PTR arg); + export function CResult_PaymentSecretAPIErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.LockedChannelMonitor_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_PaymentSecretAPIErrorZ_clone_ptr(arg); + return nativeResponseValue; } - // void ChainMonitor_free(struct LDKChainMonitor this_obj); - export function ChainMonitor_free(this_obj: number): void { + // struct LDKCResult_PaymentSecretAPIErrorZ CResult_PaymentSecretAPIErrorZ_clone(const struct LDKCResult_PaymentSecretAPIErrorZ *NONNULL_PTR orig); + export function CResult_PaymentSecretAPIErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChainMonitor_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_PaymentSecretAPIErrorZ_clone(orig); + return nativeResponseValue; } - // MUST_USE_RES struct LDKChainMonitor ChainMonitor_new(struct LDKCOption_FilterZ chain_source, struct LDKBroadcasterInterface broadcaster, struct LDKLogger logger, struct LDKFeeEstimator feeest, struct LDKPersist persister); - export function ChainMonitor_new(chain_source: number, broadcaster: number, logger: number, feeest: number, persister: number): number { + // struct LDKCResult_PaymentPreimageAPIErrorZ CResult_PaymentPreimageAPIErrorZ_ok(struct LDKThirtyTwoBytes o); + export function CResult_PaymentPreimageAPIErrorZ_ok(o: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChainMonitor_new(chain_source, broadcaster, logger, feeest, persister); + const nativeResponseValue = wasm.TS_CResult_PaymentPreimageAPIErrorZ_ok(encodeUint8Array(o)); return nativeResponseValue; } - // MUST_USE_RES struct LDKCVec_BalanceZ ChainMonitor_get_claimable_balances(const struct LDKChainMonitor *NONNULL_PTR this_arg, struct LDKCVec_ChannelDetailsZ ignored_channels); - export function ChainMonitor_get_claimable_balances(this_arg: number, ignored_channels: number[]): number[] { + // struct LDKCResult_PaymentPreimageAPIErrorZ CResult_PaymentPreimageAPIErrorZ_err(struct LDKAPIError e); + export function CResult_PaymentPreimageAPIErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChainMonitor_get_claimable_balances(this_arg, ignored_channels); + const nativeResponseValue = wasm.TS_CResult_PaymentPreimageAPIErrorZ_err(e); return nativeResponseValue; } - // MUST_USE_RES struct LDKCResult_LockedChannelMonitorNoneZ ChainMonitor_get_monitor(const struct LDKChainMonitor *NONNULL_PTR this_arg, struct LDKOutPoint funding_txo); - export function ChainMonitor_get_monitor(this_arg: number, funding_txo: number): number { + // bool CResult_PaymentPreimageAPIErrorZ_is_ok(const struct LDKCResult_PaymentPreimageAPIErrorZ *NONNULL_PTR o); + export function CResult_PaymentPreimageAPIErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChainMonitor_get_monitor(this_arg, funding_txo); + const nativeResponseValue = wasm.TS_CResult_PaymentPreimageAPIErrorZ_is_ok(o); return nativeResponseValue; } - // MUST_USE_RES struct LDKCVec_OutPointZ ChainMonitor_list_monitors(const struct LDKChainMonitor *NONNULL_PTR this_arg); - export function ChainMonitor_list_monitors(this_arg: number): number[] { + // void CResult_PaymentPreimageAPIErrorZ_free(struct LDKCResult_PaymentPreimageAPIErrorZ _res); + export function CResult_PaymentPreimageAPIErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChainMonitor_list_monitors(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CResult_PaymentPreimageAPIErrorZ_free(_res); + // debug statements here } - // 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); - export function ChainMonitor_channel_monitor_updated(this_arg: number, funding_txo: number, completed_update_id: number): number { + // uint64_t CResult_PaymentPreimageAPIErrorZ_clone_ptr(LDKCResult_PaymentPreimageAPIErrorZ *NONNULL_PTR arg); + export function CResult_PaymentPreimageAPIErrorZ_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChainMonitor_channel_monitor_updated(this_arg, funding_txo, completed_update_id); + const nativeResponseValue = wasm.TS_CResult_PaymentPreimageAPIErrorZ_clone_ptr(arg); return nativeResponseValue; } - // struct LDKListen ChainMonitor_as_Listen(const struct LDKChainMonitor *NONNULL_PTR this_arg); - export function ChainMonitor_as_Listen(this_arg: number): number { + // struct LDKCResult_PaymentPreimageAPIErrorZ CResult_PaymentPreimageAPIErrorZ_clone(const struct LDKCResult_PaymentPreimageAPIErrorZ *NONNULL_PTR orig); + export function CResult_PaymentPreimageAPIErrorZ_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChainMonitor_as_Listen(this_arg); + const nativeResponseValue = wasm.TS_CResult_PaymentPreimageAPIErrorZ_clone(orig); return nativeResponseValue; } - // struct LDKConfirm ChainMonitor_as_Confirm(const struct LDKChainMonitor *NONNULL_PTR this_arg); - export function ChainMonitor_as_Confirm(this_arg: number): number { + // void CVec_ChannelMonitorZ_free(struct LDKCVec_ChannelMonitorZ _res); + export function CVec_ChannelMonitorZ_free(_res: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChainMonitor_as_Confirm(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CVec_ChannelMonitorZ_free(_res); + // debug statements here } - // struct LDKWatch ChainMonitor_as_Watch(const struct LDKChainMonitor *NONNULL_PTR this_arg); - export function ChainMonitor_as_Watch(this_arg: number): number { + // struct LDKC2Tuple_BlockHashChannelManagerZ C2Tuple_BlockHashChannelManagerZ_new(struct LDKThirtyTwoBytes a, struct LDKChannelManager b); + export function C2Tuple_BlockHashChannelManagerZ_new(a: Uint8Array, b: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChainMonitor_as_Watch(this_arg); + const nativeResponseValue = wasm.TS_C2Tuple_BlockHashChannelManagerZ_new(encodeUint8Array(a), b); return nativeResponseValue; } - // struct LDKEventsProvider ChainMonitor_as_EventsProvider(const struct LDKChainMonitor *NONNULL_PTR this_arg); - export function ChainMonitor_as_EventsProvider(this_arg: number): number { + // void C2Tuple_BlockHashChannelManagerZ_free(struct LDKC2Tuple_BlockHashChannelManagerZ _res); + export function C2Tuple_BlockHashChannelManagerZ_free(_res: number): void { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_C2Tuple_BlockHashChannelManagerZ_free(_res); + // debug statements here + } + // struct LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_ok(struct LDKC2Tuple_BlockHashChannelManagerZ o); + export function CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_ok(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChainMonitor_as_EventsProvider(this_arg); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_ok(o); return nativeResponseValue; } - // void ChannelMonitorUpdate_free(struct LDKChannelMonitorUpdate this_obj); - export function ChannelMonitorUpdate_free(this_obj: number): void { + // struct LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_err(struct LDKDecodeError e); + export function CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_err(e: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitorUpdate_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_err(e); + return nativeResponseValue; } - // uint64_t ChannelMonitorUpdate_get_update_id(const struct LDKChannelMonitorUpdate *NONNULL_PTR this_ptr); - export function ChannelMonitorUpdate_get_update_id(this_ptr: number): number { + // bool CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_is_ok(const struct LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ *NONNULL_PTR o); + export function CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_is_ok(o: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitorUpdate_get_update_id(this_ptr); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_is_ok(o); return nativeResponseValue; } - // void ChannelMonitorUpdate_set_update_id(struct LDKChannelMonitorUpdate *NONNULL_PTR this_ptr, uint64_t val); - export function ChannelMonitorUpdate_set_update_id(this_ptr: number, val: number): void { + // void CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_free(struct LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ _res); + export function CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_free(_res: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitorUpdate_set_update_id(this_ptr, val); + const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_free(_res); // debug statements here } - // uint64_t ChannelMonitorUpdate_clone_ptr(LDKChannelMonitorUpdate *NONNULL_PTR arg); - export function ChannelMonitorUpdate_clone_ptr(arg: number): number { + // void PaymentPurpose_free(struct LDKPaymentPurpose this_ptr); + export function PaymentPurpose_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitorUpdate_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_PaymentPurpose_free(this_ptr); + // debug statements here } - // struct LDKChannelMonitorUpdate ChannelMonitorUpdate_clone(const struct LDKChannelMonitorUpdate *NONNULL_PTR orig); - export function ChannelMonitorUpdate_clone(orig: number): number { + // uint64_t PaymentPurpose_clone_ptr(LDKPaymentPurpose *NONNULL_PTR arg); + export function PaymentPurpose_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitorUpdate_clone(orig); + const nativeResponseValue = wasm.TS_PaymentPurpose_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCVec_u8Z ChannelMonitorUpdate_write(const struct LDKChannelMonitorUpdate *NONNULL_PTR obj); - export function ChannelMonitorUpdate_write(obj: number): Uint8Array { + // struct LDKPaymentPurpose PaymentPurpose_clone(const struct LDKPaymentPurpose *NONNULL_PTR orig); + export function PaymentPurpose_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitorUpdate_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_PaymentPurpose_clone(orig); + return nativeResponseValue; } - // struct LDKCResult_ChannelMonitorUpdateDecodeErrorZ ChannelMonitorUpdate_read(struct LDKu8slice ser); - export function ChannelMonitorUpdate_read(ser: Uint8Array): number { + // struct LDKPaymentPurpose PaymentPurpose_invoice_payment(struct LDKThirtyTwoBytes payment_preimage, struct LDKThirtyTwoBytes payment_secret); + export function PaymentPurpose_invoice_payment(payment_preimage: Uint8Array, payment_secret: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitorUpdate_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_PaymentPurpose_invoice_payment(encodeUint8Array(payment_preimage), encodeUint8Array(payment_secret)); return nativeResponseValue; } - // void MonitorEvent_free(struct LDKMonitorEvent this_ptr); - export function MonitorEvent_free(this_ptr: number): void { + // struct LDKPaymentPurpose PaymentPurpose_spontaneous_payment(struct LDKThirtyTwoBytes a); + export function PaymentPurpose_spontaneous_payment(a: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MonitorEvent_free(this_ptr); - // debug statements here + const nativeResponseValue = wasm.TS_PaymentPurpose_spontaneous_payment(encodeUint8Array(a)); + return nativeResponseValue; } - // uint64_t MonitorEvent_clone_ptr(LDKMonitorEvent *NONNULL_PTR arg); - export function MonitorEvent_clone_ptr(arg: number): number { + // void ClosureReason_free(struct LDKClosureReason this_ptr); + export function ClosureReason_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MonitorEvent_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ClosureReason_free(this_ptr); + // debug statements here } - // struct LDKMonitorEvent MonitorEvent_clone(const struct LDKMonitorEvent *NONNULL_PTR orig); - export function MonitorEvent_clone(orig: number): number { + // uint64_t ClosureReason_clone_ptr(LDKClosureReason *NONNULL_PTR arg); + export function ClosureReason_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MonitorEvent_clone(orig); + const nativeResponseValue = wasm.TS_ClosureReason_clone_ptr(arg); return nativeResponseValue; } - // struct LDKMonitorEvent MonitorEvent_htlcevent(struct LDKHTLCUpdate a); - export function MonitorEvent_htlcevent(a: number): number { + // struct LDKClosureReason ClosureReason_clone(const struct LDKClosureReason *NONNULL_PTR orig); + export function ClosureReason_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MonitorEvent_htlcevent(a); + const nativeResponseValue = wasm.TS_ClosureReason_clone(orig); return nativeResponseValue; } - // struct LDKMonitorEvent MonitorEvent_commitment_tx_confirmed(struct LDKOutPoint a); - export function MonitorEvent_commitment_tx_confirmed(a: number): number { + // struct LDKClosureReason ClosureReason_counterparty_force_closed(struct LDKStr peer_msg); + export function ClosureReason_counterparty_force_closed(peer_msg: String): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MonitorEvent_commitment_tx_confirmed(a); + const nativeResponseValue = wasm.TS_ClosureReason_counterparty_force_closed(peer_msg); return nativeResponseValue; } - // struct LDKMonitorEvent MonitorEvent_update_completed(struct LDKOutPoint funding_txo, uint64_t monitor_update_id); - export function MonitorEvent_update_completed(funding_txo: number, monitor_update_id: number): number { + // struct LDKClosureReason ClosureReason_holder_force_closed(void); + export function ClosureReason_holder_force_closed(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MonitorEvent_update_completed(funding_txo, monitor_update_id); + const nativeResponseValue = wasm.TS_ClosureReason_holder_force_closed(); return nativeResponseValue; } - // struct LDKMonitorEvent MonitorEvent_update_failed(struct LDKOutPoint a); - export function MonitorEvent_update_failed(a: number): number { + // struct LDKClosureReason ClosureReason_cooperative_closure(void); + export function ClosureReason_cooperative_closure(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MonitorEvent_update_failed(a); + const nativeResponseValue = wasm.TS_ClosureReason_cooperative_closure(); return nativeResponseValue; } - // struct LDKCVec_u8Z MonitorEvent_write(const struct LDKMonitorEvent *NONNULL_PTR obj); - export function MonitorEvent_write(obj: number): Uint8Array { + // struct LDKClosureReason ClosureReason_commitment_tx_confirmed(void); + export function ClosureReason_commitment_tx_confirmed(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MonitorEvent_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ClosureReason_commitment_tx_confirmed(); + return nativeResponseValue; } - // struct LDKCResult_COption_MonitorEventZDecodeErrorZ MonitorEvent_read(struct LDKu8slice ser); - export function MonitorEvent_read(ser: Uint8Array): number { + // struct LDKClosureReason ClosureReason_funding_timed_out(void); + export function ClosureReason_funding_timed_out(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MonitorEvent_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_ClosureReason_funding_timed_out(); return nativeResponseValue; } - // void HTLCUpdate_free(struct LDKHTLCUpdate this_obj); - export function HTLCUpdate_free(this_obj: number): void { + // struct LDKClosureReason ClosureReason_processing_error(struct LDKStr err); + export function ClosureReason_processing_error(err: String): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HTLCUpdate_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_ClosureReason_processing_error(err); + return nativeResponseValue; } - // uint64_t HTLCUpdate_clone_ptr(LDKHTLCUpdate *NONNULL_PTR arg); - export function HTLCUpdate_clone_ptr(arg: number): number { + // struct LDKClosureReason ClosureReason_disconnected_peer(void); + export function ClosureReason_disconnected_peer(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HTLCUpdate_clone_ptr(arg); + const nativeResponseValue = wasm.TS_ClosureReason_disconnected_peer(); return nativeResponseValue; } - // struct LDKHTLCUpdate HTLCUpdate_clone(const struct LDKHTLCUpdate *NONNULL_PTR orig); - export function HTLCUpdate_clone(orig: number): number { + // struct LDKClosureReason ClosureReason_outdated_channel_manager(void); + export function ClosureReason_outdated_channel_manager(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HTLCUpdate_clone(orig); + const nativeResponseValue = wasm.TS_ClosureReason_outdated_channel_manager(); return nativeResponseValue; } - // struct LDKCVec_u8Z HTLCUpdate_write(const struct LDKHTLCUpdate *NONNULL_PTR obj); - export function HTLCUpdate_write(obj: number): Uint8Array { + // struct LDKCVec_u8Z ClosureReason_write(const struct LDKClosureReason *NONNULL_PTR obj); + export function ClosureReason_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HTLCUpdate_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ClosureReason_write(obj); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCResult_HTLCUpdateDecodeErrorZ HTLCUpdate_read(struct LDKu8slice ser); - export function HTLCUpdate_read(ser: Uint8Array): number { + // struct LDKCResult_COption_ClosureReasonZDecodeErrorZ ClosureReason_read(struct LDKu8slice ser); + export function ClosureReason_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HTLCUpdate_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_ClosureReason_read(encodeUint8Array(ser)); return nativeResponseValue; } - // void Balance_free(struct LDKBalance this_ptr); - export function Balance_free(this_ptr: number): void { + // void Event_free(struct LDKEvent this_ptr); + export function Event_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Balance_free(this_ptr); + const nativeResponseValue = wasm.TS_Event_free(this_ptr); // debug statements here } - // uint64_t Balance_clone_ptr(LDKBalance *NONNULL_PTR arg); - export function Balance_clone_ptr(arg: number): number { + // uint64_t Event_clone_ptr(LDKEvent *NONNULL_PTR arg); + export function Event_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Balance_clone_ptr(arg); + const nativeResponseValue = wasm.TS_Event_clone_ptr(arg); return nativeResponseValue; } - // struct LDKBalance Balance_clone(const struct LDKBalance *NONNULL_PTR orig); - export function Balance_clone(orig: number): number { + // struct LDKEvent Event_clone(const struct LDKEvent *NONNULL_PTR orig); + export function Event_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Balance_clone(orig); + const nativeResponseValue = wasm.TS_Event_clone(orig); return nativeResponseValue; } - // struct LDKBalance Balance_claimable_on_channel_close(uint64_t claimable_amount_satoshis); - export function Balance_claimable_on_channel_close(claimable_amount_satoshis: number): number { + // struct LDKEvent Event_funding_generation_ready(struct LDKThirtyTwoBytes temporary_channel_id, uint64_t channel_value_satoshis, struct LDKCVec_u8Z output_script, uint64_t user_channel_id); + export function Event_funding_generation_ready(temporary_channel_id: Uint8Array, channel_value_satoshis: number, output_script: Uint8Array, user_channel_id: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Balance_claimable_on_channel_close(claimable_amount_satoshis); + const nativeResponseValue = wasm.TS_Event_funding_generation_ready(encodeUint8Array(temporary_channel_id), channel_value_satoshis, encodeUint8Array(output_script), user_channel_id); return nativeResponseValue; } - // struct LDKBalance Balance_claimable_awaiting_confirmations(uint64_t claimable_amount_satoshis, uint32_t confirmation_height); - export function Balance_claimable_awaiting_confirmations(claimable_amount_satoshis: number, confirmation_height: number): number { + // struct LDKEvent Event_payment_received(struct LDKThirtyTwoBytes payment_hash, uint64_t amt, struct LDKPaymentPurpose purpose); + export function Event_payment_received(payment_hash: Uint8Array, amt: number, purpose: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Balance_claimable_awaiting_confirmations(claimable_amount_satoshis, confirmation_height); + const nativeResponseValue = wasm.TS_Event_payment_received(encodeUint8Array(payment_hash), amt, purpose); return nativeResponseValue; } - // struct LDKBalance Balance_contentious_claimable(uint64_t claimable_amount_satoshis, uint32_t timeout_height); - export function Balance_contentious_claimable(claimable_amount_satoshis: number, timeout_height: number): number { + // struct LDKEvent Event_payment_sent(struct LDKThirtyTwoBytes payment_id, struct LDKThirtyTwoBytes payment_preimage, struct LDKThirtyTwoBytes payment_hash, struct LDKCOption_u64Z fee_paid_msat); + export function Event_payment_sent(payment_id: Uint8Array, payment_preimage: Uint8Array, payment_hash: Uint8Array, fee_paid_msat: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Balance_contentious_claimable(claimable_amount_satoshis, timeout_height); + const nativeResponseValue = wasm.TS_Event_payment_sent(encodeUint8Array(payment_id), encodeUint8Array(payment_preimage), encodeUint8Array(payment_hash), fee_paid_msat); return nativeResponseValue; } - // struct LDKBalance Balance_maybe_claimable_htlcawaiting_timeout(uint64_t claimable_amount_satoshis, uint32_t claimable_height); - export function Balance_maybe_claimable_htlcawaiting_timeout(claimable_amount_satoshis: number, claimable_height: number): number { + // 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); + export function Event_payment_path_failed(payment_id: Uint8Array, payment_hash: Uint8Array, rejected_by_dest: boolean, network_update: number, all_paths_failed: boolean, path: number[], short_channel_id: number, retry: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Balance_maybe_claimable_htlcawaiting_timeout(claimable_amount_satoshis, claimable_height); + const nativeResponseValue = wasm.TS_Event_payment_path_failed(encodeUint8Array(payment_id), encodeUint8Array(payment_hash), rejected_by_dest, network_update, all_paths_failed, path, short_channel_id, retry); return nativeResponseValue; } - // bool Balance_eq(const struct LDKBalance *NONNULL_PTR a, const struct LDKBalance *NONNULL_PTR b); - export function Balance_eq(a: number, b: number): boolean { + // struct LDKEvent Event_payment_failed(struct LDKThirtyTwoBytes payment_id, struct LDKThirtyTwoBytes payment_hash); + export function Event_payment_failed(payment_id: Uint8Array, payment_hash: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Balance_eq(a, b); + const nativeResponseValue = wasm.TS_Event_payment_failed(encodeUint8Array(payment_id), encodeUint8Array(payment_hash)); return nativeResponseValue; } - // void ChannelMonitor_free(struct LDKChannelMonitor this_obj); - export function ChannelMonitor_free(this_obj: number): void { + // struct LDKEvent Event_pending_htlcs_forwardable(uint64_t time_forwardable); + export function Event_pending_htlcs_forwardable(time_forwardable: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitor_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_Event_pending_htlcs_forwardable(time_forwardable); + return nativeResponseValue; } - // uint64_t ChannelMonitor_clone_ptr(LDKChannelMonitor *NONNULL_PTR arg); - export function ChannelMonitor_clone_ptr(arg: number): number { + // struct LDKEvent Event_spendable_outputs(struct LDKCVec_SpendableOutputDescriptorZ outputs); + export function Event_spendable_outputs(outputs: number[]): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitor_clone_ptr(arg); + const nativeResponseValue = wasm.TS_Event_spendable_outputs(outputs); return nativeResponseValue; } - // struct LDKChannelMonitor ChannelMonitor_clone(const struct LDKChannelMonitor *NONNULL_PTR orig); - export function ChannelMonitor_clone(orig: number): number { + // struct LDKEvent Event_payment_forwarded(struct LDKCOption_u64Z fee_earned_msat, bool claim_from_onchain_tx); + export function Event_payment_forwarded(fee_earned_msat: number, claim_from_onchain_tx: boolean): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitor_clone(orig); + const nativeResponseValue = wasm.TS_Event_payment_forwarded(fee_earned_msat, claim_from_onchain_tx); return nativeResponseValue; } - // struct LDKCVec_u8Z ChannelMonitor_write(const struct LDKChannelMonitor *NONNULL_PTR obj); - export function ChannelMonitor_write(obj: number): Uint8Array { + // struct LDKEvent Event_channel_closed(struct LDKThirtyTwoBytes channel_id, uint64_t user_channel_id, struct LDKClosureReason reason); + export function Event_channel_closed(channel_id: Uint8Array, user_channel_id: number, reason: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitor_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_Event_channel_closed(encodeUint8Array(channel_id), user_channel_id, reason); + return nativeResponseValue; } - // MUST_USE_RES struct LDKCResult_NoneNoneZ ChannelMonitor_update_monitor(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const struct LDKChannelMonitorUpdate *NONNULL_PTR updates, const struct LDKBroadcasterInterface *NONNULL_PTR broadcaster, const struct LDKFeeEstimator *NONNULL_PTR fee_estimator, const struct LDKLogger *NONNULL_PTR logger); - export function ChannelMonitor_update_monitor(this_arg: number, updates: number, broadcaster: number, fee_estimator: number, logger: number): number { + // struct LDKEvent Event_discard_funding(struct LDKThirtyTwoBytes channel_id, struct LDKTransaction transaction); + export function Event_discard_funding(channel_id: Uint8Array, transaction: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitor_update_monitor(this_arg, updates, broadcaster, fee_estimator, logger); + const nativeResponseValue = wasm.TS_Event_discard_funding(encodeUint8Array(channel_id), encodeUint8Array(transaction)); return nativeResponseValue; } - // MUST_USE_RES uint64_t ChannelMonitor_get_latest_update_id(const struct LDKChannelMonitor *NONNULL_PTR this_arg); - export function ChannelMonitor_get_latest_update_id(this_arg: number): number { + // struct LDKEvent Event_payment_path_successful(struct LDKThirtyTwoBytes payment_id, struct LDKThirtyTwoBytes payment_hash, struct LDKCVec_RouteHopZ path); + export function Event_payment_path_successful(payment_id: Uint8Array, payment_hash: Uint8Array, path: number[]): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitor_get_latest_update_id(this_arg); + const nativeResponseValue = wasm.TS_Event_payment_path_successful(encodeUint8Array(payment_id), encodeUint8Array(payment_hash), path); return nativeResponseValue; } - // MUST_USE_RES struct LDKC2Tuple_OutPointScriptZ ChannelMonitor_get_funding_txo(const struct LDKChannelMonitor *NONNULL_PTR this_arg); - export function ChannelMonitor_get_funding_txo(this_arg: number): number { + // struct LDKCVec_u8Z Event_write(const struct LDKEvent *NONNULL_PTR obj); + export function Event_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitor_get_funding_txo(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Event_write(obj); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES struct LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ ChannelMonitor_get_outputs_to_watch(const struct LDKChannelMonitor *NONNULL_PTR this_arg); - export function ChannelMonitor_get_outputs_to_watch(this_arg: number): number[] { + // struct LDKCResult_COption_EventZDecodeErrorZ Event_read(struct LDKu8slice ser); + export function Event_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitor_get_outputs_to_watch(this_arg); + const nativeResponseValue = wasm.TS_Event_read(encodeUint8Array(ser)); return nativeResponseValue; } - // void ChannelMonitor_load_outputs_to_watch(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const struct LDKFilter *NONNULL_PTR filter); - export function ChannelMonitor_load_outputs_to_watch(this_arg: number, filter: number): void { + // void MessageSendEvent_free(struct LDKMessageSendEvent this_ptr); + export function MessageSendEvent_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitor_load_outputs_to_watch(this_arg, filter); + const nativeResponseValue = wasm.TS_MessageSendEvent_free(this_ptr); // debug statements here } - // MUST_USE_RES struct LDKCVec_MonitorEventZ ChannelMonitor_get_and_clear_pending_monitor_events(const struct LDKChannelMonitor *NONNULL_PTR this_arg); - export function ChannelMonitor_get_and_clear_pending_monitor_events(this_arg: number): number[] { + // uint64_t MessageSendEvent_clone_ptr(LDKMessageSendEvent *NONNULL_PTR arg); + export function MessageSendEvent_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitor_get_and_clear_pending_monitor_events(this_arg); + const nativeResponseValue = wasm.TS_MessageSendEvent_clone_ptr(arg); return nativeResponseValue; } - // MUST_USE_RES struct LDKCVec_EventZ ChannelMonitor_get_and_clear_pending_events(const struct LDKChannelMonitor *NONNULL_PTR this_arg); - export function ChannelMonitor_get_and_clear_pending_events(this_arg: number): number[] { + // struct LDKMessageSendEvent MessageSendEvent_clone(const struct LDKMessageSendEvent *NONNULL_PTR orig); + export function MessageSendEvent_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitor_get_and_clear_pending_events(this_arg); + const nativeResponseValue = wasm.TS_MessageSendEvent_clone(orig); return nativeResponseValue; } - // MUST_USE_RES struct LDKCVec_TransactionZ ChannelMonitor_get_latest_holder_commitment_txn(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const struct LDKLogger *NONNULL_PTR logger); - export function ChannelMonitor_get_latest_holder_commitment_txn(this_arg: number, logger: number): Uint8Array[] { + // struct LDKMessageSendEvent MessageSendEvent_send_accept_channel(struct LDKPublicKey node_id, struct LDKAcceptChannel msg); + export function MessageSendEvent_send_accept_channel(node_id: Uint8Array, msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitor_get_latest_holder_commitment_txn(this_arg, logger); + const nativeResponseValue = wasm.TS_MessageSendEvent_send_accept_channel(encodeUint8Array(node_id), msg); return nativeResponseValue; } - // MUST_USE_RES struct LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ ChannelMonitor_block_connected(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const uint8_t (*header)[80], struct LDKCVec_C2Tuple_usizeTransactionZZ txdata, uint32_t height, struct LDKBroadcasterInterface broadcaster, struct LDKFeeEstimator fee_estimator, struct LDKLogger logger); - export function ChannelMonitor_block_connected(this_arg: number, header: Uint8Array, txdata: number[], height: number, broadcaster: number, fee_estimator: number, logger: number): number[] { + // struct LDKMessageSendEvent MessageSendEvent_send_open_channel(struct LDKPublicKey node_id, struct LDKOpenChannel msg); + export function MessageSendEvent_send_open_channel(node_id: Uint8Array, msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitor_block_connected(this_arg, encodeArray(header), txdata, height, broadcaster, fee_estimator, logger); + const nativeResponseValue = wasm.TS_MessageSendEvent_send_open_channel(encodeUint8Array(node_id), msg); return nativeResponseValue; } - // void ChannelMonitor_block_disconnected(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const uint8_t (*header)[80], uint32_t height, struct LDKBroadcasterInterface broadcaster, struct LDKFeeEstimator fee_estimator, struct LDKLogger logger); - export function ChannelMonitor_block_disconnected(this_arg: number, header: Uint8Array, height: number, broadcaster: number, fee_estimator: number, logger: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.ChannelMonitor_block_disconnected(this_arg, encodeArray(header), height, broadcaster, fee_estimator, logger); - // debug statements here - } - // MUST_USE_RES struct LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ ChannelMonitor_transactions_confirmed(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const uint8_t (*header)[80], struct LDKCVec_C2Tuple_usizeTransactionZZ txdata, uint32_t height, struct LDKBroadcasterInterface broadcaster, struct LDKFeeEstimator fee_estimator, struct LDKLogger logger); - export function ChannelMonitor_transactions_confirmed(this_arg: number, header: Uint8Array, txdata: number[], height: number, broadcaster: number, fee_estimator: number, logger: number): number[] { + // struct LDKMessageSendEvent MessageSendEvent_send_funding_created(struct LDKPublicKey node_id, struct LDKFundingCreated msg); + export function MessageSendEvent_send_funding_created(node_id: Uint8Array, msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitor_transactions_confirmed(this_arg, encodeArray(header), txdata, height, broadcaster, fee_estimator, logger); + const nativeResponseValue = wasm.TS_MessageSendEvent_send_funding_created(encodeUint8Array(node_id), msg); return nativeResponseValue; } - // void ChannelMonitor_transaction_unconfirmed(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const uint8_t (*txid)[32], struct LDKBroadcasterInterface broadcaster, struct LDKFeeEstimator fee_estimator, struct LDKLogger logger); - export function ChannelMonitor_transaction_unconfirmed(this_arg: number, txid: Uint8Array, broadcaster: number, fee_estimator: number, logger: number): void { + // struct LDKMessageSendEvent MessageSendEvent_send_funding_signed(struct LDKPublicKey node_id, struct LDKFundingSigned msg); + export function MessageSendEvent_send_funding_signed(node_id: Uint8Array, msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitor_transaction_unconfirmed(this_arg, encodeArray(txid), broadcaster, fee_estimator, logger); - // debug statements here + const nativeResponseValue = wasm.TS_MessageSendEvent_send_funding_signed(encodeUint8Array(node_id), msg); + return nativeResponseValue; } - // MUST_USE_RES struct LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ ChannelMonitor_best_block_updated(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const uint8_t (*header)[80], uint32_t height, struct LDKBroadcasterInterface broadcaster, struct LDKFeeEstimator fee_estimator, struct LDKLogger logger); - export function ChannelMonitor_best_block_updated(this_arg: number, header: Uint8Array, height: number, broadcaster: number, fee_estimator: number, logger: number): number[] { + // struct LDKMessageSendEvent MessageSendEvent_send_funding_locked(struct LDKPublicKey node_id, struct LDKFundingLocked msg); + export function MessageSendEvent_send_funding_locked(node_id: Uint8Array, msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitor_best_block_updated(this_arg, encodeArray(header), height, broadcaster, fee_estimator, logger); + const nativeResponseValue = wasm.TS_MessageSendEvent_send_funding_locked(encodeUint8Array(node_id), msg); return nativeResponseValue; } - // MUST_USE_RES struct LDKCVec_TxidZ ChannelMonitor_get_relevant_txids(const struct LDKChannelMonitor *NONNULL_PTR this_arg); - export function ChannelMonitor_get_relevant_txids(this_arg: number): Uint8Array[] { + // struct LDKMessageSendEvent MessageSendEvent_send_announcement_signatures(struct LDKPublicKey node_id, struct LDKAnnouncementSignatures msg); + export function MessageSendEvent_send_announcement_signatures(node_id: Uint8Array, msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitor_get_relevant_txids(this_arg); + const nativeResponseValue = wasm.TS_MessageSendEvent_send_announcement_signatures(encodeUint8Array(node_id), msg); return nativeResponseValue; } - // MUST_USE_RES struct LDKBestBlock ChannelMonitor_current_best_block(const struct LDKChannelMonitor *NONNULL_PTR this_arg); - export function ChannelMonitor_current_best_block(this_arg: number): number { + // struct LDKMessageSendEvent MessageSendEvent_update_htlcs(struct LDKPublicKey node_id, struct LDKCommitmentUpdate updates); + export function MessageSendEvent_update_htlcs(node_id: Uint8Array, updates: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitor_current_best_block(this_arg); + const nativeResponseValue = wasm.TS_MessageSendEvent_update_htlcs(encodeUint8Array(node_id), updates); return nativeResponseValue; } - // MUST_USE_RES struct LDKCVec_BalanceZ ChannelMonitor_get_claimable_balances(const struct LDKChannelMonitor *NONNULL_PTR this_arg); - export function ChannelMonitor_get_claimable_balances(this_arg: number): number[] { + // struct LDKMessageSendEvent MessageSendEvent_send_revoke_and_ack(struct LDKPublicKey node_id, struct LDKRevokeAndACK msg); + export function MessageSendEvent_send_revoke_and_ack(node_id: Uint8Array, msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMonitor_get_claimable_balances(this_arg); + const nativeResponseValue = wasm.TS_MessageSendEvent_send_revoke_and_ack(encodeUint8Array(node_id), msg); return nativeResponseValue; } - // struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ C2Tuple_BlockHashChannelMonitorZ_read(struct LDKu8slice ser, const struct LDKKeysInterface *NONNULL_PTR arg); - export function C2Tuple_BlockHashChannelMonitorZ_read(ser: Uint8Array, arg: number): number { + // struct LDKMessageSendEvent MessageSendEvent_send_closing_signed(struct LDKPublicKey node_id, struct LDKClosingSigned msg); + export function MessageSendEvent_send_closing_signed(node_id: Uint8Array, msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_BlockHashChannelMonitorZ_read(encodeArray(ser), arg); + const nativeResponseValue = wasm.TS_MessageSendEvent_send_closing_signed(encodeUint8Array(node_id), msg); return nativeResponseValue; } - // void OutPoint_free(struct LDKOutPoint this_obj); - export function OutPoint_free(this_obj: number): void { + // struct LDKMessageSendEvent MessageSendEvent_send_shutdown(struct LDKPublicKey node_id, struct LDKShutdown msg); + export function MessageSendEvent_send_shutdown(node_id: Uint8Array, msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OutPoint_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_MessageSendEvent_send_shutdown(encodeUint8Array(node_id), msg); + return nativeResponseValue; } - // const uint8_t (*OutPoint_get_txid(const struct LDKOutPoint *NONNULL_PTR this_ptr))[32]; - export function OutPoint_get_txid(this_ptr: number): Uint8Array { + // struct LDKMessageSendEvent MessageSendEvent_send_channel_reestablish(struct LDKPublicKey node_id, struct LDKChannelReestablish msg); + export function MessageSendEvent_send_channel_reestablish(node_id: Uint8Array, msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OutPoint_get_txid(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_MessageSendEvent_send_channel_reestablish(encodeUint8Array(node_id), msg); + return nativeResponseValue; } - // void OutPoint_set_txid(struct LDKOutPoint *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function OutPoint_set_txid(this_ptr: number, val: Uint8Array): void { + // struct LDKMessageSendEvent MessageSendEvent_broadcast_channel_announcement(struct LDKChannelAnnouncement msg, struct LDKChannelUpdate update_msg); + export function MessageSendEvent_broadcast_channel_announcement(msg: number, update_msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OutPoint_set_txid(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_MessageSendEvent_broadcast_channel_announcement(msg, update_msg); + return nativeResponseValue; } - // uint16_t OutPoint_get_index(const struct LDKOutPoint *NONNULL_PTR this_ptr); - export function OutPoint_get_index(this_ptr: number): number { + // struct LDKMessageSendEvent MessageSendEvent_broadcast_node_announcement(struct LDKNodeAnnouncement msg); + export function MessageSendEvent_broadcast_node_announcement(msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OutPoint_get_index(this_ptr); + const nativeResponseValue = wasm.TS_MessageSendEvent_broadcast_node_announcement(msg); return nativeResponseValue; } - // void OutPoint_set_index(struct LDKOutPoint *NONNULL_PTR this_ptr, uint16_t val); - export function OutPoint_set_index(this_ptr: number, val: number): void { + // struct LDKMessageSendEvent MessageSendEvent_broadcast_channel_update(struct LDKChannelUpdate msg); + export function MessageSendEvent_broadcast_channel_update(msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OutPoint_set_index(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_MessageSendEvent_broadcast_channel_update(msg); + return nativeResponseValue; } - // MUST_USE_RES struct LDKOutPoint OutPoint_new(struct LDKThirtyTwoBytes txid_arg, uint16_t index_arg); - export function OutPoint_new(txid_arg: Uint8Array, index_arg: number): number { + // struct LDKMessageSendEvent MessageSendEvent_send_channel_update(struct LDKPublicKey node_id, struct LDKChannelUpdate msg); + export function MessageSendEvent_send_channel_update(node_id: Uint8Array, msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OutPoint_new(encodeArray(txid_arg), index_arg); + const nativeResponseValue = wasm.TS_MessageSendEvent_send_channel_update(encodeUint8Array(node_id), msg); return nativeResponseValue; } - // uint64_t OutPoint_clone_ptr(LDKOutPoint *NONNULL_PTR arg); - export function OutPoint_clone_ptr(arg: number): number { + // struct LDKMessageSendEvent MessageSendEvent_handle_error(struct LDKPublicKey node_id, struct LDKErrorAction action); + export function MessageSendEvent_handle_error(node_id: Uint8Array, action: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OutPoint_clone_ptr(arg); + const nativeResponseValue = wasm.TS_MessageSendEvent_handle_error(encodeUint8Array(node_id), action); return nativeResponseValue; } - // struct LDKOutPoint OutPoint_clone(const struct LDKOutPoint *NONNULL_PTR orig); - export function OutPoint_clone(orig: number): number { + // struct LDKMessageSendEvent MessageSendEvent_send_channel_range_query(struct LDKPublicKey node_id, struct LDKQueryChannelRange msg); + export function MessageSendEvent_send_channel_range_query(node_id: Uint8Array, msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OutPoint_clone(orig); + const nativeResponseValue = wasm.TS_MessageSendEvent_send_channel_range_query(encodeUint8Array(node_id), msg); return nativeResponseValue; } - // bool OutPoint_eq(const struct LDKOutPoint *NONNULL_PTR a, const struct LDKOutPoint *NONNULL_PTR b); - export function OutPoint_eq(a: number, b: number): boolean { + // struct LDKMessageSendEvent MessageSendEvent_send_short_ids_query(struct LDKPublicKey node_id, struct LDKQueryShortChannelIds msg); + export function MessageSendEvent_send_short_ids_query(node_id: Uint8Array, msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OutPoint_eq(a, b); + const nativeResponseValue = wasm.TS_MessageSendEvent_send_short_ids_query(encodeUint8Array(node_id), msg); return nativeResponseValue; } - // uint64_t OutPoint_hash(const struct LDKOutPoint *NONNULL_PTR o); - export function OutPoint_hash(o: number): number { + // struct LDKMessageSendEvent MessageSendEvent_send_reply_channel_range(struct LDKPublicKey node_id, struct LDKReplyChannelRange msg); + export function MessageSendEvent_send_reply_channel_range(node_id: Uint8Array, msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OutPoint_hash(o); + const nativeResponseValue = wasm.TS_MessageSendEvent_send_reply_channel_range(encodeUint8Array(node_id), msg); return nativeResponseValue; } - // MUST_USE_RES struct LDKThirtyTwoBytes OutPoint_to_channel_id(const struct LDKOutPoint *NONNULL_PTR this_arg); - export function OutPoint_to_channel_id(this_arg: number): Uint8Array { + // void MessageSendEventsProvider_free(struct LDKMessageSendEventsProvider this_ptr); + export function MessageSendEventsProvider_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OutPoint_to_channel_id(this_arg); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_MessageSendEventsProvider_free(this_ptr); + // debug statements here } - // struct LDKCVec_u8Z OutPoint_write(const struct LDKOutPoint *NONNULL_PTR obj); - export function OutPoint_write(obj: number): Uint8Array { + // void EventsProvider_free(struct LDKEventsProvider this_ptr); + export function EventsProvider_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OutPoint_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_EventsProvider_free(this_ptr); + // debug statements here } - // struct LDKCResult_OutPointDecodeErrorZ OutPoint_read(struct LDKu8slice ser); - export function OutPoint_read(ser: Uint8Array): number { + // void EventHandler_free(struct LDKEventHandler this_ptr); + export function EventHandler_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OutPoint_read(encodeArray(ser)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_EventHandler_free(this_ptr); + // debug statements here } - // void DelayedPaymentOutputDescriptor_free(struct LDKDelayedPaymentOutputDescriptor this_obj); - export function DelayedPaymentOutputDescriptor_free(this_obj: number): void { + // void APIError_free(struct LDKAPIError this_ptr); + export function APIError_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DelayedPaymentOutputDescriptor_free(this_obj); + const nativeResponseValue = wasm.TS_APIError_free(this_ptr); // debug statements here } - // struct LDKOutPoint DelayedPaymentOutputDescriptor_get_outpoint(const struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr); - export function DelayedPaymentOutputDescriptor_get_outpoint(this_ptr: number): number { + // uint64_t APIError_clone_ptr(LDKAPIError *NONNULL_PTR arg); + export function APIError_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DelayedPaymentOutputDescriptor_get_outpoint(this_ptr); + const nativeResponseValue = wasm.TS_APIError_clone_ptr(arg); return nativeResponseValue; } - // void DelayedPaymentOutputDescriptor_set_outpoint(struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr, struct LDKOutPoint val); - export function DelayedPaymentOutputDescriptor_set_outpoint(this_ptr: number, val: number): void { + // struct LDKAPIError APIError_clone(const struct LDKAPIError *NONNULL_PTR orig); + export function APIError_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DelayedPaymentOutputDescriptor_set_outpoint(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_APIError_clone(orig); + return nativeResponseValue; } - // struct LDKPublicKey DelayedPaymentOutputDescriptor_get_per_commitment_point(const struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr); - export function DelayedPaymentOutputDescriptor_get_per_commitment_point(this_ptr: number): Uint8Array { + // struct LDKAPIError APIError_apimisuse_error(struct LDKStr err); + export function APIError_apimisuse_error(err: String): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DelayedPaymentOutputDescriptor_get_per_commitment_point(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_APIError_apimisuse_error(err); + return nativeResponseValue; } - // void DelayedPaymentOutputDescriptor_set_per_commitment_point(struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function DelayedPaymentOutputDescriptor_set_per_commitment_point(this_ptr: number, val: Uint8Array): void { + // struct LDKAPIError APIError_fee_rate_too_high(struct LDKStr err, uint32_t feerate); + export function APIError_fee_rate_too_high(err: String, feerate: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DelayedPaymentOutputDescriptor_set_per_commitment_point(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_APIError_fee_rate_too_high(err, feerate); + return nativeResponseValue; } - // uint16_t DelayedPaymentOutputDescriptor_get_to_self_delay(const struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr); - export function DelayedPaymentOutputDescriptor_get_to_self_delay(this_ptr: number): number { + // struct LDKAPIError APIError_route_error(struct LDKStr err); + export function APIError_route_error(err: String): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DelayedPaymentOutputDescriptor_get_to_self_delay(this_ptr); + const nativeResponseValue = wasm.TS_APIError_route_error(err); return nativeResponseValue; } - // void DelayedPaymentOutputDescriptor_set_to_self_delay(struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr, uint16_t val); - export function DelayedPaymentOutputDescriptor_set_to_self_delay(this_ptr: number, val: number): void { + // struct LDKAPIError APIError_channel_unavailable(struct LDKStr err); + export function APIError_channel_unavailable(err: String): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DelayedPaymentOutputDescriptor_set_to_self_delay(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_APIError_channel_unavailable(err); + return nativeResponseValue; } - // void DelayedPaymentOutputDescriptor_set_output(struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr, struct LDKTxOut val); - export function DelayedPaymentOutputDescriptor_set_output(this_ptr: number, val: number): void { + // struct LDKAPIError APIError_monitor_update_failed(void); + export function APIError_monitor_update_failed(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DelayedPaymentOutputDescriptor_set_output(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_APIError_monitor_update_failed(); + return nativeResponseValue; } - // struct LDKPublicKey DelayedPaymentOutputDescriptor_get_revocation_pubkey(const struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr); - export function DelayedPaymentOutputDescriptor_get_revocation_pubkey(this_ptr: number): Uint8Array { + // struct LDKAPIError APIError_incompatible_shutdown_script(struct LDKShutdownScript script); + export function APIError_incompatible_shutdown_script(script: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DelayedPaymentOutputDescriptor_get_revocation_pubkey(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_APIError_incompatible_shutdown_script(script); + return nativeResponseValue; } - // void DelayedPaymentOutputDescriptor_set_revocation_pubkey(struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function DelayedPaymentOutputDescriptor_set_revocation_pubkey(this_ptr: number, val: Uint8Array): void { + // struct LDKCResult_StringErrorZ sign(struct LDKu8slice msg, const uint8_t (*sk)[32]); + export function sign(msg: Uint8Array, sk: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DelayedPaymentOutputDescriptor_set_revocation_pubkey(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_sign(encodeUint8Array(msg), encodeUint8Array(sk)); + return nativeResponseValue; } - // const uint8_t (*DelayedPaymentOutputDescriptor_get_channel_keys_id(const struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr))[32]; - export function DelayedPaymentOutputDescriptor_get_channel_keys_id(this_ptr: number): Uint8Array { + // struct LDKCResult_PublicKeyErrorZ recover_pk(struct LDKu8slice msg, struct LDKStr sig); + export function recover_pk(msg: Uint8Array, sig: String): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DelayedPaymentOutputDescriptor_get_channel_keys_id(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_recover_pk(encodeUint8Array(msg), sig); + return nativeResponseValue; } - // void DelayedPaymentOutputDescriptor_set_channel_keys_id(struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function DelayedPaymentOutputDescriptor_set_channel_keys_id(this_ptr: number, val: Uint8Array): void { + // bool verify(struct LDKu8slice msg, struct LDKStr sig, struct LDKPublicKey pk); + export function verify(msg: Uint8Array, sig: String, pk: Uint8Array): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DelayedPaymentOutputDescriptor_set_channel_keys_id(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_verify(encodeUint8Array(msg), sig, encodeUint8Array(pk)); + return nativeResponseValue; } - // uint64_t DelayedPaymentOutputDescriptor_get_channel_value_satoshis(const struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr); - export function DelayedPaymentOutputDescriptor_get_channel_value_satoshis(this_ptr: number): number { + // enum LDKLevel Level_clone(const enum LDKLevel *NONNULL_PTR orig); + export function Level_clone(orig: number): Level { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DelayedPaymentOutputDescriptor_get_channel_value_satoshis(this_ptr); + const nativeResponseValue = wasm.TS_Level_clone(orig); return nativeResponseValue; } - // void DelayedPaymentOutputDescriptor_set_channel_value_satoshis(struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr, uint64_t val); - export function DelayedPaymentOutputDescriptor_set_channel_value_satoshis(this_ptr: number, val: number): void { + // enum LDKLevel Level_gossip(void); + export function Level_gossip(): Level { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DelayedPaymentOutputDescriptor_set_channel_value_satoshis(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_Level_gossip(); + return nativeResponseValue; } - // MUST_USE_RES struct LDKDelayedPaymentOutputDescriptor DelayedPaymentOutputDescriptor_new(struct LDKOutPoint outpoint_arg, struct LDKPublicKey per_commitment_point_arg, uint16_t to_self_delay_arg, struct LDKTxOut output_arg, struct LDKPublicKey revocation_pubkey_arg, struct LDKThirtyTwoBytes channel_keys_id_arg, uint64_t channel_value_satoshis_arg); - export function DelayedPaymentOutputDescriptor_new(outpoint_arg: number, per_commitment_point_arg: Uint8Array, to_self_delay_arg: number, output_arg: number, revocation_pubkey_arg: Uint8Array, channel_keys_id_arg: Uint8Array, channel_value_satoshis_arg: number): number { + // enum LDKLevel Level_trace(void); + export function Level_trace(): Level { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DelayedPaymentOutputDescriptor_new(outpoint_arg, encodeArray(per_commitment_point_arg), to_self_delay_arg, output_arg, encodeArray(revocation_pubkey_arg), encodeArray(channel_keys_id_arg), channel_value_satoshis_arg); + const nativeResponseValue = wasm.TS_Level_trace(); return nativeResponseValue; } - // uint64_t DelayedPaymentOutputDescriptor_clone_ptr(LDKDelayedPaymentOutputDescriptor *NONNULL_PTR arg); - export function DelayedPaymentOutputDescriptor_clone_ptr(arg: number): number { + // enum LDKLevel Level_debug(void); + export function Level_debug(): Level { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DelayedPaymentOutputDescriptor_clone_ptr(arg); + const nativeResponseValue = wasm.TS_Level_debug(); return nativeResponseValue; } - // struct LDKDelayedPaymentOutputDescriptor DelayedPaymentOutputDescriptor_clone(const struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR orig); - export function DelayedPaymentOutputDescriptor_clone(orig: number): number { + // enum LDKLevel Level_info(void); + export function Level_info(): Level { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DelayedPaymentOutputDescriptor_clone(orig); + const nativeResponseValue = wasm.TS_Level_info(); return nativeResponseValue; } - // struct LDKCVec_u8Z DelayedPaymentOutputDescriptor_write(const struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR obj); - export function DelayedPaymentOutputDescriptor_write(obj: number): Uint8Array { + // enum LDKLevel Level_warn(void); + export function Level_warn(): Level { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DelayedPaymentOutputDescriptor_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_Level_warn(); + return nativeResponseValue; } - // struct LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ DelayedPaymentOutputDescriptor_read(struct LDKu8slice ser); - export function DelayedPaymentOutputDescriptor_read(ser: Uint8Array): number { + // enum LDKLevel Level_error(void); + export function Level_error(): Level { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DelayedPaymentOutputDescriptor_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_Level_error(); return nativeResponseValue; } - // void StaticPaymentOutputDescriptor_free(struct LDKStaticPaymentOutputDescriptor this_obj); - export function StaticPaymentOutputDescriptor_free(this_obj: number): void { + // bool Level_eq(const enum LDKLevel *NONNULL_PTR a, const enum LDKLevel *NONNULL_PTR b); + export function Level_eq(a: number, b: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.StaticPaymentOutputDescriptor_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_Level_eq(a, b); + return nativeResponseValue; } - // struct LDKOutPoint StaticPaymentOutputDescriptor_get_outpoint(const struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR this_ptr); - export function StaticPaymentOutputDescriptor_get_outpoint(this_ptr: number): number { + // uint64_t Level_hash(const enum LDKLevel *NONNULL_PTR o); + export function Level_hash(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.StaticPaymentOutputDescriptor_get_outpoint(this_ptr); + const nativeResponseValue = wasm.TS_Level_hash(o); return nativeResponseValue; } - // void StaticPaymentOutputDescriptor_set_outpoint(struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR this_ptr, struct LDKOutPoint val); - export function StaticPaymentOutputDescriptor_set_outpoint(this_ptr: number, val: number): void { + // MUST_USE_RES enum LDKLevel Level_max(void); + export function Level_max(): Level { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.StaticPaymentOutputDescriptor_set_outpoint(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_Level_max(); + return nativeResponseValue; } - // void StaticPaymentOutputDescriptor_set_output(struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR this_ptr, struct LDKTxOut val); - export function StaticPaymentOutputDescriptor_set_output(this_ptr: number, val: number): void { + // void Record_free(struct LDKRecord this_obj); + export function Record_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.StaticPaymentOutputDescriptor_set_output(this_ptr, val); + const nativeResponseValue = wasm.TS_Record_free(this_obj); // debug statements here } - // const uint8_t (*StaticPaymentOutputDescriptor_get_channel_keys_id(const struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR this_ptr))[32]; - export function StaticPaymentOutputDescriptor_get_channel_keys_id(this_ptr: number): Uint8Array { + // enum LDKLevel Record_get_level(const struct LDKRecord *NONNULL_PTR this_ptr); + export function Record_get_level(this_ptr: number): Level { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.StaticPaymentOutputDescriptor_get_channel_keys_id(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_Record_get_level(this_ptr); + return nativeResponseValue; } - // void StaticPaymentOutputDescriptor_set_channel_keys_id(struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function StaticPaymentOutputDescriptor_set_channel_keys_id(this_ptr: number, val: Uint8Array): void { + // void Record_set_level(struct LDKRecord *NONNULL_PTR this_ptr, enum LDKLevel val); + export function Record_set_level(this_ptr: number, val: Level): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.StaticPaymentOutputDescriptor_set_channel_keys_id(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_Record_set_level(this_ptr, val); // debug statements here } - // uint64_t StaticPaymentOutputDescriptor_get_channel_value_satoshis(const struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR this_ptr); - export function StaticPaymentOutputDescriptor_get_channel_value_satoshis(this_ptr: number): number { + // struct LDKStr Record_get_args(const struct LDKRecord *NONNULL_PTR this_ptr); + export function Record_get_args(this_ptr: number): String { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.StaticPaymentOutputDescriptor_get_channel_value_satoshis(this_ptr); + const nativeResponseValue = wasm.TS_Record_get_args(this_ptr); return nativeResponseValue; } - // void StaticPaymentOutputDescriptor_set_channel_value_satoshis(struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR this_ptr, uint64_t val); - export function StaticPaymentOutputDescriptor_set_channel_value_satoshis(this_ptr: number, val: number): void { + // void Record_set_args(struct LDKRecord *NONNULL_PTR this_ptr, struct LDKStr val); + export function Record_set_args(this_ptr: number, val: String): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.StaticPaymentOutputDescriptor_set_channel_value_satoshis(this_ptr, val); + const nativeResponseValue = wasm.TS_Record_set_args(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKStaticPaymentOutputDescriptor StaticPaymentOutputDescriptor_new(struct LDKOutPoint outpoint_arg, struct LDKTxOut output_arg, struct LDKThirtyTwoBytes channel_keys_id_arg, uint64_t channel_value_satoshis_arg); - export function StaticPaymentOutputDescriptor_new(outpoint_arg: number, output_arg: number, channel_keys_id_arg: Uint8Array, channel_value_satoshis_arg: number): number { + // struct LDKStr Record_get_module_path(const struct LDKRecord *NONNULL_PTR this_ptr); + export function Record_get_module_path(this_ptr: number): String { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.StaticPaymentOutputDescriptor_new(outpoint_arg, output_arg, encodeArray(channel_keys_id_arg), channel_value_satoshis_arg); + const nativeResponseValue = wasm.TS_Record_get_module_path(this_ptr); return nativeResponseValue; } - // uint64_t StaticPaymentOutputDescriptor_clone_ptr(LDKStaticPaymentOutputDescriptor *NONNULL_PTR arg); - export function StaticPaymentOutputDescriptor_clone_ptr(arg: number): number { + // void Record_set_module_path(struct LDKRecord *NONNULL_PTR this_ptr, struct LDKStr val); + export function Record_set_module_path(this_ptr: number, val: String): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.StaticPaymentOutputDescriptor_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Record_set_module_path(this_ptr, val); + // debug statements here } - // struct LDKStaticPaymentOutputDescriptor StaticPaymentOutputDescriptor_clone(const struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR orig); - export function StaticPaymentOutputDescriptor_clone(orig: number): number { + // struct LDKStr Record_get_file(const struct LDKRecord *NONNULL_PTR this_ptr); + export function Record_get_file(this_ptr: number): String { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.StaticPaymentOutputDescriptor_clone(orig); + const nativeResponseValue = wasm.TS_Record_get_file(this_ptr); return nativeResponseValue; } - // struct LDKCVec_u8Z StaticPaymentOutputDescriptor_write(const struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR obj); - export function StaticPaymentOutputDescriptor_write(obj: number): Uint8Array { + // void Record_set_file(struct LDKRecord *NONNULL_PTR this_ptr, struct LDKStr val); + export function Record_set_file(this_ptr: number, val: String): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.StaticPaymentOutputDescriptor_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_Record_set_file(this_ptr, val); + // debug statements here } - // struct LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ StaticPaymentOutputDescriptor_read(struct LDKu8slice ser); - export function StaticPaymentOutputDescriptor_read(ser: Uint8Array): number { + // uint32_t Record_get_line(const struct LDKRecord *NONNULL_PTR this_ptr); + export function Record_get_line(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.StaticPaymentOutputDescriptor_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_Record_get_line(this_ptr); return nativeResponseValue; } - // void SpendableOutputDescriptor_free(struct LDKSpendableOutputDescriptor this_ptr); - export function SpendableOutputDescriptor_free(this_ptr: number): void { + // void Record_set_line(struct LDKRecord *NONNULL_PTR this_ptr, uint32_t val); + export function Record_set_line(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SpendableOutputDescriptor_free(this_ptr); + const nativeResponseValue = wasm.TS_Record_set_line(this_ptr, val); // debug statements here } - // uint64_t SpendableOutputDescriptor_clone_ptr(LDKSpendableOutputDescriptor *NONNULL_PTR arg); - export function SpendableOutputDescriptor_clone_ptr(arg: number): number { + // uint64_t Record_clone_ptr(LDKRecord *NONNULL_PTR arg); + export function Record_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SpendableOutputDescriptor_clone_ptr(arg); + const nativeResponseValue = wasm.TS_Record_clone_ptr(arg); return nativeResponseValue; } - // struct LDKSpendableOutputDescriptor SpendableOutputDescriptor_clone(const struct LDKSpendableOutputDescriptor *NONNULL_PTR orig); - export function SpendableOutputDescriptor_clone(orig: number): number { + // struct LDKRecord Record_clone(const struct LDKRecord *NONNULL_PTR orig); + export function Record_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SpendableOutputDescriptor_clone(orig); + const nativeResponseValue = wasm.TS_Record_clone(orig); return nativeResponseValue; } - // struct LDKSpendableOutputDescriptor SpendableOutputDescriptor_static_output(struct LDKOutPoint outpoint, struct LDKTxOut output); - export function SpendableOutputDescriptor_static_output(outpoint: number, output: number): number { + // void Logger_free(struct LDKLogger this_ptr); + export function Logger_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SpendableOutputDescriptor_static_output(outpoint, output); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Logger_free(this_ptr); + // debug statements here } - // struct LDKSpendableOutputDescriptor SpendableOutputDescriptor_delayed_payment_output(struct LDKDelayedPaymentOutputDescriptor a); - export function SpendableOutputDescriptor_delayed_payment_output(a: number): number { + // void ChannelHandshakeConfig_free(struct LDKChannelHandshakeConfig this_obj); + export function ChannelHandshakeConfig_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SpendableOutputDescriptor_delayed_payment_output(a); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelHandshakeConfig_free(this_obj); + // debug statements here } - // struct LDKSpendableOutputDescriptor SpendableOutputDescriptor_static_payment_output(struct LDKStaticPaymentOutputDescriptor a); - export function SpendableOutputDescriptor_static_payment_output(a: number): number { + // uint32_t ChannelHandshakeConfig_get_minimum_depth(const struct LDKChannelHandshakeConfig *NONNULL_PTR this_ptr); + export function ChannelHandshakeConfig_get_minimum_depth(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SpendableOutputDescriptor_static_payment_output(a); + const nativeResponseValue = wasm.TS_ChannelHandshakeConfig_get_minimum_depth(this_ptr); return nativeResponseValue; } - // struct LDKCVec_u8Z SpendableOutputDescriptor_write(const struct LDKSpendableOutputDescriptor *NONNULL_PTR obj); - export function SpendableOutputDescriptor_write(obj: number): Uint8Array { + // void ChannelHandshakeConfig_set_minimum_depth(struct LDKChannelHandshakeConfig *NONNULL_PTR this_ptr, uint32_t val); + export function ChannelHandshakeConfig_set_minimum_depth(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SpendableOutputDescriptor_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelHandshakeConfig_set_minimum_depth(this_ptr, val); + // debug statements here } - // struct LDKCResult_SpendableOutputDescriptorDecodeErrorZ SpendableOutputDescriptor_read(struct LDKu8slice ser); - export function SpendableOutputDescriptor_read(ser: Uint8Array): number { + // uint16_t ChannelHandshakeConfig_get_our_to_self_delay(const struct LDKChannelHandshakeConfig *NONNULL_PTR this_ptr); + export function ChannelHandshakeConfig_get_our_to_self_delay(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SpendableOutputDescriptor_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_ChannelHandshakeConfig_get_our_to_self_delay(this_ptr); return nativeResponseValue; } - // void BaseSign_free(struct LDKBaseSign this_ptr); - export function BaseSign_free(this_ptr: number): void { + // void ChannelHandshakeConfig_set_our_to_self_delay(struct LDKChannelHandshakeConfig *NONNULL_PTR this_ptr, uint16_t val); + export function ChannelHandshakeConfig_set_our_to_self_delay(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BaseSign_free(this_ptr); + const nativeResponseValue = wasm.TS_ChannelHandshakeConfig_set_our_to_self_delay(this_ptr, val); // debug statements here } - // uint64_t Sign_clone_ptr(LDKSign *NONNULL_PTR arg); - export function Sign_clone_ptr(arg: number): number { + // uint64_t ChannelHandshakeConfig_get_our_htlc_minimum_msat(const struct LDKChannelHandshakeConfig *NONNULL_PTR this_ptr); + export function ChannelHandshakeConfig_get_our_htlc_minimum_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Sign_clone_ptr(arg); + const nativeResponseValue = wasm.TS_ChannelHandshakeConfig_get_our_htlc_minimum_msat(this_ptr); return nativeResponseValue; } - // struct LDKSign Sign_clone(const struct LDKSign *NONNULL_PTR orig); - export function Sign_clone(orig: number): number { + // void ChannelHandshakeConfig_set_our_htlc_minimum_msat(struct LDKChannelHandshakeConfig *NONNULL_PTR this_ptr, uint64_t val); + export function ChannelHandshakeConfig_set_our_htlc_minimum_msat(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Sign_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelHandshakeConfig_set_our_htlc_minimum_msat(this_ptr, val); + // debug statements here } - // void Sign_free(struct LDKSign this_ptr); - export function Sign_free(this_ptr: number): void { + // 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); + export function ChannelHandshakeConfig_new(minimum_depth_arg: number, our_to_self_delay_arg: number, our_htlc_minimum_msat_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Sign_free(this_ptr); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelHandshakeConfig_new(minimum_depth_arg, our_to_self_delay_arg, our_htlc_minimum_msat_arg); + return nativeResponseValue; } - // void KeysInterface_free(struct LDKKeysInterface this_ptr); - export function KeysInterface_free(this_ptr: number): void { + // uint64_t ChannelHandshakeConfig_clone_ptr(LDKChannelHandshakeConfig *NONNULL_PTR arg); + export function ChannelHandshakeConfig_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.KeysInterface_free(this_ptr); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelHandshakeConfig_clone_ptr(arg); + return nativeResponseValue; } - // void InMemorySigner_free(struct LDKInMemorySigner this_obj); - export function InMemorySigner_free(this_obj: number): void { + // struct LDKChannelHandshakeConfig ChannelHandshakeConfig_clone(const struct LDKChannelHandshakeConfig *NONNULL_PTR orig); + export function ChannelHandshakeConfig_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelHandshakeConfig_clone(orig); + return nativeResponseValue; } - // const uint8_t (*InMemorySigner_get_funding_key(const struct LDKInMemorySigner *NONNULL_PTR this_ptr))[32]; - export function InMemorySigner_get_funding_key(this_ptr: number): Uint8Array { + // MUST_USE_RES struct LDKChannelHandshakeConfig ChannelHandshakeConfig_default(void); + export function ChannelHandshakeConfig_default(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_get_funding_key(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelHandshakeConfig_default(); + return nativeResponseValue; } - // void InMemorySigner_set_funding_key(struct LDKInMemorySigner *NONNULL_PTR this_ptr, struct LDKSecretKey val); - export function InMemorySigner_set_funding_key(this_ptr: number, val: Uint8Array): void { + // void ChannelHandshakeLimits_free(struct LDKChannelHandshakeLimits this_obj); + export function ChannelHandshakeLimits_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_set_funding_key(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_ChannelHandshakeLimits_free(this_obj); // debug statements here } - // const uint8_t (*InMemorySigner_get_revocation_base_key(const struct LDKInMemorySigner *NONNULL_PTR this_ptr))[32]; - export function InMemorySigner_get_revocation_base_key(this_ptr: number): Uint8Array { + // uint64_t ChannelHandshakeLimits_get_min_funding_satoshis(const struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr); + export function ChannelHandshakeLimits_get_min_funding_satoshis(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_get_revocation_base_key(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelHandshakeLimits_get_min_funding_satoshis(this_ptr); + return nativeResponseValue; } - // void InMemorySigner_set_revocation_base_key(struct LDKInMemorySigner *NONNULL_PTR this_ptr, struct LDKSecretKey val); - export function InMemorySigner_set_revocation_base_key(this_ptr: number, val: Uint8Array): void { + // void ChannelHandshakeLimits_set_min_funding_satoshis(struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr, uint64_t val); + export function ChannelHandshakeLimits_set_min_funding_satoshis(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_set_revocation_base_key(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_ChannelHandshakeLimits_set_min_funding_satoshis(this_ptr, val); // debug statements here } - // const uint8_t (*InMemorySigner_get_payment_key(const struct LDKInMemorySigner *NONNULL_PTR this_ptr))[32]; - export function InMemorySigner_get_payment_key(this_ptr: number): Uint8Array { + // uint64_t ChannelHandshakeLimits_get_max_htlc_minimum_msat(const struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr); + export function ChannelHandshakeLimits_get_max_htlc_minimum_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_get_payment_key(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelHandshakeLimits_get_max_htlc_minimum_msat(this_ptr); + return nativeResponseValue; } - // void InMemorySigner_set_payment_key(struct LDKInMemorySigner *NONNULL_PTR this_ptr, struct LDKSecretKey val); - export function InMemorySigner_set_payment_key(this_ptr: number, val: Uint8Array): void { + // void ChannelHandshakeLimits_set_max_htlc_minimum_msat(struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr, uint64_t val); + export function ChannelHandshakeLimits_set_max_htlc_minimum_msat(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_set_payment_key(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_ChannelHandshakeLimits_set_max_htlc_minimum_msat(this_ptr, val); // debug statements here } - // const uint8_t (*InMemorySigner_get_delayed_payment_base_key(const struct LDKInMemorySigner *NONNULL_PTR this_ptr))[32]; - export function InMemorySigner_get_delayed_payment_base_key(this_ptr: number): Uint8Array { + // uint64_t ChannelHandshakeLimits_get_min_max_htlc_value_in_flight_msat(const struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr); + export function ChannelHandshakeLimits_get_min_max_htlc_value_in_flight_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_get_delayed_payment_base_key(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelHandshakeLimits_get_min_max_htlc_value_in_flight_msat(this_ptr); + return nativeResponseValue; } - // void InMemorySigner_set_delayed_payment_base_key(struct LDKInMemorySigner *NONNULL_PTR this_ptr, struct LDKSecretKey val); - export function InMemorySigner_set_delayed_payment_base_key(this_ptr: number, val: Uint8Array): void { + // void ChannelHandshakeLimits_set_min_max_htlc_value_in_flight_msat(struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr, uint64_t val); + export function ChannelHandshakeLimits_set_min_max_htlc_value_in_flight_msat(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_set_delayed_payment_base_key(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_ChannelHandshakeLimits_set_min_max_htlc_value_in_flight_msat(this_ptr, val); // debug statements here } - // const uint8_t (*InMemorySigner_get_htlc_base_key(const struct LDKInMemorySigner *NONNULL_PTR this_ptr))[32]; - export function InMemorySigner_get_htlc_base_key(this_ptr: number): Uint8Array { + // uint64_t ChannelHandshakeLimits_get_max_channel_reserve_satoshis(const struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr); + export function ChannelHandshakeLimits_get_max_channel_reserve_satoshis(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_get_htlc_base_key(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelHandshakeLimits_get_max_channel_reserve_satoshis(this_ptr); + return nativeResponseValue; } - // void InMemorySigner_set_htlc_base_key(struct LDKInMemorySigner *NONNULL_PTR this_ptr, struct LDKSecretKey val); - export function InMemorySigner_set_htlc_base_key(this_ptr: number, val: Uint8Array): void { + // void ChannelHandshakeLimits_set_max_channel_reserve_satoshis(struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr, uint64_t val); + export function ChannelHandshakeLimits_set_max_channel_reserve_satoshis(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_set_htlc_base_key(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_ChannelHandshakeLimits_set_max_channel_reserve_satoshis(this_ptr, val); // debug statements here } - // const uint8_t (*InMemorySigner_get_commitment_seed(const struct LDKInMemorySigner *NONNULL_PTR this_ptr))[32]; - export function InMemorySigner_get_commitment_seed(this_ptr: number): Uint8Array { + // uint16_t ChannelHandshakeLimits_get_min_max_accepted_htlcs(const struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr); + export function ChannelHandshakeLimits_get_min_max_accepted_htlcs(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_get_commitment_seed(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelHandshakeLimits_get_min_max_accepted_htlcs(this_ptr); + return nativeResponseValue; } - // void InMemorySigner_set_commitment_seed(struct LDKInMemorySigner *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function InMemorySigner_set_commitment_seed(this_ptr: number, val: Uint8Array): void { + // void ChannelHandshakeLimits_set_min_max_accepted_htlcs(struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr, uint16_t val); + export function ChannelHandshakeLimits_set_min_max_accepted_htlcs(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_set_commitment_seed(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_ChannelHandshakeLimits_set_min_max_accepted_htlcs(this_ptr, val); // debug statements here } - // uint64_t InMemorySigner_clone_ptr(LDKInMemorySigner *NONNULL_PTR arg); - export function InMemorySigner_clone_ptr(arg: number): number { + // uint32_t ChannelHandshakeLimits_get_max_minimum_depth(const struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr); + export function ChannelHandshakeLimits_get_max_minimum_depth(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_clone_ptr(arg); + const nativeResponseValue = wasm.TS_ChannelHandshakeLimits_get_max_minimum_depth(this_ptr); return nativeResponseValue; } - // struct LDKInMemorySigner InMemorySigner_clone(const struct LDKInMemorySigner *NONNULL_PTR orig); - export function InMemorySigner_clone(orig: number): number { + // void ChannelHandshakeLimits_set_max_minimum_depth(struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr, uint32_t val); + export function ChannelHandshakeLimits_set_max_minimum_depth(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelHandshakeLimits_set_max_minimum_depth(this_ptr, val); + // debug statements here } - // 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); - export function InMemorySigner_new(funding_key: Uint8Array, revocation_base_key: Uint8Array, payment_key: Uint8Array, delayed_payment_base_key: Uint8Array, htlc_base_key: Uint8Array, commitment_seed: Uint8Array, channel_value_satoshis: number, channel_keys_id: Uint8Array): number { + // bool ChannelHandshakeLimits_get_force_announced_channel_preference(const struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr); + export function ChannelHandshakeLimits_get_force_announced_channel_preference(this_ptr: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_new(encodeArray(funding_key), encodeArray(revocation_base_key), encodeArray(payment_key), encodeArray(delayed_payment_base_key), encodeArray(htlc_base_key), encodeArray(commitment_seed), channel_value_satoshis, encodeArray(channel_keys_id)); + const nativeResponseValue = wasm.TS_ChannelHandshakeLimits_get_force_announced_channel_preference(this_ptr); return nativeResponseValue; } - // MUST_USE_RES struct LDKChannelPublicKeys InMemorySigner_counterparty_pubkeys(const struct LDKInMemorySigner *NONNULL_PTR this_arg); - export function InMemorySigner_counterparty_pubkeys(this_arg: number): number { + // void ChannelHandshakeLimits_set_force_announced_channel_preference(struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr, bool val); + export function ChannelHandshakeLimits_set_force_announced_channel_preference(this_ptr: number, val: boolean): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_counterparty_pubkeys(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelHandshakeLimits_set_force_announced_channel_preference(this_ptr, val); + // debug statements here } - // MUST_USE_RES uint16_t InMemorySigner_counterparty_selected_contest_delay(const struct LDKInMemorySigner *NONNULL_PTR this_arg); - export function InMemorySigner_counterparty_selected_contest_delay(this_arg: number): number { + // uint16_t ChannelHandshakeLimits_get_their_to_self_delay(const struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr); + export function ChannelHandshakeLimits_get_their_to_self_delay(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_counterparty_selected_contest_delay(this_arg); + const nativeResponseValue = wasm.TS_ChannelHandshakeLimits_get_their_to_self_delay(this_ptr); return nativeResponseValue; } - // MUST_USE_RES uint16_t InMemorySigner_holder_selected_contest_delay(const struct LDKInMemorySigner *NONNULL_PTR this_arg); - export function InMemorySigner_holder_selected_contest_delay(this_arg: number): number { + // void ChannelHandshakeLimits_set_their_to_self_delay(struct LDKChannelHandshakeLimits *NONNULL_PTR this_ptr, uint16_t val); + export function ChannelHandshakeLimits_set_their_to_self_delay(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_holder_selected_contest_delay(this_arg); - return nativeResponseValue; - } - // MUST_USE_RES bool InMemorySigner_is_outbound(const struct LDKInMemorySigner *NONNULL_PTR this_arg); - export function InMemorySigner_is_outbound(this_arg: number): boolean { + const nativeResponseValue = wasm.TS_ChannelHandshakeLimits_set_their_to_self_delay(this_ptr, val); + // debug statements here + } + // MUST_USE_RES struct LDKChannelHandshakeLimits ChannelHandshakeLimits_new(uint64_t min_funding_satoshis_arg, uint64_t max_htlc_minimum_msat_arg, uint64_t min_max_htlc_value_in_flight_msat_arg, uint64_t max_channel_reserve_satoshis_arg, uint16_t min_max_accepted_htlcs_arg, uint32_t max_minimum_depth_arg, bool force_announced_channel_preference_arg, uint16_t their_to_self_delay_arg); + export function ChannelHandshakeLimits_new(min_funding_satoshis_arg: number, max_htlc_minimum_msat_arg: number, min_max_htlc_value_in_flight_msat_arg: number, max_channel_reserve_satoshis_arg: number, min_max_accepted_htlcs_arg: number, max_minimum_depth_arg: number, force_announced_channel_preference_arg: boolean, their_to_self_delay_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_is_outbound(this_arg); + const nativeResponseValue = wasm.TS_ChannelHandshakeLimits_new(min_funding_satoshis_arg, max_htlc_minimum_msat_arg, min_max_htlc_value_in_flight_msat_arg, max_channel_reserve_satoshis_arg, min_max_accepted_htlcs_arg, max_minimum_depth_arg, force_announced_channel_preference_arg, their_to_self_delay_arg); return nativeResponseValue; } - // MUST_USE_RES struct LDKOutPoint InMemorySigner_funding_outpoint(const struct LDKInMemorySigner *NONNULL_PTR this_arg); - export function InMemorySigner_funding_outpoint(this_arg: number): number { + // uint64_t ChannelHandshakeLimits_clone_ptr(LDKChannelHandshakeLimits *NONNULL_PTR arg); + export function ChannelHandshakeLimits_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_funding_outpoint(this_arg); + const nativeResponseValue = wasm.TS_ChannelHandshakeLimits_clone_ptr(arg); return nativeResponseValue; } - // MUST_USE_RES struct LDKChannelTransactionParameters InMemorySigner_get_channel_parameters(const struct LDKInMemorySigner *NONNULL_PTR this_arg); - export function InMemorySigner_get_channel_parameters(this_arg: number): number { + // struct LDKChannelHandshakeLimits ChannelHandshakeLimits_clone(const struct LDKChannelHandshakeLimits *NONNULL_PTR orig); + export function ChannelHandshakeLimits_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_get_channel_parameters(this_arg); + const nativeResponseValue = wasm.TS_ChannelHandshakeLimits_clone(orig); return nativeResponseValue; } - // MUST_USE_RES bool InMemorySigner_opt_anchors(const struct LDKInMemorySigner *NONNULL_PTR this_arg); - export function InMemorySigner_opt_anchors(this_arg: number): boolean { + // MUST_USE_RES struct LDKChannelHandshakeLimits ChannelHandshakeLimits_default(void); + export function ChannelHandshakeLimits_default(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_opt_anchors(this_arg); + const nativeResponseValue = wasm.TS_ChannelHandshakeLimits_default(); return nativeResponseValue; } - // MUST_USE_RES struct LDKCResult_CVec_CVec_u8ZZNoneZ InMemorySigner_sign_counterparty_payment_input(const struct LDKInMemorySigner *NONNULL_PTR this_arg, struct LDKTransaction spend_tx, uintptr_t input_idx, const struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR descriptor); - export function InMemorySigner_sign_counterparty_payment_input(this_arg: number, spend_tx: Uint8Array, input_idx: number, descriptor: number): number { + // void ChannelConfig_free(struct LDKChannelConfig this_obj); + export function ChannelConfig_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_sign_counterparty_payment_input(this_arg, encodeArray(spend_tx), input_idx, descriptor); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelConfig_free(this_obj); + // debug statements here } - // MUST_USE_RES struct LDKCResult_CVec_CVec_u8ZZNoneZ InMemorySigner_sign_dynamic_p2wsh_input(const struct LDKInMemorySigner *NONNULL_PTR this_arg, struct LDKTransaction spend_tx, uintptr_t input_idx, const struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR descriptor); - export function InMemorySigner_sign_dynamic_p2wsh_input(this_arg: number, spend_tx: Uint8Array, input_idx: number, descriptor: number): number { + // uint32_t ChannelConfig_get_forwarding_fee_proportional_millionths(const struct LDKChannelConfig *NONNULL_PTR this_ptr); + export function ChannelConfig_get_forwarding_fee_proportional_millionths(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_sign_dynamic_p2wsh_input(this_arg, encodeArray(spend_tx), input_idx, descriptor); + const nativeResponseValue = wasm.TS_ChannelConfig_get_forwarding_fee_proportional_millionths(this_ptr); return nativeResponseValue; } - // struct LDKBaseSign InMemorySigner_as_BaseSign(const struct LDKInMemorySigner *NONNULL_PTR this_arg); - export function InMemorySigner_as_BaseSign(this_arg: number): number { + // void ChannelConfig_set_forwarding_fee_proportional_millionths(struct LDKChannelConfig *NONNULL_PTR this_ptr, uint32_t val); + export function ChannelConfig_set_forwarding_fee_proportional_millionths(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_as_BaseSign(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelConfig_set_forwarding_fee_proportional_millionths(this_ptr, val); + // debug statements here } - // struct LDKSign InMemorySigner_as_Sign(const struct LDKInMemorySigner *NONNULL_PTR this_arg); - export function InMemorySigner_as_Sign(this_arg: number): number { + // uint32_t ChannelConfig_get_forwarding_fee_base_msat(const struct LDKChannelConfig *NONNULL_PTR this_ptr); + export function ChannelConfig_get_forwarding_fee_base_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_as_Sign(this_arg); + const nativeResponseValue = wasm.TS_ChannelConfig_get_forwarding_fee_base_msat(this_ptr); return nativeResponseValue; } - // struct LDKCVec_u8Z InMemorySigner_write(const struct LDKInMemorySigner *NONNULL_PTR obj); - export function InMemorySigner_write(obj: number): Uint8Array { + // void ChannelConfig_set_forwarding_fee_base_msat(struct LDKChannelConfig *NONNULL_PTR this_ptr, uint32_t val); + export function ChannelConfig_set_forwarding_fee_base_msat(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelConfig_set_forwarding_fee_base_msat(this_ptr, val); + // debug statements here } - // struct LDKCResult_InMemorySignerDecodeErrorZ InMemorySigner_read(struct LDKu8slice ser); - export function InMemorySigner_read(ser: Uint8Array): number { + // uint16_t ChannelConfig_get_cltv_expiry_delta(const struct LDKChannelConfig *NONNULL_PTR this_ptr); + export function ChannelConfig_get_cltv_expiry_delta(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InMemorySigner_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_ChannelConfig_get_cltv_expiry_delta(this_ptr); return nativeResponseValue; } - // void KeysManager_free(struct LDKKeysManager this_obj); - export function KeysManager_free(this_obj: number): void { + // void ChannelConfig_set_cltv_expiry_delta(struct LDKChannelConfig *NONNULL_PTR this_ptr, uint16_t val); + export function ChannelConfig_set_cltv_expiry_delta(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.KeysManager_free(this_obj); + const nativeResponseValue = wasm.TS_ChannelConfig_set_cltv_expiry_delta(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKKeysManager KeysManager_new(const uint8_t (*seed)[32], uint64_t starting_time_secs, uint32_t starting_time_nanos); - export function KeysManager_new(seed: Uint8Array, starting_time_secs: number, starting_time_nanos: number): number { + // bool ChannelConfig_get_announced_channel(const struct LDKChannelConfig *NONNULL_PTR this_ptr); + export function ChannelConfig_get_announced_channel(this_ptr: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.KeysManager_new(encodeArray(seed), starting_time_secs, starting_time_nanos); + const nativeResponseValue = wasm.TS_ChannelConfig_get_announced_channel(this_ptr); 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]); - export function KeysManager_derive_channel_keys(this_arg: number, channel_value_satoshis: number, params: Uint8Array): number { + // void ChannelConfig_set_announced_channel(struct LDKChannelConfig *NONNULL_PTR this_ptr, bool val); + export function ChannelConfig_set_announced_channel(this_ptr: number, val: boolean): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.KeysManager_derive_channel_keys(this_arg, channel_value_satoshis, encodeArray(params)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelConfig_set_announced_channel(this_ptr, val); + // debug statements here } - // MUST_USE_RES struct LDKCResult_TransactionNoneZ KeysManager_spend_spendable_outputs(const struct LDKKeysManager *NONNULL_PTR this_arg, struct LDKCVec_SpendableOutputDescriptorZ descriptors, struct LDKCVec_TxOutZ outputs, struct LDKCVec_u8Z change_destination_script, uint32_t feerate_sat_per_1000_weight); - export function KeysManager_spend_spendable_outputs(this_arg: number, descriptors: number[], outputs: number[], change_destination_script: Uint8Array, feerate_sat_per_1000_weight: number): number { + // bool ChannelConfig_get_commit_upfront_shutdown_pubkey(const struct LDKChannelConfig *NONNULL_PTR this_ptr); + export function ChannelConfig_get_commit_upfront_shutdown_pubkey(this_ptr: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.KeysManager_spend_spendable_outputs(this_arg, descriptors, outputs, encodeArray(change_destination_script), feerate_sat_per_1000_weight); + const nativeResponseValue = wasm.TS_ChannelConfig_get_commit_upfront_shutdown_pubkey(this_ptr); return nativeResponseValue; } - // struct LDKKeysInterface KeysManager_as_KeysInterface(const struct LDKKeysManager *NONNULL_PTR this_arg); - export function KeysManager_as_KeysInterface(this_arg: number): number { + // void ChannelConfig_set_commit_upfront_shutdown_pubkey(struct LDKChannelConfig *NONNULL_PTR this_ptr, bool val); + export function ChannelConfig_set_commit_upfront_shutdown_pubkey(this_ptr: number, val: boolean): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.KeysManager_as_KeysInterface(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelConfig_set_commit_upfront_shutdown_pubkey(this_ptr, val); + // debug statements here } - // void ChannelManager_free(struct LDKChannelManager this_obj); - export function ChannelManager_free(this_obj: number): void { + // uint64_t ChannelConfig_get_max_dust_htlc_exposure_msat(const struct LDKChannelConfig *NONNULL_PTR this_ptr); + export function ChannelConfig_get_max_dust_htlc_exposure_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelConfig_get_max_dust_htlc_exposure_msat(this_ptr); + return nativeResponseValue; } - // void ChainParameters_free(struct LDKChainParameters this_obj); - export function ChainParameters_free(this_obj: number): void { + // void ChannelConfig_set_max_dust_htlc_exposure_msat(struct LDKChannelConfig *NONNULL_PTR this_ptr, uint64_t val); + export function ChannelConfig_set_max_dust_htlc_exposure_msat(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChainParameters_free(this_obj); + const nativeResponseValue = wasm.TS_ChannelConfig_set_max_dust_htlc_exposure_msat(this_ptr, val); // debug statements here } - // enum LDKNetwork ChainParameters_get_network(const struct LDKChainParameters *NONNULL_PTR this_ptr); - export function ChainParameters_get_network(this_ptr: number): Network { + // uint64_t ChannelConfig_get_force_close_avoidance_max_fee_satoshis(const struct LDKChannelConfig *NONNULL_PTR this_ptr); + export function ChannelConfig_get_force_close_avoidance_max_fee_satoshis(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChainParameters_get_network(this_ptr); + const nativeResponseValue = wasm.TS_ChannelConfig_get_force_close_avoidance_max_fee_satoshis(this_ptr); return nativeResponseValue; } - // void ChainParameters_set_network(struct LDKChainParameters *NONNULL_PTR this_ptr, enum LDKNetwork val); - export function ChainParameters_set_network(this_ptr: number, val: Network): void { + // void ChannelConfig_set_force_close_avoidance_max_fee_satoshis(struct LDKChannelConfig *NONNULL_PTR this_ptr, uint64_t val); + export function ChannelConfig_set_force_close_avoidance_max_fee_satoshis(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChainParameters_set_network(this_ptr, val); + const nativeResponseValue = wasm.TS_ChannelConfig_set_force_close_avoidance_max_fee_satoshis(this_ptr, val); // debug statements here } - // struct LDKBestBlock ChainParameters_get_best_block(const struct LDKChainParameters *NONNULL_PTR this_ptr); - export function ChainParameters_get_best_block(this_ptr: number): number { + // MUST_USE_RES struct LDKChannelConfig ChannelConfig_new(uint32_t forwarding_fee_proportional_millionths_arg, uint32_t forwarding_fee_base_msat_arg, uint16_t cltv_expiry_delta_arg, bool announced_channel_arg, bool commit_upfront_shutdown_pubkey_arg, uint64_t max_dust_htlc_exposure_msat_arg, uint64_t force_close_avoidance_max_fee_satoshis_arg); + export function ChannelConfig_new(forwarding_fee_proportional_millionths_arg: number, forwarding_fee_base_msat_arg: number, cltv_expiry_delta_arg: number, announced_channel_arg: boolean, commit_upfront_shutdown_pubkey_arg: boolean, max_dust_htlc_exposure_msat_arg: number, force_close_avoidance_max_fee_satoshis_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChainParameters_get_best_block(this_ptr); + const nativeResponseValue = wasm.TS_ChannelConfig_new(forwarding_fee_proportional_millionths_arg, forwarding_fee_base_msat_arg, cltv_expiry_delta_arg, announced_channel_arg, commit_upfront_shutdown_pubkey_arg, max_dust_htlc_exposure_msat_arg, force_close_avoidance_max_fee_satoshis_arg); return nativeResponseValue; } - // void ChainParameters_set_best_block(struct LDKChainParameters *NONNULL_PTR this_ptr, struct LDKBestBlock val); - export function ChainParameters_set_best_block(this_ptr: number, val: number): void { + // uint64_t ChannelConfig_clone_ptr(LDKChannelConfig *NONNULL_PTR arg); + export function ChannelConfig_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChainParameters_set_best_block(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelConfig_clone_ptr(arg); + return nativeResponseValue; } - // MUST_USE_RES struct LDKChainParameters ChainParameters_new(enum LDKNetwork network_arg, struct LDKBestBlock best_block_arg); - export function ChainParameters_new(network_arg: Network, best_block_arg: number): number { + // struct LDKChannelConfig ChannelConfig_clone(const struct LDKChannelConfig *NONNULL_PTR orig); + export function ChannelConfig_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChainParameters_new(network_arg, best_block_arg); + const nativeResponseValue = wasm.TS_ChannelConfig_clone(orig); return nativeResponseValue; } - // uint64_t ChainParameters_clone_ptr(LDKChainParameters *NONNULL_PTR arg); - export function ChainParameters_clone_ptr(arg: number): number { + // MUST_USE_RES struct LDKChannelConfig ChannelConfig_default(void); + export function ChannelConfig_default(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChainParameters_clone_ptr(arg); + const nativeResponseValue = wasm.TS_ChannelConfig_default(); return nativeResponseValue; } - // struct LDKChainParameters ChainParameters_clone(const struct LDKChainParameters *NONNULL_PTR orig); - export function ChainParameters_clone(orig: number): number { + // struct LDKCVec_u8Z ChannelConfig_write(const struct LDKChannelConfig *NONNULL_PTR obj); + export function ChannelConfig_write(obj: number): Uint8Array { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_ChannelConfig_write(obj); + return decodeUint8Array(nativeResponseValue); + } + // struct LDKCResult_ChannelConfigDecodeErrorZ ChannelConfig_read(struct LDKu8slice ser); + export function ChannelConfig_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChainParameters_clone(orig); + const nativeResponseValue = wasm.TS_ChannelConfig_read(encodeUint8Array(ser)); return nativeResponseValue; } - // void CounterpartyForwardingInfo_free(struct LDKCounterpartyForwardingInfo this_obj); - export function CounterpartyForwardingInfo_free(this_obj: number): void { + // void UserConfig_free(struct LDKUserConfig this_obj); + export function UserConfig_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CounterpartyForwardingInfo_free(this_obj); + const nativeResponseValue = wasm.TS_UserConfig_free(this_obj); // debug statements here } - // uint32_t CounterpartyForwardingInfo_get_fee_base_msat(const struct LDKCounterpartyForwardingInfo *NONNULL_PTR this_ptr); - export function CounterpartyForwardingInfo_get_fee_base_msat(this_ptr: number): number { + // struct LDKChannelHandshakeConfig UserConfig_get_own_channel_config(const struct LDKUserConfig *NONNULL_PTR this_ptr); + export function UserConfig_get_own_channel_config(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CounterpartyForwardingInfo_get_fee_base_msat(this_ptr); + const nativeResponseValue = wasm.TS_UserConfig_get_own_channel_config(this_ptr); return nativeResponseValue; } - // void CounterpartyForwardingInfo_set_fee_base_msat(struct LDKCounterpartyForwardingInfo *NONNULL_PTR this_ptr, uint32_t val); - export function CounterpartyForwardingInfo_set_fee_base_msat(this_ptr: number, val: number): void { + // void UserConfig_set_own_channel_config(struct LDKUserConfig *NONNULL_PTR this_ptr, struct LDKChannelHandshakeConfig val); + export function UserConfig_set_own_channel_config(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CounterpartyForwardingInfo_set_fee_base_msat(this_ptr, val); + const nativeResponseValue = wasm.TS_UserConfig_set_own_channel_config(this_ptr, val); // debug statements here } - // uint32_t CounterpartyForwardingInfo_get_fee_proportional_millionths(const struct LDKCounterpartyForwardingInfo *NONNULL_PTR this_ptr); - export function CounterpartyForwardingInfo_get_fee_proportional_millionths(this_ptr: number): number { + // struct LDKChannelHandshakeLimits UserConfig_get_peer_channel_config_limits(const struct LDKUserConfig *NONNULL_PTR this_ptr); + export function UserConfig_get_peer_channel_config_limits(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CounterpartyForwardingInfo_get_fee_proportional_millionths(this_ptr); + const nativeResponseValue = wasm.TS_UserConfig_get_peer_channel_config_limits(this_ptr); return nativeResponseValue; } - // void CounterpartyForwardingInfo_set_fee_proportional_millionths(struct LDKCounterpartyForwardingInfo *NONNULL_PTR this_ptr, uint32_t val); - export function CounterpartyForwardingInfo_set_fee_proportional_millionths(this_ptr: number, val: number): void { + // void UserConfig_set_peer_channel_config_limits(struct LDKUserConfig *NONNULL_PTR this_ptr, struct LDKChannelHandshakeLimits val); + export function UserConfig_set_peer_channel_config_limits(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CounterpartyForwardingInfo_set_fee_proportional_millionths(this_ptr, val); + const nativeResponseValue = wasm.TS_UserConfig_set_peer_channel_config_limits(this_ptr, val); // debug statements here } - // uint16_t CounterpartyForwardingInfo_get_cltv_expiry_delta(const struct LDKCounterpartyForwardingInfo *NONNULL_PTR this_ptr); - export function CounterpartyForwardingInfo_get_cltv_expiry_delta(this_ptr: number): number { + // struct LDKChannelConfig UserConfig_get_channel_options(const struct LDKUserConfig *NONNULL_PTR this_ptr); + export function UserConfig_get_channel_options(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CounterpartyForwardingInfo_get_cltv_expiry_delta(this_ptr); + const nativeResponseValue = wasm.TS_UserConfig_get_channel_options(this_ptr); return nativeResponseValue; } - // void CounterpartyForwardingInfo_set_cltv_expiry_delta(struct LDKCounterpartyForwardingInfo *NONNULL_PTR this_ptr, uint16_t val); - export function CounterpartyForwardingInfo_set_cltv_expiry_delta(this_ptr: number, val: number): void { + // void UserConfig_set_channel_options(struct LDKUserConfig *NONNULL_PTR this_ptr, struct LDKChannelConfig val); + export function UserConfig_set_channel_options(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CounterpartyForwardingInfo_set_cltv_expiry_delta(this_ptr, val); + const nativeResponseValue = wasm.TS_UserConfig_set_channel_options(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKCounterpartyForwardingInfo CounterpartyForwardingInfo_new(uint32_t fee_base_msat_arg, uint32_t fee_proportional_millionths_arg, uint16_t cltv_expiry_delta_arg); - export function CounterpartyForwardingInfo_new(fee_base_msat_arg: number, fee_proportional_millionths_arg: number, cltv_expiry_delta_arg: number): number { + // bool UserConfig_get_accept_forwards_to_priv_channels(const struct LDKUserConfig *NONNULL_PTR this_ptr); + export function UserConfig_get_accept_forwards_to_priv_channels(this_ptr: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CounterpartyForwardingInfo_new(fee_base_msat_arg, fee_proportional_millionths_arg, cltv_expiry_delta_arg); + const nativeResponseValue = wasm.TS_UserConfig_get_accept_forwards_to_priv_channels(this_ptr); return nativeResponseValue; } - // uint64_t CounterpartyForwardingInfo_clone_ptr(LDKCounterpartyForwardingInfo *NONNULL_PTR arg); - export function CounterpartyForwardingInfo_clone_ptr(arg: number): number { + // void UserConfig_set_accept_forwards_to_priv_channels(struct LDKUserConfig *NONNULL_PTR this_ptr, bool val); + export function UserConfig_set_accept_forwards_to_priv_channels(this_ptr: number, val: boolean): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CounterpartyForwardingInfo_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_UserConfig_set_accept_forwards_to_priv_channels(this_ptr, val); + // debug statements here } - // struct LDKCounterpartyForwardingInfo CounterpartyForwardingInfo_clone(const struct LDKCounterpartyForwardingInfo *NONNULL_PTR orig); - export function CounterpartyForwardingInfo_clone(orig: number): number { + // bool UserConfig_get_accept_inbound_channels(const struct LDKUserConfig *NONNULL_PTR this_ptr); + export function UserConfig_get_accept_inbound_channels(this_ptr: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CounterpartyForwardingInfo_clone(orig); + const nativeResponseValue = wasm.TS_UserConfig_get_accept_inbound_channels(this_ptr); return nativeResponseValue; } - // void ChannelCounterparty_free(struct LDKChannelCounterparty this_obj); - export function ChannelCounterparty_free(this_obj: number): void { + // void UserConfig_set_accept_inbound_channels(struct LDKUserConfig *NONNULL_PTR this_ptr, bool val); + export function UserConfig_set_accept_inbound_channels(this_ptr: number, val: boolean): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelCounterparty_free(this_obj); + const nativeResponseValue = wasm.TS_UserConfig_set_accept_inbound_channels(this_ptr, val); // debug statements here } - // struct LDKPublicKey ChannelCounterparty_get_node_id(const struct LDKChannelCounterparty *NONNULL_PTR this_ptr); - export function ChannelCounterparty_get_node_id(this_ptr: number): Uint8Array { + // MUST_USE_RES struct LDKUserConfig UserConfig_new(struct LDKChannelHandshakeConfig own_channel_config_arg, struct LDKChannelHandshakeLimits peer_channel_config_limits_arg, struct LDKChannelConfig channel_options_arg, bool accept_forwards_to_priv_channels_arg, bool accept_inbound_channels_arg); + export function UserConfig_new(own_channel_config_arg: number, peer_channel_config_limits_arg: number, channel_options_arg: number, accept_forwards_to_priv_channels_arg: boolean, accept_inbound_channels_arg: boolean): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelCounterparty_get_node_id(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_UserConfig_new(own_channel_config_arg, peer_channel_config_limits_arg, channel_options_arg, accept_forwards_to_priv_channels_arg, accept_inbound_channels_arg); + return nativeResponseValue; } - // void ChannelCounterparty_set_node_id(struct LDKChannelCounterparty *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function ChannelCounterparty_set_node_id(this_ptr: number, val: Uint8Array): void { + // uint64_t UserConfig_clone_ptr(LDKUserConfig *NONNULL_PTR arg); + export function UserConfig_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelCounterparty_set_node_id(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_UserConfig_clone_ptr(arg); + return nativeResponseValue; } - // struct LDKInitFeatures ChannelCounterparty_get_features(const struct LDKChannelCounterparty *NONNULL_PTR this_ptr); - export function ChannelCounterparty_get_features(this_ptr: number): number { + // struct LDKUserConfig UserConfig_clone(const struct LDKUserConfig *NONNULL_PTR orig); + export function UserConfig_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelCounterparty_get_features(this_ptr); + const nativeResponseValue = wasm.TS_UserConfig_clone(orig); return nativeResponseValue; } - // void ChannelCounterparty_set_features(struct LDKChannelCounterparty *NONNULL_PTR this_ptr, struct LDKInitFeatures val); - export function ChannelCounterparty_set_features(this_ptr: number, val: number): void { + // MUST_USE_RES struct LDKUserConfig UserConfig_default(void); + export function UserConfig_default(): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_UserConfig_default(); + return nativeResponseValue; + } + // void BestBlock_free(struct LDKBestBlock this_obj); + export function BestBlock_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelCounterparty_set_features(this_ptr, val); + const nativeResponseValue = wasm.TS_BestBlock_free(this_obj); // debug statements here } - // uint64_t ChannelCounterparty_get_unspendable_punishment_reserve(const struct LDKChannelCounterparty *NONNULL_PTR this_ptr); - export function ChannelCounterparty_get_unspendable_punishment_reserve(this_ptr: number): number { + // uint64_t BestBlock_clone_ptr(LDKBestBlock *NONNULL_PTR arg); + export function BestBlock_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelCounterparty_get_unspendable_punishment_reserve(this_ptr); + const nativeResponseValue = wasm.TS_BestBlock_clone_ptr(arg); return nativeResponseValue; } - // void ChannelCounterparty_set_unspendable_punishment_reserve(struct LDKChannelCounterparty *NONNULL_PTR this_ptr, uint64_t val); - export function ChannelCounterparty_set_unspendable_punishment_reserve(this_ptr: number, val: number): void { + // struct LDKBestBlock BestBlock_clone(const struct LDKBestBlock *NONNULL_PTR orig); + export function BestBlock_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelCounterparty_set_unspendable_punishment_reserve(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_BestBlock_clone(orig); + return nativeResponseValue; } - // struct LDKCounterpartyForwardingInfo ChannelCounterparty_get_forwarding_info(const struct LDKChannelCounterparty *NONNULL_PTR this_ptr); - export function ChannelCounterparty_get_forwarding_info(this_ptr: number): number { + // MUST_USE_RES struct LDKBestBlock BestBlock_from_genesis(enum LDKNetwork network); + export function BestBlock_from_genesis(network: Network): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelCounterparty_get_forwarding_info(this_ptr); + const nativeResponseValue = wasm.TS_BestBlock_from_genesis(network); return nativeResponseValue; } - // void ChannelCounterparty_set_forwarding_info(struct LDKChannelCounterparty *NONNULL_PTR this_ptr, struct LDKCounterpartyForwardingInfo val); - export function ChannelCounterparty_set_forwarding_info(this_ptr: number, val: number): void { + // MUST_USE_RES struct LDKBestBlock BestBlock_new(struct LDKThirtyTwoBytes block_hash, uint32_t height); + export function BestBlock_new(block_hash: Uint8Array, height: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelCounterparty_set_forwarding_info(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_BestBlock_new(encodeUint8Array(block_hash), height); + return nativeResponseValue; } - // MUST_USE_RES struct LDKChannelCounterparty ChannelCounterparty_new(struct LDKPublicKey node_id_arg, struct LDKInitFeatures features_arg, uint64_t unspendable_punishment_reserve_arg, struct LDKCounterpartyForwardingInfo forwarding_info_arg); - export function ChannelCounterparty_new(node_id_arg: Uint8Array, features_arg: number, unspendable_punishment_reserve_arg: number, forwarding_info_arg: number): number { + // MUST_USE_RES struct LDKThirtyTwoBytes BestBlock_block_hash(const struct LDKBestBlock *NONNULL_PTR this_arg); + export function BestBlock_block_hash(this_arg: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelCounterparty_new(encodeArray(node_id_arg), features_arg, unspendable_punishment_reserve_arg, forwarding_info_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_BestBlock_block_hash(this_arg); + return decodeUint8Array(nativeResponseValue); } - // uint64_t ChannelCounterparty_clone_ptr(LDKChannelCounterparty *NONNULL_PTR arg); - export function ChannelCounterparty_clone_ptr(arg: number): number { + // MUST_USE_RES uint32_t BestBlock_height(const struct LDKBestBlock *NONNULL_PTR this_arg); + export function BestBlock_height(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelCounterparty_clone_ptr(arg); + const nativeResponseValue = wasm.TS_BestBlock_height(this_arg); return nativeResponseValue; } - // struct LDKChannelCounterparty ChannelCounterparty_clone(const struct LDKChannelCounterparty *NONNULL_PTR orig); - export function ChannelCounterparty_clone(orig: number): number { + // enum LDKAccessError AccessError_clone(const enum LDKAccessError *NONNULL_PTR orig); + export function AccessError_clone(orig: number): AccessError { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelCounterparty_clone(orig); + const nativeResponseValue = wasm.TS_AccessError_clone(orig); return nativeResponseValue; } - // void ChannelDetails_free(struct LDKChannelDetails this_obj); - export function ChannelDetails_free(this_obj: number): void { + // enum LDKAccessError AccessError_unknown_chain(void); + export function AccessError_unknown_chain(): AccessError { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_AccessError_unknown_chain(); + return nativeResponseValue; } - // const uint8_t (*ChannelDetails_get_channel_id(const struct LDKChannelDetails *NONNULL_PTR this_ptr))[32]; - export function ChannelDetails_get_channel_id(this_ptr: number): Uint8Array { + // enum LDKAccessError AccessError_unknown_tx(void); + export function AccessError_unknown_tx(): AccessError { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_get_channel_id(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_AccessError_unknown_tx(); + return nativeResponseValue; } - // void ChannelDetails_set_channel_id(struct LDKChannelDetails *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function ChannelDetails_set_channel_id(this_ptr: number, val: Uint8Array): void { + // void Access_free(struct LDKAccess this_ptr); + export function Access_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_set_channel_id(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_Access_free(this_ptr); // debug statements here } - // struct LDKChannelCounterparty ChannelDetails_get_counterparty(const struct LDKChannelDetails *NONNULL_PTR this_ptr); - export function ChannelDetails_get_counterparty(this_ptr: number): number { + // void Listen_free(struct LDKListen this_ptr); + export function Listen_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_get_counterparty(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Listen_free(this_ptr); + // debug statements here } - // void ChannelDetails_set_counterparty(struct LDKChannelDetails *NONNULL_PTR this_ptr, struct LDKChannelCounterparty val); - export function ChannelDetails_set_counterparty(this_ptr: number, val: number): void { + // void Confirm_free(struct LDKConfirm this_ptr); + export function Confirm_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_set_counterparty(this_ptr, val); + const nativeResponseValue = wasm.TS_Confirm_free(this_ptr); // debug statements here } - // struct LDKOutPoint ChannelDetails_get_funding_txo(const struct LDKChannelDetails *NONNULL_PTR this_ptr); - export function ChannelDetails_get_funding_txo(this_ptr: number): number { + // enum LDKChannelMonitorUpdateErr ChannelMonitorUpdateErr_clone(const enum LDKChannelMonitorUpdateErr *NONNULL_PTR orig); + export function ChannelMonitorUpdateErr_clone(orig: number): ChannelMonitorUpdateErr { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_get_funding_txo(this_ptr); + const nativeResponseValue = wasm.TS_ChannelMonitorUpdateErr_clone(orig); return nativeResponseValue; } - // void ChannelDetails_set_funding_txo(struct LDKChannelDetails *NONNULL_PTR this_ptr, struct LDKOutPoint val); - export function ChannelDetails_set_funding_txo(this_ptr: number, val: number): void { + // enum LDKChannelMonitorUpdateErr ChannelMonitorUpdateErr_temporary_failure(void); + export function ChannelMonitorUpdateErr_temporary_failure(): ChannelMonitorUpdateErr { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_set_funding_txo(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelMonitorUpdateErr_temporary_failure(); + return nativeResponseValue; } - // struct LDKCOption_u64Z ChannelDetails_get_short_channel_id(const struct LDKChannelDetails *NONNULL_PTR this_ptr); - export function ChannelDetails_get_short_channel_id(this_ptr: number): number { + // enum LDKChannelMonitorUpdateErr ChannelMonitorUpdateErr_permanent_failure(void); + export function ChannelMonitorUpdateErr_permanent_failure(): ChannelMonitorUpdateErr { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_get_short_channel_id(this_ptr); + const nativeResponseValue = wasm.TS_ChannelMonitorUpdateErr_permanent_failure(); return nativeResponseValue; } - // void ChannelDetails_set_short_channel_id(struct LDKChannelDetails *NONNULL_PTR this_ptr, struct LDKCOption_u64Z val); - export function ChannelDetails_set_short_channel_id(this_ptr: number, val: number): void { + // void Watch_free(struct LDKWatch this_ptr); + export function Watch_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_set_short_channel_id(this_ptr, val); + const nativeResponseValue = wasm.TS_Watch_free(this_ptr); // debug statements here } - // uint64_t ChannelDetails_get_channel_value_satoshis(const struct LDKChannelDetails *NONNULL_PTR this_ptr); - export function ChannelDetails_get_channel_value_satoshis(this_ptr: number): number { + // void Filter_free(struct LDKFilter this_ptr); + export function Filter_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_get_channel_value_satoshis(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Filter_free(this_ptr); + // debug statements here } - // void ChannelDetails_set_channel_value_satoshis(struct LDKChannelDetails *NONNULL_PTR this_ptr, uint64_t val); - export function ChannelDetails_set_channel_value_satoshis(this_ptr: number, val: number): void { + // void WatchedOutput_free(struct LDKWatchedOutput this_obj); + export function WatchedOutput_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_set_channel_value_satoshis(this_ptr, val); + const nativeResponseValue = wasm.TS_WatchedOutput_free(this_obj); // debug statements here } - // struct LDKCOption_u64Z ChannelDetails_get_unspendable_punishment_reserve(const struct LDKChannelDetails *NONNULL_PTR this_ptr); - export function ChannelDetails_get_unspendable_punishment_reserve(this_ptr: number): number { + // struct LDKThirtyTwoBytes WatchedOutput_get_block_hash(const struct LDKWatchedOutput *NONNULL_PTR this_ptr); + export function WatchedOutput_get_block_hash(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_get_unspendable_punishment_reserve(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_WatchedOutput_get_block_hash(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void ChannelDetails_set_unspendable_punishment_reserve(struct LDKChannelDetails *NONNULL_PTR this_ptr, struct LDKCOption_u64Z val); - export function ChannelDetails_set_unspendable_punishment_reserve(this_ptr: number, val: number): void { + // void WatchedOutput_set_block_hash(struct LDKWatchedOutput *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function WatchedOutput_set_block_hash(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_set_unspendable_punishment_reserve(this_ptr, val); + const nativeResponseValue = wasm.TS_WatchedOutput_set_block_hash(this_ptr, encodeUint8Array(val)); // debug statements here } - // uint64_t ChannelDetails_get_user_channel_id(const struct LDKChannelDetails *NONNULL_PTR this_ptr); - export function ChannelDetails_get_user_channel_id(this_ptr: number): number { + // struct LDKOutPoint WatchedOutput_get_outpoint(const struct LDKWatchedOutput *NONNULL_PTR this_ptr); + export function WatchedOutput_get_outpoint(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_get_user_channel_id(this_ptr); + const nativeResponseValue = wasm.TS_WatchedOutput_get_outpoint(this_ptr); return nativeResponseValue; } - // void ChannelDetails_set_user_channel_id(struct LDKChannelDetails *NONNULL_PTR this_ptr, uint64_t val); - export function ChannelDetails_set_user_channel_id(this_ptr: number, val: number): void { + // void WatchedOutput_set_outpoint(struct LDKWatchedOutput *NONNULL_PTR this_ptr, struct LDKOutPoint val); + export function WatchedOutput_set_outpoint(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_set_user_channel_id(this_ptr, val); + const nativeResponseValue = wasm.TS_WatchedOutput_set_outpoint(this_ptr, val); // debug statements here } - // uint64_t ChannelDetails_get_balance_msat(const struct LDKChannelDetails *NONNULL_PTR this_ptr); - export function ChannelDetails_get_balance_msat(this_ptr: number): number { + // struct LDKu8slice WatchedOutput_get_script_pubkey(const struct LDKWatchedOutput *NONNULL_PTR this_ptr); + export function WatchedOutput_get_script_pubkey(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_get_balance_msat(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_WatchedOutput_get_script_pubkey(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void ChannelDetails_set_balance_msat(struct LDKChannelDetails *NONNULL_PTR this_ptr, uint64_t val); - export function ChannelDetails_set_balance_msat(this_ptr: number, val: number): void { + // void WatchedOutput_set_script_pubkey(struct LDKWatchedOutput *NONNULL_PTR this_ptr, struct LDKCVec_u8Z val); + export function WatchedOutput_set_script_pubkey(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_set_balance_msat(this_ptr, val); + const nativeResponseValue = wasm.TS_WatchedOutput_set_script_pubkey(this_ptr, encodeUint8Array(val)); // debug statements here } - // uint64_t ChannelDetails_get_outbound_capacity_msat(const struct LDKChannelDetails *NONNULL_PTR this_ptr); - export function ChannelDetails_get_outbound_capacity_msat(this_ptr: number): number { + // MUST_USE_RES struct LDKWatchedOutput WatchedOutput_new(struct LDKThirtyTwoBytes block_hash_arg, struct LDKOutPoint outpoint_arg, struct LDKCVec_u8Z script_pubkey_arg); + export function WatchedOutput_new(block_hash_arg: Uint8Array, outpoint_arg: number, script_pubkey_arg: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_get_outbound_capacity_msat(this_ptr); + const nativeResponseValue = wasm.TS_WatchedOutput_new(encodeUint8Array(block_hash_arg), outpoint_arg, encodeUint8Array(script_pubkey_arg)); return nativeResponseValue; } - // void ChannelDetails_set_outbound_capacity_msat(struct LDKChannelDetails *NONNULL_PTR this_ptr, uint64_t val); - export function ChannelDetails_set_outbound_capacity_msat(this_ptr: number, val: number): void { + // uint64_t WatchedOutput_clone_ptr(LDKWatchedOutput *NONNULL_PTR arg); + export function WatchedOutput_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_set_outbound_capacity_msat(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_WatchedOutput_clone_ptr(arg); + return nativeResponseValue; } - // uint64_t ChannelDetails_get_inbound_capacity_msat(const struct LDKChannelDetails *NONNULL_PTR this_ptr); - export function ChannelDetails_get_inbound_capacity_msat(this_ptr: number): number { + // struct LDKWatchedOutput WatchedOutput_clone(const struct LDKWatchedOutput *NONNULL_PTR orig); + export function WatchedOutput_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_get_inbound_capacity_msat(this_ptr); + const nativeResponseValue = wasm.TS_WatchedOutput_clone(orig); return nativeResponseValue; } - // void ChannelDetails_set_inbound_capacity_msat(struct LDKChannelDetails *NONNULL_PTR this_ptr, uint64_t val); - export function ChannelDetails_set_inbound_capacity_msat(this_ptr: number, val: number): void { + // uint64_t WatchedOutput_hash(const struct LDKWatchedOutput *NONNULL_PTR o); + export function WatchedOutput_hash(o: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_WatchedOutput_hash(o); + return nativeResponseValue; + } + // void BroadcasterInterface_free(struct LDKBroadcasterInterface this_ptr); + export function BroadcasterInterface_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_set_inbound_capacity_msat(this_ptr, val); + const nativeResponseValue = wasm.TS_BroadcasterInterface_free(this_ptr); // debug statements here } - // struct LDKCOption_u32Z ChannelDetails_get_confirmations_required(const struct LDKChannelDetails *NONNULL_PTR this_ptr); - export function ChannelDetails_get_confirmations_required(this_ptr: number): number { + // enum LDKConfirmationTarget ConfirmationTarget_clone(const enum LDKConfirmationTarget *NONNULL_PTR orig); + export function ConfirmationTarget_clone(orig: number): ConfirmationTarget { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_get_confirmations_required(this_ptr); + const nativeResponseValue = wasm.TS_ConfirmationTarget_clone(orig); return nativeResponseValue; } - // void ChannelDetails_set_confirmations_required(struct LDKChannelDetails *NONNULL_PTR this_ptr, struct LDKCOption_u32Z val); - export function ChannelDetails_set_confirmations_required(this_ptr: number, val: number): void { + // enum LDKConfirmationTarget ConfirmationTarget_background(void); + export function ConfirmationTarget_background(): ConfirmationTarget { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_set_confirmations_required(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_ConfirmationTarget_background(); + return nativeResponseValue; } - // struct LDKCOption_u16Z ChannelDetails_get_force_close_spend_delay(const struct LDKChannelDetails *NONNULL_PTR this_ptr); - export function ChannelDetails_get_force_close_spend_delay(this_ptr: number): number { + // enum LDKConfirmationTarget ConfirmationTarget_normal(void); + export function ConfirmationTarget_normal(): ConfirmationTarget { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_get_force_close_spend_delay(this_ptr); + const nativeResponseValue = wasm.TS_ConfirmationTarget_normal(); return nativeResponseValue; } - // void ChannelDetails_set_force_close_spend_delay(struct LDKChannelDetails *NONNULL_PTR this_ptr, struct LDKCOption_u16Z val); - export function ChannelDetails_set_force_close_spend_delay(this_ptr: number, val: number): void { + // enum LDKConfirmationTarget ConfirmationTarget_high_priority(void); + export function ConfirmationTarget_high_priority(): ConfirmationTarget { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_set_force_close_spend_delay(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_ConfirmationTarget_high_priority(); + return nativeResponseValue; } - // bool ChannelDetails_get_is_outbound(const struct LDKChannelDetails *NONNULL_PTR this_ptr); - export function ChannelDetails_get_is_outbound(this_ptr: number): boolean { + // bool ConfirmationTarget_eq(const enum LDKConfirmationTarget *NONNULL_PTR a, const enum LDKConfirmationTarget *NONNULL_PTR b); + export function ConfirmationTarget_eq(a: number, b: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_get_is_outbound(this_ptr); + const nativeResponseValue = wasm.TS_ConfirmationTarget_eq(a, b); return nativeResponseValue; } - // void ChannelDetails_set_is_outbound(struct LDKChannelDetails *NONNULL_PTR this_ptr, bool val); - export function ChannelDetails_set_is_outbound(this_ptr: number, val: boolean): void { + // void FeeEstimator_free(struct LDKFeeEstimator this_ptr); + export function FeeEstimator_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_set_is_outbound(this_ptr, val); + const nativeResponseValue = wasm.TS_FeeEstimator_free(this_ptr); // debug statements here } - // bool ChannelDetails_get_is_funding_locked(const struct LDKChannelDetails *NONNULL_PTR this_ptr); - export function ChannelDetails_get_is_funding_locked(this_ptr: number): boolean { + // void MonitorUpdateId_free(struct LDKMonitorUpdateId this_obj); + export function MonitorUpdateId_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_get_is_funding_locked(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_MonitorUpdateId_free(this_obj); + // debug statements here } - // void ChannelDetails_set_is_funding_locked(struct LDKChannelDetails *NONNULL_PTR this_ptr, bool val); - export function ChannelDetails_set_is_funding_locked(this_ptr: number, val: boolean): void { + // uint64_t MonitorUpdateId_clone_ptr(LDKMonitorUpdateId *NONNULL_PTR arg); + export function MonitorUpdateId_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_set_is_funding_locked(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_MonitorUpdateId_clone_ptr(arg); + return nativeResponseValue; } - // bool ChannelDetails_get_is_usable(const struct LDKChannelDetails *NONNULL_PTR this_ptr); - export function ChannelDetails_get_is_usable(this_ptr: number): boolean { + // struct LDKMonitorUpdateId MonitorUpdateId_clone(const struct LDKMonitorUpdateId *NONNULL_PTR orig); + export function MonitorUpdateId_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_get_is_usable(this_ptr); + const nativeResponseValue = wasm.TS_MonitorUpdateId_clone(orig); return nativeResponseValue; } - // void ChannelDetails_set_is_usable(struct LDKChannelDetails *NONNULL_PTR this_ptr, bool val); - export function ChannelDetails_set_is_usable(this_ptr: number, val: boolean): void { + // uint64_t MonitorUpdateId_hash(const struct LDKMonitorUpdateId *NONNULL_PTR o); + export function MonitorUpdateId_hash(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_set_is_usable(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_MonitorUpdateId_hash(o); + return nativeResponseValue; } - // bool ChannelDetails_get_is_public(const struct LDKChannelDetails *NONNULL_PTR this_ptr); - export function ChannelDetails_get_is_public(this_ptr: number): boolean { + // bool MonitorUpdateId_eq(const struct LDKMonitorUpdateId *NONNULL_PTR a, const struct LDKMonitorUpdateId *NONNULL_PTR b); + export function MonitorUpdateId_eq(a: number, b: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_get_is_public(this_ptr); + const nativeResponseValue = wasm.TS_MonitorUpdateId_eq(a, b); return nativeResponseValue; } - // void ChannelDetails_set_is_public(struct LDKChannelDetails *NONNULL_PTR this_ptr, bool val); - export function ChannelDetails_set_is_public(this_ptr: number, val: boolean): void { + // void Persist_free(struct LDKPersist this_ptr); + export function Persist_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_set_is_public(this_ptr, val); + const nativeResponseValue = wasm.TS_Persist_free(this_ptr); // 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 LDKCOption_u64Z short_channel_id_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 inbound_capacity_msat_arg, struct LDKCOption_u32Z confirmations_required_arg, struct LDKCOption_u16Z force_close_spend_delay_arg, bool is_outbound_arg, bool is_funding_locked_arg, bool is_usable_arg, bool is_public_arg); - export function ChannelDetails_new(channel_id_arg: Uint8Array, counterparty_arg: number, funding_txo_arg: number, short_channel_id_arg: number, channel_value_satoshis_arg: number, unspendable_punishment_reserve_arg: number, user_channel_id_arg: number, balance_msat_arg: number, outbound_capacity_msat_arg: number, inbound_capacity_msat_arg: number, confirmations_required_arg: number, force_close_spend_delay_arg: number, is_outbound_arg: boolean, is_funding_locked_arg: boolean, is_usable_arg: boolean, is_public_arg: boolean): number { + // void LockedChannelMonitor_free(struct LDKLockedChannelMonitor this_obj); + export function LockedChannelMonitor_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_new(encodeArray(channel_id_arg), counterparty_arg, funding_txo_arg, short_channel_id_arg, channel_value_satoshis_arg, unspendable_punishment_reserve_arg, user_channel_id_arg, balance_msat_arg, outbound_capacity_msat_arg, inbound_capacity_msat_arg, confirmations_required_arg, force_close_spend_delay_arg, is_outbound_arg, is_funding_locked_arg, is_usable_arg, is_public_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_LockedChannelMonitor_free(this_obj); + // debug statements here } - // uint64_t ChannelDetails_clone_ptr(LDKChannelDetails *NONNULL_PTR arg); - export function ChannelDetails_clone_ptr(arg: number): number { + // void ChainMonitor_free(struct LDKChainMonitor this_obj); + export function ChainMonitor_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChainMonitor_free(this_obj); + // debug statements here } - // struct LDKChannelDetails ChannelDetails_clone(const struct LDKChannelDetails *NONNULL_PTR orig); - export function ChannelDetails_clone(orig: number): number { + // MUST_USE_RES struct LDKChainMonitor ChainMonitor_new(struct LDKCOption_FilterZ chain_source, struct LDKBroadcasterInterface broadcaster, struct LDKLogger logger, struct LDKFeeEstimator feeest, struct LDKPersist persister); + export function ChainMonitor_new(chain_source: number, broadcaster: number, logger: number, feeest: number, persister: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelDetails_clone(orig); + const nativeResponseValue = wasm.TS_ChainMonitor_new(chain_source, broadcaster, logger, feeest, persister); return nativeResponseValue; } - // void PaymentSendFailure_free(struct LDKPaymentSendFailure this_ptr); - export function PaymentSendFailure_free(this_ptr: number): void { + // MUST_USE_RES struct LDKCVec_BalanceZ ChainMonitor_get_claimable_balances(const struct LDKChainMonitor *NONNULL_PTR this_arg, struct LDKCVec_ChannelDetailsZ ignored_channels); + export function ChainMonitor_get_claimable_balances(this_arg: number, ignored_channels: number[]): number[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PaymentSendFailure_free(this_ptr); - // debug statements here + const nativeResponseValue = wasm.TS_ChainMonitor_get_claimable_balances(this_arg, ignored_channels); + return nativeResponseValue; } - // uint64_t PaymentSendFailure_clone_ptr(LDKPaymentSendFailure *NONNULL_PTR arg); - export function PaymentSendFailure_clone_ptr(arg: number): number { + // MUST_USE_RES struct LDKCResult_LockedChannelMonitorNoneZ ChainMonitor_get_monitor(const struct LDKChainMonitor *NONNULL_PTR this_arg, struct LDKOutPoint funding_txo); + export function ChainMonitor_get_monitor(this_arg: number, funding_txo: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PaymentSendFailure_clone_ptr(arg); + const nativeResponseValue = wasm.TS_ChainMonitor_get_monitor(this_arg, funding_txo); return nativeResponseValue; } - // struct LDKPaymentSendFailure PaymentSendFailure_clone(const struct LDKPaymentSendFailure *NONNULL_PTR orig); - export function PaymentSendFailure_clone(orig: number): number { + // MUST_USE_RES struct LDKCVec_OutPointZ ChainMonitor_list_monitors(const struct LDKChainMonitor *NONNULL_PTR this_arg); + export function ChainMonitor_list_monitors(this_arg: number): number[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PaymentSendFailure_clone(orig); + const nativeResponseValue = wasm.TS_ChainMonitor_list_monitors(this_arg); return nativeResponseValue; } - // struct LDKPaymentSendFailure PaymentSendFailure_parameter_error(struct LDKAPIError a); - export function PaymentSendFailure_parameter_error(a: number): number { + // 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); + export function ChainMonitor_channel_monitor_updated(this_arg: number, funding_txo: number, completed_update_id: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PaymentSendFailure_parameter_error(a); + const nativeResponseValue = wasm.TS_ChainMonitor_channel_monitor_updated(this_arg, funding_txo, completed_update_id); return nativeResponseValue; } - // struct LDKPaymentSendFailure PaymentSendFailure_path_parameter_error(struct LDKCVec_CResult_NoneAPIErrorZZ a); - export function PaymentSendFailure_path_parameter_error(a: number[]): number { + // struct LDKListen ChainMonitor_as_Listen(const struct LDKChainMonitor *NONNULL_PTR this_arg); + export function ChainMonitor_as_Listen(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PaymentSendFailure_path_parameter_error(a); + const nativeResponseValue = wasm.TS_ChainMonitor_as_Listen(this_arg); return nativeResponseValue; } - // struct LDKPaymentSendFailure PaymentSendFailure_all_failed_retry_safe(struct LDKCVec_APIErrorZ a); - export function PaymentSendFailure_all_failed_retry_safe(a: number[]): number { + // struct LDKConfirm ChainMonitor_as_Confirm(const struct LDKChainMonitor *NONNULL_PTR this_arg); + export function ChainMonitor_as_Confirm(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PaymentSendFailure_all_failed_retry_safe(a); + const nativeResponseValue = wasm.TS_ChainMonitor_as_Confirm(this_arg); return nativeResponseValue; } - // struct LDKPaymentSendFailure PaymentSendFailure_partial_failure(struct LDKCVec_CResult_NoneAPIErrorZZ results, struct LDKRouteParameters failed_paths_retry, struct LDKThirtyTwoBytes payment_id); - export function PaymentSendFailure_partial_failure(results: number[], failed_paths_retry: number, payment_id: Uint8Array): number { + // struct LDKWatch ChainMonitor_as_Watch(const struct LDKChainMonitor *NONNULL_PTR this_arg); + export function ChainMonitor_as_Watch(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PaymentSendFailure_partial_failure(results, failed_paths_retry, encodeArray(payment_id)); + const nativeResponseValue = wasm.TS_ChainMonitor_as_Watch(this_arg); 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); - export function ChannelManager_new(fee_est: number, chain_monitor: number, tx_broadcaster: number, logger: number, keys_manager: number, config: number, params: number): number { + // struct LDKEventsProvider ChainMonitor_as_EventsProvider(const struct LDKChainMonitor *NONNULL_PTR this_arg); + export function ChainMonitor_as_EventsProvider(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_new(fee_est, chain_monitor, tx_broadcaster, logger, keys_manager, config, params); + const nativeResponseValue = wasm.TS_ChainMonitor_as_EventsProvider(this_arg); return nativeResponseValue; } - // MUST_USE_RES struct LDKUserConfig ChannelManager_get_current_default_configuration(const struct LDKChannelManager *NONNULL_PTR this_arg); - export function ChannelManager_get_current_default_configuration(this_arg: number): number { + // void ChannelMonitorUpdate_free(struct LDKChannelMonitorUpdate this_obj); + export function ChannelMonitorUpdate_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_get_current_default_configuration(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelMonitorUpdate_free(this_obj); + // debug statements here } - // 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); - export function ChannelManager_create_channel(this_arg: number, their_network_key: Uint8Array, channel_value_satoshis: number, push_msat: number, user_channel_id: number, override_config: number): number { + // uint64_t ChannelMonitorUpdate_get_update_id(const struct LDKChannelMonitorUpdate *NONNULL_PTR this_ptr); + export function ChannelMonitorUpdate_get_update_id(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_create_channel(this_arg, encodeArray(their_network_key), channel_value_satoshis, push_msat, user_channel_id, override_config); + const nativeResponseValue = wasm.TS_ChannelMonitorUpdate_get_update_id(this_ptr); return nativeResponseValue; } - // MUST_USE_RES struct LDKCVec_ChannelDetailsZ ChannelManager_list_channels(const struct LDKChannelManager *NONNULL_PTR this_arg); - export function ChannelManager_list_channels(this_arg: number): number[] { + // void ChannelMonitorUpdate_set_update_id(struct LDKChannelMonitorUpdate *NONNULL_PTR this_ptr, uint64_t val); + export function ChannelMonitorUpdate_set_update_id(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_list_channels(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelMonitorUpdate_set_update_id(this_ptr, val); + // debug statements here } - // MUST_USE_RES struct LDKCVec_ChannelDetailsZ ChannelManager_list_usable_channels(const struct LDKChannelManager *NONNULL_PTR this_arg); - export function ChannelManager_list_usable_channels(this_arg: number): number[] { + // uint64_t ChannelMonitorUpdate_clone_ptr(LDKChannelMonitorUpdate *NONNULL_PTR arg); + export function ChannelMonitorUpdate_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_list_usable_channels(this_arg); + const nativeResponseValue = wasm.TS_ChannelMonitorUpdate_clone_ptr(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]); - export function ChannelManager_close_channel(this_arg: number, channel_id: Uint8Array): number { + // struct LDKChannelMonitorUpdate ChannelMonitorUpdate_clone(const struct LDKChannelMonitorUpdate *NONNULL_PTR orig); + export function ChannelMonitorUpdate_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_close_channel(this_arg, encodeArray(channel_id)); + const nativeResponseValue = wasm.TS_ChannelMonitorUpdate_clone(orig); return nativeResponseValue; } - // MUST_USE_RES struct LDKCResult_NoneAPIErrorZ ChannelManager_close_channel_with_target_feerate(const struct LDKChannelManager *NONNULL_PTR this_arg, const uint8_t (*channel_id)[32], uint32_t target_feerate_sats_per_1000_weight); - export function ChannelManager_close_channel_with_target_feerate(this_arg: number, channel_id: Uint8Array, target_feerate_sats_per_1000_weight: number): number { + // struct LDKCVec_u8Z ChannelMonitorUpdate_write(const struct LDKChannelMonitorUpdate *NONNULL_PTR obj); + export function ChannelMonitorUpdate_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_close_channel_with_target_feerate(this_arg, encodeArray(channel_id), target_feerate_sats_per_1000_weight); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelMonitorUpdate_write(obj); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES struct LDKCResult_NoneAPIErrorZ ChannelManager_force_close_channel(const struct LDKChannelManager *NONNULL_PTR this_arg, const uint8_t (*channel_id)[32]); - export function ChannelManager_force_close_channel(this_arg: number, channel_id: Uint8Array): number { + // struct LDKCResult_ChannelMonitorUpdateDecodeErrorZ ChannelMonitorUpdate_read(struct LDKu8slice ser); + export function ChannelMonitorUpdate_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_force_close_channel(this_arg, encodeArray(channel_id)); + const nativeResponseValue = wasm.TS_ChannelMonitorUpdate_read(encodeUint8Array(ser)); return nativeResponseValue; } - // void ChannelManager_force_close_all_channels(const struct LDKChannelManager *NONNULL_PTR this_arg); - export function ChannelManager_force_close_all_channels(this_arg: number): void { + // void MonitorEvent_free(struct LDKMonitorEvent this_ptr); + export function MonitorEvent_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_force_close_all_channels(this_arg); + const nativeResponseValue = wasm.TS_MonitorEvent_free(this_ptr); // 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); - export function ChannelManager_send_payment(this_arg: number, route: number, payment_hash: Uint8Array, payment_secret: Uint8Array): number { + // uint64_t MonitorEvent_clone_ptr(LDKMonitorEvent *NONNULL_PTR arg); + export function MonitorEvent_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_send_payment(this_arg, route, encodeArray(payment_hash), encodeArray(payment_secret)); + const nativeResponseValue = wasm.TS_MonitorEvent_clone_ptr(arg); 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); - export function ChannelManager_retry_payment(this_arg: number, route: number, payment_id: Uint8Array): number { + // struct LDKMonitorEvent MonitorEvent_clone(const struct LDKMonitorEvent *NONNULL_PTR orig); + export function MonitorEvent_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_retry_payment(this_arg, route, encodeArray(payment_id)); + const nativeResponseValue = wasm.TS_MonitorEvent_clone(orig); return nativeResponseValue; } - // void ChannelManager_abandon_payment(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKThirtyTwoBytes payment_id); - export function ChannelManager_abandon_payment(this_arg: number, payment_id: Uint8Array): void { + // struct LDKMonitorEvent MonitorEvent_htlcevent(struct LDKHTLCUpdate a); + export function MonitorEvent_htlcevent(a: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_abandon_payment(this_arg, encodeArray(payment_id)); - // debug statements here + const nativeResponseValue = wasm.TS_MonitorEvent_htlcevent(a); + return nativeResponseValue; } - // 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); - export function ChannelManager_send_spontaneous_payment(this_arg: number, route: number, payment_preimage: Uint8Array): number { + // struct LDKMonitorEvent MonitorEvent_commitment_tx_confirmed(struct LDKOutPoint a); + export function MonitorEvent_commitment_tx_confirmed(a: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_send_spontaneous_payment(this_arg, route, encodeArray(payment_preimage)); + const nativeResponseValue = wasm.TS_MonitorEvent_commitment_tx_confirmed(a); return nativeResponseValue; } - // MUST_USE_RES struct LDKCResult_NoneAPIErrorZ ChannelManager_funding_transaction_generated(const struct LDKChannelManager *NONNULL_PTR this_arg, const uint8_t (*temporary_channel_id)[32], struct LDKTransaction funding_transaction); - export function ChannelManager_funding_transaction_generated(this_arg: number, temporary_channel_id: Uint8Array, funding_transaction: Uint8Array): number { + // struct LDKMonitorEvent MonitorEvent_update_completed(struct LDKOutPoint funding_txo, uint64_t monitor_update_id); + export function MonitorEvent_update_completed(funding_txo: number, monitor_update_id: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_funding_transaction_generated(this_arg, encodeArray(temporary_channel_id), encodeArray(funding_transaction)); + const nativeResponseValue = wasm.TS_MonitorEvent_update_completed(funding_txo, monitor_update_id); return nativeResponseValue; } - // void ChannelManager_broadcast_node_announcement(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKThreeBytes rgb, struct LDKThirtyTwoBytes alias, struct LDKCVec_NetAddressZ addresses); - export function ChannelManager_broadcast_node_announcement(this_arg: number, rgb: Uint8Array, alias: Uint8Array, addresses: number[]): void { + // struct LDKMonitorEvent MonitorEvent_update_failed(struct LDKOutPoint a); + export function MonitorEvent_update_failed(a: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_broadcast_node_announcement(this_arg, encodeArray(rgb), encodeArray(alias), addresses); - // debug statements here + const nativeResponseValue = wasm.TS_MonitorEvent_update_failed(a); + return nativeResponseValue; } - // void ChannelManager_process_pending_htlc_forwards(const struct LDKChannelManager *NONNULL_PTR this_arg); - export function ChannelManager_process_pending_htlc_forwards(this_arg: number): void { + // struct LDKCVec_u8Z MonitorEvent_write(const struct LDKMonitorEvent *NONNULL_PTR obj); + export function MonitorEvent_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_process_pending_htlc_forwards(this_arg); - // debug statements here + const nativeResponseValue = wasm.TS_MonitorEvent_write(obj); + return decodeUint8Array(nativeResponseValue); } - // void ChannelManager_timer_tick_occurred(const struct LDKChannelManager *NONNULL_PTR this_arg); - export function ChannelManager_timer_tick_occurred(this_arg: number): void { + // struct LDKCResult_COption_MonitorEventZDecodeErrorZ MonitorEvent_read(struct LDKu8slice ser); + export function MonitorEvent_read(ser: Uint8Array): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_MonitorEvent_read(encodeUint8Array(ser)); + return nativeResponseValue; + } + // void HTLCUpdate_free(struct LDKHTLCUpdate this_obj); + export function HTLCUpdate_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_timer_tick_occurred(this_arg); + const nativeResponseValue = wasm.TS_HTLCUpdate_free(this_obj); // debug statements here } - // MUST_USE_RES bool ChannelManager_fail_htlc_backwards(const struct LDKChannelManager *NONNULL_PTR this_arg, const uint8_t (*payment_hash)[32]); - export function ChannelManager_fail_htlc_backwards(this_arg: number, payment_hash: Uint8Array): boolean { + // uint64_t HTLCUpdate_clone_ptr(LDKHTLCUpdate *NONNULL_PTR arg); + export function HTLCUpdate_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_fail_htlc_backwards(this_arg, encodeArray(payment_hash)); + const nativeResponseValue = wasm.TS_HTLCUpdate_clone_ptr(arg); return nativeResponseValue; } - // MUST_USE_RES bool ChannelManager_claim_funds(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKThirtyTwoBytes payment_preimage); - export function ChannelManager_claim_funds(this_arg: number, payment_preimage: Uint8Array): boolean { + // struct LDKHTLCUpdate HTLCUpdate_clone(const struct LDKHTLCUpdate *NONNULL_PTR orig); + export function HTLCUpdate_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_claim_funds(this_arg, encodeArray(payment_preimage)); + const nativeResponseValue = wasm.TS_HTLCUpdate_clone(orig); return nativeResponseValue; } - // MUST_USE_RES struct LDKPublicKey ChannelManager_get_our_node_id(const struct LDKChannelManager *NONNULL_PTR this_arg); - export function ChannelManager_get_our_node_id(this_arg: number): Uint8Array { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.ChannelManager_get_our_node_id(this_arg); - return decodeArray(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); - export function ChannelManager_create_inbound_payment(this_arg: number, min_value_msat: number, invoice_expiry_delta_secs: number): number { + // struct LDKCVec_u8Z HTLCUpdate_write(const struct LDKHTLCUpdate *NONNULL_PTR obj); + export function HTLCUpdate_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_create_inbound_payment(this_arg, min_value_msat, invoice_expiry_delta_secs); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_HTLCUpdate_write(obj); + return decodeUint8Array(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); - export function ChannelManager_create_inbound_payment_legacy(this_arg: number, min_value_msat: number, invoice_expiry_delta_secs: number): number { + // struct LDKCResult_HTLCUpdateDecodeErrorZ HTLCUpdate_read(struct LDKu8slice ser); + export function HTLCUpdate_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_create_inbound_payment_legacy(this_arg, min_value_msat, invoice_expiry_delta_secs); + const nativeResponseValue = wasm.TS_HTLCUpdate_read(encodeUint8Array(ser)); 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); - export function ChannelManager_create_inbound_payment_for_hash(this_arg: number, payment_hash: Uint8Array, min_value_msat: number, invoice_expiry_delta_secs: number): number { + // void Balance_free(struct LDKBalance this_ptr); + export function Balance_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_create_inbound_payment_for_hash(this_arg, encodeArray(payment_hash), min_value_msat, invoice_expiry_delta_secs); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Balance_free(this_ptr); + // debug statements here } - // 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); - export function ChannelManager_create_inbound_payment_for_hash_legacy(this_arg: number, payment_hash: Uint8Array, min_value_msat: number, invoice_expiry_delta_secs: number): number { + // uint64_t Balance_clone_ptr(LDKBalance *NONNULL_PTR arg); + export function Balance_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_create_inbound_payment_for_hash_legacy(this_arg, encodeArray(payment_hash), min_value_msat, invoice_expiry_delta_secs); + const nativeResponseValue = wasm.TS_Balance_clone_ptr(arg); return nativeResponseValue; } - // MUST_USE_RES struct LDKCResult_PaymentPreimageAPIErrorZ ChannelManager_get_payment_preimage(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKThirtyTwoBytes payment_hash, struct LDKThirtyTwoBytes payment_secret); - export function ChannelManager_get_payment_preimage(this_arg: number, payment_hash: Uint8Array, payment_secret: Uint8Array): number { + // struct LDKBalance Balance_clone(const struct LDKBalance *NONNULL_PTR orig); + export function Balance_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_get_payment_preimage(this_arg, encodeArray(payment_hash), encodeArray(payment_secret)); + const nativeResponseValue = wasm.TS_Balance_clone(orig); return nativeResponseValue; } - // struct LDKMessageSendEventsProvider ChannelManager_as_MessageSendEventsProvider(const struct LDKChannelManager *NONNULL_PTR this_arg); - export function ChannelManager_as_MessageSendEventsProvider(this_arg: number): number { + // struct LDKBalance Balance_claimable_on_channel_close(uint64_t claimable_amount_satoshis); + export function Balance_claimable_on_channel_close(claimable_amount_satoshis: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_as_MessageSendEventsProvider(this_arg); + const nativeResponseValue = wasm.TS_Balance_claimable_on_channel_close(claimable_amount_satoshis); return nativeResponseValue; } - // struct LDKEventsProvider ChannelManager_as_EventsProvider(const struct LDKChannelManager *NONNULL_PTR this_arg); - export function ChannelManager_as_EventsProvider(this_arg: number): number { + // struct LDKBalance Balance_claimable_awaiting_confirmations(uint64_t claimable_amount_satoshis, uint32_t confirmation_height); + export function Balance_claimable_awaiting_confirmations(claimable_amount_satoshis: number, confirmation_height: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_as_EventsProvider(this_arg); + const nativeResponseValue = wasm.TS_Balance_claimable_awaiting_confirmations(claimable_amount_satoshis, confirmation_height); return nativeResponseValue; } - // struct LDKListen ChannelManager_as_Listen(const struct LDKChannelManager *NONNULL_PTR this_arg); - export function ChannelManager_as_Listen(this_arg: number): number { + // struct LDKBalance Balance_contentious_claimable(uint64_t claimable_amount_satoshis, uint32_t timeout_height); + export function Balance_contentious_claimable(claimable_amount_satoshis: number, timeout_height: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_as_Listen(this_arg); + const nativeResponseValue = wasm.TS_Balance_contentious_claimable(claimable_amount_satoshis, timeout_height); return nativeResponseValue; } - // struct LDKConfirm ChannelManager_as_Confirm(const struct LDKChannelManager *NONNULL_PTR this_arg); - export function ChannelManager_as_Confirm(this_arg: number): number { + // struct LDKBalance Balance_maybe_claimable_htlcawaiting_timeout(uint64_t claimable_amount_satoshis, uint32_t claimable_height); + export function Balance_maybe_claimable_htlcawaiting_timeout(claimable_amount_satoshis: number, claimable_height: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_as_Confirm(this_arg); + const nativeResponseValue = wasm.TS_Balance_maybe_claimable_htlcawaiting_timeout(claimable_amount_satoshis, claimable_height); return nativeResponseValue; } - // MUST_USE_RES bool ChannelManager_await_persistable_update_timeout(const struct LDKChannelManager *NONNULL_PTR this_arg, uint64_t max_wait); - export function ChannelManager_await_persistable_update_timeout(this_arg: number, max_wait: number): boolean { + // bool Balance_eq(const struct LDKBalance *NONNULL_PTR a, const struct LDKBalance *NONNULL_PTR b); + export function Balance_eq(a: number, b: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_await_persistable_update_timeout(this_arg, max_wait); + const nativeResponseValue = wasm.TS_Balance_eq(a, b); return nativeResponseValue; } - // void ChannelManager_await_persistable_update(const struct LDKChannelManager *NONNULL_PTR this_arg); - export function ChannelManager_await_persistable_update(this_arg: number): void { + // void ChannelMonitor_free(struct LDKChannelMonitor this_obj); + export function ChannelMonitor_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_await_persistable_update(this_arg); + const nativeResponseValue = wasm.TS_ChannelMonitor_free(this_obj); // debug statements here } - // MUST_USE_RES struct LDKBestBlock ChannelManager_current_best_block(const struct LDKChannelManager *NONNULL_PTR this_arg); - export function ChannelManager_current_best_block(this_arg: number): number { + // uint64_t ChannelMonitor_clone_ptr(LDKChannelMonitor *NONNULL_PTR arg); + export function ChannelMonitor_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_current_best_block(this_arg); + const nativeResponseValue = wasm.TS_ChannelMonitor_clone_ptr(arg); return nativeResponseValue; } - // struct LDKChannelMessageHandler ChannelManager_as_ChannelMessageHandler(const struct LDKChannelManager *NONNULL_PTR this_arg); - export function ChannelManager_as_ChannelMessageHandler(this_arg: number): number { + // struct LDKChannelMonitor ChannelMonitor_clone(const struct LDKChannelMonitor *NONNULL_PTR orig); + export function ChannelMonitor_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_as_ChannelMessageHandler(this_arg); + const nativeResponseValue = wasm.TS_ChannelMonitor_clone(orig); return nativeResponseValue; } - // struct LDKCVec_u8Z ChannelManager_write(const struct LDKChannelManager *NONNULL_PTR obj); - export function ChannelManager_write(obj: number): Uint8Array { + // struct LDKCVec_u8Z ChannelMonitor_write(const struct LDKChannelMonitor *NONNULL_PTR obj); + export function ChannelMonitor_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelMonitor_write(obj); + return decodeUint8Array(nativeResponseValue); } - // void ChannelManagerReadArgs_free(struct LDKChannelManagerReadArgs this_obj); - export function ChannelManagerReadArgs_free(this_obj: number): void { + // MUST_USE_RES struct LDKCResult_NoneNoneZ ChannelMonitor_update_monitor(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const struct LDKChannelMonitorUpdate *NONNULL_PTR updates, const struct LDKBroadcasterInterface *NONNULL_PTR broadcaster, const struct LDKFeeEstimator *NONNULL_PTR fee_estimator, const struct LDKLogger *NONNULL_PTR logger); + export function ChannelMonitor_update_monitor(this_arg: number, updates: number, broadcaster: number, fee_estimator: number, logger: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManagerReadArgs_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelMonitor_update_monitor(this_arg, updates, broadcaster, fee_estimator, logger); + return nativeResponseValue; } - // const struct LDKKeysInterface *ChannelManagerReadArgs_get_keys_manager(const struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr); - export function ChannelManagerReadArgs_get_keys_manager(this_ptr: number): number { + // MUST_USE_RES uint64_t ChannelMonitor_get_latest_update_id(const struct LDKChannelMonitor *NONNULL_PTR this_arg); + export function ChannelMonitor_get_latest_update_id(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManagerReadArgs_get_keys_manager(this_ptr); + const nativeResponseValue = wasm.TS_ChannelMonitor_get_latest_update_id(this_arg); return nativeResponseValue; } - // void ChannelManagerReadArgs_set_keys_manager(struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr, struct LDKKeysInterface val); - export function ChannelManagerReadArgs_set_keys_manager(this_ptr: number, val: number): void { + // MUST_USE_RES struct LDKC2Tuple_OutPointScriptZ ChannelMonitor_get_funding_txo(const struct LDKChannelMonitor *NONNULL_PTR this_arg); + export function ChannelMonitor_get_funding_txo(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManagerReadArgs_set_keys_manager(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelMonitor_get_funding_txo(this_arg); + return nativeResponseValue; } - // const struct LDKFeeEstimator *ChannelManagerReadArgs_get_fee_estimator(const struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr); - export function ChannelManagerReadArgs_get_fee_estimator(this_ptr: number): number { + // MUST_USE_RES struct LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ ChannelMonitor_get_outputs_to_watch(const struct LDKChannelMonitor *NONNULL_PTR this_arg); + export function ChannelMonitor_get_outputs_to_watch(this_arg: number): number[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManagerReadArgs_get_fee_estimator(this_ptr); + const nativeResponseValue = wasm.TS_ChannelMonitor_get_outputs_to_watch(this_arg); return nativeResponseValue; } - // void ChannelManagerReadArgs_set_fee_estimator(struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr, struct LDKFeeEstimator val); - export function ChannelManagerReadArgs_set_fee_estimator(this_ptr: number, val: number): void { + // void ChannelMonitor_load_outputs_to_watch(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const struct LDKFilter *NONNULL_PTR filter); + export function ChannelMonitor_load_outputs_to_watch(this_arg: number, filter: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManagerReadArgs_set_fee_estimator(this_ptr, val); + const nativeResponseValue = wasm.TS_ChannelMonitor_load_outputs_to_watch(this_arg, filter); // debug statements here } - // const struct LDKWatch *ChannelManagerReadArgs_get_chain_monitor(const struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr); - export function ChannelManagerReadArgs_get_chain_monitor(this_ptr: number): number { + // MUST_USE_RES struct LDKCVec_MonitorEventZ ChannelMonitor_get_and_clear_pending_monitor_events(const struct LDKChannelMonitor *NONNULL_PTR this_arg); + export function ChannelMonitor_get_and_clear_pending_monitor_events(this_arg: number): number[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManagerReadArgs_get_chain_monitor(this_ptr); + const nativeResponseValue = wasm.TS_ChannelMonitor_get_and_clear_pending_monitor_events(this_arg); return nativeResponseValue; } - // void ChannelManagerReadArgs_set_chain_monitor(struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr, struct LDKWatch val); - export function ChannelManagerReadArgs_set_chain_monitor(this_ptr: number, val: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.ChannelManagerReadArgs_set_chain_monitor(this_ptr, val); - // debug statements here - } - // const struct LDKBroadcasterInterface *ChannelManagerReadArgs_get_tx_broadcaster(const struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr); - export function ChannelManagerReadArgs_get_tx_broadcaster(this_ptr: number): number { + // MUST_USE_RES struct LDKCVec_EventZ ChannelMonitor_get_and_clear_pending_events(const struct LDKChannelMonitor *NONNULL_PTR this_arg); + export function ChannelMonitor_get_and_clear_pending_events(this_arg: number): number[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManagerReadArgs_get_tx_broadcaster(this_ptr); + const nativeResponseValue = wasm.TS_ChannelMonitor_get_and_clear_pending_events(this_arg); return nativeResponseValue; } - // void ChannelManagerReadArgs_set_tx_broadcaster(struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr, struct LDKBroadcasterInterface val); - export function ChannelManagerReadArgs_set_tx_broadcaster(this_ptr: number, val: number): void { + // MUST_USE_RES struct LDKCVec_TransactionZ ChannelMonitor_get_latest_holder_commitment_txn(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const struct LDKLogger *NONNULL_PTR logger); + export function ChannelMonitor_get_latest_holder_commitment_txn(this_arg: number, logger: number): Uint8Array[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManagerReadArgs_set_tx_broadcaster(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelMonitor_get_latest_holder_commitment_txn(this_arg, logger); + return nativeResponseValue; } - // const struct LDKLogger *ChannelManagerReadArgs_get_logger(const struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr); - export function ChannelManagerReadArgs_get_logger(this_ptr: number): number { + // MUST_USE_RES struct LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ ChannelMonitor_block_connected(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const uint8_t (*header)[80], struct LDKCVec_C2Tuple_usizeTransactionZZ txdata, uint32_t height, struct LDKBroadcasterInterface broadcaster, struct LDKFeeEstimator fee_estimator, struct LDKLogger logger); + export function ChannelMonitor_block_connected(this_arg: number, header: Uint8Array, txdata: number[], height: number, broadcaster: number, fee_estimator: number, logger: number): number[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManagerReadArgs_get_logger(this_ptr); + const nativeResponseValue = wasm.TS_ChannelMonitor_block_connected(this_arg, encodeUint8Array(header), txdata, height, broadcaster, fee_estimator, logger); return nativeResponseValue; } - // void ChannelManagerReadArgs_set_logger(struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr, struct LDKLogger val); - export function ChannelManagerReadArgs_set_logger(this_ptr: number, val: number): void { + // void ChannelMonitor_block_disconnected(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const uint8_t (*header)[80], uint32_t height, struct LDKBroadcasterInterface broadcaster, struct LDKFeeEstimator fee_estimator, struct LDKLogger logger); + export function ChannelMonitor_block_disconnected(this_arg: number, header: Uint8Array, height: number, broadcaster: number, fee_estimator: number, logger: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManagerReadArgs_set_logger(this_ptr, val); + const nativeResponseValue = wasm.TS_ChannelMonitor_block_disconnected(this_arg, encodeUint8Array(header), height, broadcaster, fee_estimator, logger); // debug statements here } - // struct LDKUserConfig ChannelManagerReadArgs_get_default_config(const struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr); - export function ChannelManagerReadArgs_get_default_config(this_ptr: number): number { + // MUST_USE_RES struct LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ ChannelMonitor_transactions_confirmed(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const uint8_t (*header)[80], struct LDKCVec_C2Tuple_usizeTransactionZZ txdata, uint32_t height, struct LDKBroadcasterInterface broadcaster, struct LDKFeeEstimator fee_estimator, struct LDKLogger logger); + export function ChannelMonitor_transactions_confirmed(this_arg: number, header: Uint8Array, txdata: number[], height: number, broadcaster: number, fee_estimator: number, logger: number): number[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManagerReadArgs_get_default_config(this_ptr); + const nativeResponseValue = wasm.TS_ChannelMonitor_transactions_confirmed(this_arg, encodeUint8Array(header), txdata, height, broadcaster, fee_estimator, logger); return nativeResponseValue; } - // void ChannelManagerReadArgs_set_default_config(struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr, struct LDKUserConfig val); - export function ChannelManagerReadArgs_set_default_config(this_ptr: number, val: number): void { + // void ChannelMonitor_transaction_unconfirmed(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const uint8_t (*txid)[32], struct LDKBroadcasterInterface broadcaster, struct LDKFeeEstimator fee_estimator, struct LDKLogger logger); + export function ChannelMonitor_transaction_unconfirmed(this_arg: number, txid: Uint8Array, broadcaster: number, fee_estimator: number, logger: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManagerReadArgs_set_default_config(this_ptr, val); + const nativeResponseValue = wasm.TS_ChannelMonitor_transaction_unconfirmed(this_arg, encodeUint8Array(txid), broadcaster, fee_estimator, logger); // 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); - export function ChannelManagerReadArgs_new(keys_manager: number, fee_estimator: number, chain_monitor: number, tx_broadcaster: number, logger: number, default_config: number, channel_monitors: number[]): number { + // MUST_USE_RES struct LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ ChannelMonitor_best_block_updated(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const uint8_t (*header)[80], uint32_t height, struct LDKBroadcasterInterface broadcaster, struct LDKFeeEstimator fee_estimator, struct LDKLogger logger); + export function ChannelMonitor_best_block_updated(this_arg: number, header: Uint8Array, height: number, broadcaster: number, fee_estimator: number, logger: number): number[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManagerReadArgs_new(keys_manager, fee_estimator, chain_monitor, tx_broadcaster, logger, default_config, channel_monitors); + const nativeResponseValue = wasm.TS_ChannelMonitor_best_block_updated(this_arg, encodeUint8Array(header), height, broadcaster, fee_estimator, logger); return nativeResponseValue; } - // struct LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ C2Tuple_BlockHashChannelManagerZ_read(struct LDKu8slice ser, struct LDKChannelManagerReadArgs arg); - export function C2Tuple_BlockHashChannelManagerZ_read(ser: Uint8Array, arg: number): number { + // MUST_USE_RES struct LDKCVec_TxidZ ChannelMonitor_get_relevant_txids(const struct LDKChannelMonitor *NONNULL_PTR this_arg); + export function ChannelMonitor_get_relevant_txids(this_arg: number): Uint8Array[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.C2Tuple_BlockHashChannelManagerZ_read(encodeArray(ser), arg); + const nativeResponseValue = wasm.TS_ChannelMonitor_get_relevant_txids(this_arg); return nativeResponseValue; } - // void DecodeError_free(struct LDKDecodeError this_obj); - export function DecodeError_free(this_obj: number): void { + // MUST_USE_RES struct LDKBestBlock ChannelMonitor_current_best_block(const struct LDKChannelMonitor *NONNULL_PTR this_arg); + export function ChannelMonitor_current_best_block(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DecodeError_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelMonitor_current_best_block(this_arg); + return nativeResponseValue; } - // uint64_t DecodeError_clone_ptr(LDKDecodeError *NONNULL_PTR arg); - export function DecodeError_clone_ptr(arg: number): number { + // MUST_USE_RES struct LDKCVec_BalanceZ ChannelMonitor_get_claimable_balances(const struct LDKChannelMonitor *NONNULL_PTR this_arg); + export function ChannelMonitor_get_claimable_balances(this_arg: number): number[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DecodeError_clone_ptr(arg); + const nativeResponseValue = wasm.TS_ChannelMonitor_get_claimable_balances(this_arg); return nativeResponseValue; } - // struct LDKDecodeError DecodeError_clone(const struct LDKDecodeError *NONNULL_PTR orig); - export function DecodeError_clone(orig: number): number { + // struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ C2Tuple_BlockHashChannelMonitorZ_read(struct LDKu8slice ser, const struct LDKKeysInterface *NONNULL_PTR arg); + export function C2Tuple_BlockHashChannelMonitorZ_read(ser: Uint8Array, arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DecodeError_clone(orig); + const nativeResponseValue = wasm.TS_C2Tuple_BlockHashChannelMonitorZ_read(encodeUint8Array(ser), arg); return nativeResponseValue; } - // void Init_free(struct LDKInit this_obj); - export function Init_free(this_obj: number): void { + // void OutPoint_free(struct LDKOutPoint this_obj); + export function OutPoint_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Init_free(this_obj); + const nativeResponseValue = wasm.TS_OutPoint_free(this_obj); // debug statements here } - // struct LDKInitFeatures Init_get_features(const struct LDKInit *NONNULL_PTR this_ptr); - export function Init_get_features(this_ptr: number): number { + // const uint8_t (*OutPoint_get_txid(const struct LDKOutPoint *NONNULL_PTR this_ptr))[32]; + export function OutPoint_get_txid(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Init_get_features(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_OutPoint_get_txid(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void Init_set_features(struct LDKInit *NONNULL_PTR this_ptr, struct LDKInitFeatures val); - export function Init_set_features(this_ptr: number, val: number): void { + // void OutPoint_set_txid(struct LDKOutPoint *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function OutPoint_set_txid(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Init_set_features(this_ptr, val); + const nativeResponseValue = wasm.TS_OutPoint_set_txid(this_ptr, encodeUint8Array(val)); // debug statements here } - // MUST_USE_RES struct LDKInit Init_new(struct LDKInitFeatures features_arg); - export function Init_new(features_arg: number): number { + // uint16_t OutPoint_get_index(const struct LDKOutPoint *NONNULL_PTR this_ptr); + export function OutPoint_get_index(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Init_new(features_arg); + const nativeResponseValue = wasm.TS_OutPoint_get_index(this_ptr); return nativeResponseValue; } - // uint64_t Init_clone_ptr(LDKInit *NONNULL_PTR arg); - export function Init_clone_ptr(arg: number): number { + // void OutPoint_set_index(struct LDKOutPoint *NONNULL_PTR this_ptr, uint16_t val); + export function OutPoint_set_index(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Init_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_OutPoint_set_index(this_ptr, val); + // debug statements here } - // struct LDKInit Init_clone(const struct LDKInit *NONNULL_PTR orig); - export function Init_clone(orig: number): number { + // MUST_USE_RES struct LDKOutPoint OutPoint_new(struct LDKThirtyTwoBytes txid_arg, uint16_t index_arg); + export function OutPoint_new(txid_arg: Uint8Array, index_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Init_clone(orig); + const nativeResponseValue = wasm.TS_OutPoint_new(encodeUint8Array(txid_arg), index_arg); return nativeResponseValue; } - // void ErrorMessage_free(struct LDKErrorMessage this_obj); - export function ErrorMessage_free(this_obj: number): void { + // uint64_t OutPoint_clone_ptr(LDKOutPoint *NONNULL_PTR arg); + export function OutPoint_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ErrorMessage_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_OutPoint_clone_ptr(arg); + return nativeResponseValue; } - // const uint8_t (*ErrorMessage_get_channel_id(const struct LDKErrorMessage *NONNULL_PTR this_ptr))[32]; - export function ErrorMessage_get_channel_id(this_ptr: number): Uint8Array { + // struct LDKOutPoint OutPoint_clone(const struct LDKOutPoint *NONNULL_PTR orig); + export function OutPoint_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ErrorMessage_get_channel_id(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_OutPoint_clone(orig); + return nativeResponseValue; } - // void ErrorMessage_set_channel_id(struct LDKErrorMessage *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function ErrorMessage_set_channel_id(this_ptr: number, val: Uint8Array): void { + // bool OutPoint_eq(const struct LDKOutPoint *NONNULL_PTR a, const struct LDKOutPoint *NONNULL_PTR b); + export function OutPoint_eq(a: number, b: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ErrorMessage_set_channel_id(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_OutPoint_eq(a, b); + return nativeResponseValue; } - // struct LDKStr ErrorMessage_get_data(const struct LDKErrorMessage *NONNULL_PTR this_ptr); - export function ErrorMessage_get_data(this_ptr: number): String { + // uint64_t OutPoint_hash(const struct LDKOutPoint *NONNULL_PTR o); + export function OutPoint_hash(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ErrorMessage_get_data(this_ptr); + const nativeResponseValue = wasm.TS_OutPoint_hash(o); return nativeResponseValue; } - // void ErrorMessage_set_data(struct LDKErrorMessage *NONNULL_PTR this_ptr, struct LDKStr val); - export function ErrorMessage_set_data(this_ptr: number, val: String): void { + // MUST_USE_RES struct LDKThirtyTwoBytes OutPoint_to_channel_id(const struct LDKOutPoint *NONNULL_PTR this_arg); + export function OutPoint_to_channel_id(this_arg: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ErrorMessage_set_data(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_OutPoint_to_channel_id(this_arg); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES struct LDKErrorMessage ErrorMessage_new(struct LDKThirtyTwoBytes channel_id_arg, struct LDKStr data_arg); - export function ErrorMessage_new(channel_id_arg: Uint8Array, data_arg: String): number { + // struct LDKCVec_u8Z OutPoint_write(const struct LDKOutPoint *NONNULL_PTR obj); + export function OutPoint_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ErrorMessage_new(encodeArray(channel_id_arg), data_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_OutPoint_write(obj); + return decodeUint8Array(nativeResponseValue); } - // uint64_t ErrorMessage_clone_ptr(LDKErrorMessage *NONNULL_PTR arg); - export function ErrorMessage_clone_ptr(arg: number): number { + // struct LDKCResult_OutPointDecodeErrorZ OutPoint_read(struct LDKu8slice ser); + export function OutPoint_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ErrorMessage_clone_ptr(arg); + const nativeResponseValue = wasm.TS_OutPoint_read(encodeUint8Array(ser)); return nativeResponseValue; } - // struct LDKErrorMessage ErrorMessage_clone(const struct LDKErrorMessage *NONNULL_PTR orig); - export function ErrorMessage_clone(orig: number): number { + // void DelayedPaymentOutputDescriptor_free(struct LDKDelayedPaymentOutputDescriptor this_obj); + export function DelayedPaymentOutputDescriptor_free(this_obj: number): void { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_DelayedPaymentOutputDescriptor_free(this_obj); + // debug statements here + } + // struct LDKOutPoint DelayedPaymentOutputDescriptor_get_outpoint(const struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr); + export function DelayedPaymentOutputDescriptor_get_outpoint(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ErrorMessage_clone(orig); + const nativeResponseValue = wasm.TS_DelayedPaymentOutputDescriptor_get_outpoint(this_ptr); return nativeResponseValue; } - // void Ping_free(struct LDKPing this_obj); - export function Ping_free(this_obj: number): void { + // void DelayedPaymentOutputDescriptor_set_outpoint(struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr, struct LDKOutPoint val); + export function DelayedPaymentOutputDescriptor_set_outpoint(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Ping_free(this_obj); + const nativeResponseValue = wasm.TS_DelayedPaymentOutputDescriptor_set_outpoint(this_ptr, val); // debug statements here } - // uint16_t Ping_get_ponglen(const struct LDKPing *NONNULL_PTR this_ptr); - export function Ping_get_ponglen(this_ptr: number): number { + // struct LDKPublicKey DelayedPaymentOutputDescriptor_get_per_commitment_point(const struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr); + export function DelayedPaymentOutputDescriptor_get_per_commitment_point(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Ping_get_ponglen(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_DelayedPaymentOutputDescriptor_get_per_commitment_point(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void Ping_set_ponglen(struct LDKPing *NONNULL_PTR this_ptr, uint16_t val); - export function Ping_set_ponglen(this_ptr: number, val: number): void { + // void DelayedPaymentOutputDescriptor_set_per_commitment_point(struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function DelayedPaymentOutputDescriptor_set_per_commitment_point(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Ping_set_ponglen(this_ptr, val); + const nativeResponseValue = wasm.TS_DelayedPaymentOutputDescriptor_set_per_commitment_point(this_ptr, encodeUint8Array(val)); // debug statements here } - // uint16_t Ping_get_byteslen(const struct LDKPing *NONNULL_PTR this_ptr); - export function Ping_get_byteslen(this_ptr: number): number { + // uint16_t DelayedPaymentOutputDescriptor_get_to_self_delay(const struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr); + export function DelayedPaymentOutputDescriptor_get_to_self_delay(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Ping_get_byteslen(this_ptr); + const nativeResponseValue = wasm.TS_DelayedPaymentOutputDescriptor_get_to_self_delay(this_ptr); return nativeResponseValue; } - // void Ping_set_byteslen(struct LDKPing *NONNULL_PTR this_ptr, uint16_t val); - export function Ping_set_byteslen(this_ptr: number, val: number): void { + // void DelayedPaymentOutputDescriptor_set_to_self_delay(struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr, uint16_t val); + export function DelayedPaymentOutputDescriptor_set_to_self_delay(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Ping_set_byteslen(this_ptr, val); + const nativeResponseValue = wasm.TS_DelayedPaymentOutputDescriptor_set_to_self_delay(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKPing Ping_new(uint16_t ponglen_arg, uint16_t byteslen_arg); - export function Ping_new(ponglen_arg: number, byteslen_arg: number): number { + // void DelayedPaymentOutputDescriptor_set_output(struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr, struct LDKTxOut val); + export function DelayedPaymentOutputDescriptor_set_output(this_ptr: number, val: number): void { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_DelayedPaymentOutputDescriptor_set_output(this_ptr, val); + // debug statements here + } + // struct LDKPublicKey DelayedPaymentOutputDescriptor_get_revocation_pubkey(const struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr); + export function DelayedPaymentOutputDescriptor_get_revocation_pubkey(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Ping_new(ponglen_arg, byteslen_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_DelayedPaymentOutputDescriptor_get_revocation_pubkey(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // uint64_t Ping_clone_ptr(LDKPing *NONNULL_PTR arg); - export function Ping_clone_ptr(arg: number): number { + // void DelayedPaymentOutputDescriptor_set_revocation_pubkey(struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function DelayedPaymentOutputDescriptor_set_revocation_pubkey(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Ping_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_DelayedPaymentOutputDescriptor_set_revocation_pubkey(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKPing Ping_clone(const struct LDKPing *NONNULL_PTR orig); - export function Ping_clone(orig: number): number { + // const uint8_t (*DelayedPaymentOutputDescriptor_get_channel_keys_id(const struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr))[32]; + export function DelayedPaymentOutputDescriptor_get_channel_keys_id(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Ping_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_DelayedPaymentOutputDescriptor_get_channel_keys_id(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void Pong_free(struct LDKPong this_obj); - export function Pong_free(this_obj: number): void { + // void DelayedPaymentOutputDescriptor_set_channel_keys_id(struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function DelayedPaymentOutputDescriptor_set_channel_keys_id(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Pong_free(this_obj); + const nativeResponseValue = wasm.TS_DelayedPaymentOutputDescriptor_set_channel_keys_id(this_ptr, encodeUint8Array(val)); // debug statements here } - // uint16_t Pong_get_byteslen(const struct LDKPong *NONNULL_PTR this_ptr); - export function Pong_get_byteslen(this_ptr: number): number { + // uint64_t DelayedPaymentOutputDescriptor_get_channel_value_satoshis(const struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr); + export function DelayedPaymentOutputDescriptor_get_channel_value_satoshis(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Pong_get_byteslen(this_ptr); + const nativeResponseValue = wasm.TS_DelayedPaymentOutputDescriptor_get_channel_value_satoshis(this_ptr); return nativeResponseValue; } - // void Pong_set_byteslen(struct LDKPong *NONNULL_PTR this_ptr, uint16_t val); - export function Pong_set_byteslen(this_ptr: number, val: number): void { + // void DelayedPaymentOutputDescriptor_set_channel_value_satoshis(struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr, uint64_t val); + export function DelayedPaymentOutputDescriptor_set_channel_value_satoshis(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Pong_set_byteslen(this_ptr, val); + const nativeResponseValue = wasm.TS_DelayedPaymentOutputDescriptor_set_channel_value_satoshis(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKPong Pong_new(uint16_t byteslen_arg); - export function Pong_new(byteslen_arg: number): number { + // MUST_USE_RES struct LDKDelayedPaymentOutputDescriptor DelayedPaymentOutputDescriptor_new(struct LDKOutPoint outpoint_arg, struct LDKPublicKey per_commitment_point_arg, uint16_t to_self_delay_arg, struct LDKTxOut output_arg, struct LDKPublicKey revocation_pubkey_arg, struct LDKThirtyTwoBytes channel_keys_id_arg, uint64_t channel_value_satoshis_arg); + export function DelayedPaymentOutputDescriptor_new(outpoint_arg: number, per_commitment_point_arg: Uint8Array, to_self_delay_arg: number, output_arg: number, revocation_pubkey_arg: Uint8Array, channel_keys_id_arg: Uint8Array, channel_value_satoshis_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Pong_new(byteslen_arg); + const nativeResponseValue = wasm.TS_DelayedPaymentOutputDescriptor_new(outpoint_arg, encodeUint8Array(per_commitment_point_arg), to_self_delay_arg, output_arg, encodeUint8Array(revocation_pubkey_arg), encodeUint8Array(channel_keys_id_arg), channel_value_satoshis_arg); return nativeResponseValue; } - // uint64_t Pong_clone_ptr(LDKPong *NONNULL_PTR arg); - export function Pong_clone_ptr(arg: number): number { + // uint64_t DelayedPaymentOutputDescriptor_clone_ptr(LDKDelayedPaymentOutputDescriptor *NONNULL_PTR arg); + export function DelayedPaymentOutputDescriptor_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Pong_clone_ptr(arg); + const nativeResponseValue = wasm.TS_DelayedPaymentOutputDescriptor_clone_ptr(arg); return nativeResponseValue; } - // struct LDKPong Pong_clone(const struct LDKPong *NONNULL_PTR orig); - export function Pong_clone(orig: number): number { + // struct LDKDelayedPaymentOutputDescriptor DelayedPaymentOutputDescriptor_clone(const struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR orig); + export function DelayedPaymentOutputDescriptor_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Pong_clone(orig); + const nativeResponseValue = wasm.TS_DelayedPaymentOutputDescriptor_clone(orig); return nativeResponseValue; } - // void OpenChannel_free(struct LDKOpenChannel this_obj); - export function OpenChannel_free(this_obj: number): void { + // struct LDKCVec_u8Z DelayedPaymentOutputDescriptor_write(const struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR obj); + export function DelayedPaymentOutputDescriptor_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_DelayedPaymentOutputDescriptor_write(obj); + return decodeUint8Array(nativeResponseValue); } - // const uint8_t (*OpenChannel_get_chain_hash(const struct LDKOpenChannel *NONNULL_PTR this_ptr))[32]; - export function OpenChannel_get_chain_hash(this_ptr: number): Uint8Array { + // struct LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ DelayedPaymentOutputDescriptor_read(struct LDKu8slice ser); + export function DelayedPaymentOutputDescriptor_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_get_chain_hash(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_DelayedPaymentOutputDescriptor_read(encodeUint8Array(ser)); + return nativeResponseValue; } - // void OpenChannel_set_chain_hash(struct LDKOpenChannel *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function OpenChannel_set_chain_hash(this_ptr: number, val: Uint8Array): void { + // void StaticPaymentOutputDescriptor_free(struct LDKStaticPaymentOutputDescriptor this_obj); + export function StaticPaymentOutputDescriptor_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_set_chain_hash(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_StaticPaymentOutputDescriptor_free(this_obj); // debug statements here } - // const uint8_t (*OpenChannel_get_temporary_channel_id(const struct LDKOpenChannel *NONNULL_PTR this_ptr))[32]; - export function OpenChannel_get_temporary_channel_id(this_ptr: number): Uint8Array { + // struct LDKOutPoint StaticPaymentOutputDescriptor_get_outpoint(const struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR this_ptr); + export function StaticPaymentOutputDescriptor_get_outpoint(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_get_temporary_channel_id(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_StaticPaymentOutputDescriptor_get_outpoint(this_ptr); + return nativeResponseValue; } - // void OpenChannel_set_temporary_channel_id(struct LDKOpenChannel *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function OpenChannel_set_temporary_channel_id(this_ptr: number, val: Uint8Array): void { + // void StaticPaymentOutputDescriptor_set_outpoint(struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR this_ptr, struct LDKOutPoint val); + export function StaticPaymentOutputDescriptor_set_outpoint(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_set_temporary_channel_id(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_StaticPaymentOutputDescriptor_set_outpoint(this_ptr, val); // debug statements here } - // uint64_t OpenChannel_get_funding_satoshis(const struct LDKOpenChannel *NONNULL_PTR this_ptr); - export function OpenChannel_get_funding_satoshis(this_ptr: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.OpenChannel_get_funding_satoshis(this_ptr); - return nativeResponseValue; - } - // void OpenChannel_set_funding_satoshis(struct LDKOpenChannel *NONNULL_PTR this_ptr, uint64_t val); - export function OpenChannel_set_funding_satoshis(this_ptr: number, val: number): void { + // void StaticPaymentOutputDescriptor_set_output(struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR this_ptr, struct LDKTxOut val); + export function StaticPaymentOutputDescriptor_set_output(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_set_funding_satoshis(this_ptr, val); + const nativeResponseValue = wasm.TS_StaticPaymentOutputDescriptor_set_output(this_ptr, val); // debug statements here } - // uint64_t OpenChannel_get_push_msat(const struct LDKOpenChannel *NONNULL_PTR this_ptr); - export function OpenChannel_get_push_msat(this_ptr: number): number { + // const uint8_t (*StaticPaymentOutputDescriptor_get_channel_keys_id(const struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR this_ptr))[32]; + export function StaticPaymentOutputDescriptor_get_channel_keys_id(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_get_push_msat(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_StaticPaymentOutputDescriptor_get_channel_keys_id(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void OpenChannel_set_push_msat(struct LDKOpenChannel *NONNULL_PTR this_ptr, uint64_t val); - export function OpenChannel_set_push_msat(this_ptr: number, val: number): void { + // void StaticPaymentOutputDescriptor_set_channel_keys_id(struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function StaticPaymentOutputDescriptor_set_channel_keys_id(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_set_push_msat(this_ptr, val); + const nativeResponseValue = wasm.TS_StaticPaymentOutputDescriptor_set_channel_keys_id(this_ptr, encodeUint8Array(val)); // debug statements here } - // uint64_t OpenChannel_get_dust_limit_satoshis(const struct LDKOpenChannel *NONNULL_PTR this_ptr); - export function OpenChannel_get_dust_limit_satoshis(this_ptr: number): number { + // uint64_t StaticPaymentOutputDescriptor_get_channel_value_satoshis(const struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR this_ptr); + export function StaticPaymentOutputDescriptor_get_channel_value_satoshis(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_get_dust_limit_satoshis(this_ptr); + const nativeResponseValue = wasm.TS_StaticPaymentOutputDescriptor_get_channel_value_satoshis(this_ptr); return nativeResponseValue; } - // void OpenChannel_set_dust_limit_satoshis(struct LDKOpenChannel *NONNULL_PTR this_ptr, uint64_t val); - export function OpenChannel_set_dust_limit_satoshis(this_ptr: number, val: number): void { + // void StaticPaymentOutputDescriptor_set_channel_value_satoshis(struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR this_ptr, uint64_t val); + export function StaticPaymentOutputDescriptor_set_channel_value_satoshis(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_set_dust_limit_satoshis(this_ptr, val); + const nativeResponseValue = wasm.TS_StaticPaymentOutputDescriptor_set_channel_value_satoshis(this_ptr, val); // debug statements here } - // uint64_t OpenChannel_get_max_htlc_value_in_flight_msat(const struct LDKOpenChannel *NONNULL_PTR this_ptr); - export function OpenChannel_get_max_htlc_value_in_flight_msat(this_ptr: number): number { + // MUST_USE_RES struct LDKStaticPaymentOutputDescriptor StaticPaymentOutputDescriptor_new(struct LDKOutPoint outpoint_arg, struct LDKTxOut output_arg, struct LDKThirtyTwoBytes channel_keys_id_arg, uint64_t channel_value_satoshis_arg); + export function StaticPaymentOutputDescriptor_new(outpoint_arg: number, output_arg: number, channel_keys_id_arg: Uint8Array, channel_value_satoshis_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_get_max_htlc_value_in_flight_msat(this_ptr); + const nativeResponseValue = wasm.TS_StaticPaymentOutputDescriptor_new(outpoint_arg, output_arg, encodeUint8Array(channel_keys_id_arg), channel_value_satoshis_arg); return nativeResponseValue; } - // void OpenChannel_set_max_htlc_value_in_flight_msat(struct LDKOpenChannel *NONNULL_PTR this_ptr, uint64_t val); - export function OpenChannel_set_max_htlc_value_in_flight_msat(this_ptr: number, val: number): void { + // uint64_t StaticPaymentOutputDescriptor_clone_ptr(LDKStaticPaymentOutputDescriptor *NONNULL_PTR arg); + export function StaticPaymentOutputDescriptor_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_set_max_htlc_value_in_flight_msat(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_StaticPaymentOutputDescriptor_clone_ptr(arg); + return nativeResponseValue; } - // uint64_t OpenChannel_get_channel_reserve_satoshis(const struct LDKOpenChannel *NONNULL_PTR this_ptr); - export function OpenChannel_get_channel_reserve_satoshis(this_ptr: number): number { + // struct LDKStaticPaymentOutputDescriptor StaticPaymentOutputDescriptor_clone(const struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR orig); + export function StaticPaymentOutputDescriptor_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_get_channel_reserve_satoshis(this_ptr); + const nativeResponseValue = wasm.TS_StaticPaymentOutputDescriptor_clone(orig); return nativeResponseValue; } - // void OpenChannel_set_channel_reserve_satoshis(struct LDKOpenChannel *NONNULL_PTR this_ptr, uint64_t val); - export function OpenChannel_set_channel_reserve_satoshis(this_ptr: number, val: number): void { + // struct LDKCVec_u8Z StaticPaymentOutputDescriptor_write(const struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR obj); + export function StaticPaymentOutputDescriptor_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_set_channel_reserve_satoshis(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_StaticPaymentOutputDescriptor_write(obj); + return decodeUint8Array(nativeResponseValue); } - // uint64_t OpenChannel_get_htlc_minimum_msat(const struct LDKOpenChannel *NONNULL_PTR this_ptr); - export function OpenChannel_get_htlc_minimum_msat(this_ptr: number): number { + // struct LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ StaticPaymentOutputDescriptor_read(struct LDKu8slice ser); + export function StaticPaymentOutputDescriptor_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_get_htlc_minimum_msat(this_ptr); + const nativeResponseValue = wasm.TS_StaticPaymentOutputDescriptor_read(encodeUint8Array(ser)); return nativeResponseValue; } - // void OpenChannel_set_htlc_minimum_msat(struct LDKOpenChannel *NONNULL_PTR this_ptr, uint64_t val); - export function OpenChannel_set_htlc_minimum_msat(this_ptr: number, val: number): void { + // void SpendableOutputDescriptor_free(struct LDKSpendableOutputDescriptor this_ptr); + export function SpendableOutputDescriptor_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_set_htlc_minimum_msat(this_ptr, val); + const nativeResponseValue = wasm.TS_SpendableOutputDescriptor_free(this_ptr); // debug statements here } - // uint32_t OpenChannel_get_feerate_per_kw(const struct LDKOpenChannel *NONNULL_PTR this_ptr); - export function OpenChannel_get_feerate_per_kw(this_ptr: number): number { + // uint64_t SpendableOutputDescriptor_clone_ptr(LDKSpendableOutputDescriptor *NONNULL_PTR arg); + export function SpendableOutputDescriptor_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_get_feerate_per_kw(this_ptr); + const nativeResponseValue = wasm.TS_SpendableOutputDescriptor_clone_ptr(arg); return nativeResponseValue; } - // void OpenChannel_set_feerate_per_kw(struct LDKOpenChannel *NONNULL_PTR this_ptr, uint32_t val); - export function OpenChannel_set_feerate_per_kw(this_ptr: number, val: number): void { + // struct LDKSpendableOutputDescriptor SpendableOutputDescriptor_clone(const struct LDKSpendableOutputDescriptor *NONNULL_PTR orig); + export function SpendableOutputDescriptor_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_set_feerate_per_kw(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_SpendableOutputDescriptor_clone(orig); + return nativeResponseValue; } - // uint16_t OpenChannel_get_to_self_delay(const struct LDKOpenChannel *NONNULL_PTR this_ptr); - export function OpenChannel_get_to_self_delay(this_ptr: number): number { + // struct LDKSpendableOutputDescriptor SpendableOutputDescriptor_static_output(struct LDKOutPoint outpoint, struct LDKTxOut output); + export function SpendableOutputDescriptor_static_output(outpoint: number, output: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_get_to_self_delay(this_ptr); + const nativeResponseValue = wasm.TS_SpendableOutputDescriptor_static_output(outpoint, output); return nativeResponseValue; } - // void OpenChannel_set_to_self_delay(struct LDKOpenChannel *NONNULL_PTR this_ptr, uint16_t val); - export function OpenChannel_set_to_self_delay(this_ptr: number, val: number): void { + // struct LDKSpendableOutputDescriptor SpendableOutputDescriptor_delayed_payment_output(struct LDKDelayedPaymentOutputDescriptor a); + export function SpendableOutputDescriptor_delayed_payment_output(a: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_set_to_self_delay(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_SpendableOutputDescriptor_delayed_payment_output(a); + return nativeResponseValue; } - // uint16_t OpenChannel_get_max_accepted_htlcs(const struct LDKOpenChannel *NONNULL_PTR this_ptr); - export function OpenChannel_get_max_accepted_htlcs(this_ptr: number): number { + // struct LDKSpendableOutputDescriptor SpendableOutputDescriptor_static_payment_output(struct LDKStaticPaymentOutputDescriptor a); + export function SpendableOutputDescriptor_static_payment_output(a: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_get_max_accepted_htlcs(this_ptr); + const nativeResponseValue = wasm.TS_SpendableOutputDescriptor_static_payment_output(a); return nativeResponseValue; } - // void OpenChannel_set_max_accepted_htlcs(struct LDKOpenChannel *NONNULL_PTR this_ptr, uint16_t val); - export function OpenChannel_set_max_accepted_htlcs(this_ptr: number, val: number): void { + // struct LDKCVec_u8Z SpendableOutputDescriptor_write(const struct LDKSpendableOutputDescriptor *NONNULL_PTR obj); + export function SpendableOutputDescriptor_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_set_max_accepted_htlcs(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_SpendableOutputDescriptor_write(obj); + return decodeUint8Array(nativeResponseValue); } - // struct LDKPublicKey OpenChannel_get_funding_pubkey(const struct LDKOpenChannel *NONNULL_PTR this_ptr); - export function OpenChannel_get_funding_pubkey(this_ptr: number): Uint8Array { + // struct LDKCResult_SpendableOutputDescriptorDecodeErrorZ SpendableOutputDescriptor_read(struct LDKu8slice ser); + export function SpendableOutputDescriptor_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_get_funding_pubkey(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_SpendableOutputDescriptor_read(encodeUint8Array(ser)); + return nativeResponseValue; } - // void OpenChannel_set_funding_pubkey(struct LDKOpenChannel *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function OpenChannel_set_funding_pubkey(this_ptr: number, val: Uint8Array): void { + // void BaseSign_free(struct LDKBaseSign this_ptr); + export function BaseSign_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_set_funding_pubkey(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_BaseSign_free(this_ptr); // debug statements here } - // struct LDKPublicKey OpenChannel_get_revocation_basepoint(const struct LDKOpenChannel *NONNULL_PTR this_ptr); - export function OpenChannel_get_revocation_basepoint(this_ptr: number): Uint8Array { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.OpenChannel_get_revocation_basepoint(this_ptr); - return decodeArray(nativeResponseValue); - } - // void OpenChannel_set_revocation_basepoint(struct LDKOpenChannel *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function OpenChannel_set_revocation_basepoint(this_ptr: number, val: Uint8Array): void { + // uint64_t Sign_clone_ptr(LDKSign *NONNULL_PTR arg); + export function Sign_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_set_revocation_basepoint(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_Sign_clone_ptr(arg); + return nativeResponseValue; } - // struct LDKPublicKey OpenChannel_get_payment_point(const struct LDKOpenChannel *NONNULL_PTR this_ptr); - export function OpenChannel_get_payment_point(this_ptr: number): Uint8Array { + // struct LDKSign Sign_clone(const struct LDKSign *NONNULL_PTR orig); + export function Sign_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_get_payment_point(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_Sign_clone(orig); + return nativeResponseValue; } - // void OpenChannel_set_payment_point(struct LDKOpenChannel *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function OpenChannel_set_payment_point(this_ptr: number, val: Uint8Array): void { + // void Sign_free(struct LDKSign this_ptr); + export function Sign_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_set_payment_point(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_Sign_free(this_ptr); // debug statements here } - // struct LDKPublicKey OpenChannel_get_delayed_payment_basepoint(const struct LDKOpenChannel *NONNULL_PTR this_ptr); - export function OpenChannel_get_delayed_payment_basepoint(this_ptr: number): Uint8Array { + // void KeysInterface_free(struct LDKKeysInterface this_ptr); + export function KeysInterface_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_get_delayed_payment_basepoint(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_KeysInterface_free(this_ptr); + // debug statements here } - // void OpenChannel_set_delayed_payment_basepoint(struct LDKOpenChannel *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function OpenChannel_set_delayed_payment_basepoint(this_ptr: number, val: Uint8Array): void { + // void InMemorySigner_free(struct LDKInMemorySigner this_obj); + export function InMemorySigner_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_set_delayed_payment_basepoint(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_InMemorySigner_free(this_obj); // debug statements here } - // struct LDKPublicKey OpenChannel_get_htlc_basepoint(const struct LDKOpenChannel *NONNULL_PTR this_ptr); - export function OpenChannel_get_htlc_basepoint(this_ptr: number): Uint8Array { + // const uint8_t (*InMemorySigner_get_funding_key(const struct LDKInMemorySigner *NONNULL_PTR this_ptr))[32]; + export function InMemorySigner_get_funding_key(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_get_htlc_basepoint(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_InMemorySigner_get_funding_key(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void OpenChannel_set_htlc_basepoint(struct LDKOpenChannel *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function OpenChannel_set_htlc_basepoint(this_ptr: number, val: Uint8Array): void { + // void InMemorySigner_set_funding_key(struct LDKInMemorySigner *NONNULL_PTR this_ptr, struct LDKSecretKey val); + export function InMemorySigner_set_funding_key(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_set_htlc_basepoint(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_InMemorySigner_set_funding_key(this_ptr, encodeUint8Array(val)); // debug statements here } - // struct LDKPublicKey OpenChannel_get_first_per_commitment_point(const struct LDKOpenChannel *NONNULL_PTR this_ptr); - export function OpenChannel_get_first_per_commitment_point(this_ptr: number): Uint8Array { + // const uint8_t (*InMemorySigner_get_revocation_base_key(const struct LDKInMemorySigner *NONNULL_PTR this_ptr))[32]; + export function InMemorySigner_get_revocation_base_key(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_get_first_per_commitment_point(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_InMemorySigner_get_revocation_base_key(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void OpenChannel_set_first_per_commitment_point(struct LDKOpenChannel *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function OpenChannel_set_first_per_commitment_point(this_ptr: number, val: Uint8Array): void { + // void InMemorySigner_set_revocation_base_key(struct LDKInMemorySigner *NONNULL_PTR this_ptr, struct LDKSecretKey val); + export function InMemorySigner_set_revocation_base_key(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_set_first_per_commitment_point(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_InMemorySigner_set_revocation_base_key(this_ptr, encodeUint8Array(val)); // debug statements here } - // uint8_t OpenChannel_get_channel_flags(const struct LDKOpenChannel *NONNULL_PTR this_ptr); - export function OpenChannel_get_channel_flags(this_ptr: number): number { + // const uint8_t (*InMemorySigner_get_payment_key(const struct LDKInMemorySigner *NONNULL_PTR this_ptr))[32]; + export function InMemorySigner_get_payment_key(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_get_channel_flags(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_InMemorySigner_get_payment_key(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void OpenChannel_set_channel_flags(struct LDKOpenChannel *NONNULL_PTR this_ptr, uint8_t val); - export function OpenChannel_set_channel_flags(this_ptr: number, val: number): void { + // void InMemorySigner_set_payment_key(struct LDKInMemorySigner *NONNULL_PTR this_ptr, struct LDKSecretKey val); + export function InMemorySigner_set_payment_key(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_set_channel_flags(this_ptr, val); + const nativeResponseValue = wasm.TS_InMemorySigner_set_payment_key(this_ptr, encodeUint8Array(val)); // debug statements here } - // struct LDKChannelTypeFeatures OpenChannel_get_channel_type(const struct LDKOpenChannel *NONNULL_PTR this_ptr); - export function OpenChannel_get_channel_type(this_ptr: number): number { + // const uint8_t (*InMemorySigner_get_delayed_payment_base_key(const struct LDKInMemorySigner *NONNULL_PTR this_ptr))[32]; + export function InMemorySigner_get_delayed_payment_base_key(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_get_channel_type(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_InMemorySigner_get_delayed_payment_base_key(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void OpenChannel_set_channel_type(struct LDKOpenChannel *NONNULL_PTR this_ptr, struct LDKChannelTypeFeatures val); - export function OpenChannel_set_channel_type(this_ptr: number, val: number): void { + // void InMemorySigner_set_delayed_payment_base_key(struct LDKInMemorySigner *NONNULL_PTR this_ptr, struct LDKSecretKey val); + export function InMemorySigner_set_delayed_payment_base_key(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_set_channel_type(this_ptr, val); + const nativeResponseValue = wasm.TS_InMemorySigner_set_delayed_payment_base_key(this_ptr, encodeUint8Array(val)); // debug statements here } - // uint64_t OpenChannel_clone_ptr(LDKOpenChannel *NONNULL_PTR arg); - export function OpenChannel_clone_ptr(arg: number): number { + // const uint8_t (*InMemorySigner_get_htlc_base_key(const struct LDKInMemorySigner *NONNULL_PTR this_ptr))[32]; + export function InMemorySigner_get_htlc_base_key(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_InMemorySigner_get_htlc_base_key(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKOpenChannel OpenChannel_clone(const struct LDKOpenChannel *NONNULL_PTR orig); - export function OpenChannel_clone(orig: number): number { + // void InMemorySigner_set_htlc_base_key(struct LDKInMemorySigner *NONNULL_PTR this_ptr, struct LDKSecretKey val); + export function InMemorySigner_set_htlc_base_key(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_InMemorySigner_set_htlc_base_key(this_ptr, encodeUint8Array(val)); + // debug statements here } - // void AcceptChannel_free(struct LDKAcceptChannel this_obj); - export function AcceptChannel_free(this_obj: number): void { + // const uint8_t (*InMemorySigner_get_commitment_seed(const struct LDKInMemorySigner *NONNULL_PTR this_ptr))[32]; + export function InMemorySigner_get_commitment_seed(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_InMemorySigner_get_commitment_seed(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // const uint8_t (*AcceptChannel_get_temporary_channel_id(const struct LDKAcceptChannel *NONNULL_PTR this_ptr))[32]; - export function AcceptChannel_get_temporary_channel_id(this_ptr: number): Uint8Array { + // void InMemorySigner_set_commitment_seed(struct LDKInMemorySigner *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function InMemorySigner_set_commitment_seed(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_get_temporary_channel_id(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_InMemorySigner_set_commitment_seed(this_ptr, encodeUint8Array(val)); + // debug statements here } - // void AcceptChannel_set_temporary_channel_id(struct LDKAcceptChannel *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function AcceptChannel_set_temporary_channel_id(this_ptr: number, val: Uint8Array): void { + // uint64_t InMemorySigner_clone_ptr(LDKInMemorySigner *NONNULL_PTR arg); + export function InMemorySigner_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_set_temporary_channel_id(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_InMemorySigner_clone_ptr(arg); + return nativeResponseValue; } - // uint64_t AcceptChannel_get_dust_limit_satoshis(const struct LDKAcceptChannel *NONNULL_PTR this_ptr); - export function AcceptChannel_get_dust_limit_satoshis(this_ptr: number): number { + // struct LDKInMemorySigner InMemorySigner_clone(const struct LDKInMemorySigner *NONNULL_PTR orig); + export function InMemorySigner_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_get_dust_limit_satoshis(this_ptr); + const nativeResponseValue = wasm.TS_InMemorySigner_clone(orig); return nativeResponseValue; } - // void AcceptChannel_set_dust_limit_satoshis(struct LDKAcceptChannel *NONNULL_PTR this_ptr, uint64_t val); - export function AcceptChannel_set_dust_limit_satoshis(this_ptr: number, val: number): void { + // 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); + export function InMemorySigner_new(funding_key: Uint8Array, revocation_base_key: Uint8Array, payment_key: Uint8Array, delayed_payment_base_key: Uint8Array, htlc_base_key: Uint8Array, commitment_seed: Uint8Array, channel_value_satoshis: number, channel_keys_id: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_set_dust_limit_satoshis(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_InMemorySigner_new(encodeUint8Array(funding_key), encodeUint8Array(revocation_base_key), encodeUint8Array(payment_key), encodeUint8Array(delayed_payment_base_key), encodeUint8Array(htlc_base_key), encodeUint8Array(commitment_seed), channel_value_satoshis, encodeUint8Array(channel_keys_id)); + return nativeResponseValue; } - // uint64_t AcceptChannel_get_max_htlc_value_in_flight_msat(const struct LDKAcceptChannel *NONNULL_PTR this_ptr); - export function AcceptChannel_get_max_htlc_value_in_flight_msat(this_ptr: number): number { + // MUST_USE_RES struct LDKChannelPublicKeys InMemorySigner_counterparty_pubkeys(const struct LDKInMemorySigner *NONNULL_PTR this_arg); + export function InMemorySigner_counterparty_pubkeys(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_get_max_htlc_value_in_flight_msat(this_ptr); + const nativeResponseValue = wasm.TS_InMemorySigner_counterparty_pubkeys(this_arg); return nativeResponseValue; } - // void AcceptChannel_set_max_htlc_value_in_flight_msat(struct LDKAcceptChannel *NONNULL_PTR this_ptr, uint64_t val); - export function AcceptChannel_set_max_htlc_value_in_flight_msat(this_ptr: number, val: number): void { + // MUST_USE_RES uint16_t InMemorySigner_counterparty_selected_contest_delay(const struct LDKInMemorySigner *NONNULL_PTR this_arg); + export function InMemorySigner_counterparty_selected_contest_delay(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_set_max_htlc_value_in_flight_msat(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_InMemorySigner_counterparty_selected_contest_delay(this_arg); + return nativeResponseValue; } - // uint64_t AcceptChannel_get_channel_reserve_satoshis(const struct LDKAcceptChannel *NONNULL_PTR this_ptr); - export function AcceptChannel_get_channel_reserve_satoshis(this_ptr: number): number { + // MUST_USE_RES uint16_t InMemorySigner_holder_selected_contest_delay(const struct LDKInMemorySigner *NONNULL_PTR this_arg); + export function InMemorySigner_holder_selected_contest_delay(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_get_channel_reserve_satoshis(this_ptr); + const nativeResponseValue = wasm.TS_InMemorySigner_holder_selected_contest_delay(this_arg); return nativeResponseValue; } - // void AcceptChannel_set_channel_reserve_satoshis(struct LDKAcceptChannel *NONNULL_PTR this_ptr, uint64_t val); - export function AcceptChannel_set_channel_reserve_satoshis(this_ptr: number, val: number): void { + // MUST_USE_RES bool InMemorySigner_is_outbound(const struct LDKInMemorySigner *NONNULL_PTR this_arg); + export function InMemorySigner_is_outbound(this_arg: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_set_channel_reserve_satoshis(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_InMemorySigner_is_outbound(this_arg); + return nativeResponseValue; } - // uint64_t AcceptChannel_get_htlc_minimum_msat(const struct LDKAcceptChannel *NONNULL_PTR this_ptr); - export function AcceptChannel_get_htlc_minimum_msat(this_ptr: number): number { + // MUST_USE_RES struct LDKOutPoint InMemorySigner_funding_outpoint(const struct LDKInMemorySigner *NONNULL_PTR this_arg); + export function InMemorySigner_funding_outpoint(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_get_htlc_minimum_msat(this_ptr); + const nativeResponseValue = wasm.TS_InMemorySigner_funding_outpoint(this_arg); return nativeResponseValue; } - // void AcceptChannel_set_htlc_minimum_msat(struct LDKAcceptChannel *NONNULL_PTR this_ptr, uint64_t val); - export function AcceptChannel_set_htlc_minimum_msat(this_ptr: number, val: number): void { + // MUST_USE_RES struct LDKChannelTransactionParameters InMemorySigner_get_channel_parameters(const struct LDKInMemorySigner *NONNULL_PTR this_arg); + export function InMemorySigner_get_channel_parameters(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_set_htlc_minimum_msat(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_InMemorySigner_get_channel_parameters(this_arg); + return nativeResponseValue; } - // uint32_t AcceptChannel_get_minimum_depth(const struct LDKAcceptChannel *NONNULL_PTR this_ptr); - export function AcceptChannel_get_minimum_depth(this_ptr: number): number { + // MUST_USE_RES bool InMemorySigner_opt_anchors(const struct LDKInMemorySigner *NONNULL_PTR this_arg); + export function InMemorySigner_opt_anchors(this_arg: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_get_minimum_depth(this_ptr); + const nativeResponseValue = wasm.TS_InMemorySigner_opt_anchors(this_arg); return nativeResponseValue; } - // void AcceptChannel_set_minimum_depth(struct LDKAcceptChannel *NONNULL_PTR this_ptr, uint32_t val); - export function AcceptChannel_set_minimum_depth(this_ptr: number, val: number): void { + // MUST_USE_RES struct LDKCResult_CVec_CVec_u8ZZNoneZ InMemorySigner_sign_counterparty_payment_input(const struct LDKInMemorySigner *NONNULL_PTR this_arg, struct LDKTransaction spend_tx, uintptr_t input_idx, const struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR descriptor); + export function InMemorySigner_sign_counterparty_payment_input(this_arg: number, spend_tx: Uint8Array, input_idx: number, descriptor: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_set_minimum_depth(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_InMemorySigner_sign_counterparty_payment_input(this_arg, encodeUint8Array(spend_tx), input_idx, descriptor); + return nativeResponseValue; } - // uint16_t AcceptChannel_get_to_self_delay(const struct LDKAcceptChannel *NONNULL_PTR this_ptr); - export function AcceptChannel_get_to_self_delay(this_ptr: number): number { + // MUST_USE_RES struct LDKCResult_CVec_CVec_u8ZZNoneZ InMemorySigner_sign_dynamic_p2wsh_input(const struct LDKInMemorySigner *NONNULL_PTR this_arg, struct LDKTransaction spend_tx, uintptr_t input_idx, const struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR descriptor); + export function InMemorySigner_sign_dynamic_p2wsh_input(this_arg: number, spend_tx: Uint8Array, input_idx: number, descriptor: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_get_to_self_delay(this_ptr); + const nativeResponseValue = wasm.TS_InMemorySigner_sign_dynamic_p2wsh_input(this_arg, encodeUint8Array(spend_tx), input_idx, descriptor); return nativeResponseValue; } - // void AcceptChannel_set_to_self_delay(struct LDKAcceptChannel *NONNULL_PTR this_ptr, uint16_t val); - export function AcceptChannel_set_to_self_delay(this_ptr: number, val: number): void { + // struct LDKBaseSign InMemorySigner_as_BaseSign(const struct LDKInMemorySigner *NONNULL_PTR this_arg); + export function InMemorySigner_as_BaseSign(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_set_to_self_delay(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_InMemorySigner_as_BaseSign(this_arg); + return nativeResponseValue; } - // uint16_t AcceptChannel_get_max_accepted_htlcs(const struct LDKAcceptChannel *NONNULL_PTR this_ptr); - export function AcceptChannel_get_max_accepted_htlcs(this_ptr: number): number { + // struct LDKSign InMemorySigner_as_Sign(const struct LDKInMemorySigner *NONNULL_PTR this_arg); + export function InMemorySigner_as_Sign(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_get_max_accepted_htlcs(this_ptr); + const nativeResponseValue = wasm.TS_InMemorySigner_as_Sign(this_arg); return nativeResponseValue; } - // void AcceptChannel_set_max_accepted_htlcs(struct LDKAcceptChannel *NONNULL_PTR this_ptr, uint16_t val); - export function AcceptChannel_set_max_accepted_htlcs(this_ptr: number, val: number): void { + // struct LDKCVec_u8Z InMemorySigner_write(const struct LDKInMemorySigner *NONNULL_PTR obj); + export function InMemorySigner_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_set_max_accepted_htlcs(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_InMemorySigner_write(obj); + return decodeUint8Array(nativeResponseValue); } - // struct LDKPublicKey AcceptChannel_get_funding_pubkey(const struct LDKAcceptChannel *NONNULL_PTR this_ptr); - export function AcceptChannel_get_funding_pubkey(this_ptr: number): Uint8Array { + // struct LDKCResult_InMemorySignerDecodeErrorZ InMemorySigner_read(struct LDKu8slice ser); + export function InMemorySigner_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_get_funding_pubkey(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_InMemorySigner_read(encodeUint8Array(ser)); + return nativeResponseValue; } - // void AcceptChannel_set_funding_pubkey(struct LDKAcceptChannel *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function AcceptChannel_set_funding_pubkey(this_ptr: number, val: Uint8Array): void { + // void KeysManager_free(struct LDKKeysManager this_obj); + export function KeysManager_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_set_funding_pubkey(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_KeysManager_free(this_obj); // debug statements here } - // struct LDKPublicKey AcceptChannel_get_revocation_basepoint(const struct LDKAcceptChannel *NONNULL_PTR this_ptr); - export function AcceptChannel_get_revocation_basepoint(this_ptr: number): Uint8Array { + // MUST_USE_RES struct LDKKeysManager KeysManager_new(const uint8_t (*seed)[32], uint64_t starting_time_secs, uint32_t starting_time_nanos); + export function KeysManager_new(seed: Uint8Array, starting_time_secs: number, starting_time_nanos: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_get_revocation_basepoint(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_KeysManager_new(encodeUint8Array(seed), starting_time_secs, starting_time_nanos); + return nativeResponseValue; } - // void AcceptChannel_set_revocation_basepoint(struct LDKAcceptChannel *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function AcceptChannel_set_revocation_basepoint(this_ptr: number, val: Uint8Array): void { + // 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]); + export function KeysManager_derive_channel_keys(this_arg: number, channel_value_satoshis: number, params: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_set_revocation_basepoint(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_KeysManager_derive_channel_keys(this_arg, channel_value_satoshis, encodeUint8Array(params)); + return nativeResponseValue; } - // struct LDKPublicKey AcceptChannel_get_payment_point(const struct LDKAcceptChannel *NONNULL_PTR this_ptr); - export function AcceptChannel_get_payment_point(this_ptr: number): Uint8Array { + // MUST_USE_RES struct LDKCResult_TransactionNoneZ KeysManager_spend_spendable_outputs(const struct LDKKeysManager *NONNULL_PTR this_arg, struct LDKCVec_SpendableOutputDescriptorZ descriptors, struct LDKCVec_TxOutZ outputs, struct LDKCVec_u8Z change_destination_script, uint32_t feerate_sat_per_1000_weight); + export function KeysManager_spend_spendable_outputs(this_arg: number, descriptors: number[], outputs: number[], change_destination_script: Uint8Array, feerate_sat_per_1000_weight: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_get_payment_point(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_KeysManager_spend_spendable_outputs(this_arg, descriptors, outputs, encodeUint8Array(change_destination_script), feerate_sat_per_1000_weight); + return nativeResponseValue; } - // void AcceptChannel_set_payment_point(struct LDKAcceptChannel *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function AcceptChannel_set_payment_point(this_ptr: number, val: Uint8Array): void { + // struct LDKKeysInterface KeysManager_as_KeysInterface(const struct LDKKeysManager *NONNULL_PTR this_arg); + export function KeysManager_as_KeysInterface(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_set_payment_point(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_KeysManager_as_KeysInterface(this_arg); + return nativeResponseValue; } - // struct LDKPublicKey AcceptChannel_get_delayed_payment_basepoint(const struct LDKAcceptChannel *NONNULL_PTR this_ptr); - export function AcceptChannel_get_delayed_payment_basepoint(this_ptr: number): Uint8Array { + // void ChannelManager_free(struct LDKChannelManager this_obj); + export function ChannelManager_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_get_delayed_payment_basepoint(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelManager_free(this_obj); + // debug statements here } - // void AcceptChannel_set_delayed_payment_basepoint(struct LDKAcceptChannel *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function AcceptChannel_set_delayed_payment_basepoint(this_ptr: number, val: Uint8Array): void { + // void ChainParameters_free(struct LDKChainParameters this_obj); + export function ChainParameters_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_set_delayed_payment_basepoint(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_ChainParameters_free(this_obj); // debug statements here } - // struct LDKPublicKey AcceptChannel_get_htlc_basepoint(const struct LDKAcceptChannel *NONNULL_PTR this_ptr); - export function AcceptChannel_get_htlc_basepoint(this_ptr: number): Uint8Array { + // enum LDKNetwork ChainParameters_get_network(const struct LDKChainParameters *NONNULL_PTR this_ptr); + export function ChainParameters_get_network(this_ptr: number): Network { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_get_htlc_basepoint(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChainParameters_get_network(this_ptr); + return nativeResponseValue; } - // void AcceptChannel_set_htlc_basepoint(struct LDKAcceptChannel *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function AcceptChannel_set_htlc_basepoint(this_ptr: number, val: Uint8Array): void { + // void ChainParameters_set_network(struct LDKChainParameters *NONNULL_PTR this_ptr, enum LDKNetwork val); + export function ChainParameters_set_network(this_ptr: number, val: Network): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_set_htlc_basepoint(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_ChainParameters_set_network(this_ptr, val); // debug statements here } - // struct LDKPublicKey AcceptChannel_get_first_per_commitment_point(const struct LDKAcceptChannel *NONNULL_PTR this_ptr); - export function AcceptChannel_get_first_per_commitment_point(this_ptr: number): Uint8Array { + // struct LDKBestBlock ChainParameters_get_best_block(const struct LDKChainParameters *NONNULL_PTR this_ptr); + export function ChainParameters_get_best_block(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_get_first_per_commitment_point(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChainParameters_get_best_block(this_ptr); + return nativeResponseValue; } - // void AcceptChannel_set_first_per_commitment_point(struct LDKAcceptChannel *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function AcceptChannel_set_first_per_commitment_point(this_ptr: number, val: Uint8Array): void { + // void ChainParameters_set_best_block(struct LDKChainParameters *NONNULL_PTR this_ptr, struct LDKBestBlock val); + export function ChainParameters_set_best_block(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_set_first_per_commitment_point(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_ChainParameters_set_best_block(this_ptr, val); // debug statements here } - // uint64_t AcceptChannel_clone_ptr(LDKAcceptChannel *NONNULL_PTR arg); - export function AcceptChannel_clone_ptr(arg: number): number { + // MUST_USE_RES struct LDKChainParameters ChainParameters_new(enum LDKNetwork network_arg, struct LDKBestBlock best_block_arg); + export function ChainParameters_new(network_arg: Network, best_block_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_clone_ptr(arg); + const nativeResponseValue = wasm.TS_ChainParameters_new(network_arg, best_block_arg); return nativeResponseValue; } - // struct LDKAcceptChannel AcceptChannel_clone(const struct LDKAcceptChannel *NONNULL_PTR orig); - export function AcceptChannel_clone(orig: number): number { + // uint64_t ChainParameters_clone_ptr(LDKChainParameters *NONNULL_PTR arg); + export function ChainParameters_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_clone(orig); + const nativeResponseValue = wasm.TS_ChainParameters_clone_ptr(arg); return nativeResponseValue; } - // void FundingCreated_free(struct LDKFundingCreated this_obj); - export function FundingCreated_free(this_obj: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.FundingCreated_free(this_obj); - // debug statements here - } - // const uint8_t (*FundingCreated_get_temporary_channel_id(const struct LDKFundingCreated *NONNULL_PTR this_ptr))[32]; - export function FundingCreated_get_temporary_channel_id(this_ptr: number): Uint8Array { + // struct LDKChainParameters ChainParameters_clone(const struct LDKChainParameters *NONNULL_PTR orig); + export function ChainParameters_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingCreated_get_temporary_channel_id(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChainParameters_clone(orig); + return nativeResponseValue; } - // void FundingCreated_set_temporary_channel_id(struct LDKFundingCreated *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function FundingCreated_set_temporary_channel_id(this_ptr: number, val: Uint8Array): void { + // void CounterpartyForwardingInfo_free(struct LDKCounterpartyForwardingInfo this_obj); + export function CounterpartyForwardingInfo_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingCreated_set_temporary_channel_id(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_CounterpartyForwardingInfo_free(this_obj); // debug statements here } - // const uint8_t (*FundingCreated_get_funding_txid(const struct LDKFundingCreated *NONNULL_PTR this_ptr))[32]; - export function FundingCreated_get_funding_txid(this_ptr: number): Uint8Array { + // uint32_t CounterpartyForwardingInfo_get_fee_base_msat(const struct LDKCounterpartyForwardingInfo *NONNULL_PTR this_ptr); + export function CounterpartyForwardingInfo_get_fee_base_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingCreated_get_funding_txid(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CounterpartyForwardingInfo_get_fee_base_msat(this_ptr); + return nativeResponseValue; } - // void FundingCreated_set_funding_txid(struct LDKFundingCreated *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function FundingCreated_set_funding_txid(this_ptr: number, val: Uint8Array): void { + // void CounterpartyForwardingInfo_set_fee_base_msat(struct LDKCounterpartyForwardingInfo *NONNULL_PTR this_ptr, uint32_t val); + export function CounterpartyForwardingInfo_set_fee_base_msat(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingCreated_set_funding_txid(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_CounterpartyForwardingInfo_set_fee_base_msat(this_ptr, val); // debug statements here } - // uint16_t FundingCreated_get_funding_output_index(const struct LDKFundingCreated *NONNULL_PTR this_ptr); - export function FundingCreated_get_funding_output_index(this_ptr: number): number { + // uint32_t CounterpartyForwardingInfo_get_fee_proportional_millionths(const struct LDKCounterpartyForwardingInfo *NONNULL_PTR this_ptr); + export function CounterpartyForwardingInfo_get_fee_proportional_millionths(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingCreated_get_funding_output_index(this_ptr); + const nativeResponseValue = wasm.TS_CounterpartyForwardingInfo_get_fee_proportional_millionths(this_ptr); return nativeResponseValue; } - // void FundingCreated_set_funding_output_index(struct LDKFundingCreated *NONNULL_PTR this_ptr, uint16_t val); - export function FundingCreated_set_funding_output_index(this_ptr: number, val: number): void { + // void CounterpartyForwardingInfo_set_fee_proportional_millionths(struct LDKCounterpartyForwardingInfo *NONNULL_PTR this_ptr, uint32_t val); + export function CounterpartyForwardingInfo_set_fee_proportional_millionths(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingCreated_set_funding_output_index(this_ptr, val); + const nativeResponseValue = wasm.TS_CounterpartyForwardingInfo_set_fee_proportional_millionths(this_ptr, val); // debug statements here } - // struct LDKSignature FundingCreated_get_signature(const struct LDKFundingCreated *NONNULL_PTR this_ptr); - export function FundingCreated_get_signature(this_ptr: number): Uint8Array { + // uint16_t CounterpartyForwardingInfo_get_cltv_expiry_delta(const struct LDKCounterpartyForwardingInfo *NONNULL_PTR this_ptr); + export function CounterpartyForwardingInfo_get_cltv_expiry_delta(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingCreated_get_signature(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CounterpartyForwardingInfo_get_cltv_expiry_delta(this_ptr); + return nativeResponseValue; } - // void FundingCreated_set_signature(struct LDKFundingCreated *NONNULL_PTR this_ptr, struct LDKSignature val); - export function FundingCreated_set_signature(this_ptr: number, val: Uint8Array): void { + // void CounterpartyForwardingInfo_set_cltv_expiry_delta(struct LDKCounterpartyForwardingInfo *NONNULL_PTR this_ptr, uint16_t val); + export function CounterpartyForwardingInfo_set_cltv_expiry_delta(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingCreated_set_signature(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_CounterpartyForwardingInfo_set_cltv_expiry_delta(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKFundingCreated FundingCreated_new(struct LDKThirtyTwoBytes temporary_channel_id_arg, struct LDKThirtyTwoBytes funding_txid_arg, uint16_t funding_output_index_arg, struct LDKSignature signature_arg); - export function FundingCreated_new(temporary_channel_id_arg: Uint8Array, funding_txid_arg: Uint8Array, funding_output_index_arg: number, signature_arg: Uint8Array): number { + // MUST_USE_RES struct LDKCounterpartyForwardingInfo CounterpartyForwardingInfo_new(uint32_t fee_base_msat_arg, uint32_t fee_proportional_millionths_arg, uint16_t cltv_expiry_delta_arg); + export function CounterpartyForwardingInfo_new(fee_base_msat_arg: number, fee_proportional_millionths_arg: number, cltv_expiry_delta_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingCreated_new(encodeArray(temporary_channel_id_arg), encodeArray(funding_txid_arg), funding_output_index_arg, encodeArray(signature_arg)); + const nativeResponseValue = wasm.TS_CounterpartyForwardingInfo_new(fee_base_msat_arg, fee_proportional_millionths_arg, cltv_expiry_delta_arg); return nativeResponseValue; } - // uint64_t FundingCreated_clone_ptr(LDKFundingCreated *NONNULL_PTR arg); - export function FundingCreated_clone_ptr(arg: number): number { + // uint64_t CounterpartyForwardingInfo_clone_ptr(LDKCounterpartyForwardingInfo *NONNULL_PTR arg); + export function CounterpartyForwardingInfo_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingCreated_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CounterpartyForwardingInfo_clone_ptr(arg); return nativeResponseValue; } - // struct LDKFundingCreated FundingCreated_clone(const struct LDKFundingCreated *NONNULL_PTR orig); - export function FundingCreated_clone(orig: number): number { + // struct LDKCounterpartyForwardingInfo CounterpartyForwardingInfo_clone(const struct LDKCounterpartyForwardingInfo *NONNULL_PTR orig); + export function CounterpartyForwardingInfo_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingCreated_clone(orig); + const nativeResponseValue = wasm.TS_CounterpartyForwardingInfo_clone(orig); return nativeResponseValue; } - // void FundingSigned_free(struct LDKFundingSigned this_obj); - export function FundingSigned_free(this_obj: number): void { + // void ChannelCounterparty_free(struct LDKChannelCounterparty this_obj); + export function ChannelCounterparty_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingSigned_free(this_obj); + const nativeResponseValue = wasm.TS_ChannelCounterparty_free(this_obj); // debug statements here } - // const uint8_t (*FundingSigned_get_channel_id(const struct LDKFundingSigned *NONNULL_PTR this_ptr))[32]; - export function FundingSigned_get_channel_id(this_ptr: number): Uint8Array { + // struct LDKPublicKey ChannelCounterparty_get_node_id(const struct LDKChannelCounterparty *NONNULL_PTR this_ptr); + export function ChannelCounterparty_get_node_id(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingSigned_get_channel_id(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelCounterparty_get_node_id(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void FundingSigned_set_channel_id(struct LDKFundingSigned *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function FundingSigned_set_channel_id(this_ptr: number, val: Uint8Array): void { + // void ChannelCounterparty_set_node_id(struct LDKChannelCounterparty *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function ChannelCounterparty_set_node_id(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingSigned_set_channel_id(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_ChannelCounterparty_set_node_id(this_ptr, encodeUint8Array(val)); // debug statements here } - // struct LDKSignature FundingSigned_get_signature(const struct LDKFundingSigned *NONNULL_PTR this_ptr); - export function FundingSigned_get_signature(this_ptr: number): Uint8Array { + // struct LDKInitFeatures ChannelCounterparty_get_features(const struct LDKChannelCounterparty *NONNULL_PTR this_ptr); + export function ChannelCounterparty_get_features(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingSigned_get_signature(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelCounterparty_get_features(this_ptr); + return nativeResponseValue; } - // void FundingSigned_set_signature(struct LDKFundingSigned *NONNULL_PTR this_ptr, struct LDKSignature val); - export function FundingSigned_set_signature(this_ptr: number, val: Uint8Array): void { + // void ChannelCounterparty_set_features(struct LDKChannelCounterparty *NONNULL_PTR this_ptr, struct LDKInitFeatures val); + export function ChannelCounterparty_set_features(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingSigned_set_signature(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_ChannelCounterparty_set_features(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKFundingSigned FundingSigned_new(struct LDKThirtyTwoBytes channel_id_arg, struct LDKSignature signature_arg); - export function FundingSigned_new(channel_id_arg: Uint8Array, signature_arg: Uint8Array): number { + // uint64_t ChannelCounterparty_get_unspendable_punishment_reserve(const struct LDKChannelCounterparty *NONNULL_PTR this_ptr); + export function ChannelCounterparty_get_unspendable_punishment_reserve(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingSigned_new(encodeArray(channel_id_arg), encodeArray(signature_arg)); + const nativeResponseValue = wasm.TS_ChannelCounterparty_get_unspendable_punishment_reserve(this_ptr); return nativeResponseValue; } - // uint64_t FundingSigned_clone_ptr(LDKFundingSigned *NONNULL_PTR arg); - export function FundingSigned_clone_ptr(arg: number): number { + // void ChannelCounterparty_set_unspendable_punishment_reserve(struct LDKChannelCounterparty *NONNULL_PTR this_ptr, uint64_t val); + export function ChannelCounterparty_set_unspendable_punishment_reserve(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingSigned_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelCounterparty_set_unspendable_punishment_reserve(this_ptr, val); + // debug statements here } - // struct LDKFundingSigned FundingSigned_clone(const struct LDKFundingSigned *NONNULL_PTR orig); - export function FundingSigned_clone(orig: number): number { + // struct LDKCounterpartyForwardingInfo ChannelCounterparty_get_forwarding_info(const struct LDKChannelCounterparty *NONNULL_PTR this_ptr); + export function ChannelCounterparty_get_forwarding_info(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingSigned_clone(orig); + const nativeResponseValue = wasm.TS_ChannelCounterparty_get_forwarding_info(this_ptr); return nativeResponseValue; } - // void FundingLocked_free(struct LDKFundingLocked this_obj); - export function FundingLocked_free(this_obj: number): void { + // void ChannelCounterparty_set_forwarding_info(struct LDKChannelCounterparty *NONNULL_PTR this_ptr, struct LDKCounterpartyForwardingInfo val); + export function ChannelCounterparty_set_forwarding_info(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingLocked_free(this_obj); + const nativeResponseValue = wasm.TS_ChannelCounterparty_set_forwarding_info(this_ptr, val); // debug statements here } - // const uint8_t (*FundingLocked_get_channel_id(const struct LDKFundingLocked *NONNULL_PTR this_ptr))[32]; - export function FundingLocked_get_channel_id(this_ptr: number): Uint8Array { + // MUST_USE_RES struct LDKChannelCounterparty ChannelCounterparty_new(struct LDKPublicKey node_id_arg, struct LDKInitFeatures features_arg, uint64_t unspendable_punishment_reserve_arg, struct LDKCounterpartyForwardingInfo forwarding_info_arg); + export function ChannelCounterparty_new(node_id_arg: Uint8Array, features_arg: number, unspendable_punishment_reserve_arg: number, forwarding_info_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingLocked_get_channel_id(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelCounterparty_new(encodeUint8Array(node_id_arg), features_arg, unspendable_punishment_reserve_arg, forwarding_info_arg); + return nativeResponseValue; } - // void FundingLocked_set_channel_id(struct LDKFundingLocked *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function FundingLocked_set_channel_id(this_ptr: number, val: Uint8Array): void { + // uint64_t ChannelCounterparty_clone_ptr(LDKChannelCounterparty *NONNULL_PTR arg); + export function ChannelCounterparty_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingLocked_set_channel_id(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelCounterparty_clone_ptr(arg); + return nativeResponseValue; } - // struct LDKPublicKey FundingLocked_get_next_per_commitment_point(const struct LDKFundingLocked *NONNULL_PTR this_ptr); - export function FundingLocked_get_next_per_commitment_point(this_ptr: number): Uint8Array { + // struct LDKChannelCounterparty ChannelCounterparty_clone(const struct LDKChannelCounterparty *NONNULL_PTR orig); + export function ChannelCounterparty_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingLocked_get_next_per_commitment_point(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelCounterparty_clone(orig); + return nativeResponseValue; } - // void FundingLocked_set_next_per_commitment_point(struct LDKFundingLocked *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function FundingLocked_set_next_per_commitment_point(this_ptr: number, val: Uint8Array): void { + // void ChannelDetails_free(struct LDKChannelDetails this_obj); + export function ChannelDetails_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingLocked_set_next_per_commitment_point(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_ChannelDetails_free(this_obj); // debug statements here } - // MUST_USE_RES struct LDKFundingLocked FundingLocked_new(struct LDKThirtyTwoBytes channel_id_arg, struct LDKPublicKey next_per_commitment_point_arg); - export function FundingLocked_new(channel_id_arg: Uint8Array, next_per_commitment_point_arg: Uint8Array): number { + // const uint8_t (*ChannelDetails_get_channel_id(const struct LDKChannelDetails *NONNULL_PTR this_ptr))[32]; + export function ChannelDetails_get_channel_id(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingLocked_new(encodeArray(channel_id_arg), encodeArray(next_per_commitment_point_arg)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelDetails_get_channel_id(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // uint64_t FundingLocked_clone_ptr(LDKFundingLocked *NONNULL_PTR arg); - export function FundingLocked_clone_ptr(arg: number): number { + // void ChannelDetails_set_channel_id(struct LDKChannelDetails *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function ChannelDetails_set_channel_id(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingLocked_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelDetails_set_channel_id(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKFundingLocked FundingLocked_clone(const struct LDKFundingLocked *NONNULL_PTR orig); - export function FundingLocked_clone(orig: number): number { + // struct LDKChannelCounterparty ChannelDetails_get_counterparty(const struct LDKChannelDetails *NONNULL_PTR this_ptr); + export function ChannelDetails_get_counterparty(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingLocked_clone(orig); + const nativeResponseValue = wasm.TS_ChannelDetails_get_counterparty(this_ptr); return nativeResponseValue; } - // void Shutdown_free(struct LDKShutdown this_obj); - export function Shutdown_free(this_obj: number): void { + // void ChannelDetails_set_counterparty(struct LDKChannelDetails *NONNULL_PTR this_ptr, struct LDKChannelCounterparty val); + export function ChannelDetails_set_counterparty(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Shutdown_free(this_obj); + const nativeResponseValue = wasm.TS_ChannelDetails_set_counterparty(this_ptr, val); // debug statements here } - // const uint8_t (*Shutdown_get_channel_id(const struct LDKShutdown *NONNULL_PTR this_ptr))[32]; - export function Shutdown_get_channel_id(this_ptr: number): Uint8Array { + // struct LDKOutPoint ChannelDetails_get_funding_txo(const struct LDKChannelDetails *NONNULL_PTR this_ptr); + export function ChannelDetails_get_funding_txo(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Shutdown_get_channel_id(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelDetails_get_funding_txo(this_ptr); + return nativeResponseValue; } - // void Shutdown_set_channel_id(struct LDKShutdown *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function Shutdown_set_channel_id(this_ptr: number, val: Uint8Array): void { + // void ChannelDetails_set_funding_txo(struct LDKChannelDetails *NONNULL_PTR this_ptr, struct LDKOutPoint val); + export function ChannelDetails_set_funding_txo(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Shutdown_set_channel_id(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_ChannelDetails_set_funding_txo(this_ptr, val); // debug statements here } - // struct LDKu8slice Shutdown_get_scriptpubkey(const struct LDKShutdown *NONNULL_PTR this_ptr); - export function Shutdown_get_scriptpubkey(this_ptr: number): Uint8Array { + // struct LDKCOption_u64Z ChannelDetails_get_short_channel_id(const struct LDKChannelDetails *NONNULL_PTR this_ptr); + export function ChannelDetails_get_short_channel_id(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Shutdown_get_scriptpubkey(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelDetails_get_short_channel_id(this_ptr); + return nativeResponseValue; } - // void Shutdown_set_scriptpubkey(struct LDKShutdown *NONNULL_PTR this_ptr, struct LDKCVec_u8Z val); - export function Shutdown_set_scriptpubkey(this_ptr: number, val: Uint8Array): void { + // void ChannelDetails_set_short_channel_id(struct LDKChannelDetails *NONNULL_PTR this_ptr, struct LDKCOption_u64Z val); + export function ChannelDetails_set_short_channel_id(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Shutdown_set_scriptpubkey(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_ChannelDetails_set_short_channel_id(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKShutdown Shutdown_new(struct LDKThirtyTwoBytes channel_id_arg, struct LDKCVec_u8Z scriptpubkey_arg); - export function Shutdown_new(channel_id_arg: Uint8Array, scriptpubkey_arg: Uint8Array): number { + // uint64_t ChannelDetails_get_channel_value_satoshis(const struct LDKChannelDetails *NONNULL_PTR this_ptr); + export function ChannelDetails_get_channel_value_satoshis(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Shutdown_new(encodeArray(channel_id_arg), encodeArray(scriptpubkey_arg)); + const nativeResponseValue = wasm.TS_ChannelDetails_get_channel_value_satoshis(this_ptr); return nativeResponseValue; } - // uint64_t Shutdown_clone_ptr(LDKShutdown *NONNULL_PTR arg); - export function Shutdown_clone_ptr(arg: number): number { + // void ChannelDetails_set_channel_value_satoshis(struct LDKChannelDetails *NONNULL_PTR this_ptr, uint64_t val); + export function ChannelDetails_set_channel_value_satoshis(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Shutdown_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelDetails_set_channel_value_satoshis(this_ptr, val); + // debug statements here } - // struct LDKShutdown Shutdown_clone(const struct LDKShutdown *NONNULL_PTR orig); - export function Shutdown_clone(orig: number): number { + // struct LDKCOption_u64Z ChannelDetails_get_unspendable_punishment_reserve(const struct LDKChannelDetails *NONNULL_PTR this_ptr); + export function ChannelDetails_get_unspendable_punishment_reserve(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Shutdown_clone(orig); + const nativeResponseValue = wasm.TS_ChannelDetails_get_unspendable_punishment_reserve(this_ptr); return nativeResponseValue; } - // void ClosingSignedFeeRange_free(struct LDKClosingSignedFeeRange this_obj); - export function ClosingSignedFeeRange_free(this_obj: number): void { + // void ChannelDetails_set_unspendable_punishment_reserve(struct LDKChannelDetails *NONNULL_PTR this_ptr, struct LDKCOption_u64Z val); + export function ChannelDetails_set_unspendable_punishment_reserve(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingSignedFeeRange_free(this_obj); + const nativeResponseValue = wasm.TS_ChannelDetails_set_unspendable_punishment_reserve(this_ptr, val); // debug statements here } - // uint64_t ClosingSignedFeeRange_get_min_fee_satoshis(const struct LDKClosingSignedFeeRange *NONNULL_PTR this_ptr); - export function ClosingSignedFeeRange_get_min_fee_satoshis(this_ptr: number): number { + // uint64_t ChannelDetails_get_user_channel_id(const struct LDKChannelDetails *NONNULL_PTR this_ptr); + export function ChannelDetails_get_user_channel_id(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingSignedFeeRange_get_min_fee_satoshis(this_ptr); + const nativeResponseValue = wasm.TS_ChannelDetails_get_user_channel_id(this_ptr); return nativeResponseValue; } - // void ClosingSignedFeeRange_set_min_fee_satoshis(struct LDKClosingSignedFeeRange *NONNULL_PTR this_ptr, uint64_t val); - export function ClosingSignedFeeRange_set_min_fee_satoshis(this_ptr: number, val: number): void { + // void ChannelDetails_set_user_channel_id(struct LDKChannelDetails *NONNULL_PTR this_ptr, uint64_t val); + export function ChannelDetails_set_user_channel_id(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingSignedFeeRange_set_min_fee_satoshis(this_ptr, val); + const nativeResponseValue = wasm.TS_ChannelDetails_set_user_channel_id(this_ptr, val); // debug statements here } - // uint64_t ClosingSignedFeeRange_get_max_fee_satoshis(const struct LDKClosingSignedFeeRange *NONNULL_PTR this_ptr); - export function ClosingSignedFeeRange_get_max_fee_satoshis(this_ptr: number): number { + // uint64_t ChannelDetails_get_balance_msat(const struct LDKChannelDetails *NONNULL_PTR this_ptr); + export function ChannelDetails_get_balance_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingSignedFeeRange_get_max_fee_satoshis(this_ptr); + const nativeResponseValue = wasm.TS_ChannelDetails_get_balance_msat(this_ptr); return nativeResponseValue; } - // void ClosingSignedFeeRange_set_max_fee_satoshis(struct LDKClosingSignedFeeRange *NONNULL_PTR this_ptr, uint64_t val); - export function ClosingSignedFeeRange_set_max_fee_satoshis(this_ptr: number, val: number): void { + // void ChannelDetails_set_balance_msat(struct LDKChannelDetails *NONNULL_PTR this_ptr, uint64_t val); + export function ChannelDetails_set_balance_msat(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingSignedFeeRange_set_max_fee_satoshis(this_ptr, val); + const nativeResponseValue = wasm.TS_ChannelDetails_set_balance_msat(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKClosingSignedFeeRange ClosingSignedFeeRange_new(uint64_t min_fee_satoshis_arg, uint64_t max_fee_satoshis_arg); - export function ClosingSignedFeeRange_new(min_fee_satoshis_arg: number, max_fee_satoshis_arg: number): number { + // uint64_t ChannelDetails_get_outbound_capacity_msat(const struct LDKChannelDetails *NONNULL_PTR this_ptr); + export function ChannelDetails_get_outbound_capacity_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingSignedFeeRange_new(min_fee_satoshis_arg, max_fee_satoshis_arg); + const nativeResponseValue = wasm.TS_ChannelDetails_get_outbound_capacity_msat(this_ptr); return nativeResponseValue; } - // uint64_t ClosingSignedFeeRange_clone_ptr(LDKClosingSignedFeeRange *NONNULL_PTR arg); - export function ClosingSignedFeeRange_clone_ptr(arg: number): number { + // void ChannelDetails_set_outbound_capacity_msat(struct LDKChannelDetails *NONNULL_PTR this_ptr, uint64_t val); + export function ChannelDetails_set_outbound_capacity_msat(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingSignedFeeRange_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelDetails_set_outbound_capacity_msat(this_ptr, val); + // debug statements here } - // struct LDKClosingSignedFeeRange ClosingSignedFeeRange_clone(const struct LDKClosingSignedFeeRange *NONNULL_PTR orig); - export function ClosingSignedFeeRange_clone(orig: number): number { + // uint64_t ChannelDetails_get_inbound_capacity_msat(const struct LDKChannelDetails *NONNULL_PTR this_ptr); + export function ChannelDetails_get_inbound_capacity_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingSignedFeeRange_clone(orig); + const nativeResponseValue = wasm.TS_ChannelDetails_get_inbound_capacity_msat(this_ptr); return nativeResponseValue; } - // void ClosingSigned_free(struct LDKClosingSigned this_obj); - export function ClosingSigned_free(this_obj: number): void { + // void ChannelDetails_set_inbound_capacity_msat(struct LDKChannelDetails *NONNULL_PTR this_ptr, uint64_t val); + export function ChannelDetails_set_inbound_capacity_msat(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingSigned_free(this_obj); + const nativeResponseValue = wasm.TS_ChannelDetails_set_inbound_capacity_msat(this_ptr, val); // debug statements here } - // const uint8_t (*ClosingSigned_get_channel_id(const struct LDKClosingSigned *NONNULL_PTR this_ptr))[32]; - export function ClosingSigned_get_channel_id(this_ptr: number): Uint8Array { + // struct LDKCOption_u32Z ChannelDetails_get_confirmations_required(const struct LDKChannelDetails *NONNULL_PTR this_ptr); + export function ChannelDetails_get_confirmations_required(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingSigned_get_channel_id(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelDetails_get_confirmations_required(this_ptr); + return nativeResponseValue; } - // void ClosingSigned_set_channel_id(struct LDKClosingSigned *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function ClosingSigned_set_channel_id(this_ptr: number, val: Uint8Array): void { + // void ChannelDetails_set_confirmations_required(struct LDKChannelDetails *NONNULL_PTR this_ptr, struct LDKCOption_u32Z val); + export function ChannelDetails_set_confirmations_required(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingSigned_set_channel_id(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_ChannelDetails_set_confirmations_required(this_ptr, val); // debug statements here } - // uint64_t ClosingSigned_get_fee_satoshis(const struct LDKClosingSigned *NONNULL_PTR this_ptr); - export function ClosingSigned_get_fee_satoshis(this_ptr: number): number { + // struct LDKCOption_u16Z ChannelDetails_get_force_close_spend_delay(const struct LDKChannelDetails *NONNULL_PTR this_ptr); + export function ChannelDetails_get_force_close_spend_delay(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingSigned_get_fee_satoshis(this_ptr); + const nativeResponseValue = wasm.TS_ChannelDetails_get_force_close_spend_delay(this_ptr); return nativeResponseValue; } - // void ClosingSigned_set_fee_satoshis(struct LDKClosingSigned *NONNULL_PTR this_ptr, uint64_t val); - export function ClosingSigned_set_fee_satoshis(this_ptr: number, val: number): void { + // void ChannelDetails_set_force_close_spend_delay(struct LDKChannelDetails *NONNULL_PTR this_ptr, struct LDKCOption_u16Z val); + export function ChannelDetails_set_force_close_spend_delay(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingSigned_set_fee_satoshis(this_ptr, val); + const nativeResponseValue = wasm.TS_ChannelDetails_set_force_close_spend_delay(this_ptr, val); // debug statements here } - // struct LDKSignature ClosingSigned_get_signature(const struct LDKClosingSigned *NONNULL_PTR this_ptr); - export function ClosingSigned_get_signature(this_ptr: number): Uint8Array { + // bool ChannelDetails_get_is_outbound(const struct LDKChannelDetails *NONNULL_PTR this_ptr); + export function ChannelDetails_get_is_outbound(this_ptr: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingSigned_get_signature(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelDetails_get_is_outbound(this_ptr); + return nativeResponseValue; } - // void ClosingSigned_set_signature(struct LDKClosingSigned *NONNULL_PTR this_ptr, struct LDKSignature val); - export function ClosingSigned_set_signature(this_ptr: number, val: Uint8Array): void { + // void ChannelDetails_set_is_outbound(struct LDKChannelDetails *NONNULL_PTR this_ptr, bool val); + export function ChannelDetails_set_is_outbound(this_ptr: number, val: boolean): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingSigned_set_signature(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_ChannelDetails_set_is_outbound(this_ptr, val); // debug statements here } - // struct LDKClosingSignedFeeRange ClosingSigned_get_fee_range(const struct LDKClosingSigned *NONNULL_PTR this_ptr); - export function ClosingSigned_get_fee_range(this_ptr: number): number { + // bool ChannelDetails_get_is_funding_locked(const struct LDKChannelDetails *NONNULL_PTR this_ptr); + export function ChannelDetails_get_is_funding_locked(this_ptr: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingSigned_get_fee_range(this_ptr); + const nativeResponseValue = wasm.TS_ChannelDetails_get_is_funding_locked(this_ptr); return nativeResponseValue; } - // void ClosingSigned_set_fee_range(struct LDKClosingSigned *NONNULL_PTR this_ptr, struct LDKClosingSignedFeeRange val); - export function ClosingSigned_set_fee_range(this_ptr: number, val: number): void { + // void ChannelDetails_set_is_funding_locked(struct LDKChannelDetails *NONNULL_PTR this_ptr, bool val); + export function ChannelDetails_set_is_funding_locked(this_ptr: number, val: boolean): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingSigned_set_fee_range(this_ptr, val); + const nativeResponseValue = wasm.TS_ChannelDetails_set_is_funding_locked(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKClosingSigned ClosingSigned_new(struct LDKThirtyTwoBytes channel_id_arg, uint64_t fee_satoshis_arg, struct LDKSignature signature_arg, struct LDKClosingSignedFeeRange fee_range_arg); - export function ClosingSigned_new(channel_id_arg: Uint8Array, fee_satoshis_arg: number, signature_arg: Uint8Array, fee_range_arg: number): number { + // bool ChannelDetails_get_is_usable(const struct LDKChannelDetails *NONNULL_PTR this_ptr); + export function ChannelDetails_get_is_usable(this_ptr: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingSigned_new(encodeArray(channel_id_arg), fee_satoshis_arg, encodeArray(signature_arg), fee_range_arg); + const nativeResponseValue = wasm.TS_ChannelDetails_get_is_usable(this_ptr); return nativeResponseValue; } - // uint64_t ClosingSigned_clone_ptr(LDKClosingSigned *NONNULL_PTR arg); - export function ClosingSigned_clone_ptr(arg: number): number { + // void ChannelDetails_set_is_usable(struct LDKChannelDetails *NONNULL_PTR this_ptr, bool val); + export function ChannelDetails_set_is_usable(this_ptr: number, val: boolean): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingSigned_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelDetails_set_is_usable(this_ptr, val); + // debug statements here } - // struct LDKClosingSigned ClosingSigned_clone(const struct LDKClosingSigned *NONNULL_PTR orig); - export function ClosingSigned_clone(orig: number): number { + // bool ChannelDetails_get_is_public(const struct LDKChannelDetails *NONNULL_PTR this_ptr); + export function ChannelDetails_get_is_public(this_ptr: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingSigned_clone(orig); + const nativeResponseValue = wasm.TS_ChannelDetails_get_is_public(this_ptr); return nativeResponseValue; } - // void UpdateAddHTLC_free(struct LDKUpdateAddHTLC this_obj); - export function UpdateAddHTLC_free(this_obj: number): void { + // void ChannelDetails_set_is_public(struct LDKChannelDetails *NONNULL_PTR this_ptr, bool val); + export function ChannelDetails_set_is_public(this_ptr: number, val: boolean): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateAddHTLC_free(this_obj); + const nativeResponseValue = wasm.TS_ChannelDetails_set_is_public(this_ptr, val); // debug statements here } - // const uint8_t (*UpdateAddHTLC_get_channel_id(const struct LDKUpdateAddHTLC *NONNULL_PTR this_ptr))[32]; - export function UpdateAddHTLC_get_channel_id(this_ptr: number): Uint8Array { + // MUST_USE_RES struct LDKChannelDetails ChannelDetails_new(struct LDKThirtyTwoBytes channel_id_arg, struct LDKChannelCounterparty counterparty_arg, struct LDKOutPoint funding_txo_arg, struct LDKCOption_u64Z short_channel_id_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 inbound_capacity_msat_arg, struct LDKCOption_u32Z confirmations_required_arg, struct LDKCOption_u16Z force_close_spend_delay_arg, bool is_outbound_arg, bool is_funding_locked_arg, bool is_usable_arg, bool is_public_arg); + export function ChannelDetails_new(channel_id_arg: Uint8Array, counterparty_arg: number, funding_txo_arg: number, short_channel_id_arg: number, channel_value_satoshis_arg: number, unspendable_punishment_reserve_arg: number, user_channel_id_arg: number, balance_msat_arg: number, outbound_capacity_msat_arg: number, inbound_capacity_msat_arg: number, confirmations_required_arg: number, force_close_spend_delay_arg: number, is_outbound_arg: boolean, is_funding_locked_arg: boolean, is_usable_arg: boolean, is_public_arg: boolean): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateAddHTLC_get_channel_id(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelDetails_new(encodeUint8Array(channel_id_arg), counterparty_arg, funding_txo_arg, short_channel_id_arg, channel_value_satoshis_arg, unspendable_punishment_reserve_arg, user_channel_id_arg, balance_msat_arg, outbound_capacity_msat_arg, inbound_capacity_msat_arg, confirmations_required_arg, force_close_spend_delay_arg, is_outbound_arg, is_funding_locked_arg, is_usable_arg, is_public_arg); + return nativeResponseValue; } - // void UpdateAddHTLC_set_channel_id(struct LDKUpdateAddHTLC *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function UpdateAddHTLC_set_channel_id(this_ptr: number, val: Uint8Array): void { + // uint64_t ChannelDetails_clone_ptr(LDKChannelDetails *NONNULL_PTR arg); + export function ChannelDetails_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateAddHTLC_set_channel_id(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelDetails_clone_ptr(arg); + return nativeResponseValue; } - // uint64_t UpdateAddHTLC_get_htlc_id(const struct LDKUpdateAddHTLC *NONNULL_PTR this_ptr); - export function UpdateAddHTLC_get_htlc_id(this_ptr: number): number { + // struct LDKChannelDetails ChannelDetails_clone(const struct LDKChannelDetails *NONNULL_PTR orig); + export function ChannelDetails_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateAddHTLC_get_htlc_id(this_ptr); + const nativeResponseValue = wasm.TS_ChannelDetails_clone(orig); return nativeResponseValue; } - // void UpdateAddHTLC_set_htlc_id(struct LDKUpdateAddHTLC *NONNULL_PTR this_ptr, uint64_t val); - export function UpdateAddHTLC_set_htlc_id(this_ptr: number, val: number): void { + // void PaymentSendFailure_free(struct LDKPaymentSendFailure this_ptr); + export function PaymentSendFailure_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateAddHTLC_set_htlc_id(this_ptr, val); + const nativeResponseValue = wasm.TS_PaymentSendFailure_free(this_ptr); // debug statements here } - // uint64_t UpdateAddHTLC_get_amount_msat(const struct LDKUpdateAddHTLC *NONNULL_PTR this_ptr); - export function UpdateAddHTLC_get_amount_msat(this_ptr: number): number { + // uint64_t PaymentSendFailure_clone_ptr(LDKPaymentSendFailure *NONNULL_PTR arg); + export function PaymentSendFailure_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateAddHTLC_get_amount_msat(this_ptr); + const nativeResponseValue = wasm.TS_PaymentSendFailure_clone_ptr(arg); return nativeResponseValue; } - // void UpdateAddHTLC_set_amount_msat(struct LDKUpdateAddHTLC *NONNULL_PTR this_ptr, uint64_t val); - export function UpdateAddHTLC_set_amount_msat(this_ptr: number, val: number): void { + // struct LDKPaymentSendFailure PaymentSendFailure_clone(const struct LDKPaymentSendFailure *NONNULL_PTR orig); + export function PaymentSendFailure_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateAddHTLC_set_amount_msat(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_PaymentSendFailure_clone(orig); + return nativeResponseValue; } - // const uint8_t (*UpdateAddHTLC_get_payment_hash(const struct LDKUpdateAddHTLC *NONNULL_PTR this_ptr))[32]; - export function UpdateAddHTLC_get_payment_hash(this_ptr: number): Uint8Array { + // struct LDKPaymentSendFailure PaymentSendFailure_parameter_error(struct LDKAPIError a); + export function PaymentSendFailure_parameter_error(a: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateAddHTLC_get_payment_hash(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_PaymentSendFailure_parameter_error(a); + return nativeResponseValue; } - // void UpdateAddHTLC_set_payment_hash(struct LDKUpdateAddHTLC *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function UpdateAddHTLC_set_payment_hash(this_ptr: number, val: Uint8Array): void { + // struct LDKPaymentSendFailure PaymentSendFailure_path_parameter_error(struct LDKCVec_CResult_NoneAPIErrorZZ a); + export function PaymentSendFailure_path_parameter_error(a: number[]): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateAddHTLC_set_payment_hash(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_PaymentSendFailure_path_parameter_error(a); + return nativeResponseValue; } - // uint32_t UpdateAddHTLC_get_cltv_expiry(const struct LDKUpdateAddHTLC *NONNULL_PTR this_ptr); - export function UpdateAddHTLC_get_cltv_expiry(this_ptr: number): number { + // struct LDKPaymentSendFailure PaymentSendFailure_all_failed_retry_safe(struct LDKCVec_APIErrorZ a); + export function PaymentSendFailure_all_failed_retry_safe(a: number[]): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateAddHTLC_get_cltv_expiry(this_ptr); + const nativeResponseValue = wasm.TS_PaymentSendFailure_all_failed_retry_safe(a); return nativeResponseValue; } - // void UpdateAddHTLC_set_cltv_expiry(struct LDKUpdateAddHTLC *NONNULL_PTR this_ptr, uint32_t val); - export function UpdateAddHTLC_set_cltv_expiry(this_ptr: number, val: number): void { + // struct LDKPaymentSendFailure PaymentSendFailure_partial_failure(struct LDKCVec_CResult_NoneAPIErrorZZ results, struct LDKRouteParameters failed_paths_retry, struct LDKThirtyTwoBytes payment_id); + export function PaymentSendFailure_partial_failure(results: number[], failed_paths_retry: number, payment_id: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateAddHTLC_set_cltv_expiry(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_PaymentSendFailure_partial_failure(results, failed_paths_retry, encodeUint8Array(payment_id)); + return nativeResponseValue; } - // uint64_t UpdateAddHTLC_clone_ptr(LDKUpdateAddHTLC *NONNULL_PTR arg); - export function UpdateAddHTLC_clone_ptr(arg: number): number { + // 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); + export function ChannelManager_new(fee_est: number, chain_monitor: number, tx_broadcaster: number, logger: number, keys_manager: number, config: number, params: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateAddHTLC_clone_ptr(arg); + const nativeResponseValue = wasm.TS_ChannelManager_new(fee_est, chain_monitor, tx_broadcaster, logger, keys_manager, config, params); return nativeResponseValue; } - // struct LDKUpdateAddHTLC UpdateAddHTLC_clone(const struct LDKUpdateAddHTLC *NONNULL_PTR orig); - export function UpdateAddHTLC_clone(orig: number): number { + // MUST_USE_RES struct LDKUserConfig ChannelManager_get_current_default_configuration(const struct LDKChannelManager *NONNULL_PTR this_arg); + export function ChannelManager_get_current_default_configuration(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateAddHTLC_clone(orig); + const nativeResponseValue = wasm.TS_ChannelManager_get_current_default_configuration(this_arg); return nativeResponseValue; } - // void UpdateFulfillHTLC_free(struct LDKUpdateFulfillHTLC this_obj); - export function UpdateFulfillHTLC_free(this_obj: number): void { + // 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); + export function ChannelManager_create_channel(this_arg: number, their_network_key: Uint8Array, channel_value_satoshis: number, push_msat: number, user_channel_id: number, override_config: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFulfillHTLC_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelManager_create_channel(this_arg, encodeUint8Array(their_network_key), channel_value_satoshis, push_msat, user_channel_id, override_config); + return nativeResponseValue; } - // const uint8_t (*UpdateFulfillHTLC_get_channel_id(const struct LDKUpdateFulfillHTLC *NONNULL_PTR this_ptr))[32]; - export function UpdateFulfillHTLC_get_channel_id(this_ptr: number): Uint8Array { + // MUST_USE_RES struct LDKCVec_ChannelDetailsZ ChannelManager_list_channels(const struct LDKChannelManager *NONNULL_PTR this_arg); + export function ChannelManager_list_channels(this_arg: number): number[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFulfillHTLC_get_channel_id(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelManager_list_channels(this_arg); + return nativeResponseValue; } - // void UpdateFulfillHTLC_set_channel_id(struct LDKUpdateFulfillHTLC *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function UpdateFulfillHTLC_set_channel_id(this_ptr: number, val: Uint8Array): void { + // MUST_USE_RES struct LDKCVec_ChannelDetailsZ ChannelManager_list_usable_channels(const struct LDKChannelManager *NONNULL_PTR this_arg); + export function ChannelManager_list_usable_channels(this_arg: number): number[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFulfillHTLC_set_channel_id(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelManager_list_usable_channels(this_arg); + return nativeResponseValue; } - // uint64_t UpdateFulfillHTLC_get_htlc_id(const struct LDKUpdateFulfillHTLC *NONNULL_PTR this_ptr); - export function UpdateFulfillHTLC_get_htlc_id(this_ptr: number): number { + // MUST_USE_RES struct LDKCResult_NoneAPIErrorZ ChannelManager_close_channel(const struct LDKChannelManager *NONNULL_PTR this_arg, const uint8_t (*channel_id)[32]); + export function ChannelManager_close_channel(this_arg: number, channel_id: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFulfillHTLC_get_htlc_id(this_ptr); + const nativeResponseValue = wasm.TS_ChannelManager_close_channel(this_arg, encodeUint8Array(channel_id)); return nativeResponseValue; } - // void UpdateFulfillHTLC_set_htlc_id(struct LDKUpdateFulfillHTLC *NONNULL_PTR this_ptr, uint64_t val); - export function UpdateFulfillHTLC_set_htlc_id(this_ptr: number, val: number): void { + // MUST_USE_RES struct LDKCResult_NoneAPIErrorZ ChannelManager_close_channel_with_target_feerate(const struct LDKChannelManager *NONNULL_PTR this_arg, const uint8_t (*channel_id)[32], uint32_t target_feerate_sats_per_1000_weight); + export function ChannelManager_close_channel_with_target_feerate(this_arg: number, channel_id: Uint8Array, target_feerate_sats_per_1000_weight: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFulfillHTLC_set_htlc_id(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelManager_close_channel_with_target_feerate(this_arg, encodeUint8Array(channel_id), target_feerate_sats_per_1000_weight); + return nativeResponseValue; } - // const uint8_t (*UpdateFulfillHTLC_get_payment_preimage(const struct LDKUpdateFulfillHTLC *NONNULL_PTR this_ptr))[32]; - export function UpdateFulfillHTLC_get_payment_preimage(this_ptr: number): Uint8Array { + // MUST_USE_RES struct LDKCResult_NoneAPIErrorZ ChannelManager_force_close_channel(const struct LDKChannelManager *NONNULL_PTR this_arg, const uint8_t (*channel_id)[32]); + export function ChannelManager_force_close_channel(this_arg: number, channel_id: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFulfillHTLC_get_payment_preimage(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelManager_force_close_channel(this_arg, encodeUint8Array(channel_id)); + return nativeResponseValue; } - // void UpdateFulfillHTLC_set_payment_preimage(struct LDKUpdateFulfillHTLC *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function UpdateFulfillHTLC_set_payment_preimage(this_ptr: number, val: Uint8Array): void { + // void ChannelManager_force_close_all_channels(const struct LDKChannelManager *NONNULL_PTR this_arg); + export function ChannelManager_force_close_all_channels(this_arg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFulfillHTLC_set_payment_preimage(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_ChannelManager_force_close_all_channels(this_arg); // debug statements here } - // MUST_USE_RES struct LDKUpdateFulfillHTLC UpdateFulfillHTLC_new(struct LDKThirtyTwoBytes channel_id_arg, uint64_t htlc_id_arg, struct LDKThirtyTwoBytes payment_preimage_arg); - export function UpdateFulfillHTLC_new(channel_id_arg: Uint8Array, htlc_id_arg: number, payment_preimage_arg: Uint8Array): number { + // 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); + export function ChannelManager_send_payment(this_arg: number, route: number, payment_hash: Uint8Array, payment_secret: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFulfillHTLC_new(encodeArray(channel_id_arg), htlc_id_arg, encodeArray(payment_preimage_arg)); + const nativeResponseValue = wasm.TS_ChannelManager_send_payment(this_arg, route, encodeUint8Array(payment_hash), encodeUint8Array(payment_secret)); return nativeResponseValue; } - // uint64_t UpdateFulfillHTLC_clone_ptr(LDKUpdateFulfillHTLC *NONNULL_PTR arg); - export function UpdateFulfillHTLC_clone_ptr(arg: number): number { + // 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); + export function ChannelManager_retry_payment(this_arg: number, route: number, payment_id: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFulfillHTLC_clone_ptr(arg); + const nativeResponseValue = wasm.TS_ChannelManager_retry_payment(this_arg, route, encodeUint8Array(payment_id)); return nativeResponseValue; } - // struct LDKUpdateFulfillHTLC UpdateFulfillHTLC_clone(const struct LDKUpdateFulfillHTLC *NONNULL_PTR orig); - export function UpdateFulfillHTLC_clone(orig: number): number { + // void ChannelManager_abandon_payment(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKThirtyTwoBytes payment_id); + export function ChannelManager_abandon_payment(this_arg: number, payment_id: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFulfillHTLC_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelManager_abandon_payment(this_arg, encodeUint8Array(payment_id)); + // debug statements here } - // void UpdateFailHTLC_free(struct LDKUpdateFailHTLC this_obj); - export function UpdateFailHTLC_free(this_obj: number): void { + // 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); + export function ChannelManager_send_spontaneous_payment(this_arg: number, route: number, payment_preimage: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFailHTLC_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelManager_send_spontaneous_payment(this_arg, route, encodeUint8Array(payment_preimage)); + return nativeResponseValue; } - // const uint8_t (*UpdateFailHTLC_get_channel_id(const struct LDKUpdateFailHTLC *NONNULL_PTR this_ptr))[32]; - export function UpdateFailHTLC_get_channel_id(this_ptr: number): Uint8Array { + // MUST_USE_RES struct LDKCResult_NoneAPIErrorZ ChannelManager_funding_transaction_generated(const struct LDKChannelManager *NONNULL_PTR this_arg, const uint8_t (*temporary_channel_id)[32], struct LDKTransaction funding_transaction); + export function ChannelManager_funding_transaction_generated(this_arg: number, temporary_channel_id: Uint8Array, funding_transaction: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFailHTLC_get_channel_id(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelManager_funding_transaction_generated(this_arg, encodeUint8Array(temporary_channel_id), encodeUint8Array(funding_transaction)); + return nativeResponseValue; } - // void UpdateFailHTLC_set_channel_id(struct LDKUpdateFailHTLC *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function UpdateFailHTLC_set_channel_id(this_ptr: number, val: Uint8Array): void { + // void ChannelManager_broadcast_node_announcement(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKThreeBytes rgb, struct LDKThirtyTwoBytes alias, struct LDKCVec_NetAddressZ addresses); + export function ChannelManager_broadcast_node_announcement(this_arg: number, rgb: Uint8Array, alias: Uint8Array, addresses: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFailHTLC_set_channel_id(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_ChannelManager_broadcast_node_announcement(this_arg, encodeUint8Array(rgb), encodeUint8Array(alias), addresses); // debug statements here } - // uint64_t UpdateFailHTLC_get_htlc_id(const struct LDKUpdateFailHTLC *NONNULL_PTR this_ptr); - export function UpdateFailHTLC_get_htlc_id(this_ptr: number): number { + // void ChannelManager_process_pending_htlc_forwards(const struct LDKChannelManager *NONNULL_PTR this_arg); + export function ChannelManager_process_pending_htlc_forwards(this_arg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFailHTLC_get_htlc_id(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelManager_process_pending_htlc_forwards(this_arg); + // debug statements here } - // void UpdateFailHTLC_set_htlc_id(struct LDKUpdateFailHTLC *NONNULL_PTR this_ptr, uint64_t val); - export function UpdateFailHTLC_set_htlc_id(this_ptr: number, val: number): void { + // void ChannelManager_timer_tick_occurred(const struct LDKChannelManager *NONNULL_PTR this_arg); + export function ChannelManager_timer_tick_occurred(this_arg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFailHTLC_set_htlc_id(this_ptr, val); + const nativeResponseValue = wasm.TS_ChannelManager_timer_tick_occurred(this_arg); // debug statements here } - // uint64_t UpdateFailHTLC_clone_ptr(LDKUpdateFailHTLC *NONNULL_PTR arg); - export function UpdateFailHTLC_clone_ptr(arg: number): number { + // MUST_USE_RES bool ChannelManager_fail_htlc_backwards(const struct LDKChannelManager *NONNULL_PTR this_arg, const uint8_t (*payment_hash)[32]); + export function ChannelManager_fail_htlc_backwards(this_arg: number, payment_hash: Uint8Array): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFailHTLC_clone_ptr(arg); + const nativeResponseValue = wasm.TS_ChannelManager_fail_htlc_backwards(this_arg, encodeUint8Array(payment_hash)); return nativeResponseValue; } - // struct LDKUpdateFailHTLC UpdateFailHTLC_clone(const struct LDKUpdateFailHTLC *NONNULL_PTR orig); - export function UpdateFailHTLC_clone(orig: number): number { + // MUST_USE_RES bool ChannelManager_claim_funds(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKThirtyTwoBytes payment_preimage); + export function ChannelManager_claim_funds(this_arg: number, payment_preimage: Uint8Array): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFailHTLC_clone(orig); + const nativeResponseValue = wasm.TS_ChannelManager_claim_funds(this_arg, encodeUint8Array(payment_preimage)); return nativeResponseValue; } - // void UpdateFailMalformedHTLC_free(struct LDKUpdateFailMalformedHTLC this_obj); - export function UpdateFailMalformedHTLC_free(this_obj: number): void { + // MUST_USE_RES struct LDKPublicKey ChannelManager_get_our_node_id(const struct LDKChannelManager *NONNULL_PTR this_arg); + export function ChannelManager_get_our_node_id(this_arg: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFailMalformedHTLC_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelManager_get_our_node_id(this_arg); + return decodeUint8Array(nativeResponseValue); } - // const uint8_t (*UpdateFailMalformedHTLC_get_channel_id(const struct LDKUpdateFailMalformedHTLC *NONNULL_PTR this_ptr))[32]; - export function UpdateFailMalformedHTLC_get_channel_id(this_ptr: number): Uint8Array { + // 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); + export function ChannelManager_create_inbound_payment(this_arg: number, min_value_msat: number, invoice_expiry_delta_secs: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFailMalformedHTLC_get_channel_id(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelManager_create_inbound_payment(this_arg, min_value_msat, invoice_expiry_delta_secs); + return nativeResponseValue; } - // void UpdateFailMalformedHTLC_set_channel_id(struct LDKUpdateFailMalformedHTLC *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function UpdateFailMalformedHTLC_set_channel_id(this_ptr: number, val: Uint8Array): void { + // 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); + export function ChannelManager_create_inbound_payment_legacy(this_arg: number, min_value_msat: number, invoice_expiry_delta_secs: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFailMalformedHTLC_set_channel_id(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelManager_create_inbound_payment_legacy(this_arg, min_value_msat, invoice_expiry_delta_secs); + return nativeResponseValue; } - // uint64_t UpdateFailMalformedHTLC_get_htlc_id(const struct LDKUpdateFailMalformedHTLC *NONNULL_PTR this_ptr); - export function UpdateFailMalformedHTLC_get_htlc_id(this_ptr: number): number { + // 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); + export function ChannelManager_create_inbound_payment_for_hash(this_arg: number, payment_hash: Uint8Array, min_value_msat: number, invoice_expiry_delta_secs: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFailMalformedHTLC_get_htlc_id(this_ptr); + const nativeResponseValue = wasm.TS_ChannelManager_create_inbound_payment_for_hash(this_arg, encodeUint8Array(payment_hash), min_value_msat, invoice_expiry_delta_secs); return nativeResponseValue; } - // void UpdateFailMalformedHTLC_set_htlc_id(struct LDKUpdateFailMalformedHTLC *NONNULL_PTR this_ptr, uint64_t val); - export function UpdateFailMalformedHTLC_set_htlc_id(this_ptr: number, val: number): void { + // 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); + export function ChannelManager_create_inbound_payment_for_hash_legacy(this_arg: number, payment_hash: Uint8Array, min_value_msat: number, invoice_expiry_delta_secs: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFailMalformedHTLC_set_htlc_id(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelManager_create_inbound_payment_for_hash_legacy(this_arg, encodeUint8Array(payment_hash), min_value_msat, invoice_expiry_delta_secs); + return nativeResponseValue; } - // uint16_t UpdateFailMalformedHTLC_get_failure_code(const struct LDKUpdateFailMalformedHTLC *NONNULL_PTR this_ptr); - export function UpdateFailMalformedHTLC_get_failure_code(this_ptr: number): number { + // MUST_USE_RES struct LDKCResult_PaymentPreimageAPIErrorZ ChannelManager_get_payment_preimage(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKThirtyTwoBytes payment_hash, struct LDKThirtyTwoBytes payment_secret); + export function ChannelManager_get_payment_preimage(this_arg: number, payment_hash: Uint8Array, payment_secret: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFailMalformedHTLC_get_failure_code(this_ptr); + const nativeResponseValue = wasm.TS_ChannelManager_get_payment_preimage(this_arg, encodeUint8Array(payment_hash), encodeUint8Array(payment_secret)); return nativeResponseValue; } - // void UpdateFailMalformedHTLC_set_failure_code(struct LDKUpdateFailMalformedHTLC *NONNULL_PTR this_ptr, uint16_t val); - export function UpdateFailMalformedHTLC_set_failure_code(this_ptr: number, val: number): void { + // struct LDKMessageSendEventsProvider ChannelManager_as_MessageSendEventsProvider(const struct LDKChannelManager *NONNULL_PTR this_arg); + export function ChannelManager_as_MessageSendEventsProvider(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFailMalformedHTLC_set_failure_code(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelManager_as_MessageSendEventsProvider(this_arg); + return nativeResponseValue; } - // uint64_t UpdateFailMalformedHTLC_clone_ptr(LDKUpdateFailMalformedHTLC *NONNULL_PTR arg); - export function UpdateFailMalformedHTLC_clone_ptr(arg: number): number { + // struct LDKEventsProvider ChannelManager_as_EventsProvider(const struct LDKChannelManager *NONNULL_PTR this_arg); + export function ChannelManager_as_EventsProvider(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFailMalformedHTLC_clone_ptr(arg); + const nativeResponseValue = wasm.TS_ChannelManager_as_EventsProvider(this_arg); return nativeResponseValue; } - // struct LDKUpdateFailMalformedHTLC UpdateFailMalformedHTLC_clone(const struct LDKUpdateFailMalformedHTLC *NONNULL_PTR orig); - export function UpdateFailMalformedHTLC_clone(orig: number): number { + // struct LDKListen ChannelManager_as_Listen(const struct LDKChannelManager *NONNULL_PTR this_arg); + export function ChannelManager_as_Listen(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFailMalformedHTLC_clone(orig); + const nativeResponseValue = wasm.TS_ChannelManager_as_Listen(this_arg); return nativeResponseValue; } - // void CommitmentSigned_free(struct LDKCommitmentSigned this_obj); - export function CommitmentSigned_free(this_obj: number): void { + // struct LDKConfirm ChannelManager_as_Confirm(const struct LDKChannelManager *NONNULL_PTR this_arg); + export function ChannelManager_as_Confirm(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentSigned_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelManager_as_Confirm(this_arg); + return nativeResponseValue; } - // const uint8_t (*CommitmentSigned_get_channel_id(const struct LDKCommitmentSigned *NONNULL_PTR this_ptr))[32]; - export function CommitmentSigned_get_channel_id(this_ptr: number): Uint8Array { + // void ChannelManager_await_persistable_update(const struct LDKChannelManager *NONNULL_PTR this_arg); + export function ChannelManager_await_persistable_update(this_arg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentSigned_get_channel_id(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelManager_await_persistable_update(this_arg); + // debug statements here } - // void CommitmentSigned_set_channel_id(struct LDKCommitmentSigned *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function CommitmentSigned_set_channel_id(this_ptr: number, val: Uint8Array): void { + // MUST_USE_RES struct LDKBestBlock ChannelManager_current_best_block(const struct LDKChannelManager *NONNULL_PTR this_arg); + export function ChannelManager_current_best_block(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentSigned_set_channel_id(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelManager_current_best_block(this_arg); + return nativeResponseValue; } - // struct LDKSignature CommitmentSigned_get_signature(const struct LDKCommitmentSigned *NONNULL_PTR this_ptr); - export function CommitmentSigned_get_signature(this_ptr: number): Uint8Array { + // struct LDKChannelMessageHandler ChannelManager_as_ChannelMessageHandler(const struct LDKChannelManager *NONNULL_PTR this_arg); + export function ChannelManager_as_ChannelMessageHandler(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentSigned_get_signature(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelManager_as_ChannelMessageHandler(this_arg); + return nativeResponseValue; } - // void CommitmentSigned_set_signature(struct LDKCommitmentSigned *NONNULL_PTR this_ptr, struct LDKSignature val); - export function CommitmentSigned_set_signature(this_ptr: number, val: Uint8Array): void { + // struct LDKCVec_u8Z ChannelManager_write(const struct LDKChannelManager *NONNULL_PTR obj); + export function ChannelManager_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentSigned_set_signature(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelManager_write(obj); + return decodeUint8Array(nativeResponseValue); } - // void CommitmentSigned_set_htlc_signatures(struct LDKCommitmentSigned *NONNULL_PTR this_ptr, struct LDKCVec_SignatureZ val); - export function CommitmentSigned_set_htlc_signatures(this_ptr: number, val: Uint8Array[]): void { + // void ChannelManagerReadArgs_free(struct LDKChannelManagerReadArgs this_obj); + export function ChannelManagerReadArgs_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentSigned_set_htlc_signatures(this_ptr, val); + const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_free(this_obj); // debug statements here } - // MUST_USE_RES struct LDKCommitmentSigned CommitmentSigned_new(struct LDKThirtyTwoBytes channel_id_arg, struct LDKSignature signature_arg, struct LDKCVec_SignatureZ htlc_signatures_arg); - export function CommitmentSigned_new(channel_id_arg: Uint8Array, signature_arg: Uint8Array, htlc_signatures_arg: Uint8Array[]): number { + // const struct LDKKeysInterface *ChannelManagerReadArgs_get_keys_manager(const struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr); + export function ChannelManagerReadArgs_get_keys_manager(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentSigned_new(encodeArray(channel_id_arg), encodeArray(signature_arg), htlc_signatures_arg); + const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_get_keys_manager(this_ptr); return nativeResponseValue; } - // uint64_t CommitmentSigned_clone_ptr(LDKCommitmentSigned *NONNULL_PTR arg); - export function CommitmentSigned_clone_ptr(arg: number): number { + // void ChannelManagerReadArgs_set_keys_manager(struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr, struct LDKKeysInterface val); + export function ChannelManagerReadArgs_set_keys_manager(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentSigned_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_set_keys_manager(this_ptr, val); + // debug statements here } - // struct LDKCommitmentSigned CommitmentSigned_clone(const struct LDKCommitmentSigned *NONNULL_PTR orig); - export function CommitmentSigned_clone(orig: number): number { + // const struct LDKFeeEstimator *ChannelManagerReadArgs_get_fee_estimator(const struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr); + export function ChannelManagerReadArgs_get_fee_estimator(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentSigned_clone(orig); + const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_get_fee_estimator(this_ptr); return nativeResponseValue; } - // void RevokeAndACK_free(struct LDKRevokeAndACK this_obj); - export function RevokeAndACK_free(this_obj: number): void { + // void ChannelManagerReadArgs_set_fee_estimator(struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr, struct LDKFeeEstimator val); + export function ChannelManagerReadArgs_set_fee_estimator(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RevokeAndACK_free(this_obj); + const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_set_fee_estimator(this_ptr, val); // debug statements here } - // const uint8_t (*RevokeAndACK_get_channel_id(const struct LDKRevokeAndACK *NONNULL_PTR this_ptr))[32]; - export function RevokeAndACK_get_channel_id(this_ptr: number): Uint8Array { + // const struct LDKWatch *ChannelManagerReadArgs_get_chain_monitor(const struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr); + export function ChannelManagerReadArgs_get_chain_monitor(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RevokeAndACK_get_channel_id(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_get_chain_monitor(this_ptr); + return nativeResponseValue; } - // void RevokeAndACK_set_channel_id(struct LDKRevokeAndACK *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function RevokeAndACK_set_channel_id(this_ptr: number, val: Uint8Array): void { + // void ChannelManagerReadArgs_set_chain_monitor(struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr, struct LDKWatch val); + export function ChannelManagerReadArgs_set_chain_monitor(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RevokeAndACK_set_channel_id(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_set_chain_monitor(this_ptr, val); // debug statements here } - // const uint8_t (*RevokeAndACK_get_per_commitment_secret(const struct LDKRevokeAndACK *NONNULL_PTR this_ptr))[32]; - export function RevokeAndACK_get_per_commitment_secret(this_ptr: number): Uint8Array { + // const struct LDKBroadcasterInterface *ChannelManagerReadArgs_get_tx_broadcaster(const struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr); + export function ChannelManagerReadArgs_get_tx_broadcaster(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RevokeAndACK_get_per_commitment_secret(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_get_tx_broadcaster(this_ptr); + return nativeResponseValue; } - // void RevokeAndACK_set_per_commitment_secret(struct LDKRevokeAndACK *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function RevokeAndACK_set_per_commitment_secret(this_ptr: number, val: Uint8Array): void { + // void ChannelManagerReadArgs_set_tx_broadcaster(struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr, struct LDKBroadcasterInterface val); + export function ChannelManagerReadArgs_set_tx_broadcaster(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RevokeAndACK_set_per_commitment_secret(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_set_tx_broadcaster(this_ptr, val); // debug statements here } - // struct LDKPublicKey RevokeAndACK_get_next_per_commitment_point(const struct LDKRevokeAndACK *NONNULL_PTR this_ptr); - export function RevokeAndACK_get_next_per_commitment_point(this_ptr: number): Uint8Array { + // const struct LDKLogger *ChannelManagerReadArgs_get_logger(const struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr); + export function ChannelManagerReadArgs_get_logger(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RevokeAndACK_get_next_per_commitment_point(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_get_logger(this_ptr); + return nativeResponseValue; } - // void RevokeAndACK_set_next_per_commitment_point(struct LDKRevokeAndACK *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function RevokeAndACK_set_next_per_commitment_point(this_ptr: number, val: Uint8Array): void { + // void ChannelManagerReadArgs_set_logger(struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr, struct LDKLogger val); + export function ChannelManagerReadArgs_set_logger(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RevokeAndACK_set_next_per_commitment_point(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_set_logger(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKRevokeAndACK RevokeAndACK_new(struct LDKThirtyTwoBytes channel_id_arg, struct LDKThirtyTwoBytes per_commitment_secret_arg, struct LDKPublicKey next_per_commitment_point_arg); - export function RevokeAndACK_new(channel_id_arg: Uint8Array, per_commitment_secret_arg: Uint8Array, next_per_commitment_point_arg: Uint8Array): number { + // struct LDKUserConfig ChannelManagerReadArgs_get_default_config(const struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr); + export function ChannelManagerReadArgs_get_default_config(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RevokeAndACK_new(encodeArray(channel_id_arg), encodeArray(per_commitment_secret_arg), encodeArray(next_per_commitment_point_arg)); + const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_get_default_config(this_ptr); return nativeResponseValue; } - // uint64_t RevokeAndACK_clone_ptr(LDKRevokeAndACK *NONNULL_PTR arg); - export function RevokeAndACK_clone_ptr(arg: number): number { + // void ChannelManagerReadArgs_set_default_config(struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr, struct LDKUserConfig val); + export function ChannelManagerReadArgs_set_default_config(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RevokeAndACK_clone_ptr(arg); + 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); + export function ChannelManagerReadArgs_new(keys_manager: number, fee_estimator: number, chain_monitor: number, tx_broadcaster: number, logger: number, default_config: number, channel_monitors: number[]): number { + 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); return nativeResponseValue; } - // struct LDKRevokeAndACK RevokeAndACK_clone(const struct LDKRevokeAndACK *NONNULL_PTR orig); - export function RevokeAndACK_clone(orig: number): number { + // struct LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ C2Tuple_BlockHashChannelManagerZ_read(struct LDKu8slice ser, struct LDKChannelManagerReadArgs arg); + export function C2Tuple_BlockHashChannelManagerZ_read(ser: Uint8Array, arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RevokeAndACK_clone(orig); + const nativeResponseValue = wasm.TS_C2Tuple_BlockHashChannelManagerZ_read(encodeUint8Array(ser), arg); return nativeResponseValue; } - // void UpdateFee_free(struct LDKUpdateFee this_obj); - export function UpdateFee_free(this_obj: number): void { + // void DecodeError_free(struct LDKDecodeError this_obj); + export function DecodeError_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFee_free(this_obj); + const nativeResponseValue = wasm.TS_DecodeError_free(this_obj); // debug statements here } - // const uint8_t (*UpdateFee_get_channel_id(const struct LDKUpdateFee *NONNULL_PTR this_ptr))[32]; - export function UpdateFee_get_channel_id(this_ptr: number): Uint8Array { + // uint64_t DecodeError_clone_ptr(LDKDecodeError *NONNULL_PTR arg); + export function DecodeError_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFee_get_channel_id(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_DecodeError_clone_ptr(arg); + return nativeResponseValue; } - // void UpdateFee_set_channel_id(struct LDKUpdateFee *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function UpdateFee_set_channel_id(this_ptr: number, val: Uint8Array): void { + // struct LDKDecodeError DecodeError_clone(const struct LDKDecodeError *NONNULL_PTR orig); + export function DecodeError_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFee_set_channel_id(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_DecodeError_clone(orig); + return nativeResponseValue; + } + // void Init_free(struct LDKInit this_obj); + export function Init_free(this_obj: number): void { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_Init_free(this_obj); // debug statements here } - // uint32_t UpdateFee_get_feerate_per_kw(const struct LDKUpdateFee *NONNULL_PTR this_ptr); - export function UpdateFee_get_feerate_per_kw(this_ptr: number): number { + // struct LDKInitFeatures Init_get_features(const struct LDKInit *NONNULL_PTR this_ptr); + export function Init_get_features(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFee_get_feerate_per_kw(this_ptr); + const nativeResponseValue = wasm.TS_Init_get_features(this_ptr); return nativeResponseValue; } - // void UpdateFee_set_feerate_per_kw(struct LDKUpdateFee *NONNULL_PTR this_ptr, uint32_t val); - export function UpdateFee_set_feerate_per_kw(this_ptr: number, val: number): void { + // void Init_set_features(struct LDKInit *NONNULL_PTR this_ptr, struct LDKInitFeatures val); + export function Init_set_features(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFee_set_feerate_per_kw(this_ptr, val); + const nativeResponseValue = wasm.TS_Init_set_features(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKUpdateFee UpdateFee_new(struct LDKThirtyTwoBytes channel_id_arg, uint32_t feerate_per_kw_arg); - export function UpdateFee_new(channel_id_arg: Uint8Array, feerate_per_kw_arg: number): number { + // MUST_USE_RES struct LDKInit Init_new(struct LDKInitFeatures features_arg); + export function Init_new(features_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFee_new(encodeArray(channel_id_arg), feerate_per_kw_arg); + const nativeResponseValue = wasm.TS_Init_new(features_arg); return nativeResponseValue; } - // uint64_t UpdateFee_clone_ptr(LDKUpdateFee *NONNULL_PTR arg); - export function UpdateFee_clone_ptr(arg: number): number { + // uint64_t Init_clone_ptr(LDKInit *NONNULL_PTR arg); + export function Init_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFee_clone_ptr(arg); + const nativeResponseValue = wasm.TS_Init_clone_ptr(arg); return nativeResponseValue; } - // struct LDKUpdateFee UpdateFee_clone(const struct LDKUpdateFee *NONNULL_PTR orig); - export function UpdateFee_clone(orig: number): number { + // struct LDKInit Init_clone(const struct LDKInit *NONNULL_PTR orig); + export function Init_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFee_clone(orig); + const nativeResponseValue = wasm.TS_Init_clone(orig); return nativeResponseValue; } - // void DataLossProtect_free(struct LDKDataLossProtect this_obj); - export function DataLossProtect_free(this_obj: number): void { + // void ErrorMessage_free(struct LDKErrorMessage this_obj); + export function ErrorMessage_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DataLossProtect_free(this_obj); + const nativeResponseValue = wasm.TS_ErrorMessage_free(this_obj); // debug statements here } - // const uint8_t (*DataLossProtect_get_your_last_per_commitment_secret(const struct LDKDataLossProtect *NONNULL_PTR this_ptr))[32]; - export function DataLossProtect_get_your_last_per_commitment_secret(this_ptr: number): Uint8Array { + // const uint8_t (*ErrorMessage_get_channel_id(const struct LDKErrorMessage *NONNULL_PTR this_ptr))[32]; + export function ErrorMessage_get_channel_id(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DataLossProtect_get_your_last_per_commitment_secret(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ErrorMessage_get_channel_id(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void DataLossProtect_set_your_last_per_commitment_secret(struct LDKDataLossProtect *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function DataLossProtect_set_your_last_per_commitment_secret(this_ptr: number, val: Uint8Array): void { + // void ErrorMessage_set_channel_id(struct LDKErrorMessage *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function ErrorMessage_set_channel_id(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DataLossProtect_set_your_last_per_commitment_secret(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_ErrorMessage_set_channel_id(this_ptr, encodeUint8Array(val)); // debug statements here } - // struct LDKPublicKey DataLossProtect_get_my_current_per_commitment_point(const struct LDKDataLossProtect *NONNULL_PTR this_ptr); - export function DataLossProtect_get_my_current_per_commitment_point(this_ptr: number): Uint8Array { + // struct LDKStr ErrorMessage_get_data(const struct LDKErrorMessage *NONNULL_PTR this_ptr); + export function ErrorMessage_get_data(this_ptr: number): String { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DataLossProtect_get_my_current_per_commitment_point(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ErrorMessage_get_data(this_ptr); + return nativeResponseValue; } - // void DataLossProtect_set_my_current_per_commitment_point(struct LDKDataLossProtect *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function DataLossProtect_set_my_current_per_commitment_point(this_ptr: number, val: Uint8Array): void { + // void ErrorMessage_set_data(struct LDKErrorMessage *NONNULL_PTR this_ptr, struct LDKStr val); + export function ErrorMessage_set_data(this_ptr: number, val: String): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DataLossProtect_set_my_current_per_commitment_point(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_ErrorMessage_set_data(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKDataLossProtect DataLossProtect_new(struct LDKThirtyTwoBytes your_last_per_commitment_secret_arg, struct LDKPublicKey my_current_per_commitment_point_arg); - export function DataLossProtect_new(your_last_per_commitment_secret_arg: Uint8Array, my_current_per_commitment_point_arg: Uint8Array): number { + // MUST_USE_RES struct LDKErrorMessage ErrorMessage_new(struct LDKThirtyTwoBytes channel_id_arg, struct LDKStr data_arg); + export function ErrorMessage_new(channel_id_arg: Uint8Array, data_arg: String): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DataLossProtect_new(encodeArray(your_last_per_commitment_secret_arg), encodeArray(my_current_per_commitment_point_arg)); + const nativeResponseValue = wasm.TS_ErrorMessage_new(encodeUint8Array(channel_id_arg), data_arg); return nativeResponseValue; } - // uint64_t DataLossProtect_clone_ptr(LDKDataLossProtect *NONNULL_PTR arg); - export function DataLossProtect_clone_ptr(arg: number): number { + // uint64_t ErrorMessage_clone_ptr(LDKErrorMessage *NONNULL_PTR arg); + export function ErrorMessage_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DataLossProtect_clone_ptr(arg); + const nativeResponseValue = wasm.TS_ErrorMessage_clone_ptr(arg); return nativeResponseValue; } - // struct LDKDataLossProtect DataLossProtect_clone(const struct LDKDataLossProtect *NONNULL_PTR orig); - export function DataLossProtect_clone(orig: number): number { + // struct LDKErrorMessage ErrorMessage_clone(const struct LDKErrorMessage *NONNULL_PTR orig); + export function ErrorMessage_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DataLossProtect_clone(orig); + const nativeResponseValue = wasm.TS_ErrorMessage_clone(orig); return nativeResponseValue; } - // void ChannelReestablish_free(struct LDKChannelReestablish this_obj); - export function ChannelReestablish_free(this_obj: number): void { + // void Ping_free(struct LDKPing this_obj); + export function Ping_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelReestablish_free(this_obj); + const nativeResponseValue = wasm.TS_Ping_free(this_obj); // debug statements here } - // const uint8_t (*ChannelReestablish_get_channel_id(const struct LDKChannelReestablish *NONNULL_PTR this_ptr))[32]; - export function ChannelReestablish_get_channel_id(this_ptr: number): Uint8Array { + // uint16_t Ping_get_ponglen(const struct LDKPing *NONNULL_PTR this_ptr); + export function Ping_get_ponglen(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelReestablish_get_channel_id(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_Ping_get_ponglen(this_ptr); + return nativeResponseValue; } - // void ChannelReestablish_set_channel_id(struct LDKChannelReestablish *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function ChannelReestablish_set_channel_id(this_ptr: number, val: Uint8Array): void { + // void Ping_set_ponglen(struct LDKPing *NONNULL_PTR this_ptr, uint16_t val); + export function Ping_set_ponglen(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelReestablish_set_channel_id(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_Ping_set_ponglen(this_ptr, val); // debug statements here } - // uint64_t ChannelReestablish_get_next_local_commitment_number(const struct LDKChannelReestablish *NONNULL_PTR this_ptr); - export function ChannelReestablish_get_next_local_commitment_number(this_ptr: number): number { + // uint16_t Ping_get_byteslen(const struct LDKPing *NONNULL_PTR this_ptr); + export function Ping_get_byteslen(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelReestablish_get_next_local_commitment_number(this_ptr); + const nativeResponseValue = wasm.TS_Ping_get_byteslen(this_ptr); return nativeResponseValue; } - // void ChannelReestablish_set_next_local_commitment_number(struct LDKChannelReestablish *NONNULL_PTR this_ptr, uint64_t val); - export function ChannelReestablish_set_next_local_commitment_number(this_ptr: number, val: number): void { + // void Ping_set_byteslen(struct LDKPing *NONNULL_PTR this_ptr, uint16_t val); + export function Ping_set_byteslen(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelReestablish_set_next_local_commitment_number(this_ptr, val); + const nativeResponseValue = wasm.TS_Ping_set_byteslen(this_ptr, val); // debug statements here } - // uint64_t ChannelReestablish_get_next_remote_commitment_number(const struct LDKChannelReestablish *NONNULL_PTR this_ptr); - export function ChannelReestablish_get_next_remote_commitment_number(this_ptr: number): number { + // MUST_USE_RES struct LDKPing Ping_new(uint16_t ponglen_arg, uint16_t byteslen_arg); + export function Ping_new(ponglen_arg: number, byteslen_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelReestablish_get_next_remote_commitment_number(this_ptr); + const nativeResponseValue = wasm.TS_Ping_new(ponglen_arg, byteslen_arg); return nativeResponseValue; } - // void ChannelReestablish_set_next_remote_commitment_number(struct LDKChannelReestablish *NONNULL_PTR this_ptr, uint64_t val); - export function ChannelReestablish_set_next_remote_commitment_number(this_ptr: number, val: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.ChannelReestablish_set_next_remote_commitment_number(this_ptr, val); - // debug statements here - } - // uint64_t ChannelReestablish_clone_ptr(LDKChannelReestablish *NONNULL_PTR arg); - export function ChannelReestablish_clone_ptr(arg: number): number { + // uint64_t Ping_clone_ptr(LDKPing *NONNULL_PTR arg); + export function Ping_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelReestablish_clone_ptr(arg); + const nativeResponseValue = wasm.TS_Ping_clone_ptr(arg); return nativeResponseValue; } - // struct LDKChannelReestablish ChannelReestablish_clone(const struct LDKChannelReestablish *NONNULL_PTR orig); - export function ChannelReestablish_clone(orig: number): number { + // struct LDKPing Ping_clone(const struct LDKPing *NONNULL_PTR orig); + export function Ping_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelReestablish_clone(orig); + const nativeResponseValue = wasm.TS_Ping_clone(orig); return nativeResponseValue; } - // void AnnouncementSignatures_free(struct LDKAnnouncementSignatures this_obj); - export function AnnouncementSignatures_free(this_obj: number): void { + // void Pong_free(struct LDKPong this_obj); + export function Pong_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AnnouncementSignatures_free(this_obj); + const nativeResponseValue = wasm.TS_Pong_free(this_obj); // debug statements here } - // const uint8_t (*AnnouncementSignatures_get_channel_id(const struct LDKAnnouncementSignatures *NONNULL_PTR this_ptr))[32]; - export function AnnouncementSignatures_get_channel_id(this_ptr: number): Uint8Array { + // uint16_t Pong_get_byteslen(const struct LDKPong *NONNULL_PTR this_ptr); + export function Pong_get_byteslen(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AnnouncementSignatures_get_channel_id(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_Pong_get_byteslen(this_ptr); + return nativeResponseValue; } - // void AnnouncementSignatures_set_channel_id(struct LDKAnnouncementSignatures *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function AnnouncementSignatures_set_channel_id(this_ptr: number, val: Uint8Array): void { + // void Pong_set_byteslen(struct LDKPong *NONNULL_PTR this_ptr, uint16_t val); + export function Pong_set_byteslen(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AnnouncementSignatures_set_channel_id(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_Pong_set_byteslen(this_ptr, val); // debug statements here } - // uint64_t AnnouncementSignatures_get_short_channel_id(const struct LDKAnnouncementSignatures *NONNULL_PTR this_ptr); - export function AnnouncementSignatures_get_short_channel_id(this_ptr: number): number { + // MUST_USE_RES struct LDKPong Pong_new(uint16_t byteslen_arg); + export function Pong_new(byteslen_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AnnouncementSignatures_get_short_channel_id(this_ptr); + const nativeResponseValue = wasm.TS_Pong_new(byteslen_arg); return nativeResponseValue; } - // void AnnouncementSignatures_set_short_channel_id(struct LDKAnnouncementSignatures *NONNULL_PTR this_ptr, uint64_t val); - export function AnnouncementSignatures_set_short_channel_id(this_ptr: number, val: number): void { + // uint64_t Pong_clone_ptr(LDKPong *NONNULL_PTR arg); + export function Pong_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AnnouncementSignatures_set_short_channel_id(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_Pong_clone_ptr(arg); + return nativeResponseValue; } - // struct LDKSignature AnnouncementSignatures_get_node_signature(const struct LDKAnnouncementSignatures *NONNULL_PTR this_ptr); - export function AnnouncementSignatures_get_node_signature(this_ptr: number): Uint8Array { + // struct LDKPong Pong_clone(const struct LDKPong *NONNULL_PTR orig); + export function Pong_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AnnouncementSignatures_get_node_signature(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_Pong_clone(orig); + return nativeResponseValue; } - // void AnnouncementSignatures_set_node_signature(struct LDKAnnouncementSignatures *NONNULL_PTR this_ptr, struct LDKSignature val); - export function AnnouncementSignatures_set_node_signature(this_ptr: number, val: Uint8Array): void { + // void OpenChannel_free(struct LDKOpenChannel this_obj); + export function OpenChannel_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AnnouncementSignatures_set_node_signature(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_OpenChannel_free(this_obj); // debug statements here } - // struct LDKSignature AnnouncementSignatures_get_bitcoin_signature(const struct LDKAnnouncementSignatures *NONNULL_PTR this_ptr); - export function AnnouncementSignatures_get_bitcoin_signature(this_ptr: number): Uint8Array { + // const uint8_t (*OpenChannel_get_chain_hash(const struct LDKOpenChannel *NONNULL_PTR this_ptr))[32]; + export function OpenChannel_get_chain_hash(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AnnouncementSignatures_get_bitcoin_signature(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_OpenChannel_get_chain_hash(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void AnnouncementSignatures_set_bitcoin_signature(struct LDKAnnouncementSignatures *NONNULL_PTR this_ptr, struct LDKSignature val); - export function AnnouncementSignatures_set_bitcoin_signature(this_ptr: number, val: Uint8Array): void { + // void OpenChannel_set_chain_hash(struct LDKOpenChannel *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function OpenChannel_set_chain_hash(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AnnouncementSignatures_set_bitcoin_signature(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_OpenChannel_set_chain_hash(this_ptr, encodeUint8Array(val)); // debug statements here } - // MUST_USE_RES struct LDKAnnouncementSignatures AnnouncementSignatures_new(struct LDKThirtyTwoBytes channel_id_arg, uint64_t short_channel_id_arg, struct LDKSignature node_signature_arg, struct LDKSignature bitcoin_signature_arg); - export function AnnouncementSignatures_new(channel_id_arg: Uint8Array, short_channel_id_arg: number, node_signature_arg: Uint8Array, bitcoin_signature_arg: Uint8Array): number { + // const uint8_t (*OpenChannel_get_temporary_channel_id(const struct LDKOpenChannel *NONNULL_PTR this_ptr))[32]; + export function OpenChannel_get_temporary_channel_id(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AnnouncementSignatures_new(encodeArray(channel_id_arg), short_channel_id_arg, encodeArray(node_signature_arg), encodeArray(bitcoin_signature_arg)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_OpenChannel_get_temporary_channel_id(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // uint64_t AnnouncementSignatures_clone_ptr(LDKAnnouncementSignatures *NONNULL_PTR arg); - export function AnnouncementSignatures_clone_ptr(arg: number): number { + // void OpenChannel_set_temporary_channel_id(struct LDKOpenChannel *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function OpenChannel_set_temporary_channel_id(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AnnouncementSignatures_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_OpenChannel_set_temporary_channel_id(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKAnnouncementSignatures AnnouncementSignatures_clone(const struct LDKAnnouncementSignatures *NONNULL_PTR orig); - export function AnnouncementSignatures_clone(orig: number): number { + // uint64_t OpenChannel_get_funding_satoshis(const struct LDKOpenChannel *NONNULL_PTR this_ptr); + export function OpenChannel_get_funding_satoshis(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AnnouncementSignatures_clone(orig); + const nativeResponseValue = wasm.TS_OpenChannel_get_funding_satoshis(this_ptr); return nativeResponseValue; } - // void NetAddress_free(struct LDKNetAddress this_ptr); - export function NetAddress_free(this_ptr: number): void { + // void OpenChannel_set_funding_satoshis(struct LDKOpenChannel *NONNULL_PTR this_ptr, uint64_t val); + export function OpenChannel_set_funding_satoshis(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetAddress_free(this_ptr); + const nativeResponseValue = wasm.TS_OpenChannel_set_funding_satoshis(this_ptr, val); // debug statements here } - // uint64_t NetAddress_clone_ptr(LDKNetAddress *NONNULL_PTR arg); - export function NetAddress_clone_ptr(arg: number): number { + // uint64_t OpenChannel_get_push_msat(const struct LDKOpenChannel *NONNULL_PTR this_ptr); + export function OpenChannel_get_push_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetAddress_clone_ptr(arg); + const nativeResponseValue = wasm.TS_OpenChannel_get_push_msat(this_ptr); return nativeResponseValue; } - // struct LDKNetAddress NetAddress_clone(const struct LDKNetAddress *NONNULL_PTR orig); - export function NetAddress_clone(orig: number): number { + // void OpenChannel_set_push_msat(struct LDKOpenChannel *NONNULL_PTR this_ptr, uint64_t val); + export function OpenChannel_set_push_msat(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetAddress_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_OpenChannel_set_push_msat(this_ptr, val); + // debug statements here } - // struct LDKNetAddress NetAddress_ipv4(struct LDKFourBytes addr, uint16_t port); - export function NetAddress_ipv4(addr: Uint8Array, port: number): number { + // uint64_t OpenChannel_get_dust_limit_satoshis(const struct LDKOpenChannel *NONNULL_PTR this_ptr); + export function OpenChannel_get_dust_limit_satoshis(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetAddress_ipv4(encodeArray(addr), port); + const nativeResponseValue = wasm.TS_OpenChannel_get_dust_limit_satoshis(this_ptr); return nativeResponseValue; } - // struct LDKNetAddress NetAddress_ipv6(struct LDKSixteenBytes addr, uint16_t port); - export function NetAddress_ipv6(addr: Uint8Array, port: number): number { + // void OpenChannel_set_dust_limit_satoshis(struct LDKOpenChannel *NONNULL_PTR this_ptr, uint64_t val); + export function OpenChannel_set_dust_limit_satoshis(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetAddress_ipv6(encodeArray(addr), port); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_OpenChannel_set_dust_limit_satoshis(this_ptr, val); + // debug statements here } - // struct LDKNetAddress NetAddress_onion_v2(struct LDKTwelveBytes a); - export function NetAddress_onion_v2(a: Uint8Array): number { + // uint64_t OpenChannel_get_max_htlc_value_in_flight_msat(const struct LDKOpenChannel *NONNULL_PTR this_ptr); + export function OpenChannel_get_max_htlc_value_in_flight_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetAddress_onion_v2(encodeArray(a)); + const nativeResponseValue = wasm.TS_OpenChannel_get_max_htlc_value_in_flight_msat(this_ptr); return nativeResponseValue; } - // struct LDKNetAddress NetAddress_onion_v3(struct LDKThirtyTwoBytes ed25519_pubkey, uint16_t checksum, uint8_t version, uint16_t port); - export function NetAddress_onion_v3(ed25519_pubkey: Uint8Array, checksum: number, version: number, port: number): number { + // void OpenChannel_set_max_htlc_value_in_flight_msat(struct LDKOpenChannel *NONNULL_PTR this_ptr, uint64_t val); + export function OpenChannel_set_max_htlc_value_in_flight_msat(this_ptr: number, val: number): void { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_OpenChannel_set_max_htlc_value_in_flight_msat(this_ptr, val); + // debug statements here + } + // uint64_t OpenChannel_get_channel_reserve_satoshis(const struct LDKOpenChannel *NONNULL_PTR this_ptr); + export function OpenChannel_get_channel_reserve_satoshis(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetAddress_onion_v3(encodeArray(ed25519_pubkey), checksum, version, port); + const nativeResponseValue = wasm.TS_OpenChannel_get_channel_reserve_satoshis(this_ptr); return nativeResponseValue; } - // struct LDKCVec_u8Z NetAddress_write(const struct LDKNetAddress *NONNULL_PTR obj); - export function NetAddress_write(obj: number): Uint8Array { + // void OpenChannel_set_channel_reserve_satoshis(struct LDKOpenChannel *NONNULL_PTR this_ptr, uint64_t val); + export function OpenChannel_set_channel_reserve_satoshis(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetAddress_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_OpenChannel_set_channel_reserve_satoshis(this_ptr, val); + // debug statements here } - // struct LDKCResult_NetAddressDecodeErrorZ NetAddress_read(struct LDKu8slice ser); - export function NetAddress_read(ser: Uint8Array): number { + // uint64_t OpenChannel_get_htlc_minimum_msat(const struct LDKOpenChannel *NONNULL_PTR this_ptr); + export function OpenChannel_get_htlc_minimum_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetAddress_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_OpenChannel_get_htlc_minimum_msat(this_ptr); return nativeResponseValue; } - // void UnsignedNodeAnnouncement_free(struct LDKUnsignedNodeAnnouncement this_obj); - export function UnsignedNodeAnnouncement_free(this_obj: number): void { + // void OpenChannel_set_htlc_minimum_msat(struct LDKOpenChannel *NONNULL_PTR this_ptr, uint64_t val); + export function OpenChannel_set_htlc_minimum_msat(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedNodeAnnouncement_free(this_obj); + const nativeResponseValue = wasm.TS_OpenChannel_set_htlc_minimum_msat(this_ptr, val); // debug statements here } - // struct LDKNodeFeatures UnsignedNodeAnnouncement_get_features(const struct LDKUnsignedNodeAnnouncement *NONNULL_PTR this_ptr); - export function UnsignedNodeAnnouncement_get_features(this_ptr: number): number { + // uint32_t OpenChannel_get_feerate_per_kw(const struct LDKOpenChannel *NONNULL_PTR this_ptr); + export function OpenChannel_get_feerate_per_kw(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedNodeAnnouncement_get_features(this_ptr); + const nativeResponseValue = wasm.TS_OpenChannel_get_feerate_per_kw(this_ptr); return nativeResponseValue; } - // void UnsignedNodeAnnouncement_set_features(struct LDKUnsignedNodeAnnouncement *NONNULL_PTR this_ptr, struct LDKNodeFeatures val); - export function UnsignedNodeAnnouncement_set_features(this_ptr: number, val: number): void { + // void OpenChannel_set_feerate_per_kw(struct LDKOpenChannel *NONNULL_PTR this_ptr, uint32_t val); + export function OpenChannel_set_feerate_per_kw(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedNodeAnnouncement_set_features(this_ptr, val); + const nativeResponseValue = wasm.TS_OpenChannel_set_feerate_per_kw(this_ptr, val); // debug statements here } - // uint32_t UnsignedNodeAnnouncement_get_timestamp(const struct LDKUnsignedNodeAnnouncement *NONNULL_PTR this_ptr); - export function UnsignedNodeAnnouncement_get_timestamp(this_ptr: number): number { + // uint16_t OpenChannel_get_to_self_delay(const struct LDKOpenChannel *NONNULL_PTR this_ptr); + export function OpenChannel_get_to_self_delay(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedNodeAnnouncement_get_timestamp(this_ptr); + const nativeResponseValue = wasm.TS_OpenChannel_get_to_self_delay(this_ptr); return nativeResponseValue; } - // void UnsignedNodeAnnouncement_set_timestamp(struct LDKUnsignedNodeAnnouncement *NONNULL_PTR this_ptr, uint32_t val); - export function UnsignedNodeAnnouncement_set_timestamp(this_ptr: number, val: number): void { + // void OpenChannel_set_to_self_delay(struct LDKOpenChannel *NONNULL_PTR this_ptr, uint16_t val); + export function OpenChannel_set_to_self_delay(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedNodeAnnouncement_set_timestamp(this_ptr, val); + const nativeResponseValue = wasm.TS_OpenChannel_set_to_self_delay(this_ptr, val); // debug statements here } - // struct LDKPublicKey UnsignedNodeAnnouncement_get_node_id(const struct LDKUnsignedNodeAnnouncement *NONNULL_PTR this_ptr); - export function UnsignedNodeAnnouncement_get_node_id(this_ptr: number): Uint8Array { + // uint16_t OpenChannel_get_max_accepted_htlcs(const struct LDKOpenChannel *NONNULL_PTR this_ptr); + export function OpenChannel_get_max_accepted_htlcs(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedNodeAnnouncement_get_node_id(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_OpenChannel_get_max_accepted_htlcs(this_ptr); + return nativeResponseValue; } - // void UnsignedNodeAnnouncement_set_node_id(struct LDKUnsignedNodeAnnouncement *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function UnsignedNodeAnnouncement_set_node_id(this_ptr: number, val: Uint8Array): void { + // void OpenChannel_set_max_accepted_htlcs(struct LDKOpenChannel *NONNULL_PTR this_ptr, uint16_t val); + export function OpenChannel_set_max_accepted_htlcs(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedNodeAnnouncement_set_node_id(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_OpenChannel_set_max_accepted_htlcs(this_ptr, val); // debug statements here } - // const uint8_t (*UnsignedNodeAnnouncement_get_rgb(const struct LDKUnsignedNodeAnnouncement *NONNULL_PTR this_ptr))[3]; - export function UnsignedNodeAnnouncement_get_rgb(this_ptr: number): Uint8Array { + // struct LDKPublicKey OpenChannel_get_funding_pubkey(const struct LDKOpenChannel *NONNULL_PTR this_ptr); + export function OpenChannel_get_funding_pubkey(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedNodeAnnouncement_get_rgb(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_OpenChannel_get_funding_pubkey(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void UnsignedNodeAnnouncement_set_rgb(struct LDKUnsignedNodeAnnouncement *NONNULL_PTR this_ptr, struct LDKThreeBytes val); - export function UnsignedNodeAnnouncement_set_rgb(this_ptr: number, val: Uint8Array): void { + // void OpenChannel_set_funding_pubkey(struct LDKOpenChannel *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function OpenChannel_set_funding_pubkey(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedNodeAnnouncement_set_rgb(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_OpenChannel_set_funding_pubkey(this_ptr, encodeUint8Array(val)); // debug statements here } - // const uint8_t (*UnsignedNodeAnnouncement_get_alias(const struct LDKUnsignedNodeAnnouncement *NONNULL_PTR this_ptr))[32]; - export function UnsignedNodeAnnouncement_get_alias(this_ptr: number): Uint8Array { + // struct LDKPublicKey OpenChannel_get_revocation_basepoint(const struct LDKOpenChannel *NONNULL_PTR this_ptr); + export function OpenChannel_get_revocation_basepoint(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedNodeAnnouncement_get_alias(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_OpenChannel_get_revocation_basepoint(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void UnsignedNodeAnnouncement_set_alias(struct LDKUnsignedNodeAnnouncement *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function UnsignedNodeAnnouncement_set_alias(this_ptr: number, val: Uint8Array): void { + // void OpenChannel_set_revocation_basepoint(struct LDKOpenChannel *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function OpenChannel_set_revocation_basepoint(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedNodeAnnouncement_set_alias(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_OpenChannel_set_revocation_basepoint(this_ptr, encodeUint8Array(val)); // debug statements here } - // void UnsignedNodeAnnouncement_set_addresses(struct LDKUnsignedNodeAnnouncement *NONNULL_PTR this_ptr, struct LDKCVec_NetAddressZ val); - export function UnsignedNodeAnnouncement_set_addresses(this_ptr: number, val: number[]): void { + // struct LDKPublicKey OpenChannel_get_payment_point(const struct LDKOpenChannel *NONNULL_PTR this_ptr); + export function OpenChannel_get_payment_point(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedNodeAnnouncement_set_addresses(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_OpenChannel_get_payment_point(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // uint64_t UnsignedNodeAnnouncement_clone_ptr(LDKUnsignedNodeAnnouncement *NONNULL_PTR arg); - export function UnsignedNodeAnnouncement_clone_ptr(arg: number): number { + // void OpenChannel_set_payment_point(struct LDKOpenChannel *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function OpenChannel_set_payment_point(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedNodeAnnouncement_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_OpenChannel_set_payment_point(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKUnsignedNodeAnnouncement UnsignedNodeAnnouncement_clone(const struct LDKUnsignedNodeAnnouncement *NONNULL_PTR orig); - export function UnsignedNodeAnnouncement_clone(orig: number): number { + // struct LDKPublicKey OpenChannel_get_delayed_payment_basepoint(const struct LDKOpenChannel *NONNULL_PTR this_ptr); + export function OpenChannel_get_delayed_payment_basepoint(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedNodeAnnouncement_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_OpenChannel_get_delayed_payment_basepoint(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void NodeAnnouncement_free(struct LDKNodeAnnouncement this_obj); - export function NodeAnnouncement_free(this_obj: number): void { + // void OpenChannel_set_delayed_payment_basepoint(struct LDKOpenChannel *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function OpenChannel_set_delayed_payment_basepoint(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncement_free(this_obj); + const nativeResponseValue = wasm.TS_OpenChannel_set_delayed_payment_basepoint(this_ptr, encodeUint8Array(val)); // debug statements here } - // struct LDKSignature NodeAnnouncement_get_signature(const struct LDKNodeAnnouncement *NONNULL_PTR this_ptr); - export function NodeAnnouncement_get_signature(this_ptr: number): Uint8Array { + // struct LDKPublicKey OpenChannel_get_htlc_basepoint(const struct LDKOpenChannel *NONNULL_PTR this_ptr); + export function OpenChannel_get_htlc_basepoint(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncement_get_signature(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_OpenChannel_get_htlc_basepoint(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void NodeAnnouncement_set_signature(struct LDKNodeAnnouncement *NONNULL_PTR this_ptr, struct LDKSignature val); - export function NodeAnnouncement_set_signature(this_ptr: number, val: Uint8Array): void { + // void OpenChannel_set_htlc_basepoint(struct LDKOpenChannel *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function OpenChannel_set_htlc_basepoint(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncement_set_signature(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_OpenChannel_set_htlc_basepoint(this_ptr, encodeUint8Array(val)); // debug statements here } - // struct LDKUnsignedNodeAnnouncement NodeAnnouncement_get_contents(const struct LDKNodeAnnouncement *NONNULL_PTR this_ptr); - export function NodeAnnouncement_get_contents(this_ptr: number): number { + // struct LDKPublicKey OpenChannel_get_first_per_commitment_point(const struct LDKOpenChannel *NONNULL_PTR this_ptr); + export function OpenChannel_get_first_per_commitment_point(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncement_get_contents(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_OpenChannel_get_first_per_commitment_point(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void NodeAnnouncement_set_contents(struct LDKNodeAnnouncement *NONNULL_PTR this_ptr, struct LDKUnsignedNodeAnnouncement val); - export function NodeAnnouncement_set_contents(this_ptr: number, val: number): void { + // void OpenChannel_set_first_per_commitment_point(struct LDKOpenChannel *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function OpenChannel_set_first_per_commitment_point(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncement_set_contents(this_ptr, val); + const nativeResponseValue = wasm.TS_OpenChannel_set_first_per_commitment_point(this_ptr, encodeUint8Array(val)); // debug statements here } - // MUST_USE_RES struct LDKNodeAnnouncement NodeAnnouncement_new(struct LDKSignature signature_arg, struct LDKUnsignedNodeAnnouncement contents_arg); - export function NodeAnnouncement_new(signature_arg: Uint8Array, contents_arg: number): number { + // uint8_t OpenChannel_get_channel_flags(const struct LDKOpenChannel *NONNULL_PTR this_ptr); + export function OpenChannel_get_channel_flags(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncement_new(encodeArray(signature_arg), contents_arg); + const nativeResponseValue = wasm.TS_OpenChannel_get_channel_flags(this_ptr); return nativeResponseValue; } - // uint64_t NodeAnnouncement_clone_ptr(LDKNodeAnnouncement *NONNULL_PTR arg); - export function NodeAnnouncement_clone_ptr(arg: number): number { + // void OpenChannel_set_channel_flags(struct LDKOpenChannel *NONNULL_PTR this_ptr, uint8_t val); + export function OpenChannel_set_channel_flags(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncement_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_OpenChannel_set_channel_flags(this_ptr, val); + // debug statements here } - // struct LDKNodeAnnouncement NodeAnnouncement_clone(const struct LDKNodeAnnouncement *NONNULL_PTR orig); - export function NodeAnnouncement_clone(orig: number): number { + // struct LDKChannelTypeFeatures OpenChannel_get_channel_type(const struct LDKOpenChannel *NONNULL_PTR this_ptr); + export function OpenChannel_get_channel_type(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncement_clone(orig); + const nativeResponseValue = wasm.TS_OpenChannel_get_channel_type(this_ptr); return nativeResponseValue; } - // void UnsignedChannelAnnouncement_free(struct LDKUnsignedChannelAnnouncement this_obj); - export function UnsignedChannelAnnouncement_free(this_obj: number): void { + // void OpenChannel_set_channel_type(struct LDKOpenChannel *NONNULL_PTR this_ptr, struct LDKChannelTypeFeatures val); + export function OpenChannel_set_channel_type(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelAnnouncement_free(this_obj); + const nativeResponseValue = wasm.TS_OpenChannel_set_channel_type(this_ptr, val); // debug statements here } - // struct LDKChannelFeatures UnsignedChannelAnnouncement_get_features(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr); - export function UnsignedChannelAnnouncement_get_features(this_ptr: number): number { + // uint64_t OpenChannel_clone_ptr(LDKOpenChannel *NONNULL_PTR arg); + export function OpenChannel_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelAnnouncement_get_features(this_ptr); + const nativeResponseValue = wasm.TS_OpenChannel_clone_ptr(arg); return nativeResponseValue; } - // void UnsignedChannelAnnouncement_set_features(struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKChannelFeatures val); - export function UnsignedChannelAnnouncement_set_features(this_ptr: number, val: number): void { + // struct LDKOpenChannel OpenChannel_clone(const struct LDKOpenChannel *NONNULL_PTR orig); + export function OpenChannel_clone(orig: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_OpenChannel_clone(orig); + return nativeResponseValue; + } + // void AcceptChannel_free(struct LDKAcceptChannel this_obj); + export function AcceptChannel_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelAnnouncement_set_features(this_ptr, val); + const nativeResponseValue = wasm.TS_AcceptChannel_free(this_obj); // debug statements here } - // const uint8_t (*UnsignedChannelAnnouncement_get_chain_hash(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr))[32]; - export function UnsignedChannelAnnouncement_get_chain_hash(this_ptr: number): Uint8Array { + // const uint8_t (*AcceptChannel_get_temporary_channel_id(const struct LDKAcceptChannel *NONNULL_PTR this_ptr))[32]; + export function AcceptChannel_get_temporary_channel_id(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelAnnouncement_get_chain_hash(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_AcceptChannel_get_temporary_channel_id(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void UnsignedChannelAnnouncement_set_chain_hash(struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function UnsignedChannelAnnouncement_set_chain_hash(this_ptr: number, val: Uint8Array): void { + // void AcceptChannel_set_temporary_channel_id(struct LDKAcceptChannel *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function AcceptChannel_set_temporary_channel_id(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelAnnouncement_set_chain_hash(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_AcceptChannel_set_temporary_channel_id(this_ptr, encodeUint8Array(val)); // debug statements here } - // uint64_t UnsignedChannelAnnouncement_get_short_channel_id(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr); - export function UnsignedChannelAnnouncement_get_short_channel_id(this_ptr: number): number { + // uint64_t AcceptChannel_get_dust_limit_satoshis(const struct LDKAcceptChannel *NONNULL_PTR this_ptr); + export function AcceptChannel_get_dust_limit_satoshis(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelAnnouncement_get_short_channel_id(this_ptr); + const nativeResponseValue = wasm.TS_AcceptChannel_get_dust_limit_satoshis(this_ptr); return nativeResponseValue; } - // void UnsignedChannelAnnouncement_set_short_channel_id(struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr, uint64_t val); - export function UnsignedChannelAnnouncement_set_short_channel_id(this_ptr: number, val: number): void { + // void AcceptChannel_set_dust_limit_satoshis(struct LDKAcceptChannel *NONNULL_PTR this_ptr, uint64_t val); + export function AcceptChannel_set_dust_limit_satoshis(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelAnnouncement_set_short_channel_id(this_ptr, val); + const nativeResponseValue = wasm.TS_AcceptChannel_set_dust_limit_satoshis(this_ptr, val); // debug statements here } - // struct LDKPublicKey UnsignedChannelAnnouncement_get_node_id_1(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr); - export function UnsignedChannelAnnouncement_get_node_id_1(this_ptr: number): Uint8Array { + // uint64_t AcceptChannel_get_max_htlc_value_in_flight_msat(const struct LDKAcceptChannel *NONNULL_PTR this_ptr); + export function AcceptChannel_get_max_htlc_value_in_flight_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelAnnouncement_get_node_id_1(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_AcceptChannel_get_max_htlc_value_in_flight_msat(this_ptr); + return nativeResponseValue; } - // void UnsignedChannelAnnouncement_set_node_id_1(struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function UnsignedChannelAnnouncement_set_node_id_1(this_ptr: number, val: Uint8Array): void { + // void AcceptChannel_set_max_htlc_value_in_flight_msat(struct LDKAcceptChannel *NONNULL_PTR this_ptr, uint64_t val); + export function AcceptChannel_set_max_htlc_value_in_flight_msat(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelAnnouncement_set_node_id_1(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_AcceptChannel_set_max_htlc_value_in_flight_msat(this_ptr, val); // debug statements here } - // struct LDKPublicKey UnsignedChannelAnnouncement_get_node_id_2(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr); - export function UnsignedChannelAnnouncement_get_node_id_2(this_ptr: number): Uint8Array { + // uint64_t AcceptChannel_get_channel_reserve_satoshis(const struct LDKAcceptChannel *NONNULL_PTR this_ptr); + export function AcceptChannel_get_channel_reserve_satoshis(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelAnnouncement_get_node_id_2(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_AcceptChannel_get_channel_reserve_satoshis(this_ptr); + return nativeResponseValue; } - // void UnsignedChannelAnnouncement_set_node_id_2(struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function UnsignedChannelAnnouncement_set_node_id_2(this_ptr: number, val: Uint8Array): void { + // void AcceptChannel_set_channel_reserve_satoshis(struct LDKAcceptChannel *NONNULL_PTR this_ptr, uint64_t val); + export function AcceptChannel_set_channel_reserve_satoshis(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelAnnouncement_set_node_id_2(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_AcceptChannel_set_channel_reserve_satoshis(this_ptr, val); // debug statements here } - // struct LDKPublicKey UnsignedChannelAnnouncement_get_bitcoin_key_1(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr); - export function UnsignedChannelAnnouncement_get_bitcoin_key_1(this_ptr: number): Uint8Array { + // uint64_t AcceptChannel_get_htlc_minimum_msat(const struct LDKAcceptChannel *NONNULL_PTR this_ptr); + export function AcceptChannel_get_htlc_minimum_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelAnnouncement_get_bitcoin_key_1(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_AcceptChannel_get_htlc_minimum_msat(this_ptr); + return nativeResponseValue; } - // void UnsignedChannelAnnouncement_set_bitcoin_key_1(struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function UnsignedChannelAnnouncement_set_bitcoin_key_1(this_ptr: number, val: Uint8Array): void { + // void AcceptChannel_set_htlc_minimum_msat(struct LDKAcceptChannel *NONNULL_PTR this_ptr, uint64_t val); + export function AcceptChannel_set_htlc_minimum_msat(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelAnnouncement_set_bitcoin_key_1(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_AcceptChannel_set_htlc_minimum_msat(this_ptr, val); // debug statements here } - // struct LDKPublicKey UnsignedChannelAnnouncement_get_bitcoin_key_2(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr); - export function UnsignedChannelAnnouncement_get_bitcoin_key_2(this_ptr: number): Uint8Array { + // uint32_t AcceptChannel_get_minimum_depth(const struct LDKAcceptChannel *NONNULL_PTR this_ptr); + export function AcceptChannel_get_minimum_depth(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelAnnouncement_get_bitcoin_key_2(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_AcceptChannel_get_minimum_depth(this_ptr); + return nativeResponseValue; } - // void UnsignedChannelAnnouncement_set_bitcoin_key_2(struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function UnsignedChannelAnnouncement_set_bitcoin_key_2(this_ptr: number, val: Uint8Array): void { + // void AcceptChannel_set_minimum_depth(struct LDKAcceptChannel *NONNULL_PTR this_ptr, uint32_t val); + export function AcceptChannel_set_minimum_depth(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelAnnouncement_set_bitcoin_key_2(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_AcceptChannel_set_minimum_depth(this_ptr, val); // debug statements here } - // uint64_t UnsignedChannelAnnouncement_clone_ptr(LDKUnsignedChannelAnnouncement *NONNULL_PTR arg); - export function UnsignedChannelAnnouncement_clone_ptr(arg: number): number { + // uint16_t AcceptChannel_get_to_self_delay(const struct LDKAcceptChannel *NONNULL_PTR this_ptr); + export function AcceptChannel_get_to_self_delay(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelAnnouncement_clone_ptr(arg); + const nativeResponseValue = wasm.TS_AcceptChannel_get_to_self_delay(this_ptr); return nativeResponseValue; } - // struct LDKUnsignedChannelAnnouncement UnsignedChannelAnnouncement_clone(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR orig); - export function UnsignedChannelAnnouncement_clone(orig: number): number { + // void AcceptChannel_set_to_self_delay(struct LDKAcceptChannel *NONNULL_PTR this_ptr, uint16_t val); + export function AcceptChannel_set_to_self_delay(this_ptr: number, val: number): void { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_AcceptChannel_set_to_self_delay(this_ptr, val); + // debug statements here + } + // uint16_t AcceptChannel_get_max_accepted_htlcs(const struct LDKAcceptChannel *NONNULL_PTR this_ptr); + export function AcceptChannel_get_max_accepted_htlcs(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelAnnouncement_clone(orig); + const nativeResponseValue = wasm.TS_AcceptChannel_get_max_accepted_htlcs(this_ptr); return nativeResponseValue; } - // void ChannelAnnouncement_free(struct LDKChannelAnnouncement this_obj); - export function ChannelAnnouncement_free(this_obj: number): void { + // void AcceptChannel_set_max_accepted_htlcs(struct LDKAcceptChannel *NONNULL_PTR this_ptr, uint16_t val); + export function AcceptChannel_set_max_accepted_htlcs(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelAnnouncement_free(this_obj); + const nativeResponseValue = wasm.TS_AcceptChannel_set_max_accepted_htlcs(this_ptr, val); // debug statements here } - // struct LDKSignature ChannelAnnouncement_get_node_signature_1(const struct LDKChannelAnnouncement *NONNULL_PTR this_ptr); - export function ChannelAnnouncement_get_node_signature_1(this_ptr: number): Uint8Array { + // struct LDKPublicKey AcceptChannel_get_funding_pubkey(const struct LDKAcceptChannel *NONNULL_PTR this_ptr); + export function AcceptChannel_get_funding_pubkey(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelAnnouncement_get_node_signature_1(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_AcceptChannel_get_funding_pubkey(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void ChannelAnnouncement_set_node_signature_1(struct LDKChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKSignature val); - export function ChannelAnnouncement_set_node_signature_1(this_ptr: number, val: Uint8Array): void { + // void AcceptChannel_set_funding_pubkey(struct LDKAcceptChannel *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function AcceptChannel_set_funding_pubkey(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelAnnouncement_set_node_signature_1(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_AcceptChannel_set_funding_pubkey(this_ptr, encodeUint8Array(val)); // debug statements here } - // struct LDKSignature ChannelAnnouncement_get_node_signature_2(const struct LDKChannelAnnouncement *NONNULL_PTR this_ptr); - export function ChannelAnnouncement_get_node_signature_2(this_ptr: number): Uint8Array { + // struct LDKPublicKey AcceptChannel_get_revocation_basepoint(const struct LDKAcceptChannel *NONNULL_PTR this_ptr); + export function AcceptChannel_get_revocation_basepoint(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelAnnouncement_get_node_signature_2(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_AcceptChannel_get_revocation_basepoint(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void ChannelAnnouncement_set_node_signature_2(struct LDKChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKSignature val); - export function ChannelAnnouncement_set_node_signature_2(this_ptr: number, val: Uint8Array): void { + // void AcceptChannel_set_revocation_basepoint(struct LDKAcceptChannel *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function AcceptChannel_set_revocation_basepoint(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelAnnouncement_set_node_signature_2(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_AcceptChannel_set_revocation_basepoint(this_ptr, encodeUint8Array(val)); // debug statements here } - // struct LDKSignature ChannelAnnouncement_get_bitcoin_signature_1(const struct LDKChannelAnnouncement *NONNULL_PTR this_ptr); - export function ChannelAnnouncement_get_bitcoin_signature_1(this_ptr: number): Uint8Array { + // struct LDKPublicKey AcceptChannel_get_payment_point(const struct LDKAcceptChannel *NONNULL_PTR this_ptr); + export function AcceptChannel_get_payment_point(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelAnnouncement_get_bitcoin_signature_1(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_AcceptChannel_get_payment_point(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void ChannelAnnouncement_set_bitcoin_signature_1(struct LDKChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKSignature val); - export function ChannelAnnouncement_set_bitcoin_signature_1(this_ptr: number, val: Uint8Array): void { + // void AcceptChannel_set_payment_point(struct LDKAcceptChannel *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function AcceptChannel_set_payment_point(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelAnnouncement_set_bitcoin_signature_1(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_AcceptChannel_set_payment_point(this_ptr, encodeUint8Array(val)); // debug statements here } - // struct LDKSignature ChannelAnnouncement_get_bitcoin_signature_2(const struct LDKChannelAnnouncement *NONNULL_PTR this_ptr); - export function ChannelAnnouncement_get_bitcoin_signature_2(this_ptr: number): Uint8Array { + // struct LDKPublicKey AcceptChannel_get_delayed_payment_basepoint(const struct LDKAcceptChannel *NONNULL_PTR this_ptr); + export function AcceptChannel_get_delayed_payment_basepoint(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelAnnouncement_get_bitcoin_signature_2(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_AcceptChannel_get_delayed_payment_basepoint(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void ChannelAnnouncement_set_bitcoin_signature_2(struct LDKChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKSignature val); - export function ChannelAnnouncement_set_bitcoin_signature_2(this_ptr: number, val: Uint8Array): void { + // void AcceptChannel_set_delayed_payment_basepoint(struct LDKAcceptChannel *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function AcceptChannel_set_delayed_payment_basepoint(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelAnnouncement_set_bitcoin_signature_2(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_AcceptChannel_set_delayed_payment_basepoint(this_ptr, encodeUint8Array(val)); // debug statements here } - // struct LDKUnsignedChannelAnnouncement ChannelAnnouncement_get_contents(const struct LDKChannelAnnouncement *NONNULL_PTR this_ptr); - export function ChannelAnnouncement_get_contents(this_ptr: number): number { + // struct LDKPublicKey AcceptChannel_get_htlc_basepoint(const struct LDKAcceptChannel *NONNULL_PTR this_ptr); + export function AcceptChannel_get_htlc_basepoint(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelAnnouncement_get_contents(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_AcceptChannel_get_htlc_basepoint(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void ChannelAnnouncement_set_contents(struct LDKChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKUnsignedChannelAnnouncement val); - export function ChannelAnnouncement_set_contents(this_ptr: number, val: number): void { + // void AcceptChannel_set_htlc_basepoint(struct LDKAcceptChannel *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function AcceptChannel_set_htlc_basepoint(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelAnnouncement_set_contents(this_ptr, val); + const nativeResponseValue = wasm.TS_AcceptChannel_set_htlc_basepoint(this_ptr, encodeUint8Array(val)); // debug statements here } - // MUST_USE_RES struct LDKChannelAnnouncement ChannelAnnouncement_new(struct LDKSignature node_signature_1_arg, struct LDKSignature node_signature_2_arg, struct LDKSignature bitcoin_signature_1_arg, struct LDKSignature bitcoin_signature_2_arg, struct LDKUnsignedChannelAnnouncement contents_arg); - export function ChannelAnnouncement_new(node_signature_1_arg: Uint8Array, node_signature_2_arg: Uint8Array, bitcoin_signature_1_arg: Uint8Array, bitcoin_signature_2_arg: Uint8Array, contents_arg: number): number { + // struct LDKPublicKey AcceptChannel_get_first_per_commitment_point(const struct LDKAcceptChannel *NONNULL_PTR this_ptr); + export function AcceptChannel_get_first_per_commitment_point(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelAnnouncement_new(encodeArray(node_signature_1_arg), encodeArray(node_signature_2_arg), encodeArray(bitcoin_signature_1_arg), encodeArray(bitcoin_signature_2_arg), contents_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_AcceptChannel_get_first_per_commitment_point(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // uint64_t ChannelAnnouncement_clone_ptr(LDKChannelAnnouncement *NONNULL_PTR arg); - export function ChannelAnnouncement_clone_ptr(arg: number): number { + // void AcceptChannel_set_first_per_commitment_point(struct LDKAcceptChannel *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function AcceptChannel_set_first_per_commitment_point(this_ptr: number, val: Uint8Array): void { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_AcceptChannel_set_first_per_commitment_point(this_ptr, encodeUint8Array(val)); + // debug statements here + } + // uint64_t AcceptChannel_clone_ptr(LDKAcceptChannel *NONNULL_PTR arg); + export function AcceptChannel_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelAnnouncement_clone_ptr(arg); + const nativeResponseValue = wasm.TS_AcceptChannel_clone_ptr(arg); return nativeResponseValue; } - // struct LDKChannelAnnouncement ChannelAnnouncement_clone(const struct LDKChannelAnnouncement *NONNULL_PTR orig); - export function ChannelAnnouncement_clone(orig: number): number { + // struct LDKAcceptChannel AcceptChannel_clone(const struct LDKAcceptChannel *NONNULL_PTR orig); + export function AcceptChannel_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelAnnouncement_clone(orig); + const nativeResponseValue = wasm.TS_AcceptChannel_clone(orig); return nativeResponseValue; } - // void UnsignedChannelUpdate_free(struct LDKUnsignedChannelUpdate this_obj); - export function UnsignedChannelUpdate_free(this_obj: number): void { + // void FundingCreated_free(struct LDKFundingCreated this_obj); + export function FundingCreated_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelUpdate_free(this_obj); + const nativeResponseValue = wasm.TS_FundingCreated_free(this_obj); // debug statements here } - // const uint8_t (*UnsignedChannelUpdate_get_chain_hash(const struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr))[32]; - export function UnsignedChannelUpdate_get_chain_hash(this_ptr: number): Uint8Array { + // const uint8_t (*FundingCreated_get_temporary_channel_id(const struct LDKFundingCreated *NONNULL_PTR this_ptr))[32]; + export function FundingCreated_get_temporary_channel_id(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelUpdate_get_chain_hash(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_FundingCreated_get_temporary_channel_id(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void UnsignedChannelUpdate_set_chain_hash(struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function UnsignedChannelUpdate_set_chain_hash(this_ptr: number, val: Uint8Array): void { + // void FundingCreated_set_temporary_channel_id(struct LDKFundingCreated *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function FundingCreated_set_temporary_channel_id(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelUpdate_set_chain_hash(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_FundingCreated_set_temporary_channel_id(this_ptr, encodeUint8Array(val)); // debug statements here } - // uint64_t UnsignedChannelUpdate_get_short_channel_id(const struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr); - export function UnsignedChannelUpdate_get_short_channel_id(this_ptr: number): number { + // const uint8_t (*FundingCreated_get_funding_txid(const struct LDKFundingCreated *NONNULL_PTR this_ptr))[32]; + export function FundingCreated_get_funding_txid(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelUpdate_get_short_channel_id(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_FundingCreated_get_funding_txid(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void UnsignedChannelUpdate_set_short_channel_id(struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr, uint64_t val); - export function UnsignedChannelUpdate_set_short_channel_id(this_ptr: number, val: number): void { + // void FundingCreated_set_funding_txid(struct LDKFundingCreated *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function FundingCreated_set_funding_txid(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelUpdate_set_short_channel_id(this_ptr, val); + const nativeResponseValue = wasm.TS_FundingCreated_set_funding_txid(this_ptr, encodeUint8Array(val)); // debug statements here } - // uint32_t UnsignedChannelUpdate_get_timestamp(const struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr); - export function UnsignedChannelUpdate_get_timestamp(this_ptr: number): number { + // uint16_t FundingCreated_get_funding_output_index(const struct LDKFundingCreated *NONNULL_PTR this_ptr); + export function FundingCreated_get_funding_output_index(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelUpdate_get_timestamp(this_ptr); + const nativeResponseValue = wasm.TS_FundingCreated_get_funding_output_index(this_ptr); return nativeResponseValue; } - // void UnsignedChannelUpdate_set_timestamp(struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr, uint32_t val); - export function UnsignedChannelUpdate_set_timestamp(this_ptr: number, val: number): void { + // void FundingCreated_set_funding_output_index(struct LDKFundingCreated *NONNULL_PTR this_ptr, uint16_t val); + export function FundingCreated_set_funding_output_index(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelUpdate_set_timestamp(this_ptr, val); + const nativeResponseValue = wasm.TS_FundingCreated_set_funding_output_index(this_ptr, val); // debug statements here } - // uint8_t UnsignedChannelUpdate_get_flags(const struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr); - export function UnsignedChannelUpdate_get_flags(this_ptr: number): number { + // struct LDKSignature FundingCreated_get_signature(const struct LDKFundingCreated *NONNULL_PTR this_ptr); + export function FundingCreated_get_signature(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelUpdate_get_flags(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_FundingCreated_get_signature(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void UnsignedChannelUpdate_set_flags(struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr, uint8_t val); - export function UnsignedChannelUpdate_set_flags(this_ptr: number, val: number): void { + // void FundingCreated_set_signature(struct LDKFundingCreated *NONNULL_PTR this_ptr, struct LDKSignature val); + export function FundingCreated_set_signature(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelUpdate_set_flags(this_ptr, val); + const nativeResponseValue = wasm.TS_FundingCreated_set_signature(this_ptr, encodeUint8Array(val)); // debug statements here } - // uint16_t UnsignedChannelUpdate_get_cltv_expiry_delta(const struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr); - export function UnsignedChannelUpdate_get_cltv_expiry_delta(this_ptr: number): number { + // MUST_USE_RES struct LDKFundingCreated FundingCreated_new(struct LDKThirtyTwoBytes temporary_channel_id_arg, struct LDKThirtyTwoBytes funding_txid_arg, uint16_t funding_output_index_arg, struct LDKSignature signature_arg); + export function FundingCreated_new(temporary_channel_id_arg: Uint8Array, funding_txid_arg: Uint8Array, funding_output_index_arg: number, signature_arg: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelUpdate_get_cltv_expiry_delta(this_ptr); + const nativeResponseValue = wasm.TS_FundingCreated_new(encodeUint8Array(temporary_channel_id_arg), encodeUint8Array(funding_txid_arg), funding_output_index_arg, encodeUint8Array(signature_arg)); return nativeResponseValue; } - // void UnsignedChannelUpdate_set_cltv_expiry_delta(struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr, uint16_t val); - export function UnsignedChannelUpdate_set_cltv_expiry_delta(this_ptr: number, val: number): void { + // uint64_t FundingCreated_clone_ptr(LDKFundingCreated *NONNULL_PTR arg); + export function FundingCreated_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelUpdate_set_cltv_expiry_delta(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_FundingCreated_clone_ptr(arg); + return nativeResponseValue; } - // uint64_t UnsignedChannelUpdate_get_htlc_minimum_msat(const struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr); - export function UnsignedChannelUpdate_get_htlc_minimum_msat(this_ptr: number): number { + // struct LDKFundingCreated FundingCreated_clone(const struct LDKFundingCreated *NONNULL_PTR orig); + export function FundingCreated_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelUpdate_get_htlc_minimum_msat(this_ptr); + const nativeResponseValue = wasm.TS_FundingCreated_clone(orig); return nativeResponseValue; } - // void UnsignedChannelUpdate_set_htlc_minimum_msat(struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr, uint64_t val); - export function UnsignedChannelUpdate_set_htlc_minimum_msat(this_ptr: number, val: number): void { + // void FundingSigned_free(struct LDKFundingSigned this_obj); + export function FundingSigned_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelUpdate_set_htlc_minimum_msat(this_ptr, val); + const nativeResponseValue = wasm.TS_FundingSigned_free(this_obj); // debug statements here } - // uint32_t UnsignedChannelUpdate_get_fee_base_msat(const struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr); - export function UnsignedChannelUpdate_get_fee_base_msat(this_ptr: number): number { + // const uint8_t (*FundingSigned_get_channel_id(const struct LDKFundingSigned *NONNULL_PTR this_ptr))[32]; + export function FundingSigned_get_channel_id(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelUpdate_get_fee_base_msat(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_FundingSigned_get_channel_id(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void UnsignedChannelUpdate_set_fee_base_msat(struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr, uint32_t val); - export function UnsignedChannelUpdate_set_fee_base_msat(this_ptr: number, val: number): void { + // void FundingSigned_set_channel_id(struct LDKFundingSigned *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function FundingSigned_set_channel_id(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelUpdate_set_fee_base_msat(this_ptr, val); + const nativeResponseValue = wasm.TS_FundingSigned_set_channel_id(this_ptr, encodeUint8Array(val)); // debug statements here } - // uint32_t UnsignedChannelUpdate_get_fee_proportional_millionths(const struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr); - export function UnsignedChannelUpdate_get_fee_proportional_millionths(this_ptr: number): number { + // struct LDKSignature FundingSigned_get_signature(const struct LDKFundingSigned *NONNULL_PTR this_ptr); + export function FundingSigned_get_signature(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelUpdate_get_fee_proportional_millionths(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_FundingSigned_get_signature(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void UnsignedChannelUpdate_set_fee_proportional_millionths(struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr, uint32_t val); - export function UnsignedChannelUpdate_set_fee_proportional_millionths(this_ptr: number, val: number): void { + // void FundingSigned_set_signature(struct LDKFundingSigned *NONNULL_PTR this_ptr, struct LDKSignature val); + export function FundingSigned_set_signature(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelUpdate_set_fee_proportional_millionths(this_ptr, val); + const nativeResponseValue = wasm.TS_FundingSigned_set_signature(this_ptr, encodeUint8Array(val)); // debug statements here } - // uint64_t UnsignedChannelUpdate_clone_ptr(LDKUnsignedChannelUpdate *NONNULL_PTR arg); - export function UnsignedChannelUpdate_clone_ptr(arg: number): number { + // MUST_USE_RES struct LDKFundingSigned FundingSigned_new(struct LDKThirtyTwoBytes channel_id_arg, struct LDKSignature signature_arg); + export function FundingSigned_new(channel_id_arg: Uint8Array, signature_arg: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelUpdate_clone_ptr(arg); + const nativeResponseValue = wasm.TS_FundingSigned_new(encodeUint8Array(channel_id_arg), encodeUint8Array(signature_arg)); return nativeResponseValue; } - // struct LDKUnsignedChannelUpdate UnsignedChannelUpdate_clone(const struct LDKUnsignedChannelUpdate *NONNULL_PTR orig); - export function UnsignedChannelUpdate_clone(orig: number): number { + // uint64_t FundingSigned_clone_ptr(LDKFundingSigned *NONNULL_PTR arg); + export function FundingSigned_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelUpdate_clone(orig); + const nativeResponseValue = wasm.TS_FundingSigned_clone_ptr(arg); return nativeResponseValue; } - // void ChannelUpdate_free(struct LDKChannelUpdate this_obj); - export function ChannelUpdate_free(this_obj: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.ChannelUpdate_free(this_obj); - // debug statements here - } - // struct LDKSignature ChannelUpdate_get_signature(const struct LDKChannelUpdate *NONNULL_PTR this_ptr); - export function ChannelUpdate_get_signature(this_ptr: number): Uint8Array { + // struct LDKFundingSigned FundingSigned_clone(const struct LDKFundingSigned *NONNULL_PTR orig); + export function FundingSigned_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelUpdate_get_signature(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_FundingSigned_clone(orig); + return nativeResponseValue; } - // void ChannelUpdate_set_signature(struct LDKChannelUpdate *NONNULL_PTR this_ptr, struct LDKSignature val); - export function ChannelUpdate_set_signature(this_ptr: number, val: Uint8Array): void { + // void FundingLocked_free(struct LDKFundingLocked this_obj); + export function FundingLocked_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelUpdate_set_signature(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_FundingLocked_free(this_obj); // debug statements here } - // struct LDKUnsignedChannelUpdate ChannelUpdate_get_contents(const struct LDKChannelUpdate *NONNULL_PTR this_ptr); - export function ChannelUpdate_get_contents(this_ptr: number): number { + // const uint8_t (*FundingLocked_get_channel_id(const struct LDKFundingLocked *NONNULL_PTR this_ptr))[32]; + export function FundingLocked_get_channel_id(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelUpdate_get_contents(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_FundingLocked_get_channel_id(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void ChannelUpdate_set_contents(struct LDKChannelUpdate *NONNULL_PTR this_ptr, struct LDKUnsignedChannelUpdate val); - export function ChannelUpdate_set_contents(this_ptr: number, val: number): void { + // void FundingLocked_set_channel_id(struct LDKFundingLocked *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function FundingLocked_set_channel_id(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelUpdate_set_contents(this_ptr, val); + const nativeResponseValue = wasm.TS_FundingLocked_set_channel_id(this_ptr, encodeUint8Array(val)); // debug statements here } - // MUST_USE_RES struct LDKChannelUpdate ChannelUpdate_new(struct LDKSignature signature_arg, struct LDKUnsignedChannelUpdate contents_arg); - export function ChannelUpdate_new(signature_arg: Uint8Array, contents_arg: number): number { + // struct LDKPublicKey FundingLocked_get_next_per_commitment_point(const struct LDKFundingLocked *NONNULL_PTR this_ptr); + export function FundingLocked_get_next_per_commitment_point(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelUpdate_new(encodeArray(signature_arg), contents_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_FundingLocked_get_next_per_commitment_point(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // uint64_t ChannelUpdate_clone_ptr(LDKChannelUpdate *NONNULL_PTR arg); - export function ChannelUpdate_clone_ptr(arg: number): number { + // void FundingLocked_set_next_per_commitment_point(struct LDKFundingLocked *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function FundingLocked_set_next_per_commitment_point(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelUpdate_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_FundingLocked_set_next_per_commitment_point(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKChannelUpdate ChannelUpdate_clone(const struct LDKChannelUpdate *NONNULL_PTR orig); - export function ChannelUpdate_clone(orig: number): number { + // MUST_USE_RES struct LDKFundingLocked FundingLocked_new(struct LDKThirtyTwoBytes channel_id_arg, struct LDKPublicKey next_per_commitment_point_arg); + export function FundingLocked_new(channel_id_arg: Uint8Array, next_per_commitment_point_arg: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelUpdate_clone(orig); + const nativeResponseValue = wasm.TS_FundingLocked_new(encodeUint8Array(channel_id_arg), encodeUint8Array(next_per_commitment_point_arg)); return nativeResponseValue; } - // void QueryChannelRange_free(struct LDKQueryChannelRange this_obj); - export function QueryChannelRange_free(this_obj: number): void { + // uint64_t FundingLocked_clone_ptr(LDKFundingLocked *NONNULL_PTR arg); + export function FundingLocked_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.QueryChannelRange_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_FundingLocked_clone_ptr(arg); + return nativeResponseValue; } - // const uint8_t (*QueryChannelRange_get_chain_hash(const struct LDKQueryChannelRange *NONNULL_PTR this_ptr))[32]; - export function QueryChannelRange_get_chain_hash(this_ptr: number): Uint8Array { + // struct LDKFundingLocked FundingLocked_clone(const struct LDKFundingLocked *NONNULL_PTR orig); + export function FundingLocked_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.QueryChannelRange_get_chain_hash(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_FundingLocked_clone(orig); + return nativeResponseValue; } - // void QueryChannelRange_set_chain_hash(struct LDKQueryChannelRange *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function QueryChannelRange_set_chain_hash(this_ptr: number, val: Uint8Array): void { + // void Shutdown_free(struct LDKShutdown this_obj); + export function Shutdown_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.QueryChannelRange_set_chain_hash(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_Shutdown_free(this_obj); // debug statements here } - // uint32_t QueryChannelRange_get_first_blocknum(const struct LDKQueryChannelRange *NONNULL_PTR this_ptr); - export function QueryChannelRange_get_first_blocknum(this_ptr: number): number { + // const uint8_t (*Shutdown_get_channel_id(const struct LDKShutdown *NONNULL_PTR this_ptr))[32]; + export function Shutdown_get_channel_id(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.QueryChannelRange_get_first_blocknum(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Shutdown_get_channel_id(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void QueryChannelRange_set_first_blocknum(struct LDKQueryChannelRange *NONNULL_PTR this_ptr, uint32_t val); - export function QueryChannelRange_set_first_blocknum(this_ptr: number, val: number): void { + // void Shutdown_set_channel_id(struct LDKShutdown *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function Shutdown_set_channel_id(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.QueryChannelRange_set_first_blocknum(this_ptr, val); + const nativeResponseValue = wasm.TS_Shutdown_set_channel_id(this_ptr, encodeUint8Array(val)); // debug statements here } - // uint32_t QueryChannelRange_get_number_of_blocks(const struct LDKQueryChannelRange *NONNULL_PTR this_ptr); - export function QueryChannelRange_get_number_of_blocks(this_ptr: number): number { + // struct LDKu8slice Shutdown_get_scriptpubkey(const struct LDKShutdown *NONNULL_PTR this_ptr); + export function Shutdown_get_scriptpubkey(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.QueryChannelRange_get_number_of_blocks(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Shutdown_get_scriptpubkey(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void QueryChannelRange_set_number_of_blocks(struct LDKQueryChannelRange *NONNULL_PTR this_ptr, uint32_t val); - export function QueryChannelRange_set_number_of_blocks(this_ptr: number, val: number): void { + // void Shutdown_set_scriptpubkey(struct LDKShutdown *NONNULL_PTR this_ptr, struct LDKCVec_u8Z val); + export function Shutdown_set_scriptpubkey(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.QueryChannelRange_set_number_of_blocks(this_ptr, val); + const nativeResponseValue = wasm.TS_Shutdown_set_scriptpubkey(this_ptr, encodeUint8Array(val)); // debug statements here - } - // MUST_USE_RES struct LDKQueryChannelRange QueryChannelRange_new(struct LDKThirtyTwoBytes chain_hash_arg, uint32_t first_blocknum_arg, uint32_t number_of_blocks_arg); - export function QueryChannelRange_new(chain_hash_arg: Uint8Array, first_blocknum_arg: number, number_of_blocks_arg: number): number { + } + // MUST_USE_RES struct LDKShutdown Shutdown_new(struct LDKThirtyTwoBytes channel_id_arg, struct LDKCVec_u8Z scriptpubkey_arg); + export function Shutdown_new(channel_id_arg: Uint8Array, scriptpubkey_arg: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.QueryChannelRange_new(encodeArray(chain_hash_arg), first_blocknum_arg, number_of_blocks_arg); + const nativeResponseValue = wasm.TS_Shutdown_new(encodeUint8Array(channel_id_arg), encodeUint8Array(scriptpubkey_arg)); return nativeResponseValue; } - // uint64_t QueryChannelRange_clone_ptr(LDKQueryChannelRange *NONNULL_PTR arg); - export function QueryChannelRange_clone_ptr(arg: number): number { + // uint64_t Shutdown_clone_ptr(LDKShutdown *NONNULL_PTR arg); + export function Shutdown_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.QueryChannelRange_clone_ptr(arg); + const nativeResponseValue = wasm.TS_Shutdown_clone_ptr(arg); return nativeResponseValue; } - // struct LDKQueryChannelRange QueryChannelRange_clone(const struct LDKQueryChannelRange *NONNULL_PTR orig); - export function QueryChannelRange_clone(orig: number): number { + // struct LDKShutdown Shutdown_clone(const struct LDKShutdown *NONNULL_PTR orig); + export function Shutdown_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.QueryChannelRange_clone(orig); + const nativeResponseValue = wasm.TS_Shutdown_clone(orig); return nativeResponseValue; } - // void ReplyChannelRange_free(struct LDKReplyChannelRange this_obj); - export function ReplyChannelRange_free(this_obj: number): void { + // void ClosingSignedFeeRange_free(struct LDKClosingSignedFeeRange this_obj); + export function ClosingSignedFeeRange_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReplyChannelRange_free(this_obj); + const nativeResponseValue = wasm.TS_ClosingSignedFeeRange_free(this_obj); // debug statements here } - // const uint8_t (*ReplyChannelRange_get_chain_hash(const struct LDKReplyChannelRange *NONNULL_PTR this_ptr))[32]; - export function ReplyChannelRange_get_chain_hash(this_ptr: number): Uint8Array { + // uint64_t ClosingSignedFeeRange_get_min_fee_satoshis(const struct LDKClosingSignedFeeRange *NONNULL_PTR this_ptr); + export function ClosingSignedFeeRange_get_min_fee_satoshis(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReplyChannelRange_get_chain_hash(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ClosingSignedFeeRange_get_min_fee_satoshis(this_ptr); + return nativeResponseValue; } - // void ReplyChannelRange_set_chain_hash(struct LDKReplyChannelRange *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function ReplyChannelRange_set_chain_hash(this_ptr: number, val: Uint8Array): void { + // void ClosingSignedFeeRange_set_min_fee_satoshis(struct LDKClosingSignedFeeRange *NONNULL_PTR this_ptr, uint64_t val); + export function ClosingSignedFeeRange_set_min_fee_satoshis(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReplyChannelRange_set_chain_hash(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_ClosingSignedFeeRange_set_min_fee_satoshis(this_ptr, val); // debug statements here } - // uint32_t ReplyChannelRange_get_first_blocknum(const struct LDKReplyChannelRange *NONNULL_PTR this_ptr); - export function ReplyChannelRange_get_first_blocknum(this_ptr: number): number { + // uint64_t ClosingSignedFeeRange_get_max_fee_satoshis(const struct LDKClosingSignedFeeRange *NONNULL_PTR this_ptr); + export function ClosingSignedFeeRange_get_max_fee_satoshis(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReplyChannelRange_get_first_blocknum(this_ptr); + const nativeResponseValue = wasm.TS_ClosingSignedFeeRange_get_max_fee_satoshis(this_ptr); return nativeResponseValue; } - // void ReplyChannelRange_set_first_blocknum(struct LDKReplyChannelRange *NONNULL_PTR this_ptr, uint32_t val); - export function ReplyChannelRange_set_first_blocknum(this_ptr: number, val: number): void { + // void ClosingSignedFeeRange_set_max_fee_satoshis(struct LDKClosingSignedFeeRange *NONNULL_PTR this_ptr, uint64_t val); + export function ClosingSignedFeeRange_set_max_fee_satoshis(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReplyChannelRange_set_first_blocknum(this_ptr, val); + const nativeResponseValue = wasm.TS_ClosingSignedFeeRange_set_max_fee_satoshis(this_ptr, val); // debug statements here } - // uint32_t ReplyChannelRange_get_number_of_blocks(const struct LDKReplyChannelRange *NONNULL_PTR this_ptr); - export function ReplyChannelRange_get_number_of_blocks(this_ptr: number): number { + // MUST_USE_RES struct LDKClosingSignedFeeRange ClosingSignedFeeRange_new(uint64_t min_fee_satoshis_arg, uint64_t max_fee_satoshis_arg); + export function ClosingSignedFeeRange_new(min_fee_satoshis_arg: number, max_fee_satoshis_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReplyChannelRange_get_number_of_blocks(this_ptr); + const nativeResponseValue = wasm.TS_ClosingSignedFeeRange_new(min_fee_satoshis_arg, max_fee_satoshis_arg); return nativeResponseValue; } - // void ReplyChannelRange_set_number_of_blocks(struct LDKReplyChannelRange *NONNULL_PTR this_ptr, uint32_t val); - export function ReplyChannelRange_set_number_of_blocks(this_ptr: number, val: number): void { + // uint64_t ClosingSignedFeeRange_clone_ptr(LDKClosingSignedFeeRange *NONNULL_PTR arg); + export function ClosingSignedFeeRange_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReplyChannelRange_set_number_of_blocks(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_ClosingSignedFeeRange_clone_ptr(arg); + return nativeResponseValue; } - // bool ReplyChannelRange_get_sync_complete(const struct LDKReplyChannelRange *NONNULL_PTR this_ptr); - export function ReplyChannelRange_get_sync_complete(this_ptr: number): boolean { + // struct LDKClosingSignedFeeRange ClosingSignedFeeRange_clone(const struct LDKClosingSignedFeeRange *NONNULL_PTR orig); + export function ClosingSignedFeeRange_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReplyChannelRange_get_sync_complete(this_ptr); + const nativeResponseValue = wasm.TS_ClosingSignedFeeRange_clone(orig); return nativeResponseValue; } - // void ReplyChannelRange_set_sync_complete(struct LDKReplyChannelRange *NONNULL_PTR this_ptr, bool val); - export function ReplyChannelRange_set_sync_complete(this_ptr: number, val: boolean): void { + // void ClosingSigned_free(struct LDKClosingSigned this_obj); + export function ClosingSigned_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReplyChannelRange_set_sync_complete(this_ptr, val); + const nativeResponseValue = wasm.TS_ClosingSigned_free(this_obj); // debug statements here } - // void ReplyChannelRange_set_short_channel_ids(struct LDKReplyChannelRange *NONNULL_PTR this_ptr, struct LDKCVec_u64Z val); - export function ReplyChannelRange_set_short_channel_ids(this_ptr: number, val: number[]): void { + // const uint8_t (*ClosingSigned_get_channel_id(const struct LDKClosingSigned *NONNULL_PTR this_ptr))[32]; + export function ClosingSigned_get_channel_id(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReplyChannelRange_set_short_channel_ids(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_ClosingSigned_get_channel_id(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES struct LDKReplyChannelRange ReplyChannelRange_new(struct LDKThirtyTwoBytes chain_hash_arg, uint32_t first_blocknum_arg, uint32_t number_of_blocks_arg, bool sync_complete_arg, struct LDKCVec_u64Z short_channel_ids_arg); - export function ReplyChannelRange_new(chain_hash_arg: Uint8Array, first_blocknum_arg: number, number_of_blocks_arg: number, sync_complete_arg: boolean, short_channel_ids_arg: number[]): number { + // void ClosingSigned_set_channel_id(struct LDKClosingSigned *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function ClosingSigned_set_channel_id(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReplyChannelRange_new(encodeArray(chain_hash_arg), first_blocknum_arg, number_of_blocks_arg, sync_complete_arg, short_channel_ids_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ClosingSigned_set_channel_id(this_ptr, encodeUint8Array(val)); + // debug statements here } - // uint64_t ReplyChannelRange_clone_ptr(LDKReplyChannelRange *NONNULL_PTR arg); - export function ReplyChannelRange_clone_ptr(arg: number): number { + // uint64_t ClosingSigned_get_fee_satoshis(const struct LDKClosingSigned *NONNULL_PTR this_ptr); + export function ClosingSigned_get_fee_satoshis(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReplyChannelRange_clone_ptr(arg); + const nativeResponseValue = wasm.TS_ClosingSigned_get_fee_satoshis(this_ptr); return nativeResponseValue; } - // struct LDKReplyChannelRange ReplyChannelRange_clone(const struct LDKReplyChannelRange *NONNULL_PTR orig); - export function ReplyChannelRange_clone(orig: number): number { + // void ClosingSigned_set_fee_satoshis(struct LDKClosingSigned *NONNULL_PTR this_ptr, uint64_t val); + export function ClosingSigned_set_fee_satoshis(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReplyChannelRange_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ClosingSigned_set_fee_satoshis(this_ptr, val); + // debug statements here } - // void QueryShortChannelIds_free(struct LDKQueryShortChannelIds this_obj); - export function QueryShortChannelIds_free(this_obj: number): void { + // struct LDKSignature ClosingSigned_get_signature(const struct LDKClosingSigned *NONNULL_PTR this_ptr); + export function ClosingSigned_get_signature(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.QueryShortChannelIds_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_ClosingSigned_get_signature(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // const uint8_t (*QueryShortChannelIds_get_chain_hash(const struct LDKQueryShortChannelIds *NONNULL_PTR this_ptr))[32]; - export function QueryShortChannelIds_get_chain_hash(this_ptr: number): Uint8Array { + // void ClosingSigned_set_signature(struct LDKClosingSigned *NONNULL_PTR this_ptr, struct LDKSignature val); + export function ClosingSigned_set_signature(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.QueryShortChannelIds_get_chain_hash(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ClosingSigned_set_signature(this_ptr, encodeUint8Array(val)); + // debug statements here } - // void QueryShortChannelIds_set_chain_hash(struct LDKQueryShortChannelIds *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function QueryShortChannelIds_set_chain_hash(this_ptr: number, val: Uint8Array): void { + // struct LDKClosingSignedFeeRange ClosingSigned_get_fee_range(const struct LDKClosingSigned *NONNULL_PTR this_ptr); + export function ClosingSigned_get_fee_range(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.QueryShortChannelIds_set_chain_hash(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_ClosingSigned_get_fee_range(this_ptr); + return nativeResponseValue; } - // void QueryShortChannelIds_set_short_channel_ids(struct LDKQueryShortChannelIds *NONNULL_PTR this_ptr, struct LDKCVec_u64Z val); - export function QueryShortChannelIds_set_short_channel_ids(this_ptr: number, val: number[]): void { + // void ClosingSigned_set_fee_range(struct LDKClosingSigned *NONNULL_PTR this_ptr, struct LDKClosingSignedFeeRange val); + export function ClosingSigned_set_fee_range(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.QueryShortChannelIds_set_short_channel_ids(this_ptr, val); + const nativeResponseValue = wasm.TS_ClosingSigned_set_fee_range(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKQueryShortChannelIds QueryShortChannelIds_new(struct LDKThirtyTwoBytes chain_hash_arg, struct LDKCVec_u64Z short_channel_ids_arg); - export function QueryShortChannelIds_new(chain_hash_arg: Uint8Array, short_channel_ids_arg: number[]): number { + // MUST_USE_RES struct LDKClosingSigned ClosingSigned_new(struct LDKThirtyTwoBytes channel_id_arg, uint64_t fee_satoshis_arg, struct LDKSignature signature_arg, struct LDKClosingSignedFeeRange fee_range_arg); + export function ClosingSigned_new(channel_id_arg: Uint8Array, fee_satoshis_arg: number, signature_arg: Uint8Array, fee_range_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.QueryShortChannelIds_new(encodeArray(chain_hash_arg), short_channel_ids_arg); + const nativeResponseValue = wasm.TS_ClosingSigned_new(encodeUint8Array(channel_id_arg), fee_satoshis_arg, encodeUint8Array(signature_arg), fee_range_arg); return nativeResponseValue; } - // uint64_t QueryShortChannelIds_clone_ptr(LDKQueryShortChannelIds *NONNULL_PTR arg); - export function QueryShortChannelIds_clone_ptr(arg: number): number { + // uint64_t ClosingSigned_clone_ptr(LDKClosingSigned *NONNULL_PTR arg); + export function ClosingSigned_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.QueryShortChannelIds_clone_ptr(arg); + const nativeResponseValue = wasm.TS_ClosingSigned_clone_ptr(arg); return nativeResponseValue; } - // struct LDKQueryShortChannelIds QueryShortChannelIds_clone(const struct LDKQueryShortChannelIds *NONNULL_PTR orig); - export function QueryShortChannelIds_clone(orig: number): number { + // struct LDKClosingSigned ClosingSigned_clone(const struct LDKClosingSigned *NONNULL_PTR orig); + export function ClosingSigned_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.QueryShortChannelIds_clone(orig); + const nativeResponseValue = wasm.TS_ClosingSigned_clone(orig); return nativeResponseValue; } - // void ReplyShortChannelIdsEnd_free(struct LDKReplyShortChannelIdsEnd this_obj); - export function ReplyShortChannelIdsEnd_free(this_obj: number): void { + // void UpdateAddHTLC_free(struct LDKUpdateAddHTLC this_obj); + export function UpdateAddHTLC_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReplyShortChannelIdsEnd_free(this_obj); + const nativeResponseValue = wasm.TS_UpdateAddHTLC_free(this_obj); // debug statements here } - // const uint8_t (*ReplyShortChannelIdsEnd_get_chain_hash(const struct LDKReplyShortChannelIdsEnd *NONNULL_PTR this_ptr))[32]; - export function ReplyShortChannelIdsEnd_get_chain_hash(this_ptr: number): Uint8Array { + // const uint8_t (*UpdateAddHTLC_get_channel_id(const struct LDKUpdateAddHTLC *NONNULL_PTR this_ptr))[32]; + export function UpdateAddHTLC_get_channel_id(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReplyShortChannelIdsEnd_get_chain_hash(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_UpdateAddHTLC_get_channel_id(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void ReplyShortChannelIdsEnd_set_chain_hash(struct LDKReplyShortChannelIdsEnd *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function ReplyShortChannelIdsEnd_set_chain_hash(this_ptr: number, val: Uint8Array): void { + // void UpdateAddHTLC_set_channel_id(struct LDKUpdateAddHTLC *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function UpdateAddHTLC_set_channel_id(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReplyShortChannelIdsEnd_set_chain_hash(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_UpdateAddHTLC_set_channel_id(this_ptr, encodeUint8Array(val)); // debug statements here } - // bool ReplyShortChannelIdsEnd_get_full_information(const struct LDKReplyShortChannelIdsEnd *NONNULL_PTR this_ptr); - export function ReplyShortChannelIdsEnd_get_full_information(this_ptr: number): boolean { + // uint64_t UpdateAddHTLC_get_htlc_id(const struct LDKUpdateAddHTLC *NONNULL_PTR this_ptr); + export function UpdateAddHTLC_get_htlc_id(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReplyShortChannelIdsEnd_get_full_information(this_ptr); + const nativeResponseValue = wasm.TS_UpdateAddHTLC_get_htlc_id(this_ptr); return nativeResponseValue; } - // void ReplyShortChannelIdsEnd_set_full_information(struct LDKReplyShortChannelIdsEnd *NONNULL_PTR this_ptr, bool val); - export function ReplyShortChannelIdsEnd_set_full_information(this_ptr: number, val: boolean): void { + // void UpdateAddHTLC_set_htlc_id(struct LDKUpdateAddHTLC *NONNULL_PTR this_ptr, uint64_t val); + export function UpdateAddHTLC_set_htlc_id(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReplyShortChannelIdsEnd_set_full_information(this_ptr, val); + const nativeResponseValue = wasm.TS_UpdateAddHTLC_set_htlc_id(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKReplyShortChannelIdsEnd ReplyShortChannelIdsEnd_new(struct LDKThirtyTwoBytes chain_hash_arg, bool full_information_arg); - export function ReplyShortChannelIdsEnd_new(chain_hash_arg: Uint8Array, full_information_arg: boolean): number { + // uint64_t UpdateAddHTLC_get_amount_msat(const struct LDKUpdateAddHTLC *NONNULL_PTR this_ptr); + export function UpdateAddHTLC_get_amount_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReplyShortChannelIdsEnd_new(encodeArray(chain_hash_arg), full_information_arg); + const nativeResponseValue = wasm.TS_UpdateAddHTLC_get_amount_msat(this_ptr); return nativeResponseValue; } - // uint64_t ReplyShortChannelIdsEnd_clone_ptr(LDKReplyShortChannelIdsEnd *NONNULL_PTR arg); - export function ReplyShortChannelIdsEnd_clone_ptr(arg: number): number { + // void UpdateAddHTLC_set_amount_msat(struct LDKUpdateAddHTLC *NONNULL_PTR this_ptr, uint64_t val); + export function UpdateAddHTLC_set_amount_msat(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReplyShortChannelIdsEnd_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_UpdateAddHTLC_set_amount_msat(this_ptr, val); + // debug statements here } - // struct LDKReplyShortChannelIdsEnd ReplyShortChannelIdsEnd_clone(const struct LDKReplyShortChannelIdsEnd *NONNULL_PTR orig); - export function ReplyShortChannelIdsEnd_clone(orig: number): number { + // const uint8_t (*UpdateAddHTLC_get_payment_hash(const struct LDKUpdateAddHTLC *NONNULL_PTR this_ptr))[32]; + export function UpdateAddHTLC_get_payment_hash(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReplyShortChannelIdsEnd_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_UpdateAddHTLC_get_payment_hash(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void GossipTimestampFilter_free(struct LDKGossipTimestampFilter this_obj); - export function GossipTimestampFilter_free(this_obj: number): void { + // void UpdateAddHTLC_set_payment_hash(struct LDKUpdateAddHTLC *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function UpdateAddHTLC_set_payment_hash(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.GossipTimestampFilter_free(this_obj); + const nativeResponseValue = wasm.TS_UpdateAddHTLC_set_payment_hash(this_ptr, encodeUint8Array(val)); // debug statements here } - // const uint8_t (*GossipTimestampFilter_get_chain_hash(const struct LDKGossipTimestampFilter *NONNULL_PTR this_ptr))[32]; - export function GossipTimestampFilter_get_chain_hash(this_ptr: number): Uint8Array { + // uint32_t UpdateAddHTLC_get_cltv_expiry(const struct LDKUpdateAddHTLC *NONNULL_PTR this_ptr); + export function UpdateAddHTLC_get_cltv_expiry(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.GossipTimestampFilter_get_chain_hash(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_UpdateAddHTLC_get_cltv_expiry(this_ptr); + return nativeResponseValue; } - // void GossipTimestampFilter_set_chain_hash(struct LDKGossipTimestampFilter *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function GossipTimestampFilter_set_chain_hash(this_ptr: number, val: Uint8Array): void { + // void UpdateAddHTLC_set_cltv_expiry(struct LDKUpdateAddHTLC *NONNULL_PTR this_ptr, uint32_t val); + export function UpdateAddHTLC_set_cltv_expiry(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.GossipTimestampFilter_set_chain_hash(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_UpdateAddHTLC_set_cltv_expiry(this_ptr, val); // debug statements here } - // uint32_t GossipTimestampFilter_get_first_timestamp(const struct LDKGossipTimestampFilter *NONNULL_PTR this_ptr); - export function GossipTimestampFilter_get_first_timestamp(this_ptr: number): number { + // uint64_t UpdateAddHTLC_clone_ptr(LDKUpdateAddHTLC *NONNULL_PTR arg); + export function UpdateAddHTLC_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.GossipTimestampFilter_get_first_timestamp(this_ptr); + const nativeResponseValue = wasm.TS_UpdateAddHTLC_clone_ptr(arg); return nativeResponseValue; } - // void GossipTimestampFilter_set_first_timestamp(struct LDKGossipTimestampFilter *NONNULL_PTR this_ptr, uint32_t val); - export function GossipTimestampFilter_set_first_timestamp(this_ptr: number, val: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.GossipTimestampFilter_set_first_timestamp(this_ptr, val); - // debug statements here - } - // uint32_t GossipTimestampFilter_get_timestamp_range(const struct LDKGossipTimestampFilter *NONNULL_PTR this_ptr); - export function GossipTimestampFilter_get_timestamp_range(this_ptr: number): number { + // struct LDKUpdateAddHTLC UpdateAddHTLC_clone(const struct LDKUpdateAddHTLC *NONNULL_PTR orig); + export function UpdateAddHTLC_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.GossipTimestampFilter_get_timestamp_range(this_ptr); + const nativeResponseValue = wasm.TS_UpdateAddHTLC_clone(orig); return nativeResponseValue; } - // void GossipTimestampFilter_set_timestamp_range(struct LDKGossipTimestampFilter *NONNULL_PTR this_ptr, uint32_t val); - export function GossipTimestampFilter_set_timestamp_range(this_ptr: number, val: number): void { + // void UpdateFulfillHTLC_free(struct LDKUpdateFulfillHTLC this_obj); + export function UpdateFulfillHTLC_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.GossipTimestampFilter_set_timestamp_range(this_ptr, val); + const nativeResponseValue = wasm.TS_UpdateFulfillHTLC_free(this_obj); // debug statements here } - // MUST_USE_RES struct LDKGossipTimestampFilter GossipTimestampFilter_new(struct LDKThirtyTwoBytes chain_hash_arg, uint32_t first_timestamp_arg, uint32_t timestamp_range_arg); - export function GossipTimestampFilter_new(chain_hash_arg: Uint8Array, first_timestamp_arg: number, timestamp_range_arg: number): number { + // const uint8_t (*UpdateFulfillHTLC_get_channel_id(const struct LDKUpdateFulfillHTLC *NONNULL_PTR this_ptr))[32]; + export function UpdateFulfillHTLC_get_channel_id(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.GossipTimestampFilter_new(encodeArray(chain_hash_arg), first_timestamp_arg, timestamp_range_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_UpdateFulfillHTLC_get_channel_id(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // uint64_t GossipTimestampFilter_clone_ptr(LDKGossipTimestampFilter *NONNULL_PTR arg); - export function GossipTimestampFilter_clone_ptr(arg: number): number { + // void UpdateFulfillHTLC_set_channel_id(struct LDKUpdateFulfillHTLC *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function UpdateFulfillHTLC_set_channel_id(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.GossipTimestampFilter_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_UpdateFulfillHTLC_set_channel_id(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKGossipTimestampFilter GossipTimestampFilter_clone(const struct LDKGossipTimestampFilter *NONNULL_PTR orig); - export function GossipTimestampFilter_clone(orig: number): number { + // uint64_t UpdateFulfillHTLC_get_htlc_id(const struct LDKUpdateFulfillHTLC *NONNULL_PTR this_ptr); + export function UpdateFulfillHTLC_get_htlc_id(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.GossipTimestampFilter_clone(orig); + const nativeResponseValue = wasm.TS_UpdateFulfillHTLC_get_htlc_id(this_ptr); return nativeResponseValue; } - // void ErrorAction_free(struct LDKErrorAction this_ptr); - export function ErrorAction_free(this_ptr: number): void { + // void UpdateFulfillHTLC_set_htlc_id(struct LDKUpdateFulfillHTLC *NONNULL_PTR this_ptr, uint64_t val); + export function UpdateFulfillHTLC_set_htlc_id(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ErrorAction_free(this_ptr); + const nativeResponseValue = wasm.TS_UpdateFulfillHTLC_set_htlc_id(this_ptr, val); // debug statements here } - // uint64_t ErrorAction_clone_ptr(LDKErrorAction *NONNULL_PTR arg); - export function ErrorAction_clone_ptr(arg: number): number { + // const uint8_t (*UpdateFulfillHTLC_get_payment_preimage(const struct LDKUpdateFulfillHTLC *NONNULL_PTR this_ptr))[32]; + export function UpdateFulfillHTLC_get_payment_preimage(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ErrorAction_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_UpdateFulfillHTLC_get_payment_preimage(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKErrorAction ErrorAction_clone(const struct LDKErrorAction *NONNULL_PTR orig); - export function ErrorAction_clone(orig: number): number { + // void UpdateFulfillHTLC_set_payment_preimage(struct LDKUpdateFulfillHTLC *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function UpdateFulfillHTLC_set_payment_preimage(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ErrorAction_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_UpdateFulfillHTLC_set_payment_preimage(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKErrorAction ErrorAction_disconnect_peer(struct LDKErrorMessage msg); - export function ErrorAction_disconnect_peer(msg: number): number { + // MUST_USE_RES struct LDKUpdateFulfillHTLC UpdateFulfillHTLC_new(struct LDKThirtyTwoBytes channel_id_arg, uint64_t htlc_id_arg, struct LDKThirtyTwoBytes payment_preimage_arg); + export function UpdateFulfillHTLC_new(channel_id_arg: Uint8Array, htlc_id_arg: number, payment_preimage_arg: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ErrorAction_disconnect_peer(msg); + const nativeResponseValue = wasm.TS_UpdateFulfillHTLC_new(encodeUint8Array(channel_id_arg), htlc_id_arg, encodeUint8Array(payment_preimage_arg)); return nativeResponseValue; } - // struct LDKErrorAction ErrorAction_ignore_error(void); - export function ErrorAction_ignore_error(): number { + // uint64_t UpdateFulfillHTLC_clone_ptr(LDKUpdateFulfillHTLC *NONNULL_PTR arg); + export function UpdateFulfillHTLC_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ErrorAction_ignore_error(); + const nativeResponseValue = wasm.TS_UpdateFulfillHTLC_clone_ptr(arg); return nativeResponseValue; } - // struct LDKErrorAction ErrorAction_ignore_and_log(enum LDKLevel a); - export function ErrorAction_ignore_and_log(a: Level): number { + // struct LDKUpdateFulfillHTLC UpdateFulfillHTLC_clone(const struct LDKUpdateFulfillHTLC *NONNULL_PTR orig); + export function UpdateFulfillHTLC_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ErrorAction_ignore_and_log(a); + const nativeResponseValue = wasm.TS_UpdateFulfillHTLC_clone(orig); return nativeResponseValue; } - // struct LDKErrorAction ErrorAction_ignore_duplicate_gossip(void); - export function ErrorAction_ignore_duplicate_gossip(): number { + // void UpdateFailHTLC_free(struct LDKUpdateFailHTLC this_obj); + export function UpdateFailHTLC_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ErrorAction_ignore_duplicate_gossip(); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_UpdateFailHTLC_free(this_obj); + // debug statements here } - // struct LDKErrorAction ErrorAction_send_error_message(struct LDKErrorMessage msg); - export function ErrorAction_send_error_message(msg: number): number { + // const uint8_t (*UpdateFailHTLC_get_channel_id(const struct LDKUpdateFailHTLC *NONNULL_PTR this_ptr))[32]; + export function UpdateFailHTLC_get_channel_id(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ErrorAction_send_error_message(msg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_UpdateFailHTLC_get_channel_id(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void LightningError_free(struct LDKLightningError this_obj); - export function LightningError_free(this_obj: number): void { + // void UpdateFailHTLC_set_channel_id(struct LDKUpdateFailHTLC *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function UpdateFailHTLC_set_channel_id(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.LightningError_free(this_obj); + const nativeResponseValue = wasm.TS_UpdateFailHTLC_set_channel_id(this_ptr, encodeUint8Array(val)); // debug statements here } - // struct LDKStr LightningError_get_err(const struct LDKLightningError *NONNULL_PTR this_ptr); - export function LightningError_get_err(this_ptr: number): String { + // uint64_t UpdateFailHTLC_get_htlc_id(const struct LDKUpdateFailHTLC *NONNULL_PTR this_ptr); + export function UpdateFailHTLC_get_htlc_id(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.LightningError_get_err(this_ptr); + const nativeResponseValue = wasm.TS_UpdateFailHTLC_get_htlc_id(this_ptr); return nativeResponseValue; } - // void LightningError_set_err(struct LDKLightningError *NONNULL_PTR this_ptr, struct LDKStr val); - export function LightningError_set_err(this_ptr: number, val: String): void { + // void UpdateFailHTLC_set_htlc_id(struct LDKUpdateFailHTLC *NONNULL_PTR this_ptr, uint64_t val); + export function UpdateFailHTLC_set_htlc_id(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.LightningError_set_err(this_ptr, val); + const nativeResponseValue = wasm.TS_UpdateFailHTLC_set_htlc_id(this_ptr, val); // debug statements here } - // struct LDKErrorAction LightningError_get_action(const struct LDKLightningError *NONNULL_PTR this_ptr); - export function LightningError_get_action(this_ptr: number): number { + // uint64_t UpdateFailHTLC_clone_ptr(LDKUpdateFailHTLC *NONNULL_PTR arg); + export function UpdateFailHTLC_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.LightningError_get_action(this_ptr); + const nativeResponseValue = wasm.TS_UpdateFailHTLC_clone_ptr(arg); return nativeResponseValue; } - // void LightningError_set_action(struct LDKLightningError *NONNULL_PTR this_ptr, struct LDKErrorAction val); - export function LightningError_set_action(this_ptr: number, val: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.LightningError_set_action(this_ptr, val); - // debug statements here - } - // MUST_USE_RES struct LDKLightningError LightningError_new(struct LDKStr err_arg, struct LDKErrorAction action_arg); - export function LightningError_new(err_arg: String, action_arg: number): number { + // struct LDKUpdateFailHTLC UpdateFailHTLC_clone(const struct LDKUpdateFailHTLC *NONNULL_PTR orig); + export function UpdateFailHTLC_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.LightningError_new(err_arg, action_arg); + const nativeResponseValue = wasm.TS_UpdateFailHTLC_clone(orig); return nativeResponseValue; } - // uint64_t LightningError_clone_ptr(LDKLightningError *NONNULL_PTR arg); - export function LightningError_clone_ptr(arg: number): number { + // void UpdateFailMalformedHTLC_free(struct LDKUpdateFailMalformedHTLC this_obj); + export function UpdateFailMalformedHTLC_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.LightningError_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_UpdateFailMalformedHTLC_free(this_obj); + // debug statements here } - // struct LDKLightningError LightningError_clone(const struct LDKLightningError *NONNULL_PTR orig); - export function LightningError_clone(orig: number): number { + // const uint8_t (*UpdateFailMalformedHTLC_get_channel_id(const struct LDKUpdateFailMalformedHTLC *NONNULL_PTR this_ptr))[32]; + export function UpdateFailMalformedHTLC_get_channel_id(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.LightningError_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_UpdateFailMalformedHTLC_get_channel_id(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void CommitmentUpdate_free(struct LDKCommitmentUpdate this_obj); - export function CommitmentUpdate_free(this_obj: number): void { + // void UpdateFailMalformedHTLC_set_channel_id(struct LDKUpdateFailMalformedHTLC *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function UpdateFailMalformedHTLC_set_channel_id(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentUpdate_free(this_obj); + const nativeResponseValue = wasm.TS_UpdateFailMalformedHTLC_set_channel_id(this_ptr, encodeUint8Array(val)); // debug statements here } - // struct LDKCVec_UpdateAddHTLCZ CommitmentUpdate_get_update_add_htlcs(const struct LDKCommitmentUpdate *NONNULL_PTR this_ptr); - export function CommitmentUpdate_get_update_add_htlcs(this_ptr: number): number[] { + // uint64_t UpdateFailMalformedHTLC_get_htlc_id(const struct LDKUpdateFailMalformedHTLC *NONNULL_PTR this_ptr); + export function UpdateFailMalformedHTLC_get_htlc_id(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentUpdate_get_update_add_htlcs(this_ptr); + const nativeResponseValue = wasm.TS_UpdateFailMalformedHTLC_get_htlc_id(this_ptr); return nativeResponseValue; } - // void CommitmentUpdate_set_update_add_htlcs(struct LDKCommitmentUpdate *NONNULL_PTR this_ptr, struct LDKCVec_UpdateAddHTLCZ val); - export function CommitmentUpdate_set_update_add_htlcs(this_ptr: number, val: number[]): void { + // void UpdateFailMalformedHTLC_set_htlc_id(struct LDKUpdateFailMalformedHTLC *NONNULL_PTR this_ptr, uint64_t val); + export function UpdateFailMalformedHTLC_set_htlc_id(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentUpdate_set_update_add_htlcs(this_ptr, val); + const nativeResponseValue = wasm.TS_UpdateFailMalformedHTLC_set_htlc_id(this_ptr, val); // debug statements here } - // struct LDKCVec_UpdateFulfillHTLCZ CommitmentUpdate_get_update_fulfill_htlcs(const struct LDKCommitmentUpdate *NONNULL_PTR this_ptr); - export function CommitmentUpdate_get_update_fulfill_htlcs(this_ptr: number): number[] { + // uint16_t UpdateFailMalformedHTLC_get_failure_code(const struct LDKUpdateFailMalformedHTLC *NONNULL_PTR this_ptr); + export function UpdateFailMalformedHTLC_get_failure_code(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentUpdate_get_update_fulfill_htlcs(this_ptr); + const nativeResponseValue = wasm.TS_UpdateFailMalformedHTLC_get_failure_code(this_ptr); return nativeResponseValue; } - // void CommitmentUpdate_set_update_fulfill_htlcs(struct LDKCommitmentUpdate *NONNULL_PTR this_ptr, struct LDKCVec_UpdateFulfillHTLCZ val); - export function CommitmentUpdate_set_update_fulfill_htlcs(this_ptr: number, val: number[]): void { + // void UpdateFailMalformedHTLC_set_failure_code(struct LDKUpdateFailMalformedHTLC *NONNULL_PTR this_ptr, uint16_t val); + export function UpdateFailMalformedHTLC_set_failure_code(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentUpdate_set_update_fulfill_htlcs(this_ptr, val); + const nativeResponseValue = wasm.TS_UpdateFailMalformedHTLC_set_failure_code(this_ptr, val); // debug statements here } - // struct LDKCVec_UpdateFailHTLCZ CommitmentUpdate_get_update_fail_htlcs(const struct LDKCommitmentUpdate *NONNULL_PTR this_ptr); - export function CommitmentUpdate_get_update_fail_htlcs(this_ptr: number): number[] { + // uint64_t UpdateFailMalformedHTLC_clone_ptr(LDKUpdateFailMalformedHTLC *NONNULL_PTR arg); + export function UpdateFailMalformedHTLC_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentUpdate_get_update_fail_htlcs(this_ptr); + const nativeResponseValue = wasm.TS_UpdateFailMalformedHTLC_clone_ptr(arg); return nativeResponseValue; } - // void CommitmentUpdate_set_update_fail_htlcs(struct LDKCommitmentUpdate *NONNULL_PTR this_ptr, struct LDKCVec_UpdateFailHTLCZ val); - export function CommitmentUpdate_set_update_fail_htlcs(this_ptr: number, val: number[]): void { + // struct LDKUpdateFailMalformedHTLC UpdateFailMalformedHTLC_clone(const struct LDKUpdateFailMalformedHTLC *NONNULL_PTR orig); + export function UpdateFailMalformedHTLC_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentUpdate_set_update_fail_htlcs(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_UpdateFailMalformedHTLC_clone(orig); + return nativeResponseValue; } - // struct LDKCVec_UpdateFailMalformedHTLCZ CommitmentUpdate_get_update_fail_malformed_htlcs(const struct LDKCommitmentUpdate *NONNULL_PTR this_ptr); - export function CommitmentUpdate_get_update_fail_malformed_htlcs(this_ptr: number): number[] { + // void CommitmentSigned_free(struct LDKCommitmentSigned this_obj); + export function CommitmentSigned_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentUpdate_get_update_fail_malformed_htlcs(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CommitmentSigned_free(this_obj); + // debug statements here } - // void CommitmentUpdate_set_update_fail_malformed_htlcs(struct LDKCommitmentUpdate *NONNULL_PTR this_ptr, struct LDKCVec_UpdateFailMalformedHTLCZ val); - export function CommitmentUpdate_set_update_fail_malformed_htlcs(this_ptr: number, val: number[]): void { + // const uint8_t (*CommitmentSigned_get_channel_id(const struct LDKCommitmentSigned *NONNULL_PTR this_ptr))[32]; + export function CommitmentSigned_get_channel_id(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentUpdate_set_update_fail_malformed_htlcs(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_CommitmentSigned_get_channel_id(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKUpdateFee CommitmentUpdate_get_update_fee(const struct LDKCommitmentUpdate *NONNULL_PTR this_ptr); - export function CommitmentUpdate_get_update_fee(this_ptr: number): number { + // void CommitmentSigned_set_channel_id(struct LDKCommitmentSigned *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function CommitmentSigned_set_channel_id(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentUpdate_get_update_fee(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CommitmentSigned_set_channel_id(this_ptr, encodeUint8Array(val)); + // debug statements here } - // void CommitmentUpdate_set_update_fee(struct LDKCommitmentUpdate *NONNULL_PTR this_ptr, struct LDKUpdateFee val); - export function CommitmentUpdate_set_update_fee(this_ptr: number, val: number): void { + // struct LDKSignature CommitmentSigned_get_signature(const struct LDKCommitmentSigned *NONNULL_PTR this_ptr); + export function CommitmentSigned_get_signature(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentUpdate_set_update_fee(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_CommitmentSigned_get_signature(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCommitmentSigned CommitmentUpdate_get_commitment_signed(const struct LDKCommitmentUpdate *NONNULL_PTR this_ptr); - export function CommitmentUpdate_get_commitment_signed(this_ptr: number): number { + // void CommitmentSigned_set_signature(struct LDKCommitmentSigned *NONNULL_PTR this_ptr, struct LDKSignature val); + export function CommitmentSigned_set_signature(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentUpdate_get_commitment_signed(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CommitmentSigned_set_signature(this_ptr, encodeUint8Array(val)); + // debug statements here } - // void CommitmentUpdate_set_commitment_signed(struct LDKCommitmentUpdate *NONNULL_PTR this_ptr, struct LDKCommitmentSigned val); - export function CommitmentUpdate_set_commitment_signed(this_ptr: number, val: number): void { + // void CommitmentSigned_set_htlc_signatures(struct LDKCommitmentSigned *NONNULL_PTR this_ptr, struct LDKCVec_SignatureZ val); + export function CommitmentSigned_set_htlc_signatures(this_ptr: number, val: Uint8Array[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentUpdate_set_commitment_signed(this_ptr, val); + const nativeResponseValue = wasm.TS_CommitmentSigned_set_htlc_signatures(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKCommitmentUpdate CommitmentUpdate_new(struct LDKCVec_UpdateAddHTLCZ update_add_htlcs_arg, struct LDKCVec_UpdateFulfillHTLCZ update_fulfill_htlcs_arg, struct LDKCVec_UpdateFailHTLCZ update_fail_htlcs_arg, struct LDKCVec_UpdateFailMalformedHTLCZ update_fail_malformed_htlcs_arg, struct LDKUpdateFee update_fee_arg, struct LDKCommitmentSigned commitment_signed_arg); - export function CommitmentUpdate_new(update_add_htlcs_arg: number[], update_fulfill_htlcs_arg: number[], update_fail_htlcs_arg: number[], update_fail_malformed_htlcs_arg: number[], update_fee_arg: number, commitment_signed_arg: number): number { + // MUST_USE_RES struct LDKCommitmentSigned CommitmentSigned_new(struct LDKThirtyTwoBytes channel_id_arg, struct LDKSignature signature_arg, struct LDKCVec_SignatureZ htlc_signatures_arg); + export function CommitmentSigned_new(channel_id_arg: Uint8Array, signature_arg: Uint8Array, htlc_signatures_arg: Uint8Array[]): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentUpdate_new(update_add_htlcs_arg, update_fulfill_htlcs_arg, update_fail_htlcs_arg, update_fail_malformed_htlcs_arg, update_fee_arg, commitment_signed_arg); + const nativeResponseValue = wasm.TS_CommitmentSigned_new(encodeUint8Array(channel_id_arg), encodeUint8Array(signature_arg), htlc_signatures_arg); return nativeResponseValue; } - // uint64_t CommitmentUpdate_clone_ptr(LDKCommitmentUpdate *NONNULL_PTR arg); - export function CommitmentUpdate_clone_ptr(arg: number): number { + // uint64_t CommitmentSigned_clone_ptr(LDKCommitmentSigned *NONNULL_PTR arg); + export function CommitmentSigned_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentUpdate_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CommitmentSigned_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCommitmentUpdate CommitmentUpdate_clone(const struct LDKCommitmentUpdate *NONNULL_PTR orig); - export function CommitmentUpdate_clone(orig: number): number { + // struct LDKCommitmentSigned CommitmentSigned_clone(const struct LDKCommitmentSigned *NONNULL_PTR orig); + export function CommitmentSigned_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentUpdate_clone(orig); + const nativeResponseValue = wasm.TS_CommitmentSigned_clone(orig); return nativeResponseValue; } - // void ChannelMessageHandler_free(struct LDKChannelMessageHandler this_ptr); - export function ChannelMessageHandler_free(this_ptr: number): void { + // void RevokeAndACK_free(struct LDKRevokeAndACK this_obj); + export function RevokeAndACK_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelMessageHandler_free(this_ptr); + const nativeResponseValue = wasm.TS_RevokeAndACK_free(this_obj); // debug statements here } - // void RoutingMessageHandler_free(struct LDKRoutingMessageHandler this_ptr); - export function RoutingMessageHandler_free(this_ptr: number): void { + // const uint8_t (*RevokeAndACK_get_channel_id(const struct LDKRevokeAndACK *NONNULL_PTR this_ptr))[32]; + export function RevokeAndACK_get_channel_id(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RoutingMessageHandler_free(this_ptr); - // debug statements here + const nativeResponseValue = wasm.TS_RevokeAndACK_get_channel_id(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCVec_u8Z AcceptChannel_write(const struct LDKAcceptChannel *NONNULL_PTR obj); - export function AcceptChannel_write(obj: number): Uint8Array { + // void RevokeAndACK_set_channel_id(struct LDKRevokeAndACK *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function RevokeAndACK_set_channel_id(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_RevokeAndACK_set_channel_id(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKCResult_AcceptChannelDecodeErrorZ AcceptChannel_read(struct LDKu8slice ser); - export function AcceptChannel_read(ser: Uint8Array): number { + // const uint8_t (*RevokeAndACK_get_per_commitment_secret(const struct LDKRevokeAndACK *NONNULL_PTR this_ptr))[32]; + export function RevokeAndACK_get_per_commitment_secret(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AcceptChannel_read(encodeArray(ser)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_RevokeAndACK_get_per_commitment_secret(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCVec_u8Z AnnouncementSignatures_write(const struct LDKAnnouncementSignatures *NONNULL_PTR obj); - export function AnnouncementSignatures_write(obj: number): Uint8Array { + // void RevokeAndACK_set_per_commitment_secret(struct LDKRevokeAndACK *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function RevokeAndACK_set_per_commitment_secret(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AnnouncementSignatures_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_RevokeAndACK_set_per_commitment_secret(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKCResult_AnnouncementSignaturesDecodeErrorZ AnnouncementSignatures_read(struct LDKu8slice ser); - export function AnnouncementSignatures_read(ser: Uint8Array): number { + // struct LDKPublicKey RevokeAndACK_get_next_per_commitment_point(const struct LDKRevokeAndACK *NONNULL_PTR this_ptr); + export function RevokeAndACK_get_next_per_commitment_point(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.AnnouncementSignatures_read(encodeArray(ser)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_RevokeAndACK_get_next_per_commitment_point(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCVec_u8Z ChannelReestablish_write(const struct LDKChannelReestablish *NONNULL_PTR obj); - export function ChannelReestablish_write(obj: number): Uint8Array { + // void RevokeAndACK_set_next_per_commitment_point(struct LDKRevokeAndACK *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function RevokeAndACK_set_next_per_commitment_point(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelReestablish_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_RevokeAndACK_set_next_per_commitment_point(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKCResult_ChannelReestablishDecodeErrorZ ChannelReestablish_read(struct LDKu8slice ser); - export function ChannelReestablish_read(ser: Uint8Array): number { + // MUST_USE_RES struct LDKRevokeAndACK RevokeAndACK_new(struct LDKThirtyTwoBytes channel_id_arg, struct LDKThirtyTwoBytes per_commitment_secret_arg, struct LDKPublicKey next_per_commitment_point_arg); + export function RevokeAndACK_new(channel_id_arg: Uint8Array, per_commitment_secret_arg: Uint8Array, next_per_commitment_point_arg: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelReestablish_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_RevokeAndACK_new(encodeUint8Array(channel_id_arg), encodeUint8Array(per_commitment_secret_arg), encodeUint8Array(next_per_commitment_point_arg)); return nativeResponseValue; } - // struct LDKCVec_u8Z ClosingSigned_write(const struct LDKClosingSigned *NONNULL_PTR obj); - export function ClosingSigned_write(obj: number): Uint8Array { + // uint64_t RevokeAndACK_clone_ptr(LDKRevokeAndACK *NONNULL_PTR arg); + export function RevokeAndACK_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingSigned_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_RevokeAndACK_clone_ptr(arg); + return nativeResponseValue; } - // struct LDKCResult_ClosingSignedDecodeErrorZ ClosingSigned_read(struct LDKu8slice ser); - export function ClosingSigned_read(ser: Uint8Array): number { + // struct LDKRevokeAndACK RevokeAndACK_clone(const struct LDKRevokeAndACK *NONNULL_PTR orig); + export function RevokeAndACK_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingSigned_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_RevokeAndACK_clone(orig); return nativeResponseValue; } - // struct LDKCVec_u8Z ClosingSignedFeeRange_write(const struct LDKClosingSignedFeeRange *NONNULL_PTR obj); - export function ClosingSignedFeeRange_write(obj: number): Uint8Array { + // void UpdateFee_free(struct LDKUpdateFee this_obj); + export function UpdateFee_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingSignedFeeRange_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_UpdateFee_free(this_obj); + // debug statements here } - // struct LDKCResult_ClosingSignedFeeRangeDecodeErrorZ ClosingSignedFeeRange_read(struct LDKu8slice ser); - export function ClosingSignedFeeRange_read(ser: Uint8Array): number { + // const uint8_t (*UpdateFee_get_channel_id(const struct LDKUpdateFee *NONNULL_PTR this_ptr))[32]; + export function UpdateFee_get_channel_id(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingSignedFeeRange_read(encodeArray(ser)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_UpdateFee_get_channel_id(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCVec_u8Z CommitmentSigned_write(const struct LDKCommitmentSigned *NONNULL_PTR obj); - export function CommitmentSigned_write(obj: number): Uint8Array { + // void UpdateFee_set_channel_id(struct LDKUpdateFee *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function UpdateFee_set_channel_id(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentSigned_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_UpdateFee_set_channel_id(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKCResult_CommitmentSignedDecodeErrorZ CommitmentSigned_read(struct LDKu8slice ser); - export function CommitmentSigned_read(ser: Uint8Array): number { + // uint32_t UpdateFee_get_feerate_per_kw(const struct LDKUpdateFee *NONNULL_PTR this_ptr); + export function UpdateFee_get_feerate_per_kw(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentSigned_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_UpdateFee_get_feerate_per_kw(this_ptr); return nativeResponseValue; } - // struct LDKCVec_u8Z FundingCreated_write(const struct LDKFundingCreated *NONNULL_PTR obj); - export function FundingCreated_write(obj: number): Uint8Array { + // void UpdateFee_set_feerate_per_kw(struct LDKUpdateFee *NONNULL_PTR this_ptr, uint32_t val); + export function UpdateFee_set_feerate_per_kw(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingCreated_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_UpdateFee_set_feerate_per_kw(this_ptr, val); + // debug statements here } - // struct LDKCResult_FundingCreatedDecodeErrorZ FundingCreated_read(struct LDKu8slice ser); - export function FundingCreated_read(ser: Uint8Array): number { + // MUST_USE_RES struct LDKUpdateFee UpdateFee_new(struct LDKThirtyTwoBytes channel_id_arg, uint32_t feerate_per_kw_arg); + export function UpdateFee_new(channel_id_arg: Uint8Array, feerate_per_kw_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingCreated_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_UpdateFee_new(encodeUint8Array(channel_id_arg), feerate_per_kw_arg); return nativeResponseValue; } - // struct LDKCVec_u8Z FundingSigned_write(const struct LDKFundingSigned *NONNULL_PTR obj); - export function FundingSigned_write(obj: number): Uint8Array { + // uint64_t UpdateFee_clone_ptr(LDKUpdateFee *NONNULL_PTR arg); + export function UpdateFee_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingSigned_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_UpdateFee_clone_ptr(arg); + return nativeResponseValue; } - // struct LDKCResult_FundingSignedDecodeErrorZ FundingSigned_read(struct LDKu8slice ser); - export function FundingSigned_read(ser: Uint8Array): number { + // struct LDKUpdateFee UpdateFee_clone(const struct LDKUpdateFee *NONNULL_PTR orig); + export function UpdateFee_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingSigned_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_UpdateFee_clone(orig); return nativeResponseValue; } - // struct LDKCVec_u8Z FundingLocked_write(const struct LDKFundingLocked *NONNULL_PTR obj); - export function FundingLocked_write(obj: number): Uint8Array { + // void DataLossProtect_free(struct LDKDataLossProtect this_obj); + export function DataLossProtect_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingLocked_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_DataLossProtect_free(this_obj); + // debug statements here } - // struct LDKCResult_FundingLockedDecodeErrorZ FundingLocked_read(struct LDKu8slice ser); - export function FundingLocked_read(ser: Uint8Array): number { + // const uint8_t (*DataLossProtect_get_your_last_per_commitment_secret(const struct LDKDataLossProtect *NONNULL_PTR this_ptr))[32]; + export function DataLossProtect_get_your_last_per_commitment_secret(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FundingLocked_read(encodeArray(ser)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_DataLossProtect_get_your_last_per_commitment_secret(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCVec_u8Z Init_write(const struct LDKInit *NONNULL_PTR obj); - export function Init_write(obj: number): Uint8Array { + // void DataLossProtect_set_your_last_per_commitment_secret(struct LDKDataLossProtect *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function DataLossProtect_set_your_last_per_commitment_secret(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Init_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_DataLossProtect_set_your_last_per_commitment_secret(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKCResult_InitDecodeErrorZ Init_read(struct LDKu8slice ser); - export function Init_read(ser: Uint8Array): number { + // struct LDKPublicKey DataLossProtect_get_my_current_per_commitment_point(const struct LDKDataLossProtect *NONNULL_PTR this_ptr); + export function DataLossProtect_get_my_current_per_commitment_point(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Init_read(encodeArray(ser)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_DataLossProtect_get_my_current_per_commitment_point(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCVec_u8Z OpenChannel_write(const struct LDKOpenChannel *NONNULL_PTR obj); - export function OpenChannel_write(obj: number): Uint8Array { + // void DataLossProtect_set_my_current_per_commitment_point(struct LDKDataLossProtect *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function DataLossProtect_set_my_current_per_commitment_point(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_DataLossProtect_set_my_current_per_commitment_point(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKCResult_OpenChannelDecodeErrorZ OpenChannel_read(struct LDKu8slice ser); - export function OpenChannel_read(ser: Uint8Array): number { + // MUST_USE_RES struct LDKDataLossProtect DataLossProtect_new(struct LDKThirtyTwoBytes your_last_per_commitment_secret_arg, struct LDKPublicKey my_current_per_commitment_point_arg); + export function DataLossProtect_new(your_last_per_commitment_secret_arg: Uint8Array, my_current_per_commitment_point_arg: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.OpenChannel_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_DataLossProtect_new(encodeUint8Array(your_last_per_commitment_secret_arg), encodeUint8Array(my_current_per_commitment_point_arg)); return nativeResponseValue; } - // struct LDKCVec_u8Z RevokeAndACK_write(const struct LDKRevokeAndACK *NONNULL_PTR obj); - export function RevokeAndACK_write(obj: number): Uint8Array { + // uint64_t DataLossProtect_clone_ptr(LDKDataLossProtect *NONNULL_PTR arg); + export function DataLossProtect_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RevokeAndACK_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_DataLossProtect_clone_ptr(arg); + return nativeResponseValue; } - // struct LDKCResult_RevokeAndACKDecodeErrorZ RevokeAndACK_read(struct LDKu8slice ser); - export function RevokeAndACK_read(ser: Uint8Array): number { + // struct LDKDataLossProtect DataLossProtect_clone(const struct LDKDataLossProtect *NONNULL_PTR orig); + export function DataLossProtect_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RevokeAndACK_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_DataLossProtect_clone(orig); return nativeResponseValue; } - // struct LDKCVec_u8Z Shutdown_write(const struct LDKShutdown *NONNULL_PTR obj); - export function Shutdown_write(obj: number): Uint8Array { + // void ChannelReestablish_free(struct LDKChannelReestablish this_obj); + export function ChannelReestablish_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Shutdown_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelReestablish_free(this_obj); + // debug statements here } - // struct LDKCResult_ShutdownDecodeErrorZ Shutdown_read(struct LDKu8slice ser); - export function Shutdown_read(ser: Uint8Array): number { + // const uint8_t (*ChannelReestablish_get_channel_id(const struct LDKChannelReestablish *NONNULL_PTR this_ptr))[32]; + export function ChannelReestablish_get_channel_id(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Shutdown_read(encodeArray(ser)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelReestablish_get_channel_id(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCVec_u8Z UpdateFailHTLC_write(const struct LDKUpdateFailHTLC *NONNULL_PTR obj); - export function UpdateFailHTLC_write(obj: number): Uint8Array { + // void ChannelReestablish_set_channel_id(struct LDKChannelReestablish *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function ChannelReestablish_set_channel_id(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFailHTLC_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelReestablish_set_channel_id(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKCResult_UpdateFailHTLCDecodeErrorZ UpdateFailHTLC_read(struct LDKu8slice ser); - export function UpdateFailHTLC_read(ser: Uint8Array): number { + // uint64_t ChannelReestablish_get_next_local_commitment_number(const struct LDKChannelReestablish *NONNULL_PTR this_ptr); + export function ChannelReestablish_get_next_local_commitment_number(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFailHTLC_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_ChannelReestablish_get_next_local_commitment_number(this_ptr); return nativeResponseValue; } - // struct LDKCVec_u8Z UpdateFailMalformedHTLC_write(const struct LDKUpdateFailMalformedHTLC *NONNULL_PTR obj); - export function UpdateFailMalformedHTLC_write(obj: number): Uint8Array { + // void ChannelReestablish_set_next_local_commitment_number(struct LDKChannelReestablish *NONNULL_PTR this_ptr, uint64_t val); + export function ChannelReestablish_set_next_local_commitment_number(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFailMalformedHTLC_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelReestablish_set_next_local_commitment_number(this_ptr, val); + // debug statements here } - // struct LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ UpdateFailMalformedHTLC_read(struct LDKu8slice ser); - export function UpdateFailMalformedHTLC_read(ser: Uint8Array): number { + // uint64_t ChannelReestablish_get_next_remote_commitment_number(const struct LDKChannelReestablish *NONNULL_PTR this_ptr); + export function ChannelReestablish_get_next_remote_commitment_number(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFailMalformedHTLC_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_ChannelReestablish_get_next_remote_commitment_number(this_ptr); return nativeResponseValue; } - // struct LDKCVec_u8Z UpdateFee_write(const struct LDKUpdateFee *NONNULL_PTR obj); - export function UpdateFee_write(obj: number): Uint8Array { + // void ChannelReestablish_set_next_remote_commitment_number(struct LDKChannelReestablish *NONNULL_PTR this_ptr, uint64_t val); + export function ChannelReestablish_set_next_remote_commitment_number(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFee_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelReestablish_set_next_remote_commitment_number(this_ptr, val); + // debug statements here } - // struct LDKCResult_UpdateFeeDecodeErrorZ UpdateFee_read(struct LDKu8slice ser); - export function UpdateFee_read(ser: Uint8Array): number { + // uint64_t ChannelReestablish_clone_ptr(LDKChannelReestablish *NONNULL_PTR arg); + export function ChannelReestablish_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFee_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_ChannelReestablish_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCVec_u8Z UpdateFulfillHTLC_write(const struct LDKUpdateFulfillHTLC *NONNULL_PTR obj); - export function UpdateFulfillHTLC_write(obj: number): Uint8Array { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.UpdateFulfillHTLC_write(obj); - return decodeArray(nativeResponseValue); - } - // struct LDKCResult_UpdateFulfillHTLCDecodeErrorZ UpdateFulfillHTLC_read(struct LDKu8slice ser); - export function UpdateFulfillHTLC_read(ser: Uint8Array): number { + // struct LDKChannelReestablish ChannelReestablish_clone(const struct LDKChannelReestablish *NONNULL_PTR orig); + export function ChannelReestablish_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateFulfillHTLC_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_ChannelReestablish_clone(orig); return nativeResponseValue; } - // struct LDKCVec_u8Z UpdateAddHTLC_write(const struct LDKUpdateAddHTLC *NONNULL_PTR obj); - export function UpdateAddHTLC_write(obj: number): Uint8Array { + // void AnnouncementSignatures_free(struct LDKAnnouncementSignatures this_obj); + export function AnnouncementSignatures_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateAddHTLC_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_AnnouncementSignatures_free(this_obj); + // debug statements here } - // struct LDKCResult_UpdateAddHTLCDecodeErrorZ UpdateAddHTLC_read(struct LDKu8slice ser); - export function UpdateAddHTLC_read(ser: Uint8Array): number { + // const uint8_t (*AnnouncementSignatures_get_channel_id(const struct LDKAnnouncementSignatures *NONNULL_PTR this_ptr))[32]; + export function AnnouncementSignatures_get_channel_id(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UpdateAddHTLC_read(encodeArray(ser)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_AnnouncementSignatures_get_channel_id(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCVec_u8Z Ping_write(const struct LDKPing *NONNULL_PTR obj); - export function Ping_write(obj: number): Uint8Array { + // void AnnouncementSignatures_set_channel_id(struct LDKAnnouncementSignatures *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function AnnouncementSignatures_set_channel_id(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Ping_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_AnnouncementSignatures_set_channel_id(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKCResult_PingDecodeErrorZ Ping_read(struct LDKu8slice ser); - export function Ping_read(ser: Uint8Array): number { + // uint64_t AnnouncementSignatures_get_short_channel_id(const struct LDKAnnouncementSignatures *NONNULL_PTR this_ptr); + export function AnnouncementSignatures_get_short_channel_id(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Ping_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_AnnouncementSignatures_get_short_channel_id(this_ptr); return nativeResponseValue; } - // struct LDKCVec_u8Z Pong_write(const struct LDKPong *NONNULL_PTR obj); - export function Pong_write(obj: number): Uint8Array { + // void AnnouncementSignatures_set_short_channel_id(struct LDKAnnouncementSignatures *NONNULL_PTR this_ptr, uint64_t val); + export function AnnouncementSignatures_set_short_channel_id(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Pong_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_AnnouncementSignatures_set_short_channel_id(this_ptr, val); + // debug statements here } - // struct LDKCResult_PongDecodeErrorZ Pong_read(struct LDKu8slice ser); - export function Pong_read(ser: Uint8Array): number { + // struct LDKSignature AnnouncementSignatures_get_node_signature(const struct LDKAnnouncementSignatures *NONNULL_PTR this_ptr); + export function AnnouncementSignatures_get_node_signature(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Pong_read(encodeArray(ser)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_AnnouncementSignatures_get_node_signature(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCVec_u8Z UnsignedChannelAnnouncement_write(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR obj); - export function UnsignedChannelAnnouncement_write(obj: number): Uint8Array { + // void AnnouncementSignatures_set_node_signature(struct LDKAnnouncementSignatures *NONNULL_PTR this_ptr, struct LDKSignature val); + export function AnnouncementSignatures_set_node_signature(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelAnnouncement_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_AnnouncementSignatures_set_node_signature(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ UnsignedChannelAnnouncement_read(struct LDKu8slice ser); - export function UnsignedChannelAnnouncement_read(ser: Uint8Array): number { + // struct LDKSignature AnnouncementSignatures_get_bitcoin_signature(const struct LDKAnnouncementSignatures *NONNULL_PTR this_ptr); + export function AnnouncementSignatures_get_bitcoin_signature(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelAnnouncement_read(encodeArray(ser)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_AnnouncementSignatures_get_bitcoin_signature(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCVec_u8Z ChannelAnnouncement_write(const struct LDKChannelAnnouncement *NONNULL_PTR obj); - export function ChannelAnnouncement_write(obj: number): Uint8Array { + // void AnnouncementSignatures_set_bitcoin_signature(struct LDKAnnouncementSignatures *NONNULL_PTR this_ptr, struct LDKSignature val); + export function AnnouncementSignatures_set_bitcoin_signature(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelAnnouncement_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_AnnouncementSignatures_set_bitcoin_signature(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKCResult_ChannelAnnouncementDecodeErrorZ ChannelAnnouncement_read(struct LDKu8slice ser); - export function ChannelAnnouncement_read(ser: Uint8Array): number { + // MUST_USE_RES struct LDKAnnouncementSignatures AnnouncementSignatures_new(struct LDKThirtyTwoBytes channel_id_arg, uint64_t short_channel_id_arg, struct LDKSignature node_signature_arg, struct LDKSignature bitcoin_signature_arg); + export function AnnouncementSignatures_new(channel_id_arg: Uint8Array, short_channel_id_arg: number, node_signature_arg: Uint8Array, bitcoin_signature_arg: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelAnnouncement_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_AnnouncementSignatures_new(encodeUint8Array(channel_id_arg), short_channel_id_arg, encodeUint8Array(node_signature_arg), encodeUint8Array(bitcoin_signature_arg)); return nativeResponseValue; } - // struct LDKCVec_u8Z UnsignedChannelUpdate_write(const struct LDKUnsignedChannelUpdate *NONNULL_PTR obj); - export function UnsignedChannelUpdate_write(obj: number): Uint8Array { + // uint64_t AnnouncementSignatures_clone_ptr(LDKAnnouncementSignatures *NONNULL_PTR arg); + export function AnnouncementSignatures_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelUpdate_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_AnnouncementSignatures_clone_ptr(arg); + return nativeResponseValue; } - // struct LDKCResult_UnsignedChannelUpdateDecodeErrorZ UnsignedChannelUpdate_read(struct LDKu8slice ser); - export function UnsignedChannelUpdate_read(ser: Uint8Array): number { + // struct LDKAnnouncementSignatures AnnouncementSignatures_clone(const struct LDKAnnouncementSignatures *NONNULL_PTR orig); + export function AnnouncementSignatures_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedChannelUpdate_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_AnnouncementSignatures_clone(orig); return nativeResponseValue; } - // struct LDKCVec_u8Z ChannelUpdate_write(const struct LDKChannelUpdate *NONNULL_PTR obj); - export function ChannelUpdate_write(obj: number): Uint8Array { + // void NetAddress_free(struct LDKNetAddress this_ptr); + export function NetAddress_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelUpdate_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_NetAddress_free(this_ptr); + // debug statements here } - // struct LDKCResult_ChannelUpdateDecodeErrorZ ChannelUpdate_read(struct LDKu8slice ser); - export function ChannelUpdate_read(ser: Uint8Array): number { + // uint64_t NetAddress_clone_ptr(LDKNetAddress *NONNULL_PTR arg); + export function NetAddress_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelUpdate_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_NetAddress_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCVec_u8Z ErrorMessage_write(const struct LDKErrorMessage *NONNULL_PTR obj); - export function ErrorMessage_write(obj: number): Uint8Array { + // struct LDKNetAddress NetAddress_clone(const struct LDKNetAddress *NONNULL_PTR orig); + export function NetAddress_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ErrorMessage_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_NetAddress_clone(orig); + return nativeResponseValue; } - // struct LDKCResult_ErrorMessageDecodeErrorZ ErrorMessage_read(struct LDKu8slice ser); - export function ErrorMessage_read(ser: Uint8Array): number { + // struct LDKNetAddress NetAddress_ipv4(struct LDKFourBytes addr, uint16_t port); + export function NetAddress_ipv4(addr: Uint8Array, port: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ErrorMessage_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_NetAddress_ipv4(encodeUint8Array(addr), port); return nativeResponseValue; } - // struct LDKCVec_u8Z UnsignedNodeAnnouncement_write(const struct LDKUnsignedNodeAnnouncement *NONNULL_PTR obj); - export function UnsignedNodeAnnouncement_write(obj: number): Uint8Array { + // struct LDKNetAddress NetAddress_ipv6(struct LDKSixteenBytes addr, uint16_t port); + export function NetAddress_ipv6(addr: Uint8Array, port: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedNodeAnnouncement_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_NetAddress_ipv6(encodeUint8Array(addr), port); + return nativeResponseValue; } - // struct LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ UnsignedNodeAnnouncement_read(struct LDKu8slice ser); - export function UnsignedNodeAnnouncement_read(ser: Uint8Array): number { + // struct LDKNetAddress NetAddress_onion_v2(struct LDKTwelveBytes a); + export function NetAddress_onion_v2(a: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.UnsignedNodeAnnouncement_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_NetAddress_onion_v2(encodeUint8Array(a)); return nativeResponseValue; } - // struct LDKCVec_u8Z NodeAnnouncement_write(const struct LDKNodeAnnouncement *NONNULL_PTR obj); - export function NodeAnnouncement_write(obj: number): Uint8Array { + // struct LDKNetAddress NetAddress_onion_v3(struct LDKThirtyTwoBytes ed25519_pubkey, uint16_t checksum, uint8_t version, uint16_t port); + export function NetAddress_onion_v3(ed25519_pubkey: Uint8Array, checksum: number, version: number, port: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncement_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_NetAddress_onion_v3(encodeUint8Array(ed25519_pubkey), checksum, version, port); + return nativeResponseValue; } - // struct LDKCResult_NodeAnnouncementDecodeErrorZ NodeAnnouncement_read(struct LDKu8slice ser); - export function NodeAnnouncement_read(ser: Uint8Array): number { + // struct LDKCVec_u8Z NetAddress_write(const struct LDKNetAddress *NONNULL_PTR obj); + export function NetAddress_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncement_read(encodeArray(ser)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_NetAddress_write(obj); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCResult_QueryShortChannelIdsDecodeErrorZ QueryShortChannelIds_read(struct LDKu8slice ser); - export function QueryShortChannelIds_read(ser: Uint8Array): number { + // struct LDKCResult_NetAddressDecodeErrorZ NetAddress_read(struct LDKu8slice ser); + export function NetAddress_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.QueryShortChannelIds_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_NetAddress_read(encodeUint8Array(ser)); return nativeResponseValue; } - // struct LDKCVec_u8Z QueryShortChannelIds_write(const struct LDKQueryShortChannelIds *NONNULL_PTR obj); - export function QueryShortChannelIds_write(obj: number): Uint8Array { + // void UnsignedNodeAnnouncement_free(struct LDKUnsignedNodeAnnouncement this_obj); + export function UnsignedNodeAnnouncement_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.QueryShortChannelIds_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_UnsignedNodeAnnouncement_free(this_obj); + // debug statements here } - // struct LDKCVec_u8Z ReplyShortChannelIdsEnd_write(const struct LDKReplyShortChannelIdsEnd *NONNULL_PTR obj); - export function ReplyShortChannelIdsEnd_write(obj: number): Uint8Array { + // struct LDKNodeFeatures UnsignedNodeAnnouncement_get_features(const struct LDKUnsignedNodeAnnouncement *NONNULL_PTR this_ptr); + export function UnsignedNodeAnnouncement_get_features(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReplyShortChannelIdsEnd_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_UnsignedNodeAnnouncement_get_features(this_ptr); + return nativeResponseValue; } - // struct LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ ReplyShortChannelIdsEnd_read(struct LDKu8slice ser); - export function ReplyShortChannelIdsEnd_read(ser: Uint8Array): number { + // void UnsignedNodeAnnouncement_set_features(struct LDKUnsignedNodeAnnouncement *NONNULL_PTR this_ptr, struct LDKNodeFeatures val); + export function UnsignedNodeAnnouncement_set_features(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReplyShortChannelIdsEnd_read(encodeArray(ser)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_UnsignedNodeAnnouncement_set_features(this_ptr, val); + // debug statements here } - // MUST_USE_RES uint32_t QueryChannelRange_end_blocknum(const struct LDKQueryChannelRange *NONNULL_PTR this_arg); - export function QueryChannelRange_end_blocknum(this_arg: number): number { + // uint32_t UnsignedNodeAnnouncement_get_timestamp(const struct LDKUnsignedNodeAnnouncement *NONNULL_PTR this_ptr); + export function UnsignedNodeAnnouncement_get_timestamp(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.QueryChannelRange_end_blocknum(this_arg); + const nativeResponseValue = wasm.TS_UnsignedNodeAnnouncement_get_timestamp(this_ptr); return nativeResponseValue; } - // struct LDKCVec_u8Z QueryChannelRange_write(const struct LDKQueryChannelRange *NONNULL_PTR obj); - export function QueryChannelRange_write(obj: number): Uint8Array { + // void UnsignedNodeAnnouncement_set_timestamp(struct LDKUnsignedNodeAnnouncement *NONNULL_PTR this_ptr, uint32_t val); + export function UnsignedNodeAnnouncement_set_timestamp(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.QueryChannelRange_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_UnsignedNodeAnnouncement_set_timestamp(this_ptr, val); + // debug statements here } - // struct LDKCResult_QueryChannelRangeDecodeErrorZ QueryChannelRange_read(struct LDKu8slice ser); - export function QueryChannelRange_read(ser: Uint8Array): number { + // struct LDKPublicKey UnsignedNodeAnnouncement_get_node_id(const struct LDKUnsignedNodeAnnouncement *NONNULL_PTR this_ptr); + export function UnsignedNodeAnnouncement_get_node_id(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.QueryChannelRange_read(encodeArray(ser)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_UnsignedNodeAnnouncement_get_node_id(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCResult_ReplyChannelRangeDecodeErrorZ ReplyChannelRange_read(struct LDKu8slice ser); - export function ReplyChannelRange_read(ser: Uint8Array): number { + // void UnsignedNodeAnnouncement_set_node_id(struct LDKUnsignedNodeAnnouncement *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function UnsignedNodeAnnouncement_set_node_id(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReplyChannelRange_read(encodeArray(ser)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_UnsignedNodeAnnouncement_set_node_id(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKCVec_u8Z ReplyChannelRange_write(const struct LDKReplyChannelRange *NONNULL_PTR obj); - export function ReplyChannelRange_write(obj: number): Uint8Array { + // const uint8_t (*UnsignedNodeAnnouncement_get_rgb(const struct LDKUnsignedNodeAnnouncement *NONNULL_PTR this_ptr))[3]; + export function UnsignedNodeAnnouncement_get_rgb(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReplyChannelRange_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_UnsignedNodeAnnouncement_get_rgb(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCVec_u8Z GossipTimestampFilter_write(const struct LDKGossipTimestampFilter *NONNULL_PTR obj); - export function GossipTimestampFilter_write(obj: number): Uint8Array { + // void UnsignedNodeAnnouncement_set_rgb(struct LDKUnsignedNodeAnnouncement *NONNULL_PTR this_ptr, struct LDKThreeBytes val); + export function UnsignedNodeAnnouncement_set_rgb(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.GossipTimestampFilter_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_UnsignedNodeAnnouncement_set_rgb(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKCResult_GossipTimestampFilterDecodeErrorZ GossipTimestampFilter_read(struct LDKu8slice ser); - export function GossipTimestampFilter_read(ser: Uint8Array): number { + // const uint8_t (*UnsignedNodeAnnouncement_get_alias(const struct LDKUnsignedNodeAnnouncement *NONNULL_PTR this_ptr))[32]; + export function UnsignedNodeAnnouncement_get_alias(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.GossipTimestampFilter_read(encodeArray(ser)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_UnsignedNodeAnnouncement_get_alias(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void CustomMessageHandler_free(struct LDKCustomMessageHandler this_ptr); - export function CustomMessageHandler_free(this_ptr: number): void { + // void UnsignedNodeAnnouncement_set_alias(struct LDKUnsignedNodeAnnouncement *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function UnsignedNodeAnnouncement_set_alias(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CustomMessageHandler_free(this_ptr); + const nativeResponseValue = wasm.TS_UnsignedNodeAnnouncement_set_alias(this_ptr, encodeUint8Array(val)); // debug statements here } - // void IgnoringMessageHandler_free(struct LDKIgnoringMessageHandler this_obj); - export function IgnoringMessageHandler_free(this_obj: number): void { + // void UnsignedNodeAnnouncement_set_addresses(struct LDKUnsignedNodeAnnouncement *NONNULL_PTR this_ptr, struct LDKCVec_NetAddressZ val); + export function UnsignedNodeAnnouncement_set_addresses(this_ptr: number, val: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.IgnoringMessageHandler_free(this_obj); + const nativeResponseValue = wasm.TS_UnsignedNodeAnnouncement_set_addresses(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKIgnoringMessageHandler IgnoringMessageHandler_new(void); - export function IgnoringMessageHandler_new(): number { + // uint64_t UnsignedNodeAnnouncement_clone_ptr(LDKUnsignedNodeAnnouncement *NONNULL_PTR arg); + export function UnsignedNodeAnnouncement_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.IgnoringMessageHandler_new(); + const nativeResponseValue = wasm.TS_UnsignedNodeAnnouncement_clone_ptr(arg); return nativeResponseValue; } - // struct LDKMessageSendEventsProvider IgnoringMessageHandler_as_MessageSendEventsProvider(const struct LDKIgnoringMessageHandler *NONNULL_PTR this_arg); - export function IgnoringMessageHandler_as_MessageSendEventsProvider(this_arg: number): number { + // struct LDKUnsignedNodeAnnouncement UnsignedNodeAnnouncement_clone(const struct LDKUnsignedNodeAnnouncement *NONNULL_PTR orig); + export function UnsignedNodeAnnouncement_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.IgnoringMessageHandler_as_MessageSendEventsProvider(this_arg); + const nativeResponseValue = wasm.TS_UnsignedNodeAnnouncement_clone(orig); return nativeResponseValue; } - // struct LDKRoutingMessageHandler IgnoringMessageHandler_as_RoutingMessageHandler(const struct LDKIgnoringMessageHandler *NONNULL_PTR this_arg); - export function IgnoringMessageHandler_as_RoutingMessageHandler(this_arg: number): number { + // void NodeAnnouncement_free(struct LDKNodeAnnouncement this_obj); + export function NodeAnnouncement_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.IgnoringMessageHandler_as_RoutingMessageHandler(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_NodeAnnouncement_free(this_obj); + // debug statements here } - // struct LDKCustomMessageReader IgnoringMessageHandler_as_CustomMessageReader(const struct LDKIgnoringMessageHandler *NONNULL_PTR this_arg); - export function IgnoringMessageHandler_as_CustomMessageReader(this_arg: number): number { + // struct LDKSignature NodeAnnouncement_get_signature(const struct LDKNodeAnnouncement *NONNULL_PTR this_ptr); + export function NodeAnnouncement_get_signature(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.IgnoringMessageHandler_as_CustomMessageReader(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_NodeAnnouncement_get_signature(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCustomMessageHandler IgnoringMessageHandler_as_CustomMessageHandler(const struct LDKIgnoringMessageHandler *NONNULL_PTR this_arg); - export function IgnoringMessageHandler_as_CustomMessageHandler(this_arg: number): number { + // void NodeAnnouncement_set_signature(struct LDKNodeAnnouncement *NONNULL_PTR this_ptr, struct LDKSignature val); + export function NodeAnnouncement_set_signature(this_ptr: number, val: Uint8Array): void { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_NodeAnnouncement_set_signature(this_ptr, encodeUint8Array(val)); + // debug statements here + } + // struct LDKUnsignedNodeAnnouncement NodeAnnouncement_get_contents(const struct LDKNodeAnnouncement *NONNULL_PTR this_ptr); + export function NodeAnnouncement_get_contents(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.IgnoringMessageHandler_as_CustomMessageHandler(this_arg); + const nativeResponseValue = wasm.TS_NodeAnnouncement_get_contents(this_ptr); return nativeResponseValue; } - // void ErroringMessageHandler_free(struct LDKErroringMessageHandler this_obj); - export function ErroringMessageHandler_free(this_obj: number): void { + // void NodeAnnouncement_set_contents(struct LDKNodeAnnouncement *NONNULL_PTR this_ptr, struct LDKUnsignedNodeAnnouncement val); + export function NodeAnnouncement_set_contents(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ErroringMessageHandler_free(this_obj); + const nativeResponseValue = wasm.TS_NodeAnnouncement_set_contents(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKErroringMessageHandler ErroringMessageHandler_new(void); - export function ErroringMessageHandler_new(): number { + // MUST_USE_RES struct LDKNodeAnnouncement NodeAnnouncement_new(struct LDKSignature signature_arg, struct LDKUnsignedNodeAnnouncement contents_arg); + export function NodeAnnouncement_new(signature_arg: Uint8Array, contents_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ErroringMessageHandler_new(); + const nativeResponseValue = wasm.TS_NodeAnnouncement_new(encodeUint8Array(signature_arg), contents_arg); return nativeResponseValue; } - // struct LDKMessageSendEventsProvider ErroringMessageHandler_as_MessageSendEventsProvider(const struct LDKErroringMessageHandler *NONNULL_PTR this_arg); - export function ErroringMessageHandler_as_MessageSendEventsProvider(this_arg: number): number { + // uint64_t NodeAnnouncement_clone_ptr(LDKNodeAnnouncement *NONNULL_PTR arg); + export function NodeAnnouncement_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ErroringMessageHandler_as_MessageSendEventsProvider(this_arg); + const nativeResponseValue = wasm.TS_NodeAnnouncement_clone_ptr(arg); return nativeResponseValue; } - // struct LDKChannelMessageHandler ErroringMessageHandler_as_ChannelMessageHandler(const struct LDKErroringMessageHandler *NONNULL_PTR this_arg); - export function ErroringMessageHandler_as_ChannelMessageHandler(this_arg: number): number { + // struct LDKNodeAnnouncement NodeAnnouncement_clone(const struct LDKNodeAnnouncement *NONNULL_PTR orig); + export function NodeAnnouncement_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ErroringMessageHandler_as_ChannelMessageHandler(this_arg); + const nativeResponseValue = wasm.TS_NodeAnnouncement_clone(orig); return nativeResponseValue; } - // void MessageHandler_free(struct LDKMessageHandler this_obj); - export function MessageHandler_free(this_obj: number): void { + // void UnsignedChannelAnnouncement_free(struct LDKUnsignedChannelAnnouncement this_obj); + export function UnsignedChannelAnnouncement_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageHandler_free(this_obj); + const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_free(this_obj); // debug statements here } - // const struct LDKChannelMessageHandler *MessageHandler_get_chan_handler(const struct LDKMessageHandler *NONNULL_PTR this_ptr); - export function MessageHandler_get_chan_handler(this_ptr: number): number { + // struct LDKChannelFeatures UnsignedChannelAnnouncement_get_features(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr); + export function UnsignedChannelAnnouncement_get_features(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageHandler_get_chan_handler(this_ptr); + const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_get_features(this_ptr); return nativeResponseValue; } - // void MessageHandler_set_chan_handler(struct LDKMessageHandler *NONNULL_PTR this_ptr, struct LDKChannelMessageHandler val); - export function MessageHandler_set_chan_handler(this_ptr: number, val: number): void { + // void UnsignedChannelAnnouncement_set_features(struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKChannelFeatures val); + export function UnsignedChannelAnnouncement_set_features(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageHandler_set_chan_handler(this_ptr, val); + const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_set_features(this_ptr, val); // debug statements here } - // const struct LDKRoutingMessageHandler *MessageHandler_get_route_handler(const struct LDKMessageHandler *NONNULL_PTR this_ptr); - export function MessageHandler_get_route_handler(this_ptr: number): number { + // const uint8_t (*UnsignedChannelAnnouncement_get_chain_hash(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr))[32]; + export function UnsignedChannelAnnouncement_get_chain_hash(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageHandler_get_route_handler(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_get_chain_hash(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void MessageHandler_set_route_handler(struct LDKMessageHandler *NONNULL_PTR this_ptr, struct LDKRoutingMessageHandler val); - export function MessageHandler_set_route_handler(this_ptr: number, val: number): void { + // void UnsignedChannelAnnouncement_set_chain_hash(struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function UnsignedChannelAnnouncement_set_chain_hash(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageHandler_set_route_handler(this_ptr, val); + const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_set_chain_hash(this_ptr, encodeUint8Array(val)); // debug statements here } - // MUST_USE_RES struct LDKMessageHandler MessageHandler_new(struct LDKChannelMessageHandler chan_handler_arg, struct LDKRoutingMessageHandler route_handler_arg); - export function MessageHandler_new(chan_handler_arg: number, route_handler_arg: number): number { + // uint64_t UnsignedChannelAnnouncement_get_short_channel_id(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr); + export function UnsignedChannelAnnouncement_get_short_channel_id(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MessageHandler_new(chan_handler_arg, route_handler_arg); + const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_get_short_channel_id(this_ptr); return nativeResponseValue; } - // uint64_t SocketDescriptor_clone_ptr(LDKSocketDescriptor *NONNULL_PTR arg); - export function SocketDescriptor_clone_ptr(arg: number): number { + // void UnsignedChannelAnnouncement_set_short_channel_id(struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr, uint64_t val); + export function UnsignedChannelAnnouncement_set_short_channel_id(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SocketDescriptor_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_set_short_channel_id(this_ptr, val); + // debug statements here } - // struct LDKSocketDescriptor SocketDescriptor_clone(const struct LDKSocketDescriptor *NONNULL_PTR orig); - export function SocketDescriptor_clone(orig: number): number { + // struct LDKPublicKey UnsignedChannelAnnouncement_get_node_id_1(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr); + export function UnsignedChannelAnnouncement_get_node_id_1(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SocketDescriptor_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_get_node_id_1(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void SocketDescriptor_free(struct LDKSocketDescriptor this_ptr); - export function SocketDescriptor_free(this_ptr: number): void { + // void UnsignedChannelAnnouncement_set_node_id_1(struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function UnsignedChannelAnnouncement_set_node_id_1(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SocketDescriptor_free(this_ptr); + const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_set_node_id_1(this_ptr, encodeUint8Array(val)); // debug statements here } - // void PeerHandleError_free(struct LDKPeerHandleError this_obj); - export function PeerHandleError_free(this_obj: number): void { + // struct LDKPublicKey UnsignedChannelAnnouncement_get_node_id_2(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr); + export function UnsignedChannelAnnouncement_get_node_id_2(this_ptr: number): Uint8Array { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_get_node_id_2(this_ptr); + return decodeUint8Array(nativeResponseValue); + } + // void UnsignedChannelAnnouncement_set_node_id_2(struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function UnsignedChannelAnnouncement_set_node_id_2(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PeerHandleError_free(this_obj); + const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_set_node_id_2(this_ptr, encodeUint8Array(val)); // debug statements here } - // bool PeerHandleError_get_no_connection_possible(const struct LDKPeerHandleError *NONNULL_PTR this_ptr); - export function PeerHandleError_get_no_connection_possible(this_ptr: number): boolean { + // struct LDKPublicKey UnsignedChannelAnnouncement_get_bitcoin_key_1(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr); + export function UnsignedChannelAnnouncement_get_bitcoin_key_1(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PeerHandleError_get_no_connection_possible(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_get_bitcoin_key_1(this_ptr); + return decodeUint8Array(nativeResponseValue); + } + // void UnsignedChannelAnnouncement_set_bitcoin_key_1(struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function UnsignedChannelAnnouncement_set_bitcoin_key_1(this_ptr: number, val: Uint8Array): void { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_set_bitcoin_key_1(this_ptr, encodeUint8Array(val)); + // debug statements here } - // void PeerHandleError_set_no_connection_possible(struct LDKPeerHandleError *NONNULL_PTR this_ptr, bool val); - export function PeerHandleError_set_no_connection_possible(this_ptr: number, val: boolean): void { + // struct LDKPublicKey UnsignedChannelAnnouncement_get_bitcoin_key_2(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr); + export function UnsignedChannelAnnouncement_get_bitcoin_key_2(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PeerHandleError_set_no_connection_possible(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_get_bitcoin_key_2(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES struct LDKPeerHandleError PeerHandleError_new(bool no_connection_possible_arg); - export function PeerHandleError_new(no_connection_possible_arg: boolean): number { + // void UnsignedChannelAnnouncement_set_bitcoin_key_2(struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function UnsignedChannelAnnouncement_set_bitcoin_key_2(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PeerHandleError_new(no_connection_possible_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_set_bitcoin_key_2(this_ptr, encodeUint8Array(val)); + // debug statements here } - // uint64_t PeerHandleError_clone_ptr(LDKPeerHandleError *NONNULL_PTR arg); - export function PeerHandleError_clone_ptr(arg: number): number { + // uint64_t UnsignedChannelAnnouncement_clone_ptr(LDKUnsignedChannelAnnouncement *NONNULL_PTR arg); + export function UnsignedChannelAnnouncement_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PeerHandleError_clone_ptr(arg); + const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_clone_ptr(arg); return nativeResponseValue; } - // struct LDKPeerHandleError PeerHandleError_clone(const struct LDKPeerHandleError *NONNULL_PTR orig); - export function PeerHandleError_clone(orig: number): number { + // struct LDKUnsignedChannelAnnouncement UnsignedChannelAnnouncement_clone(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR orig); + export function UnsignedChannelAnnouncement_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PeerHandleError_clone(orig); + const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_clone(orig); return nativeResponseValue; } - // void PeerManager_free(struct LDKPeerManager this_obj); - export function PeerManager_free(this_obj: number): void { + // void ChannelAnnouncement_free(struct LDKChannelAnnouncement this_obj); + export function ChannelAnnouncement_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PeerManager_free(this_obj); + const nativeResponseValue = wasm.TS_ChannelAnnouncement_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); - export function PeerManager_new(message_handler: number, our_node_secret: Uint8Array, ephemeral_random_data: Uint8Array, logger: number, custom_message_handler: number): number { + // struct LDKSignature ChannelAnnouncement_get_node_signature_1(const struct LDKChannelAnnouncement *NONNULL_PTR this_ptr); + export function ChannelAnnouncement_get_node_signature_1(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PeerManager_new(message_handler, encodeArray(our_node_secret), encodeArray(ephemeral_random_data), logger, custom_message_handler); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelAnnouncement_get_node_signature_1(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES struct LDKCVec_PublicKeyZ PeerManager_get_peer_node_ids(const struct LDKPeerManager *NONNULL_PTR this_arg); - export function PeerManager_get_peer_node_ids(this_arg: number): Uint8Array[] { + // void ChannelAnnouncement_set_node_signature_1(struct LDKChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKSignature val); + export function ChannelAnnouncement_set_node_signature_1(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PeerManager_get_peer_node_ids(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelAnnouncement_set_node_signature_1(this_ptr, encodeUint8Array(val)); + // debug statements here } - // MUST_USE_RES struct LDKCResult_CVec_u8ZPeerHandleErrorZ PeerManager_new_outbound_connection(const struct LDKPeerManager *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, struct LDKSocketDescriptor descriptor); - export function PeerManager_new_outbound_connection(this_arg: number, their_node_id: Uint8Array, descriptor: number): number { + // struct LDKSignature ChannelAnnouncement_get_node_signature_2(const struct LDKChannelAnnouncement *NONNULL_PTR this_ptr); + export function ChannelAnnouncement_get_node_signature_2(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PeerManager_new_outbound_connection(this_arg, encodeArray(their_node_id), descriptor); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelAnnouncement_get_node_signature_2(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES struct LDKCResult_NonePeerHandleErrorZ PeerManager_new_inbound_connection(const struct LDKPeerManager *NONNULL_PTR this_arg, struct LDKSocketDescriptor descriptor); - export function PeerManager_new_inbound_connection(this_arg: number, descriptor: number): number { + // void ChannelAnnouncement_set_node_signature_2(struct LDKChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKSignature val); + export function ChannelAnnouncement_set_node_signature_2(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PeerManager_new_inbound_connection(this_arg, descriptor); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelAnnouncement_set_node_signature_2(this_ptr, encodeUint8Array(val)); + // debug statements here } - // MUST_USE_RES struct LDKCResult_NonePeerHandleErrorZ PeerManager_write_buffer_space_avail(const struct LDKPeerManager *NONNULL_PTR this_arg, struct LDKSocketDescriptor *NONNULL_PTR descriptor); - export function PeerManager_write_buffer_space_avail(this_arg: number, descriptor: number): number { + // struct LDKSignature ChannelAnnouncement_get_bitcoin_signature_1(const struct LDKChannelAnnouncement *NONNULL_PTR this_ptr); + export function ChannelAnnouncement_get_bitcoin_signature_1(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PeerManager_write_buffer_space_avail(this_arg, descriptor); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelAnnouncement_get_bitcoin_signature_1(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES struct LDKCResult_boolPeerHandleErrorZ PeerManager_read_event(const struct LDKPeerManager *NONNULL_PTR this_arg, struct LDKSocketDescriptor *NONNULL_PTR peer_descriptor, struct LDKu8slice data); - export function PeerManager_read_event(this_arg: number, peer_descriptor: number, data: Uint8Array): number { + // void ChannelAnnouncement_set_bitcoin_signature_1(struct LDKChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKSignature val); + export function ChannelAnnouncement_set_bitcoin_signature_1(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PeerManager_read_event(this_arg, peer_descriptor, encodeArray(data)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelAnnouncement_set_bitcoin_signature_1(this_ptr, encodeUint8Array(val)); + // debug statements here } - // void PeerManager_process_events(const struct LDKPeerManager *NONNULL_PTR this_arg); - export function PeerManager_process_events(this_arg: number): void { + // struct LDKSignature ChannelAnnouncement_get_bitcoin_signature_2(const struct LDKChannelAnnouncement *NONNULL_PTR this_ptr); + export function ChannelAnnouncement_get_bitcoin_signature_2(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PeerManager_process_events(this_arg); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelAnnouncement_get_bitcoin_signature_2(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void PeerManager_socket_disconnected(const struct LDKPeerManager *NONNULL_PTR this_arg, const struct LDKSocketDescriptor *NONNULL_PTR descriptor); - export function PeerManager_socket_disconnected(this_arg: number, descriptor: number): void { + // void ChannelAnnouncement_set_bitcoin_signature_2(struct LDKChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKSignature val); + export function ChannelAnnouncement_set_bitcoin_signature_2(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PeerManager_socket_disconnected(this_arg, descriptor); + const nativeResponseValue = wasm.TS_ChannelAnnouncement_set_bitcoin_signature_2(this_ptr, encodeUint8Array(val)); // debug statements here } - // void PeerManager_disconnect_by_node_id(const struct LDKPeerManager *NONNULL_PTR this_arg, struct LDKPublicKey node_id, bool no_connection_possible); - export function PeerManager_disconnect_by_node_id(this_arg: number, node_id: Uint8Array, no_connection_possible: boolean): void { + // struct LDKUnsignedChannelAnnouncement ChannelAnnouncement_get_contents(const struct LDKChannelAnnouncement *NONNULL_PTR this_ptr); + export function ChannelAnnouncement_get_contents(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PeerManager_disconnect_by_node_id(this_arg, encodeArray(node_id), no_connection_possible); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelAnnouncement_get_contents(this_ptr); + return nativeResponseValue; } - // void PeerManager_disconnect_all_peers(const struct LDKPeerManager *NONNULL_PTR this_arg); - export function PeerManager_disconnect_all_peers(this_arg: number): void { + // void ChannelAnnouncement_set_contents(struct LDKChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKUnsignedChannelAnnouncement val); + export function ChannelAnnouncement_set_contents(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PeerManager_disconnect_all_peers(this_arg); + const nativeResponseValue = wasm.TS_ChannelAnnouncement_set_contents(this_ptr, val); // debug statements here } - // void PeerManager_timer_tick_occurred(const struct LDKPeerManager *NONNULL_PTR this_arg); - export function PeerManager_timer_tick_occurred(this_arg: number): void { + // MUST_USE_RES struct LDKChannelAnnouncement ChannelAnnouncement_new(struct LDKSignature node_signature_1_arg, struct LDKSignature node_signature_2_arg, struct LDKSignature bitcoin_signature_1_arg, struct LDKSignature bitcoin_signature_2_arg, struct LDKUnsignedChannelAnnouncement contents_arg); + export function ChannelAnnouncement_new(node_signature_1_arg: Uint8Array, node_signature_2_arg: Uint8Array, bitcoin_signature_1_arg: Uint8Array, bitcoin_signature_2_arg: Uint8Array, contents_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PeerManager_timer_tick_occurred(this_arg); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelAnnouncement_new(encodeUint8Array(node_signature_1_arg), encodeUint8Array(node_signature_2_arg), encodeUint8Array(bitcoin_signature_1_arg), encodeUint8Array(bitcoin_signature_2_arg), contents_arg); + return nativeResponseValue; } - // uint64_t htlc_success_tx_weight(bool opt_anchors); - export function htlc_success_tx_weight(opt_anchors: boolean): number { + // uint64_t ChannelAnnouncement_clone_ptr(LDKChannelAnnouncement *NONNULL_PTR arg); + export function ChannelAnnouncement_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.htlc_success_tx_weight(opt_anchors); + const nativeResponseValue = wasm.TS_ChannelAnnouncement_clone_ptr(arg); return nativeResponseValue; } - // uint64_t htlc_timeout_tx_weight(bool opt_anchors); - export function htlc_timeout_tx_weight(opt_anchors: boolean): number { + // struct LDKChannelAnnouncement ChannelAnnouncement_clone(const struct LDKChannelAnnouncement *NONNULL_PTR orig); + export function ChannelAnnouncement_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.htlc_timeout_tx_weight(opt_anchors); + const nativeResponseValue = wasm.TS_ChannelAnnouncement_clone(orig); return nativeResponseValue; } - // struct LDKThirtyTwoBytes build_commitment_secret(const uint8_t (*commitment_seed)[32], uint64_t idx); - export function build_commitment_secret(commitment_seed: Uint8Array, idx: number): Uint8Array { + // void UnsignedChannelUpdate_free(struct LDKUnsignedChannelUpdate this_obj); + export function UnsignedChannelUpdate_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.build_commitment_secret(encodeArray(commitment_seed), idx); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_UnsignedChannelUpdate_free(this_obj); + // debug statements here } - // struct LDKTransaction build_closing_transaction(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); - export function build_closing_transaction(to_holder_value_sat: number, to_counterparty_value_sat: number, to_holder_script: Uint8Array, to_counterparty_script: Uint8Array, funding_outpoint: number): Uint8Array { + // const uint8_t (*UnsignedChannelUpdate_get_chain_hash(const struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr))[32]; + export function UnsignedChannelUpdate_get_chain_hash(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.build_closing_transaction(to_holder_value_sat, to_counterparty_value_sat, encodeArray(to_holder_script), encodeArray(to_counterparty_script), funding_outpoint); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_UnsignedChannelUpdate_get_chain_hash(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCResult_SecretKeyErrorZ derive_private_key(struct LDKPublicKey per_commitment_point, const uint8_t (*base_secret)[32]); - export function derive_private_key(per_commitment_point: Uint8Array, base_secret: Uint8Array): number { + // void UnsignedChannelUpdate_set_chain_hash(struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function UnsignedChannelUpdate_set_chain_hash(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.derive_private_key(encodeArray(per_commitment_point), encodeArray(base_secret)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_UnsignedChannelUpdate_set_chain_hash(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKCResult_PublicKeyErrorZ derive_public_key(struct LDKPublicKey per_commitment_point, struct LDKPublicKey base_point); - export function derive_public_key(per_commitment_point: Uint8Array, base_point: Uint8Array): number { + // uint64_t UnsignedChannelUpdate_get_short_channel_id(const struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr); + export function UnsignedChannelUpdate_get_short_channel_id(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.derive_public_key(encodeArray(per_commitment_point), encodeArray(base_point)); + const nativeResponseValue = wasm.TS_UnsignedChannelUpdate_get_short_channel_id(this_ptr); return nativeResponseValue; } - // struct LDKCResult_SecretKeyErrorZ derive_private_revocation_key(const uint8_t (*per_commitment_secret)[32], const uint8_t (*countersignatory_revocation_base_secret)[32]); - export function derive_private_revocation_key(per_commitment_secret: Uint8Array, countersignatory_revocation_base_secret: Uint8Array): number { + // void UnsignedChannelUpdate_set_short_channel_id(struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr, uint64_t val); + export function UnsignedChannelUpdate_set_short_channel_id(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.derive_private_revocation_key(encodeArray(per_commitment_secret), encodeArray(countersignatory_revocation_base_secret)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_UnsignedChannelUpdate_set_short_channel_id(this_ptr, val); + // debug statements here } - // struct LDKCResult_PublicKeyErrorZ derive_public_revocation_key(struct LDKPublicKey per_commitment_point, struct LDKPublicKey countersignatory_revocation_base_point); - export function derive_public_revocation_key(per_commitment_point: Uint8Array, countersignatory_revocation_base_point: Uint8Array): number { + // uint32_t UnsignedChannelUpdate_get_timestamp(const struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr); + export function UnsignedChannelUpdate_get_timestamp(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.derive_public_revocation_key(encodeArray(per_commitment_point), encodeArray(countersignatory_revocation_base_point)); + const nativeResponseValue = wasm.TS_UnsignedChannelUpdate_get_timestamp(this_ptr); return nativeResponseValue; } - // void TxCreationKeys_free(struct LDKTxCreationKeys this_obj); - export function TxCreationKeys_free(this_obj: number): void { + // void UnsignedChannelUpdate_set_timestamp(struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr, uint32_t val); + export function UnsignedChannelUpdate_set_timestamp(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TxCreationKeys_free(this_obj); + const nativeResponseValue = wasm.TS_UnsignedChannelUpdate_set_timestamp(this_ptr, val); // debug statements here } - // struct LDKPublicKey TxCreationKeys_get_per_commitment_point(const struct LDKTxCreationKeys *NONNULL_PTR this_ptr); - export function TxCreationKeys_get_per_commitment_point(this_ptr: number): Uint8Array { + // uint8_t UnsignedChannelUpdate_get_flags(const struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr); + export function UnsignedChannelUpdate_get_flags(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TxCreationKeys_get_per_commitment_point(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_UnsignedChannelUpdate_get_flags(this_ptr); + return nativeResponseValue; } - // void TxCreationKeys_set_per_commitment_point(struct LDKTxCreationKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function TxCreationKeys_set_per_commitment_point(this_ptr: number, val: Uint8Array): void { + // void UnsignedChannelUpdate_set_flags(struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr, uint8_t val); + export function UnsignedChannelUpdate_set_flags(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TxCreationKeys_set_per_commitment_point(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_UnsignedChannelUpdate_set_flags(this_ptr, val); // debug statements here } - // struct LDKPublicKey TxCreationKeys_get_revocation_key(const struct LDKTxCreationKeys *NONNULL_PTR this_ptr); - export function TxCreationKeys_get_revocation_key(this_ptr: number): Uint8Array { + // uint16_t UnsignedChannelUpdate_get_cltv_expiry_delta(const struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr); + export function UnsignedChannelUpdate_get_cltv_expiry_delta(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TxCreationKeys_get_revocation_key(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_UnsignedChannelUpdate_get_cltv_expiry_delta(this_ptr); + return nativeResponseValue; } - // void TxCreationKeys_set_revocation_key(struct LDKTxCreationKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function TxCreationKeys_set_revocation_key(this_ptr: number, val: Uint8Array): void { + // void UnsignedChannelUpdate_set_cltv_expiry_delta(struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr, uint16_t val); + export function UnsignedChannelUpdate_set_cltv_expiry_delta(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TxCreationKeys_set_revocation_key(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_UnsignedChannelUpdate_set_cltv_expiry_delta(this_ptr, val); // debug statements here } - // struct LDKPublicKey TxCreationKeys_get_broadcaster_htlc_key(const struct LDKTxCreationKeys *NONNULL_PTR this_ptr); - export function TxCreationKeys_get_broadcaster_htlc_key(this_ptr: number): Uint8Array { + // uint64_t UnsignedChannelUpdate_get_htlc_minimum_msat(const struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr); + export function UnsignedChannelUpdate_get_htlc_minimum_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TxCreationKeys_get_broadcaster_htlc_key(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_UnsignedChannelUpdate_get_htlc_minimum_msat(this_ptr); + return nativeResponseValue; } - // void TxCreationKeys_set_broadcaster_htlc_key(struct LDKTxCreationKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function TxCreationKeys_set_broadcaster_htlc_key(this_ptr: number, val: Uint8Array): void { + // void UnsignedChannelUpdate_set_htlc_minimum_msat(struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr, uint64_t val); + export function UnsignedChannelUpdate_set_htlc_minimum_msat(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TxCreationKeys_set_broadcaster_htlc_key(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_UnsignedChannelUpdate_set_htlc_minimum_msat(this_ptr, val); // debug statements here } - // struct LDKPublicKey TxCreationKeys_get_countersignatory_htlc_key(const struct LDKTxCreationKeys *NONNULL_PTR this_ptr); - export function TxCreationKeys_get_countersignatory_htlc_key(this_ptr: number): Uint8Array { + // uint32_t UnsignedChannelUpdate_get_fee_base_msat(const struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr); + export function UnsignedChannelUpdate_get_fee_base_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TxCreationKeys_get_countersignatory_htlc_key(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_UnsignedChannelUpdate_get_fee_base_msat(this_ptr); + return nativeResponseValue; } - // void TxCreationKeys_set_countersignatory_htlc_key(struct LDKTxCreationKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function TxCreationKeys_set_countersignatory_htlc_key(this_ptr: number, val: Uint8Array): void { + // void UnsignedChannelUpdate_set_fee_base_msat(struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr, uint32_t val); + export function UnsignedChannelUpdate_set_fee_base_msat(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TxCreationKeys_set_countersignatory_htlc_key(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_UnsignedChannelUpdate_set_fee_base_msat(this_ptr, val); // debug statements here } - // struct LDKPublicKey TxCreationKeys_get_broadcaster_delayed_payment_key(const struct LDKTxCreationKeys *NONNULL_PTR this_ptr); - export function TxCreationKeys_get_broadcaster_delayed_payment_key(this_ptr: number): Uint8Array { + // uint32_t UnsignedChannelUpdate_get_fee_proportional_millionths(const struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr); + export function UnsignedChannelUpdate_get_fee_proportional_millionths(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TxCreationKeys_get_broadcaster_delayed_payment_key(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_UnsignedChannelUpdate_get_fee_proportional_millionths(this_ptr); + return nativeResponseValue; } - // void TxCreationKeys_set_broadcaster_delayed_payment_key(struct LDKTxCreationKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function TxCreationKeys_set_broadcaster_delayed_payment_key(this_ptr: number, val: Uint8Array): void { + // void UnsignedChannelUpdate_set_fee_proportional_millionths(struct LDKUnsignedChannelUpdate *NONNULL_PTR this_ptr, uint32_t val); + export function UnsignedChannelUpdate_set_fee_proportional_millionths(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TxCreationKeys_set_broadcaster_delayed_payment_key(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_UnsignedChannelUpdate_set_fee_proportional_millionths(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKTxCreationKeys TxCreationKeys_new(struct LDKPublicKey per_commitment_point_arg, struct LDKPublicKey revocation_key_arg, struct LDKPublicKey broadcaster_htlc_key_arg, struct LDKPublicKey countersignatory_htlc_key_arg, struct LDKPublicKey broadcaster_delayed_payment_key_arg); - export function TxCreationKeys_new(per_commitment_point_arg: Uint8Array, revocation_key_arg: Uint8Array, broadcaster_htlc_key_arg: Uint8Array, countersignatory_htlc_key_arg: Uint8Array, broadcaster_delayed_payment_key_arg: Uint8Array): number { + // uint64_t UnsignedChannelUpdate_clone_ptr(LDKUnsignedChannelUpdate *NONNULL_PTR arg); + export function UnsignedChannelUpdate_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TxCreationKeys_new(encodeArray(per_commitment_point_arg), encodeArray(revocation_key_arg), encodeArray(broadcaster_htlc_key_arg), encodeArray(countersignatory_htlc_key_arg), encodeArray(broadcaster_delayed_payment_key_arg)); + const nativeResponseValue = wasm.TS_UnsignedChannelUpdate_clone_ptr(arg); return nativeResponseValue; } - // uint64_t TxCreationKeys_clone_ptr(LDKTxCreationKeys *NONNULL_PTR arg); - export function TxCreationKeys_clone_ptr(arg: number): number { + // struct LDKUnsignedChannelUpdate UnsignedChannelUpdate_clone(const struct LDKUnsignedChannelUpdate *NONNULL_PTR orig); + export function UnsignedChannelUpdate_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TxCreationKeys_clone_ptr(arg); + const nativeResponseValue = wasm.TS_UnsignedChannelUpdate_clone(orig); return nativeResponseValue; } - // struct LDKTxCreationKeys TxCreationKeys_clone(const struct LDKTxCreationKeys *NONNULL_PTR orig); - export function TxCreationKeys_clone(orig: number): number { + // void ChannelUpdate_free(struct LDKChannelUpdate this_obj); + export function ChannelUpdate_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TxCreationKeys_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelUpdate_free(this_obj); + // debug statements here } - // struct LDKCVec_u8Z TxCreationKeys_write(const struct LDKTxCreationKeys *NONNULL_PTR obj); - export function TxCreationKeys_write(obj: number): Uint8Array { + // struct LDKSignature ChannelUpdate_get_signature(const struct LDKChannelUpdate *NONNULL_PTR this_ptr); + export function ChannelUpdate_get_signature(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TxCreationKeys_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelUpdate_get_signature(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCResult_TxCreationKeysDecodeErrorZ TxCreationKeys_read(struct LDKu8slice ser); - export function TxCreationKeys_read(ser: Uint8Array): number { + // void ChannelUpdate_set_signature(struct LDKChannelUpdate *NONNULL_PTR this_ptr, struct LDKSignature val); + export function ChannelUpdate_set_signature(this_ptr: number, val: Uint8Array): void { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_ChannelUpdate_set_signature(this_ptr, encodeUint8Array(val)); + // debug statements here + } + // struct LDKUnsignedChannelUpdate ChannelUpdate_get_contents(const struct LDKChannelUpdate *NONNULL_PTR this_ptr); + export function ChannelUpdate_get_contents(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TxCreationKeys_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_ChannelUpdate_get_contents(this_ptr); return nativeResponseValue; } - // void ChannelPublicKeys_free(struct LDKChannelPublicKeys this_obj); - export function ChannelPublicKeys_free(this_obj: number): void { + // void ChannelUpdate_set_contents(struct LDKChannelUpdate *NONNULL_PTR this_ptr, struct LDKUnsignedChannelUpdate val); + export function ChannelUpdate_set_contents(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelPublicKeys_free(this_obj); + const nativeResponseValue = wasm.TS_ChannelUpdate_set_contents(this_ptr, val); // debug statements here } - // struct LDKPublicKey ChannelPublicKeys_get_funding_pubkey(const struct LDKChannelPublicKeys *NONNULL_PTR this_ptr); - export function ChannelPublicKeys_get_funding_pubkey(this_ptr: number): Uint8Array { + // MUST_USE_RES struct LDKChannelUpdate ChannelUpdate_new(struct LDKSignature signature_arg, struct LDKUnsignedChannelUpdate contents_arg); + export function ChannelUpdate_new(signature_arg: Uint8Array, contents_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelPublicKeys_get_funding_pubkey(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelUpdate_new(encodeUint8Array(signature_arg), contents_arg); + return nativeResponseValue; } - // void ChannelPublicKeys_set_funding_pubkey(struct LDKChannelPublicKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function ChannelPublicKeys_set_funding_pubkey(this_ptr: number, val: Uint8Array): void { + // uint64_t ChannelUpdate_clone_ptr(LDKChannelUpdate *NONNULL_PTR arg); + export function ChannelUpdate_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelPublicKeys_set_funding_pubkey(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelUpdate_clone_ptr(arg); + return nativeResponseValue; } - // struct LDKPublicKey ChannelPublicKeys_get_revocation_basepoint(const struct LDKChannelPublicKeys *NONNULL_PTR this_ptr); - export function ChannelPublicKeys_get_revocation_basepoint(this_ptr: number): Uint8Array { + // struct LDKChannelUpdate ChannelUpdate_clone(const struct LDKChannelUpdate *NONNULL_PTR orig); + export function ChannelUpdate_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelPublicKeys_get_revocation_basepoint(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelUpdate_clone(orig); + return nativeResponseValue; } - // void ChannelPublicKeys_set_revocation_basepoint(struct LDKChannelPublicKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function ChannelPublicKeys_set_revocation_basepoint(this_ptr: number, val: Uint8Array): void { + // void QueryChannelRange_free(struct LDKQueryChannelRange this_obj); + export function QueryChannelRange_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelPublicKeys_set_revocation_basepoint(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_QueryChannelRange_free(this_obj); // debug statements here } - // struct LDKPublicKey ChannelPublicKeys_get_payment_point(const struct LDKChannelPublicKeys *NONNULL_PTR this_ptr); - export function ChannelPublicKeys_get_payment_point(this_ptr: number): Uint8Array { + // const uint8_t (*QueryChannelRange_get_chain_hash(const struct LDKQueryChannelRange *NONNULL_PTR this_ptr))[32]; + export function QueryChannelRange_get_chain_hash(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelPublicKeys_get_payment_point(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_QueryChannelRange_get_chain_hash(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void ChannelPublicKeys_set_payment_point(struct LDKChannelPublicKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function ChannelPublicKeys_set_payment_point(this_ptr: number, val: Uint8Array): void { + // void QueryChannelRange_set_chain_hash(struct LDKQueryChannelRange *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function QueryChannelRange_set_chain_hash(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelPublicKeys_set_payment_point(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_QueryChannelRange_set_chain_hash(this_ptr, encodeUint8Array(val)); // debug statements here } - // struct LDKPublicKey ChannelPublicKeys_get_delayed_payment_basepoint(const struct LDKChannelPublicKeys *NONNULL_PTR this_ptr); - export function ChannelPublicKeys_get_delayed_payment_basepoint(this_ptr: number): Uint8Array { + // uint32_t QueryChannelRange_get_first_blocknum(const struct LDKQueryChannelRange *NONNULL_PTR this_ptr); + export function QueryChannelRange_get_first_blocknum(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelPublicKeys_get_delayed_payment_basepoint(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_QueryChannelRange_get_first_blocknum(this_ptr); + return nativeResponseValue; } - // void ChannelPublicKeys_set_delayed_payment_basepoint(struct LDKChannelPublicKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function ChannelPublicKeys_set_delayed_payment_basepoint(this_ptr: number, val: Uint8Array): void { + // void QueryChannelRange_set_first_blocknum(struct LDKQueryChannelRange *NONNULL_PTR this_ptr, uint32_t val); + export function QueryChannelRange_set_first_blocknum(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelPublicKeys_set_delayed_payment_basepoint(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_QueryChannelRange_set_first_blocknum(this_ptr, val); // debug statements here } - // struct LDKPublicKey ChannelPublicKeys_get_htlc_basepoint(const struct LDKChannelPublicKeys *NONNULL_PTR this_ptr); - export function ChannelPublicKeys_get_htlc_basepoint(this_ptr: number): Uint8Array { + // uint32_t QueryChannelRange_get_number_of_blocks(const struct LDKQueryChannelRange *NONNULL_PTR this_ptr); + export function QueryChannelRange_get_number_of_blocks(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelPublicKeys_get_htlc_basepoint(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_QueryChannelRange_get_number_of_blocks(this_ptr); + return nativeResponseValue; } - // void ChannelPublicKeys_set_htlc_basepoint(struct LDKChannelPublicKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function ChannelPublicKeys_set_htlc_basepoint(this_ptr: number, val: Uint8Array): void { + // void QueryChannelRange_set_number_of_blocks(struct LDKQueryChannelRange *NONNULL_PTR this_ptr, uint32_t val); + export function QueryChannelRange_set_number_of_blocks(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelPublicKeys_set_htlc_basepoint(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_QueryChannelRange_set_number_of_blocks(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKChannelPublicKeys ChannelPublicKeys_new(struct LDKPublicKey funding_pubkey_arg, struct LDKPublicKey revocation_basepoint_arg, struct LDKPublicKey payment_point_arg, struct LDKPublicKey delayed_payment_basepoint_arg, struct LDKPublicKey htlc_basepoint_arg); - export function ChannelPublicKeys_new(funding_pubkey_arg: Uint8Array, revocation_basepoint_arg: Uint8Array, payment_point_arg: Uint8Array, delayed_payment_basepoint_arg: Uint8Array, htlc_basepoint_arg: Uint8Array): number { + // MUST_USE_RES struct LDKQueryChannelRange QueryChannelRange_new(struct LDKThirtyTwoBytes chain_hash_arg, uint32_t first_blocknum_arg, uint32_t number_of_blocks_arg); + export function QueryChannelRange_new(chain_hash_arg: Uint8Array, first_blocknum_arg: number, number_of_blocks_arg: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_QueryChannelRange_new(encodeUint8Array(chain_hash_arg), first_blocknum_arg, number_of_blocks_arg); + return nativeResponseValue; + } + // uint64_t QueryChannelRange_clone_ptr(LDKQueryChannelRange *NONNULL_PTR arg); + export function QueryChannelRange_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelPublicKeys_new(encodeArray(funding_pubkey_arg), encodeArray(revocation_basepoint_arg), encodeArray(payment_point_arg), encodeArray(delayed_payment_basepoint_arg), encodeArray(htlc_basepoint_arg)); + const nativeResponseValue = wasm.TS_QueryChannelRange_clone_ptr(arg); return nativeResponseValue; } - // uint64_t ChannelPublicKeys_clone_ptr(LDKChannelPublicKeys *NONNULL_PTR arg); - export function ChannelPublicKeys_clone_ptr(arg: number): number { + // struct LDKQueryChannelRange QueryChannelRange_clone(const struct LDKQueryChannelRange *NONNULL_PTR orig); + export function QueryChannelRange_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelPublicKeys_clone_ptr(arg); + const nativeResponseValue = wasm.TS_QueryChannelRange_clone(orig); return nativeResponseValue; } - // struct LDKChannelPublicKeys ChannelPublicKeys_clone(const struct LDKChannelPublicKeys *NONNULL_PTR orig); - export function ChannelPublicKeys_clone(orig: number): number { + // void ReplyChannelRange_free(struct LDKReplyChannelRange this_obj); + export function ReplyChannelRange_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelPublicKeys_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ReplyChannelRange_free(this_obj); + // debug statements here } - // struct LDKCVec_u8Z ChannelPublicKeys_write(const struct LDKChannelPublicKeys *NONNULL_PTR obj); - export function ChannelPublicKeys_write(obj: number): Uint8Array { + // const uint8_t (*ReplyChannelRange_get_chain_hash(const struct LDKReplyChannelRange *NONNULL_PTR this_ptr))[32]; + export function ReplyChannelRange_get_chain_hash(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelPublicKeys_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ReplyChannelRange_get_chain_hash(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCResult_ChannelPublicKeysDecodeErrorZ ChannelPublicKeys_read(struct LDKu8slice ser); - export function ChannelPublicKeys_read(ser: Uint8Array): number { + // void ReplyChannelRange_set_chain_hash(struct LDKReplyChannelRange *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function ReplyChannelRange_set_chain_hash(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelPublicKeys_read(encodeArray(ser)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ReplyChannelRange_set_chain_hash(this_ptr, encodeUint8Array(val)); + // debug statements here } - // 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); - export function TxCreationKeys_derive_new(per_commitment_point: Uint8Array, broadcaster_delayed_payment_base: Uint8Array, broadcaster_htlc_base: Uint8Array, countersignatory_revocation_base: Uint8Array, countersignatory_htlc_base: Uint8Array): number { + // uint32_t ReplyChannelRange_get_first_blocknum(const struct LDKReplyChannelRange *NONNULL_PTR this_ptr); + export function ReplyChannelRange_get_first_blocknum(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TxCreationKeys_derive_new(encodeArray(per_commitment_point), encodeArray(broadcaster_delayed_payment_base), encodeArray(broadcaster_htlc_base), encodeArray(countersignatory_revocation_base), encodeArray(countersignatory_htlc_base)); + const nativeResponseValue = wasm.TS_ReplyChannelRange_get_first_blocknum(this_ptr); 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); - export function TxCreationKeys_from_channel_static_keys(per_commitment_point: Uint8Array, broadcaster_keys: number, countersignatory_keys: number): number { + // void ReplyChannelRange_set_first_blocknum(struct LDKReplyChannelRange *NONNULL_PTR this_ptr, uint32_t val); + export function ReplyChannelRange_set_first_blocknum(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TxCreationKeys_from_channel_static_keys(encodeArray(per_commitment_point), broadcaster_keys, countersignatory_keys); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ReplyChannelRange_set_first_blocknum(this_ptr, val); + // debug statements here } - // struct LDKCVec_u8Z get_revokeable_redeemscript(struct LDKPublicKey revocation_key, uint16_t contest_delay, struct LDKPublicKey broadcaster_delayed_payment_key); - export function get_revokeable_redeemscript(revocation_key: Uint8Array, contest_delay: number, broadcaster_delayed_payment_key: Uint8Array): Uint8Array { + // uint32_t ReplyChannelRange_get_number_of_blocks(const struct LDKReplyChannelRange *NONNULL_PTR this_ptr); + export function ReplyChannelRange_get_number_of_blocks(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.get_revokeable_redeemscript(encodeArray(revocation_key), contest_delay, encodeArray(broadcaster_delayed_payment_key)); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ReplyChannelRange_get_number_of_blocks(this_ptr); + return nativeResponseValue; } - // void HTLCOutputInCommitment_free(struct LDKHTLCOutputInCommitment this_obj); - export function HTLCOutputInCommitment_free(this_obj: number): void { + // void ReplyChannelRange_set_number_of_blocks(struct LDKReplyChannelRange *NONNULL_PTR this_ptr, uint32_t val); + export function ReplyChannelRange_set_number_of_blocks(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HTLCOutputInCommitment_free(this_obj); + const nativeResponseValue = wasm.TS_ReplyChannelRange_set_number_of_blocks(this_ptr, val); // debug statements here } - // bool HTLCOutputInCommitment_get_offered(const struct LDKHTLCOutputInCommitment *NONNULL_PTR this_ptr); - export function HTLCOutputInCommitment_get_offered(this_ptr: number): boolean { + // bool ReplyChannelRange_get_sync_complete(const struct LDKReplyChannelRange *NONNULL_PTR this_ptr); + export function ReplyChannelRange_get_sync_complete(this_ptr: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HTLCOutputInCommitment_get_offered(this_ptr); + const nativeResponseValue = wasm.TS_ReplyChannelRange_get_sync_complete(this_ptr); return nativeResponseValue; } - // void HTLCOutputInCommitment_set_offered(struct LDKHTLCOutputInCommitment *NONNULL_PTR this_ptr, bool val); - export function HTLCOutputInCommitment_set_offered(this_ptr: number, val: boolean): void { + // void ReplyChannelRange_set_sync_complete(struct LDKReplyChannelRange *NONNULL_PTR this_ptr, bool val); + export function ReplyChannelRange_set_sync_complete(this_ptr: number, val: boolean): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HTLCOutputInCommitment_set_offered(this_ptr, val); + const nativeResponseValue = wasm.TS_ReplyChannelRange_set_sync_complete(this_ptr, val); // debug statements here } - // uint64_t HTLCOutputInCommitment_get_amount_msat(const struct LDKHTLCOutputInCommitment *NONNULL_PTR this_ptr); - export function HTLCOutputInCommitment_get_amount_msat(this_ptr: number): number { + // void ReplyChannelRange_set_short_channel_ids(struct LDKReplyChannelRange *NONNULL_PTR this_ptr, struct LDKCVec_u64Z val); + export function ReplyChannelRange_set_short_channel_ids(this_ptr: number, val: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HTLCOutputInCommitment_get_amount_msat(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ReplyChannelRange_set_short_channel_ids(this_ptr, val); + // debug statements here } - // void HTLCOutputInCommitment_set_amount_msat(struct LDKHTLCOutputInCommitment *NONNULL_PTR this_ptr, uint64_t val); - export function HTLCOutputInCommitment_set_amount_msat(this_ptr: number, val: number): void { + // MUST_USE_RES struct LDKReplyChannelRange ReplyChannelRange_new(struct LDKThirtyTwoBytes chain_hash_arg, uint32_t first_blocknum_arg, uint32_t number_of_blocks_arg, bool sync_complete_arg, struct LDKCVec_u64Z short_channel_ids_arg); + export function ReplyChannelRange_new(chain_hash_arg: Uint8Array, first_blocknum_arg: number, number_of_blocks_arg: number, sync_complete_arg: boolean, short_channel_ids_arg: number[]): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HTLCOutputInCommitment_set_amount_msat(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_ReplyChannelRange_new(encodeUint8Array(chain_hash_arg), first_blocknum_arg, number_of_blocks_arg, sync_complete_arg, short_channel_ids_arg); + return nativeResponseValue; } - // uint32_t HTLCOutputInCommitment_get_cltv_expiry(const struct LDKHTLCOutputInCommitment *NONNULL_PTR this_ptr); - export function HTLCOutputInCommitment_get_cltv_expiry(this_ptr: number): number { + // uint64_t ReplyChannelRange_clone_ptr(LDKReplyChannelRange *NONNULL_PTR arg); + export function ReplyChannelRange_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HTLCOutputInCommitment_get_cltv_expiry(this_ptr); + const nativeResponseValue = wasm.TS_ReplyChannelRange_clone_ptr(arg); return nativeResponseValue; } - // void HTLCOutputInCommitment_set_cltv_expiry(struct LDKHTLCOutputInCommitment *NONNULL_PTR this_ptr, uint32_t val); - export function HTLCOutputInCommitment_set_cltv_expiry(this_ptr: number, val: number): void { + // struct LDKReplyChannelRange ReplyChannelRange_clone(const struct LDKReplyChannelRange *NONNULL_PTR orig); + export function ReplyChannelRange_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HTLCOutputInCommitment_set_cltv_expiry(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_ReplyChannelRange_clone(orig); + return nativeResponseValue; } - // const uint8_t (*HTLCOutputInCommitment_get_payment_hash(const struct LDKHTLCOutputInCommitment *NONNULL_PTR this_ptr))[32]; - export function HTLCOutputInCommitment_get_payment_hash(this_ptr: number): Uint8Array { + // void QueryShortChannelIds_free(struct LDKQueryShortChannelIds this_obj); + export function QueryShortChannelIds_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HTLCOutputInCommitment_get_payment_hash(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_QueryShortChannelIds_free(this_obj); + // debug statements here } - // void HTLCOutputInCommitment_set_payment_hash(struct LDKHTLCOutputInCommitment *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function HTLCOutputInCommitment_set_payment_hash(this_ptr: number, val: Uint8Array): void { + // const uint8_t (*QueryShortChannelIds_get_chain_hash(const struct LDKQueryShortChannelIds *NONNULL_PTR this_ptr))[32]; + export function QueryShortChannelIds_get_chain_hash(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HTLCOutputInCommitment_set_payment_hash(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_QueryShortChannelIds_get_chain_hash(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCOption_u32Z HTLCOutputInCommitment_get_transaction_output_index(const struct LDKHTLCOutputInCommitment *NONNULL_PTR this_ptr); - export function HTLCOutputInCommitment_get_transaction_output_index(this_ptr: number): number { + // void QueryShortChannelIds_set_chain_hash(struct LDKQueryShortChannelIds *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function QueryShortChannelIds_set_chain_hash(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HTLCOutputInCommitment_get_transaction_output_index(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_QueryShortChannelIds_set_chain_hash(this_ptr, encodeUint8Array(val)); + // debug statements here } - // void HTLCOutputInCommitment_set_transaction_output_index(struct LDKHTLCOutputInCommitment *NONNULL_PTR this_ptr, struct LDKCOption_u32Z val); - export function HTLCOutputInCommitment_set_transaction_output_index(this_ptr: number, val: number): void { + // void QueryShortChannelIds_set_short_channel_ids(struct LDKQueryShortChannelIds *NONNULL_PTR this_ptr, struct LDKCVec_u64Z val); + export function QueryShortChannelIds_set_short_channel_ids(this_ptr: number, val: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HTLCOutputInCommitment_set_transaction_output_index(this_ptr, val); + const nativeResponseValue = wasm.TS_QueryShortChannelIds_set_short_channel_ids(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKHTLCOutputInCommitment HTLCOutputInCommitment_new(bool offered_arg, uint64_t amount_msat_arg, uint32_t cltv_expiry_arg, struct LDKThirtyTwoBytes payment_hash_arg, struct LDKCOption_u32Z transaction_output_index_arg); - export function HTLCOutputInCommitment_new(offered_arg: boolean, amount_msat_arg: number, cltv_expiry_arg: number, payment_hash_arg: Uint8Array, transaction_output_index_arg: number): number { + // MUST_USE_RES struct LDKQueryShortChannelIds QueryShortChannelIds_new(struct LDKThirtyTwoBytes chain_hash_arg, struct LDKCVec_u64Z short_channel_ids_arg); + export function QueryShortChannelIds_new(chain_hash_arg: Uint8Array, short_channel_ids_arg: number[]): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HTLCOutputInCommitment_new(offered_arg, amount_msat_arg, cltv_expiry_arg, encodeArray(payment_hash_arg), transaction_output_index_arg); + const nativeResponseValue = wasm.TS_QueryShortChannelIds_new(encodeUint8Array(chain_hash_arg), short_channel_ids_arg); return nativeResponseValue; } - // uint64_t HTLCOutputInCommitment_clone_ptr(LDKHTLCOutputInCommitment *NONNULL_PTR arg); - export function HTLCOutputInCommitment_clone_ptr(arg: number): number { + // uint64_t QueryShortChannelIds_clone_ptr(LDKQueryShortChannelIds *NONNULL_PTR arg); + export function QueryShortChannelIds_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HTLCOutputInCommitment_clone_ptr(arg); + const nativeResponseValue = wasm.TS_QueryShortChannelIds_clone_ptr(arg); return nativeResponseValue; } - // struct LDKHTLCOutputInCommitment HTLCOutputInCommitment_clone(const struct LDKHTLCOutputInCommitment *NONNULL_PTR orig); - export function HTLCOutputInCommitment_clone(orig: number): number { + // struct LDKQueryShortChannelIds QueryShortChannelIds_clone(const struct LDKQueryShortChannelIds *NONNULL_PTR orig); + export function QueryShortChannelIds_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HTLCOutputInCommitment_clone(orig); + const nativeResponseValue = wasm.TS_QueryShortChannelIds_clone(orig); return nativeResponseValue; } - // struct LDKCVec_u8Z HTLCOutputInCommitment_write(const struct LDKHTLCOutputInCommitment *NONNULL_PTR obj); - export function HTLCOutputInCommitment_write(obj: number): Uint8Array { + // void ReplyShortChannelIdsEnd_free(struct LDKReplyShortChannelIdsEnd this_obj); + export function ReplyShortChannelIdsEnd_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HTLCOutputInCommitment_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ReplyShortChannelIdsEnd_free(this_obj); + // debug statements here } - // struct LDKCResult_HTLCOutputInCommitmentDecodeErrorZ HTLCOutputInCommitment_read(struct LDKu8slice ser); - export function HTLCOutputInCommitment_read(ser: Uint8Array): number { + // const uint8_t (*ReplyShortChannelIdsEnd_get_chain_hash(const struct LDKReplyShortChannelIdsEnd *NONNULL_PTR this_ptr))[32]; + export function ReplyShortChannelIdsEnd_get_chain_hash(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HTLCOutputInCommitment_read(encodeArray(ser)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ReplyShortChannelIdsEnd_get_chain_hash(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCVec_u8Z get_htlc_redeemscript(const struct LDKHTLCOutputInCommitment *NONNULL_PTR htlc, bool opt_anchors, const struct LDKTxCreationKeys *NONNULL_PTR keys); - export function get_htlc_redeemscript(htlc: number, opt_anchors: boolean, keys: number): Uint8Array { + // void ReplyShortChannelIdsEnd_set_chain_hash(struct LDKReplyShortChannelIdsEnd *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function ReplyShortChannelIdsEnd_set_chain_hash(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.get_htlc_redeemscript(htlc, opt_anchors, keys); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ReplyShortChannelIdsEnd_set_chain_hash(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKCVec_u8Z make_funding_redeemscript(struct LDKPublicKey broadcaster, struct LDKPublicKey countersignatory); - export function make_funding_redeemscript(broadcaster: Uint8Array, countersignatory: Uint8Array): Uint8Array { + // bool ReplyShortChannelIdsEnd_get_full_information(const struct LDKReplyShortChannelIdsEnd *NONNULL_PTR this_ptr); + export function ReplyShortChannelIdsEnd_get_full_information(this_ptr: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.make_funding_redeemscript(encodeArray(broadcaster), encodeArray(countersignatory)); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ReplyShortChannelIdsEnd_get_full_information(this_ptr); + 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); - export function build_htlc_transaction(commitment_txid: Uint8Array, feerate_per_kw: number, contest_delay: number, htlc: number, opt_anchors: boolean, broadcaster_delayed_payment_key: Uint8Array, revocation_key: Uint8Array): Uint8Array { + // void ReplyShortChannelIdsEnd_set_full_information(struct LDKReplyShortChannelIdsEnd *NONNULL_PTR this_ptr, bool val); + export function ReplyShortChannelIdsEnd_set_full_information(this_ptr: number, val: boolean): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.build_htlc_transaction(encodeArray(commitment_txid), feerate_per_kw, contest_delay, htlc, opt_anchors, encodeArray(broadcaster_delayed_payment_key), encodeArray(revocation_key)); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ReplyShortChannelIdsEnd_set_full_information(this_ptr, val); + // debug statements here } - // struct LDKCVec_u8Z get_anchor_redeemscript(struct LDKPublicKey funding_pubkey); - export function get_anchor_redeemscript(funding_pubkey: Uint8Array): Uint8Array { + // MUST_USE_RES struct LDKReplyShortChannelIdsEnd ReplyShortChannelIdsEnd_new(struct LDKThirtyTwoBytes chain_hash_arg, bool full_information_arg); + export function ReplyShortChannelIdsEnd_new(chain_hash_arg: Uint8Array, full_information_arg: boolean): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.get_anchor_redeemscript(encodeArray(funding_pubkey)); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ReplyShortChannelIdsEnd_new(encodeUint8Array(chain_hash_arg), full_information_arg); + return nativeResponseValue; } - // void ChannelTransactionParameters_free(struct LDKChannelTransactionParameters this_obj); - export function ChannelTransactionParameters_free(this_obj: number): void { + // uint64_t ReplyShortChannelIdsEnd_clone_ptr(LDKReplyShortChannelIdsEnd *NONNULL_PTR arg); + export function ReplyShortChannelIdsEnd_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTransactionParameters_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_ReplyShortChannelIdsEnd_clone_ptr(arg); + return nativeResponseValue; } - // struct LDKChannelPublicKeys ChannelTransactionParameters_get_holder_pubkeys(const struct LDKChannelTransactionParameters *NONNULL_PTR this_ptr); - export function ChannelTransactionParameters_get_holder_pubkeys(this_ptr: number): number { + // struct LDKReplyShortChannelIdsEnd ReplyShortChannelIdsEnd_clone(const struct LDKReplyShortChannelIdsEnd *NONNULL_PTR orig); + export function ReplyShortChannelIdsEnd_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTransactionParameters_get_holder_pubkeys(this_ptr); + const nativeResponseValue = wasm.TS_ReplyShortChannelIdsEnd_clone(orig); return nativeResponseValue; } - // void ChannelTransactionParameters_set_holder_pubkeys(struct LDKChannelTransactionParameters *NONNULL_PTR this_ptr, struct LDKChannelPublicKeys val); - export function ChannelTransactionParameters_set_holder_pubkeys(this_ptr: number, val: number): void { + // void GossipTimestampFilter_free(struct LDKGossipTimestampFilter this_obj); + export function GossipTimestampFilter_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTransactionParameters_set_holder_pubkeys(this_ptr, val); + const nativeResponseValue = wasm.TS_GossipTimestampFilter_free(this_obj); // debug statements here } - // uint16_t ChannelTransactionParameters_get_holder_selected_contest_delay(const struct LDKChannelTransactionParameters *NONNULL_PTR this_ptr); - export function ChannelTransactionParameters_get_holder_selected_contest_delay(this_ptr: number): number { + // const uint8_t (*GossipTimestampFilter_get_chain_hash(const struct LDKGossipTimestampFilter *NONNULL_PTR this_ptr))[32]; + export function GossipTimestampFilter_get_chain_hash(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTransactionParameters_get_holder_selected_contest_delay(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_GossipTimestampFilter_get_chain_hash(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void ChannelTransactionParameters_set_holder_selected_contest_delay(struct LDKChannelTransactionParameters *NONNULL_PTR this_ptr, uint16_t val); - export function ChannelTransactionParameters_set_holder_selected_contest_delay(this_ptr: number, val: number): void { + // void GossipTimestampFilter_set_chain_hash(struct LDKGossipTimestampFilter *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function GossipTimestampFilter_set_chain_hash(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTransactionParameters_set_holder_selected_contest_delay(this_ptr, val); + const nativeResponseValue = wasm.TS_GossipTimestampFilter_set_chain_hash(this_ptr, encodeUint8Array(val)); // debug statements here } - // bool ChannelTransactionParameters_get_is_outbound_from_holder(const struct LDKChannelTransactionParameters *NONNULL_PTR this_ptr); - export function ChannelTransactionParameters_get_is_outbound_from_holder(this_ptr: number): boolean { + // uint32_t GossipTimestampFilter_get_first_timestamp(const struct LDKGossipTimestampFilter *NONNULL_PTR this_ptr); + export function GossipTimestampFilter_get_first_timestamp(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTransactionParameters_get_is_outbound_from_holder(this_ptr); + const nativeResponseValue = wasm.TS_GossipTimestampFilter_get_first_timestamp(this_ptr); return nativeResponseValue; } - // void ChannelTransactionParameters_set_is_outbound_from_holder(struct LDKChannelTransactionParameters *NONNULL_PTR this_ptr, bool val); - export function ChannelTransactionParameters_set_is_outbound_from_holder(this_ptr: number, val: boolean): void { + // void GossipTimestampFilter_set_first_timestamp(struct LDKGossipTimestampFilter *NONNULL_PTR this_ptr, uint32_t val); + export function GossipTimestampFilter_set_first_timestamp(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTransactionParameters_set_is_outbound_from_holder(this_ptr, val); + const nativeResponseValue = wasm.TS_GossipTimestampFilter_set_first_timestamp(this_ptr, val); // debug statements here } - // struct LDKCounterpartyChannelTransactionParameters ChannelTransactionParameters_get_counterparty_parameters(const struct LDKChannelTransactionParameters *NONNULL_PTR this_ptr); - export function ChannelTransactionParameters_get_counterparty_parameters(this_ptr: number): number { + // uint32_t GossipTimestampFilter_get_timestamp_range(const struct LDKGossipTimestampFilter *NONNULL_PTR this_ptr); + export function GossipTimestampFilter_get_timestamp_range(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTransactionParameters_get_counterparty_parameters(this_ptr); + const nativeResponseValue = wasm.TS_GossipTimestampFilter_get_timestamp_range(this_ptr); return nativeResponseValue; } - // void ChannelTransactionParameters_set_counterparty_parameters(struct LDKChannelTransactionParameters *NONNULL_PTR this_ptr, struct LDKCounterpartyChannelTransactionParameters val); - export function ChannelTransactionParameters_set_counterparty_parameters(this_ptr: number, val: number): void { + // void GossipTimestampFilter_set_timestamp_range(struct LDKGossipTimestampFilter *NONNULL_PTR this_ptr, uint32_t val); + export function GossipTimestampFilter_set_timestamp_range(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTransactionParameters_set_counterparty_parameters(this_ptr, val); + const nativeResponseValue = wasm.TS_GossipTimestampFilter_set_timestamp_range(this_ptr, val); // debug statements here } - // struct LDKOutPoint ChannelTransactionParameters_get_funding_outpoint(const struct LDKChannelTransactionParameters *NONNULL_PTR this_ptr); - export function ChannelTransactionParameters_get_funding_outpoint(this_ptr: number): number { + // MUST_USE_RES struct LDKGossipTimestampFilter GossipTimestampFilter_new(struct LDKThirtyTwoBytes chain_hash_arg, uint32_t first_timestamp_arg, uint32_t timestamp_range_arg); + export function GossipTimestampFilter_new(chain_hash_arg: Uint8Array, first_timestamp_arg: number, timestamp_range_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTransactionParameters_get_funding_outpoint(this_ptr); + const nativeResponseValue = wasm.TS_GossipTimestampFilter_new(encodeUint8Array(chain_hash_arg), first_timestamp_arg, timestamp_range_arg); return nativeResponseValue; } - // void ChannelTransactionParameters_set_funding_outpoint(struct LDKChannelTransactionParameters *NONNULL_PTR this_ptr, struct LDKOutPoint val); - export function ChannelTransactionParameters_set_funding_outpoint(this_ptr: number, val: number): void { + // uint64_t GossipTimestampFilter_clone_ptr(LDKGossipTimestampFilter *NONNULL_PTR arg); + export function GossipTimestampFilter_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTransactionParameters_set_funding_outpoint(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_GossipTimestampFilter_clone_ptr(arg); + return nativeResponseValue; } - // enum LDKCOption_NoneZ ChannelTransactionParameters_get_opt_anchors(const struct LDKChannelTransactionParameters *NONNULL_PTR this_ptr); - export function ChannelTransactionParameters_get_opt_anchors(this_ptr: number): COption_NoneZ { + // struct LDKGossipTimestampFilter GossipTimestampFilter_clone(const struct LDKGossipTimestampFilter *NONNULL_PTR orig); + export function GossipTimestampFilter_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTransactionParameters_get_opt_anchors(this_ptr); + const nativeResponseValue = wasm.TS_GossipTimestampFilter_clone(orig); return nativeResponseValue; } - // void ChannelTransactionParameters_set_opt_anchors(struct LDKChannelTransactionParameters *NONNULL_PTR this_ptr, enum LDKCOption_NoneZ val); - export function ChannelTransactionParameters_set_opt_anchors(this_ptr: number, val: COption_NoneZ): void { + // void ErrorAction_free(struct LDKErrorAction this_ptr); + export function ErrorAction_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTransactionParameters_set_opt_anchors(this_ptr, val); + const nativeResponseValue = wasm.TS_ErrorAction_free(this_ptr); // 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); - export function ChannelTransactionParameters_new(holder_pubkeys_arg: number, holder_selected_contest_delay_arg: number, is_outbound_from_holder_arg: boolean, counterparty_parameters_arg: number, funding_outpoint_arg: number, opt_anchors_arg: COption_NoneZ): number { + // uint64_t ErrorAction_clone_ptr(LDKErrorAction *NONNULL_PTR arg); + export function ErrorAction_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.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_ErrorAction_clone_ptr(arg); return nativeResponseValue; } - // uint64_t ChannelTransactionParameters_clone_ptr(LDKChannelTransactionParameters *NONNULL_PTR arg); - export function ChannelTransactionParameters_clone_ptr(arg: number): number { + // struct LDKErrorAction ErrorAction_clone(const struct LDKErrorAction *NONNULL_PTR orig); + export function ErrorAction_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTransactionParameters_clone_ptr(arg); + const nativeResponseValue = wasm.TS_ErrorAction_clone(orig); return nativeResponseValue; } - // struct LDKChannelTransactionParameters ChannelTransactionParameters_clone(const struct LDKChannelTransactionParameters *NONNULL_PTR orig); - export function ChannelTransactionParameters_clone(orig: number): number { + // struct LDKErrorAction ErrorAction_disconnect_peer(struct LDKErrorMessage msg); + export function ErrorAction_disconnect_peer(msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTransactionParameters_clone(orig); + const nativeResponseValue = wasm.TS_ErrorAction_disconnect_peer(msg); return nativeResponseValue; } - // void CounterpartyChannelTransactionParameters_free(struct LDKCounterpartyChannelTransactionParameters this_obj); - export function CounterpartyChannelTransactionParameters_free(this_obj: number): void { + // struct LDKErrorAction ErrorAction_ignore_error(void); + export function ErrorAction_ignore_error(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CounterpartyChannelTransactionParameters_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_ErrorAction_ignore_error(); + return nativeResponseValue; } - // struct LDKChannelPublicKeys CounterpartyChannelTransactionParameters_get_pubkeys(const struct LDKCounterpartyChannelTransactionParameters *NONNULL_PTR this_ptr); - export function CounterpartyChannelTransactionParameters_get_pubkeys(this_ptr: number): number { + // struct LDKErrorAction ErrorAction_ignore_and_log(enum LDKLevel a); + export function ErrorAction_ignore_and_log(a: Level): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CounterpartyChannelTransactionParameters_get_pubkeys(this_ptr); + const nativeResponseValue = wasm.TS_ErrorAction_ignore_and_log(a); return nativeResponseValue; } - // void CounterpartyChannelTransactionParameters_set_pubkeys(struct LDKCounterpartyChannelTransactionParameters *NONNULL_PTR this_ptr, struct LDKChannelPublicKeys val); - export function CounterpartyChannelTransactionParameters_set_pubkeys(this_ptr: number, val: number): void { + // struct LDKErrorAction ErrorAction_ignore_duplicate_gossip(void); + export function ErrorAction_ignore_duplicate_gossip(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CounterpartyChannelTransactionParameters_set_pubkeys(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_ErrorAction_ignore_duplicate_gossip(); + return nativeResponseValue; } - // uint16_t CounterpartyChannelTransactionParameters_get_selected_contest_delay(const struct LDKCounterpartyChannelTransactionParameters *NONNULL_PTR this_ptr); - export function CounterpartyChannelTransactionParameters_get_selected_contest_delay(this_ptr: number): number { + // struct LDKErrorAction ErrorAction_send_error_message(struct LDKErrorMessage msg); + export function ErrorAction_send_error_message(msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CounterpartyChannelTransactionParameters_get_selected_contest_delay(this_ptr); + const nativeResponseValue = wasm.TS_ErrorAction_send_error_message(msg); return nativeResponseValue; } - // void CounterpartyChannelTransactionParameters_set_selected_contest_delay(struct LDKCounterpartyChannelTransactionParameters *NONNULL_PTR this_ptr, uint16_t val); - export function CounterpartyChannelTransactionParameters_set_selected_contest_delay(this_ptr: number, val: number): void { + // void LightningError_free(struct LDKLightningError this_obj); + export function LightningError_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CounterpartyChannelTransactionParameters_set_selected_contest_delay(this_ptr, val); + const nativeResponseValue = wasm.TS_LightningError_free(this_obj); // debug statements here } - // MUST_USE_RES struct LDKCounterpartyChannelTransactionParameters CounterpartyChannelTransactionParameters_new(struct LDKChannelPublicKeys pubkeys_arg, uint16_t selected_contest_delay_arg); - export function CounterpartyChannelTransactionParameters_new(pubkeys_arg: number, selected_contest_delay_arg: number): number { + // struct LDKStr LightningError_get_err(const struct LDKLightningError *NONNULL_PTR this_ptr); + export function LightningError_get_err(this_ptr: number): String { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CounterpartyChannelTransactionParameters_new(pubkeys_arg, selected_contest_delay_arg); + const nativeResponseValue = wasm.TS_LightningError_get_err(this_ptr); return nativeResponseValue; } - // uint64_t CounterpartyChannelTransactionParameters_clone_ptr(LDKCounterpartyChannelTransactionParameters *NONNULL_PTR arg); - export function CounterpartyChannelTransactionParameters_clone_ptr(arg: number): number { + // void LightningError_set_err(struct LDKLightningError *NONNULL_PTR this_ptr, struct LDKStr val); + export function LightningError_set_err(this_ptr: number, val: String): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CounterpartyChannelTransactionParameters_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_LightningError_set_err(this_ptr, val); + // debug statements here } - // struct LDKCounterpartyChannelTransactionParameters CounterpartyChannelTransactionParameters_clone(const struct LDKCounterpartyChannelTransactionParameters *NONNULL_PTR orig); - export function CounterpartyChannelTransactionParameters_clone(orig: number): number { + // struct LDKErrorAction LightningError_get_action(const struct LDKLightningError *NONNULL_PTR this_ptr); + export function LightningError_get_action(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CounterpartyChannelTransactionParameters_clone(orig); + const nativeResponseValue = wasm.TS_LightningError_get_action(this_ptr); return nativeResponseValue; } - // MUST_USE_RES bool ChannelTransactionParameters_is_populated(const struct LDKChannelTransactionParameters *NONNULL_PTR this_arg); - export function ChannelTransactionParameters_is_populated(this_arg: number): boolean { + // void LightningError_set_action(struct LDKLightningError *NONNULL_PTR this_ptr, struct LDKErrorAction val); + export function LightningError_set_action(this_ptr: number, val: number): void { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_LightningError_set_action(this_ptr, val); + // debug statements here + } + // MUST_USE_RES struct LDKLightningError LightningError_new(struct LDKStr err_arg, struct LDKErrorAction action_arg); + export function LightningError_new(err_arg: String, action_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTransactionParameters_is_populated(this_arg); + const nativeResponseValue = wasm.TS_LightningError_new(err_arg, action_arg); return nativeResponseValue; } - // MUST_USE_RES struct LDKDirectedChannelTransactionParameters ChannelTransactionParameters_as_holder_broadcastable(const struct LDKChannelTransactionParameters *NONNULL_PTR this_arg); - export function ChannelTransactionParameters_as_holder_broadcastable(this_arg: number): number { + // uint64_t LightningError_clone_ptr(LDKLightningError *NONNULL_PTR arg); + export function LightningError_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTransactionParameters_as_holder_broadcastable(this_arg); + const nativeResponseValue = wasm.TS_LightningError_clone_ptr(arg); return nativeResponseValue; } - // MUST_USE_RES struct LDKDirectedChannelTransactionParameters ChannelTransactionParameters_as_counterparty_broadcastable(const struct LDKChannelTransactionParameters *NONNULL_PTR this_arg); - export function ChannelTransactionParameters_as_counterparty_broadcastable(this_arg: number): number { + // struct LDKLightningError LightningError_clone(const struct LDKLightningError *NONNULL_PTR orig); + export function LightningError_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTransactionParameters_as_counterparty_broadcastable(this_arg); + const nativeResponseValue = wasm.TS_LightningError_clone(orig); return nativeResponseValue; } - // struct LDKCVec_u8Z CounterpartyChannelTransactionParameters_write(const struct LDKCounterpartyChannelTransactionParameters *NONNULL_PTR obj); - export function CounterpartyChannelTransactionParameters_write(obj: number): Uint8Array { + // void CommitmentUpdate_free(struct LDKCommitmentUpdate this_obj); + export function CommitmentUpdate_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CounterpartyChannelTransactionParameters_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CommitmentUpdate_free(this_obj); + // debug statements here } - // struct LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ CounterpartyChannelTransactionParameters_read(struct LDKu8slice ser); - export function CounterpartyChannelTransactionParameters_read(ser: Uint8Array): number { + // struct LDKCVec_UpdateAddHTLCZ CommitmentUpdate_get_update_add_htlcs(const struct LDKCommitmentUpdate *NONNULL_PTR this_ptr); + export function CommitmentUpdate_get_update_add_htlcs(this_ptr: number): number[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CounterpartyChannelTransactionParameters_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_CommitmentUpdate_get_update_add_htlcs(this_ptr); return nativeResponseValue; } - // struct LDKCVec_u8Z ChannelTransactionParameters_write(const struct LDKChannelTransactionParameters *NONNULL_PTR obj); - export function ChannelTransactionParameters_write(obj: number): Uint8Array { + // void CommitmentUpdate_set_update_add_htlcs(struct LDKCommitmentUpdate *NONNULL_PTR this_ptr, struct LDKCVec_UpdateAddHTLCZ val); + export function CommitmentUpdate_set_update_add_htlcs(this_ptr: number, val: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTransactionParameters_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CommitmentUpdate_set_update_add_htlcs(this_ptr, val); + // debug statements here } - // struct LDKCResult_ChannelTransactionParametersDecodeErrorZ ChannelTransactionParameters_read(struct LDKu8slice ser); - export function ChannelTransactionParameters_read(ser: Uint8Array): number { + // struct LDKCVec_UpdateFulfillHTLCZ CommitmentUpdate_get_update_fulfill_htlcs(const struct LDKCommitmentUpdate *NONNULL_PTR this_ptr); + export function CommitmentUpdate_get_update_fulfill_htlcs(this_ptr: number): number[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTransactionParameters_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_CommitmentUpdate_get_update_fulfill_htlcs(this_ptr); return nativeResponseValue; } - // void DirectedChannelTransactionParameters_free(struct LDKDirectedChannelTransactionParameters this_obj); - export function DirectedChannelTransactionParameters_free(this_obj: number): void { + // void CommitmentUpdate_set_update_fulfill_htlcs(struct LDKCommitmentUpdate *NONNULL_PTR this_ptr, struct LDKCVec_UpdateFulfillHTLCZ val); + export function CommitmentUpdate_set_update_fulfill_htlcs(this_ptr: number, val: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectedChannelTransactionParameters_free(this_obj); + const nativeResponseValue = wasm.TS_CommitmentUpdate_set_update_fulfill_htlcs(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKChannelPublicKeys DirectedChannelTransactionParameters_broadcaster_pubkeys(const struct LDKDirectedChannelTransactionParameters *NONNULL_PTR this_arg); - export function DirectedChannelTransactionParameters_broadcaster_pubkeys(this_arg: number): number { + // struct LDKCVec_UpdateFailHTLCZ CommitmentUpdate_get_update_fail_htlcs(const struct LDKCommitmentUpdate *NONNULL_PTR this_ptr); + export function CommitmentUpdate_get_update_fail_htlcs(this_ptr: number): number[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectedChannelTransactionParameters_broadcaster_pubkeys(this_arg); + const nativeResponseValue = wasm.TS_CommitmentUpdate_get_update_fail_htlcs(this_ptr); return nativeResponseValue; } - // MUST_USE_RES struct LDKChannelPublicKeys DirectedChannelTransactionParameters_countersignatory_pubkeys(const struct LDKDirectedChannelTransactionParameters *NONNULL_PTR this_arg); - export function DirectedChannelTransactionParameters_countersignatory_pubkeys(this_arg: number): number { + // void CommitmentUpdate_set_update_fail_htlcs(struct LDKCommitmentUpdate *NONNULL_PTR this_ptr, struct LDKCVec_UpdateFailHTLCZ val); + export function CommitmentUpdate_set_update_fail_htlcs(this_ptr: number, val: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectedChannelTransactionParameters_countersignatory_pubkeys(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CommitmentUpdate_set_update_fail_htlcs(this_ptr, val); + // debug statements here } - // MUST_USE_RES uint16_t DirectedChannelTransactionParameters_contest_delay(const struct LDKDirectedChannelTransactionParameters *NONNULL_PTR this_arg); - export function DirectedChannelTransactionParameters_contest_delay(this_arg: number): number { + // struct LDKCVec_UpdateFailMalformedHTLCZ CommitmentUpdate_get_update_fail_malformed_htlcs(const struct LDKCommitmentUpdate *NONNULL_PTR this_ptr); + export function CommitmentUpdate_get_update_fail_malformed_htlcs(this_ptr: number): number[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectedChannelTransactionParameters_contest_delay(this_arg); + const nativeResponseValue = wasm.TS_CommitmentUpdate_get_update_fail_malformed_htlcs(this_ptr); return nativeResponseValue; } - // MUST_USE_RES bool DirectedChannelTransactionParameters_is_outbound(const struct LDKDirectedChannelTransactionParameters *NONNULL_PTR this_arg); - export function DirectedChannelTransactionParameters_is_outbound(this_arg: number): boolean { + // void CommitmentUpdate_set_update_fail_malformed_htlcs(struct LDKCommitmentUpdate *NONNULL_PTR this_ptr, struct LDKCVec_UpdateFailMalformedHTLCZ val); + export function CommitmentUpdate_set_update_fail_malformed_htlcs(this_ptr: number, val: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectedChannelTransactionParameters_is_outbound(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CommitmentUpdate_set_update_fail_malformed_htlcs(this_ptr, val); + // debug statements here } - // MUST_USE_RES struct LDKOutPoint DirectedChannelTransactionParameters_funding_outpoint(const struct LDKDirectedChannelTransactionParameters *NONNULL_PTR this_arg); - export function DirectedChannelTransactionParameters_funding_outpoint(this_arg: number): number { + // struct LDKUpdateFee CommitmentUpdate_get_update_fee(const struct LDKCommitmentUpdate *NONNULL_PTR this_ptr); + export function CommitmentUpdate_get_update_fee(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectedChannelTransactionParameters_funding_outpoint(this_arg); + const nativeResponseValue = wasm.TS_CommitmentUpdate_get_update_fee(this_ptr); return nativeResponseValue; } - // MUST_USE_RES bool DirectedChannelTransactionParameters_opt_anchors(const struct LDKDirectedChannelTransactionParameters *NONNULL_PTR this_arg); - export function DirectedChannelTransactionParameters_opt_anchors(this_arg: number): boolean { + // void CommitmentUpdate_set_update_fee(struct LDKCommitmentUpdate *NONNULL_PTR this_ptr, struct LDKUpdateFee val); + export function CommitmentUpdate_set_update_fee(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectedChannelTransactionParameters_opt_anchors(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CommitmentUpdate_set_update_fee(this_ptr, val); + // debug statements here } - // void HolderCommitmentTransaction_free(struct LDKHolderCommitmentTransaction this_obj); - export function HolderCommitmentTransaction_free(this_obj: number): void { + // struct LDKCommitmentSigned CommitmentUpdate_get_commitment_signed(const struct LDKCommitmentUpdate *NONNULL_PTR this_ptr); + export function CommitmentUpdate_get_commitment_signed(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HolderCommitmentTransaction_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_CommitmentUpdate_get_commitment_signed(this_ptr); + return nativeResponseValue; } - // struct LDKSignature HolderCommitmentTransaction_get_counterparty_sig(const struct LDKHolderCommitmentTransaction *NONNULL_PTR this_ptr); - export function HolderCommitmentTransaction_get_counterparty_sig(this_ptr: number): Uint8Array { + // void CommitmentUpdate_set_commitment_signed(struct LDKCommitmentUpdate *NONNULL_PTR this_ptr, struct LDKCommitmentSigned val); + export function CommitmentUpdate_set_commitment_signed(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HolderCommitmentTransaction_get_counterparty_sig(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CommitmentUpdate_set_commitment_signed(this_ptr, val); + // debug statements here } - // void HolderCommitmentTransaction_set_counterparty_sig(struct LDKHolderCommitmentTransaction *NONNULL_PTR this_ptr, struct LDKSignature val); - export function HolderCommitmentTransaction_set_counterparty_sig(this_ptr: number, val: Uint8Array): void { + // MUST_USE_RES struct LDKCommitmentUpdate CommitmentUpdate_new(struct LDKCVec_UpdateAddHTLCZ update_add_htlcs_arg, struct LDKCVec_UpdateFulfillHTLCZ update_fulfill_htlcs_arg, struct LDKCVec_UpdateFailHTLCZ update_fail_htlcs_arg, struct LDKCVec_UpdateFailMalformedHTLCZ update_fail_malformed_htlcs_arg, struct LDKUpdateFee update_fee_arg, struct LDKCommitmentSigned commitment_signed_arg); + export function CommitmentUpdate_new(update_add_htlcs_arg: number[], update_fulfill_htlcs_arg: number[], update_fail_htlcs_arg: number[], update_fail_malformed_htlcs_arg: number[], update_fee_arg: number, commitment_signed_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HolderCommitmentTransaction_set_counterparty_sig(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_CommitmentUpdate_new(update_add_htlcs_arg, update_fulfill_htlcs_arg, update_fail_htlcs_arg, update_fail_malformed_htlcs_arg, update_fee_arg, commitment_signed_arg); + return nativeResponseValue; } - // void HolderCommitmentTransaction_set_counterparty_htlc_sigs(struct LDKHolderCommitmentTransaction *NONNULL_PTR this_ptr, struct LDKCVec_SignatureZ val); - export function HolderCommitmentTransaction_set_counterparty_htlc_sigs(this_ptr: number, val: Uint8Array[]): void { + // uint64_t CommitmentUpdate_clone_ptr(LDKCommitmentUpdate *NONNULL_PTR arg); + export function CommitmentUpdate_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HolderCommitmentTransaction_set_counterparty_htlc_sigs(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_CommitmentUpdate_clone_ptr(arg); + return nativeResponseValue; } - // uint64_t HolderCommitmentTransaction_clone_ptr(LDKHolderCommitmentTransaction *NONNULL_PTR arg); - export function HolderCommitmentTransaction_clone_ptr(arg: number): number { + // struct LDKCommitmentUpdate CommitmentUpdate_clone(const struct LDKCommitmentUpdate *NONNULL_PTR orig); + export function CommitmentUpdate_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HolderCommitmentTransaction_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CommitmentUpdate_clone(orig); return nativeResponseValue; } - // struct LDKHolderCommitmentTransaction HolderCommitmentTransaction_clone(const struct LDKHolderCommitmentTransaction *NONNULL_PTR orig); - export function HolderCommitmentTransaction_clone(orig: number): number { + // void ChannelMessageHandler_free(struct LDKChannelMessageHandler this_ptr); + export function ChannelMessageHandler_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HolderCommitmentTransaction_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelMessageHandler_free(this_ptr); + // debug statements here } - // struct LDKCVec_u8Z HolderCommitmentTransaction_write(const struct LDKHolderCommitmentTransaction *NONNULL_PTR obj); - export function HolderCommitmentTransaction_write(obj: number): Uint8Array { + // void RoutingMessageHandler_free(struct LDKRoutingMessageHandler this_ptr); + export function RoutingMessageHandler_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HolderCommitmentTransaction_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_RoutingMessageHandler_free(this_ptr); + // debug statements here } - // struct LDKCResult_HolderCommitmentTransactionDecodeErrorZ HolderCommitmentTransaction_read(struct LDKu8slice ser); - export function HolderCommitmentTransaction_read(ser: Uint8Array): number { + // struct LDKCVec_u8Z AcceptChannel_write(const struct LDKAcceptChannel *NONNULL_PTR obj); + export function AcceptChannel_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HolderCommitmentTransaction_read(encodeArray(ser)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_AcceptChannel_write(obj); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES struct LDKHolderCommitmentTransaction HolderCommitmentTransaction_new(struct LDKCommitmentTransaction commitment_tx, struct LDKSignature counterparty_sig, struct LDKCVec_SignatureZ counterparty_htlc_sigs, struct LDKPublicKey holder_funding_key, struct LDKPublicKey counterparty_funding_key); - export function HolderCommitmentTransaction_new(commitment_tx: number, counterparty_sig: Uint8Array, counterparty_htlc_sigs: Uint8Array[], holder_funding_key: Uint8Array, counterparty_funding_key: Uint8Array): number { + // struct LDKCResult_AcceptChannelDecodeErrorZ AcceptChannel_read(struct LDKu8slice ser); + export function AcceptChannel_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.HolderCommitmentTransaction_new(commitment_tx, encodeArray(counterparty_sig), counterparty_htlc_sigs, encodeArray(holder_funding_key), encodeArray(counterparty_funding_key)); + const nativeResponseValue = wasm.TS_AcceptChannel_read(encodeUint8Array(ser)); return nativeResponseValue; } - // void BuiltCommitmentTransaction_free(struct LDKBuiltCommitmentTransaction this_obj); - export function BuiltCommitmentTransaction_free(this_obj: number): void { + // struct LDKCVec_u8Z AnnouncementSignatures_write(const struct LDKAnnouncementSignatures *NONNULL_PTR obj); + export function AnnouncementSignatures_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BuiltCommitmentTransaction_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_AnnouncementSignatures_write(obj); + return decodeUint8Array(nativeResponseValue); } - // struct LDKTransaction BuiltCommitmentTransaction_get_transaction(const struct LDKBuiltCommitmentTransaction *NONNULL_PTR this_ptr); - export function BuiltCommitmentTransaction_get_transaction(this_ptr: number): Uint8Array { + // struct LDKCResult_AnnouncementSignaturesDecodeErrorZ AnnouncementSignatures_read(struct LDKu8slice ser); + export function AnnouncementSignatures_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BuiltCommitmentTransaction_get_transaction(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_AnnouncementSignatures_read(encodeUint8Array(ser)); + return nativeResponseValue; } - // void BuiltCommitmentTransaction_set_transaction(struct LDKBuiltCommitmentTransaction *NONNULL_PTR this_ptr, struct LDKTransaction val); - export function BuiltCommitmentTransaction_set_transaction(this_ptr: number, val: Uint8Array): void { + // struct LDKCVec_u8Z ChannelReestablish_write(const struct LDKChannelReestablish *NONNULL_PTR obj); + export function ChannelReestablish_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BuiltCommitmentTransaction_set_transaction(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelReestablish_write(obj); + return decodeUint8Array(nativeResponseValue); } - // const uint8_t (*BuiltCommitmentTransaction_get_txid(const struct LDKBuiltCommitmentTransaction *NONNULL_PTR this_ptr))[32]; - export function BuiltCommitmentTransaction_get_txid(this_ptr: number): Uint8Array { + // struct LDKCResult_ChannelReestablishDecodeErrorZ ChannelReestablish_read(struct LDKu8slice ser); + export function ChannelReestablish_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BuiltCommitmentTransaction_get_txid(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelReestablish_read(encodeUint8Array(ser)); + return nativeResponseValue; } - // void BuiltCommitmentTransaction_set_txid(struct LDKBuiltCommitmentTransaction *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function BuiltCommitmentTransaction_set_txid(this_ptr: number, val: Uint8Array): void { + // struct LDKCVec_u8Z ClosingSigned_write(const struct LDKClosingSigned *NONNULL_PTR obj); + export function ClosingSigned_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BuiltCommitmentTransaction_set_txid(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_ClosingSigned_write(obj); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES struct LDKBuiltCommitmentTransaction BuiltCommitmentTransaction_new(struct LDKTransaction transaction_arg, struct LDKThirtyTwoBytes txid_arg); - export function BuiltCommitmentTransaction_new(transaction_arg: Uint8Array, txid_arg: Uint8Array): number { + // struct LDKCResult_ClosingSignedDecodeErrorZ ClosingSigned_read(struct LDKu8slice ser); + export function ClosingSigned_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BuiltCommitmentTransaction_new(encodeArray(transaction_arg), encodeArray(txid_arg)); + const nativeResponseValue = wasm.TS_ClosingSigned_read(encodeUint8Array(ser)); return nativeResponseValue; } - // uint64_t BuiltCommitmentTransaction_clone_ptr(LDKBuiltCommitmentTransaction *NONNULL_PTR arg); - export function BuiltCommitmentTransaction_clone_ptr(arg: number): number { + // struct LDKCVec_u8Z ClosingSignedFeeRange_write(const struct LDKClosingSignedFeeRange *NONNULL_PTR obj); + export function ClosingSignedFeeRange_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BuiltCommitmentTransaction_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ClosingSignedFeeRange_write(obj); + return decodeUint8Array(nativeResponseValue); } - // struct LDKBuiltCommitmentTransaction BuiltCommitmentTransaction_clone(const struct LDKBuiltCommitmentTransaction *NONNULL_PTR orig); - export function BuiltCommitmentTransaction_clone(orig: number): number { + // struct LDKCResult_ClosingSignedFeeRangeDecodeErrorZ ClosingSignedFeeRange_read(struct LDKu8slice ser); + export function ClosingSignedFeeRange_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BuiltCommitmentTransaction_clone(orig); + const nativeResponseValue = wasm.TS_ClosingSignedFeeRange_read(encodeUint8Array(ser)); return nativeResponseValue; } - // struct LDKCVec_u8Z BuiltCommitmentTransaction_write(const struct LDKBuiltCommitmentTransaction *NONNULL_PTR obj); - export function BuiltCommitmentTransaction_write(obj: number): Uint8Array { + // struct LDKCVec_u8Z CommitmentSigned_write(const struct LDKCommitmentSigned *NONNULL_PTR obj); + export function CommitmentSigned_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BuiltCommitmentTransaction_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CommitmentSigned_write(obj); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCResult_BuiltCommitmentTransactionDecodeErrorZ BuiltCommitmentTransaction_read(struct LDKu8slice ser); - export function BuiltCommitmentTransaction_read(ser: Uint8Array): number { + // struct LDKCResult_CommitmentSignedDecodeErrorZ CommitmentSigned_read(struct LDKu8slice ser); + export function CommitmentSigned_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BuiltCommitmentTransaction_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_CommitmentSigned_read(encodeUint8Array(ser)); return nativeResponseValue; } - // MUST_USE_RES struct LDKThirtyTwoBytes BuiltCommitmentTransaction_get_sighash_all(const struct LDKBuiltCommitmentTransaction *NONNULL_PTR this_arg, struct LDKu8slice funding_redeemscript, uint64_t channel_value_satoshis); - export function BuiltCommitmentTransaction_get_sighash_all(this_arg: number, funding_redeemscript: Uint8Array, channel_value_satoshis: number): Uint8Array { + // struct LDKCVec_u8Z FundingCreated_write(const struct LDKFundingCreated *NONNULL_PTR obj); + export function FundingCreated_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BuiltCommitmentTransaction_get_sighash_all(this_arg, encodeArray(funding_redeemscript), channel_value_satoshis); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_FundingCreated_write(obj); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES struct LDKSignature BuiltCommitmentTransaction_sign(const struct LDKBuiltCommitmentTransaction *NONNULL_PTR this_arg, const uint8_t (*funding_key)[32], struct LDKu8slice funding_redeemscript, uint64_t channel_value_satoshis); - export function BuiltCommitmentTransaction_sign(this_arg: number, funding_key: Uint8Array, funding_redeemscript: Uint8Array, channel_value_satoshis: number): Uint8Array { + // struct LDKCResult_FundingCreatedDecodeErrorZ FundingCreated_read(struct LDKu8slice ser); + export function FundingCreated_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BuiltCommitmentTransaction_sign(this_arg, encodeArray(funding_key), encodeArray(funding_redeemscript), channel_value_satoshis); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_FundingCreated_read(encodeUint8Array(ser)); + return nativeResponseValue; } - // void ClosingTransaction_free(struct LDKClosingTransaction this_obj); - export function ClosingTransaction_free(this_obj: number): void { + // struct LDKCVec_u8Z FundingSigned_write(const struct LDKFundingSigned *NONNULL_PTR obj); + export function FundingSigned_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingTransaction_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_FundingSigned_write(obj); + return decodeUint8Array(nativeResponseValue); } - // uint64_t ClosingTransaction_clone_ptr(LDKClosingTransaction *NONNULL_PTR arg); - export function ClosingTransaction_clone_ptr(arg: number): number { + // struct LDKCResult_FundingSignedDecodeErrorZ FundingSigned_read(struct LDKu8slice ser); + export function FundingSigned_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingTransaction_clone_ptr(arg); + const nativeResponseValue = wasm.TS_FundingSigned_read(encodeUint8Array(ser)); return nativeResponseValue; } - // struct LDKClosingTransaction ClosingTransaction_clone(const struct LDKClosingTransaction *NONNULL_PTR orig); - export function ClosingTransaction_clone(orig: number): number { + // struct LDKCVec_u8Z FundingLocked_write(const struct LDKFundingLocked *NONNULL_PTR obj); + export function FundingLocked_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingTransaction_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_FundingLocked_write(obj); + return decodeUint8Array(nativeResponseValue); } - // uint64_t ClosingTransaction_hash(const struct LDKClosingTransaction *NONNULL_PTR o); - export function ClosingTransaction_hash(o: number): number { + // struct LDKCResult_FundingLockedDecodeErrorZ FundingLocked_read(struct LDKu8slice ser); + export function FundingLocked_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingTransaction_hash(o); + const nativeResponseValue = wasm.TS_FundingLocked_read(encodeUint8Array(ser)); 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); - export function ClosingTransaction_new(to_holder_value_sat: number, to_counterparty_value_sat: number, to_holder_script: Uint8Array, to_counterparty_script: Uint8Array, funding_outpoint: number): number { + // struct LDKCVec_u8Z Init_write(const struct LDKInit *NONNULL_PTR obj); + export function Init_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingTransaction_new(to_holder_value_sat, to_counterparty_value_sat, encodeArray(to_holder_script), encodeArray(to_counterparty_script), funding_outpoint); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Init_write(obj); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES struct LDKTrustedClosingTransaction ClosingTransaction_trust(const struct LDKClosingTransaction *NONNULL_PTR this_arg); - export function ClosingTransaction_trust(this_arg: number): number { + // struct LDKCResult_InitDecodeErrorZ Init_read(struct LDKu8slice ser); + export function Init_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingTransaction_trust(this_arg); + const nativeResponseValue = wasm.TS_Init_read(encodeUint8Array(ser)); return nativeResponseValue; } - // MUST_USE_RES struct LDKCResult_TrustedClosingTransactionNoneZ ClosingTransaction_verify(const struct LDKClosingTransaction *NONNULL_PTR this_arg, struct LDKOutPoint funding_outpoint); - export function ClosingTransaction_verify(this_arg: number, funding_outpoint: number): number { + // struct LDKCVec_u8Z OpenChannel_write(const struct LDKOpenChannel *NONNULL_PTR obj); + export function OpenChannel_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingTransaction_verify(this_arg, funding_outpoint); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_OpenChannel_write(obj); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES uint64_t ClosingTransaction_to_holder_value_sat(const struct LDKClosingTransaction *NONNULL_PTR this_arg); - export function ClosingTransaction_to_holder_value_sat(this_arg: number): number { + // struct LDKCResult_OpenChannelDecodeErrorZ OpenChannel_read(struct LDKu8slice ser); + export function OpenChannel_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingTransaction_to_holder_value_sat(this_arg); + const nativeResponseValue = wasm.TS_OpenChannel_read(encodeUint8Array(ser)); return nativeResponseValue; } - // MUST_USE_RES uint64_t ClosingTransaction_to_counterparty_value_sat(const struct LDKClosingTransaction *NONNULL_PTR this_arg); - export function ClosingTransaction_to_counterparty_value_sat(this_arg: number): number { + // struct LDKCVec_u8Z RevokeAndACK_write(const struct LDKRevokeAndACK *NONNULL_PTR obj); + export function RevokeAndACK_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingTransaction_to_counterparty_value_sat(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_RevokeAndACK_write(obj); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES struct LDKu8slice ClosingTransaction_to_holder_script(const struct LDKClosingTransaction *NONNULL_PTR this_arg); - export function ClosingTransaction_to_holder_script(this_arg: number): Uint8Array { + // struct LDKCResult_RevokeAndACKDecodeErrorZ RevokeAndACK_read(struct LDKu8slice ser); + export function RevokeAndACK_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingTransaction_to_holder_script(this_arg); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_RevokeAndACK_read(encodeUint8Array(ser)); + return nativeResponseValue; } - // MUST_USE_RES struct LDKu8slice ClosingTransaction_to_counterparty_script(const struct LDKClosingTransaction *NONNULL_PTR this_arg); - export function ClosingTransaction_to_counterparty_script(this_arg: number): Uint8Array { + // struct LDKCVec_u8Z Shutdown_write(const struct LDKShutdown *NONNULL_PTR obj); + export function Shutdown_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ClosingTransaction_to_counterparty_script(this_arg); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_Shutdown_write(obj); + return decodeUint8Array(nativeResponseValue); } - // void TrustedClosingTransaction_free(struct LDKTrustedClosingTransaction this_obj); - export function TrustedClosingTransaction_free(this_obj: number): void { + // struct LDKCResult_ShutdownDecodeErrorZ Shutdown_read(struct LDKu8slice ser); + export function Shutdown_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TrustedClosingTransaction_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_Shutdown_read(encodeUint8Array(ser)); + return nativeResponseValue; } - // MUST_USE_RES struct LDKTransaction TrustedClosingTransaction_built_transaction(const struct LDKTrustedClosingTransaction *NONNULL_PTR this_arg); - export function TrustedClosingTransaction_built_transaction(this_arg: number): Uint8Array { + // struct LDKCVec_u8Z UpdateFailHTLC_write(const struct LDKUpdateFailHTLC *NONNULL_PTR obj); + export function UpdateFailHTLC_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TrustedClosingTransaction_built_transaction(this_arg); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_UpdateFailHTLC_write(obj); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES struct LDKThirtyTwoBytes TrustedClosingTransaction_get_sighash_all(const struct LDKTrustedClosingTransaction *NONNULL_PTR this_arg, struct LDKu8slice funding_redeemscript, uint64_t channel_value_satoshis); - export function TrustedClosingTransaction_get_sighash_all(this_arg: number, funding_redeemscript: Uint8Array, channel_value_satoshis: number): Uint8Array { + // struct LDKCResult_UpdateFailHTLCDecodeErrorZ UpdateFailHTLC_read(struct LDKu8slice ser); + export function UpdateFailHTLC_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TrustedClosingTransaction_get_sighash_all(this_arg, encodeArray(funding_redeemscript), channel_value_satoshis); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_UpdateFailHTLC_read(encodeUint8Array(ser)); + return nativeResponseValue; } - // MUST_USE_RES struct LDKSignature TrustedClosingTransaction_sign(const struct LDKTrustedClosingTransaction *NONNULL_PTR this_arg, const uint8_t (*funding_key)[32], struct LDKu8slice funding_redeemscript, uint64_t channel_value_satoshis); - export function TrustedClosingTransaction_sign(this_arg: number, funding_key: Uint8Array, funding_redeemscript: Uint8Array, channel_value_satoshis: number): Uint8Array { + // struct LDKCVec_u8Z UpdateFailMalformedHTLC_write(const struct LDKUpdateFailMalformedHTLC *NONNULL_PTR obj); + export function UpdateFailMalformedHTLC_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TrustedClosingTransaction_sign(this_arg, encodeArray(funding_key), encodeArray(funding_redeemscript), channel_value_satoshis); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_UpdateFailMalformedHTLC_write(obj); + return decodeUint8Array(nativeResponseValue); } - // void CommitmentTransaction_free(struct LDKCommitmentTransaction this_obj); - export function CommitmentTransaction_free(this_obj: number): void { + // struct LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ UpdateFailMalformedHTLC_read(struct LDKu8slice ser); + export function UpdateFailMalformedHTLC_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentTransaction_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_UpdateFailMalformedHTLC_read(encodeUint8Array(ser)); + return nativeResponseValue; } - // uint64_t CommitmentTransaction_clone_ptr(LDKCommitmentTransaction *NONNULL_PTR arg); - export function CommitmentTransaction_clone_ptr(arg: number): number { + // struct LDKCVec_u8Z UpdateFee_write(const struct LDKUpdateFee *NONNULL_PTR obj); + export function UpdateFee_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentTransaction_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_UpdateFee_write(obj); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCommitmentTransaction CommitmentTransaction_clone(const struct LDKCommitmentTransaction *NONNULL_PTR orig); - export function CommitmentTransaction_clone(orig: number): number { + // struct LDKCResult_UpdateFeeDecodeErrorZ UpdateFee_read(struct LDKu8slice ser); + export function UpdateFee_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentTransaction_clone(orig); + const nativeResponseValue = wasm.TS_UpdateFee_read(encodeUint8Array(ser)); return nativeResponseValue; } - // struct LDKCVec_u8Z CommitmentTransaction_write(const struct LDKCommitmentTransaction *NONNULL_PTR obj); - export function CommitmentTransaction_write(obj: number): Uint8Array { + // struct LDKCVec_u8Z UpdateFulfillHTLC_write(const struct LDKUpdateFulfillHTLC *NONNULL_PTR obj); + export function UpdateFulfillHTLC_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentTransaction_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_UpdateFulfillHTLC_write(obj); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCResult_CommitmentTransactionDecodeErrorZ CommitmentTransaction_read(struct LDKu8slice ser); - export function CommitmentTransaction_read(ser: Uint8Array): number { + // struct LDKCResult_UpdateFulfillHTLCDecodeErrorZ UpdateFulfillHTLC_read(struct LDKu8slice ser); + export function UpdateFulfillHTLC_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentTransaction_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_UpdateFulfillHTLC_read(encodeUint8Array(ser)); return nativeResponseValue; } - // MUST_USE_RES uint64_t CommitmentTransaction_commitment_number(const struct LDKCommitmentTransaction *NONNULL_PTR this_arg); - export function CommitmentTransaction_commitment_number(this_arg: number): number { + // struct LDKCVec_u8Z UpdateAddHTLC_write(const struct LDKUpdateAddHTLC *NONNULL_PTR obj); + export function UpdateAddHTLC_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentTransaction_commitment_number(this_arg); - return nativeResponseValue; - } - // MUST_USE_RES uint64_t CommitmentTransaction_to_broadcaster_value_sat(const struct LDKCommitmentTransaction *NONNULL_PTR this_arg); - export function CommitmentTransaction_to_broadcaster_value_sat(this_arg: number): number { + const nativeResponseValue = wasm.TS_UpdateAddHTLC_write(obj); + return decodeUint8Array(nativeResponseValue); + } + // struct LDKCResult_UpdateAddHTLCDecodeErrorZ UpdateAddHTLC_read(struct LDKu8slice ser); + export function UpdateAddHTLC_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentTransaction_to_broadcaster_value_sat(this_arg); + const nativeResponseValue = wasm.TS_UpdateAddHTLC_read(encodeUint8Array(ser)); return nativeResponseValue; } - // MUST_USE_RES uint64_t CommitmentTransaction_to_countersignatory_value_sat(const struct LDKCommitmentTransaction *NONNULL_PTR this_arg); - export function CommitmentTransaction_to_countersignatory_value_sat(this_arg: number): number { + // struct LDKCVec_u8Z Ping_write(const struct LDKPing *NONNULL_PTR obj); + export function Ping_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentTransaction_to_countersignatory_value_sat(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Ping_write(obj); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES uint32_t CommitmentTransaction_feerate_per_kw(const struct LDKCommitmentTransaction *NONNULL_PTR this_arg); - export function CommitmentTransaction_feerate_per_kw(this_arg: number): number { + // struct LDKCResult_PingDecodeErrorZ Ping_read(struct LDKu8slice ser); + export function Ping_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentTransaction_feerate_per_kw(this_arg); + const nativeResponseValue = wasm.TS_Ping_read(encodeUint8Array(ser)); return nativeResponseValue; } - // MUST_USE_RES struct LDKTrustedCommitmentTransaction CommitmentTransaction_trust(const struct LDKCommitmentTransaction *NONNULL_PTR this_arg); - export function CommitmentTransaction_trust(this_arg: number): number { + // struct LDKCVec_u8Z Pong_write(const struct LDKPong *NONNULL_PTR obj); + export function Pong_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentTransaction_trust(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Pong_write(obj); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES struct LDKCResult_TrustedCommitmentTransactionNoneZ CommitmentTransaction_verify(const struct LDKCommitmentTransaction *NONNULL_PTR this_arg, const struct LDKDirectedChannelTransactionParameters *NONNULL_PTR channel_parameters, const struct LDKChannelPublicKeys *NONNULL_PTR broadcaster_keys, const struct LDKChannelPublicKeys *NONNULL_PTR countersignatory_keys); - export function CommitmentTransaction_verify(this_arg: number, channel_parameters: number, broadcaster_keys: number, countersignatory_keys: number): number { + // struct LDKCResult_PongDecodeErrorZ Pong_read(struct LDKu8slice ser); + export function Pong_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CommitmentTransaction_verify(this_arg, channel_parameters, broadcaster_keys, countersignatory_keys); + const nativeResponseValue = wasm.TS_Pong_read(encodeUint8Array(ser)); return nativeResponseValue; } - // void TrustedCommitmentTransaction_free(struct LDKTrustedCommitmentTransaction this_obj); - export function TrustedCommitmentTransaction_free(this_obj: number): void { + // struct LDKCVec_u8Z UnsignedChannelAnnouncement_write(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR obj); + export function UnsignedChannelAnnouncement_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TrustedCommitmentTransaction_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_write(obj); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES struct LDKThirtyTwoBytes TrustedCommitmentTransaction_txid(const struct LDKTrustedCommitmentTransaction *NONNULL_PTR this_arg); - export function TrustedCommitmentTransaction_txid(this_arg: number): Uint8Array { + // struct LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ UnsignedChannelAnnouncement_read(struct LDKu8slice ser); + export function UnsignedChannelAnnouncement_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TrustedCommitmentTransaction_txid(this_arg); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_read(encodeUint8Array(ser)); + return nativeResponseValue; } - // MUST_USE_RES struct LDKBuiltCommitmentTransaction TrustedCommitmentTransaction_built_transaction(const struct LDKTrustedCommitmentTransaction *NONNULL_PTR this_arg); - export function TrustedCommitmentTransaction_built_transaction(this_arg: number): number { + // struct LDKCVec_u8Z ChannelAnnouncement_write(const struct LDKChannelAnnouncement *NONNULL_PTR obj); + export function ChannelAnnouncement_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TrustedCommitmentTransaction_built_transaction(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelAnnouncement_write(obj); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES struct LDKTxCreationKeys TrustedCommitmentTransaction_keys(const struct LDKTrustedCommitmentTransaction *NONNULL_PTR this_arg); - export function TrustedCommitmentTransaction_keys(this_arg: number): number { + // struct LDKCResult_ChannelAnnouncementDecodeErrorZ ChannelAnnouncement_read(struct LDKu8slice ser); + export function ChannelAnnouncement_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TrustedCommitmentTransaction_keys(this_arg); + const nativeResponseValue = wasm.TS_ChannelAnnouncement_read(encodeUint8Array(ser)); return nativeResponseValue; } - // MUST_USE_RES bool TrustedCommitmentTransaction_opt_anchors(const struct LDKTrustedCommitmentTransaction *NONNULL_PTR this_arg); - export function TrustedCommitmentTransaction_opt_anchors(this_arg: number): boolean { + // struct LDKCVec_u8Z UnsignedChannelUpdate_write(const struct LDKUnsignedChannelUpdate *NONNULL_PTR obj); + export function UnsignedChannelUpdate_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TrustedCommitmentTransaction_opt_anchors(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_UnsignedChannelUpdate_write(obj); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES struct LDKCResult_CVec_SignatureZNoneZ TrustedCommitmentTransaction_get_htlc_sigs(const struct LDKTrustedCommitmentTransaction *NONNULL_PTR this_arg, const uint8_t (*htlc_base_key)[32], const struct LDKDirectedChannelTransactionParameters *NONNULL_PTR channel_parameters); - export function TrustedCommitmentTransaction_get_htlc_sigs(this_arg: number, htlc_base_key: Uint8Array, channel_parameters: number): number { + // struct LDKCResult_UnsignedChannelUpdateDecodeErrorZ UnsignedChannelUpdate_read(struct LDKu8slice ser); + export function UnsignedChannelUpdate_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.TrustedCommitmentTransaction_get_htlc_sigs(this_arg, encodeArray(htlc_base_key), channel_parameters); + const nativeResponseValue = wasm.TS_UnsignedChannelUpdate_read(encodeUint8Array(ser)); return nativeResponseValue; } - // uint64_t get_commitment_transaction_number_obscure_factor(struct LDKPublicKey broadcaster_payment_basepoint, struct LDKPublicKey countersignatory_payment_basepoint, bool outbound_from_broadcaster); - export function get_commitment_transaction_number_obscure_factor(broadcaster_payment_basepoint: Uint8Array, countersignatory_payment_basepoint: Uint8Array, outbound_from_broadcaster: boolean): number { + // struct LDKCVec_u8Z ChannelUpdate_write(const struct LDKChannelUpdate *NONNULL_PTR obj); + export function ChannelUpdate_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.get_commitment_transaction_number_obscure_factor(encodeArray(broadcaster_payment_basepoint), encodeArray(countersignatory_payment_basepoint), outbound_from_broadcaster); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelUpdate_write(obj); + return decodeUint8Array(nativeResponseValue); } - // bool InitFeatures_eq(const struct LDKInitFeatures *NONNULL_PTR a, const struct LDKInitFeatures *NONNULL_PTR b); - export function InitFeatures_eq(a: number, b: number): boolean { + // struct LDKCResult_ChannelUpdateDecodeErrorZ ChannelUpdate_read(struct LDKu8slice ser); + export function ChannelUpdate_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InitFeatures_eq(a, b); + const nativeResponseValue = wasm.TS_ChannelUpdate_read(encodeUint8Array(ser)); return nativeResponseValue; } - // bool NodeFeatures_eq(const struct LDKNodeFeatures *NONNULL_PTR a, const struct LDKNodeFeatures *NONNULL_PTR b); - export function NodeFeatures_eq(a: number, b: number): boolean { + // struct LDKCVec_u8Z ErrorMessage_write(const struct LDKErrorMessage *NONNULL_PTR obj); + export function ErrorMessage_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeFeatures_eq(a, b); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ErrorMessage_write(obj); + return decodeUint8Array(nativeResponseValue); } - // bool ChannelFeatures_eq(const struct LDKChannelFeatures *NONNULL_PTR a, const struct LDKChannelFeatures *NONNULL_PTR b); - export function ChannelFeatures_eq(a: number, b: number): boolean { + // struct LDKCResult_ErrorMessageDecodeErrorZ ErrorMessage_read(struct LDKu8slice ser); + export function ErrorMessage_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelFeatures_eq(a, b); + const nativeResponseValue = wasm.TS_ErrorMessage_read(encodeUint8Array(ser)); return nativeResponseValue; } - // bool InvoiceFeatures_eq(const struct LDKInvoiceFeatures *NONNULL_PTR a, const struct LDKInvoiceFeatures *NONNULL_PTR b); - export function InvoiceFeatures_eq(a: number, b: number): boolean { + // struct LDKCVec_u8Z UnsignedNodeAnnouncement_write(const struct LDKUnsignedNodeAnnouncement *NONNULL_PTR obj); + export function UnsignedNodeAnnouncement_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InvoiceFeatures_eq(a, b); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_UnsignedNodeAnnouncement_write(obj); + return decodeUint8Array(nativeResponseValue); } - // bool ChannelTypeFeatures_eq(const struct LDKChannelTypeFeatures *NONNULL_PTR a, const struct LDKChannelTypeFeatures *NONNULL_PTR b); - export function ChannelTypeFeatures_eq(a: number, b: number): boolean { + // struct LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ UnsignedNodeAnnouncement_read(struct LDKu8slice ser); + export function UnsignedNodeAnnouncement_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTypeFeatures_eq(a, b); + const nativeResponseValue = wasm.TS_UnsignedNodeAnnouncement_read(encodeUint8Array(ser)); return nativeResponseValue; } - // uint64_t InitFeatures_clone_ptr(LDKInitFeatures *NONNULL_PTR arg); - export function InitFeatures_clone_ptr(arg: number): number { + // struct LDKCVec_u8Z NodeAnnouncement_write(const struct LDKNodeAnnouncement *NONNULL_PTR obj); + export function NodeAnnouncement_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InitFeatures_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_NodeAnnouncement_write(obj); + return decodeUint8Array(nativeResponseValue); } - // struct LDKInitFeatures InitFeatures_clone(const struct LDKInitFeatures *NONNULL_PTR orig); - export function InitFeatures_clone(orig: number): number { + // struct LDKCResult_NodeAnnouncementDecodeErrorZ NodeAnnouncement_read(struct LDKu8slice ser); + export function NodeAnnouncement_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InitFeatures_clone(orig); + const nativeResponseValue = wasm.TS_NodeAnnouncement_read(encodeUint8Array(ser)); return nativeResponseValue; } - // uint64_t NodeFeatures_clone_ptr(LDKNodeFeatures *NONNULL_PTR arg); - export function NodeFeatures_clone_ptr(arg: number): number { + // struct LDKCResult_QueryShortChannelIdsDecodeErrorZ QueryShortChannelIds_read(struct LDKu8slice ser); + export function QueryShortChannelIds_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeFeatures_clone_ptr(arg); + const nativeResponseValue = wasm.TS_QueryShortChannelIds_read(encodeUint8Array(ser)); return nativeResponseValue; } - // struct LDKNodeFeatures NodeFeatures_clone(const struct LDKNodeFeatures *NONNULL_PTR orig); - export function NodeFeatures_clone(orig: number): number { + // struct LDKCVec_u8Z QueryShortChannelIds_write(const struct LDKQueryShortChannelIds *NONNULL_PTR obj); + export function QueryShortChannelIds_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeFeatures_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_QueryShortChannelIds_write(obj); + return decodeUint8Array(nativeResponseValue); } - // uint64_t ChannelFeatures_clone_ptr(LDKChannelFeatures *NONNULL_PTR arg); - export function ChannelFeatures_clone_ptr(arg: number): number { + // struct LDKCVec_u8Z ReplyShortChannelIdsEnd_write(const struct LDKReplyShortChannelIdsEnd *NONNULL_PTR obj); + export function ReplyShortChannelIdsEnd_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelFeatures_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ReplyShortChannelIdsEnd_write(obj); + return decodeUint8Array(nativeResponseValue); } - // struct LDKChannelFeatures ChannelFeatures_clone(const struct LDKChannelFeatures *NONNULL_PTR orig); - export function ChannelFeatures_clone(orig: number): number { + // struct LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ ReplyShortChannelIdsEnd_read(struct LDKu8slice ser); + export function ReplyShortChannelIdsEnd_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelFeatures_clone(orig); + const nativeResponseValue = wasm.TS_ReplyShortChannelIdsEnd_read(encodeUint8Array(ser)); return nativeResponseValue; } - // uint64_t InvoiceFeatures_clone_ptr(LDKInvoiceFeatures *NONNULL_PTR arg); - export function InvoiceFeatures_clone_ptr(arg: number): number { + // MUST_USE_RES uint32_t QueryChannelRange_end_blocknum(const struct LDKQueryChannelRange *NONNULL_PTR this_arg); + export function QueryChannelRange_end_blocknum(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InvoiceFeatures_clone_ptr(arg); + const nativeResponseValue = wasm.TS_QueryChannelRange_end_blocknum(this_arg); return nativeResponseValue; } - // struct LDKInvoiceFeatures InvoiceFeatures_clone(const struct LDKInvoiceFeatures *NONNULL_PTR orig); - export function InvoiceFeatures_clone(orig: number): number { + // struct LDKCVec_u8Z QueryChannelRange_write(const struct LDKQueryChannelRange *NONNULL_PTR obj); + export function QueryChannelRange_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InvoiceFeatures_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_QueryChannelRange_write(obj); + return decodeUint8Array(nativeResponseValue); } - // uint64_t ChannelTypeFeatures_clone_ptr(LDKChannelTypeFeatures *NONNULL_PTR arg); - export function ChannelTypeFeatures_clone_ptr(arg: number): number { + // struct LDKCResult_QueryChannelRangeDecodeErrorZ QueryChannelRange_read(struct LDKu8slice ser); + export function QueryChannelRange_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTypeFeatures_clone_ptr(arg); + const nativeResponseValue = wasm.TS_QueryChannelRange_read(encodeUint8Array(ser)); return nativeResponseValue; } - // struct LDKChannelTypeFeatures ChannelTypeFeatures_clone(const struct LDKChannelTypeFeatures *NONNULL_PTR orig); - export function ChannelTypeFeatures_clone(orig: number): number { + // struct LDKCResult_ReplyChannelRangeDecodeErrorZ ReplyChannelRange_read(struct LDKu8slice ser); + export function ReplyChannelRange_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTypeFeatures_clone(orig); + const nativeResponseValue = wasm.TS_ReplyChannelRange_read(encodeUint8Array(ser)); return nativeResponseValue; } - // void InitFeatures_free(struct LDKInitFeatures this_obj); - export function InitFeatures_free(this_obj: number): void { + // struct LDKCVec_u8Z ReplyChannelRange_write(const struct LDKReplyChannelRange *NONNULL_PTR obj); + export function ReplyChannelRange_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InitFeatures_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_ReplyChannelRange_write(obj); + return decodeUint8Array(nativeResponseValue); } - // void NodeFeatures_free(struct LDKNodeFeatures this_obj); - export function NodeFeatures_free(this_obj: number): void { + // struct LDKCVec_u8Z GossipTimestampFilter_write(const struct LDKGossipTimestampFilter *NONNULL_PTR obj); + export function GossipTimestampFilter_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeFeatures_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_GossipTimestampFilter_write(obj); + return decodeUint8Array(nativeResponseValue); } - // void ChannelFeatures_free(struct LDKChannelFeatures this_obj); - export function ChannelFeatures_free(this_obj: number): void { + // struct LDKCResult_GossipTimestampFilterDecodeErrorZ GossipTimestampFilter_read(struct LDKu8slice ser); + export function GossipTimestampFilter_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelFeatures_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_GossipTimestampFilter_read(encodeUint8Array(ser)); + return nativeResponseValue; } - // void InvoiceFeatures_free(struct LDKInvoiceFeatures this_obj); - export function InvoiceFeatures_free(this_obj: number): void { + // void CustomMessageHandler_free(struct LDKCustomMessageHandler this_ptr); + export function CustomMessageHandler_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InvoiceFeatures_free(this_obj); + const nativeResponseValue = wasm.TS_CustomMessageHandler_free(this_ptr); // debug statements here } - // void ChannelTypeFeatures_free(struct LDKChannelTypeFeatures this_obj); - export function ChannelTypeFeatures_free(this_obj: number): void { + // void IgnoringMessageHandler_free(struct LDKIgnoringMessageHandler this_obj); + export function IgnoringMessageHandler_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTypeFeatures_free(this_obj); + const nativeResponseValue = wasm.TS_IgnoringMessageHandler_free(this_obj); // debug statements here } - // MUST_USE_RES struct LDKInitFeatures InitFeatures_empty(void); - export function InitFeatures_empty(): number { + // MUST_USE_RES struct LDKIgnoringMessageHandler IgnoringMessageHandler_new(void); + export function IgnoringMessageHandler_new(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InitFeatures_empty(); + const nativeResponseValue = wasm.TS_IgnoringMessageHandler_new(); return nativeResponseValue; } - // MUST_USE_RES struct LDKInitFeatures InitFeatures_known(void); - export function InitFeatures_known(): number { + // struct LDKMessageSendEventsProvider IgnoringMessageHandler_as_MessageSendEventsProvider(const struct LDKIgnoringMessageHandler *NONNULL_PTR this_arg); + export function IgnoringMessageHandler_as_MessageSendEventsProvider(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InitFeatures_known(); + const nativeResponseValue = wasm.TS_IgnoringMessageHandler_as_MessageSendEventsProvider(this_arg); return nativeResponseValue; } - // MUST_USE_RES bool InitFeatures_requires_unknown_bits(const struct LDKInitFeatures *NONNULL_PTR this_arg); - export function InitFeatures_requires_unknown_bits(this_arg: number): boolean { + // struct LDKRoutingMessageHandler IgnoringMessageHandler_as_RoutingMessageHandler(const struct LDKIgnoringMessageHandler *NONNULL_PTR this_arg); + export function IgnoringMessageHandler_as_RoutingMessageHandler(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InitFeatures_requires_unknown_bits(this_arg); + const nativeResponseValue = wasm.TS_IgnoringMessageHandler_as_RoutingMessageHandler(this_arg); return nativeResponseValue; } - // MUST_USE_RES struct LDKNodeFeatures NodeFeatures_empty(void); - export function NodeFeatures_empty(): number { + // struct LDKCustomMessageReader IgnoringMessageHandler_as_CustomMessageReader(const struct LDKIgnoringMessageHandler *NONNULL_PTR this_arg); + export function IgnoringMessageHandler_as_CustomMessageReader(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeFeatures_empty(); + const nativeResponseValue = wasm.TS_IgnoringMessageHandler_as_CustomMessageReader(this_arg); return nativeResponseValue; } - // MUST_USE_RES struct LDKNodeFeatures NodeFeatures_known(void); - export function NodeFeatures_known(): number { + // struct LDKCustomMessageHandler IgnoringMessageHandler_as_CustomMessageHandler(const struct LDKIgnoringMessageHandler *NONNULL_PTR this_arg); + export function IgnoringMessageHandler_as_CustomMessageHandler(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeFeatures_known(); + const nativeResponseValue = wasm.TS_IgnoringMessageHandler_as_CustomMessageHandler(this_arg); return nativeResponseValue; } - // MUST_USE_RES bool NodeFeatures_requires_unknown_bits(const struct LDKNodeFeatures *NONNULL_PTR this_arg); - export function NodeFeatures_requires_unknown_bits(this_arg: number): boolean { + // void ErroringMessageHandler_free(struct LDKErroringMessageHandler this_obj); + export function ErroringMessageHandler_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeFeatures_requires_unknown_bits(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ErroringMessageHandler_free(this_obj); + // debug statements here } - // MUST_USE_RES struct LDKChannelFeatures ChannelFeatures_empty(void); - export function ChannelFeatures_empty(): number { + // MUST_USE_RES struct LDKErroringMessageHandler ErroringMessageHandler_new(void); + export function ErroringMessageHandler_new(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelFeatures_empty(); + const nativeResponseValue = wasm.TS_ErroringMessageHandler_new(); return nativeResponseValue; } - // MUST_USE_RES struct LDKChannelFeatures ChannelFeatures_known(void); - export function ChannelFeatures_known(): number { + // struct LDKMessageSendEventsProvider ErroringMessageHandler_as_MessageSendEventsProvider(const struct LDKErroringMessageHandler *NONNULL_PTR this_arg); + export function ErroringMessageHandler_as_MessageSendEventsProvider(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelFeatures_known(); + const nativeResponseValue = wasm.TS_ErroringMessageHandler_as_MessageSendEventsProvider(this_arg); return nativeResponseValue; } - // MUST_USE_RES bool ChannelFeatures_requires_unknown_bits(const struct LDKChannelFeatures *NONNULL_PTR this_arg); - export function ChannelFeatures_requires_unknown_bits(this_arg: number): boolean { + // struct LDKChannelMessageHandler ErroringMessageHandler_as_ChannelMessageHandler(const struct LDKErroringMessageHandler *NONNULL_PTR this_arg); + export function ErroringMessageHandler_as_ChannelMessageHandler(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelFeatures_requires_unknown_bits(this_arg); + const nativeResponseValue = wasm.TS_ErroringMessageHandler_as_ChannelMessageHandler(this_arg); return nativeResponseValue; } - // MUST_USE_RES struct LDKInvoiceFeatures InvoiceFeatures_empty(void); - export function InvoiceFeatures_empty(): number { + // void MessageHandler_free(struct LDKMessageHandler this_obj); + export function MessageHandler_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InvoiceFeatures_empty(); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_MessageHandler_free(this_obj); + // debug statements here } - // MUST_USE_RES struct LDKInvoiceFeatures InvoiceFeatures_known(void); - export function InvoiceFeatures_known(): number { + // const struct LDKChannelMessageHandler *MessageHandler_get_chan_handler(const struct LDKMessageHandler *NONNULL_PTR this_ptr); + export function MessageHandler_get_chan_handler(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InvoiceFeatures_known(); + const nativeResponseValue = wasm.TS_MessageHandler_get_chan_handler(this_ptr); return nativeResponseValue; } - // MUST_USE_RES bool InvoiceFeatures_requires_unknown_bits(const struct LDKInvoiceFeatures *NONNULL_PTR this_arg); - export function InvoiceFeatures_requires_unknown_bits(this_arg: number): boolean { + // void MessageHandler_set_chan_handler(struct LDKMessageHandler *NONNULL_PTR this_ptr, struct LDKChannelMessageHandler val); + export function MessageHandler_set_chan_handler(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InvoiceFeatures_requires_unknown_bits(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_MessageHandler_set_chan_handler(this_ptr, val); + // debug statements here } - // MUST_USE_RES struct LDKChannelTypeFeatures ChannelTypeFeatures_empty(void); - export function ChannelTypeFeatures_empty(): number { + // const struct LDKRoutingMessageHandler *MessageHandler_get_route_handler(const struct LDKMessageHandler *NONNULL_PTR this_ptr); + export function MessageHandler_get_route_handler(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTypeFeatures_empty(); + const nativeResponseValue = wasm.TS_MessageHandler_get_route_handler(this_ptr); return nativeResponseValue; } - // MUST_USE_RES struct LDKChannelTypeFeatures ChannelTypeFeatures_known(void); - export function ChannelTypeFeatures_known(): number { + // void MessageHandler_set_route_handler(struct LDKMessageHandler *NONNULL_PTR this_ptr, struct LDKRoutingMessageHandler val); + export function MessageHandler_set_route_handler(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTypeFeatures_known(); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_MessageHandler_set_route_handler(this_ptr, val); + // debug statements here } - // MUST_USE_RES bool ChannelTypeFeatures_requires_unknown_bits(const struct LDKChannelTypeFeatures *NONNULL_PTR this_arg); - export function ChannelTypeFeatures_requires_unknown_bits(this_arg: number): boolean { + // MUST_USE_RES struct LDKMessageHandler MessageHandler_new(struct LDKChannelMessageHandler chan_handler_arg, struct LDKRoutingMessageHandler route_handler_arg); + export function MessageHandler_new(chan_handler_arg: number, route_handler_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTypeFeatures_requires_unknown_bits(this_arg); + const nativeResponseValue = wasm.TS_MessageHandler_new(chan_handler_arg, route_handler_arg); return nativeResponseValue; } - // struct LDKCVec_u8Z InitFeatures_write(const struct LDKInitFeatures *NONNULL_PTR obj); - export function InitFeatures_write(obj: number): Uint8Array { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.InitFeatures_write(obj); - return decodeArray(nativeResponseValue); - } - // struct LDKCResult_InitFeaturesDecodeErrorZ InitFeatures_read(struct LDKu8slice ser); - export function InitFeatures_read(ser: Uint8Array): number { + // uint64_t SocketDescriptor_clone_ptr(LDKSocketDescriptor *NONNULL_PTR arg); + export function SocketDescriptor_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InitFeatures_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_SocketDescriptor_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCVec_u8Z ChannelFeatures_write(const struct LDKChannelFeatures *NONNULL_PTR obj); - export function ChannelFeatures_write(obj: number): Uint8Array { + // struct LDKSocketDescriptor SocketDescriptor_clone(const struct LDKSocketDescriptor *NONNULL_PTR orig); + export function SocketDescriptor_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelFeatures_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_SocketDescriptor_clone(orig); + return nativeResponseValue; } - // struct LDKCResult_ChannelFeaturesDecodeErrorZ ChannelFeatures_read(struct LDKu8slice ser); - export function ChannelFeatures_read(ser: Uint8Array): number { + // void SocketDescriptor_free(struct LDKSocketDescriptor this_ptr); + export function SocketDescriptor_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelFeatures_read(encodeArray(ser)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_SocketDescriptor_free(this_ptr); + // debug statements here } - // struct LDKCVec_u8Z NodeFeatures_write(const struct LDKNodeFeatures *NONNULL_PTR obj); - export function NodeFeatures_write(obj: number): Uint8Array { + // void PeerHandleError_free(struct LDKPeerHandleError this_obj); + export function PeerHandleError_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeFeatures_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_PeerHandleError_free(this_obj); + // debug statements here } - // struct LDKCResult_NodeFeaturesDecodeErrorZ NodeFeatures_read(struct LDKu8slice ser); - export function NodeFeatures_read(ser: Uint8Array): number { + // bool PeerHandleError_get_no_connection_possible(const struct LDKPeerHandleError *NONNULL_PTR this_ptr); + export function PeerHandleError_get_no_connection_possible(this_ptr: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeFeatures_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_PeerHandleError_get_no_connection_possible(this_ptr); return nativeResponseValue; } - // struct LDKCVec_u8Z InvoiceFeatures_write(const struct LDKInvoiceFeatures *NONNULL_PTR obj); - export function InvoiceFeatures_write(obj: number): Uint8Array { + // void PeerHandleError_set_no_connection_possible(struct LDKPeerHandleError *NONNULL_PTR this_ptr, bool val); + export function PeerHandleError_set_no_connection_possible(this_ptr: number, val: boolean): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InvoiceFeatures_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_PeerHandleError_set_no_connection_possible(this_ptr, val); + // debug statements here } - // struct LDKCResult_InvoiceFeaturesDecodeErrorZ InvoiceFeatures_read(struct LDKu8slice ser); - export function InvoiceFeatures_read(ser: Uint8Array): number { + // MUST_USE_RES struct LDKPeerHandleError PeerHandleError_new(bool no_connection_possible_arg); + export function PeerHandleError_new(no_connection_possible_arg: boolean): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InvoiceFeatures_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_PeerHandleError_new(no_connection_possible_arg); return nativeResponseValue; } - // struct LDKCVec_u8Z ChannelTypeFeatures_write(const struct LDKChannelTypeFeatures *NONNULL_PTR obj); - export function ChannelTypeFeatures_write(obj: number): Uint8Array { + // uint64_t PeerHandleError_clone_ptr(LDKPeerHandleError *NONNULL_PTR arg); + export function PeerHandleError_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTypeFeatures_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_PeerHandleError_clone_ptr(arg); + return nativeResponseValue; } - // struct LDKCResult_ChannelTypeFeaturesDecodeErrorZ ChannelTypeFeatures_read(struct LDKu8slice ser); - export function ChannelTypeFeatures_read(ser: Uint8Array): number { + // struct LDKPeerHandleError PeerHandleError_clone(const struct LDKPeerHandleError *NONNULL_PTR orig); + export function PeerHandleError_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelTypeFeatures_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_PeerHandleError_clone(orig); return nativeResponseValue; } - // void ShutdownScript_free(struct LDKShutdownScript this_obj); - export function ShutdownScript_free(this_obj: number): void { + // void PeerManager_free(struct LDKPeerManager this_obj); + export function PeerManager_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ShutdownScript_free(this_obj); + const nativeResponseValue = wasm.TS_PeerManager_free(this_obj); // debug statements here } - // uint64_t ShutdownScript_clone_ptr(LDKShutdownScript *NONNULL_PTR arg); - export function ShutdownScript_clone_ptr(arg: number): number { + // 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); + export function PeerManager_new(message_handler: number, our_node_secret: Uint8Array, ephemeral_random_data: Uint8Array, logger: number, custom_message_handler: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ShutdownScript_clone_ptr(arg); + const nativeResponseValue = wasm.TS_PeerManager_new(message_handler, encodeUint8Array(our_node_secret), encodeUint8Array(ephemeral_random_data), logger, custom_message_handler); return nativeResponseValue; } - // struct LDKShutdownScript ShutdownScript_clone(const struct LDKShutdownScript *NONNULL_PTR orig); - export function ShutdownScript_clone(orig: number): number { + // MUST_USE_RES struct LDKCVec_PublicKeyZ PeerManager_get_peer_node_ids(const struct LDKPeerManager *NONNULL_PTR this_arg); + export function PeerManager_get_peer_node_ids(this_arg: number): Uint8Array[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ShutdownScript_clone(orig); + const nativeResponseValue = wasm.TS_PeerManager_get_peer_node_ids(this_arg); return nativeResponseValue; } - // void InvalidShutdownScript_free(struct LDKInvalidShutdownScript this_obj); - export function InvalidShutdownScript_free(this_obj: number): void { + // MUST_USE_RES struct LDKCResult_CVec_u8ZPeerHandleErrorZ PeerManager_new_outbound_connection(const struct LDKPeerManager *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, struct LDKSocketDescriptor descriptor); + export function PeerManager_new_outbound_connection(this_arg: number, their_node_id: Uint8Array, descriptor: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InvalidShutdownScript_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_PeerManager_new_outbound_connection(this_arg, encodeUint8Array(their_node_id), descriptor); + return nativeResponseValue; } - // struct LDKu8slice InvalidShutdownScript_get_script(const struct LDKInvalidShutdownScript *NONNULL_PTR this_ptr); - export function InvalidShutdownScript_get_script(this_ptr: number): Uint8Array { + // MUST_USE_RES struct LDKCResult_NonePeerHandleErrorZ PeerManager_new_inbound_connection(const struct LDKPeerManager *NONNULL_PTR this_arg, struct LDKSocketDescriptor descriptor); + export function PeerManager_new_inbound_connection(this_arg: number, descriptor: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InvalidShutdownScript_get_script(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_PeerManager_new_inbound_connection(this_arg, descriptor); + return nativeResponseValue; } - // void InvalidShutdownScript_set_script(struct LDKInvalidShutdownScript *NONNULL_PTR this_ptr, struct LDKCVec_u8Z val); - export function InvalidShutdownScript_set_script(this_ptr: number, val: Uint8Array): void { + // MUST_USE_RES struct LDKCResult_NonePeerHandleErrorZ PeerManager_write_buffer_space_avail(const struct LDKPeerManager *NONNULL_PTR this_arg, struct LDKSocketDescriptor *NONNULL_PTR descriptor); + export function PeerManager_write_buffer_space_avail(this_arg: number, descriptor: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InvalidShutdownScript_set_script(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_PeerManager_write_buffer_space_avail(this_arg, descriptor); + return nativeResponseValue; } - // MUST_USE_RES struct LDKInvalidShutdownScript InvalidShutdownScript_new(struct LDKCVec_u8Z script_arg); - export function InvalidShutdownScript_new(script_arg: Uint8Array): number { + // MUST_USE_RES struct LDKCResult_boolPeerHandleErrorZ PeerManager_read_event(const struct LDKPeerManager *NONNULL_PTR this_arg, struct LDKSocketDescriptor *NONNULL_PTR peer_descriptor, struct LDKu8slice data); + export function PeerManager_read_event(this_arg: number, peer_descriptor: number, data: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InvalidShutdownScript_new(encodeArray(script_arg)); + const nativeResponseValue = wasm.TS_PeerManager_read_event(this_arg, peer_descriptor, encodeUint8Array(data)); return nativeResponseValue; } - // uint64_t InvalidShutdownScript_clone_ptr(LDKInvalidShutdownScript *NONNULL_PTR arg); - export function InvalidShutdownScript_clone_ptr(arg: number): number { + // void PeerManager_process_events(const struct LDKPeerManager *NONNULL_PTR this_arg); + export function PeerManager_process_events(this_arg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InvalidShutdownScript_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_PeerManager_process_events(this_arg); + // debug statements here } - // struct LDKInvalidShutdownScript InvalidShutdownScript_clone(const struct LDKInvalidShutdownScript *NONNULL_PTR orig); - export function InvalidShutdownScript_clone(orig: number): number { + // void PeerManager_socket_disconnected(const struct LDKPeerManager *NONNULL_PTR this_arg, const struct LDKSocketDescriptor *NONNULL_PTR descriptor); + export function PeerManager_socket_disconnected(this_arg: number, descriptor: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InvalidShutdownScript_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_PeerManager_socket_disconnected(this_arg, descriptor); + // debug statements here } - // struct LDKCVec_u8Z ShutdownScript_write(const struct LDKShutdownScript *NONNULL_PTR obj); - export function ShutdownScript_write(obj: number): Uint8Array { + // void PeerManager_disconnect_by_node_id(const struct LDKPeerManager *NONNULL_PTR this_arg, struct LDKPublicKey node_id, bool no_connection_possible); + export function PeerManager_disconnect_by_node_id(this_arg: number, node_id: Uint8Array, no_connection_possible: boolean): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ShutdownScript_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_PeerManager_disconnect_by_node_id(this_arg, encodeUint8Array(node_id), no_connection_possible); + // debug statements here } - // struct LDKCResult_ShutdownScriptDecodeErrorZ ShutdownScript_read(struct LDKu8slice ser); - export function ShutdownScript_read(ser: Uint8Array): number { + // void PeerManager_disconnect_all_peers(const struct LDKPeerManager *NONNULL_PTR this_arg); + export function PeerManager_disconnect_all_peers(this_arg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ShutdownScript_read(encodeArray(ser)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_PeerManager_disconnect_all_peers(this_arg); + // debug statements here } - // MUST_USE_RES struct LDKShutdownScript ShutdownScript_new_p2wpkh(const uint8_t (*pubkey_hash)[20]); - export function ShutdownScript_new_p2wpkh(pubkey_hash: Uint8Array): number { + // void PeerManager_timer_tick_occurred(const struct LDKPeerManager *NONNULL_PTR this_arg); + export function PeerManager_timer_tick_occurred(this_arg: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ShutdownScript_new_p2wpkh(encodeArray(pubkey_hash)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_PeerManager_timer_tick_occurred(this_arg); + // debug statements here } - // MUST_USE_RES struct LDKShutdownScript ShutdownScript_new_p2wsh(const uint8_t (*script_hash)[32]); - export function ShutdownScript_new_p2wsh(script_hash: Uint8Array): number { + // uint64_t htlc_success_tx_weight(bool opt_anchors); + export function htlc_success_tx_weight(opt_anchors: boolean): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ShutdownScript_new_p2wsh(encodeArray(script_hash)); + const nativeResponseValue = wasm.TS_htlc_success_tx_weight(opt_anchors); return nativeResponseValue; } - // MUST_USE_RES struct LDKCResult_ShutdownScriptInvalidShutdownScriptZ ShutdownScript_new_witness_program(uint8_t version, struct LDKu8slice program); - export function ShutdownScript_new_witness_program(version: number, program: Uint8Array): number { + // uint64_t htlc_timeout_tx_weight(bool opt_anchors); + export function htlc_timeout_tx_weight(opt_anchors: boolean): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ShutdownScript_new_witness_program(version, encodeArray(program)); + const nativeResponseValue = wasm.TS_htlc_timeout_tx_weight(opt_anchors); return nativeResponseValue; } - // MUST_USE_RES struct LDKCVec_u8Z ShutdownScript_into_inner(struct LDKShutdownScript this_arg); - export function ShutdownScript_into_inner(this_arg: number): Uint8Array { + // struct LDKThirtyTwoBytes build_commitment_secret(const uint8_t (*commitment_seed)[32], uint64_t idx); + export function build_commitment_secret(commitment_seed: Uint8Array, idx: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ShutdownScript_into_inner(this_arg); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_build_commitment_secret(encodeUint8Array(commitment_seed), idx); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES struct LDKPublicKey ShutdownScript_as_legacy_pubkey(const struct LDKShutdownScript *NONNULL_PTR this_arg); - export function ShutdownScript_as_legacy_pubkey(this_arg: number): Uint8Array { + // struct LDKTransaction build_closing_transaction(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); + export function build_closing_transaction(to_holder_value_sat: number, to_counterparty_value_sat: number, to_holder_script: Uint8Array, to_counterparty_script: Uint8Array, funding_outpoint: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ShutdownScript_as_legacy_pubkey(this_arg); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_build_closing_transaction(to_holder_value_sat, to_counterparty_value_sat, encodeUint8Array(to_holder_script), encodeUint8Array(to_counterparty_script), funding_outpoint); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES bool ShutdownScript_is_compatible(const struct LDKShutdownScript *NONNULL_PTR this_arg, const struct LDKInitFeatures *NONNULL_PTR features); - export function ShutdownScript_is_compatible(this_arg: number, features: number): boolean { + // struct LDKCResult_SecretKeyErrorZ derive_private_key(struct LDKPublicKey per_commitment_point, const uint8_t (*base_secret)[32]); + export function derive_private_key(per_commitment_point: Uint8Array, base_secret: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ShutdownScript_is_compatible(this_arg, features); + const nativeResponseValue = wasm.TS_derive_private_key(encodeUint8Array(per_commitment_point), encodeUint8Array(base_secret)); return nativeResponseValue; } - // void CustomMessageReader_free(struct LDKCustomMessageReader this_ptr); - export function CustomMessageReader_free(this_ptr: number): void { + // struct LDKCResult_PublicKeyErrorZ derive_public_key(struct LDKPublicKey per_commitment_point, struct LDKPublicKey base_point); + export function derive_public_key(per_commitment_point: Uint8Array, base_point: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CustomMessageReader_free(this_ptr); - // debug statements here + const nativeResponseValue = wasm.TS_derive_public_key(encodeUint8Array(per_commitment_point), encodeUint8Array(base_point)); + return nativeResponseValue; } - // uint64_t Type_clone_ptr(LDKType *NONNULL_PTR arg); - export function Type_clone_ptr(arg: number): number { + // struct LDKCResult_SecretKeyErrorZ derive_private_revocation_key(const uint8_t (*per_commitment_secret)[32], const uint8_t (*countersignatory_revocation_base_secret)[32]); + export function derive_private_revocation_key(per_commitment_secret: Uint8Array, countersignatory_revocation_base_secret: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Type_clone_ptr(arg); + const nativeResponseValue = wasm.TS_derive_private_revocation_key(encodeUint8Array(per_commitment_secret), encodeUint8Array(countersignatory_revocation_base_secret)); return nativeResponseValue; } - // struct LDKType Type_clone(const struct LDKType *NONNULL_PTR orig); - export function Type_clone(orig: number): number { + // struct LDKCResult_PublicKeyErrorZ derive_public_revocation_key(struct LDKPublicKey per_commitment_point, struct LDKPublicKey countersignatory_revocation_base_point); + export function derive_public_revocation_key(per_commitment_point: Uint8Array, countersignatory_revocation_base_point: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Type_clone(orig); + const nativeResponseValue = wasm.TS_derive_public_revocation_key(encodeUint8Array(per_commitment_point), encodeUint8Array(countersignatory_revocation_base_point)); return nativeResponseValue; } - // void Type_free(struct LDKType this_ptr); - export function Type_free(this_ptr: number): void { + // void TxCreationKeys_free(struct LDKTxCreationKeys this_obj); + export function TxCreationKeys_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Type_free(this_ptr); + const nativeResponseValue = wasm.TS_TxCreationKeys_free(this_obj); // debug statements here } - // void NodeId_free(struct LDKNodeId this_obj); - export function NodeId_free(this_obj: number): void { + // struct LDKPublicKey TxCreationKeys_get_per_commitment_point(const struct LDKTxCreationKeys *NONNULL_PTR this_ptr); + export function TxCreationKeys_get_per_commitment_point(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeId_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_TxCreationKeys_get_per_commitment_point(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // uint64_t NodeId_clone_ptr(LDKNodeId *NONNULL_PTR arg); - export function NodeId_clone_ptr(arg: number): number { + // void TxCreationKeys_set_per_commitment_point(struct LDKTxCreationKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function TxCreationKeys_set_per_commitment_point(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeId_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_TxCreationKeys_set_per_commitment_point(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKNodeId NodeId_clone(const struct LDKNodeId *NONNULL_PTR orig); - export function NodeId_clone(orig: number): number { + // struct LDKPublicKey TxCreationKeys_get_revocation_key(const struct LDKTxCreationKeys *NONNULL_PTR this_ptr); + export function TxCreationKeys_get_revocation_key(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeId_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_TxCreationKeys_get_revocation_key(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES struct LDKNodeId NodeId_from_pubkey(struct LDKPublicKey pubkey); - export function NodeId_from_pubkey(pubkey: Uint8Array): number { + // void TxCreationKeys_set_revocation_key(struct LDKTxCreationKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function TxCreationKeys_set_revocation_key(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeId_from_pubkey(encodeArray(pubkey)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_TxCreationKeys_set_revocation_key(this_ptr, encodeUint8Array(val)); + // debug statements here } - // MUST_USE_RES struct LDKu8slice NodeId_as_slice(const struct LDKNodeId *NONNULL_PTR this_arg); - export function NodeId_as_slice(this_arg: number): Uint8Array { + // struct LDKPublicKey TxCreationKeys_get_broadcaster_htlc_key(const struct LDKTxCreationKeys *NONNULL_PTR this_ptr); + export function TxCreationKeys_get_broadcaster_htlc_key(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeId_as_slice(this_arg); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_TxCreationKeys_get_broadcaster_htlc_key(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // uint64_t NodeId_hash(const struct LDKNodeId *NONNULL_PTR o); - export function NodeId_hash(o: number): number { + // void TxCreationKeys_set_broadcaster_htlc_key(struct LDKTxCreationKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function TxCreationKeys_set_broadcaster_htlc_key(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeId_hash(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_TxCreationKeys_set_broadcaster_htlc_key(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKCVec_u8Z NodeId_write(const struct LDKNodeId *NONNULL_PTR obj); - export function NodeId_write(obj: number): Uint8Array { + // struct LDKPublicKey TxCreationKeys_get_countersignatory_htlc_key(const struct LDKTxCreationKeys *NONNULL_PTR this_ptr); + export function TxCreationKeys_get_countersignatory_htlc_key(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeId_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_TxCreationKeys_get_countersignatory_htlc_key(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCResult_NodeIdDecodeErrorZ NodeId_read(struct LDKu8slice ser); - export function NodeId_read(ser: Uint8Array): number { + // void TxCreationKeys_set_countersignatory_htlc_key(struct LDKTxCreationKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function TxCreationKeys_set_countersignatory_htlc_key(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeId_read(encodeArray(ser)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_TxCreationKeys_set_countersignatory_htlc_key(this_ptr, encodeUint8Array(val)); + // debug statements here } - // void NetworkGraph_free(struct LDKNetworkGraph this_obj); - export function NetworkGraph_free(this_obj: number): void { + // struct LDKPublicKey TxCreationKeys_get_broadcaster_delayed_payment_key(const struct LDKTxCreationKeys *NONNULL_PTR this_ptr); + export function TxCreationKeys_get_broadcaster_delayed_payment_key(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetworkGraph_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_TxCreationKeys_get_broadcaster_delayed_payment_key(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // uint64_t NetworkGraph_clone_ptr(LDKNetworkGraph *NONNULL_PTR arg); - export function NetworkGraph_clone_ptr(arg: number): number { + // void TxCreationKeys_set_broadcaster_delayed_payment_key(struct LDKTxCreationKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function TxCreationKeys_set_broadcaster_delayed_payment_key(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetworkGraph_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_TxCreationKeys_set_broadcaster_delayed_payment_key(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKNetworkGraph NetworkGraph_clone(const struct LDKNetworkGraph *NONNULL_PTR orig); - export function NetworkGraph_clone(orig: number): number { + // MUST_USE_RES struct LDKTxCreationKeys TxCreationKeys_new(struct LDKPublicKey per_commitment_point_arg, struct LDKPublicKey revocation_key_arg, struct LDKPublicKey broadcaster_htlc_key_arg, struct LDKPublicKey countersignatory_htlc_key_arg, struct LDKPublicKey broadcaster_delayed_payment_key_arg); + export function TxCreationKeys_new(per_commitment_point_arg: Uint8Array, revocation_key_arg: Uint8Array, broadcaster_htlc_key_arg: Uint8Array, countersignatory_htlc_key_arg: Uint8Array, broadcaster_delayed_payment_key_arg: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetworkGraph_clone(orig); + const nativeResponseValue = wasm.TS_TxCreationKeys_new(encodeUint8Array(per_commitment_point_arg), encodeUint8Array(revocation_key_arg), encodeUint8Array(broadcaster_htlc_key_arg), encodeUint8Array(countersignatory_htlc_key_arg), encodeUint8Array(broadcaster_delayed_payment_key_arg)); return nativeResponseValue; } - // void ReadOnlyNetworkGraph_free(struct LDKReadOnlyNetworkGraph this_obj); - export function ReadOnlyNetworkGraph_free(this_obj: number): void { + // uint64_t TxCreationKeys_clone_ptr(LDKTxCreationKeys *NONNULL_PTR arg); + export function TxCreationKeys_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReadOnlyNetworkGraph_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_TxCreationKeys_clone_ptr(arg); + return nativeResponseValue; } - // void NetworkUpdate_free(struct LDKNetworkUpdate this_ptr); - export function NetworkUpdate_free(this_ptr: number): void { + // struct LDKTxCreationKeys TxCreationKeys_clone(const struct LDKTxCreationKeys *NONNULL_PTR orig); + export function TxCreationKeys_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetworkUpdate_free(this_ptr); - // debug statements here + const nativeResponseValue = wasm.TS_TxCreationKeys_clone(orig); + return nativeResponseValue; } - // uint64_t NetworkUpdate_clone_ptr(LDKNetworkUpdate *NONNULL_PTR arg); - export function NetworkUpdate_clone_ptr(arg: number): number { + // struct LDKCVec_u8Z TxCreationKeys_write(const struct LDKTxCreationKeys *NONNULL_PTR obj); + export function TxCreationKeys_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetworkUpdate_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_TxCreationKeys_write(obj); + return decodeUint8Array(nativeResponseValue); } - // struct LDKNetworkUpdate NetworkUpdate_clone(const struct LDKNetworkUpdate *NONNULL_PTR orig); - export function NetworkUpdate_clone(orig: number): number { + // struct LDKCResult_TxCreationKeysDecodeErrorZ TxCreationKeys_read(struct LDKu8slice ser); + export function TxCreationKeys_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetworkUpdate_clone(orig); + const nativeResponseValue = wasm.TS_TxCreationKeys_read(encodeUint8Array(ser)); return nativeResponseValue; } - // struct LDKNetworkUpdate NetworkUpdate_channel_update_message(struct LDKChannelUpdate msg); - export function NetworkUpdate_channel_update_message(msg: number): number { + // void ChannelPublicKeys_free(struct LDKChannelPublicKeys this_obj); + export function ChannelPublicKeys_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetworkUpdate_channel_update_message(msg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelPublicKeys_free(this_obj); + // debug statements here } - // struct LDKNetworkUpdate NetworkUpdate_channel_closed(uint64_t short_channel_id, bool is_permanent); - export function NetworkUpdate_channel_closed(short_channel_id: number, is_permanent: boolean): number { + // struct LDKPublicKey ChannelPublicKeys_get_funding_pubkey(const struct LDKChannelPublicKeys *NONNULL_PTR this_ptr); + export function ChannelPublicKeys_get_funding_pubkey(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetworkUpdate_channel_closed(short_channel_id, is_permanent); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelPublicKeys_get_funding_pubkey(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKNetworkUpdate NetworkUpdate_node_failure(struct LDKPublicKey node_id, bool is_permanent); - export function NetworkUpdate_node_failure(node_id: Uint8Array, is_permanent: boolean): number { + // void ChannelPublicKeys_set_funding_pubkey(struct LDKChannelPublicKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function ChannelPublicKeys_set_funding_pubkey(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetworkUpdate_node_failure(encodeArray(node_id), is_permanent); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelPublicKeys_set_funding_pubkey(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKCVec_u8Z NetworkUpdate_write(const struct LDKNetworkUpdate *NONNULL_PTR obj); - export function NetworkUpdate_write(obj: number): Uint8Array { + // struct LDKPublicKey ChannelPublicKeys_get_revocation_basepoint(const struct LDKChannelPublicKeys *NONNULL_PTR this_ptr); + export function ChannelPublicKeys_get_revocation_basepoint(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetworkUpdate_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelPublicKeys_get_revocation_basepoint(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCResult_COption_NetworkUpdateZDecodeErrorZ NetworkUpdate_read(struct LDKu8slice ser); - export function NetworkUpdate_read(ser: Uint8Array): number { + // void ChannelPublicKeys_set_revocation_basepoint(struct LDKChannelPublicKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function ChannelPublicKeys_set_revocation_basepoint(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetworkUpdate_read(encodeArray(ser)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelPublicKeys_set_revocation_basepoint(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKEventHandler NetGraphMsgHandler_as_EventHandler(const struct LDKNetGraphMsgHandler *NONNULL_PTR this_arg); - export function NetGraphMsgHandler_as_EventHandler(this_arg: number): number { + // struct LDKPublicKey ChannelPublicKeys_get_payment_point(const struct LDKChannelPublicKeys *NONNULL_PTR this_ptr); + export function ChannelPublicKeys_get_payment_point(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetGraphMsgHandler_as_EventHandler(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelPublicKeys_get_payment_point(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void NetGraphMsgHandler_free(struct LDKNetGraphMsgHandler this_obj); - export function NetGraphMsgHandler_free(this_obj: number): void { + // void ChannelPublicKeys_set_payment_point(struct LDKChannelPublicKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function ChannelPublicKeys_set_payment_point(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetGraphMsgHandler_free(this_obj); + const nativeResponseValue = wasm.TS_ChannelPublicKeys_set_payment_point(this_ptr, encodeUint8Array(val)); // debug statements here } - // MUST_USE_RES struct LDKNetGraphMsgHandler NetGraphMsgHandler_new(const struct LDKNetworkGraph *NONNULL_PTR network_graph, struct LDKCOption_AccessZ chain_access, struct LDKLogger logger); - export function NetGraphMsgHandler_new(network_graph: number, chain_access: number, logger: number): number { + // struct LDKPublicKey ChannelPublicKeys_get_delayed_payment_basepoint(const struct LDKChannelPublicKeys *NONNULL_PTR this_ptr); + export function ChannelPublicKeys_get_delayed_payment_basepoint(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetGraphMsgHandler_new(network_graph, chain_access, logger); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelPublicKeys_get_delayed_payment_basepoint(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void NetGraphMsgHandler_add_chain_access(struct LDKNetGraphMsgHandler *NONNULL_PTR this_arg, struct LDKCOption_AccessZ chain_access); - export function NetGraphMsgHandler_add_chain_access(this_arg: number, chain_access: number): void { + // void ChannelPublicKeys_set_delayed_payment_basepoint(struct LDKChannelPublicKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function ChannelPublicKeys_set_delayed_payment_basepoint(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetGraphMsgHandler_add_chain_access(this_arg, chain_access); + const nativeResponseValue = wasm.TS_ChannelPublicKeys_set_delayed_payment_basepoint(this_ptr, encodeUint8Array(val)); // debug statements here } - // struct LDKRoutingMessageHandler NetGraphMsgHandler_as_RoutingMessageHandler(const struct LDKNetGraphMsgHandler *NONNULL_PTR this_arg); - export function NetGraphMsgHandler_as_RoutingMessageHandler(this_arg: number): number { + // struct LDKPublicKey ChannelPublicKeys_get_htlc_basepoint(const struct LDKChannelPublicKeys *NONNULL_PTR this_ptr); + export function ChannelPublicKeys_get_htlc_basepoint(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetGraphMsgHandler_as_RoutingMessageHandler(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelPublicKeys_get_htlc_basepoint(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKMessageSendEventsProvider NetGraphMsgHandler_as_MessageSendEventsProvider(const struct LDKNetGraphMsgHandler *NONNULL_PTR this_arg); - export function NetGraphMsgHandler_as_MessageSendEventsProvider(this_arg: number): number { + // void ChannelPublicKeys_set_htlc_basepoint(struct LDKChannelPublicKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function ChannelPublicKeys_set_htlc_basepoint(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetGraphMsgHandler_as_MessageSendEventsProvider(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelPublicKeys_set_htlc_basepoint(this_ptr, encodeUint8Array(val)); + // debug statements here } - // void DirectionalChannelInfo_free(struct LDKDirectionalChannelInfo this_obj); - export function DirectionalChannelInfo_free(this_obj: number): void { + // MUST_USE_RES struct LDKChannelPublicKeys ChannelPublicKeys_new(struct LDKPublicKey funding_pubkey_arg, struct LDKPublicKey revocation_basepoint_arg, struct LDKPublicKey payment_point_arg, struct LDKPublicKey delayed_payment_basepoint_arg, struct LDKPublicKey htlc_basepoint_arg); + export function ChannelPublicKeys_new(funding_pubkey_arg: Uint8Array, revocation_basepoint_arg: Uint8Array, payment_point_arg: Uint8Array, delayed_payment_basepoint_arg: Uint8Array, htlc_basepoint_arg: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectionalChannelInfo_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelPublicKeys_new(encodeUint8Array(funding_pubkey_arg), encodeUint8Array(revocation_basepoint_arg), encodeUint8Array(payment_point_arg), encodeUint8Array(delayed_payment_basepoint_arg), encodeUint8Array(htlc_basepoint_arg)); + return nativeResponseValue; } - // uint32_t DirectionalChannelInfo_get_last_update(const struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr); - export function DirectionalChannelInfo_get_last_update(this_ptr: number): number { + // uint64_t ChannelPublicKeys_clone_ptr(LDKChannelPublicKeys *NONNULL_PTR arg); + export function ChannelPublicKeys_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectionalChannelInfo_get_last_update(this_ptr); + const nativeResponseValue = wasm.TS_ChannelPublicKeys_clone_ptr(arg); return nativeResponseValue; } - // void DirectionalChannelInfo_set_last_update(struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr, uint32_t val); - export function DirectionalChannelInfo_set_last_update(this_ptr: number, val: number): void { + // struct LDKChannelPublicKeys ChannelPublicKeys_clone(const struct LDKChannelPublicKeys *NONNULL_PTR orig); + export function ChannelPublicKeys_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectionalChannelInfo_set_last_update(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelPublicKeys_clone(orig); + return nativeResponseValue; } - // bool DirectionalChannelInfo_get_enabled(const struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr); - export function DirectionalChannelInfo_get_enabled(this_ptr: number): boolean { + // struct LDKCVec_u8Z ChannelPublicKeys_write(const struct LDKChannelPublicKeys *NONNULL_PTR obj); + export function ChannelPublicKeys_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectionalChannelInfo_get_enabled(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelPublicKeys_write(obj); + return decodeUint8Array(nativeResponseValue); } - // void DirectionalChannelInfo_set_enabled(struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr, bool val); - export function DirectionalChannelInfo_set_enabled(this_ptr: number, val: boolean): void { + // struct LDKCResult_ChannelPublicKeysDecodeErrorZ ChannelPublicKeys_read(struct LDKu8slice ser); + export function ChannelPublicKeys_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectionalChannelInfo_set_enabled(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelPublicKeys_read(encodeUint8Array(ser)); + return nativeResponseValue; } - // uint16_t DirectionalChannelInfo_get_cltv_expiry_delta(const struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr); - export function DirectionalChannelInfo_get_cltv_expiry_delta(this_ptr: number): number { + // 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); + export function TxCreationKeys_derive_new(per_commitment_point: Uint8Array, broadcaster_delayed_payment_base: Uint8Array, broadcaster_htlc_base: Uint8Array, countersignatory_revocation_base: Uint8Array, countersignatory_htlc_base: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectionalChannelInfo_get_cltv_expiry_delta(this_ptr); + const nativeResponseValue = wasm.TS_TxCreationKeys_derive_new(encodeUint8Array(per_commitment_point), encodeUint8Array(broadcaster_delayed_payment_base), encodeUint8Array(broadcaster_htlc_base), encodeUint8Array(countersignatory_revocation_base), encodeUint8Array(countersignatory_htlc_base)); return nativeResponseValue; } - // void DirectionalChannelInfo_set_cltv_expiry_delta(struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr, uint16_t val); - export function DirectionalChannelInfo_set_cltv_expiry_delta(this_ptr: number, val: number): void { + // 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); + export function TxCreationKeys_from_channel_static_keys(per_commitment_point: Uint8Array, broadcaster_keys: number, countersignatory_keys: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectionalChannelInfo_set_cltv_expiry_delta(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_TxCreationKeys_from_channel_static_keys(encodeUint8Array(per_commitment_point), broadcaster_keys, countersignatory_keys); + return nativeResponseValue; } - // uint64_t DirectionalChannelInfo_get_htlc_minimum_msat(const struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr); - export function DirectionalChannelInfo_get_htlc_minimum_msat(this_ptr: number): number { + // struct LDKCVec_u8Z get_revokeable_redeemscript(struct LDKPublicKey revocation_key, uint16_t contest_delay, struct LDKPublicKey broadcaster_delayed_payment_key); + export function get_revokeable_redeemscript(revocation_key: Uint8Array, contest_delay: number, broadcaster_delayed_payment_key: Uint8Array): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectionalChannelInfo_get_htlc_minimum_msat(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_get_revokeable_redeemscript(encodeUint8Array(revocation_key), contest_delay, encodeUint8Array(broadcaster_delayed_payment_key)); + return decodeUint8Array(nativeResponseValue); } - // void DirectionalChannelInfo_set_htlc_minimum_msat(struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr, uint64_t val); - export function DirectionalChannelInfo_set_htlc_minimum_msat(this_ptr: number, val: number): void { + // void HTLCOutputInCommitment_free(struct LDKHTLCOutputInCommitment this_obj); + export function HTLCOutputInCommitment_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectionalChannelInfo_set_htlc_minimum_msat(this_ptr, val); + const nativeResponseValue = wasm.TS_HTLCOutputInCommitment_free(this_obj); // debug statements here } - // struct LDKCOption_u64Z DirectionalChannelInfo_get_htlc_maximum_msat(const struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr); - export function DirectionalChannelInfo_get_htlc_maximum_msat(this_ptr: number): number { + // bool HTLCOutputInCommitment_get_offered(const struct LDKHTLCOutputInCommitment *NONNULL_PTR this_ptr); + export function HTLCOutputInCommitment_get_offered(this_ptr: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectionalChannelInfo_get_htlc_maximum_msat(this_ptr); + const nativeResponseValue = wasm.TS_HTLCOutputInCommitment_get_offered(this_ptr); return nativeResponseValue; } - // void DirectionalChannelInfo_set_htlc_maximum_msat(struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr, struct LDKCOption_u64Z val); - export function DirectionalChannelInfo_set_htlc_maximum_msat(this_ptr: number, val: number): void { + // void HTLCOutputInCommitment_set_offered(struct LDKHTLCOutputInCommitment *NONNULL_PTR this_ptr, bool val); + export function HTLCOutputInCommitment_set_offered(this_ptr: number, val: boolean): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectionalChannelInfo_set_htlc_maximum_msat(this_ptr, val); + const nativeResponseValue = wasm.TS_HTLCOutputInCommitment_set_offered(this_ptr, val); // debug statements here } - // struct LDKRoutingFees DirectionalChannelInfo_get_fees(const struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr); - export function DirectionalChannelInfo_get_fees(this_ptr: number): number { + // uint64_t HTLCOutputInCommitment_get_amount_msat(const struct LDKHTLCOutputInCommitment *NONNULL_PTR this_ptr); + export function HTLCOutputInCommitment_get_amount_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectionalChannelInfo_get_fees(this_ptr); + const nativeResponseValue = wasm.TS_HTLCOutputInCommitment_get_amount_msat(this_ptr); return nativeResponseValue; } - // void DirectionalChannelInfo_set_fees(struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr, struct LDKRoutingFees val); - export function DirectionalChannelInfo_set_fees(this_ptr: number, val: number): void { + // void HTLCOutputInCommitment_set_amount_msat(struct LDKHTLCOutputInCommitment *NONNULL_PTR this_ptr, uint64_t val); + export function HTLCOutputInCommitment_set_amount_msat(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectionalChannelInfo_set_fees(this_ptr, val); + const nativeResponseValue = wasm.TS_HTLCOutputInCommitment_set_amount_msat(this_ptr, val); // debug statements here } - // struct LDKChannelUpdate DirectionalChannelInfo_get_last_update_message(const struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr); - export function DirectionalChannelInfo_get_last_update_message(this_ptr: number): number { + // uint32_t HTLCOutputInCommitment_get_cltv_expiry(const struct LDKHTLCOutputInCommitment *NONNULL_PTR this_ptr); + export function HTLCOutputInCommitment_get_cltv_expiry(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectionalChannelInfo_get_last_update_message(this_ptr); + const nativeResponseValue = wasm.TS_HTLCOutputInCommitment_get_cltv_expiry(this_ptr); return nativeResponseValue; } - // void DirectionalChannelInfo_set_last_update_message(struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr, struct LDKChannelUpdate val); - export function DirectionalChannelInfo_set_last_update_message(this_ptr: number, val: number): void { + // void HTLCOutputInCommitment_set_cltv_expiry(struct LDKHTLCOutputInCommitment *NONNULL_PTR this_ptr, uint32_t val); + export function HTLCOutputInCommitment_set_cltv_expiry(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectionalChannelInfo_set_last_update_message(this_ptr, val); + const nativeResponseValue = wasm.TS_HTLCOutputInCommitment_set_cltv_expiry(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKDirectionalChannelInfo DirectionalChannelInfo_new(uint32_t last_update_arg, bool enabled_arg, uint16_t cltv_expiry_delta_arg, uint64_t htlc_minimum_msat_arg, struct LDKCOption_u64Z htlc_maximum_msat_arg, struct LDKRoutingFees fees_arg, struct LDKChannelUpdate last_update_message_arg); - export function DirectionalChannelInfo_new(last_update_arg: number, enabled_arg: boolean, cltv_expiry_delta_arg: number, htlc_minimum_msat_arg: number, htlc_maximum_msat_arg: number, fees_arg: number, last_update_message_arg: number): number { + // const uint8_t (*HTLCOutputInCommitment_get_payment_hash(const struct LDKHTLCOutputInCommitment *NONNULL_PTR this_ptr))[32]; + export function HTLCOutputInCommitment_get_payment_hash(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectionalChannelInfo_new(last_update_arg, enabled_arg, cltv_expiry_delta_arg, htlc_minimum_msat_arg, htlc_maximum_msat_arg, fees_arg, last_update_message_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_HTLCOutputInCommitment_get_payment_hash(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // uint64_t DirectionalChannelInfo_clone_ptr(LDKDirectionalChannelInfo *NONNULL_PTR arg); - export function DirectionalChannelInfo_clone_ptr(arg: number): number { + // void HTLCOutputInCommitment_set_payment_hash(struct LDKHTLCOutputInCommitment *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function HTLCOutputInCommitment_set_payment_hash(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectionalChannelInfo_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_HTLCOutputInCommitment_set_payment_hash(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKDirectionalChannelInfo DirectionalChannelInfo_clone(const struct LDKDirectionalChannelInfo *NONNULL_PTR orig); - export function DirectionalChannelInfo_clone(orig: number): number { + // struct LDKCOption_u32Z HTLCOutputInCommitment_get_transaction_output_index(const struct LDKHTLCOutputInCommitment *NONNULL_PTR this_ptr); + export function HTLCOutputInCommitment_get_transaction_output_index(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectionalChannelInfo_clone(orig); + const nativeResponseValue = wasm.TS_HTLCOutputInCommitment_get_transaction_output_index(this_ptr); return nativeResponseValue; } - // struct LDKCVec_u8Z DirectionalChannelInfo_write(const struct LDKDirectionalChannelInfo *NONNULL_PTR obj); - export function DirectionalChannelInfo_write(obj: number): Uint8Array { + // void HTLCOutputInCommitment_set_transaction_output_index(struct LDKHTLCOutputInCommitment *NONNULL_PTR this_ptr, struct LDKCOption_u32Z val); + export function HTLCOutputInCommitment_set_transaction_output_index(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectionalChannelInfo_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_HTLCOutputInCommitment_set_transaction_output_index(this_ptr, val); + // debug statements here } - // struct LDKCResult_DirectionalChannelInfoDecodeErrorZ DirectionalChannelInfo_read(struct LDKu8slice ser); - export function DirectionalChannelInfo_read(ser: Uint8Array): number { + // MUST_USE_RES struct LDKHTLCOutputInCommitment HTLCOutputInCommitment_new(bool offered_arg, uint64_t amount_msat_arg, uint32_t cltv_expiry_arg, struct LDKThirtyTwoBytes payment_hash_arg, struct LDKCOption_u32Z transaction_output_index_arg); + export function HTLCOutputInCommitment_new(offered_arg: boolean, amount_msat_arg: number, cltv_expiry_arg: number, payment_hash_arg: Uint8Array, transaction_output_index_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DirectionalChannelInfo_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_HTLCOutputInCommitment_new(offered_arg, amount_msat_arg, cltv_expiry_arg, encodeUint8Array(payment_hash_arg), transaction_output_index_arg); return nativeResponseValue; } - // void ChannelInfo_free(struct LDKChannelInfo this_obj); - export function ChannelInfo_free(this_obj: number): void { + // uint64_t HTLCOutputInCommitment_clone_ptr(LDKHTLCOutputInCommitment *NONNULL_PTR arg); + export function HTLCOutputInCommitment_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelInfo_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_HTLCOutputInCommitment_clone_ptr(arg); + return nativeResponseValue; } - // struct LDKChannelFeatures ChannelInfo_get_features(const struct LDKChannelInfo *NONNULL_PTR this_ptr); - export function ChannelInfo_get_features(this_ptr: number): number { + // struct LDKHTLCOutputInCommitment HTLCOutputInCommitment_clone(const struct LDKHTLCOutputInCommitment *NONNULL_PTR orig); + export function HTLCOutputInCommitment_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelInfo_get_features(this_ptr); + const nativeResponseValue = wasm.TS_HTLCOutputInCommitment_clone(orig); return nativeResponseValue; } - // void ChannelInfo_set_features(struct LDKChannelInfo *NONNULL_PTR this_ptr, struct LDKChannelFeatures val); - export function ChannelInfo_set_features(this_ptr: number, val: number): void { + // struct LDKCVec_u8Z HTLCOutputInCommitment_write(const struct LDKHTLCOutputInCommitment *NONNULL_PTR obj); + export function HTLCOutputInCommitment_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelInfo_set_features(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_HTLCOutputInCommitment_write(obj); + return decodeUint8Array(nativeResponseValue); } - // struct LDKNodeId ChannelInfo_get_node_one(const struct LDKChannelInfo *NONNULL_PTR this_ptr); - export function ChannelInfo_get_node_one(this_ptr: number): number { + // struct LDKCResult_HTLCOutputInCommitmentDecodeErrorZ HTLCOutputInCommitment_read(struct LDKu8slice ser); + export function HTLCOutputInCommitment_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelInfo_get_node_one(this_ptr); + const nativeResponseValue = wasm.TS_HTLCOutputInCommitment_read(encodeUint8Array(ser)); return nativeResponseValue; } - // void ChannelInfo_set_node_one(struct LDKChannelInfo *NONNULL_PTR this_ptr, struct LDKNodeId val); - export function ChannelInfo_set_node_one(this_ptr: number, val: number): void { + // struct LDKCVec_u8Z get_htlc_redeemscript(const struct LDKHTLCOutputInCommitment *NONNULL_PTR htlc, bool opt_anchors, const struct LDKTxCreationKeys *NONNULL_PTR keys); + export function get_htlc_redeemscript(htlc: number, opt_anchors: boolean, keys: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelInfo_set_node_one(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_get_htlc_redeemscript(htlc, opt_anchors, keys); + return decodeUint8Array(nativeResponseValue); } - // struct LDKDirectionalChannelInfo ChannelInfo_get_one_to_two(const struct LDKChannelInfo *NONNULL_PTR this_ptr); - export function ChannelInfo_get_one_to_two(this_ptr: number): number { + // struct LDKCVec_u8Z make_funding_redeemscript(struct LDKPublicKey broadcaster, struct LDKPublicKey countersignatory); + export function make_funding_redeemscript(broadcaster: Uint8Array, countersignatory: Uint8Array): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelInfo_get_one_to_two(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_make_funding_redeemscript(encodeUint8Array(broadcaster), encodeUint8Array(countersignatory)); + return decodeUint8Array(nativeResponseValue); } - // void ChannelInfo_set_one_to_two(struct LDKChannelInfo *NONNULL_PTR this_ptr, struct LDKDirectionalChannelInfo val); - export function ChannelInfo_set_one_to_two(this_ptr: number, val: number): void { + // 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); + export function build_htlc_transaction(commitment_txid: Uint8Array, feerate_per_kw: number, contest_delay: number, htlc: number, opt_anchors: boolean, broadcaster_delayed_payment_key: Uint8Array, revocation_key: Uint8Array): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelInfo_set_one_to_two(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_build_htlc_transaction(encodeUint8Array(commitment_txid), feerate_per_kw, contest_delay, htlc, opt_anchors, encodeUint8Array(broadcaster_delayed_payment_key), encodeUint8Array(revocation_key)); + return decodeUint8Array(nativeResponseValue); } - // struct LDKNodeId ChannelInfo_get_node_two(const struct LDKChannelInfo *NONNULL_PTR this_ptr); - export function ChannelInfo_get_node_two(this_ptr: number): number { + // struct LDKCVec_u8Z get_anchor_redeemscript(struct LDKPublicKey funding_pubkey); + export function get_anchor_redeemscript(funding_pubkey: Uint8Array): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelInfo_get_node_two(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_get_anchor_redeemscript(encodeUint8Array(funding_pubkey)); + return decodeUint8Array(nativeResponseValue); } - // void ChannelInfo_set_node_two(struct LDKChannelInfo *NONNULL_PTR this_ptr, struct LDKNodeId val); - export function ChannelInfo_set_node_two(this_ptr: number, val: number): void { + // void ChannelTransactionParameters_free(struct LDKChannelTransactionParameters this_obj); + export function ChannelTransactionParameters_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelInfo_set_node_two(this_ptr, val); + const nativeResponseValue = wasm.TS_ChannelTransactionParameters_free(this_obj); // debug statements here } - // struct LDKDirectionalChannelInfo ChannelInfo_get_two_to_one(const struct LDKChannelInfo *NONNULL_PTR this_ptr); - export function ChannelInfo_get_two_to_one(this_ptr: number): number { + // struct LDKChannelPublicKeys ChannelTransactionParameters_get_holder_pubkeys(const struct LDKChannelTransactionParameters *NONNULL_PTR this_ptr); + export function ChannelTransactionParameters_get_holder_pubkeys(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelInfo_get_two_to_one(this_ptr); + const nativeResponseValue = wasm.TS_ChannelTransactionParameters_get_holder_pubkeys(this_ptr); return nativeResponseValue; } - // void ChannelInfo_set_two_to_one(struct LDKChannelInfo *NONNULL_PTR this_ptr, struct LDKDirectionalChannelInfo val); - export function ChannelInfo_set_two_to_one(this_ptr: number, val: number): void { + // void ChannelTransactionParameters_set_holder_pubkeys(struct LDKChannelTransactionParameters *NONNULL_PTR this_ptr, struct LDKChannelPublicKeys val); + export function ChannelTransactionParameters_set_holder_pubkeys(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelInfo_set_two_to_one(this_ptr, val); + const nativeResponseValue = wasm.TS_ChannelTransactionParameters_set_holder_pubkeys(this_ptr, val); // debug statements here } - // struct LDKCOption_u64Z ChannelInfo_get_capacity_sats(const struct LDKChannelInfo *NONNULL_PTR this_ptr); - export function ChannelInfo_get_capacity_sats(this_ptr: number): number { + // uint16_t ChannelTransactionParameters_get_holder_selected_contest_delay(const struct LDKChannelTransactionParameters *NONNULL_PTR this_ptr); + export function ChannelTransactionParameters_get_holder_selected_contest_delay(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelInfo_get_capacity_sats(this_ptr); + const nativeResponseValue = wasm.TS_ChannelTransactionParameters_get_holder_selected_contest_delay(this_ptr); return nativeResponseValue; } - // void ChannelInfo_set_capacity_sats(struct LDKChannelInfo *NONNULL_PTR this_ptr, struct LDKCOption_u64Z val); - export function ChannelInfo_set_capacity_sats(this_ptr: number, val: number): void { + // void ChannelTransactionParameters_set_holder_selected_contest_delay(struct LDKChannelTransactionParameters *NONNULL_PTR this_ptr, uint16_t val); + export function ChannelTransactionParameters_set_holder_selected_contest_delay(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelInfo_set_capacity_sats(this_ptr, val); + const nativeResponseValue = wasm.TS_ChannelTransactionParameters_set_holder_selected_contest_delay(this_ptr, val); // debug statements here } - // struct LDKChannelAnnouncement ChannelInfo_get_announcement_message(const struct LDKChannelInfo *NONNULL_PTR this_ptr); - export function ChannelInfo_get_announcement_message(this_ptr: number): number { + // bool ChannelTransactionParameters_get_is_outbound_from_holder(const struct LDKChannelTransactionParameters *NONNULL_PTR this_ptr); + export function ChannelTransactionParameters_get_is_outbound_from_holder(this_ptr: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelInfo_get_announcement_message(this_ptr); + const nativeResponseValue = wasm.TS_ChannelTransactionParameters_get_is_outbound_from_holder(this_ptr); return nativeResponseValue; } - // void ChannelInfo_set_announcement_message(struct LDKChannelInfo *NONNULL_PTR this_ptr, struct LDKChannelAnnouncement val); - export function ChannelInfo_set_announcement_message(this_ptr: number, val: number): void { + // void ChannelTransactionParameters_set_is_outbound_from_holder(struct LDKChannelTransactionParameters *NONNULL_PTR this_ptr, bool val); + export function ChannelTransactionParameters_set_is_outbound_from_holder(this_ptr: number, val: boolean): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelInfo_set_announcement_message(this_ptr, val); + const nativeResponseValue = wasm.TS_ChannelTransactionParameters_set_is_outbound_from_holder(this_ptr, val); // debug statements here } - // uint64_t ChannelInfo_clone_ptr(LDKChannelInfo *NONNULL_PTR arg); - export function ChannelInfo_clone_ptr(arg: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.ChannelInfo_clone_ptr(arg); - return nativeResponseValue; - } - // struct LDKChannelInfo ChannelInfo_clone(const struct LDKChannelInfo *NONNULL_PTR orig); - export function ChannelInfo_clone(orig: number): number { + // struct LDKCounterpartyChannelTransactionParameters ChannelTransactionParameters_get_counterparty_parameters(const struct LDKChannelTransactionParameters *NONNULL_PTR this_ptr); + export function ChannelTransactionParameters_get_counterparty_parameters(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelInfo_clone(orig); + const nativeResponseValue = wasm.TS_ChannelTransactionParameters_get_counterparty_parameters(this_ptr); return nativeResponseValue; } - // struct LDKCVec_u8Z ChannelInfo_write(const struct LDKChannelInfo *NONNULL_PTR obj); - export function ChannelInfo_write(obj: number): Uint8Array { + // void ChannelTransactionParameters_set_counterparty_parameters(struct LDKChannelTransactionParameters *NONNULL_PTR this_ptr, struct LDKCounterpartyChannelTransactionParameters val); + export function ChannelTransactionParameters_set_counterparty_parameters(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelInfo_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelTransactionParameters_set_counterparty_parameters(this_ptr, val); + // debug statements here } - // struct LDKCResult_ChannelInfoDecodeErrorZ ChannelInfo_read(struct LDKu8slice ser); - export function ChannelInfo_read(ser: Uint8Array): number { + // struct LDKOutPoint ChannelTransactionParameters_get_funding_outpoint(const struct LDKChannelTransactionParameters *NONNULL_PTR this_ptr); + export function ChannelTransactionParameters_get_funding_outpoint(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelInfo_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_ChannelTransactionParameters_get_funding_outpoint(this_ptr); return nativeResponseValue; } - // void RoutingFees_free(struct LDKRoutingFees this_obj); - export function RoutingFees_free(this_obj: number): void { + // void ChannelTransactionParameters_set_funding_outpoint(struct LDKChannelTransactionParameters *NONNULL_PTR this_ptr, struct LDKOutPoint val); + export function ChannelTransactionParameters_set_funding_outpoint(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RoutingFees_free(this_obj); + const nativeResponseValue = wasm.TS_ChannelTransactionParameters_set_funding_outpoint(this_ptr, val); // debug statements here } - // uint32_t RoutingFees_get_base_msat(const struct LDKRoutingFees *NONNULL_PTR this_ptr); - export function RoutingFees_get_base_msat(this_ptr: number): number { + // enum LDKCOption_NoneZ ChannelTransactionParameters_get_opt_anchors(const struct LDKChannelTransactionParameters *NONNULL_PTR this_ptr); + export function ChannelTransactionParameters_get_opt_anchors(this_ptr: number): COption_NoneZ { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RoutingFees_get_base_msat(this_ptr); + const nativeResponseValue = wasm.TS_ChannelTransactionParameters_get_opt_anchors(this_ptr); return nativeResponseValue; } - // void RoutingFees_set_base_msat(struct LDKRoutingFees *NONNULL_PTR this_ptr, uint32_t val); - export function RoutingFees_set_base_msat(this_ptr: number, val: number): void { + // void ChannelTransactionParameters_set_opt_anchors(struct LDKChannelTransactionParameters *NONNULL_PTR this_ptr, enum LDKCOption_NoneZ val); + export function ChannelTransactionParameters_set_opt_anchors(this_ptr: number, val: COption_NoneZ): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RoutingFees_set_base_msat(this_ptr, val); + const nativeResponseValue = wasm.TS_ChannelTransactionParameters_set_opt_anchors(this_ptr, val); // debug statements here } - // uint32_t RoutingFees_get_proportional_millionths(const struct LDKRoutingFees *NONNULL_PTR this_ptr); - export function RoutingFees_get_proportional_millionths(this_ptr: number): number { + // 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); + export function ChannelTransactionParameters_new(holder_pubkeys_arg: number, holder_selected_contest_delay_arg: number, is_outbound_from_holder_arg: boolean, counterparty_parameters_arg: number, funding_outpoint_arg: number, opt_anchors_arg: COption_NoneZ): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RoutingFees_get_proportional_millionths(this_ptr); + 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); return nativeResponseValue; } - // void RoutingFees_set_proportional_millionths(struct LDKRoutingFees *NONNULL_PTR this_ptr, uint32_t val); - export function RoutingFees_set_proportional_millionths(this_ptr: number, val: number): void { + // uint64_t ChannelTransactionParameters_clone_ptr(LDKChannelTransactionParameters *NONNULL_PTR arg); + export function ChannelTransactionParameters_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RoutingFees_set_proportional_millionths(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelTransactionParameters_clone_ptr(arg); + return nativeResponseValue; } - // MUST_USE_RES struct LDKRoutingFees RoutingFees_new(uint32_t base_msat_arg, uint32_t proportional_millionths_arg); - export function RoutingFees_new(base_msat_arg: number, proportional_millionths_arg: number): number { + // struct LDKChannelTransactionParameters ChannelTransactionParameters_clone(const struct LDKChannelTransactionParameters *NONNULL_PTR orig); + export function ChannelTransactionParameters_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RoutingFees_new(base_msat_arg, proportional_millionths_arg); + const nativeResponseValue = wasm.TS_ChannelTransactionParameters_clone(orig); return nativeResponseValue; } - // bool RoutingFees_eq(const struct LDKRoutingFees *NONNULL_PTR a, const struct LDKRoutingFees *NONNULL_PTR b); - export function RoutingFees_eq(a: number, b: number): boolean { + // void CounterpartyChannelTransactionParameters_free(struct LDKCounterpartyChannelTransactionParameters this_obj); + export function CounterpartyChannelTransactionParameters_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RoutingFees_eq(a, b); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CounterpartyChannelTransactionParameters_free(this_obj); + // debug statements here } - // uint64_t RoutingFees_clone_ptr(LDKRoutingFees *NONNULL_PTR arg); - export function RoutingFees_clone_ptr(arg: number): number { + // struct LDKChannelPublicKeys CounterpartyChannelTransactionParameters_get_pubkeys(const struct LDKCounterpartyChannelTransactionParameters *NONNULL_PTR this_ptr); + export function CounterpartyChannelTransactionParameters_get_pubkeys(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RoutingFees_clone_ptr(arg); + const nativeResponseValue = wasm.TS_CounterpartyChannelTransactionParameters_get_pubkeys(this_ptr); return nativeResponseValue; } - // struct LDKRoutingFees RoutingFees_clone(const struct LDKRoutingFees *NONNULL_PTR orig); - export function RoutingFees_clone(orig: number): number { + // void CounterpartyChannelTransactionParameters_set_pubkeys(struct LDKCounterpartyChannelTransactionParameters *NONNULL_PTR this_ptr, struct LDKChannelPublicKeys val); + export function CounterpartyChannelTransactionParameters_set_pubkeys(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RoutingFees_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CounterpartyChannelTransactionParameters_set_pubkeys(this_ptr, val); + // debug statements here } - // uint64_t RoutingFees_hash(const struct LDKRoutingFees *NONNULL_PTR o); - export function RoutingFees_hash(o: number): number { + // uint16_t CounterpartyChannelTransactionParameters_get_selected_contest_delay(const struct LDKCounterpartyChannelTransactionParameters *NONNULL_PTR this_ptr); + export function CounterpartyChannelTransactionParameters_get_selected_contest_delay(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RoutingFees_hash(o); + const nativeResponseValue = wasm.TS_CounterpartyChannelTransactionParameters_get_selected_contest_delay(this_ptr); return nativeResponseValue; } - // struct LDKCVec_u8Z RoutingFees_write(const struct LDKRoutingFees *NONNULL_PTR obj); - export function RoutingFees_write(obj: number): Uint8Array { + // void CounterpartyChannelTransactionParameters_set_selected_contest_delay(struct LDKCounterpartyChannelTransactionParameters *NONNULL_PTR this_ptr, uint16_t val); + export function CounterpartyChannelTransactionParameters_set_selected_contest_delay(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RoutingFees_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CounterpartyChannelTransactionParameters_set_selected_contest_delay(this_ptr, val); + // debug statements here } - // struct LDKCResult_RoutingFeesDecodeErrorZ RoutingFees_read(struct LDKu8slice ser); - export function RoutingFees_read(ser: Uint8Array): number { + // MUST_USE_RES struct LDKCounterpartyChannelTransactionParameters CounterpartyChannelTransactionParameters_new(struct LDKChannelPublicKeys pubkeys_arg, uint16_t selected_contest_delay_arg); + export function CounterpartyChannelTransactionParameters_new(pubkeys_arg: number, selected_contest_delay_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RoutingFees_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_CounterpartyChannelTransactionParameters_new(pubkeys_arg, selected_contest_delay_arg); return nativeResponseValue; } - // void NodeAnnouncementInfo_free(struct LDKNodeAnnouncementInfo this_obj); - export function NodeAnnouncementInfo_free(this_obj: number): void { + // uint64_t CounterpartyChannelTransactionParameters_clone_ptr(LDKCounterpartyChannelTransactionParameters *NONNULL_PTR arg); + export function CounterpartyChannelTransactionParameters_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncementInfo_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_CounterpartyChannelTransactionParameters_clone_ptr(arg); + return nativeResponseValue; } - // struct LDKNodeFeatures NodeAnnouncementInfo_get_features(const struct LDKNodeAnnouncementInfo *NONNULL_PTR this_ptr); - export function NodeAnnouncementInfo_get_features(this_ptr: number): number { + // struct LDKCounterpartyChannelTransactionParameters CounterpartyChannelTransactionParameters_clone(const struct LDKCounterpartyChannelTransactionParameters *NONNULL_PTR orig); + export function CounterpartyChannelTransactionParameters_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncementInfo_get_features(this_ptr); + const nativeResponseValue = wasm.TS_CounterpartyChannelTransactionParameters_clone(orig); return nativeResponseValue; } - // void NodeAnnouncementInfo_set_features(struct LDKNodeAnnouncementInfo *NONNULL_PTR this_ptr, struct LDKNodeFeatures val); - export function NodeAnnouncementInfo_set_features(this_ptr: number, val: number): void { + // MUST_USE_RES bool ChannelTransactionParameters_is_populated(const struct LDKChannelTransactionParameters *NONNULL_PTR this_arg); + export function ChannelTransactionParameters_is_populated(this_arg: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncementInfo_set_features(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelTransactionParameters_is_populated(this_arg); + return nativeResponseValue; } - // uint32_t NodeAnnouncementInfo_get_last_update(const struct LDKNodeAnnouncementInfo *NONNULL_PTR this_ptr); - export function NodeAnnouncementInfo_get_last_update(this_ptr: number): number { + // MUST_USE_RES struct LDKDirectedChannelTransactionParameters ChannelTransactionParameters_as_holder_broadcastable(const struct LDKChannelTransactionParameters *NONNULL_PTR this_arg); + export function ChannelTransactionParameters_as_holder_broadcastable(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncementInfo_get_last_update(this_ptr); + const nativeResponseValue = wasm.TS_ChannelTransactionParameters_as_holder_broadcastable(this_arg); return nativeResponseValue; } - // void NodeAnnouncementInfo_set_last_update(struct LDKNodeAnnouncementInfo *NONNULL_PTR this_ptr, uint32_t val); - export function NodeAnnouncementInfo_set_last_update(this_ptr: number, val: number): void { + // MUST_USE_RES struct LDKDirectedChannelTransactionParameters ChannelTransactionParameters_as_counterparty_broadcastable(const struct LDKChannelTransactionParameters *NONNULL_PTR this_arg); + export function ChannelTransactionParameters_as_counterparty_broadcastable(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncementInfo_set_last_update(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelTransactionParameters_as_counterparty_broadcastable(this_arg); + return nativeResponseValue; } - // const uint8_t (*NodeAnnouncementInfo_get_rgb(const struct LDKNodeAnnouncementInfo *NONNULL_PTR this_ptr))[3]; - export function NodeAnnouncementInfo_get_rgb(this_ptr: number): Uint8Array { + // struct LDKCVec_u8Z CounterpartyChannelTransactionParameters_write(const struct LDKCounterpartyChannelTransactionParameters *NONNULL_PTR obj); + export function CounterpartyChannelTransactionParameters_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncementInfo_get_rgb(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CounterpartyChannelTransactionParameters_write(obj); + return decodeUint8Array(nativeResponseValue); } - // void NodeAnnouncementInfo_set_rgb(struct LDKNodeAnnouncementInfo *NONNULL_PTR this_ptr, struct LDKThreeBytes val); - export function NodeAnnouncementInfo_set_rgb(this_ptr: number, val: Uint8Array): void { + // struct LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ CounterpartyChannelTransactionParameters_read(struct LDKu8slice ser); + export function CounterpartyChannelTransactionParameters_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncementInfo_set_rgb(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_CounterpartyChannelTransactionParameters_read(encodeUint8Array(ser)); + return nativeResponseValue; } - // const uint8_t (*NodeAnnouncementInfo_get_alias(const struct LDKNodeAnnouncementInfo *NONNULL_PTR this_ptr))[32]; - export function NodeAnnouncementInfo_get_alias(this_ptr: number): Uint8Array { + // struct LDKCVec_u8Z ChannelTransactionParameters_write(const struct LDKChannelTransactionParameters *NONNULL_PTR obj); + export function ChannelTransactionParameters_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncementInfo_get_alias(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelTransactionParameters_write(obj); + return decodeUint8Array(nativeResponseValue); } - // void NodeAnnouncementInfo_set_alias(struct LDKNodeAnnouncementInfo *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); - export function NodeAnnouncementInfo_set_alias(this_ptr: number, val: Uint8Array): void { + // struct LDKCResult_ChannelTransactionParametersDecodeErrorZ ChannelTransactionParameters_read(struct LDKu8slice ser); + export function ChannelTransactionParameters_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncementInfo_set_alias(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelTransactionParameters_read(encodeUint8Array(ser)); + return nativeResponseValue; } - // void NodeAnnouncementInfo_set_addresses(struct LDKNodeAnnouncementInfo *NONNULL_PTR this_ptr, struct LDKCVec_NetAddressZ val); - export function NodeAnnouncementInfo_set_addresses(this_ptr: number, val: number[]): void { + // void DirectedChannelTransactionParameters_free(struct LDKDirectedChannelTransactionParameters this_obj); + export function DirectedChannelTransactionParameters_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncementInfo_set_addresses(this_ptr, val); + const nativeResponseValue = wasm.TS_DirectedChannelTransactionParameters_free(this_obj); // debug statements here } - // struct LDKNodeAnnouncement NodeAnnouncementInfo_get_announcement_message(const struct LDKNodeAnnouncementInfo *NONNULL_PTR this_ptr); - export function NodeAnnouncementInfo_get_announcement_message(this_ptr: number): number { + // MUST_USE_RES struct LDKChannelPublicKeys DirectedChannelTransactionParameters_broadcaster_pubkeys(const struct LDKDirectedChannelTransactionParameters *NONNULL_PTR this_arg); + export function DirectedChannelTransactionParameters_broadcaster_pubkeys(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncementInfo_get_announcement_message(this_ptr); + const nativeResponseValue = wasm.TS_DirectedChannelTransactionParameters_broadcaster_pubkeys(this_arg); return nativeResponseValue; } - // void NodeAnnouncementInfo_set_announcement_message(struct LDKNodeAnnouncementInfo *NONNULL_PTR this_ptr, struct LDKNodeAnnouncement val); - export function NodeAnnouncementInfo_set_announcement_message(this_ptr: number, val: number): void { + // MUST_USE_RES struct LDKChannelPublicKeys DirectedChannelTransactionParameters_countersignatory_pubkeys(const struct LDKDirectedChannelTransactionParameters *NONNULL_PTR this_arg); + export function DirectedChannelTransactionParameters_countersignatory_pubkeys(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncementInfo_set_announcement_message(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_DirectedChannelTransactionParameters_countersignatory_pubkeys(this_arg); + return nativeResponseValue; } - // MUST_USE_RES struct LDKNodeAnnouncementInfo NodeAnnouncementInfo_new(struct LDKNodeFeatures features_arg, uint32_t last_update_arg, struct LDKThreeBytes rgb_arg, struct LDKThirtyTwoBytes alias_arg, struct LDKCVec_NetAddressZ addresses_arg, struct LDKNodeAnnouncement announcement_message_arg); - export function NodeAnnouncementInfo_new(features_arg: number, last_update_arg: number, rgb_arg: Uint8Array, alias_arg: Uint8Array, addresses_arg: number[], announcement_message_arg: number): number { + // MUST_USE_RES uint16_t DirectedChannelTransactionParameters_contest_delay(const struct LDKDirectedChannelTransactionParameters *NONNULL_PTR this_arg); + export function DirectedChannelTransactionParameters_contest_delay(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncementInfo_new(features_arg, last_update_arg, encodeArray(rgb_arg), encodeArray(alias_arg), addresses_arg, announcement_message_arg); + const nativeResponseValue = wasm.TS_DirectedChannelTransactionParameters_contest_delay(this_arg); return nativeResponseValue; } - // uint64_t NodeAnnouncementInfo_clone_ptr(LDKNodeAnnouncementInfo *NONNULL_PTR arg); - export function NodeAnnouncementInfo_clone_ptr(arg: number): number { + // MUST_USE_RES bool DirectedChannelTransactionParameters_is_outbound(const struct LDKDirectedChannelTransactionParameters *NONNULL_PTR this_arg); + export function DirectedChannelTransactionParameters_is_outbound(this_arg: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncementInfo_clone_ptr(arg); + const nativeResponseValue = wasm.TS_DirectedChannelTransactionParameters_is_outbound(this_arg); return nativeResponseValue; } - // struct LDKNodeAnnouncementInfo NodeAnnouncementInfo_clone(const struct LDKNodeAnnouncementInfo *NONNULL_PTR orig); - export function NodeAnnouncementInfo_clone(orig: number): number { + // MUST_USE_RES struct LDKOutPoint DirectedChannelTransactionParameters_funding_outpoint(const struct LDKDirectedChannelTransactionParameters *NONNULL_PTR this_arg); + export function DirectedChannelTransactionParameters_funding_outpoint(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncementInfo_clone(orig); + const nativeResponseValue = wasm.TS_DirectedChannelTransactionParameters_funding_outpoint(this_arg); return nativeResponseValue; } - // struct LDKCVec_u8Z NodeAnnouncementInfo_write(const struct LDKNodeAnnouncementInfo *NONNULL_PTR obj); - export function NodeAnnouncementInfo_write(obj: number): Uint8Array { + // MUST_USE_RES bool DirectedChannelTransactionParameters_opt_anchors(const struct LDKDirectedChannelTransactionParameters *NONNULL_PTR this_arg); + export function DirectedChannelTransactionParameters_opt_anchors(this_arg: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncementInfo_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_DirectedChannelTransactionParameters_opt_anchors(this_arg); + return nativeResponseValue; } - // struct LDKCResult_NodeAnnouncementInfoDecodeErrorZ NodeAnnouncementInfo_read(struct LDKu8slice ser); - export function NodeAnnouncementInfo_read(ser: Uint8Array): number { + // void HolderCommitmentTransaction_free(struct LDKHolderCommitmentTransaction this_obj); + export function HolderCommitmentTransaction_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeAnnouncementInfo_read(encodeArray(ser)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_HolderCommitmentTransaction_free(this_obj); + // debug statements here } - // void NodeInfo_free(struct LDKNodeInfo this_obj); - export function NodeInfo_free(this_obj: number): void { + // struct LDKSignature HolderCommitmentTransaction_get_counterparty_sig(const struct LDKHolderCommitmentTransaction *NONNULL_PTR this_ptr); + export function HolderCommitmentTransaction_get_counterparty_sig(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeInfo_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_HolderCommitmentTransaction_get_counterparty_sig(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void NodeInfo_set_channels(struct LDKNodeInfo *NONNULL_PTR this_ptr, struct LDKCVec_u64Z val); - export function NodeInfo_set_channels(this_ptr: number, val: number[]): void { + // void HolderCommitmentTransaction_set_counterparty_sig(struct LDKHolderCommitmentTransaction *NONNULL_PTR this_ptr, struct LDKSignature val); + export function HolderCommitmentTransaction_set_counterparty_sig(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeInfo_set_channels(this_ptr, val); + const nativeResponseValue = wasm.TS_HolderCommitmentTransaction_set_counterparty_sig(this_ptr, encodeUint8Array(val)); // debug statements here } - // struct LDKRoutingFees NodeInfo_get_lowest_inbound_channel_fees(const struct LDKNodeInfo *NONNULL_PTR this_ptr); - export function NodeInfo_get_lowest_inbound_channel_fees(this_ptr: number): number { + // void HolderCommitmentTransaction_set_counterparty_htlc_sigs(struct LDKHolderCommitmentTransaction *NONNULL_PTR this_ptr, struct LDKCVec_SignatureZ val); + export function HolderCommitmentTransaction_set_counterparty_htlc_sigs(this_ptr: number, val: Uint8Array[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeInfo_get_lowest_inbound_channel_fees(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_HolderCommitmentTransaction_set_counterparty_htlc_sigs(this_ptr, val); + // debug statements here } - // void NodeInfo_set_lowest_inbound_channel_fees(struct LDKNodeInfo *NONNULL_PTR this_ptr, struct LDKRoutingFees val); - export function NodeInfo_set_lowest_inbound_channel_fees(this_ptr: number, val: number): void { + // uint64_t HolderCommitmentTransaction_clone_ptr(LDKHolderCommitmentTransaction *NONNULL_PTR arg); + export function HolderCommitmentTransaction_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeInfo_set_lowest_inbound_channel_fees(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_HolderCommitmentTransaction_clone_ptr(arg); + return nativeResponseValue; } - // struct LDKNodeAnnouncementInfo NodeInfo_get_announcement_info(const struct LDKNodeInfo *NONNULL_PTR this_ptr); - export function NodeInfo_get_announcement_info(this_ptr: number): number { + // struct LDKHolderCommitmentTransaction HolderCommitmentTransaction_clone(const struct LDKHolderCommitmentTransaction *NONNULL_PTR orig); + export function HolderCommitmentTransaction_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeInfo_get_announcement_info(this_ptr); + const nativeResponseValue = wasm.TS_HolderCommitmentTransaction_clone(orig); return nativeResponseValue; } - // void NodeInfo_set_announcement_info(struct LDKNodeInfo *NONNULL_PTR this_ptr, struct LDKNodeAnnouncementInfo val); - export function NodeInfo_set_announcement_info(this_ptr: number, val: number): void { + // struct LDKCVec_u8Z HolderCommitmentTransaction_write(const struct LDKHolderCommitmentTransaction *NONNULL_PTR obj); + export function HolderCommitmentTransaction_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeInfo_set_announcement_info(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_HolderCommitmentTransaction_write(obj); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES struct LDKNodeInfo NodeInfo_new(struct LDKCVec_u64Z channels_arg, struct LDKRoutingFees lowest_inbound_channel_fees_arg, struct LDKNodeAnnouncementInfo announcement_info_arg); - export function NodeInfo_new(channels_arg: number[], lowest_inbound_channel_fees_arg: number, announcement_info_arg: number): number { + // struct LDKCResult_HolderCommitmentTransactionDecodeErrorZ HolderCommitmentTransaction_read(struct LDKu8slice ser); + export function HolderCommitmentTransaction_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeInfo_new(channels_arg, lowest_inbound_channel_fees_arg, announcement_info_arg); + const nativeResponseValue = wasm.TS_HolderCommitmentTransaction_read(encodeUint8Array(ser)); return nativeResponseValue; } - // uint64_t NodeInfo_clone_ptr(LDKNodeInfo *NONNULL_PTR arg); - export function NodeInfo_clone_ptr(arg: number): number { + // MUST_USE_RES struct LDKHolderCommitmentTransaction HolderCommitmentTransaction_new(struct LDKCommitmentTransaction commitment_tx, struct LDKSignature counterparty_sig, struct LDKCVec_SignatureZ counterparty_htlc_sigs, struct LDKPublicKey holder_funding_key, struct LDKPublicKey counterparty_funding_key); + export function HolderCommitmentTransaction_new(commitment_tx: number, counterparty_sig: Uint8Array, counterparty_htlc_sigs: Uint8Array[], holder_funding_key: Uint8Array, counterparty_funding_key: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeInfo_clone_ptr(arg); + const nativeResponseValue = wasm.TS_HolderCommitmentTransaction_new(commitment_tx, encodeUint8Array(counterparty_sig), counterparty_htlc_sigs, encodeUint8Array(holder_funding_key), encodeUint8Array(counterparty_funding_key)); return nativeResponseValue; } - // struct LDKNodeInfo NodeInfo_clone(const struct LDKNodeInfo *NONNULL_PTR orig); - export function NodeInfo_clone(orig: number): number { + // void BuiltCommitmentTransaction_free(struct LDKBuiltCommitmentTransaction this_obj); + export function BuiltCommitmentTransaction_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeInfo_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_BuiltCommitmentTransaction_free(this_obj); + // debug statements here } - // struct LDKCVec_u8Z NodeInfo_write(const struct LDKNodeInfo *NONNULL_PTR obj); - export function NodeInfo_write(obj: number): Uint8Array { + // struct LDKTransaction BuiltCommitmentTransaction_get_transaction(const struct LDKBuiltCommitmentTransaction *NONNULL_PTR this_ptr); + export function BuiltCommitmentTransaction_get_transaction(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeInfo_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_BuiltCommitmentTransaction_get_transaction(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCResult_NodeInfoDecodeErrorZ NodeInfo_read(struct LDKu8slice ser); - export function NodeInfo_read(ser: Uint8Array): number { + // void BuiltCommitmentTransaction_set_transaction(struct LDKBuiltCommitmentTransaction *NONNULL_PTR this_ptr, struct LDKTransaction val); + export function BuiltCommitmentTransaction_set_transaction(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NodeInfo_read(encodeArray(ser)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_BuiltCommitmentTransaction_set_transaction(this_ptr, encodeUint8Array(val)); + // debug statements here } - // struct LDKCVec_u8Z NetworkGraph_write(const struct LDKNetworkGraph *NONNULL_PTR obj); - export function NetworkGraph_write(obj: number): Uint8Array { + // const uint8_t (*BuiltCommitmentTransaction_get_txid(const struct LDKBuiltCommitmentTransaction *NONNULL_PTR this_ptr))[32]; + export function BuiltCommitmentTransaction_get_txid(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetworkGraph_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_BuiltCommitmentTransaction_get_txid(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCResult_NetworkGraphDecodeErrorZ NetworkGraph_read(struct LDKu8slice ser); - export function NetworkGraph_read(ser: Uint8Array): number { + // void BuiltCommitmentTransaction_set_txid(struct LDKBuiltCommitmentTransaction *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function BuiltCommitmentTransaction_set_txid(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetworkGraph_read(encodeArray(ser)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_BuiltCommitmentTransaction_set_txid(this_ptr, encodeUint8Array(val)); + // debug statements here } - // MUST_USE_RES struct LDKNetworkGraph NetworkGraph_new(struct LDKThirtyTwoBytes genesis_hash); - export function NetworkGraph_new(genesis_hash: Uint8Array): number { + // MUST_USE_RES struct LDKBuiltCommitmentTransaction BuiltCommitmentTransaction_new(struct LDKTransaction transaction_arg, struct LDKThirtyTwoBytes txid_arg); + export function BuiltCommitmentTransaction_new(transaction_arg: Uint8Array, txid_arg: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetworkGraph_new(encodeArray(genesis_hash)); + const nativeResponseValue = wasm.TS_BuiltCommitmentTransaction_new(encodeUint8Array(transaction_arg), encodeUint8Array(txid_arg)); return nativeResponseValue; } - // MUST_USE_RES struct LDKReadOnlyNetworkGraph NetworkGraph_read_only(const struct LDKNetworkGraph *NONNULL_PTR this_arg); - export function NetworkGraph_read_only(this_arg: number): number { + // uint64_t BuiltCommitmentTransaction_clone_ptr(LDKBuiltCommitmentTransaction *NONNULL_PTR arg); + export function BuiltCommitmentTransaction_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetworkGraph_read_only(this_arg); + const nativeResponseValue = wasm.TS_BuiltCommitmentTransaction_clone_ptr(arg); return nativeResponseValue; } - // MUST_USE_RES struct LDKCResult_NoneLightningErrorZ NetworkGraph_update_node_from_announcement(const struct LDKNetworkGraph *NONNULL_PTR this_arg, const struct LDKNodeAnnouncement *NONNULL_PTR msg); - export function NetworkGraph_update_node_from_announcement(this_arg: number, msg: number): number { + // struct LDKBuiltCommitmentTransaction BuiltCommitmentTransaction_clone(const struct LDKBuiltCommitmentTransaction *NONNULL_PTR orig); + export function BuiltCommitmentTransaction_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetworkGraph_update_node_from_announcement(this_arg, msg); + const nativeResponseValue = wasm.TS_BuiltCommitmentTransaction_clone(orig); return nativeResponseValue; } - // MUST_USE_RES struct LDKCResult_NoneLightningErrorZ NetworkGraph_update_node_from_unsigned_announcement(const struct LDKNetworkGraph *NONNULL_PTR this_arg, const struct LDKUnsignedNodeAnnouncement *NONNULL_PTR msg); - export function NetworkGraph_update_node_from_unsigned_announcement(this_arg: number, msg: number): number { + // struct LDKCVec_u8Z BuiltCommitmentTransaction_write(const struct LDKBuiltCommitmentTransaction *NONNULL_PTR obj); + export function BuiltCommitmentTransaction_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetworkGraph_update_node_from_unsigned_announcement(this_arg, msg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_BuiltCommitmentTransaction_write(obj); + return decodeUint8Array(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); - export function NetworkGraph_update_channel_from_announcement(this_arg: number, msg: number, chain_access: number): number { + // struct LDKCResult_BuiltCommitmentTransactionDecodeErrorZ BuiltCommitmentTransaction_read(struct LDKu8slice ser); + export function BuiltCommitmentTransaction_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetworkGraph_update_channel_from_announcement(this_arg, msg, chain_access); + const nativeResponseValue = wasm.TS_BuiltCommitmentTransaction_read(encodeUint8Array(ser)); 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); - export function NetworkGraph_update_channel_from_unsigned_announcement(this_arg: number, msg: number, chain_access: number): number { + // MUST_USE_RES struct LDKThirtyTwoBytes BuiltCommitmentTransaction_get_sighash_all(const struct LDKBuiltCommitmentTransaction *NONNULL_PTR this_arg, struct LDKu8slice funding_redeemscript, uint64_t channel_value_satoshis); + export function BuiltCommitmentTransaction_get_sighash_all(this_arg: number, funding_redeemscript: Uint8Array, channel_value_satoshis: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetworkGraph_update_channel_from_unsigned_announcement(this_arg, msg, chain_access); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_BuiltCommitmentTransaction_get_sighash_all(this_arg, encodeUint8Array(funding_redeemscript), channel_value_satoshis); + return decodeUint8Array(nativeResponseValue); } - // void NetworkGraph_close_channel_from_update(const struct LDKNetworkGraph *NONNULL_PTR this_arg, uint64_t short_channel_id, bool is_permanent); - export function NetworkGraph_close_channel_from_update(this_arg: number, short_channel_id: number, is_permanent: boolean): void { + // MUST_USE_RES struct LDKSignature BuiltCommitmentTransaction_sign(const struct LDKBuiltCommitmentTransaction *NONNULL_PTR this_arg, const uint8_t (*funding_key)[32], struct LDKu8slice funding_redeemscript, uint64_t channel_value_satoshis); + export function BuiltCommitmentTransaction_sign(this_arg: number, funding_key: Uint8Array, funding_redeemscript: Uint8Array, channel_value_satoshis: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetworkGraph_close_channel_from_update(this_arg, short_channel_id, is_permanent); - // debug statements here + const nativeResponseValue = wasm.TS_BuiltCommitmentTransaction_sign(this_arg, encodeUint8Array(funding_key), encodeUint8Array(funding_redeemscript), channel_value_satoshis); + return decodeUint8Array(nativeResponseValue); } - // void NetworkGraph_fail_node(const struct LDKNetworkGraph *NONNULL_PTR this_arg, struct LDKPublicKey _node_id, bool is_permanent); - export function NetworkGraph_fail_node(this_arg: number, _node_id: Uint8Array, is_permanent: boolean): void { + // void ClosingTransaction_free(struct LDKClosingTransaction this_obj); + export function ClosingTransaction_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetworkGraph_fail_node(this_arg, encodeArray(_node_id), is_permanent); + const nativeResponseValue = wasm.TS_ClosingTransaction_free(this_obj); // debug statements here } - // void NetworkGraph_remove_stale_channels_with_time(const struct LDKNetworkGraph *NONNULL_PTR this_arg, uint64_t current_time_unix); - export function NetworkGraph_remove_stale_channels_with_time(this_arg: number, current_time_unix: number): void { + // uint64_t ClosingTransaction_clone_ptr(LDKClosingTransaction *NONNULL_PTR arg); + export function ClosingTransaction_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetworkGraph_remove_stale_channels_with_time(this_arg, current_time_unix); - // debug statements here + const nativeResponseValue = wasm.TS_ClosingTransaction_clone_ptr(arg); + return nativeResponseValue; } - // MUST_USE_RES struct LDKCResult_NoneLightningErrorZ NetworkGraph_update_channel(const struct LDKNetworkGraph *NONNULL_PTR this_arg, const struct LDKChannelUpdate *NONNULL_PTR msg); - export function NetworkGraph_update_channel(this_arg: number, msg: number): number { + // struct LDKClosingTransaction ClosingTransaction_clone(const struct LDKClosingTransaction *NONNULL_PTR orig); + export function ClosingTransaction_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetworkGraph_update_channel(this_arg, msg); + const nativeResponseValue = wasm.TS_ClosingTransaction_clone(orig); return nativeResponseValue; } - // MUST_USE_RES struct LDKCResult_NoneLightningErrorZ NetworkGraph_update_channel_unsigned(const struct LDKNetworkGraph *NONNULL_PTR this_arg, const struct LDKUnsignedChannelUpdate *NONNULL_PTR msg); - export function NetworkGraph_update_channel_unsigned(this_arg: number, msg: number): number { + // uint64_t ClosingTransaction_hash(const struct LDKClosingTransaction *NONNULL_PTR o); + export function ClosingTransaction_hash(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.NetworkGraph_update_channel_unsigned(this_arg, msg); + const nativeResponseValue = wasm.TS_ClosingTransaction_hash(o); return nativeResponseValue; } - // MUST_USE_RES struct LDKCOption_CVec_NetAddressZZ ReadOnlyNetworkGraph_get_addresses(const struct LDKReadOnlyNetworkGraph *NONNULL_PTR this_arg, struct LDKPublicKey pubkey); - export function ReadOnlyNetworkGraph_get_addresses(this_arg: number, pubkey: Uint8Array): number { + // 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); + export function ClosingTransaction_new(to_holder_value_sat: number, to_counterparty_value_sat: number, to_holder_script: Uint8Array, to_counterparty_script: Uint8Array, funding_outpoint: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ReadOnlyNetworkGraph_get_addresses(this_arg, encodeArray(pubkey)); + const nativeResponseValue = wasm.TS_ClosingTransaction_new(to_holder_value_sat, to_counterparty_value_sat, encodeUint8Array(to_holder_script), encodeUint8Array(to_counterparty_script), funding_outpoint); return nativeResponseValue; } - // void RouteHop_free(struct LDKRouteHop this_obj); - export function RouteHop_free(this_obj: number): void { + // MUST_USE_RES struct LDKTrustedClosingTransaction ClosingTransaction_trust(const struct LDKClosingTransaction *NONNULL_PTR this_arg); + export function ClosingTransaction_trust(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHop_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_ClosingTransaction_trust(this_arg); + return nativeResponseValue; } - // struct LDKPublicKey RouteHop_get_pubkey(const struct LDKRouteHop *NONNULL_PTR this_ptr); - export function RouteHop_get_pubkey(this_ptr: number): Uint8Array { + // MUST_USE_RES struct LDKCResult_TrustedClosingTransactionNoneZ ClosingTransaction_verify(const struct LDKClosingTransaction *NONNULL_PTR this_arg, struct LDKOutPoint funding_outpoint); + export function ClosingTransaction_verify(this_arg: number, funding_outpoint: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHop_get_pubkey(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ClosingTransaction_verify(this_arg, funding_outpoint); + return nativeResponseValue; } - // void RouteHop_set_pubkey(struct LDKRouteHop *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function RouteHop_set_pubkey(this_ptr: number, val: Uint8Array): void { + // MUST_USE_RES uint64_t ClosingTransaction_to_holder_value_sat(const struct LDKClosingTransaction *NONNULL_PTR this_arg); + export function ClosingTransaction_to_holder_value_sat(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHop_set_pubkey(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_ClosingTransaction_to_holder_value_sat(this_arg); + return nativeResponseValue; } - // struct LDKNodeFeatures RouteHop_get_node_features(const struct LDKRouteHop *NONNULL_PTR this_ptr); - export function RouteHop_get_node_features(this_ptr: number): number { + // MUST_USE_RES uint64_t ClosingTransaction_to_counterparty_value_sat(const struct LDKClosingTransaction *NONNULL_PTR this_arg); + export function ClosingTransaction_to_counterparty_value_sat(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHop_get_node_features(this_ptr); + const nativeResponseValue = wasm.TS_ClosingTransaction_to_counterparty_value_sat(this_arg); return nativeResponseValue; } - // void RouteHop_set_node_features(struct LDKRouteHop *NONNULL_PTR this_ptr, struct LDKNodeFeatures val); - export function RouteHop_set_node_features(this_ptr: number, val: number): void { + // MUST_USE_RES struct LDKu8slice ClosingTransaction_to_holder_script(const struct LDKClosingTransaction *NONNULL_PTR this_arg); + export function ClosingTransaction_to_holder_script(this_arg: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHop_set_node_features(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_ClosingTransaction_to_holder_script(this_arg); + return decodeUint8Array(nativeResponseValue); } - // uint64_t RouteHop_get_short_channel_id(const struct LDKRouteHop *NONNULL_PTR this_ptr); - export function RouteHop_get_short_channel_id(this_ptr: number): number { + // MUST_USE_RES struct LDKu8slice ClosingTransaction_to_counterparty_script(const struct LDKClosingTransaction *NONNULL_PTR this_arg); + export function ClosingTransaction_to_counterparty_script(this_arg: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHop_get_short_channel_id(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ClosingTransaction_to_counterparty_script(this_arg); + return decodeUint8Array(nativeResponseValue); } - // void RouteHop_set_short_channel_id(struct LDKRouteHop *NONNULL_PTR this_ptr, uint64_t val); - export function RouteHop_set_short_channel_id(this_ptr: number, val: number): void { + // void TrustedClosingTransaction_free(struct LDKTrustedClosingTransaction this_obj); + export function TrustedClosingTransaction_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHop_set_short_channel_id(this_ptr, val); + const nativeResponseValue = wasm.TS_TrustedClosingTransaction_free(this_obj); // debug statements here } - // struct LDKChannelFeatures RouteHop_get_channel_features(const struct LDKRouteHop *NONNULL_PTR this_ptr); - export function RouteHop_get_channel_features(this_ptr: number): number { + // MUST_USE_RES struct LDKTransaction TrustedClosingTransaction_built_transaction(const struct LDKTrustedClosingTransaction *NONNULL_PTR this_arg); + export function TrustedClosingTransaction_built_transaction(this_arg: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHop_get_channel_features(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_TrustedClosingTransaction_built_transaction(this_arg); + return decodeUint8Array(nativeResponseValue); } - // void RouteHop_set_channel_features(struct LDKRouteHop *NONNULL_PTR this_ptr, struct LDKChannelFeatures val); - export function RouteHop_set_channel_features(this_ptr: number, val: number): void { + // MUST_USE_RES struct LDKThirtyTwoBytes TrustedClosingTransaction_get_sighash_all(const struct LDKTrustedClosingTransaction *NONNULL_PTR this_arg, struct LDKu8slice funding_redeemscript, uint64_t channel_value_satoshis); + export function TrustedClosingTransaction_get_sighash_all(this_arg: number, funding_redeemscript: Uint8Array, channel_value_satoshis: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHop_set_channel_features(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_TrustedClosingTransaction_get_sighash_all(this_arg, encodeUint8Array(funding_redeemscript), channel_value_satoshis); + return decodeUint8Array(nativeResponseValue); } - // uint64_t RouteHop_get_fee_msat(const struct LDKRouteHop *NONNULL_PTR this_ptr); - export function RouteHop_get_fee_msat(this_ptr: number): number { + // MUST_USE_RES struct LDKSignature TrustedClosingTransaction_sign(const struct LDKTrustedClosingTransaction *NONNULL_PTR this_arg, const uint8_t (*funding_key)[32], struct LDKu8slice funding_redeemscript, uint64_t channel_value_satoshis); + export function TrustedClosingTransaction_sign(this_arg: number, funding_key: Uint8Array, funding_redeemscript: Uint8Array, channel_value_satoshis: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHop_get_fee_msat(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_TrustedClosingTransaction_sign(this_arg, encodeUint8Array(funding_key), encodeUint8Array(funding_redeemscript), channel_value_satoshis); + return decodeUint8Array(nativeResponseValue); } - // void RouteHop_set_fee_msat(struct LDKRouteHop *NONNULL_PTR this_ptr, uint64_t val); - export function RouteHop_set_fee_msat(this_ptr: number, val: number): void { + // void CommitmentTransaction_free(struct LDKCommitmentTransaction this_obj); + export function CommitmentTransaction_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHop_set_fee_msat(this_ptr, val); + const nativeResponseValue = wasm.TS_CommitmentTransaction_free(this_obj); // debug statements here } - // uint32_t RouteHop_get_cltv_expiry_delta(const struct LDKRouteHop *NONNULL_PTR this_ptr); - export function RouteHop_get_cltv_expiry_delta(this_ptr: number): number { + // uint64_t CommitmentTransaction_clone_ptr(LDKCommitmentTransaction *NONNULL_PTR arg); + export function CommitmentTransaction_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHop_get_cltv_expiry_delta(this_ptr); + const nativeResponseValue = wasm.TS_CommitmentTransaction_clone_ptr(arg); return nativeResponseValue; } - // void RouteHop_set_cltv_expiry_delta(struct LDKRouteHop *NONNULL_PTR this_ptr, uint32_t val); - export function RouteHop_set_cltv_expiry_delta(this_ptr: number, val: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.RouteHop_set_cltv_expiry_delta(this_ptr, val); - // debug statements here - } - // MUST_USE_RES struct LDKRouteHop RouteHop_new(struct LDKPublicKey pubkey_arg, struct LDKNodeFeatures node_features_arg, uint64_t short_channel_id_arg, struct LDKChannelFeatures channel_features_arg, uint64_t fee_msat_arg, uint32_t cltv_expiry_delta_arg); - export function RouteHop_new(pubkey_arg: Uint8Array, node_features_arg: number, short_channel_id_arg: number, channel_features_arg: number, fee_msat_arg: number, cltv_expiry_delta_arg: number): number { + // struct LDKCommitmentTransaction CommitmentTransaction_clone(const struct LDKCommitmentTransaction *NONNULL_PTR orig); + export function CommitmentTransaction_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHop_new(encodeArray(pubkey_arg), node_features_arg, short_channel_id_arg, channel_features_arg, fee_msat_arg, cltv_expiry_delta_arg); + const nativeResponseValue = wasm.TS_CommitmentTransaction_clone(orig); return nativeResponseValue; } - // uint64_t RouteHop_clone_ptr(LDKRouteHop *NONNULL_PTR arg); - export function RouteHop_clone_ptr(arg: number): number { + // struct LDKCVec_u8Z CommitmentTransaction_write(const struct LDKCommitmentTransaction *NONNULL_PTR obj); + export function CommitmentTransaction_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHop_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_CommitmentTransaction_write(obj); + return decodeUint8Array(nativeResponseValue); } - // struct LDKRouteHop RouteHop_clone(const struct LDKRouteHop *NONNULL_PTR orig); - export function RouteHop_clone(orig: number): number { + // struct LDKCResult_CommitmentTransactionDecodeErrorZ CommitmentTransaction_read(struct LDKu8slice ser); + export function CommitmentTransaction_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHop_clone(orig); + const nativeResponseValue = wasm.TS_CommitmentTransaction_read(encodeUint8Array(ser)); return nativeResponseValue; } - // uint64_t RouteHop_hash(const struct LDKRouteHop *NONNULL_PTR o); - export function RouteHop_hash(o: number): number { + // MUST_USE_RES uint64_t CommitmentTransaction_commitment_number(const struct LDKCommitmentTransaction *NONNULL_PTR this_arg); + export function CommitmentTransaction_commitment_number(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHop_hash(o); + const nativeResponseValue = wasm.TS_CommitmentTransaction_commitment_number(this_arg); return nativeResponseValue; } - // bool RouteHop_eq(const struct LDKRouteHop *NONNULL_PTR a, const struct LDKRouteHop *NONNULL_PTR b); - export function RouteHop_eq(a: number, b: number): boolean { + // MUST_USE_RES uint64_t CommitmentTransaction_to_broadcaster_value_sat(const struct LDKCommitmentTransaction *NONNULL_PTR this_arg); + export function CommitmentTransaction_to_broadcaster_value_sat(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHop_eq(a, b); + const nativeResponseValue = wasm.TS_CommitmentTransaction_to_broadcaster_value_sat(this_arg); return nativeResponseValue; } - // struct LDKCVec_u8Z RouteHop_write(const struct LDKRouteHop *NONNULL_PTR obj); - export function RouteHop_write(obj: number): Uint8Array { + // MUST_USE_RES uint64_t CommitmentTransaction_to_countersignatory_value_sat(const struct LDKCommitmentTransaction *NONNULL_PTR this_arg); + export function CommitmentTransaction_to_countersignatory_value_sat(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHop_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CommitmentTransaction_to_countersignatory_value_sat(this_arg); + return nativeResponseValue; } - // struct LDKCResult_RouteHopDecodeErrorZ RouteHop_read(struct LDKu8slice ser); - export function RouteHop_read(ser: Uint8Array): number { + // MUST_USE_RES uint32_t CommitmentTransaction_feerate_per_kw(const struct LDKCommitmentTransaction *NONNULL_PTR this_arg); + export function CommitmentTransaction_feerate_per_kw(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHop_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_CommitmentTransaction_feerate_per_kw(this_arg); return nativeResponseValue; } - // void Route_free(struct LDKRoute this_obj); - export function Route_free(this_obj: number): void { + // MUST_USE_RES struct LDKTrustedCommitmentTransaction CommitmentTransaction_trust(const struct LDKCommitmentTransaction *NONNULL_PTR this_arg); + export function CommitmentTransaction_trust(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Route_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_CommitmentTransaction_trust(this_arg); + return nativeResponseValue; } - // struct LDKCVec_CVec_RouteHopZZ Route_get_paths(const struct LDKRoute *NONNULL_PTR this_ptr); - export function Route_get_paths(this_ptr: number): number[][] { + // MUST_USE_RES struct LDKCResult_TrustedCommitmentTransactionNoneZ CommitmentTransaction_verify(const struct LDKCommitmentTransaction *NONNULL_PTR this_arg, const struct LDKDirectedChannelTransactionParameters *NONNULL_PTR channel_parameters, const struct LDKChannelPublicKeys *NONNULL_PTR broadcaster_keys, const struct LDKChannelPublicKeys *NONNULL_PTR countersignatory_keys); + export function CommitmentTransaction_verify(this_arg: number, channel_parameters: number, broadcaster_keys: number, countersignatory_keys: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Route_get_paths(this_ptr); + const nativeResponseValue = wasm.TS_CommitmentTransaction_verify(this_arg, channel_parameters, broadcaster_keys, countersignatory_keys); return nativeResponseValue; } - // void Route_set_paths(struct LDKRoute *NONNULL_PTR this_ptr, struct LDKCVec_CVec_RouteHopZZ val); - export function Route_set_paths(this_ptr: number, val: number[][]): void { + // void TrustedCommitmentTransaction_free(struct LDKTrustedCommitmentTransaction this_obj); + export function TrustedCommitmentTransaction_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Route_set_paths(this_ptr, val); + const nativeResponseValue = wasm.TS_TrustedCommitmentTransaction_free(this_obj); // debug statements here } - // struct LDKPayee Route_get_payee(const struct LDKRoute *NONNULL_PTR this_ptr); - export function Route_get_payee(this_ptr: number): number { + // MUST_USE_RES struct LDKThirtyTwoBytes TrustedCommitmentTransaction_txid(const struct LDKTrustedCommitmentTransaction *NONNULL_PTR this_arg); + export function TrustedCommitmentTransaction_txid(this_arg: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Route_get_payee(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_TrustedCommitmentTransaction_txid(this_arg); + return decodeUint8Array(nativeResponseValue); } - // void Route_set_payee(struct LDKRoute *NONNULL_PTR this_ptr, struct LDKPayee val); - export function Route_set_payee(this_ptr: number, val: number): void { + // MUST_USE_RES struct LDKBuiltCommitmentTransaction TrustedCommitmentTransaction_built_transaction(const struct LDKTrustedCommitmentTransaction *NONNULL_PTR this_arg); + export function TrustedCommitmentTransaction_built_transaction(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Route_set_payee(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_TrustedCommitmentTransaction_built_transaction(this_arg); + return nativeResponseValue; } - // MUST_USE_RES struct LDKRoute Route_new(struct LDKCVec_CVec_RouteHopZZ paths_arg, struct LDKPayee payee_arg); - export function Route_new(paths_arg: number[][], payee_arg: number): number { + // MUST_USE_RES struct LDKTxCreationKeys TrustedCommitmentTransaction_keys(const struct LDKTrustedCommitmentTransaction *NONNULL_PTR this_arg); + export function TrustedCommitmentTransaction_keys(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Route_new(paths_arg, payee_arg); + const nativeResponseValue = wasm.TS_TrustedCommitmentTransaction_keys(this_arg); return nativeResponseValue; } - // uint64_t Route_clone_ptr(LDKRoute *NONNULL_PTR arg); - export function Route_clone_ptr(arg: number): number { + // MUST_USE_RES bool TrustedCommitmentTransaction_opt_anchors(const struct LDKTrustedCommitmentTransaction *NONNULL_PTR this_arg); + export function TrustedCommitmentTransaction_opt_anchors(this_arg: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Route_clone_ptr(arg); + const nativeResponseValue = wasm.TS_TrustedCommitmentTransaction_opt_anchors(this_arg); return nativeResponseValue; } - // struct LDKRoute Route_clone(const struct LDKRoute *NONNULL_PTR orig); - export function Route_clone(orig: number): number { + // MUST_USE_RES struct LDKCResult_CVec_SignatureZNoneZ TrustedCommitmentTransaction_get_htlc_sigs(const struct LDKTrustedCommitmentTransaction *NONNULL_PTR this_arg, const uint8_t (*htlc_base_key)[32], const struct LDKDirectedChannelTransactionParameters *NONNULL_PTR channel_parameters); + export function TrustedCommitmentTransaction_get_htlc_sigs(this_arg: number, htlc_base_key: Uint8Array, channel_parameters: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Route_clone(orig); + const nativeResponseValue = wasm.TS_TrustedCommitmentTransaction_get_htlc_sigs(this_arg, encodeUint8Array(htlc_base_key), channel_parameters); return nativeResponseValue; } - // uint64_t Route_hash(const struct LDKRoute *NONNULL_PTR o); - export function Route_hash(o: number): number { + // uint64_t get_commitment_transaction_number_obscure_factor(struct LDKPublicKey broadcaster_payment_basepoint, struct LDKPublicKey countersignatory_payment_basepoint, bool outbound_from_broadcaster); + export function get_commitment_transaction_number_obscure_factor(broadcaster_payment_basepoint: Uint8Array, countersignatory_payment_basepoint: Uint8Array, outbound_from_broadcaster: boolean): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Route_hash(o); + const nativeResponseValue = wasm.TS_get_commitment_transaction_number_obscure_factor(encodeUint8Array(broadcaster_payment_basepoint), encodeUint8Array(countersignatory_payment_basepoint), outbound_from_broadcaster); return nativeResponseValue; } - // bool Route_eq(const struct LDKRoute *NONNULL_PTR a, const struct LDKRoute *NONNULL_PTR b); - export function Route_eq(a: number, b: number): boolean { + // bool InitFeatures_eq(const struct LDKInitFeatures *NONNULL_PTR a, const struct LDKInitFeatures *NONNULL_PTR b); + export function InitFeatures_eq(a: number, b: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Route_eq(a, b); + const nativeResponseValue = wasm.TS_InitFeatures_eq(a, b); return nativeResponseValue; } - // MUST_USE_RES uint64_t Route_get_total_fees(const struct LDKRoute *NONNULL_PTR this_arg); - export function Route_get_total_fees(this_arg: number): number { + // bool NodeFeatures_eq(const struct LDKNodeFeatures *NONNULL_PTR a, const struct LDKNodeFeatures *NONNULL_PTR b); + export function NodeFeatures_eq(a: number, b: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Route_get_total_fees(this_arg); + const nativeResponseValue = wasm.TS_NodeFeatures_eq(a, b); return nativeResponseValue; } - // MUST_USE_RES uint64_t Route_get_total_amount(const struct LDKRoute *NONNULL_PTR this_arg); - export function Route_get_total_amount(this_arg: number): number { + // bool ChannelFeatures_eq(const struct LDKChannelFeatures *NONNULL_PTR a, const struct LDKChannelFeatures *NONNULL_PTR b); + export function ChannelFeatures_eq(a: number, b: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Route_get_total_amount(this_arg); + const nativeResponseValue = wasm.TS_ChannelFeatures_eq(a, b); return nativeResponseValue; } - // struct LDKCVec_u8Z Route_write(const struct LDKRoute *NONNULL_PTR obj); - export function Route_write(obj: number): Uint8Array { + // bool InvoiceFeatures_eq(const struct LDKInvoiceFeatures *NONNULL_PTR a, const struct LDKInvoiceFeatures *NONNULL_PTR b); + export function InvoiceFeatures_eq(a: number, b: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Route_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_InvoiceFeatures_eq(a, b); + return nativeResponseValue; } - // struct LDKCResult_RouteDecodeErrorZ Route_read(struct LDKu8slice ser); - export function Route_read(ser: Uint8Array): number { + // bool ChannelTypeFeatures_eq(const struct LDKChannelTypeFeatures *NONNULL_PTR a, const struct LDKChannelTypeFeatures *NONNULL_PTR b); + export function ChannelTypeFeatures_eq(a: number, b: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Route_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_ChannelTypeFeatures_eq(a, b); return nativeResponseValue; } - // void RouteParameters_free(struct LDKRouteParameters this_obj); - export function RouteParameters_free(this_obj: number): void { + // uint64_t InitFeatures_clone_ptr(LDKInitFeatures *NONNULL_PTR arg); + export function InitFeatures_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteParameters_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_InitFeatures_clone_ptr(arg); + return nativeResponseValue; } - // struct LDKPayee RouteParameters_get_payee(const struct LDKRouteParameters *NONNULL_PTR this_ptr); - export function RouteParameters_get_payee(this_ptr: number): number { + // struct LDKInitFeatures InitFeatures_clone(const struct LDKInitFeatures *NONNULL_PTR orig); + export function InitFeatures_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteParameters_get_payee(this_ptr); + const nativeResponseValue = wasm.TS_InitFeatures_clone(orig); return nativeResponseValue; } - // void RouteParameters_set_payee(struct LDKRouteParameters *NONNULL_PTR this_ptr, struct LDKPayee val); - export function RouteParameters_set_payee(this_ptr: number, val: number): void { + // uint64_t NodeFeatures_clone_ptr(LDKNodeFeatures *NONNULL_PTR arg); + export function NodeFeatures_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteParameters_set_payee(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_NodeFeatures_clone_ptr(arg); + return nativeResponseValue; } - // uint64_t RouteParameters_get_final_value_msat(const struct LDKRouteParameters *NONNULL_PTR this_ptr); - export function RouteParameters_get_final_value_msat(this_ptr: number): number { + // struct LDKNodeFeatures NodeFeatures_clone(const struct LDKNodeFeatures *NONNULL_PTR orig); + export function NodeFeatures_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteParameters_get_final_value_msat(this_ptr); + const nativeResponseValue = wasm.TS_NodeFeatures_clone(orig); return nativeResponseValue; } - // void RouteParameters_set_final_value_msat(struct LDKRouteParameters *NONNULL_PTR this_ptr, uint64_t val); - export function RouteParameters_set_final_value_msat(this_ptr: number, val: number): void { + // uint64_t ChannelFeatures_clone_ptr(LDKChannelFeatures *NONNULL_PTR arg); + export function ChannelFeatures_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteParameters_set_final_value_msat(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelFeatures_clone_ptr(arg); + return nativeResponseValue; } - // uint32_t RouteParameters_get_final_cltv_expiry_delta(const struct LDKRouteParameters *NONNULL_PTR this_ptr); - export function RouteParameters_get_final_cltv_expiry_delta(this_ptr: number): number { + // struct LDKChannelFeatures ChannelFeatures_clone(const struct LDKChannelFeatures *NONNULL_PTR orig); + export function ChannelFeatures_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteParameters_get_final_cltv_expiry_delta(this_ptr); + const nativeResponseValue = wasm.TS_ChannelFeatures_clone(orig); return nativeResponseValue; } - // void RouteParameters_set_final_cltv_expiry_delta(struct LDKRouteParameters *NONNULL_PTR this_ptr, uint32_t val); - export function RouteParameters_set_final_cltv_expiry_delta(this_ptr: number, val: number): void { + // uint64_t InvoiceFeatures_clone_ptr(LDKInvoiceFeatures *NONNULL_PTR arg); + export function InvoiceFeatures_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteParameters_set_final_cltv_expiry_delta(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_InvoiceFeatures_clone_ptr(arg); + return nativeResponseValue; } - // MUST_USE_RES struct LDKRouteParameters RouteParameters_new(struct LDKPayee payee_arg, uint64_t final_value_msat_arg, uint32_t final_cltv_expiry_delta_arg); - export function RouteParameters_new(payee_arg: number, final_value_msat_arg: number, final_cltv_expiry_delta_arg: number): number { + // struct LDKInvoiceFeatures InvoiceFeatures_clone(const struct LDKInvoiceFeatures *NONNULL_PTR orig); + export function InvoiceFeatures_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteParameters_new(payee_arg, final_value_msat_arg, final_cltv_expiry_delta_arg); + const nativeResponseValue = wasm.TS_InvoiceFeatures_clone(orig); return nativeResponseValue; } - // uint64_t RouteParameters_clone_ptr(LDKRouteParameters *NONNULL_PTR arg); - export function RouteParameters_clone_ptr(arg: number): number { + // uint64_t ChannelTypeFeatures_clone_ptr(LDKChannelTypeFeatures *NONNULL_PTR arg); + export function ChannelTypeFeatures_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteParameters_clone_ptr(arg); + const nativeResponseValue = wasm.TS_ChannelTypeFeatures_clone_ptr(arg); return nativeResponseValue; } - // struct LDKRouteParameters RouteParameters_clone(const struct LDKRouteParameters *NONNULL_PTR orig); - export function RouteParameters_clone(orig: number): number { + // struct LDKChannelTypeFeatures ChannelTypeFeatures_clone(const struct LDKChannelTypeFeatures *NONNULL_PTR orig); + export function ChannelTypeFeatures_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteParameters_clone(orig); + const nativeResponseValue = wasm.TS_ChannelTypeFeatures_clone(orig); return nativeResponseValue; } - // struct LDKCVec_u8Z RouteParameters_write(const struct LDKRouteParameters *NONNULL_PTR obj); - export function RouteParameters_write(obj: number): Uint8Array { + // void InitFeatures_free(struct LDKInitFeatures this_obj); + export function InitFeatures_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteParameters_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_InitFeatures_free(this_obj); + // debug statements here } - // struct LDKCResult_RouteParametersDecodeErrorZ RouteParameters_read(struct LDKu8slice ser); - export function RouteParameters_read(ser: Uint8Array): number { + // void NodeFeatures_free(struct LDKNodeFeatures this_obj); + export function NodeFeatures_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteParameters_read(encodeArray(ser)); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_NodeFeatures_free(this_obj); + // debug statements here } - // void Payee_free(struct LDKPayee this_obj); - export function Payee_free(this_obj: number): void { + // void ChannelFeatures_free(struct LDKChannelFeatures this_obj); + export function ChannelFeatures_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Payee_free(this_obj); + const nativeResponseValue = wasm.TS_ChannelFeatures_free(this_obj); // debug statements here } - // struct LDKPublicKey Payee_get_pubkey(const struct LDKPayee *NONNULL_PTR this_ptr); - export function Payee_get_pubkey(this_ptr: number): Uint8Array { + // void InvoiceFeatures_free(struct LDKInvoiceFeatures this_obj); + export function InvoiceFeatures_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Payee_get_pubkey(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_InvoiceFeatures_free(this_obj); + // debug statements here } - // void Payee_set_pubkey(struct LDKPayee *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function Payee_set_pubkey(this_ptr: number, val: Uint8Array): void { + // void ChannelTypeFeatures_free(struct LDKChannelTypeFeatures this_obj); + export function ChannelTypeFeatures_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Payee_set_pubkey(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_ChannelTypeFeatures_free(this_obj); // debug statements here } - // struct LDKInvoiceFeatures Payee_get_features(const struct LDKPayee *NONNULL_PTR this_ptr); - export function Payee_get_features(this_ptr: number): number { + // MUST_USE_RES struct LDKInitFeatures InitFeatures_empty(void); + export function InitFeatures_empty(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Payee_get_features(this_ptr); + const nativeResponseValue = wasm.TS_InitFeatures_empty(); return nativeResponseValue; } - // void Payee_set_features(struct LDKPayee *NONNULL_PTR this_ptr, struct LDKInvoiceFeatures val); - export function Payee_set_features(this_ptr: number, val: number): void { + // MUST_USE_RES struct LDKInitFeatures InitFeatures_known(void); + export function InitFeatures_known(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Payee_set_features(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_InitFeatures_known(); + return nativeResponseValue; } - // struct LDKCVec_RouteHintZ Payee_get_route_hints(const struct LDKPayee *NONNULL_PTR this_ptr); - export function Payee_get_route_hints(this_ptr: number): number[] { + // MUST_USE_RES bool InitFeatures_requires_unknown_bits(const struct LDKInitFeatures *NONNULL_PTR this_arg); + export function InitFeatures_requires_unknown_bits(this_arg: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Payee_get_route_hints(this_ptr); + const nativeResponseValue = wasm.TS_InitFeatures_requires_unknown_bits(this_arg); return nativeResponseValue; } - // void Payee_set_route_hints(struct LDKPayee *NONNULL_PTR this_ptr, struct LDKCVec_RouteHintZ val); - export function Payee_set_route_hints(this_ptr: number, val: number[]): void { + // MUST_USE_RES struct LDKNodeFeatures NodeFeatures_empty(void); + export function NodeFeatures_empty(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Payee_set_route_hints(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_NodeFeatures_empty(); + return nativeResponseValue; } - // struct LDKCOption_u64Z Payee_get_expiry_time(const struct LDKPayee *NONNULL_PTR this_ptr); - export function Payee_get_expiry_time(this_ptr: number): number { + // MUST_USE_RES struct LDKNodeFeatures NodeFeatures_known(void); + export function NodeFeatures_known(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Payee_get_expiry_time(this_ptr); + const nativeResponseValue = wasm.TS_NodeFeatures_known(); return nativeResponseValue; } - // void Payee_set_expiry_time(struct LDKPayee *NONNULL_PTR this_ptr, struct LDKCOption_u64Z val); - export function Payee_set_expiry_time(this_ptr: number, val: number): void { + // MUST_USE_RES bool NodeFeatures_requires_unknown_bits(const struct LDKNodeFeatures *NONNULL_PTR this_arg); + export function NodeFeatures_requires_unknown_bits(this_arg: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Payee_set_expiry_time(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_NodeFeatures_requires_unknown_bits(this_arg); + return nativeResponseValue; } - // MUST_USE_RES struct LDKPayee Payee_new(struct LDKPublicKey pubkey_arg, struct LDKInvoiceFeatures features_arg, struct LDKCVec_RouteHintZ route_hints_arg, struct LDKCOption_u64Z expiry_time_arg); - export function Payee_new(pubkey_arg: Uint8Array, features_arg: number, route_hints_arg: number[], expiry_time_arg: number): number { + // MUST_USE_RES struct LDKChannelFeatures ChannelFeatures_empty(void); + export function ChannelFeatures_empty(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Payee_new(encodeArray(pubkey_arg), features_arg, route_hints_arg, expiry_time_arg); + const nativeResponseValue = wasm.TS_ChannelFeatures_empty(); return nativeResponseValue; } - // uint64_t Payee_clone_ptr(LDKPayee *NONNULL_PTR arg); - export function Payee_clone_ptr(arg: number): number { + // MUST_USE_RES struct LDKChannelFeatures ChannelFeatures_known(void); + export function ChannelFeatures_known(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Payee_clone_ptr(arg); + const nativeResponseValue = wasm.TS_ChannelFeatures_known(); return nativeResponseValue; } - // struct LDKPayee Payee_clone(const struct LDKPayee *NONNULL_PTR orig); - export function Payee_clone(orig: number): number { + // MUST_USE_RES bool ChannelFeatures_requires_unknown_bits(const struct LDKChannelFeatures *NONNULL_PTR this_arg); + export function ChannelFeatures_requires_unknown_bits(this_arg: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Payee_clone(orig); + const nativeResponseValue = wasm.TS_ChannelFeatures_requires_unknown_bits(this_arg); return nativeResponseValue; } - // uint64_t Payee_hash(const struct LDKPayee *NONNULL_PTR o); - export function Payee_hash(o: number): number { + // MUST_USE_RES struct LDKInvoiceFeatures InvoiceFeatures_empty(void); + export function InvoiceFeatures_empty(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Payee_hash(o); + const nativeResponseValue = wasm.TS_InvoiceFeatures_empty(); return nativeResponseValue; } - // bool Payee_eq(const struct LDKPayee *NONNULL_PTR a, const struct LDKPayee *NONNULL_PTR b); - export function Payee_eq(a: number, b: number): boolean { + // MUST_USE_RES struct LDKInvoiceFeatures InvoiceFeatures_known(void); + export function InvoiceFeatures_known(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Payee_eq(a, b); + const nativeResponseValue = wasm.TS_InvoiceFeatures_known(); return nativeResponseValue; } - // struct LDKCVec_u8Z Payee_write(const struct LDKPayee *NONNULL_PTR obj); - export function Payee_write(obj: number): Uint8Array { + // MUST_USE_RES bool InvoiceFeatures_requires_unknown_bits(const struct LDKInvoiceFeatures *NONNULL_PTR this_arg); + export function InvoiceFeatures_requires_unknown_bits(this_arg: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Payee_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_InvoiceFeatures_requires_unknown_bits(this_arg); + return nativeResponseValue; } - // struct LDKCResult_PayeeDecodeErrorZ Payee_read(struct LDKu8slice ser); - export function Payee_read(ser: Uint8Array): number { + // MUST_USE_RES struct LDKChannelTypeFeatures ChannelTypeFeatures_empty(void); + export function ChannelTypeFeatures_empty(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Payee_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_ChannelTypeFeatures_empty(); return nativeResponseValue; } - // MUST_USE_RES struct LDKPayee Payee_from_node_id(struct LDKPublicKey pubkey); - export function Payee_from_node_id(pubkey: Uint8Array): number { + // MUST_USE_RES struct LDKChannelTypeFeatures ChannelTypeFeatures_known(void); + export function ChannelTypeFeatures_known(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Payee_from_node_id(encodeArray(pubkey)); + const nativeResponseValue = wasm.TS_ChannelTypeFeatures_known(); return nativeResponseValue; } - // MUST_USE_RES struct LDKPayee Payee_for_keysend(struct LDKPublicKey pubkey); - export function Payee_for_keysend(pubkey: Uint8Array): number { + // MUST_USE_RES bool ChannelTypeFeatures_requires_unknown_bits(const struct LDKChannelTypeFeatures *NONNULL_PTR this_arg); + export function ChannelTypeFeatures_requires_unknown_bits(this_arg: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Payee_for_keysend(encodeArray(pubkey)); + const nativeResponseValue = wasm.TS_ChannelTypeFeatures_requires_unknown_bits(this_arg); return nativeResponseValue; } - // void RouteHint_free(struct LDKRouteHint this_obj); - export function RouteHint_free(this_obj: number): void { + // struct LDKCVec_u8Z InitFeatures_write(const struct LDKInitFeatures *NONNULL_PTR obj); + export function InitFeatures_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHint_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_InitFeatures_write(obj); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCVec_RouteHintHopZ RouteHint_get_a(const struct LDKRouteHint *NONNULL_PTR this_ptr); - export function RouteHint_get_a(this_ptr: number): number[] { + // struct LDKCResult_InitFeaturesDecodeErrorZ InitFeatures_read(struct LDKu8slice ser); + export function InitFeatures_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHint_get_a(this_ptr); + const nativeResponseValue = wasm.TS_InitFeatures_read(encodeUint8Array(ser)); return nativeResponseValue; } - // void RouteHint_set_a(struct LDKRouteHint *NONNULL_PTR this_ptr, struct LDKCVec_RouteHintHopZ val); - export function RouteHint_set_a(this_ptr: number, val: number[]): void { + // struct LDKCVec_u8Z ChannelFeatures_write(const struct LDKChannelFeatures *NONNULL_PTR obj); + export function ChannelFeatures_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHint_set_a(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_ChannelFeatures_write(obj); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES struct LDKRouteHint RouteHint_new(struct LDKCVec_RouteHintHopZ a_arg); - export function RouteHint_new(a_arg: number[]): number { + // struct LDKCResult_ChannelFeaturesDecodeErrorZ ChannelFeatures_read(struct LDKu8slice ser); + export function ChannelFeatures_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHint_new(a_arg); + const nativeResponseValue = wasm.TS_ChannelFeatures_read(encodeUint8Array(ser)); return nativeResponseValue; } - // uint64_t RouteHint_clone_ptr(LDKRouteHint *NONNULL_PTR arg); - export function RouteHint_clone_ptr(arg: number): number { + // struct LDKCVec_u8Z NodeFeatures_write(const struct LDKNodeFeatures *NONNULL_PTR obj); + export function NodeFeatures_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHint_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_NodeFeatures_write(obj); + return decodeUint8Array(nativeResponseValue); } - // struct LDKRouteHint RouteHint_clone(const struct LDKRouteHint *NONNULL_PTR orig); - export function RouteHint_clone(orig: number): number { + // struct LDKCResult_NodeFeaturesDecodeErrorZ NodeFeatures_read(struct LDKu8slice ser); + export function NodeFeatures_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHint_clone(orig); + const nativeResponseValue = wasm.TS_NodeFeatures_read(encodeUint8Array(ser)); return nativeResponseValue; } - // uint64_t RouteHint_hash(const struct LDKRouteHint *NONNULL_PTR o); - export function RouteHint_hash(o: number): number { + // struct LDKCVec_u8Z InvoiceFeatures_write(const struct LDKInvoiceFeatures *NONNULL_PTR obj); + export function InvoiceFeatures_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHint_hash(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_InvoiceFeatures_write(obj); + return decodeUint8Array(nativeResponseValue); } - // bool RouteHint_eq(const struct LDKRouteHint *NONNULL_PTR a, const struct LDKRouteHint *NONNULL_PTR b); - export function RouteHint_eq(a: number, b: number): boolean { + // struct LDKCResult_InvoiceFeaturesDecodeErrorZ InvoiceFeatures_read(struct LDKu8slice ser); + export function InvoiceFeatures_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHint_eq(a, b); + const nativeResponseValue = wasm.TS_InvoiceFeatures_read(encodeUint8Array(ser)); return nativeResponseValue; } - // struct LDKCVec_u8Z RouteHint_write(const struct LDKRouteHint *NONNULL_PTR obj); - export function RouteHint_write(obj: number): Uint8Array { + // struct LDKCVec_u8Z ChannelTypeFeatures_write(const struct LDKChannelTypeFeatures *NONNULL_PTR obj); + export function ChannelTypeFeatures_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHint_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_ChannelTypeFeatures_write(obj); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCResult_RouteHintDecodeErrorZ RouteHint_read(struct LDKu8slice ser); - export function RouteHint_read(ser: Uint8Array): number { + // struct LDKCResult_ChannelTypeFeaturesDecodeErrorZ ChannelTypeFeatures_read(struct LDKu8slice ser); + export function ChannelTypeFeatures_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHint_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_ChannelTypeFeatures_read(encodeUint8Array(ser)); return nativeResponseValue; } - // void RouteHintHop_free(struct LDKRouteHintHop this_obj); - export function RouteHintHop_free(this_obj: number): void { + // void ShutdownScript_free(struct LDKShutdownScript this_obj); + export function ShutdownScript_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHintHop_free(this_obj); + const nativeResponseValue = wasm.TS_ShutdownScript_free(this_obj); // debug statements here } - // struct LDKPublicKey RouteHintHop_get_src_node_id(const struct LDKRouteHintHop *NONNULL_PTR this_ptr); - export function RouteHintHop_get_src_node_id(this_ptr: number): Uint8Array { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.RouteHintHop_get_src_node_id(this_ptr); - return decodeArray(nativeResponseValue); - } - // void RouteHintHop_set_src_node_id(struct LDKRouteHintHop *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function RouteHintHop_set_src_node_id(this_ptr: number, val: Uint8Array): void { + // uint64_t ShutdownScript_clone_ptr(LDKShutdownScript *NONNULL_PTR arg); + export function ShutdownScript_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHintHop_set_src_node_id(this_ptr, encodeArray(val)); - // debug statements here + const nativeResponseValue = wasm.TS_ShutdownScript_clone_ptr(arg); + return nativeResponseValue; } - // uint64_t RouteHintHop_get_short_channel_id(const struct LDKRouteHintHop *NONNULL_PTR this_ptr); - export function RouteHintHop_get_short_channel_id(this_ptr: number): number { + // struct LDKShutdownScript ShutdownScript_clone(const struct LDKShutdownScript *NONNULL_PTR orig); + export function ShutdownScript_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHintHop_get_short_channel_id(this_ptr); + const nativeResponseValue = wasm.TS_ShutdownScript_clone(orig); return nativeResponseValue; } - // void RouteHintHop_set_short_channel_id(struct LDKRouteHintHop *NONNULL_PTR this_ptr, uint64_t val); - export function RouteHintHop_set_short_channel_id(this_ptr: number, val: number): void { + // void InvalidShutdownScript_free(struct LDKInvalidShutdownScript this_obj); + export function InvalidShutdownScript_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHintHop_set_short_channel_id(this_ptr, val); + const nativeResponseValue = wasm.TS_InvalidShutdownScript_free(this_obj); // debug statements here } - // struct LDKRoutingFees RouteHintHop_get_fees(const struct LDKRouteHintHop *NONNULL_PTR this_ptr); - export function RouteHintHop_get_fees(this_ptr: number): number { + // struct LDKu8slice InvalidShutdownScript_get_script(const struct LDKInvalidShutdownScript *NONNULL_PTR this_ptr); + export function InvalidShutdownScript_get_script(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHintHop_get_fees(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_InvalidShutdownScript_get_script(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // void RouteHintHop_set_fees(struct LDKRouteHintHop *NONNULL_PTR this_ptr, struct LDKRoutingFees val); - export function RouteHintHop_set_fees(this_ptr: number, val: number): void { + // void InvalidShutdownScript_set_script(struct LDKInvalidShutdownScript *NONNULL_PTR this_ptr, struct LDKCVec_u8Z val); + export function InvalidShutdownScript_set_script(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHintHop_set_fees(this_ptr, val); + const nativeResponseValue = wasm.TS_InvalidShutdownScript_set_script(this_ptr, encodeUint8Array(val)); // debug statements here } - // uint16_t RouteHintHop_get_cltv_expiry_delta(const struct LDKRouteHintHop *NONNULL_PTR this_ptr); - export function RouteHintHop_get_cltv_expiry_delta(this_ptr: number): number { + // MUST_USE_RES struct LDKInvalidShutdownScript InvalidShutdownScript_new(struct LDKCVec_u8Z script_arg); + export function InvalidShutdownScript_new(script_arg: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHintHop_get_cltv_expiry_delta(this_ptr); + const nativeResponseValue = wasm.TS_InvalidShutdownScript_new(encodeUint8Array(script_arg)); return nativeResponseValue; } - // void RouteHintHop_set_cltv_expiry_delta(struct LDKRouteHintHop *NONNULL_PTR this_ptr, uint16_t val); - export function RouteHintHop_set_cltv_expiry_delta(this_ptr: number, val: number): void { + // uint64_t InvalidShutdownScript_clone_ptr(LDKInvalidShutdownScript *NONNULL_PTR arg); + export function InvalidShutdownScript_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHintHop_set_cltv_expiry_delta(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_InvalidShutdownScript_clone_ptr(arg); + return nativeResponseValue; } - // struct LDKCOption_u64Z RouteHintHop_get_htlc_minimum_msat(const struct LDKRouteHintHop *NONNULL_PTR this_ptr); - export function RouteHintHop_get_htlc_minimum_msat(this_ptr: number): number { + // struct LDKInvalidShutdownScript InvalidShutdownScript_clone(const struct LDKInvalidShutdownScript *NONNULL_PTR orig); + export function InvalidShutdownScript_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHintHop_get_htlc_minimum_msat(this_ptr); + const nativeResponseValue = wasm.TS_InvalidShutdownScript_clone(orig); return nativeResponseValue; } - // void RouteHintHop_set_htlc_minimum_msat(struct LDKRouteHintHop *NONNULL_PTR this_ptr, struct LDKCOption_u64Z val); - export function RouteHintHop_set_htlc_minimum_msat(this_ptr: number, val: number): void { + // struct LDKCVec_u8Z ShutdownScript_write(const struct LDKShutdownScript *NONNULL_PTR obj); + export function ShutdownScript_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHintHop_set_htlc_minimum_msat(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_ShutdownScript_write(obj); + return decodeUint8Array(nativeResponseValue); } - // struct LDKCOption_u64Z RouteHintHop_get_htlc_maximum_msat(const struct LDKRouteHintHop *NONNULL_PTR this_ptr); - export function RouteHintHop_get_htlc_maximum_msat(this_ptr: number): number { + // struct LDKCResult_ShutdownScriptDecodeErrorZ ShutdownScript_read(struct LDKu8slice ser); + export function ShutdownScript_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHintHop_get_htlc_maximum_msat(this_ptr); + const nativeResponseValue = wasm.TS_ShutdownScript_read(encodeUint8Array(ser)); return nativeResponseValue; } - // void RouteHintHop_set_htlc_maximum_msat(struct LDKRouteHintHop *NONNULL_PTR this_ptr, struct LDKCOption_u64Z val); - export function RouteHintHop_set_htlc_maximum_msat(this_ptr: number, val: number): void { + // MUST_USE_RES struct LDKShutdownScript ShutdownScript_new_p2wpkh(const uint8_t (*pubkey_hash)[20]); + export function ShutdownScript_new_p2wpkh(pubkey_hash: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHintHop_set_htlc_maximum_msat(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_ShutdownScript_new_p2wpkh(encodeUint8Array(pubkey_hash)); + return nativeResponseValue; } - // MUST_USE_RES struct LDKRouteHintHop RouteHintHop_new(struct LDKPublicKey src_node_id_arg, uint64_t short_channel_id_arg, struct LDKRoutingFees fees_arg, uint16_t cltv_expiry_delta_arg, struct LDKCOption_u64Z htlc_minimum_msat_arg, struct LDKCOption_u64Z htlc_maximum_msat_arg); - export function RouteHintHop_new(src_node_id_arg: Uint8Array, short_channel_id_arg: number, fees_arg: number, cltv_expiry_delta_arg: number, htlc_minimum_msat_arg: number, htlc_maximum_msat_arg: number): number { + // MUST_USE_RES struct LDKShutdownScript ShutdownScript_new_p2wsh(const uint8_t (*script_hash)[32]); + export function ShutdownScript_new_p2wsh(script_hash: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHintHop_new(encodeArray(src_node_id_arg), short_channel_id_arg, fees_arg, cltv_expiry_delta_arg, htlc_minimum_msat_arg, htlc_maximum_msat_arg); + const nativeResponseValue = wasm.TS_ShutdownScript_new_p2wsh(encodeUint8Array(script_hash)); return nativeResponseValue; } - // uint64_t RouteHintHop_clone_ptr(LDKRouteHintHop *NONNULL_PTR arg); - export function RouteHintHop_clone_ptr(arg: number): number { + // MUST_USE_RES struct LDKCResult_ShutdownScriptInvalidShutdownScriptZ ShutdownScript_new_witness_program(uint8_t version, struct LDKu8slice program); + export function ShutdownScript_new_witness_program(version: number, program: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHintHop_clone_ptr(arg); + const nativeResponseValue = wasm.TS_ShutdownScript_new_witness_program(version, encodeUint8Array(program)); return nativeResponseValue; } - // struct LDKRouteHintHop RouteHintHop_clone(const struct LDKRouteHintHop *NONNULL_PTR orig); - export function RouteHintHop_clone(orig: number): number { + // MUST_USE_RES struct LDKCVec_u8Z ShutdownScript_into_inner(struct LDKShutdownScript this_arg); + export function ShutdownScript_into_inner(this_arg: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHintHop_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ShutdownScript_into_inner(this_arg); + return decodeUint8Array(nativeResponseValue); } - // uint64_t RouteHintHop_hash(const struct LDKRouteHintHop *NONNULL_PTR o); - export function RouteHintHop_hash(o: number): number { + // MUST_USE_RES struct LDKPublicKey ShutdownScript_as_legacy_pubkey(const struct LDKShutdownScript *NONNULL_PTR this_arg); + export function ShutdownScript_as_legacy_pubkey(this_arg: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHintHop_hash(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ShutdownScript_as_legacy_pubkey(this_arg); + return decodeUint8Array(nativeResponseValue); } - // bool RouteHintHop_eq(const struct LDKRouteHintHop *NONNULL_PTR a, const struct LDKRouteHintHop *NONNULL_PTR b); - export function RouteHintHop_eq(a: number, b: number): boolean { + // MUST_USE_RES bool ShutdownScript_is_compatible(const struct LDKShutdownScript *NONNULL_PTR this_arg, const struct LDKInitFeatures *NONNULL_PTR features); + export function ShutdownScript_is_compatible(this_arg: number, features: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHintHop_eq(a, b); + const nativeResponseValue = wasm.TS_ShutdownScript_is_compatible(this_arg, features); return nativeResponseValue; } - // struct LDKCVec_u8Z RouteHintHop_write(const struct LDKRouteHintHop *NONNULL_PTR obj); - export function RouteHintHop_write(obj: number): Uint8Array { + // void CustomMessageReader_free(struct LDKCustomMessageReader this_ptr); + export function CustomMessageReader_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHintHop_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_CustomMessageReader_free(this_ptr); + // debug statements here } - // struct LDKCResult_RouteHintHopDecodeErrorZ RouteHintHop_read(struct LDKu8slice ser); - export function RouteHintHop_read(ser: Uint8Array): number { + // uint64_t Type_clone_ptr(LDKType *NONNULL_PTR arg); + export function Type_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RouteHintHop_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_Type_clone_ptr(arg); return nativeResponseValue; } - // struct LDKCResult_RouteLightningErrorZ find_route(struct LDKPublicKey our_node_pubkey, const struct LDKRouteParameters *NONNULL_PTR params, const struct LDKNetworkGraph *NONNULL_PTR network, struct LDKCVec_ChannelDetailsZ *first_hops, struct LDKLogger logger, const struct LDKScore *NONNULL_PTR scorer); - export function find_route(our_node_pubkey: Uint8Array, params: number, network: number, first_hops: number[], logger: number, scorer: number): number { + // struct LDKType Type_clone(const struct LDKType *NONNULL_PTR orig); + export function Type_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.find_route(encodeArray(our_node_pubkey), params, network, first_hops, logger, scorer); + const nativeResponseValue = wasm.TS_Type_clone(orig); return nativeResponseValue; } - // void Score_free(struct LDKScore this_ptr); - export function Score_free(this_ptr: number): void { + // void Type_free(struct LDKType this_ptr); + export function Type_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Score_free(this_ptr); + const nativeResponseValue = wasm.TS_Type_free(this_ptr); // debug statements here } - // void LockableScore_free(struct LDKLockableScore this_ptr); - export function LockableScore_free(this_ptr: number): void { + // void NodeId_free(struct LDKNodeId this_obj); + export function NodeId_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.LockableScore_free(this_ptr); + const nativeResponseValue = wasm.TS_NodeId_free(this_obj); // debug statements here } - // void MultiThreadedLockableScore_free(struct LDKMultiThreadedLockableScore this_obj); - export function MultiThreadedLockableScore_free(this_obj: number): void { + // uint64_t NodeId_clone_ptr(LDKNodeId *NONNULL_PTR arg); + export function NodeId_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MultiThreadedLockableScore_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_NodeId_clone_ptr(arg); + return nativeResponseValue; } - // MUST_USE_RES struct LDKMultiThreadedLockableScore MultiThreadedLockableScore_new(struct LDKScore score); - export function MultiThreadedLockableScore_new(score: number): number { + // struct LDKNodeId NodeId_clone(const struct LDKNodeId *NONNULL_PTR orig); + export function NodeId_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MultiThreadedLockableScore_new(score); + const nativeResponseValue = wasm.TS_NodeId_clone(orig); return nativeResponseValue; } - // void Scorer_free(struct LDKScorer this_obj); - export function Scorer_free(this_obj: number): void { + // MUST_USE_RES struct LDKNodeId NodeId_from_pubkey(struct LDKPublicKey pubkey); + export function NodeId_from_pubkey(pubkey: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Scorer_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_NodeId_from_pubkey(encodeUint8Array(pubkey)); + return nativeResponseValue; } - // void ScoringParameters_free(struct LDKScoringParameters this_obj); - export function ScoringParameters_free(this_obj: number): void { + // MUST_USE_RES struct LDKu8slice NodeId_as_slice(const struct LDKNodeId *NONNULL_PTR this_arg); + export function NodeId_as_slice(this_arg: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ScoringParameters_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_NodeId_as_slice(this_arg); + return decodeUint8Array(nativeResponseValue); } - // uint64_t ScoringParameters_get_base_penalty_msat(const struct LDKScoringParameters *NONNULL_PTR this_ptr); - export function ScoringParameters_get_base_penalty_msat(this_ptr: number): number { + // uint64_t NodeId_hash(const struct LDKNodeId *NONNULL_PTR o); + export function NodeId_hash(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ScoringParameters_get_base_penalty_msat(this_ptr); + const nativeResponseValue = wasm.TS_NodeId_hash(o); return nativeResponseValue; } - // void ScoringParameters_set_base_penalty_msat(struct LDKScoringParameters *NONNULL_PTR this_ptr, uint64_t val); - export function ScoringParameters_set_base_penalty_msat(this_ptr: number, val: number): void { + // struct LDKCVec_u8Z NodeId_write(const struct LDKNodeId *NONNULL_PTR obj); + export function NodeId_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ScoringParameters_set_base_penalty_msat(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_NodeId_write(obj); + return decodeUint8Array(nativeResponseValue); } - // uint64_t ScoringParameters_get_failure_penalty_msat(const struct LDKScoringParameters *NONNULL_PTR this_ptr); - export function ScoringParameters_get_failure_penalty_msat(this_ptr: number): number { + // struct LDKCResult_NodeIdDecodeErrorZ NodeId_read(struct LDKu8slice ser); + export function NodeId_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ScoringParameters_get_failure_penalty_msat(this_ptr); + const nativeResponseValue = wasm.TS_NodeId_read(encodeUint8Array(ser)); return nativeResponseValue; } - // void ScoringParameters_set_failure_penalty_msat(struct LDKScoringParameters *NONNULL_PTR this_ptr, uint64_t val); - export function ScoringParameters_set_failure_penalty_msat(this_ptr: number, val: number): void { + // void NetworkGraph_free(struct LDKNetworkGraph this_obj); + export function NetworkGraph_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ScoringParameters_set_failure_penalty_msat(this_ptr, val); + const nativeResponseValue = wasm.TS_NetworkGraph_free(this_obj); // debug statements here } - // uint16_t ScoringParameters_get_overuse_penalty_start_1024th(const struct LDKScoringParameters *NONNULL_PTR this_ptr); - export function ScoringParameters_get_overuse_penalty_start_1024th(this_ptr: number): number { + // uint64_t NetworkGraph_clone_ptr(LDKNetworkGraph *NONNULL_PTR arg); + export function NetworkGraph_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ScoringParameters_get_overuse_penalty_start_1024th(this_ptr); + const nativeResponseValue = wasm.TS_NetworkGraph_clone_ptr(arg); return nativeResponseValue; } - // void ScoringParameters_set_overuse_penalty_start_1024th(struct LDKScoringParameters *NONNULL_PTR this_ptr, uint16_t val); - export function ScoringParameters_set_overuse_penalty_start_1024th(this_ptr: number, val: number): void { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.ScoringParameters_set_overuse_penalty_start_1024th(this_ptr, val); - // debug statements here - } - // uint64_t ScoringParameters_get_overuse_penalty_msat_per_1024th(const struct LDKScoringParameters *NONNULL_PTR this_ptr); - export function ScoringParameters_get_overuse_penalty_msat_per_1024th(this_ptr: number): number { + // struct LDKNetworkGraph NetworkGraph_clone(const struct LDKNetworkGraph *NONNULL_PTR orig); + export function NetworkGraph_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ScoringParameters_get_overuse_penalty_msat_per_1024th(this_ptr); + const nativeResponseValue = wasm.TS_NetworkGraph_clone(orig); return nativeResponseValue; } - // void ScoringParameters_set_overuse_penalty_msat_per_1024th(struct LDKScoringParameters *NONNULL_PTR this_ptr, uint64_t val); - export function ScoringParameters_set_overuse_penalty_msat_per_1024th(this_ptr: number, val: number): void { + // void ReadOnlyNetworkGraph_free(struct LDKReadOnlyNetworkGraph this_obj); + export function ReadOnlyNetworkGraph_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ScoringParameters_set_overuse_penalty_msat_per_1024th(this_ptr, val); + const nativeResponseValue = wasm.TS_ReadOnlyNetworkGraph_free(this_obj); // debug statements here } - // uint64_t ScoringParameters_get_failure_penalty_half_life(const struct LDKScoringParameters *NONNULL_PTR this_ptr); - export function ScoringParameters_get_failure_penalty_half_life(this_ptr: number): number { + // void NetworkUpdate_free(struct LDKNetworkUpdate this_ptr); + export function NetworkUpdate_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ScoringParameters_get_failure_penalty_half_life(this_ptr); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_NetworkUpdate_free(this_ptr); + // debug statements here } - // void ScoringParameters_set_failure_penalty_half_life(struct LDKScoringParameters *NONNULL_PTR this_ptr, uint64_t val); - export function ScoringParameters_set_failure_penalty_half_life(this_ptr: number, val: number): void { + // uint64_t NetworkUpdate_clone_ptr(LDKNetworkUpdate *NONNULL_PTR arg); + export function NetworkUpdate_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ScoringParameters_set_failure_penalty_half_life(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_NetworkUpdate_clone_ptr(arg); + return nativeResponseValue; } - // MUST_USE_RES struct LDKScoringParameters ScoringParameters_new(uint64_t base_penalty_msat_arg, uint64_t failure_penalty_msat_arg, uint16_t overuse_penalty_start_1024th_arg, uint64_t overuse_penalty_msat_per_1024th_arg, uint64_t failure_penalty_half_life_arg); - export function ScoringParameters_new(base_penalty_msat_arg: number, failure_penalty_msat_arg: number, overuse_penalty_start_1024th_arg: number, overuse_penalty_msat_per_1024th_arg: number, failure_penalty_half_life_arg: number): number { + // struct LDKNetworkUpdate NetworkUpdate_clone(const struct LDKNetworkUpdate *NONNULL_PTR orig); + export function NetworkUpdate_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ScoringParameters_new(base_penalty_msat_arg, failure_penalty_msat_arg, overuse_penalty_start_1024th_arg, overuse_penalty_msat_per_1024th_arg, failure_penalty_half_life_arg); + const nativeResponseValue = wasm.TS_NetworkUpdate_clone(orig); return nativeResponseValue; } - // struct LDKCVec_u8Z ScoringParameters_write(const struct LDKScoringParameters *NONNULL_PTR obj); - export function ScoringParameters_write(obj: number): Uint8Array { + // struct LDKNetworkUpdate NetworkUpdate_channel_update_message(struct LDKChannelUpdate msg); + export function NetworkUpdate_channel_update_message(msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ScoringParameters_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_NetworkUpdate_channel_update_message(msg); + return nativeResponseValue; } - // struct LDKCResult_ScoringParametersDecodeErrorZ ScoringParameters_read(struct LDKu8slice ser); - export function ScoringParameters_read(ser: Uint8Array): number { + // struct LDKNetworkUpdate NetworkUpdate_channel_closed(uint64_t short_channel_id, bool is_permanent); + export function NetworkUpdate_channel_closed(short_channel_id: number, is_permanent: boolean): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ScoringParameters_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_NetworkUpdate_channel_closed(short_channel_id, is_permanent); return nativeResponseValue; } - // MUST_USE_RES struct LDKScorer Scorer_new(struct LDKScoringParameters params); - export function Scorer_new(params: number): number { + // struct LDKNetworkUpdate NetworkUpdate_node_failure(struct LDKPublicKey node_id, bool is_permanent); + export function NetworkUpdate_node_failure(node_id: Uint8Array, is_permanent: boolean): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Scorer_new(params); + const nativeResponseValue = wasm.TS_NetworkUpdate_node_failure(encodeUint8Array(node_id), is_permanent); return nativeResponseValue; } - // MUST_USE_RES struct LDKScorer Scorer_default(void); - export function Scorer_default(): number { + // struct LDKCVec_u8Z NetworkUpdate_write(const struct LDKNetworkUpdate *NONNULL_PTR obj); + export function NetworkUpdate_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Scorer_default(); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_NetworkUpdate_write(obj); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES struct LDKScoringParameters ScoringParameters_default(void); - export function ScoringParameters_default(): number { + // struct LDKCResult_COption_NetworkUpdateZDecodeErrorZ NetworkUpdate_read(struct LDKu8slice ser); + export function NetworkUpdate_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ScoringParameters_default(); + const nativeResponseValue = wasm.TS_NetworkUpdate_read(encodeUint8Array(ser)); return nativeResponseValue; } - // struct LDKScore Scorer_as_Score(const struct LDKScorer *NONNULL_PTR this_arg); - export function Scorer_as_Score(this_arg: number): number { + // struct LDKEventHandler NetGraphMsgHandler_as_EventHandler(const struct LDKNetGraphMsgHandler *NONNULL_PTR this_arg); + export function NetGraphMsgHandler_as_EventHandler(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Scorer_as_Score(this_arg); + const nativeResponseValue = wasm.TS_NetGraphMsgHandler_as_EventHandler(this_arg); return nativeResponseValue; } - // struct LDKCVec_u8Z Scorer_write(const struct LDKScorer *NONNULL_PTR obj); - export function Scorer_write(obj: number): Uint8Array { + // void NetGraphMsgHandler_free(struct LDKNetGraphMsgHandler this_obj); + export function NetGraphMsgHandler_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Scorer_write(obj); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_NetGraphMsgHandler_free(this_obj); + // debug statements here } - // struct LDKCResult_ScorerDecodeErrorZ Scorer_read(struct LDKu8slice ser); - export function Scorer_read(ser: Uint8Array): number { + // MUST_USE_RES struct LDKNetGraphMsgHandler NetGraphMsgHandler_new(const struct LDKNetworkGraph *NONNULL_PTR network_graph, struct LDKCOption_AccessZ chain_access, struct LDKLogger logger); + export function NetGraphMsgHandler_new(network_graph: number, chain_access: number, logger: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Scorer_read(encodeArray(ser)); + const nativeResponseValue = wasm.TS_NetGraphMsgHandler_new(network_graph, chain_access, logger); return nativeResponseValue; } - // void FilesystemPersister_free(struct LDKFilesystemPersister this_obj); - export function FilesystemPersister_free(this_obj: number): void { + // void NetGraphMsgHandler_add_chain_access(struct LDKNetGraphMsgHandler *NONNULL_PTR this_arg, struct LDKCOption_AccessZ chain_access); + export function NetGraphMsgHandler_add_chain_access(this_arg: number, chain_access: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FilesystemPersister_free(this_obj); + const nativeResponseValue = wasm.TS_NetGraphMsgHandler_add_chain_access(this_arg, chain_access); // debug statements here } - // MUST_USE_RES struct LDKFilesystemPersister FilesystemPersister_new(struct LDKStr path_to_channel_data); - export function FilesystemPersister_new(path_to_channel_data: String): number { + // struct LDKRoutingMessageHandler NetGraphMsgHandler_as_RoutingMessageHandler(const struct LDKNetGraphMsgHandler *NONNULL_PTR this_arg); + export function NetGraphMsgHandler_as_RoutingMessageHandler(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FilesystemPersister_new(path_to_channel_data); + const nativeResponseValue = wasm.TS_NetGraphMsgHandler_as_RoutingMessageHandler(this_arg); return nativeResponseValue; } - // MUST_USE_RES struct LDKStr FilesystemPersister_get_data_dir(const struct LDKFilesystemPersister *NONNULL_PTR this_arg); - export function FilesystemPersister_get_data_dir(this_arg: number): String { + // struct LDKMessageSendEventsProvider NetGraphMsgHandler_as_MessageSendEventsProvider(const struct LDKNetGraphMsgHandler *NONNULL_PTR this_arg); + export function NetGraphMsgHandler_as_MessageSendEventsProvider(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FilesystemPersister_get_data_dir(this_arg); + const nativeResponseValue = wasm.TS_NetGraphMsgHandler_as_MessageSendEventsProvider(this_arg); return nativeResponseValue; } - // MUST_USE_RES struct LDKCResult_NoneErrorZ FilesystemPersister_persist_manager(struct LDKStr data_dir, const struct LDKChannelManager *NONNULL_PTR manager); - export function FilesystemPersister_persist_manager(data_dir: String, manager: number): number { + // void DirectionalChannelInfo_free(struct LDKDirectionalChannelInfo this_obj); + export function DirectionalChannelInfo_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FilesystemPersister_persist_manager(data_dir, manager); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_DirectionalChannelInfo_free(this_obj); + // debug statements here } - // MUST_USE_RES struct LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ FilesystemPersister_read_channelmonitors(const struct LDKFilesystemPersister *NONNULL_PTR this_arg, struct LDKKeysInterface keys_manager); - export function FilesystemPersister_read_channelmonitors(this_arg: number, keys_manager: number): number { + // uint32_t DirectionalChannelInfo_get_last_update(const struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr); + export function DirectionalChannelInfo_get_last_update(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FilesystemPersister_read_channelmonitors(this_arg, keys_manager); + const nativeResponseValue = wasm.TS_DirectionalChannelInfo_get_last_update(this_ptr); return nativeResponseValue; } - // struct LDKPersist FilesystemPersister_as_Persist(const struct LDKFilesystemPersister *NONNULL_PTR this_arg); - export function FilesystemPersister_as_Persist(this_arg: number): number { + // void DirectionalChannelInfo_set_last_update(struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr, uint32_t val); + export function DirectionalChannelInfo_set_last_update(this_ptr: number, val: number): void { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_DirectionalChannelInfo_set_last_update(this_ptr, val); + // debug statements here + } + // bool DirectionalChannelInfo_get_enabled(const struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr); + export function DirectionalChannelInfo_get_enabled(this_ptr: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.FilesystemPersister_as_Persist(this_arg); + const nativeResponseValue = wasm.TS_DirectionalChannelInfo_get_enabled(this_ptr); return nativeResponseValue; } - // void BackgroundProcessor_free(struct LDKBackgroundProcessor this_obj); - export function BackgroundProcessor_free(this_obj: number): void { + // void DirectionalChannelInfo_set_enabled(struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr, bool val); + export function DirectionalChannelInfo_set_enabled(this_ptr: number, val: boolean): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BackgroundProcessor_free(this_obj); + const nativeResponseValue = wasm.TS_DirectionalChannelInfo_set_enabled(this_ptr, val); // debug statements here } - // void ChannelManagerPersister_free(struct LDKChannelManagerPersister this_ptr); - export function ChannelManagerPersister_free(this_ptr: number): void { + // uint16_t DirectionalChannelInfo_get_cltv_expiry_delta(const struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr); + export function DirectionalChannelInfo_get_cltv_expiry_delta(this_ptr: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_DirectionalChannelInfo_get_cltv_expiry_delta(this_ptr); + return nativeResponseValue; + } + // void DirectionalChannelInfo_set_cltv_expiry_delta(struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr, uint16_t val); + export function DirectionalChannelInfo_set_cltv_expiry_delta(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManagerPersister_free(this_ptr); + const nativeResponseValue = wasm.TS_DirectionalChannelInfo_set_cltv_expiry_delta(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKBackgroundProcessor BackgroundProcessor_start(struct LDKChannelManagerPersister persister, struct LDKEventHandler event_handler, const struct LDKChainMonitor *NONNULL_PTR chain_monitor, const struct LDKChannelManager *NONNULL_PTR channel_manager, struct LDKNetGraphMsgHandler net_graph_msg_handler, const struct LDKPeerManager *NONNULL_PTR peer_manager, struct LDKLogger logger); - export function BackgroundProcessor_start(persister: number, event_handler: number, chain_monitor: number, channel_manager: number, net_graph_msg_handler: number, peer_manager: number, logger: number): number { + // uint64_t DirectionalChannelInfo_get_htlc_minimum_msat(const struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr); + export function DirectionalChannelInfo_get_htlc_minimum_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BackgroundProcessor_start(persister, event_handler, chain_monitor, channel_manager, net_graph_msg_handler, peer_manager, logger); + const nativeResponseValue = wasm.TS_DirectionalChannelInfo_get_htlc_minimum_msat(this_ptr); return nativeResponseValue; } - // MUST_USE_RES struct LDKCResult_NoneErrorZ BackgroundProcessor_join(struct LDKBackgroundProcessor this_arg); - export function BackgroundProcessor_join(this_arg: number): number { + // void DirectionalChannelInfo_set_htlc_minimum_msat(struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr, uint64_t val); + export function DirectionalChannelInfo_set_htlc_minimum_msat(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BackgroundProcessor_join(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_DirectionalChannelInfo_set_htlc_minimum_msat(this_ptr, val); + // debug statements here } - // MUST_USE_RES struct LDKCResult_NoneErrorZ BackgroundProcessor_stop(struct LDKBackgroundProcessor this_arg); - export function BackgroundProcessor_stop(this_arg: number): number { + // struct LDKCOption_u64Z DirectionalChannelInfo_get_htlc_maximum_msat(const struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr); + export function DirectionalChannelInfo_get_htlc_maximum_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.BackgroundProcessor_stop(this_arg); + const nativeResponseValue = wasm.TS_DirectionalChannelInfo_get_htlc_maximum_msat(this_ptr); return nativeResponseValue; } - // void check_platform(void); - export function check_platform(): void { + // void DirectionalChannelInfo_set_htlc_maximum_msat(struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr, struct LDKCOption_u64Z val); + export function DirectionalChannelInfo_set_htlc_maximum_msat(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.check_platform(); + const nativeResponseValue = wasm.TS_DirectionalChannelInfo_set_htlc_maximum_msat(this_ptr, val); // debug statements here } - // void Invoice_free(struct LDKInvoice this_obj); - export function Invoice_free(this_obj: number): void { + // struct LDKRoutingFees DirectionalChannelInfo_get_fees(const struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr); + export function DirectionalChannelInfo_get_fees(this_ptr: number): number { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_DirectionalChannelInfo_get_fees(this_ptr); + return nativeResponseValue; + } + // void DirectionalChannelInfo_set_fees(struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr, struct LDKRoutingFees val); + export function DirectionalChannelInfo_set_fees(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Invoice_free(this_obj); + const nativeResponseValue = wasm.TS_DirectionalChannelInfo_set_fees(this_ptr, val); // debug statements here } - // bool Invoice_eq(const struct LDKInvoice *NONNULL_PTR a, const struct LDKInvoice *NONNULL_PTR b); - export function Invoice_eq(a: number, b: number): boolean { + // struct LDKChannelUpdate DirectionalChannelInfo_get_last_update_message(const struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr); + export function DirectionalChannelInfo_get_last_update_message(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Invoice_eq(a, b); + const nativeResponseValue = wasm.TS_DirectionalChannelInfo_get_last_update_message(this_ptr); return nativeResponseValue; } - // uint64_t Invoice_clone_ptr(LDKInvoice *NONNULL_PTR arg); - export function Invoice_clone_ptr(arg: number): number { + // void DirectionalChannelInfo_set_last_update_message(struct LDKDirectionalChannelInfo *NONNULL_PTR this_ptr, struct LDKChannelUpdate val); + export function DirectionalChannelInfo_set_last_update_message(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Invoice_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_DirectionalChannelInfo_set_last_update_message(this_ptr, val); + // debug statements here } - // struct LDKInvoice Invoice_clone(const struct LDKInvoice *NONNULL_PTR orig); - export function Invoice_clone(orig: number): number { + // MUST_USE_RES struct LDKDirectionalChannelInfo DirectionalChannelInfo_new(uint32_t last_update_arg, bool enabled_arg, uint16_t cltv_expiry_delta_arg, uint64_t htlc_minimum_msat_arg, struct LDKCOption_u64Z htlc_maximum_msat_arg, struct LDKRoutingFees fees_arg, struct LDKChannelUpdate last_update_message_arg); + export function DirectionalChannelInfo_new(last_update_arg: number, enabled_arg: boolean, cltv_expiry_delta_arg: number, htlc_minimum_msat_arg: number, htlc_maximum_msat_arg: number, fees_arg: number, last_update_message_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Invoice_clone(orig); + const nativeResponseValue = wasm.TS_DirectionalChannelInfo_new(last_update_arg, enabled_arg, cltv_expiry_delta_arg, htlc_minimum_msat_arg, htlc_maximum_msat_arg, fees_arg, last_update_message_arg); return nativeResponseValue; } - // void SignedRawInvoice_free(struct LDKSignedRawInvoice this_obj); - export function SignedRawInvoice_free(this_obj: number): void { + // uint64_t DirectionalChannelInfo_clone_ptr(LDKDirectionalChannelInfo *NONNULL_PTR arg); + export function DirectionalChannelInfo_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SignedRawInvoice_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_DirectionalChannelInfo_clone_ptr(arg); + return nativeResponseValue; } - // bool SignedRawInvoice_eq(const struct LDKSignedRawInvoice *NONNULL_PTR a, const struct LDKSignedRawInvoice *NONNULL_PTR b); - export function SignedRawInvoice_eq(a: number, b: number): boolean { + // struct LDKDirectionalChannelInfo DirectionalChannelInfo_clone(const struct LDKDirectionalChannelInfo *NONNULL_PTR orig); + export function DirectionalChannelInfo_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SignedRawInvoice_eq(a, b); + const nativeResponseValue = wasm.TS_DirectionalChannelInfo_clone(orig); return nativeResponseValue; } - // uint64_t SignedRawInvoice_clone_ptr(LDKSignedRawInvoice *NONNULL_PTR arg); - export function SignedRawInvoice_clone_ptr(arg: number): number { + // struct LDKCVec_u8Z DirectionalChannelInfo_write(const struct LDKDirectionalChannelInfo *NONNULL_PTR obj); + export function DirectionalChannelInfo_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SignedRawInvoice_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_DirectionalChannelInfo_write(obj); + return decodeUint8Array(nativeResponseValue); } - // struct LDKSignedRawInvoice SignedRawInvoice_clone(const struct LDKSignedRawInvoice *NONNULL_PTR orig); - export function SignedRawInvoice_clone(orig: number): number { + // struct LDKCResult_DirectionalChannelInfoDecodeErrorZ DirectionalChannelInfo_read(struct LDKu8slice ser); + export function DirectionalChannelInfo_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SignedRawInvoice_clone(orig); + const nativeResponseValue = wasm.TS_DirectionalChannelInfo_read(encodeUint8Array(ser)); return nativeResponseValue; } - // void RawInvoice_free(struct LDKRawInvoice this_obj); - export function RawInvoice_free(this_obj: number): void { + // void ChannelInfo_free(struct LDKChannelInfo this_obj); + export function ChannelInfo_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RawInvoice_free(this_obj); + const nativeResponseValue = wasm.TS_ChannelInfo_free(this_obj); // debug statements here } - // struct LDKRawDataPart RawInvoice_get_data(const struct LDKRawInvoice *NONNULL_PTR this_ptr); - export function RawInvoice_get_data(this_ptr: number): number { + // struct LDKChannelFeatures ChannelInfo_get_features(const struct LDKChannelInfo *NONNULL_PTR this_ptr); + export function ChannelInfo_get_features(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RawInvoice_get_data(this_ptr); + const nativeResponseValue = wasm.TS_ChannelInfo_get_features(this_ptr); return nativeResponseValue; } - // void RawInvoice_set_data(struct LDKRawInvoice *NONNULL_PTR this_ptr, struct LDKRawDataPart val); - export function RawInvoice_set_data(this_ptr: number, val: number): void { + // void ChannelInfo_set_features(struct LDKChannelInfo *NONNULL_PTR this_ptr, struct LDKChannelFeatures val); + export function ChannelInfo_set_features(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RawInvoice_set_data(this_ptr, val); + const nativeResponseValue = wasm.TS_ChannelInfo_set_features(this_ptr, val); // debug statements here } - // bool RawInvoice_eq(const struct LDKRawInvoice *NONNULL_PTR a, const struct LDKRawInvoice *NONNULL_PTR b); - export function RawInvoice_eq(a: number, b: number): boolean { + // struct LDKNodeId ChannelInfo_get_node_one(const struct LDKChannelInfo *NONNULL_PTR this_ptr); + export function ChannelInfo_get_node_one(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RawInvoice_eq(a, b); + const nativeResponseValue = wasm.TS_ChannelInfo_get_node_one(this_ptr); return nativeResponseValue; } - // uint64_t RawInvoice_clone_ptr(LDKRawInvoice *NONNULL_PTR arg); - export function RawInvoice_clone_ptr(arg: number): number { + // void ChannelInfo_set_node_one(struct LDKChannelInfo *NONNULL_PTR this_ptr, struct LDKNodeId val); + export function ChannelInfo_set_node_one(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RawInvoice_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelInfo_set_node_one(this_ptr, val); + // debug statements here } - // struct LDKRawInvoice RawInvoice_clone(const struct LDKRawInvoice *NONNULL_PTR orig); - export function RawInvoice_clone(orig: number): number { + // struct LDKDirectionalChannelInfo ChannelInfo_get_one_to_two(const struct LDKChannelInfo *NONNULL_PTR this_ptr); + export function ChannelInfo_get_one_to_two(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RawInvoice_clone(orig); + const nativeResponseValue = wasm.TS_ChannelInfo_get_one_to_two(this_ptr); return nativeResponseValue; } - // void RawDataPart_free(struct LDKRawDataPart this_obj); - export function RawDataPart_free(this_obj: number): void { + // void ChannelInfo_set_one_to_two(struct LDKChannelInfo *NONNULL_PTR this_ptr, struct LDKDirectionalChannelInfo val); + export function ChannelInfo_set_one_to_two(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RawDataPart_free(this_obj); + const nativeResponseValue = wasm.TS_ChannelInfo_set_one_to_two(this_ptr, val); // debug statements here } - // struct LDKPositiveTimestamp RawDataPart_get_timestamp(const struct LDKRawDataPart *NONNULL_PTR this_ptr); - export function RawDataPart_get_timestamp(this_ptr: number): number { + // struct LDKNodeId ChannelInfo_get_node_two(const struct LDKChannelInfo *NONNULL_PTR this_ptr); + export function ChannelInfo_get_node_two(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RawDataPart_get_timestamp(this_ptr); + const nativeResponseValue = wasm.TS_ChannelInfo_get_node_two(this_ptr); return nativeResponseValue; } - // void RawDataPart_set_timestamp(struct LDKRawDataPart *NONNULL_PTR this_ptr, struct LDKPositiveTimestamp val); - export function RawDataPart_set_timestamp(this_ptr: number, val: number): void { + // void ChannelInfo_set_node_two(struct LDKChannelInfo *NONNULL_PTR this_ptr, struct LDKNodeId val); + export function ChannelInfo_set_node_two(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RawDataPart_set_timestamp(this_ptr, val); + const nativeResponseValue = wasm.TS_ChannelInfo_set_node_two(this_ptr, val); // debug statements here } - // bool RawDataPart_eq(const struct LDKRawDataPart *NONNULL_PTR a, const struct LDKRawDataPart *NONNULL_PTR b); - export function RawDataPart_eq(a: number, b: number): boolean { + // struct LDKDirectionalChannelInfo ChannelInfo_get_two_to_one(const struct LDKChannelInfo *NONNULL_PTR this_ptr); + export function ChannelInfo_get_two_to_one(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RawDataPart_eq(a, b); + const nativeResponseValue = wasm.TS_ChannelInfo_get_two_to_one(this_ptr); return nativeResponseValue; } - // uint64_t RawDataPart_clone_ptr(LDKRawDataPart *NONNULL_PTR arg); - export function RawDataPart_clone_ptr(arg: number): number { + // void ChannelInfo_set_two_to_one(struct LDKChannelInfo *NONNULL_PTR this_ptr, struct LDKDirectionalChannelInfo val); + export function ChannelInfo_set_two_to_one(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RawDataPart_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelInfo_set_two_to_one(this_ptr, val); + // debug statements here } - // struct LDKRawDataPart RawDataPart_clone(const struct LDKRawDataPart *NONNULL_PTR orig); - export function RawDataPart_clone(orig: number): number { + // struct LDKCOption_u64Z ChannelInfo_get_capacity_sats(const struct LDKChannelInfo *NONNULL_PTR this_ptr); + export function ChannelInfo_get_capacity_sats(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RawDataPart_clone(orig); + const nativeResponseValue = wasm.TS_ChannelInfo_get_capacity_sats(this_ptr); return nativeResponseValue; } - // void PositiveTimestamp_free(struct LDKPositiveTimestamp this_obj); - export function PositiveTimestamp_free(this_obj: number): void { + // void ChannelInfo_set_capacity_sats(struct LDKChannelInfo *NONNULL_PTR this_ptr, struct LDKCOption_u64Z val); + export function ChannelInfo_set_capacity_sats(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PositiveTimestamp_free(this_obj); + const nativeResponseValue = wasm.TS_ChannelInfo_set_capacity_sats(this_ptr, val); // debug statements here } - // bool PositiveTimestamp_eq(const struct LDKPositiveTimestamp *NONNULL_PTR a, const struct LDKPositiveTimestamp *NONNULL_PTR b); - export function PositiveTimestamp_eq(a: number, b: number): boolean { + // struct LDKChannelAnnouncement ChannelInfo_get_announcement_message(const struct LDKChannelInfo *NONNULL_PTR this_ptr); + export function ChannelInfo_get_announcement_message(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PositiveTimestamp_eq(a, b); + const nativeResponseValue = wasm.TS_ChannelInfo_get_announcement_message(this_ptr); return nativeResponseValue; } - // uint64_t PositiveTimestamp_clone_ptr(LDKPositiveTimestamp *NONNULL_PTR arg); - export function PositiveTimestamp_clone_ptr(arg: number): number { + // void ChannelInfo_set_announcement_message(struct LDKChannelInfo *NONNULL_PTR this_ptr, struct LDKChannelAnnouncement val); + export function ChannelInfo_set_announcement_message(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PositiveTimestamp_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelInfo_set_announcement_message(this_ptr, val); + // debug statements here } - // struct LDKPositiveTimestamp PositiveTimestamp_clone(const struct LDKPositiveTimestamp *NONNULL_PTR orig); - export function PositiveTimestamp_clone(orig: number): number { + // uint64_t ChannelInfo_clone_ptr(LDKChannelInfo *NONNULL_PTR arg); + export function ChannelInfo_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PositiveTimestamp_clone(orig); + const nativeResponseValue = wasm.TS_ChannelInfo_clone_ptr(arg); return nativeResponseValue; } - // enum LDKSiPrefix SiPrefix_clone(const enum LDKSiPrefix *NONNULL_PTR orig); - export function SiPrefix_clone(orig: number): SiPrefix { + // struct LDKChannelInfo ChannelInfo_clone(const struct LDKChannelInfo *NONNULL_PTR orig); + export function ChannelInfo_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SiPrefix_clone(orig); + const nativeResponseValue = wasm.TS_ChannelInfo_clone(orig); return nativeResponseValue; } - // enum LDKSiPrefix SiPrefix_milli(void); - export function SiPrefix_milli(): SiPrefix { + // struct LDKCVec_u8Z ChannelInfo_write(const struct LDKChannelInfo *NONNULL_PTR obj); + export function ChannelInfo_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SiPrefix_milli(); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ChannelInfo_write(obj); + return decodeUint8Array(nativeResponseValue); } - // enum LDKSiPrefix SiPrefix_micro(void); - export function SiPrefix_micro(): SiPrefix { + // struct LDKCResult_ChannelInfoDecodeErrorZ ChannelInfo_read(struct LDKu8slice ser); + export function ChannelInfo_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SiPrefix_micro(); + const nativeResponseValue = wasm.TS_ChannelInfo_read(encodeUint8Array(ser)); return nativeResponseValue; } - // enum LDKSiPrefix SiPrefix_nano(void); - export function SiPrefix_nano(): SiPrefix { + // void RoutingFees_free(struct LDKRoutingFees this_obj); + export function RoutingFees_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SiPrefix_nano(); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_RoutingFees_free(this_obj); + // debug statements here } - // enum LDKSiPrefix SiPrefix_pico(void); - export function SiPrefix_pico(): SiPrefix { + // uint32_t RoutingFees_get_base_msat(const struct LDKRoutingFees *NONNULL_PTR this_ptr); + export function RoutingFees_get_base_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SiPrefix_pico(); + const nativeResponseValue = wasm.TS_RoutingFees_get_base_msat(this_ptr); return nativeResponseValue; } - // bool SiPrefix_eq(const enum LDKSiPrefix *NONNULL_PTR a, const enum LDKSiPrefix *NONNULL_PTR b); - export function SiPrefix_eq(a: number, b: number): boolean { + // void RoutingFees_set_base_msat(struct LDKRoutingFees *NONNULL_PTR this_ptr, uint32_t val); + export function RoutingFees_set_base_msat(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SiPrefix_eq(a, b); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_RoutingFees_set_base_msat(this_ptr, val); + // debug statements here } - // MUST_USE_RES uint64_t SiPrefix_multiplier(const enum LDKSiPrefix *NONNULL_PTR this_arg); - export function SiPrefix_multiplier(this_arg: number): number { + // uint32_t RoutingFees_get_proportional_millionths(const struct LDKRoutingFees *NONNULL_PTR this_ptr); + export function RoutingFees_get_proportional_millionths(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SiPrefix_multiplier(this_arg); + const nativeResponseValue = wasm.TS_RoutingFees_get_proportional_millionths(this_ptr); return nativeResponseValue; } - // enum LDKCurrency Currency_clone(const enum LDKCurrency *NONNULL_PTR orig); - export function Currency_clone(orig: number): Currency { + // void RoutingFees_set_proportional_millionths(struct LDKRoutingFees *NONNULL_PTR this_ptr, uint32_t val); + export function RoutingFees_set_proportional_millionths(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Currency_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_RoutingFees_set_proportional_millionths(this_ptr, val); + // debug statements here } - // enum LDKCurrency Currency_bitcoin(void); - export function Currency_bitcoin(): Currency { + // MUST_USE_RES struct LDKRoutingFees RoutingFees_new(uint32_t base_msat_arg, uint32_t proportional_millionths_arg); + export function RoutingFees_new(base_msat_arg: number, proportional_millionths_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Currency_bitcoin(); + const nativeResponseValue = wasm.TS_RoutingFees_new(base_msat_arg, proportional_millionths_arg); return nativeResponseValue; } - // enum LDKCurrency Currency_bitcoin_testnet(void); - export function Currency_bitcoin_testnet(): Currency { + // bool RoutingFees_eq(const struct LDKRoutingFees *NONNULL_PTR a, const struct LDKRoutingFees *NONNULL_PTR b); + export function RoutingFees_eq(a: number, b: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Currency_bitcoin_testnet(); + const nativeResponseValue = wasm.TS_RoutingFees_eq(a, b); return nativeResponseValue; } - // enum LDKCurrency Currency_regtest(void); - export function Currency_regtest(): Currency { + // uint64_t RoutingFees_clone_ptr(LDKRoutingFees *NONNULL_PTR arg); + export function RoutingFees_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Currency_regtest(); + const nativeResponseValue = wasm.TS_RoutingFees_clone_ptr(arg); return nativeResponseValue; } - // enum LDKCurrency Currency_simnet(void); - export function Currency_simnet(): Currency { + // struct LDKRoutingFees RoutingFees_clone(const struct LDKRoutingFees *NONNULL_PTR orig); + export function RoutingFees_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Currency_simnet(); + const nativeResponseValue = wasm.TS_RoutingFees_clone(orig); return nativeResponseValue; } - // enum LDKCurrency Currency_signet(void); - export function Currency_signet(): Currency { + // uint64_t RoutingFees_hash(const struct LDKRoutingFees *NONNULL_PTR o); + export function RoutingFees_hash(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Currency_signet(); + const nativeResponseValue = wasm.TS_RoutingFees_hash(o); return nativeResponseValue; } - // uint64_t Currency_hash(const enum LDKCurrency *NONNULL_PTR o); - export function Currency_hash(o: number): number { + // struct LDKCVec_u8Z RoutingFees_write(const struct LDKRoutingFees *NONNULL_PTR obj); + export function RoutingFees_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Currency_hash(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_RoutingFees_write(obj); + return decodeUint8Array(nativeResponseValue); } - // bool Currency_eq(const enum LDKCurrency *NONNULL_PTR a, const enum LDKCurrency *NONNULL_PTR b); - export function Currency_eq(a: number, b: number): boolean { + // struct LDKCResult_RoutingFeesDecodeErrorZ RoutingFees_read(struct LDKu8slice ser); + export function RoutingFees_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Currency_eq(a, b); + const nativeResponseValue = wasm.TS_RoutingFees_read(encodeUint8Array(ser)); return nativeResponseValue; } - // void Sha256_free(struct LDKSha256 this_obj); - export function Sha256_free(this_obj: number): void { + // void NodeAnnouncementInfo_free(struct LDKNodeAnnouncementInfo this_obj); + export function NodeAnnouncementInfo_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Sha256_free(this_obj); + const nativeResponseValue = wasm.TS_NodeAnnouncementInfo_free(this_obj); // debug statements here } - // uint64_t Sha256_clone_ptr(LDKSha256 *NONNULL_PTR arg); - export function Sha256_clone_ptr(arg: number): number { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.Sha256_clone_ptr(arg); - return nativeResponseValue; - } - // struct LDKSha256 Sha256_clone(const struct LDKSha256 *NONNULL_PTR orig); - export function Sha256_clone(orig: number): number { + // struct LDKNodeFeatures NodeAnnouncementInfo_get_features(const struct LDKNodeAnnouncementInfo *NONNULL_PTR this_ptr); + export function NodeAnnouncementInfo_get_features(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Sha256_clone(orig); + const nativeResponseValue = wasm.TS_NodeAnnouncementInfo_get_features(this_ptr); return nativeResponseValue; } - // uint64_t Sha256_hash(const struct LDKSha256 *NONNULL_PTR o); - export function Sha256_hash(o: number): number { + // void NodeAnnouncementInfo_set_features(struct LDKNodeAnnouncementInfo *NONNULL_PTR this_ptr, struct LDKNodeFeatures val); + export function NodeAnnouncementInfo_set_features(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Sha256_hash(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_NodeAnnouncementInfo_set_features(this_ptr, val); + // debug statements here } - // bool Sha256_eq(const struct LDKSha256 *NONNULL_PTR a, const struct LDKSha256 *NONNULL_PTR b); - export function Sha256_eq(a: number, b: number): boolean { + // uint32_t NodeAnnouncementInfo_get_last_update(const struct LDKNodeAnnouncementInfo *NONNULL_PTR this_ptr); + export function NodeAnnouncementInfo_get_last_update(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Sha256_eq(a, b); + const nativeResponseValue = wasm.TS_NodeAnnouncementInfo_get_last_update(this_ptr); return nativeResponseValue; } - // void Description_free(struct LDKDescription this_obj); - export function Description_free(this_obj: number): void { + // void NodeAnnouncementInfo_set_last_update(struct LDKNodeAnnouncementInfo *NONNULL_PTR this_ptr, uint32_t val); + export function NodeAnnouncementInfo_set_last_update(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Description_free(this_obj); + const nativeResponseValue = wasm.TS_NodeAnnouncementInfo_set_last_update(this_ptr, val); // debug statements here } - // uint64_t Description_clone_ptr(LDKDescription *NONNULL_PTR arg); - export function Description_clone_ptr(arg: number): number { + // const uint8_t (*NodeAnnouncementInfo_get_rgb(const struct LDKNodeAnnouncementInfo *NONNULL_PTR this_ptr))[3]; + export function NodeAnnouncementInfo_get_rgb(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Description_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_NodeAnnouncementInfo_get_rgb(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKDescription Description_clone(const struct LDKDescription *NONNULL_PTR orig); - export function Description_clone(orig: number): number { + // void NodeAnnouncementInfo_set_rgb(struct LDKNodeAnnouncementInfo *NONNULL_PTR this_ptr, struct LDKThreeBytes val); + export function NodeAnnouncementInfo_set_rgb(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Description_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_NodeAnnouncementInfo_set_rgb(this_ptr, encodeUint8Array(val)); + // debug statements here } - // uint64_t Description_hash(const struct LDKDescription *NONNULL_PTR o); - export function Description_hash(o: number): number { + // const uint8_t (*NodeAnnouncementInfo_get_alias(const struct LDKNodeAnnouncementInfo *NONNULL_PTR this_ptr))[32]; + export function NodeAnnouncementInfo_get_alias(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Description_hash(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_NodeAnnouncementInfo_get_alias(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // bool Description_eq(const struct LDKDescription *NONNULL_PTR a, const struct LDKDescription *NONNULL_PTR b); - export function Description_eq(a: number, b: number): boolean { + // void NodeAnnouncementInfo_set_alias(struct LDKNodeAnnouncementInfo *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val); + export function NodeAnnouncementInfo_set_alias(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Description_eq(a, b); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_NodeAnnouncementInfo_set_alias(this_ptr, encodeUint8Array(val)); + // debug statements here } - // void PayeePubKey_free(struct LDKPayeePubKey this_obj); - export function PayeePubKey_free(this_obj: number): void { + // void NodeAnnouncementInfo_set_addresses(struct LDKNodeAnnouncementInfo *NONNULL_PTR this_ptr, struct LDKCVec_NetAddressZ val); + export function NodeAnnouncementInfo_set_addresses(this_ptr: number, val: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PayeePubKey_free(this_obj); + const nativeResponseValue = wasm.TS_NodeAnnouncementInfo_set_addresses(this_ptr, val); // debug statements here } - // struct LDKPublicKey PayeePubKey_get_a(const struct LDKPayeePubKey *NONNULL_PTR this_ptr); - export function PayeePubKey_get_a(this_ptr: number): Uint8Array { + // struct LDKNodeAnnouncement NodeAnnouncementInfo_get_announcement_message(const struct LDKNodeAnnouncementInfo *NONNULL_PTR this_ptr); + export function NodeAnnouncementInfo_get_announcement_message(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PayeePubKey_get_a(this_ptr); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_NodeAnnouncementInfo_get_announcement_message(this_ptr); + return nativeResponseValue; } - // void PayeePubKey_set_a(struct LDKPayeePubKey *NONNULL_PTR this_ptr, struct LDKPublicKey val); - export function PayeePubKey_set_a(this_ptr: number, val: Uint8Array): void { + // void NodeAnnouncementInfo_set_announcement_message(struct LDKNodeAnnouncementInfo *NONNULL_PTR this_ptr, struct LDKNodeAnnouncement val); + export function NodeAnnouncementInfo_set_announcement_message(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PayeePubKey_set_a(this_ptr, encodeArray(val)); + const nativeResponseValue = wasm.TS_NodeAnnouncementInfo_set_announcement_message(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKPayeePubKey PayeePubKey_new(struct LDKPublicKey a_arg); - export function PayeePubKey_new(a_arg: Uint8Array): number { + // MUST_USE_RES struct LDKNodeAnnouncementInfo NodeAnnouncementInfo_new(struct LDKNodeFeatures features_arg, uint32_t last_update_arg, struct LDKThreeBytes rgb_arg, struct LDKThirtyTwoBytes alias_arg, struct LDKCVec_NetAddressZ addresses_arg, struct LDKNodeAnnouncement announcement_message_arg); + export function NodeAnnouncementInfo_new(features_arg: number, last_update_arg: number, rgb_arg: Uint8Array, alias_arg: Uint8Array, addresses_arg: number[], announcement_message_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PayeePubKey_new(encodeArray(a_arg)); + const nativeResponseValue = wasm.TS_NodeAnnouncementInfo_new(features_arg, last_update_arg, encodeUint8Array(rgb_arg), encodeUint8Array(alias_arg), addresses_arg, announcement_message_arg); return nativeResponseValue; } - // uint64_t PayeePubKey_clone_ptr(LDKPayeePubKey *NONNULL_PTR arg); - export function PayeePubKey_clone_ptr(arg: number): number { + // uint64_t NodeAnnouncementInfo_clone_ptr(LDKNodeAnnouncementInfo *NONNULL_PTR arg); + export function NodeAnnouncementInfo_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PayeePubKey_clone_ptr(arg); + const nativeResponseValue = wasm.TS_NodeAnnouncementInfo_clone_ptr(arg); return nativeResponseValue; } - // struct LDKPayeePubKey PayeePubKey_clone(const struct LDKPayeePubKey *NONNULL_PTR orig); - export function PayeePubKey_clone(orig: number): number { + // struct LDKNodeAnnouncementInfo NodeAnnouncementInfo_clone(const struct LDKNodeAnnouncementInfo *NONNULL_PTR orig); + export function NodeAnnouncementInfo_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PayeePubKey_clone(orig); + const nativeResponseValue = wasm.TS_NodeAnnouncementInfo_clone(orig); return nativeResponseValue; } - // uint64_t PayeePubKey_hash(const struct LDKPayeePubKey *NONNULL_PTR o); - export function PayeePubKey_hash(o: number): number { + // struct LDKCVec_u8Z NodeAnnouncementInfo_write(const struct LDKNodeAnnouncementInfo *NONNULL_PTR obj); + export function NodeAnnouncementInfo_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PayeePubKey_hash(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_NodeAnnouncementInfo_write(obj); + return decodeUint8Array(nativeResponseValue); } - // bool PayeePubKey_eq(const struct LDKPayeePubKey *NONNULL_PTR a, const struct LDKPayeePubKey *NONNULL_PTR b); - export function PayeePubKey_eq(a: number, b: number): boolean { + // struct LDKCResult_NodeAnnouncementInfoDecodeErrorZ NodeAnnouncementInfo_read(struct LDKu8slice ser); + export function NodeAnnouncementInfo_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PayeePubKey_eq(a, b); + const nativeResponseValue = wasm.TS_NodeAnnouncementInfo_read(encodeUint8Array(ser)); return nativeResponseValue; } - // void ExpiryTime_free(struct LDKExpiryTime this_obj); - export function ExpiryTime_free(this_obj: number): void { + // void NodeInfo_free(struct LDKNodeInfo this_obj); + export function NodeInfo_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ExpiryTime_free(this_obj); + const nativeResponseValue = wasm.TS_NodeInfo_free(this_obj); // debug statements here } - // uint64_t ExpiryTime_clone_ptr(LDKExpiryTime *NONNULL_PTR arg); - export function ExpiryTime_clone_ptr(arg: number): number { + // void NodeInfo_set_channels(struct LDKNodeInfo *NONNULL_PTR this_ptr, struct LDKCVec_u64Z val); + export function NodeInfo_set_channels(this_ptr: number, val: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ExpiryTime_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_NodeInfo_set_channels(this_ptr, val); + // debug statements here } - // struct LDKExpiryTime ExpiryTime_clone(const struct LDKExpiryTime *NONNULL_PTR orig); - export function ExpiryTime_clone(orig: number): number { + // struct LDKRoutingFees NodeInfo_get_lowest_inbound_channel_fees(const struct LDKNodeInfo *NONNULL_PTR this_ptr); + export function NodeInfo_get_lowest_inbound_channel_fees(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ExpiryTime_clone(orig); + const nativeResponseValue = wasm.TS_NodeInfo_get_lowest_inbound_channel_fees(this_ptr); return nativeResponseValue; } - // uint64_t ExpiryTime_hash(const struct LDKExpiryTime *NONNULL_PTR o); - export function ExpiryTime_hash(o: number): number { + // void NodeInfo_set_lowest_inbound_channel_fees(struct LDKNodeInfo *NONNULL_PTR this_ptr, struct LDKRoutingFees val); + export function NodeInfo_set_lowest_inbound_channel_fees(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ExpiryTime_hash(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_NodeInfo_set_lowest_inbound_channel_fees(this_ptr, val); + // debug statements here } - // bool ExpiryTime_eq(const struct LDKExpiryTime *NONNULL_PTR a, const struct LDKExpiryTime *NONNULL_PTR b); - export function ExpiryTime_eq(a: number, b: number): boolean { + // struct LDKNodeAnnouncementInfo NodeInfo_get_announcement_info(const struct LDKNodeInfo *NONNULL_PTR this_ptr); + export function NodeInfo_get_announcement_info(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ExpiryTime_eq(a, b); + const nativeResponseValue = wasm.TS_NodeInfo_get_announcement_info(this_ptr); return nativeResponseValue; } - // void MinFinalCltvExpiry_free(struct LDKMinFinalCltvExpiry this_obj); - export function MinFinalCltvExpiry_free(this_obj: number): void { + // void NodeInfo_set_announcement_info(struct LDKNodeInfo *NONNULL_PTR this_ptr, struct LDKNodeAnnouncementInfo val); + export function NodeInfo_set_announcement_info(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MinFinalCltvExpiry_free(this_obj); + const nativeResponseValue = wasm.TS_NodeInfo_set_announcement_info(this_ptr, val); // debug statements here } - // uint64_t MinFinalCltvExpiry_get_a(const struct LDKMinFinalCltvExpiry *NONNULL_PTR this_ptr); - export function MinFinalCltvExpiry_get_a(this_ptr: number): number { + // MUST_USE_RES struct LDKNodeInfo NodeInfo_new(struct LDKCVec_u64Z channels_arg, struct LDKRoutingFees lowest_inbound_channel_fees_arg, struct LDKNodeAnnouncementInfo announcement_info_arg); + export function NodeInfo_new(channels_arg: number[], lowest_inbound_channel_fees_arg: number, announcement_info_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MinFinalCltvExpiry_get_a(this_ptr); + const nativeResponseValue = wasm.TS_NodeInfo_new(channels_arg, lowest_inbound_channel_fees_arg, announcement_info_arg); return nativeResponseValue; } - // void MinFinalCltvExpiry_set_a(struct LDKMinFinalCltvExpiry *NONNULL_PTR this_ptr, uint64_t val); - export function MinFinalCltvExpiry_set_a(this_ptr: number, val: number): void { + // uint64_t NodeInfo_clone_ptr(LDKNodeInfo *NONNULL_PTR arg); + export function NodeInfo_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MinFinalCltvExpiry_set_a(this_ptr, val); - // debug statements here + const nativeResponseValue = wasm.TS_NodeInfo_clone_ptr(arg); + return nativeResponseValue; } - // MUST_USE_RES struct LDKMinFinalCltvExpiry MinFinalCltvExpiry_new(uint64_t a_arg); - export function MinFinalCltvExpiry_new(a_arg: number): number { + // struct LDKNodeInfo NodeInfo_clone(const struct LDKNodeInfo *NONNULL_PTR orig); + export function NodeInfo_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MinFinalCltvExpiry_new(a_arg); + const nativeResponseValue = wasm.TS_NodeInfo_clone(orig); return nativeResponseValue; } - // uint64_t MinFinalCltvExpiry_clone_ptr(LDKMinFinalCltvExpiry *NONNULL_PTR arg); - export function MinFinalCltvExpiry_clone_ptr(arg: number): number { + // struct LDKCVec_u8Z NodeInfo_write(const struct LDKNodeInfo *NONNULL_PTR obj); + export function NodeInfo_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MinFinalCltvExpiry_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_NodeInfo_write(obj); + return decodeUint8Array(nativeResponseValue); } - // struct LDKMinFinalCltvExpiry MinFinalCltvExpiry_clone(const struct LDKMinFinalCltvExpiry *NONNULL_PTR orig); - export function MinFinalCltvExpiry_clone(orig: number): number { + // struct LDKCResult_NodeInfoDecodeErrorZ NodeInfo_read(struct LDKu8slice ser); + export function NodeInfo_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MinFinalCltvExpiry_clone(orig); + const nativeResponseValue = wasm.TS_NodeInfo_read(encodeUint8Array(ser)); return nativeResponseValue; } - // uint64_t MinFinalCltvExpiry_hash(const struct LDKMinFinalCltvExpiry *NONNULL_PTR o); - export function MinFinalCltvExpiry_hash(o: number): number { + // struct LDKCVec_u8Z NetworkGraph_write(const struct LDKNetworkGraph *NONNULL_PTR obj); + export function NetworkGraph_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MinFinalCltvExpiry_hash(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_NetworkGraph_write(obj); + return decodeUint8Array(nativeResponseValue); } - // bool MinFinalCltvExpiry_eq(const struct LDKMinFinalCltvExpiry *NONNULL_PTR a, const struct LDKMinFinalCltvExpiry *NONNULL_PTR b); - export function MinFinalCltvExpiry_eq(a: number, b: number): boolean { + // struct LDKCResult_NetworkGraphDecodeErrorZ NetworkGraph_read(struct LDKu8slice ser); + export function NetworkGraph_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.MinFinalCltvExpiry_eq(a, b); + const nativeResponseValue = wasm.TS_NetworkGraph_read(encodeUint8Array(ser)); return nativeResponseValue; } - // void Fallback_free(struct LDKFallback this_ptr); - export function Fallback_free(this_ptr: number): void { + // MUST_USE_RES struct LDKNetworkGraph NetworkGraph_new(struct LDKThirtyTwoBytes genesis_hash); + export function NetworkGraph_new(genesis_hash: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Fallback_free(this_ptr); - // debug statements here + const nativeResponseValue = wasm.TS_NetworkGraph_new(encodeUint8Array(genesis_hash)); + return nativeResponseValue; } - // uint64_t Fallback_clone_ptr(LDKFallback *NONNULL_PTR arg); - export function Fallback_clone_ptr(arg: number): number { + // MUST_USE_RES struct LDKReadOnlyNetworkGraph NetworkGraph_read_only(const struct LDKNetworkGraph *NONNULL_PTR this_arg); + export function NetworkGraph_read_only(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Fallback_clone_ptr(arg); + const nativeResponseValue = wasm.TS_NetworkGraph_read_only(this_arg); return nativeResponseValue; } - // struct LDKFallback Fallback_clone(const struct LDKFallback *NONNULL_PTR orig); - export function Fallback_clone(orig: number): number { + // MUST_USE_RES struct LDKCResult_NoneLightningErrorZ NetworkGraph_update_node_from_announcement(const struct LDKNetworkGraph *NONNULL_PTR this_arg, const struct LDKNodeAnnouncement *NONNULL_PTR msg); + export function NetworkGraph_update_node_from_announcement(this_arg: number, msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Fallback_clone(orig); + const nativeResponseValue = wasm.TS_NetworkGraph_update_node_from_announcement(this_arg, msg); return nativeResponseValue; } - // struct LDKFallback Fallback_seg_wit_program(struct LDKu5 version, struct LDKCVec_u8Z program); - export function Fallback_seg_wit_program(version: number, program: Uint8Array): number { + // MUST_USE_RES struct LDKCResult_NoneLightningErrorZ NetworkGraph_update_node_from_unsigned_announcement(const struct LDKNetworkGraph *NONNULL_PTR this_arg, const struct LDKUnsignedNodeAnnouncement *NONNULL_PTR msg); + export function NetworkGraph_update_node_from_unsigned_announcement(this_arg: number, msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Fallback_seg_wit_program(version, encodeArray(program)); + const nativeResponseValue = wasm.TS_NetworkGraph_update_node_from_unsigned_announcement(this_arg, msg); return nativeResponseValue; } - // struct LDKFallback Fallback_pub_key_hash(struct LDKTwentyBytes a); - export function Fallback_pub_key_hash(a: Uint8Array): number { + // 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); + export function NetworkGraph_update_channel_from_announcement(this_arg: number, msg: number, chain_access: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Fallback_pub_key_hash(encodeArray(a)); + const nativeResponseValue = wasm.TS_NetworkGraph_update_channel_from_announcement(this_arg, msg, chain_access); return nativeResponseValue; } - // struct LDKFallback Fallback_script_hash(struct LDKTwentyBytes a); - export function Fallback_script_hash(a: Uint8Array): number { + // 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); + export function NetworkGraph_update_channel_from_unsigned_announcement(this_arg: number, msg: number, chain_access: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Fallback_script_hash(encodeArray(a)); + const nativeResponseValue = wasm.TS_NetworkGraph_update_channel_from_unsigned_announcement(this_arg, msg, chain_access); return nativeResponseValue; } - // uint64_t Fallback_hash(const struct LDKFallback *NONNULL_PTR o); - export function Fallback_hash(o: number): number { + // void NetworkGraph_close_channel_from_update(const struct LDKNetworkGraph *NONNULL_PTR this_arg, uint64_t short_channel_id, bool is_permanent); + export function NetworkGraph_close_channel_from_update(this_arg: number, short_channel_id: number, is_permanent: boolean): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Fallback_hash(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_NetworkGraph_close_channel_from_update(this_arg, short_channel_id, is_permanent); + // debug statements here } - // bool Fallback_eq(const struct LDKFallback *NONNULL_PTR a, const struct LDKFallback *NONNULL_PTR b); - export function Fallback_eq(a: number, b: number): boolean { + // void NetworkGraph_fail_node(const struct LDKNetworkGraph *NONNULL_PTR this_arg, struct LDKPublicKey _node_id, bool is_permanent); + export function NetworkGraph_fail_node(this_arg: number, _node_id: Uint8Array, is_permanent: boolean): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Fallback_eq(a, b); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_NetworkGraph_fail_node(this_arg, encodeUint8Array(_node_id), is_permanent); + // debug statements here } - // void InvoiceSignature_free(struct LDKInvoiceSignature this_obj); - export function InvoiceSignature_free(this_obj: number): void { + // void NetworkGraph_remove_stale_channels_with_time(const struct LDKNetworkGraph *NONNULL_PTR this_arg, uint64_t current_time_unix); + export function NetworkGraph_remove_stale_channels_with_time(this_arg: number, current_time_unix: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InvoiceSignature_free(this_obj); + const nativeResponseValue = wasm.TS_NetworkGraph_remove_stale_channels_with_time(this_arg, current_time_unix); // debug statements here } - // uint64_t InvoiceSignature_clone_ptr(LDKInvoiceSignature *NONNULL_PTR arg); - export function InvoiceSignature_clone_ptr(arg: number): number { + // MUST_USE_RES struct LDKCResult_NoneLightningErrorZ NetworkGraph_update_channel(const struct LDKNetworkGraph *NONNULL_PTR this_arg, const struct LDKChannelUpdate *NONNULL_PTR msg); + export function NetworkGraph_update_channel(this_arg: number, msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InvoiceSignature_clone_ptr(arg); + const nativeResponseValue = wasm.TS_NetworkGraph_update_channel(this_arg, msg); return nativeResponseValue; } - // struct LDKInvoiceSignature InvoiceSignature_clone(const struct LDKInvoiceSignature *NONNULL_PTR orig); - export function InvoiceSignature_clone(orig: number): number { + // MUST_USE_RES struct LDKCResult_NoneLightningErrorZ NetworkGraph_update_channel_unsigned(const struct LDKNetworkGraph *NONNULL_PTR this_arg, const struct LDKUnsignedChannelUpdate *NONNULL_PTR msg); + export function NetworkGraph_update_channel_unsigned(this_arg: number, msg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InvoiceSignature_clone(orig); + const nativeResponseValue = wasm.TS_NetworkGraph_update_channel_unsigned(this_arg, msg); return nativeResponseValue; } - // bool InvoiceSignature_eq(const struct LDKInvoiceSignature *NONNULL_PTR a, const struct LDKInvoiceSignature *NONNULL_PTR b); - export function InvoiceSignature_eq(a: number, b: number): boolean { + // MUST_USE_RES struct LDKCOption_CVec_NetAddressZZ ReadOnlyNetworkGraph_get_addresses(const struct LDKReadOnlyNetworkGraph *NONNULL_PTR this_arg, struct LDKPublicKey pubkey); + export function ReadOnlyNetworkGraph_get_addresses(this_arg: number, pubkey: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InvoiceSignature_eq(a, b); + const nativeResponseValue = wasm.TS_ReadOnlyNetworkGraph_get_addresses(this_arg, encodeUint8Array(pubkey)); return nativeResponseValue; } - // void PrivateRoute_free(struct LDKPrivateRoute this_obj); - export function PrivateRoute_free(this_obj: number): void { + // void RouteHop_free(struct LDKRouteHop this_obj); + export function RouteHop_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PrivateRoute_free(this_obj); + const nativeResponseValue = wasm.TS_RouteHop_free(this_obj); // debug statements here } - // uint64_t PrivateRoute_clone_ptr(LDKPrivateRoute *NONNULL_PTR arg); - export function PrivateRoute_clone_ptr(arg: number): number { + // struct LDKPublicKey RouteHop_get_pubkey(const struct LDKRouteHop *NONNULL_PTR this_ptr); + export function RouteHop_get_pubkey(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PrivateRoute_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_RouteHop_get_pubkey(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKPrivateRoute PrivateRoute_clone(const struct LDKPrivateRoute *NONNULL_PTR orig); - export function PrivateRoute_clone(orig: number): number { + // void RouteHop_set_pubkey(struct LDKRouteHop *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function RouteHop_set_pubkey(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PrivateRoute_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_RouteHop_set_pubkey(this_ptr, encodeUint8Array(val)); + // debug statements here } - // uint64_t PrivateRoute_hash(const struct LDKPrivateRoute *NONNULL_PTR o); - export function PrivateRoute_hash(o: number): number { + // struct LDKNodeFeatures RouteHop_get_node_features(const struct LDKRouteHop *NONNULL_PTR this_ptr); + export function RouteHop_get_node_features(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PrivateRoute_hash(o); + const nativeResponseValue = wasm.TS_RouteHop_get_node_features(this_ptr); return nativeResponseValue; } - // bool PrivateRoute_eq(const struct LDKPrivateRoute *NONNULL_PTR a, const struct LDKPrivateRoute *NONNULL_PTR b); - export function PrivateRoute_eq(a: number, b: number): boolean { + // void RouteHop_set_node_features(struct LDKRouteHop *NONNULL_PTR this_ptr, struct LDKNodeFeatures val); + export function RouteHop_set_node_features(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PrivateRoute_eq(a, b); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_RouteHop_set_node_features(this_ptr, val); + // debug statements here } - // MUST_USE_RES struct LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ SignedRawInvoice_into_parts(struct LDKSignedRawInvoice this_arg); - export function SignedRawInvoice_into_parts(this_arg: number): number { + // uint64_t RouteHop_get_short_channel_id(const struct LDKRouteHop *NONNULL_PTR this_ptr); + export function RouteHop_get_short_channel_id(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SignedRawInvoice_into_parts(this_arg); + const nativeResponseValue = wasm.TS_RouteHop_get_short_channel_id(this_ptr); return nativeResponseValue; } - // MUST_USE_RES struct LDKRawInvoice SignedRawInvoice_raw_invoice(const struct LDKSignedRawInvoice *NONNULL_PTR this_arg); - export function SignedRawInvoice_raw_invoice(this_arg: number): number { + // void RouteHop_set_short_channel_id(struct LDKRouteHop *NONNULL_PTR this_ptr, uint64_t val); + export function RouteHop_set_short_channel_id(this_ptr: number, val: number): void { + if(!isWasmInitialized) { + throw new Error("initializeWasm() must be awaited first!"); + } + const nativeResponseValue = wasm.TS_RouteHop_set_short_channel_id(this_ptr, val); + // debug statements here + } + // struct LDKChannelFeatures RouteHop_get_channel_features(const struct LDKRouteHop *NONNULL_PTR this_ptr); + export function RouteHop_get_channel_features(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SignedRawInvoice_raw_invoice(this_arg); + const nativeResponseValue = wasm.TS_RouteHop_get_channel_features(this_ptr); return nativeResponseValue; } - // MUST_USE_RES const uint8_t (*SignedRawInvoice_hash(const struct LDKSignedRawInvoice *NONNULL_PTR this_arg))[32]; - export function SignedRawInvoice_hash(this_arg: number): Uint8Array { + // void RouteHop_set_channel_features(struct LDKRouteHop *NONNULL_PTR this_ptr, struct LDKChannelFeatures val); + export function RouteHop_set_channel_features(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SignedRawInvoice_hash(this_arg); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_RouteHop_set_channel_features(this_ptr, val); + // debug statements here } - // MUST_USE_RES struct LDKInvoiceSignature SignedRawInvoice_signature(const struct LDKSignedRawInvoice *NONNULL_PTR this_arg); - export function SignedRawInvoice_signature(this_arg: number): number { + // uint64_t RouteHop_get_fee_msat(const struct LDKRouteHop *NONNULL_PTR this_ptr); + export function RouteHop_get_fee_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SignedRawInvoice_signature(this_arg); + const nativeResponseValue = wasm.TS_RouteHop_get_fee_msat(this_ptr); return nativeResponseValue; } - // MUST_USE_RES struct LDKCResult_PayeePubKeyErrorZ SignedRawInvoice_recover_payee_pub_key(const struct LDKSignedRawInvoice *NONNULL_PTR this_arg); - export function SignedRawInvoice_recover_payee_pub_key(this_arg: number): number { + // void RouteHop_set_fee_msat(struct LDKRouteHop *NONNULL_PTR this_ptr, uint64_t val); + export function RouteHop_set_fee_msat(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SignedRawInvoice_recover_payee_pub_key(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_RouteHop_set_fee_msat(this_ptr, val); + // debug statements here } - // MUST_USE_RES bool SignedRawInvoice_check_signature(const struct LDKSignedRawInvoice *NONNULL_PTR this_arg); - export function SignedRawInvoice_check_signature(this_arg: number): boolean { + // uint32_t RouteHop_get_cltv_expiry_delta(const struct LDKRouteHop *NONNULL_PTR this_ptr); + export function RouteHop_get_cltv_expiry_delta(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SignedRawInvoice_check_signature(this_arg); + const nativeResponseValue = wasm.TS_RouteHop_get_cltv_expiry_delta(this_ptr); return nativeResponseValue; } - // MUST_USE_RES struct LDKThirtyTwoBytes RawInvoice_hash(const struct LDKRawInvoice *NONNULL_PTR this_arg); - export function RawInvoice_hash(this_arg: number): Uint8Array { + // void RouteHop_set_cltv_expiry_delta(struct LDKRouteHop *NONNULL_PTR this_ptr, uint32_t val); + export function RouteHop_set_cltv_expiry_delta(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RawInvoice_hash(this_arg); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_RouteHop_set_cltv_expiry_delta(this_ptr, val); + // debug statements here } - // MUST_USE_RES struct LDKSha256 RawInvoice_payment_hash(const struct LDKRawInvoice *NONNULL_PTR this_arg); - export function RawInvoice_payment_hash(this_arg: number): number { + // MUST_USE_RES struct LDKRouteHop RouteHop_new(struct LDKPublicKey pubkey_arg, struct LDKNodeFeatures node_features_arg, uint64_t short_channel_id_arg, struct LDKChannelFeatures channel_features_arg, uint64_t fee_msat_arg, uint32_t cltv_expiry_delta_arg); + export function RouteHop_new(pubkey_arg: Uint8Array, node_features_arg: number, short_channel_id_arg: number, channel_features_arg: number, fee_msat_arg: number, cltv_expiry_delta_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RawInvoice_payment_hash(this_arg); + const nativeResponseValue = wasm.TS_RouteHop_new(encodeUint8Array(pubkey_arg), node_features_arg, short_channel_id_arg, channel_features_arg, fee_msat_arg, cltv_expiry_delta_arg); return nativeResponseValue; } - // MUST_USE_RES struct LDKDescription RawInvoice_description(const struct LDKRawInvoice *NONNULL_PTR this_arg); - export function RawInvoice_description(this_arg: number): number { + // uint64_t RouteHop_clone_ptr(LDKRouteHop *NONNULL_PTR arg); + export function RouteHop_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RawInvoice_description(this_arg); + const nativeResponseValue = wasm.TS_RouteHop_clone_ptr(arg); return nativeResponseValue; } - // MUST_USE_RES struct LDKPayeePubKey RawInvoice_payee_pub_key(const struct LDKRawInvoice *NONNULL_PTR this_arg); - export function RawInvoice_payee_pub_key(this_arg: number): number { + // struct LDKRouteHop RouteHop_clone(const struct LDKRouteHop *NONNULL_PTR orig); + export function RouteHop_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RawInvoice_payee_pub_key(this_arg); + const nativeResponseValue = wasm.TS_RouteHop_clone(orig); return nativeResponseValue; } - // MUST_USE_RES struct LDKSha256 RawInvoice_description_hash(const struct LDKRawInvoice *NONNULL_PTR this_arg); - export function RawInvoice_description_hash(this_arg: number): number { + // uint64_t RouteHop_hash(const struct LDKRouteHop *NONNULL_PTR o); + export function RouteHop_hash(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RawInvoice_description_hash(this_arg); + const nativeResponseValue = wasm.TS_RouteHop_hash(o); return nativeResponseValue; } - // MUST_USE_RES struct LDKExpiryTime RawInvoice_expiry_time(const struct LDKRawInvoice *NONNULL_PTR this_arg); - export function RawInvoice_expiry_time(this_arg: number): number { + // bool RouteHop_eq(const struct LDKRouteHop *NONNULL_PTR a, const struct LDKRouteHop *NONNULL_PTR b); + export function RouteHop_eq(a: number, b: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RawInvoice_expiry_time(this_arg); + const nativeResponseValue = wasm.TS_RouteHop_eq(a, b); return nativeResponseValue; } - // MUST_USE_RES struct LDKMinFinalCltvExpiry RawInvoice_min_final_cltv_expiry(const struct LDKRawInvoice *NONNULL_PTR this_arg); - export function RawInvoice_min_final_cltv_expiry(this_arg: number): number { + // struct LDKCVec_u8Z RouteHop_write(const struct LDKRouteHop *NONNULL_PTR obj); + export function RouteHop_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RawInvoice_min_final_cltv_expiry(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_RouteHop_write(obj); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES struct LDKThirtyTwoBytes RawInvoice_payment_secret(const struct LDKRawInvoice *NONNULL_PTR this_arg); - export function RawInvoice_payment_secret(this_arg: number): Uint8Array { + // struct LDKCResult_RouteHopDecodeErrorZ RouteHop_read(struct LDKu8slice ser); + export function RouteHop_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RawInvoice_payment_secret(this_arg); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_RouteHop_read(encodeUint8Array(ser)); + return nativeResponseValue; } - // MUST_USE_RES struct LDKInvoiceFeatures RawInvoice_features(const struct LDKRawInvoice *NONNULL_PTR this_arg); - export function RawInvoice_features(this_arg: number): number { + // void Route_free(struct LDKRoute this_obj); + export function Route_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RawInvoice_features(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Route_free(this_obj); + // debug statements here } - // MUST_USE_RES struct LDKCVec_PrivateRouteZ RawInvoice_private_routes(const struct LDKRawInvoice *NONNULL_PTR this_arg); - export function RawInvoice_private_routes(this_arg: number): number[] { + // struct LDKCVec_CVec_RouteHopZZ Route_get_paths(const struct LDKRoute *NONNULL_PTR this_ptr); + export function Route_get_paths(this_ptr: number): number[][] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RawInvoice_private_routes(this_arg); + const nativeResponseValue = wasm.TS_Route_get_paths(this_ptr); return nativeResponseValue; } - // MUST_USE_RES struct LDKCOption_u64Z RawInvoice_amount_pico_btc(const struct LDKRawInvoice *NONNULL_PTR this_arg); - export function RawInvoice_amount_pico_btc(this_arg: number): number { + // void Route_set_paths(struct LDKRoute *NONNULL_PTR this_ptr, struct LDKCVec_CVec_RouteHopZZ val); + export function Route_set_paths(this_ptr: number, val: number[][]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RawInvoice_amount_pico_btc(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Route_set_paths(this_ptr, val); + // debug statements here } - // MUST_USE_RES enum LDKCurrency RawInvoice_currency(const struct LDKRawInvoice *NONNULL_PTR this_arg); - export function RawInvoice_currency(this_arg: number): Currency { + // struct LDKPayee Route_get_payee(const struct LDKRoute *NONNULL_PTR this_ptr); + export function Route_get_payee(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RawInvoice_currency(this_arg); + const nativeResponseValue = wasm.TS_Route_get_payee(this_ptr); return nativeResponseValue; } - // MUST_USE_RES struct LDKCResult_PositiveTimestampCreationErrorZ PositiveTimestamp_from_unix_timestamp(uint64_t unix_seconds); - export function PositiveTimestamp_from_unix_timestamp(unix_seconds: number): number { + // void Route_set_payee(struct LDKRoute *NONNULL_PTR this_ptr, struct LDKPayee val); + export function Route_set_payee(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PositiveTimestamp_from_unix_timestamp(unix_seconds); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Route_set_payee(this_ptr, val); + // debug statements here } - // MUST_USE_RES struct LDKCResult_PositiveTimestampCreationErrorZ PositiveTimestamp_from_system_time(uint64_t time); - export function PositiveTimestamp_from_system_time(time: number): number { + // MUST_USE_RES struct LDKRoute Route_new(struct LDKCVec_CVec_RouteHopZZ paths_arg, struct LDKPayee payee_arg); + export function Route_new(paths_arg: number[][], payee_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PositiveTimestamp_from_system_time(time); + const nativeResponseValue = wasm.TS_Route_new(paths_arg, payee_arg); return nativeResponseValue; } - // MUST_USE_RES uint64_t PositiveTimestamp_as_unix_timestamp(const struct LDKPositiveTimestamp *NONNULL_PTR this_arg); - export function PositiveTimestamp_as_unix_timestamp(this_arg: number): number { + // uint64_t Route_clone_ptr(LDKRoute *NONNULL_PTR arg); + export function Route_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PositiveTimestamp_as_unix_timestamp(this_arg); + const nativeResponseValue = wasm.TS_Route_clone_ptr(arg); return nativeResponseValue; } - // MUST_USE_RES uint64_t PositiveTimestamp_as_time(const struct LDKPositiveTimestamp *NONNULL_PTR this_arg); - export function PositiveTimestamp_as_time(this_arg: number): number { + // struct LDKRoute Route_clone(const struct LDKRoute *NONNULL_PTR orig); + export function Route_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PositiveTimestamp_as_time(this_arg); + const nativeResponseValue = wasm.TS_Route_clone(orig); return nativeResponseValue; } - // MUST_USE_RES struct LDKSignedRawInvoice Invoice_into_signed_raw(struct LDKInvoice this_arg); - export function Invoice_into_signed_raw(this_arg: number): number { + // uint64_t Route_hash(const struct LDKRoute *NONNULL_PTR o); + export function Route_hash(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Invoice_into_signed_raw(this_arg); + const nativeResponseValue = wasm.TS_Route_hash(o); return nativeResponseValue; } - // MUST_USE_RES struct LDKCResult_NoneSemanticErrorZ Invoice_check_signature(const struct LDKInvoice *NONNULL_PTR this_arg); - export function Invoice_check_signature(this_arg: number): number { + // bool Route_eq(const struct LDKRoute *NONNULL_PTR a, const struct LDKRoute *NONNULL_PTR b); + export function Route_eq(a: number, b: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Invoice_check_signature(this_arg); + const nativeResponseValue = wasm.TS_Route_eq(a, b); return nativeResponseValue; } - // MUST_USE_RES struct LDKCResult_InvoiceSemanticErrorZ Invoice_from_signed(struct LDKSignedRawInvoice signed_invoice); - export function Invoice_from_signed(signed_invoice: number): number { + // MUST_USE_RES uint64_t Route_get_total_fees(const struct LDKRoute *NONNULL_PTR this_arg); + export function Route_get_total_fees(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Invoice_from_signed(signed_invoice); + const nativeResponseValue = wasm.TS_Route_get_total_fees(this_arg); return nativeResponseValue; } - // MUST_USE_RES uint64_t Invoice_timestamp(const struct LDKInvoice *NONNULL_PTR this_arg); - export function Invoice_timestamp(this_arg: number): number { + // MUST_USE_RES uint64_t Route_get_total_amount(const struct LDKRoute *NONNULL_PTR this_arg); + export function Route_get_total_amount(this_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Invoice_timestamp(this_arg); + const nativeResponseValue = wasm.TS_Route_get_total_amount(this_arg); return nativeResponseValue; } - // MUST_USE_RES const uint8_t (*Invoice_payment_hash(const struct LDKInvoice *NONNULL_PTR this_arg))[32]; - export function Invoice_payment_hash(this_arg: number): Uint8Array { + // struct LDKCVec_u8Z Route_write(const struct LDKRoute *NONNULL_PTR obj); + export function Route_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Invoice_payment_hash(this_arg); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_Route_write(obj); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES struct LDKPublicKey Invoice_payee_pub_key(const struct LDKInvoice *NONNULL_PTR this_arg); - export function Invoice_payee_pub_key(this_arg: number): Uint8Array { + // struct LDKCResult_RouteDecodeErrorZ Route_read(struct LDKu8slice ser); + export function Route_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Invoice_payee_pub_key(this_arg); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_Route_read(encodeUint8Array(ser)); + return nativeResponseValue; } - // MUST_USE_RES const uint8_t (*Invoice_payment_secret(const struct LDKInvoice *NONNULL_PTR this_arg))[32]; - export function Invoice_payment_secret(this_arg: number): Uint8Array { + // void RouteParameters_free(struct LDKRouteParameters this_obj); + export function RouteParameters_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Invoice_payment_secret(this_arg); - return decodeArray(nativeResponseValue); + const nativeResponseValue = wasm.TS_RouteParameters_free(this_obj); + // debug statements here } - // MUST_USE_RES struct LDKInvoiceFeatures Invoice_features(const struct LDKInvoice *NONNULL_PTR this_arg); - export function Invoice_features(this_arg: number): number { + // struct LDKPayee RouteParameters_get_payee(const struct LDKRouteParameters *NONNULL_PTR this_ptr); + export function RouteParameters_get_payee(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Invoice_features(this_arg); + const nativeResponseValue = wasm.TS_RouteParameters_get_payee(this_ptr); return nativeResponseValue; } - // MUST_USE_RES struct LDKPublicKey Invoice_recover_payee_pub_key(const struct LDKInvoice *NONNULL_PTR this_arg); - export function Invoice_recover_payee_pub_key(this_arg: number): Uint8Array { - if(!isWasmInitialized) { - throw new Error("initializeWasm() must be awaited first!"); - } - const nativeResponseValue = wasm.Invoice_recover_payee_pub_key(this_arg); - return decodeArray(nativeResponseValue); - } - // MUST_USE_RES uint64_t Invoice_expiry_time(const struct LDKInvoice *NONNULL_PTR this_arg); - export function Invoice_expiry_time(this_arg: number): number { + // void RouteParameters_set_payee(struct LDKRouteParameters *NONNULL_PTR this_ptr, struct LDKPayee val); + export function RouteParameters_set_payee(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Invoice_expiry_time(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_RouteParameters_set_payee(this_ptr, val); + // debug statements here } - // MUST_USE_RES bool Invoice_is_expired(const struct LDKInvoice *NONNULL_PTR this_arg); - export function Invoice_is_expired(this_arg: number): boolean { + // uint64_t RouteParameters_get_final_value_msat(const struct LDKRouteParameters *NONNULL_PTR this_ptr); + export function RouteParameters_get_final_value_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Invoice_is_expired(this_arg); + const nativeResponseValue = wasm.TS_RouteParameters_get_final_value_msat(this_ptr); return nativeResponseValue; } - // MUST_USE_RES uint64_t Invoice_min_final_cltv_expiry(const struct LDKInvoice *NONNULL_PTR this_arg); - export function Invoice_min_final_cltv_expiry(this_arg: number): number { + // void RouteParameters_set_final_value_msat(struct LDKRouteParameters *NONNULL_PTR this_ptr, uint64_t val); + export function RouteParameters_set_final_value_msat(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Invoice_min_final_cltv_expiry(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_RouteParameters_set_final_value_msat(this_ptr, val); + // debug statements here } - // MUST_USE_RES struct LDKCVec_PrivateRouteZ Invoice_private_routes(const struct LDKInvoice *NONNULL_PTR this_arg); - export function Invoice_private_routes(this_arg: number): number[] { + // uint32_t RouteParameters_get_final_cltv_expiry_delta(const struct LDKRouteParameters *NONNULL_PTR this_ptr); + export function RouteParameters_get_final_cltv_expiry_delta(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Invoice_private_routes(this_arg); + const nativeResponseValue = wasm.TS_RouteParameters_get_final_cltv_expiry_delta(this_ptr); return nativeResponseValue; } - // MUST_USE_RES struct LDKCVec_RouteHintZ Invoice_route_hints(const struct LDKInvoice *NONNULL_PTR this_arg); - export function Invoice_route_hints(this_arg: number): number[] { + // void RouteParameters_set_final_cltv_expiry_delta(struct LDKRouteParameters *NONNULL_PTR this_ptr, uint32_t val); + export function RouteParameters_set_final_cltv_expiry_delta(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Invoice_route_hints(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_RouteParameters_set_final_cltv_expiry_delta(this_ptr, val); + // debug statements here } - // MUST_USE_RES enum LDKCurrency Invoice_currency(const struct LDKInvoice *NONNULL_PTR this_arg); - export function Invoice_currency(this_arg: number): Currency { + // MUST_USE_RES struct LDKRouteParameters RouteParameters_new(struct LDKPayee payee_arg, uint64_t final_value_msat_arg, uint32_t final_cltv_expiry_delta_arg); + export function RouteParameters_new(payee_arg: number, final_value_msat_arg: number, final_cltv_expiry_delta_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Invoice_currency(this_arg); + const nativeResponseValue = wasm.TS_RouteParameters_new(payee_arg, final_value_msat_arg, final_cltv_expiry_delta_arg); return nativeResponseValue; } - // MUST_USE_RES struct LDKCOption_u64Z Invoice_amount_milli_satoshis(const struct LDKInvoice *NONNULL_PTR this_arg); - export function Invoice_amount_milli_satoshis(this_arg: number): number { + // uint64_t RouteParameters_clone_ptr(LDKRouteParameters *NONNULL_PTR arg); + export function RouteParameters_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Invoice_amount_milli_satoshis(this_arg); + const nativeResponseValue = wasm.TS_RouteParameters_clone_ptr(arg); return nativeResponseValue; } - // MUST_USE_RES struct LDKCResult_DescriptionCreationErrorZ Description_new(struct LDKStr description); - export function Description_new(description: String): number { + // struct LDKRouteParameters RouteParameters_clone(const struct LDKRouteParameters *NONNULL_PTR orig); + export function RouteParameters_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Description_new(description); + const nativeResponseValue = wasm.TS_RouteParameters_clone(orig); return nativeResponseValue; } - // MUST_USE_RES struct LDKStr Description_into_inner(struct LDKDescription this_arg); - export function Description_into_inner(this_arg: number): String { + // struct LDKCVec_u8Z RouteParameters_write(const struct LDKRouteParameters *NONNULL_PTR obj); + export function RouteParameters_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Description_into_inner(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_RouteParameters_write(obj); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES struct LDKCResult_ExpiryTimeCreationErrorZ ExpiryTime_from_seconds(uint64_t seconds); - export function ExpiryTime_from_seconds(seconds: number): number { + // struct LDKCResult_RouteParametersDecodeErrorZ RouteParameters_read(struct LDKu8slice ser); + export function RouteParameters_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ExpiryTime_from_seconds(seconds); + const nativeResponseValue = wasm.TS_RouteParameters_read(encodeUint8Array(ser)); return nativeResponseValue; } - // MUST_USE_RES struct LDKCResult_ExpiryTimeCreationErrorZ ExpiryTime_from_duration(uint64_t duration); - export function ExpiryTime_from_duration(duration: number): number { + // void Payee_free(struct LDKPayee this_obj); + export function Payee_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ExpiryTime_from_duration(duration); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Payee_free(this_obj); + // debug statements here } - // MUST_USE_RES uint64_t ExpiryTime_as_seconds(const struct LDKExpiryTime *NONNULL_PTR this_arg); - export function ExpiryTime_as_seconds(this_arg: number): number { + // struct LDKPublicKey Payee_get_pubkey(const struct LDKPayee *NONNULL_PTR this_ptr); + export function Payee_get_pubkey(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ExpiryTime_as_seconds(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Payee_get_pubkey(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // MUST_USE_RES uint64_t ExpiryTime_as_duration(const struct LDKExpiryTime *NONNULL_PTR this_arg); - export function ExpiryTime_as_duration(this_arg: number): number { + // void Payee_set_pubkey(struct LDKPayee *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function Payee_set_pubkey(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ExpiryTime_as_duration(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Payee_set_pubkey(this_ptr, encodeUint8Array(val)); + // debug statements here } - // MUST_USE_RES struct LDKCResult_PrivateRouteCreationErrorZ PrivateRoute_new(struct LDKRouteHint hops); - export function PrivateRoute_new(hops: number): number { + // struct LDKInvoiceFeatures Payee_get_features(const struct LDKPayee *NONNULL_PTR this_ptr); + export function Payee_get_features(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PrivateRoute_new(hops); + const nativeResponseValue = wasm.TS_Payee_get_features(this_ptr); return nativeResponseValue; } - // MUST_USE_RES struct LDKRouteHint PrivateRoute_into_inner(struct LDKPrivateRoute this_arg); - export function PrivateRoute_into_inner(this_arg: number): number { + // void Payee_set_features(struct LDKPayee *NONNULL_PTR this_ptr, struct LDKInvoiceFeatures val); + export function Payee_set_features(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PrivateRoute_into_inner(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Payee_set_features(this_ptr, val); + // debug statements here } - // enum LDKCreationError CreationError_clone(const enum LDKCreationError *NONNULL_PTR orig); - export function CreationError_clone(orig: number): CreationError { + // struct LDKCVec_RouteHintZ Payee_get_route_hints(const struct LDKPayee *NONNULL_PTR this_ptr); + export function Payee_get_route_hints(this_ptr: number): number[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CreationError_clone(orig); + const nativeResponseValue = wasm.TS_Payee_get_route_hints(this_ptr); return nativeResponseValue; } - // enum LDKCreationError CreationError_description_too_long(void); - export function CreationError_description_too_long(): CreationError { + // void Payee_set_route_hints(struct LDKPayee *NONNULL_PTR this_ptr, struct LDKCVec_RouteHintZ val); + export function Payee_set_route_hints(this_ptr: number, val: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CreationError_description_too_long(); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Payee_set_route_hints(this_ptr, val); + // debug statements here } - // enum LDKCreationError CreationError_route_too_long(void); - export function CreationError_route_too_long(): CreationError { + // struct LDKCOption_u64Z Payee_get_expiry_time(const struct LDKPayee *NONNULL_PTR this_ptr); + export function Payee_get_expiry_time(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CreationError_route_too_long(); + const nativeResponseValue = wasm.TS_Payee_get_expiry_time(this_ptr); return nativeResponseValue; } - // enum LDKCreationError CreationError_timestamp_out_of_bounds(void); - export function CreationError_timestamp_out_of_bounds(): CreationError { + // void Payee_set_expiry_time(struct LDKPayee *NONNULL_PTR this_ptr, struct LDKCOption_u64Z val); + export function Payee_set_expiry_time(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CreationError_timestamp_out_of_bounds(); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Payee_set_expiry_time(this_ptr, val); + // debug statements here } - // enum LDKCreationError CreationError_expiry_time_out_of_bounds(void); - export function CreationError_expiry_time_out_of_bounds(): CreationError { + // MUST_USE_RES struct LDKPayee Payee_new(struct LDKPublicKey pubkey_arg, struct LDKInvoiceFeatures features_arg, struct LDKCVec_RouteHintZ route_hints_arg, struct LDKCOption_u64Z expiry_time_arg); + export function Payee_new(pubkey_arg: Uint8Array, features_arg: number, route_hints_arg: number[], expiry_time_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CreationError_expiry_time_out_of_bounds(); + const nativeResponseValue = wasm.TS_Payee_new(encodeUint8Array(pubkey_arg), features_arg, route_hints_arg, expiry_time_arg); return nativeResponseValue; } - // enum LDKCreationError CreationError_invalid_amount(void); - export function CreationError_invalid_amount(): CreationError { + // uint64_t Payee_clone_ptr(LDKPayee *NONNULL_PTR arg); + export function Payee_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CreationError_invalid_amount(); + const nativeResponseValue = wasm.TS_Payee_clone_ptr(arg); return nativeResponseValue; } - // bool CreationError_eq(const enum LDKCreationError *NONNULL_PTR a, const enum LDKCreationError *NONNULL_PTR b); - export function CreationError_eq(a: number, b: number): boolean { + // struct LDKPayee Payee_clone(const struct LDKPayee *NONNULL_PTR orig); + export function Payee_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CreationError_eq(a, b); + const nativeResponseValue = wasm.TS_Payee_clone(orig); return nativeResponseValue; } - // struct LDKStr CreationError_to_str(const enum LDKCreationError *NONNULL_PTR o); - export function CreationError_to_str(o: number): String { + // uint64_t Payee_hash(const struct LDKPayee *NONNULL_PTR o); + export function Payee_hash(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.CreationError_to_str(o); + const nativeResponseValue = wasm.TS_Payee_hash(o); return nativeResponseValue; } - // enum LDKSemanticError SemanticError_clone(const enum LDKSemanticError *NONNULL_PTR orig); - export function SemanticError_clone(orig: number): SemanticError { + // bool Payee_eq(const struct LDKPayee *NONNULL_PTR a, const struct LDKPayee *NONNULL_PTR b); + export function Payee_eq(a: number, b: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SemanticError_clone(orig); + const nativeResponseValue = wasm.TS_Payee_eq(a, b); return nativeResponseValue; } - // enum LDKSemanticError SemanticError_no_payment_hash(void); - export function SemanticError_no_payment_hash(): SemanticError { + // struct LDKCVec_u8Z Payee_write(const struct LDKPayee *NONNULL_PTR obj); + export function Payee_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SemanticError_no_payment_hash(); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Payee_write(obj); + return decodeUint8Array(nativeResponseValue); } - // enum LDKSemanticError SemanticError_multiple_payment_hashes(void); - export function SemanticError_multiple_payment_hashes(): SemanticError { + // struct LDKCResult_PayeeDecodeErrorZ Payee_read(struct LDKu8slice ser); + export function Payee_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SemanticError_multiple_payment_hashes(); + const nativeResponseValue = wasm.TS_Payee_read(encodeUint8Array(ser)); return nativeResponseValue; } - // enum LDKSemanticError SemanticError_no_description(void); - export function SemanticError_no_description(): SemanticError { + // MUST_USE_RES struct LDKPayee Payee_from_node_id(struct LDKPublicKey pubkey); + export function Payee_from_node_id(pubkey: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SemanticError_no_description(); + const nativeResponseValue = wasm.TS_Payee_from_node_id(encodeUint8Array(pubkey)); return nativeResponseValue; } - // enum LDKSemanticError SemanticError_multiple_descriptions(void); - export function SemanticError_multiple_descriptions(): SemanticError { + // MUST_USE_RES struct LDKPayee Payee_for_keysend(struct LDKPublicKey pubkey); + export function Payee_for_keysend(pubkey: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SemanticError_multiple_descriptions(); + const nativeResponseValue = wasm.TS_Payee_for_keysend(encodeUint8Array(pubkey)); return nativeResponseValue; } - // enum LDKSemanticError SemanticError_no_payment_secret(void); - export function SemanticError_no_payment_secret(): SemanticError { + // void RouteHint_free(struct LDKRouteHint this_obj); + export function RouteHint_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SemanticError_no_payment_secret(); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_RouteHint_free(this_obj); + // debug statements here } - // enum LDKSemanticError SemanticError_multiple_payment_secrets(void); - export function SemanticError_multiple_payment_secrets(): SemanticError { + // struct LDKCVec_RouteHintHopZ RouteHint_get_a(const struct LDKRouteHint *NONNULL_PTR this_ptr); + export function RouteHint_get_a(this_ptr: number): number[] { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SemanticError_multiple_payment_secrets(); + const nativeResponseValue = wasm.TS_RouteHint_get_a(this_ptr); return nativeResponseValue; } - // enum LDKSemanticError SemanticError_invalid_features(void); - export function SemanticError_invalid_features(): SemanticError { + // void RouteHint_set_a(struct LDKRouteHint *NONNULL_PTR this_ptr, struct LDKCVec_RouteHintHopZ val); + export function RouteHint_set_a(this_ptr: number, val: number[]): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SemanticError_invalid_features(); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_RouteHint_set_a(this_ptr, val); + // debug statements here } - // enum LDKSemanticError SemanticError_invalid_recovery_id(void); - export function SemanticError_invalid_recovery_id(): SemanticError { + // MUST_USE_RES struct LDKRouteHint RouteHint_new(struct LDKCVec_RouteHintHopZ a_arg); + export function RouteHint_new(a_arg: number[]): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SemanticError_invalid_recovery_id(); + const nativeResponseValue = wasm.TS_RouteHint_new(a_arg); return nativeResponseValue; } - // enum LDKSemanticError SemanticError_invalid_signature(void); - export function SemanticError_invalid_signature(): SemanticError { + // uint64_t RouteHint_clone_ptr(LDKRouteHint *NONNULL_PTR arg); + export function RouteHint_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SemanticError_invalid_signature(); + const nativeResponseValue = wasm.TS_RouteHint_clone_ptr(arg); return nativeResponseValue; } - // enum LDKSemanticError SemanticError_imprecise_amount(void); - export function SemanticError_imprecise_amount(): SemanticError { + // struct LDKRouteHint RouteHint_clone(const struct LDKRouteHint *NONNULL_PTR orig); + export function RouteHint_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SemanticError_imprecise_amount(); + const nativeResponseValue = wasm.TS_RouteHint_clone(orig); return nativeResponseValue; } - // bool SemanticError_eq(const enum LDKSemanticError *NONNULL_PTR a, const enum LDKSemanticError *NONNULL_PTR b); - export function SemanticError_eq(a: number, b: number): boolean { + // uint64_t RouteHint_hash(const struct LDKRouteHint *NONNULL_PTR o); + export function RouteHint_hash(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SemanticError_eq(a, b); + const nativeResponseValue = wasm.TS_RouteHint_hash(o); return nativeResponseValue; } - // struct LDKStr SemanticError_to_str(const enum LDKSemanticError *NONNULL_PTR o); - export function SemanticError_to_str(o: number): String { + // bool RouteHint_eq(const struct LDKRouteHint *NONNULL_PTR a, const struct LDKRouteHint *NONNULL_PTR b); + export function RouteHint_eq(a: number, b: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SemanticError_to_str(o); + const nativeResponseValue = wasm.TS_RouteHint_eq(a, b); return nativeResponseValue; } - // void SignOrCreationError_free(struct LDKSignOrCreationError this_ptr); - export function SignOrCreationError_free(this_ptr: number): void { + // struct LDKCVec_u8Z RouteHint_write(const struct LDKRouteHint *NONNULL_PTR obj); + export function RouteHint_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SignOrCreationError_free(this_ptr); - // debug statements here + const nativeResponseValue = wasm.TS_RouteHint_write(obj); + return decodeUint8Array(nativeResponseValue); } - // uint64_t SignOrCreationError_clone_ptr(LDKSignOrCreationError *NONNULL_PTR arg); - export function SignOrCreationError_clone_ptr(arg: number): number { + // struct LDKCResult_RouteHintDecodeErrorZ RouteHint_read(struct LDKu8slice ser); + export function RouteHint_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SignOrCreationError_clone_ptr(arg); + const nativeResponseValue = wasm.TS_RouteHint_read(encodeUint8Array(ser)); return nativeResponseValue; } - // struct LDKSignOrCreationError SignOrCreationError_clone(const struct LDKSignOrCreationError *NONNULL_PTR orig); - export function SignOrCreationError_clone(orig: number): number { + // void RouteHintHop_free(struct LDKRouteHintHop this_obj); + export function RouteHintHop_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SignOrCreationError_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_RouteHintHop_free(this_obj); + // debug statements here } - // struct LDKSignOrCreationError SignOrCreationError_sign_error(void); - export function SignOrCreationError_sign_error(): number { + // struct LDKPublicKey RouteHintHop_get_src_node_id(const struct LDKRouteHintHop *NONNULL_PTR this_ptr); + export function RouteHintHop_get_src_node_id(this_ptr: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SignOrCreationError_sign_error(); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_RouteHintHop_get_src_node_id(this_ptr); + return decodeUint8Array(nativeResponseValue); } - // struct LDKSignOrCreationError SignOrCreationError_creation_error(enum LDKCreationError a); - export function SignOrCreationError_creation_error(a: CreationError): number { + // void RouteHintHop_set_src_node_id(struct LDKRouteHintHop *NONNULL_PTR this_ptr, struct LDKPublicKey val); + export function RouteHintHop_set_src_node_id(this_ptr: number, val: Uint8Array): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SignOrCreationError_creation_error(a); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_RouteHintHop_set_src_node_id(this_ptr, encodeUint8Array(val)); + // debug statements here } - // bool SignOrCreationError_eq(const struct LDKSignOrCreationError *NONNULL_PTR a, const struct LDKSignOrCreationError *NONNULL_PTR b); - export function SignOrCreationError_eq(a: number, b: number): boolean { + // uint64_t RouteHintHop_get_short_channel_id(const struct LDKRouteHintHop *NONNULL_PTR this_ptr); + export function RouteHintHop_get_short_channel_id(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SignOrCreationError_eq(a, b); + const nativeResponseValue = wasm.TS_RouteHintHop_get_short_channel_id(this_ptr); return nativeResponseValue; } - // struct LDKStr SignOrCreationError_to_str(const struct LDKSignOrCreationError *NONNULL_PTR o); - export function SignOrCreationError_to_str(o: number): String { + // void RouteHintHop_set_short_channel_id(struct LDKRouteHintHop *NONNULL_PTR this_ptr, uint64_t val); + export function RouteHintHop_set_short_channel_id(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SignOrCreationError_to_str(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_RouteHintHop_set_short_channel_id(this_ptr, val); + // debug statements here } - // void InvoicePayer_free(struct LDKInvoicePayer this_obj); - export function InvoicePayer_free(this_obj: number): void { + // struct LDKRoutingFees RouteHintHop_get_fees(const struct LDKRouteHintHop *NONNULL_PTR this_ptr); + export function RouteHintHop_get_fees(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InvoicePayer_free(this_obj); - // debug statements here + const nativeResponseValue = wasm.TS_RouteHintHop_get_fees(this_ptr); + return nativeResponseValue; } - // void Payer_free(struct LDKPayer this_ptr); - export function Payer_free(this_ptr: number): void { + // void RouteHintHop_set_fees(struct LDKRouteHintHop *NONNULL_PTR this_ptr, struct LDKRoutingFees val); + export function RouteHintHop_set_fees(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Payer_free(this_ptr); + const nativeResponseValue = wasm.TS_RouteHintHop_set_fees(this_ptr, val); // debug statements here } - // void Router_free(struct LDKRouter this_ptr); - export function Router_free(this_ptr: number): void { + // uint16_t RouteHintHop_get_cltv_expiry_delta(const struct LDKRouteHintHop *NONNULL_PTR this_ptr); + export function RouteHintHop_get_cltv_expiry_delta(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Router_free(this_ptr); - // debug statements here + const nativeResponseValue = wasm.TS_RouteHintHop_get_cltv_expiry_delta(this_ptr); + return nativeResponseValue; } - // void RetryAttempts_free(struct LDKRetryAttempts this_obj); - export function RetryAttempts_free(this_obj: number): void { + // void RouteHintHop_set_cltv_expiry_delta(struct LDKRouteHintHop *NONNULL_PTR this_ptr, uint16_t val); + export function RouteHintHop_set_cltv_expiry_delta(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RetryAttempts_free(this_obj); + const nativeResponseValue = wasm.TS_RouteHintHop_set_cltv_expiry_delta(this_ptr, val); // debug statements here } - // uintptr_t RetryAttempts_get_a(const struct LDKRetryAttempts *NONNULL_PTR this_ptr); - export function RetryAttempts_get_a(this_ptr: number): number { + // struct LDKCOption_u64Z RouteHintHop_get_htlc_minimum_msat(const struct LDKRouteHintHop *NONNULL_PTR this_ptr); + export function RouteHintHop_get_htlc_minimum_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RetryAttempts_get_a(this_ptr); + const nativeResponseValue = wasm.TS_RouteHintHop_get_htlc_minimum_msat(this_ptr); return nativeResponseValue; } - // void RetryAttempts_set_a(struct LDKRetryAttempts *NONNULL_PTR this_ptr, uintptr_t val); - export function RetryAttempts_set_a(this_ptr: number, val: number): void { + // void RouteHintHop_set_htlc_minimum_msat(struct LDKRouteHintHop *NONNULL_PTR this_ptr, struct LDKCOption_u64Z val); + export function RouteHintHop_set_htlc_minimum_msat(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RetryAttempts_set_a(this_ptr, val); + const nativeResponseValue = wasm.TS_RouteHintHop_set_htlc_minimum_msat(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKRetryAttempts RetryAttempts_new(uintptr_t a_arg); - export function RetryAttempts_new(a_arg: number): number { + // struct LDKCOption_u64Z RouteHintHop_get_htlc_maximum_msat(const struct LDKRouteHintHop *NONNULL_PTR this_ptr); + export function RouteHintHop_get_htlc_maximum_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RetryAttempts_new(a_arg); + const nativeResponseValue = wasm.TS_RouteHintHop_get_htlc_maximum_msat(this_ptr); return nativeResponseValue; } - // uint64_t RetryAttempts_clone_ptr(LDKRetryAttempts *NONNULL_PTR arg); - export function RetryAttempts_clone_ptr(arg: number): number { + // void RouteHintHop_set_htlc_maximum_msat(struct LDKRouteHintHop *NONNULL_PTR this_ptr, struct LDKCOption_u64Z val); + export function RouteHintHop_set_htlc_maximum_msat(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RetryAttempts_clone_ptr(arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_RouteHintHop_set_htlc_maximum_msat(this_ptr, val); + // debug statements here } - // struct LDKRetryAttempts RetryAttempts_clone(const struct LDKRetryAttempts *NONNULL_PTR orig); - export function RetryAttempts_clone(orig: number): number { + // MUST_USE_RES struct LDKRouteHintHop RouteHintHop_new(struct LDKPublicKey src_node_id_arg, uint64_t short_channel_id_arg, struct LDKRoutingFees fees_arg, uint16_t cltv_expiry_delta_arg, struct LDKCOption_u64Z htlc_minimum_msat_arg, struct LDKCOption_u64Z htlc_maximum_msat_arg); + export function RouteHintHop_new(src_node_id_arg: Uint8Array, short_channel_id_arg: number, fees_arg: number, cltv_expiry_delta_arg: number, htlc_minimum_msat_arg: number, htlc_maximum_msat_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RetryAttempts_clone(orig); + const nativeResponseValue = wasm.TS_RouteHintHop_new(encodeUint8Array(src_node_id_arg), short_channel_id_arg, fees_arg, cltv_expiry_delta_arg, htlc_minimum_msat_arg, htlc_maximum_msat_arg); return nativeResponseValue; } - // bool RetryAttempts_eq(const struct LDKRetryAttempts *NONNULL_PTR a, const struct LDKRetryAttempts *NONNULL_PTR b); - export function RetryAttempts_eq(a: number, b: number): boolean { + // uint64_t RouteHintHop_clone_ptr(LDKRouteHintHop *NONNULL_PTR arg); + export function RouteHintHop_clone_ptr(arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RetryAttempts_eq(a, b); + const nativeResponseValue = wasm.TS_RouteHintHop_clone_ptr(arg); return nativeResponseValue; } - // uint64_t RetryAttempts_hash(const struct LDKRetryAttempts *NONNULL_PTR o); - export function RetryAttempts_hash(o: number): number { + // struct LDKRouteHintHop RouteHintHop_clone(const struct LDKRouteHintHop *NONNULL_PTR orig); + export function RouteHintHop_clone(orig: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.RetryAttempts_hash(o); + const nativeResponseValue = wasm.TS_RouteHintHop_clone(orig); return nativeResponseValue; } - // void PaymentError_free(struct LDKPaymentError this_ptr); - export function PaymentError_free(this_ptr: number): void { + // uint64_t RouteHintHop_hash(const struct LDKRouteHintHop *NONNULL_PTR o); + export function RouteHintHop_hash(o: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PaymentError_free(this_ptr); - // debug statements here + const nativeResponseValue = wasm.TS_RouteHintHop_hash(o); + return nativeResponseValue; } - // uint64_t PaymentError_clone_ptr(LDKPaymentError *NONNULL_PTR arg); - export function PaymentError_clone_ptr(arg: number): number { + // bool RouteHintHop_eq(const struct LDKRouteHintHop *NONNULL_PTR a, const struct LDKRouteHintHop *NONNULL_PTR b); + export function RouteHintHop_eq(a: number, b: number): boolean { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PaymentError_clone_ptr(arg); + const nativeResponseValue = wasm.TS_RouteHintHop_eq(a, b); return nativeResponseValue; } - // struct LDKPaymentError PaymentError_clone(const struct LDKPaymentError *NONNULL_PTR orig); - export function PaymentError_clone(orig: number): number { + // struct LDKCVec_u8Z RouteHintHop_write(const struct LDKRouteHintHop *NONNULL_PTR obj); + export function RouteHintHop_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PaymentError_clone(orig); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_RouteHintHop_write(obj); + return decodeUint8Array(nativeResponseValue); } - // struct LDKPaymentError PaymentError_invoice(struct LDKStr a); - export function PaymentError_invoice(a: String): number { + // struct LDKCResult_RouteHintHopDecodeErrorZ RouteHintHop_read(struct LDKu8slice ser); + export function RouteHintHop_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PaymentError_invoice(a); + const nativeResponseValue = wasm.TS_RouteHintHop_read(encodeUint8Array(ser)); return nativeResponseValue; } - // struct LDKPaymentError PaymentError_routing(struct LDKLightningError a); - export function PaymentError_routing(a: number): number { + // struct LDKCResult_RouteLightningErrorZ find_route(struct LDKPublicKey our_node_pubkey, const struct LDKRouteParameters *NONNULL_PTR params, const struct LDKNetworkGraph *NONNULL_PTR network, struct LDKCVec_ChannelDetailsZ *first_hops, struct LDKLogger logger, const struct LDKScore *NONNULL_PTR scorer); + export function find_route(our_node_pubkey: Uint8Array, params: number, network: number, first_hops: number[], logger: number, scorer: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PaymentError_routing(a); + const nativeResponseValue = wasm.TS_find_route(encodeUint8Array(our_node_pubkey), params, network, first_hops, logger, scorer); return nativeResponseValue; } - // struct LDKPaymentError PaymentError_sending(struct LDKPaymentSendFailure a); - export function PaymentError_sending(a: number): number { + // void Score_free(struct LDKScore this_ptr); + export function Score_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.PaymentError_sending(a); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_Score_free(this_ptr); + // debug statements here } - // 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 LDKRetryAttempts retry_attempts); - export function InvoicePayer_new(payer: number, router: number, scorer: number, logger: number, event_handler: number, retry_attempts: number): number { + // void LockableScore_free(struct LDKLockableScore this_ptr); + export function LockableScore_free(this_ptr: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InvoicePayer_new(payer, router, scorer, logger, event_handler, retry_attempts); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_LockableScore_free(this_ptr); + // debug statements here } - // MUST_USE_RES struct LDKCResult_PaymentIdPaymentErrorZ InvoicePayer_pay_invoice(const struct LDKInvoicePayer *NONNULL_PTR this_arg, const struct LDKInvoice *NONNULL_PTR invoice); - export function InvoicePayer_pay_invoice(this_arg: number, invoice: number): number { + // void MultiThreadedLockableScore_free(struct LDKMultiThreadedLockableScore this_obj); + export function MultiThreadedLockableScore_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InvoicePayer_pay_invoice(this_arg, invoice); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_MultiThreadedLockableScore_free(this_obj); + // debug statements here } - // 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); - export function InvoicePayer_pay_zero_value_invoice(this_arg: number, invoice: number, amount_msats: number): number { + // MUST_USE_RES struct LDKMultiThreadedLockableScore MultiThreadedLockableScore_new(struct LDKScore score); + export function MultiThreadedLockableScore_new(score: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InvoicePayer_pay_zero_value_invoice(this_arg, invoice, amount_msats); + const nativeResponseValue = wasm.TS_MultiThreadedLockableScore_new(score); 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); - export function InvoicePayer_pay_pubkey(this_arg: number, pubkey: Uint8Array, payment_preimage: Uint8Array, amount_msats: number, final_cltv_expiry_delta: number): number { + // void ScoringParameters_free(struct LDKScoringParameters this_obj); + export function ScoringParameters_free(this_obj: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InvoicePayer_pay_pubkey(this_arg, encodeArray(pubkey), encodeArray(payment_preimage), amount_msats, final_cltv_expiry_delta); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ScoringParameters_free(this_obj); + // debug statements here } - // void InvoicePayer_remove_cached_payment(const struct LDKInvoicePayer *NONNULL_PTR this_arg, const uint8_t (*payment_hash)[32]); - export function InvoicePayer_remove_cached_payment(this_arg: number, payment_hash: Uint8Array): void { + // uint64_t ScoringParameters_get_base_penalty_msat(const struct LDKScoringParameters *NONNULL_PTR this_ptr); + export function ScoringParameters_get_base_penalty_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InvoicePayer_remove_cached_payment(this_arg, encodeArray(payment_hash)); - // debug statements here + const nativeResponseValue = wasm.TS_ScoringParameters_get_base_penalty_msat(this_ptr); + return nativeResponseValue; } - // struct LDKEventHandler InvoicePayer_as_EventHandler(const struct LDKInvoicePayer *NONNULL_PTR this_arg); - export function InvoicePayer_as_EventHandler(this_arg: number): number { + // void ScoringParameters_set_base_penalty_msat(struct LDKScoringParameters *NONNULL_PTR this_ptr, uint64_t val); + export function ScoringParameters_set_base_penalty_msat(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.InvoicePayer_as_EventHandler(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ScoringParameters_set_base_penalty_msat(this_ptr, val); + // debug statements here } - // struct LDKCResult_InvoiceSignOrCreationErrorZ create_invoice_from_channelmanager(const struct LDKChannelManager *NONNULL_PTR channelmanager, struct LDKKeysInterface keys_manager, enum LDKCurrency network, struct LDKCOption_u64Z amt_msat, struct LDKStr description); - export function create_invoice_from_channelmanager(channelmanager: number, keys_manager: number, network: Currency, amt_msat: number, description: String): number { + // uint64_t ScoringParameters_get_failure_penalty_msat(const struct LDKScoringParameters *NONNULL_PTR this_ptr); + export function ScoringParameters_get_failure_penalty_msat(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.create_invoice_from_channelmanager(channelmanager, keys_manager, network, amt_msat, description); + const nativeResponseValue = wasm.TS_ScoringParameters_get_failure_penalty_msat(this_ptr); return nativeResponseValue; } - // void DefaultRouter_free(struct LDKDefaultRouter this_obj); - export function DefaultRouter_free(this_obj: number): void { + // void ScoringParameters_set_failure_penalty_msat(struct LDKScoringParameters *NONNULL_PTR this_ptr, uint64_t val); + export function ScoringParameters_set_failure_penalty_msat(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DefaultRouter_free(this_obj); + const nativeResponseValue = wasm.TS_ScoringParameters_set_failure_penalty_msat(this_ptr, val); // debug statements here } - // MUST_USE_RES struct LDKDefaultRouter DefaultRouter_new(const struct LDKNetworkGraph *NONNULL_PTR network_graph, struct LDKLogger logger); - export function DefaultRouter_new(network_graph: number, logger: number): number { + // uint16_t ScoringParameters_get_overuse_penalty_start_1024th(const struct LDKScoringParameters *NONNULL_PTR this_ptr); + export function ScoringParameters_get_overuse_penalty_start_1024th(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DefaultRouter_new(network_graph, logger); + const nativeResponseValue = wasm.TS_ScoringParameters_get_overuse_penalty_start_1024th(this_ptr); return nativeResponseValue; } - // struct LDKRouter DefaultRouter_as_Router(const struct LDKDefaultRouter *NONNULL_PTR this_arg); - export function DefaultRouter_as_Router(this_arg: number): number { + // void ScoringParameters_set_overuse_penalty_start_1024th(struct LDKScoringParameters *NONNULL_PTR this_ptr, uint16_t val); + export function ScoringParameters_set_overuse_penalty_start_1024th(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.DefaultRouter_as_Router(this_arg); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ScoringParameters_set_overuse_penalty_start_1024th(this_ptr, val); + // debug statements here } - // struct LDKPayer ChannelManager_as_Payer(const struct LDKChannelManager *NONNULL_PTR this_arg); - export function ChannelManager_as_Payer(this_arg: number): number { + // uint64_t ScoringParameters_get_overuse_penalty_msat_per_1024th(const struct LDKScoringParameters *NONNULL_PTR this_ptr); + export function ScoringParameters_get_overuse_penalty_msat_per_1024th(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.ChannelManager_as_Payer(this_arg); + const nativeResponseValue = wasm.TS_ScoringParameters_get_overuse_penalty_msat_per_1024th(this_ptr); return nativeResponseValue; } - // struct LDKCResult_SiPrefixNoneZ SiPrefix_from_str(struct LDKStr s); - export function SiPrefix_from_str(s: String): number { + // void ScoringParameters_set_overuse_penalty_msat_per_1024th(struct LDKScoringParameters *NONNULL_PTR this_ptr, uint64_t val); + export function ScoringParameters_set_overuse_penalty_msat_per_1024th(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SiPrefix_from_str(s); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ScoringParameters_set_overuse_penalty_msat_per_1024th(this_ptr, val); + // debug statements here } - // struct LDKCResult_InvoiceNoneZ Invoice_from_str(struct LDKStr s); - export function Invoice_from_str(s: String): number { + // uint64_t ScoringParameters_get_failure_penalty_half_life(const struct LDKScoringParameters *NONNULL_PTR this_ptr); + export function ScoringParameters_get_failure_penalty_half_life(this_ptr: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Invoice_from_str(s); + const nativeResponseValue = wasm.TS_ScoringParameters_get_failure_penalty_half_life(this_ptr); return nativeResponseValue; } - // struct LDKCResult_SignedRawInvoiceNoneZ SignedRawInvoice_from_str(struct LDKStr s); - export function SignedRawInvoice_from_str(s: String): number { + // void ScoringParameters_set_failure_penalty_half_life(struct LDKScoringParameters *NONNULL_PTR this_ptr, uint64_t val); + export function ScoringParameters_set_failure_penalty_half_life(this_ptr: number, val: number): void { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SignedRawInvoice_from_str(s); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ScoringParameters_set_failure_penalty_half_life(this_ptr, val); + // debug statements here } - // struct LDKStr Invoice_to_str(const struct LDKInvoice *NONNULL_PTR o); - export function Invoice_to_str(o: number): String { + // MUST_USE_RES struct LDKScoringParameters ScoringParameters_new(uint64_t base_penalty_msat_arg, uint64_t failure_penalty_msat_arg, uint16_t overuse_penalty_start_1024th_arg, uint64_t overuse_penalty_msat_per_1024th_arg, uint64_t failure_penalty_half_life_arg); + export function ScoringParameters_new(base_penalty_msat_arg: number, failure_penalty_msat_arg: number, overuse_penalty_start_1024th_arg: number, overuse_penalty_msat_per_1024th_arg: number, failure_penalty_half_life_arg: number): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Invoice_to_str(o); + const nativeResponseValue = wasm.TS_ScoringParameters_new(base_penalty_msat_arg, failure_penalty_msat_arg, overuse_penalty_start_1024th_arg, overuse_penalty_msat_per_1024th_arg, failure_penalty_half_life_arg); return nativeResponseValue; } - // struct LDKStr SignedRawInvoice_to_str(const struct LDKSignedRawInvoice *NONNULL_PTR o); - export function SignedRawInvoice_to_str(o: number): String { + // struct LDKCVec_u8Z ScoringParameters_write(const struct LDKScoringParameters *NONNULL_PTR obj); + export function ScoringParameters_write(obj: number): Uint8Array { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SignedRawInvoice_to_str(o); - return nativeResponseValue; + const nativeResponseValue = wasm.TS_ScoringParameters_write(obj); + return decodeUint8Array(nativeResponseValue); } - // struct LDKStr Currency_to_str(const enum LDKCurrency *NONNULL_PTR o); - export function Currency_to_str(o: number): String { + // struct LDKCResult_ScoringParametersDecodeErrorZ ScoringParameters_read(struct LDKu8slice ser); + export function ScoringParameters_read(ser: Uint8Array): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.Currency_to_str(o); + const nativeResponseValue = wasm.TS_ScoringParameters_read(encodeUint8Array(ser)); return nativeResponseValue; } - // struct LDKStr SiPrefix_to_str(const enum LDKSiPrefix *NONNULL_PTR o); - export function SiPrefix_to_str(o: number): String { + // MUST_USE_RES struct LDKScoringParameters ScoringParameters_default(void); + export function ScoringParameters_default(): number { if(!isWasmInitialized) { throw new Error("initializeWasm() must be awaited first!"); } - const nativeResponseValue = wasm.SiPrefix_to_str(o); + const nativeResponseValue = wasm.TS_ScoringParameters_default(); return nativeResponseValue; } - - export async function initializeWasm(allowDoubleInitialization: boolean = false): Promise { - if(isWasmInitialized && !allowDoubleInitialization) { - return; - } - const wasmInstance = await WebAssembly.instantiate(wasmModule, imports) - wasm = wasmInstance.exports; - isWasmInitialized = true; - } - \ No newline at end of file diff --git a/ts/enums/AccessError.mts b/ts/enums/AccessError.mts new file mode 100644 index 00000000..d5c8f55d --- /dev/null +++ b/ts/enums/AccessError.mts @@ -0,0 +1 @@ +export { AccessError } from "../bindings.mjs"; \ No newline at end of file diff --git a/ts/enums/AccessError.ts b/ts/enums/AccessError.ts deleted file mode 100644 index fcbdf0f7..00000000 --- a/ts/enums/AccessError.ts +++ /dev/null @@ -1,12 +0,0 @@ - - export enum AccessError { - /** - * The requested chain is unknown. - */ -LDKAccessError_UnknownChain, - /** - * The requested transaction doesn't exist or hasn't confirmed. - */ -LDKAccessError_UnknownTx, - - } diff --git a/ts/enums/COption_NoneZ.mts b/ts/enums/COption_NoneZ.mts new file mode 100644 index 00000000..04928b6e --- /dev/null +++ b/ts/enums/COption_NoneZ.mts @@ -0,0 +1 @@ +export { COption_NoneZ } from "../bindings.mjs"; \ No newline at end of file diff --git a/ts/enums/COption_NoneZ.ts b/ts/enums/COption_NoneZ.ts deleted file mode 100644 index f8ebffce..00000000 --- a/ts/enums/COption_NoneZ.ts +++ /dev/null @@ -1,12 +0,0 @@ - - export enum COption_NoneZ { - /** - * When we're in this state, this COption_NoneZ contains a - */ -LDKCOption_NoneZ_Some, - /** - * When we're in this state, this COption_NoneZ contains nothing - */ -LDKCOption_NoneZ_None, - - } diff --git a/ts/enums/ChannelMonitorUpdateErr.mts b/ts/enums/ChannelMonitorUpdateErr.mts new file mode 100644 index 00000000..d521a845 --- /dev/null +++ b/ts/enums/ChannelMonitorUpdateErr.mts @@ -0,0 +1 @@ +export { ChannelMonitorUpdateErr } from "../bindings.mjs"; \ No newline at end of file diff --git a/ts/enums/ChannelMonitorUpdateErr.ts b/ts/enums/ChannelMonitorUpdateErr.ts deleted file mode 100644 index 0e32c6e8..00000000 --- a/ts/enums/ChannelMonitorUpdateErr.ts +++ /dev/null @@ -1,68 +0,0 @@ - - export enum ChannelMonitorUpdateErr { - /** - * 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. - -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. - -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\". - -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. - -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. - -[`ChainMonitor::channel_monitor_updated`]: chainmonitor::ChainMonitor::channel_monitor_updated - */ -LDKChannelMonitorUpdateErr_TemporaryFailure, - /** - * 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). - -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. - -This failure may also signal a failure to update the local persisted copy of one of -the channel monitor instance. - -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) - -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. - */ -LDKChannelMonitorUpdateErr_PermanentFailure, - - } diff --git a/ts/enums/ConfirmationTarget.mts b/ts/enums/ConfirmationTarget.mts new file mode 100644 index 00000000..749a4691 --- /dev/null +++ b/ts/enums/ConfirmationTarget.mts @@ -0,0 +1 @@ +export { ConfirmationTarget } from "../bindings.mjs"; \ No newline at end of file diff --git a/ts/enums/ConfirmationTarget.ts b/ts/enums/ConfirmationTarget.ts deleted file mode 100644 index 25afe797..00000000 --- a/ts/enums/ConfirmationTarget.ts +++ /dev/null @@ -1,16 +0,0 @@ - - export enum ConfirmationTarget { - /** - * We are happy with this transaction confirming slowly when feerate drops some. - */ -LDKConfirmationTarget_Background, - /** - * We'd like this transaction to confirm without major delay, but 12-18 blocks is fine. - */ -LDKConfirmationTarget_Normal, - /** - * We'd like this transaction to confirm in the next few blocks. - */ -LDKConfirmationTarget_HighPriority, - - } diff --git a/ts/enums/CreationError.ts b/ts/enums/CreationError.ts deleted file mode 100644 index ac012800..00000000 --- a/ts/enums/CreationError.ts +++ /dev/null @@ -1,24 +0,0 @@ - - export enum CreationError { - /** - * The supplied description string was longer than 639 __bytes__ (see [`Description::new(...)`](./struct.Description.html#method.new)) - */ -LDKCreationError_DescriptionTooLong, - /** - * The specified route has too many hops and can't be encoded - */ -LDKCreationError_RouteTooLong, - /** - * The unix timestamp of the supplied date is <0 or can't be represented as `SystemTime` - */ -LDKCreationError_TimestampOutOfBounds, - /** - * The supplied expiry time could cause an overflow if added to a `PositiveTimestamp` - */ -LDKCreationError_ExpiryTimeOutOfBounds, - /** - * The supplied millisatoshi amount was greater than the total bitcoin supply. - */ -LDKCreationError_InvalidAmount, - - } diff --git a/ts/enums/Currency.ts b/ts/enums/Currency.ts deleted file mode 100644 index c8a63787..00000000 --- a/ts/enums/Currency.ts +++ /dev/null @@ -1,24 +0,0 @@ - - export enum Currency { - /** - * Bitcoin mainnet - */ -LDKCurrency_Bitcoin, - /** - * Bitcoin testnet - */ -LDKCurrency_BitcoinTestnet, - /** - * Bitcoin regtest - */ -LDKCurrency_Regtest, - /** - * Bitcoin simnet - */ -LDKCurrency_Simnet, - /** - * Bitcoin signet - */ -LDKCurrency_Signet, - - } diff --git a/ts/enums/IOError.ts b/ts/enums/IOError.ts deleted file mode 100644 index d5d1835b..00000000 --- a/ts/enums/IOError.ts +++ /dev/null @@ -1,22 +0,0 @@ - - export enum IOError { - LDKIOError_NotFound, - LDKIOError_PermissionDenied, - LDKIOError_ConnectionRefused, - LDKIOError_ConnectionReset, - LDKIOError_ConnectionAborted, - LDKIOError_NotConnected, - LDKIOError_AddrInUse, - LDKIOError_AddrNotAvailable, - LDKIOError_BrokenPipe, - LDKIOError_AlreadyExists, - LDKIOError_WouldBlock, - LDKIOError_InvalidInput, - LDKIOError_InvalidData, - LDKIOError_TimedOut, - LDKIOError_WriteZero, - LDKIOError_Interrupted, - LDKIOError_Other, - LDKIOError_UnexpectedEof, - - } diff --git a/ts/enums/Level.mts b/ts/enums/Level.mts new file mode 100644 index 00000000..2c8bf906 --- /dev/null +++ b/ts/enums/Level.mts @@ -0,0 +1 @@ +export { Level } from "../bindings.mjs"; \ No newline at end of file diff --git a/ts/enums/Level.ts b/ts/enums/Level.ts deleted file mode 100644 index 0cea0fc5..00000000 --- a/ts/enums/Level.ts +++ /dev/null @@ -1,28 +0,0 @@ - - export enum Level { - /** - * Designates extremely verbose information, including gossip-induced messages - */ -LDKLevel_Gossip, - /** - * Designates very low priority, often extremely verbose, information - */ -LDKLevel_Trace, - /** - * Designates lower priority information - */ -LDKLevel_Debug, - /** - * Designates useful information - */ -LDKLevel_Info, - /** - * Designates hazardous situations - */ -LDKLevel_Warn, - /** - * Designates very serious errors - */ -LDKLevel_Error, - - } diff --git a/ts/enums/Network.mts b/ts/enums/Network.mts new file mode 100644 index 00000000..a97634ac --- /dev/null +++ b/ts/enums/Network.mts @@ -0,0 +1 @@ +export { Network } from "../bindings.mjs"; \ No newline at end of file diff --git a/ts/enums/Network.ts b/ts/enums/Network.ts deleted file mode 100644 index c871fadc..00000000 --- a/ts/enums/Network.ts +++ /dev/null @@ -1,20 +0,0 @@ - - export enum Network { - /** - * The main Bitcoin blockchain. - */ -LDKNetwork_Bitcoin, - /** - * The testnet3 blockchain. - */ -LDKNetwork_Testnet, - /** - * A local test blockchain. - */ -LDKNetwork_Regtest, - /** - * A blockchain on which blocks are signed instead of mined. - */ -LDKNetwork_Signet, - - } diff --git a/ts/enums/Secp256k1Error.mts b/ts/enums/Secp256k1Error.mts new file mode 100644 index 00000000..88fef5fa --- /dev/null +++ b/ts/enums/Secp256k1Error.mts @@ -0,0 +1 @@ +export { Secp256k1Error } from "../bindings.mjs"; \ No newline at end of file diff --git a/ts/enums/Secp256k1Error.ts b/ts/enums/Secp256k1Error.ts deleted file mode 100644 index eef54a9b..00000000 --- a/ts/enums/Secp256k1Error.ts +++ /dev/null @@ -1,40 +0,0 @@ - - export enum Secp256k1Error { - /** - * Signature failed verification - */ -LDKSecp256k1Error_IncorrectSignature, - /** - * Badly sized message ("messages" are actually fixed-sized digests; see the MESSAGE_SIZE constant) - */ -LDKSecp256k1Error_InvalidMessage, - /** - * Bad public key - */ -LDKSecp256k1Error_InvalidPublicKey, - /** - * Bad signature - */ -LDKSecp256k1Error_InvalidSignature, - /** - * Bad secret key - */ -LDKSecp256k1Error_InvalidSecretKey, - /** - * Bad recovery id - */ -LDKSecp256k1Error_InvalidRecoveryId, - /** - * Invalid tweak for add_assign or mul_assign - */ -LDKSecp256k1Error_InvalidTweak, - /** - * tweak_add_check failed on an xonly public key - */ -LDKSecp256k1Error_TweakCheckFailed, - /** - * Didn't pass enough memory to context creation with preallocated memory - */ -LDKSecp256k1Error_NotEnoughMemory, - - } diff --git a/ts/enums/SemanticError.ts b/ts/enums/SemanticError.ts deleted file mode 100644 index ea1655f9..00000000 --- a/ts/enums/SemanticError.ts +++ /dev/null @@ -1,45 +0,0 @@ - - export enum SemanticError { - /** - * The invoice is missing the mandatory payment hash - */ -LDKSemanticError_NoPaymentHash, - /** - * The invoice has multiple payment hashes which isn't allowed - */ -LDKSemanticError_MultiplePaymentHashes, - /** - * No description or description hash are part of the invoice - */ -LDKSemanticError_NoDescription, - /** - * The invoice contains multiple descriptions and/or description hashes which isn't allowed - */ -LDKSemanticError_MultipleDescriptions, - /** - * The invoice is missing the mandatory payment secret, which all modern lightning nodes -should provide. - */ -LDKSemanticError_NoPaymentSecret, - /** - * The invoice contains multiple payment secrets - */ -LDKSemanticError_MultiplePaymentSecrets, - /** - * The invoice's features are invalid - */ -LDKSemanticError_InvalidFeatures, - /** - * The recovery id doesn't fit the signature/pub key - */ -LDKSemanticError_InvalidRecoveryId, - /** - * The invoice's signature is invalid - */ -LDKSemanticError_InvalidSignature, - /** - * The invoice's amount was not a whole number of millisatoshis - */ -LDKSemanticError_ImpreciseAmount, - - } diff --git a/ts/enums/SiPrefix.ts b/ts/enums/SiPrefix.ts deleted file mode 100644 index 5f25c853..00000000 --- a/ts/enums/SiPrefix.ts +++ /dev/null @@ -1,20 +0,0 @@ - - export enum SiPrefix { - /** - * 10^-3 - */ -LDKSiPrefix_Milli, - /** - * 10^-6 - */ -LDKSiPrefix_Micro, - /** - * 10^-9 - */ -LDKSiPrefix_Nano, - /** - * 10^-12 - */ -LDKSiPrefix_Pico, - - } diff --git a/ts/node/fs.d.ts b/ts/node/fs.d.ts index af20d139..76792ddd 100755 --- a/ts/node/fs.d.ts +++ b/ts/node/fs.d.ts @@ -1,5 +1,5 @@ -// Minimal subset of the node 'fs' library that we depend on. -// May be (c) Microsoft licensed under the MIT license, but API's are generally not copyrightable per recent precedent. +// Minimal part of the Node fs API which we depend on. +// May be (c) Microsoft licensed under the MIT license, however API's are not generally copyrightable per recent precedent. declare module 'fs' { export type PathLike = string | Buffer | URL; export type PathOrFileDescriptor = PathLike | number; diff --git a/ts/node/index.d.ts b/ts/node/index.d.ts index 516375fd..110c3060 100755 --- a/ts/node/index.d.ts +++ b/ts/node/index.d.ts @@ -1,3 +1,3 @@ -// Minimal subset of the node 'fs' library that we depend on. -// May be (c) Microsoft licensed under the MIT license, but API's are generally not copyrightable per recent precedent. +// Minimal part of the Node fs API which we depend on. +// May be (c) Microsoft licensed under the MIT license, however API's are not generally copyrightable per recent precedent. /// diff --git a/ts/structs/APIError.ts b/ts/structs/APIError.ts deleted file mode 100644 index 61fdaef0..00000000 --- a/ts/structs/APIError.ts +++ /dev/null @@ -1,134 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class APIError extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.APIError_free(this.ptr); } - } - static constr_from_ptr(ptr: number): APIError { - const raw_val: bindings.LDKAPIError = bindings.LDKAPIError_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKAPIError.APIMisuseError) { - return new APIMisuseError(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKAPIError.FeeRateTooHigh) { - return new FeeRateTooHigh(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKAPIError.RouteError) { - return new RouteError(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKAPIError.ChannelUnavailable) { - return new ChannelUnavailable(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKAPIError.MonitorUpdateFailed) { - return new MonitorUpdateFailed(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKAPIError.IncompatibleShutdownScript) { - return new IncompatibleShutdownScript(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class APIMisuseError extends APIError { - public err: String; - private constructor(ptr: number, obj: bindings.LDKAPIError.APIMisuseError) { - super(null, ptr); - this.err = obj.err; - } -} -export class FeeRateTooHigh extends APIError { - public err: String; - public feerate: number; - private constructor(ptr: number, obj: bindings.LDKAPIError.FeeRateTooHigh) { - super(null, ptr); - this.err = obj.err; - this.feerate = obj.feerate; - } -} -export class RouteError extends APIError { - public err: String; - private constructor(ptr: number, obj: bindings.LDKAPIError.RouteError) { - super(null, ptr); - this.err = obj.err; - } -} -export class ChannelUnavailable extends APIError { - public err: String; - private constructor(ptr: number, obj: bindings.LDKAPIError.ChannelUnavailable) { - super(null, ptr); - this.err = obj.err; - } -} -export class MonitorUpdateFailed extends APIError { - private constructor(ptr: number, obj: bindings.LDKAPIError.MonitorUpdateFailed) { - super(null, ptr); - } -} -export class IncompatibleShutdownScript extends APIError { - public script: ShutdownScript; - private constructor(ptr: number, obj: bindings.LDKAPIError.IncompatibleShutdownScript) { - super(null, ptr); - const script: number = obj.script; - const script_hu_conv: ShutdownScript = new ShutdownScript(null, script); - script_hu_conv.ptrs_to.add(this); - this.script = script_hu_conv; - } -} - public number clone_ptr() { - number ret = bindings.APIError_clone_ptr(this.ptr); - return ret; - } - - public APIError clone() { - number ret = bindings.APIError_clone(this.ptr); - APIError ret_hu_conv = APIError.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static APIError constructor_apimisuse_error(String err) { - number ret = bindings.APIError_apimisuse_error(err); - APIError ret_hu_conv = APIError.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static APIError constructor_fee_rate_too_high(String err, number feerate) { - number ret = bindings.APIError_fee_rate_too_high(err, feerate); - APIError ret_hu_conv = APIError.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static APIError constructor_route_error(String err) { - number ret = bindings.APIError_route_error(err); - APIError ret_hu_conv = APIError.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static APIError constructor_channel_unavailable(String err) { - number ret = bindings.APIError_channel_unavailable(err); - APIError ret_hu_conv = APIError.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static APIError constructor_monitor_update_failed() { - number ret = bindings.APIError_monitor_update_failed(); - APIError ret_hu_conv = APIError.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static APIError constructor_incompatible_shutdown_script(ShutdownScript script) { - number ret = bindings.APIError_incompatible_shutdown_script(script == null ? 0 : script.ptr & ~1); - APIError ret_hu_conv = APIError.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - -} diff --git a/ts/structs/AcceptChannel.ts b/ts/structs/AcceptChannel.ts deleted file mode 100644 index 4e102c77..00000000 --- a/ts/structs/AcceptChannel.ts +++ /dev/null @@ -1,170 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class AcceptChannel extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.AcceptChannel_free(this.ptr); - } - } - public Uint8Array get_temporary_channel_id() { - Uint8Array ret = bindings.AcceptChannel_get_temporary_channel_id(this.ptr); - return ret; - } - - public void set_temporary_channel_id(Uint8Array val) { - bindings.AcceptChannel_set_temporary_channel_id(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public number get_dust_limit_satoshis() { - number ret = bindings.AcceptChannel_get_dust_limit_satoshis(this.ptr); - return ret; - } - - public void set_dust_limit_satoshis(number val) { - bindings.AcceptChannel_set_dust_limit_satoshis(this.ptr, val); - } - - public number get_max_htlc_value_in_flight_msat() { - number ret = bindings.AcceptChannel_get_max_htlc_value_in_flight_msat(this.ptr); - return ret; - } - - public void set_max_htlc_value_in_flight_msat(number val) { - bindings.AcceptChannel_set_max_htlc_value_in_flight_msat(this.ptr, val); - } - - public number get_channel_reserve_satoshis() { - number ret = bindings.AcceptChannel_get_channel_reserve_satoshis(this.ptr); - return ret; - } - - public void set_channel_reserve_satoshis(number val) { - bindings.AcceptChannel_set_channel_reserve_satoshis(this.ptr, val); - } - - public number get_htlc_minimum_msat() { - number ret = bindings.AcceptChannel_get_htlc_minimum_msat(this.ptr); - return ret; - } - - public void set_htlc_minimum_msat(number val) { - bindings.AcceptChannel_set_htlc_minimum_msat(this.ptr, val); - } - - public number get_minimum_depth() { - number ret = bindings.AcceptChannel_get_minimum_depth(this.ptr); - return ret; - } - - public void set_minimum_depth(number val) { - bindings.AcceptChannel_set_minimum_depth(this.ptr, val); - } - - public number get_to_self_delay() { - number ret = bindings.AcceptChannel_get_to_self_delay(this.ptr); - return ret; - } - - public void set_to_self_delay(number val) { - bindings.AcceptChannel_set_to_self_delay(this.ptr, val); - } - - public number get_max_accepted_htlcs() { - number ret = bindings.AcceptChannel_get_max_accepted_htlcs(this.ptr); - return ret; - } - - public void set_max_accepted_htlcs(number val) { - bindings.AcceptChannel_set_max_accepted_htlcs(this.ptr, val); - } - - public Uint8Array get_funding_pubkey() { - Uint8Array ret = bindings.AcceptChannel_get_funding_pubkey(this.ptr); - return ret; - } - - public void set_funding_pubkey(Uint8Array val) { - bindings.AcceptChannel_set_funding_pubkey(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public Uint8Array get_revocation_basepoint() { - Uint8Array ret = bindings.AcceptChannel_get_revocation_basepoint(this.ptr); - return ret; - } - - public void set_revocation_basepoint(Uint8Array val) { - bindings.AcceptChannel_set_revocation_basepoint(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public Uint8Array get_payment_point() { - Uint8Array ret = bindings.AcceptChannel_get_payment_point(this.ptr); - return ret; - } - - public void set_payment_point(Uint8Array val) { - bindings.AcceptChannel_set_payment_point(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public Uint8Array get_delayed_payment_basepoint() { - Uint8Array ret = bindings.AcceptChannel_get_delayed_payment_basepoint(this.ptr); - return ret; - } - - public void set_delayed_payment_basepoint(Uint8Array val) { - bindings.AcceptChannel_set_delayed_payment_basepoint(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public Uint8Array get_htlc_basepoint() { - Uint8Array ret = bindings.AcceptChannel_get_htlc_basepoint(this.ptr); - return ret; - } - - public void set_htlc_basepoint(Uint8Array val) { - bindings.AcceptChannel_set_htlc_basepoint(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public Uint8Array get_first_per_commitment_point() { - Uint8Array ret = bindings.AcceptChannel_get_first_per_commitment_point(this.ptr); - return ret; - } - - public void set_first_per_commitment_point(Uint8Array val) { - bindings.AcceptChannel_set_first_per_commitment_point(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public number clone_ptr() { - number ret = bindings.AcceptChannel_clone_ptr(this.ptr); - return ret; - } - - public AcceptChannel clone() { - number ret = bindings.AcceptChannel_clone(this.ptr); - const ret_hu_conv: AcceptChannel = new AcceptChannel(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.AcceptChannel_write(this.ptr); - return ret; - } - - public static Result_AcceptChannelDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.AcceptChannel_read(ser); - Result_AcceptChannelDecodeErrorZ ret_hu_conv = Result_AcceptChannelDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Access.ts b/ts/structs/Access.ts deleted file mode 100644 index ccb20fb0..00000000 --- a/ts/structs/Access.ts +++ /dev/null @@ -1,61 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export class Access extends CommonBase { - - bindings_instance?: bindings.LDKAccess; - - constructor(ptr?: number, arg?: bindings.LDKAccess) { - if (Number.isFinite(ptr)) { - super(ptr); - this.bindings_instance = null; - } else { - // TODO: private constructor instantiation - super(bindings.LDKAccess_new(arg)); - this.ptrs_to.push(arg); - - } - } - - protected finalize() { - if (this.ptr != 0) { - bindings.Access_free(this.ptr); - } - super.finalize(); - } - - static new_impl(arg: AccessInterface): Access { - const impl_holder: LDKAccessHolder = new LDKAccessHolder(); - let structImplementation = { - // todo: in-line interface filling - get_utxo (genesis_hash: Uint8Array, short_channel_id: number): number { - Result_TxOutAccessErrorZ ret = arg.get_utxo(genesis_hash, short_channel_id); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - - }; - impl_holder.held = new Access (null, structImplementation); - } - } - - export interface AccessInterface { - get_utxo(genesis_hash: Uint8Array, short_channel_id: number): Result_TxOutAccessErrorZ; - - } - - class LDKAccessHolder { - held: Access; - } - public Result_TxOutAccessErrorZ get_utxo(Uint8Array genesis_hash, number short_channel_id) { - number ret = bindings.Access_get_utxo(this.ptr, InternalUtils.check_arr_len(genesis_hash, 32), short_channel_id); - Result_TxOutAccessErrorZ ret_hu_conv = Result_TxOutAccessErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/AnnouncementSignatures.ts b/ts/structs/AnnouncementSignatures.ts deleted file mode 100644 index 808cd55e..00000000 --- a/ts/structs/AnnouncementSignatures.ts +++ /dev/null @@ -1,87 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class AnnouncementSignatures extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.AnnouncementSignatures_free(this.ptr); - } - } - public Uint8Array get_channel_id() { - Uint8Array ret = bindings.AnnouncementSignatures_get_channel_id(this.ptr); - return ret; - } - - public void set_channel_id(Uint8Array val) { - bindings.AnnouncementSignatures_set_channel_id(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public number get_short_channel_id() { - number ret = bindings.AnnouncementSignatures_get_short_channel_id(this.ptr); - return ret; - } - - public void set_short_channel_id(number val) { - bindings.AnnouncementSignatures_set_short_channel_id(this.ptr, val); - } - - public Uint8Array get_node_signature() { - Uint8Array ret = bindings.AnnouncementSignatures_get_node_signature(this.ptr); - return ret; - } - - public void set_node_signature(Uint8Array val) { - bindings.AnnouncementSignatures_set_node_signature(this.ptr, InternalUtils.check_arr_len(val, 64)); - } - - public Uint8Array get_bitcoin_signature() { - Uint8Array ret = bindings.AnnouncementSignatures_get_bitcoin_signature(this.ptr); - return ret; - } - - public void set_bitcoin_signature(Uint8Array val) { - bindings.AnnouncementSignatures_set_bitcoin_signature(this.ptr, InternalUtils.check_arr_len(val, 64)); - } - - public static AnnouncementSignatures constructor_new(Uint8Array channel_id_arg, number short_channel_id_arg, Uint8Array node_signature_arg, Uint8Array bitcoin_signature_arg) { - number ret = bindings.AnnouncementSignatures_new(InternalUtils.check_arr_len(channel_id_arg, 32), short_channel_id_arg, InternalUtils.check_arr_len(node_signature_arg, 64), InternalUtils.check_arr_len(bitcoin_signature_arg, 64)); - const ret_hu_conv: AnnouncementSignatures = new AnnouncementSignatures(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.AnnouncementSignatures_clone_ptr(this.ptr); - return ret; - } - - public AnnouncementSignatures clone() { - number ret = bindings.AnnouncementSignatures_clone(this.ptr); - const ret_hu_conv: AnnouncementSignatures = new AnnouncementSignatures(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.AnnouncementSignatures_write(this.ptr); - return ret; - } - - public static Result_AnnouncementSignaturesDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.AnnouncementSignatures_read(ser); - Result_AnnouncementSignaturesDecodeErrorZ ret_hu_conv = Result_AnnouncementSignaturesDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/BackgroundProcessor.ts b/ts/structs/BackgroundProcessor.ts deleted file mode 100644 index 8f3ffdcb..00000000 --- a/ts/structs/BackgroundProcessor.ts +++ /dev/null @@ -1,47 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class BackgroundProcessor extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.BackgroundProcessor_free(this.ptr); - } - } - public static BackgroundProcessor constructor_start(ChannelManagerPersister persister, EventHandler event_handler, ChainMonitor chain_monitor, ChannelManager channel_manager, NetGraphMsgHandler net_graph_msg_handler, PeerManager peer_manager, Logger logger) { - number ret = bindings.BackgroundProcessor_start(persister == null ? 0 : persister.ptr, event_handler == null ? 0 : event_handler.ptr, chain_monitor == null ? 0 : chain_monitor.ptr & ~1, channel_manager == null ? 0 : channel_manager.ptr & ~1, net_graph_msg_handler == null ? 0 : net_graph_msg_handler.ptr & ~1, peer_manager == null ? 0 : peer_manager.ptr & ~1, logger == null ? 0 : logger.ptr); - const ret_hu_conv: BackgroundProcessor = new BackgroundProcessor(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - ret_hu_conv.ptrs_to.add(persister); - ret_hu_conv.ptrs_to.add(event_handler); - ret_hu_conv.ptrs_to.add(chain_monitor); - ret_hu_conv.ptrs_to.add(channel_manager); - ret_hu_conv.ptrs_to.add(net_graph_msg_handler); - ret_hu_conv.ptrs_to.add(peer_manager); - ret_hu_conv.ptrs_to.add(logger); - return ret_hu_conv; - } - - public Result_NoneErrorZ join() { - number ret = bindings.BackgroundProcessor_join(this.ptr); - Result_NoneErrorZ ret_hu_conv = Result_NoneErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public Result_NoneErrorZ stop() { - number ret = bindings.BackgroundProcessor_stop(this.ptr); - Result_NoneErrorZ ret_hu_conv = Result_NoneErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Balance.ts b/ts/structs/Balance.ts deleted file mode 100644 index c76978e0..00000000 --- a/ts/structs/Balance.ts +++ /dev/null @@ -1,108 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class Balance extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.Balance_free(this.ptr); } - } - static constr_from_ptr(ptr: number): Balance { - const raw_val: bindings.LDKBalance = bindings.LDKBalance_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKBalance.ClaimableOnChannelClose) { - return new ClaimableOnChannelClose(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKBalance.ClaimableAwaitingConfirmations) { - return new ClaimableAwaitingConfirmations(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKBalance.ContentiousClaimable) { - return new ContentiousClaimable(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKBalance.MaybeClaimableHTLCAwaitingTimeout) { - return new MaybeClaimableHTLCAwaitingTimeout(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class ClaimableOnChannelClose extends Balance { - public claimable_amount_satoshis: number; - private constructor(ptr: number, obj: bindings.LDKBalance.ClaimableOnChannelClose) { - super(null, ptr); - this.claimable_amount_satoshis = obj.claimable_amount_satoshis; - } -} -export class ClaimableAwaitingConfirmations extends Balance { - public claimable_amount_satoshis: number; - public confirmation_height: number; - private constructor(ptr: number, obj: bindings.LDKBalance.ClaimableAwaitingConfirmations) { - super(null, ptr); - this.claimable_amount_satoshis = obj.claimable_amount_satoshis; - this.confirmation_height = obj.confirmation_height; - } -} -export class ContentiousClaimable extends Balance { - public claimable_amount_satoshis: number; - public timeout_height: number; - private constructor(ptr: number, obj: bindings.LDKBalance.ContentiousClaimable) { - super(null, ptr); - this.claimable_amount_satoshis = obj.claimable_amount_satoshis; - this.timeout_height = obj.timeout_height; - } -} -export class MaybeClaimableHTLCAwaitingTimeout extends Balance { - public claimable_amount_satoshis: number; - public claimable_height: number; - private constructor(ptr: number, obj: bindings.LDKBalance.MaybeClaimableHTLCAwaitingTimeout) { - super(null, ptr); - this.claimable_amount_satoshis = obj.claimable_amount_satoshis; - this.claimable_height = obj.claimable_height; - } -} - public number clone_ptr() { - number ret = bindings.Balance_clone_ptr(this.ptr); - return ret; - } - - public Balance clone() { - number ret = bindings.Balance_clone(this.ptr); - Balance ret_hu_conv = Balance.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static Balance constructor_claimable_on_channel_close(number claimable_amount_satoshis) { - number ret = bindings.Balance_claimable_on_channel_close(claimable_amount_satoshis); - Balance ret_hu_conv = Balance.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Balance constructor_claimable_awaiting_confirmations(number claimable_amount_satoshis, number confirmation_height) { - number ret = bindings.Balance_claimable_awaiting_confirmations(claimable_amount_satoshis, confirmation_height); - Balance ret_hu_conv = Balance.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Balance constructor_contentious_claimable(number claimable_amount_satoshis, number timeout_height) { - number ret = bindings.Balance_contentious_claimable(claimable_amount_satoshis, timeout_height); - Balance ret_hu_conv = Balance.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Balance constructor_maybe_claimable_htlcawaiting_timeout(number claimable_amount_satoshis, number claimable_height) { - number ret = bindings.Balance_maybe_claimable_htlcawaiting_timeout(claimable_amount_satoshis, claimable_height); - Balance ret_hu_conv = Balance.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public boolean eq(Balance b) { - boolean ret = bindings.Balance_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - return ret; - } - -} diff --git a/ts/structs/BaseSign.ts b/ts/structs/BaseSign.ts deleted file mode 100644 index b76963c7..00000000 --- a/ts/structs/BaseSign.ts +++ /dev/null @@ -1,233 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export class BaseSign extends CommonBase { - - bindings_instance?: bindings.LDKBaseSign; - - constructor(ptr?: number, arg?: bindings.LDKBaseSign, pubkeys?: ChannelPublicKeys) { - if (Number.isFinite(ptr)) { - super(ptr); - this.bindings_instance = null; - } else { - // TODO: private constructor instantiation - super(bindings.LDKBaseSign_new(arg, pubkeys == null ? 0 : pubkeys.clone_ptr())); - this.ptrs_to.push(arg); - - } - } - - protected finalize() { - if (this.ptr != 0) { - bindings.BaseSign_free(this.ptr); - } - super.finalize(); - } - - static new_impl(arg: BaseSignInterface, pubkeys: ChannelPublicKeys): BaseSign { - const impl_holder: LDKBaseSignHolder = new LDKBaseSignHolder(); - let structImplementation = { - // todo: in-line interface filling - get_per_commitment_point (idx: number): Uint8Array { - Uint8Array ret = arg.get_per_commitment_point(idx); - result: Uint8Array = InternalUtils.check_arr_len(ret, 33); - return result; - }, - - release_commitment_secret (idx: number): Uint8Array { - Uint8Array ret = arg.release_commitment_secret(idx); - result: Uint8Array = InternalUtils.check_arr_len(ret, 32); - return result; - }, - - validate_holder_commitment (holder_tx: number): number { - const holder_tx_hu_conv: HolderCommitmentTransaction = new HolderCommitmentTransaction(null, holder_tx); - Result_NoneNoneZ ret = arg.validate_holder_commitment(holder_tx_hu_conv); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - channel_keys_id (): Uint8Array { - Uint8Array ret = arg.channel_keys_id(); - result: Uint8Array = InternalUtils.check_arr_len(ret, 32); - return result; - }, - - sign_counterparty_commitment (commitment_tx: number): number { - const commitment_tx_hu_conv: CommitmentTransaction = new CommitmentTransaction(null, commitment_tx); - Result_C2Tuple_SignatureCVec_SignatureZZNoneZ ret = arg.sign_counterparty_commitment(commitment_tx_hu_conv); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - validate_counterparty_revocation (idx: number, secret: Uint8Array): number { - Result_NoneNoneZ ret = arg.validate_counterparty_revocation(idx, secret); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - sign_holder_commitment_and_htlcs (commitment_tx: number): number { - const commitment_tx_hu_conv: HolderCommitmentTransaction = new HolderCommitmentTransaction(null, commitment_tx); - Result_C2Tuple_SignatureCVec_SignatureZZNoneZ ret = arg.sign_holder_commitment_and_htlcs(commitment_tx_hu_conv); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - sign_justice_revoked_output (justice_tx: Uint8Array, input: number, amount: number, per_commitment_key: Uint8Array): number { - Result_SignatureNoneZ ret = arg.sign_justice_revoked_output(justice_tx, input, amount, per_commitment_key); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - sign_justice_revoked_htlc (justice_tx: Uint8Array, input: number, amount: number, per_commitment_key: Uint8Array, htlc: number): number { - const htlc_hu_conv: HTLCOutputInCommitment = new HTLCOutputInCommitment(null, htlc); - Result_SignatureNoneZ ret = arg.sign_justice_revoked_htlc(justice_tx, input, amount, per_commitment_key, htlc_hu_conv); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - sign_counterparty_htlc_transaction (htlc_tx: Uint8Array, input: number, amount: number, per_commitment_point: Uint8Array, htlc: number): number { - const htlc_hu_conv: HTLCOutputInCommitment = new HTLCOutputInCommitment(null, htlc); - Result_SignatureNoneZ ret = arg.sign_counterparty_htlc_transaction(htlc_tx, input, amount, per_commitment_point, htlc_hu_conv); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - sign_closing_transaction (closing_tx: number): number { - const closing_tx_hu_conv: ClosingTransaction = new ClosingTransaction(null, closing_tx); - Result_SignatureNoneZ ret = arg.sign_closing_transaction(closing_tx_hu_conv); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - sign_channel_announcement (msg: number): number { - const msg_hu_conv: UnsignedChannelAnnouncement = new UnsignedChannelAnnouncement(null, msg); - Result_SignatureNoneZ ret = arg.sign_channel_announcement(msg_hu_conv); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - ready_channel (channel_parameters: number): void { - const channel_parameters_hu_conv: ChannelTransactionParameters = new ChannelTransactionParameters(null, channel_parameters); - arg.ready_channel(channel_parameters_hu_conv); - }, - - - }; - impl_holder.held = new BaseSign (null, structImplementation, pubkeys); - } - } - - export interface BaseSignInterface { - get_per_commitment_point(idx: number): Uint8Array; - release_commitment_secret(idx: number): Uint8Array; - validate_holder_commitment(holder_tx: HolderCommitmentTransaction): Result_NoneNoneZ; - channel_keys_id(): Uint8Array; - sign_counterparty_commitment(commitment_tx: CommitmentTransaction): Result_C2Tuple_SignatureCVec_SignatureZZNoneZ; - validate_counterparty_revocation(idx: number, secret: Uint8Array): Result_NoneNoneZ; - sign_holder_commitment_and_htlcs(commitment_tx: HolderCommitmentTransaction): Result_C2Tuple_SignatureCVec_SignatureZZNoneZ; - sign_justice_revoked_output(justice_tx: Uint8Array, input: number, amount: number, per_commitment_key: Uint8Array): Result_SignatureNoneZ; - sign_justice_revoked_htlc(justice_tx: Uint8Array, input: number, amount: number, per_commitment_key: Uint8Array, htlc: HTLCOutputInCommitment): Result_SignatureNoneZ; - sign_counterparty_htlc_transaction(htlc_tx: Uint8Array, input: number, amount: number, per_commitment_point: Uint8Array, htlc: HTLCOutputInCommitment): Result_SignatureNoneZ; - sign_closing_transaction(closing_tx: ClosingTransaction): Result_SignatureNoneZ; - sign_channel_announcement(msg: UnsignedChannelAnnouncement): Result_SignatureNoneZ; - ready_channel(channel_parameters: ChannelTransactionParameters): void; - - } - - class LDKBaseSignHolder { - held: BaseSign; - } - public Uint8Array get_per_commitment_point(number idx) { - Uint8Array ret = bindings.BaseSign_get_per_commitment_point(this.ptr, idx); - return ret; - } - - public Uint8Array release_commitment_secret(number idx) { - Uint8Array ret = bindings.BaseSign_release_commitment_secret(this.ptr, idx); - return ret; - } - - public Result_NoneNoneZ validate_holder_commitment(HolderCommitmentTransaction holder_tx) { - number ret = bindings.BaseSign_validate_holder_commitment(this.ptr, holder_tx == null ? 0 : holder_tx.ptr & ~1); - Result_NoneNoneZ ret_hu_conv = Result_NoneNoneZ.constr_from_ptr(ret); - this.ptrs_to.add(holder_tx); - return ret_hu_conv; - } - - public Uint8Array channel_keys_id() { - Uint8Array ret = bindings.BaseSign_channel_keys_id(this.ptr); - return ret; - } - - public Result_C2Tuple_SignatureCVec_SignatureZZNoneZ sign_counterparty_commitment(CommitmentTransaction commitment_tx) { - number ret = bindings.BaseSign_sign_counterparty_commitment(this.ptr, commitment_tx == null ? 0 : commitment_tx.ptr & ~1); - Result_C2Tuple_SignatureCVec_SignatureZZNoneZ ret_hu_conv = Result_C2Tuple_SignatureCVec_SignatureZZNoneZ.constr_from_ptr(ret); - this.ptrs_to.add(commitment_tx); - return ret_hu_conv; - } - - public Result_NoneNoneZ validate_counterparty_revocation(number idx, Uint8Array secret) { - number ret = bindings.BaseSign_validate_counterparty_revocation(this.ptr, idx, InternalUtils.check_arr_len(secret, 32)); - Result_NoneNoneZ ret_hu_conv = Result_NoneNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public Result_C2Tuple_SignatureCVec_SignatureZZNoneZ sign_holder_commitment_and_htlcs(HolderCommitmentTransaction commitment_tx) { - number ret = bindings.BaseSign_sign_holder_commitment_and_htlcs(this.ptr, commitment_tx == null ? 0 : commitment_tx.ptr & ~1); - Result_C2Tuple_SignatureCVec_SignatureZZNoneZ ret_hu_conv = Result_C2Tuple_SignatureCVec_SignatureZZNoneZ.constr_from_ptr(ret); - this.ptrs_to.add(commitment_tx); - return ret_hu_conv; - } - - public Result_SignatureNoneZ sign_justice_revoked_output(Uint8Array justice_tx, number input, number amount, Uint8Array per_commitment_key) { - number ret = bindings.BaseSign_sign_justice_revoked_output(this.ptr, justice_tx, input, amount, InternalUtils.check_arr_len(per_commitment_key, 32)); - Result_SignatureNoneZ ret_hu_conv = Result_SignatureNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public Result_SignatureNoneZ sign_justice_revoked_htlc(Uint8Array justice_tx, number input, number amount, Uint8Array per_commitment_key, HTLCOutputInCommitment htlc) { - number ret = bindings.BaseSign_sign_justice_revoked_htlc(this.ptr, justice_tx, input, amount, InternalUtils.check_arr_len(per_commitment_key, 32), htlc == null ? 0 : htlc.ptr & ~1); - Result_SignatureNoneZ ret_hu_conv = Result_SignatureNoneZ.constr_from_ptr(ret); - this.ptrs_to.add(htlc); - return ret_hu_conv; - } - - public Result_SignatureNoneZ sign_counterparty_htlc_transaction(Uint8Array htlc_tx, number input, number amount, Uint8Array per_commitment_point, HTLCOutputInCommitment htlc) { - number ret = bindings.BaseSign_sign_counterparty_htlc_transaction(this.ptr, htlc_tx, input, amount, InternalUtils.check_arr_len(per_commitment_point, 33), htlc == null ? 0 : htlc.ptr & ~1); - Result_SignatureNoneZ ret_hu_conv = Result_SignatureNoneZ.constr_from_ptr(ret); - this.ptrs_to.add(htlc); - return ret_hu_conv; - } - - public Result_SignatureNoneZ sign_closing_transaction(ClosingTransaction closing_tx) { - number ret = bindings.BaseSign_sign_closing_transaction(this.ptr, closing_tx == null ? 0 : closing_tx.ptr & ~1); - Result_SignatureNoneZ ret_hu_conv = Result_SignatureNoneZ.constr_from_ptr(ret); - this.ptrs_to.add(closing_tx); - return ret_hu_conv; - } - - public Result_SignatureNoneZ sign_channel_announcement(UnsignedChannelAnnouncement msg) { - number ret = bindings.BaseSign_sign_channel_announcement(this.ptr, msg == null ? 0 : msg.ptr & ~1); - Result_SignatureNoneZ ret_hu_conv = Result_SignatureNoneZ.constr_from_ptr(ret); - this.ptrs_to.add(msg); - return ret_hu_conv; - } - - public void ready_channel(ChannelTransactionParameters channel_parameters) { - bindings.BaseSign_ready_channel(this.ptr, channel_parameters == null ? 0 : channel_parameters.ptr & ~1); - this.ptrs_to.add(channel_parameters); - } - - public ChannelPublicKeys get_pubkeys() { - number ret = bindings.BaseSign_get_pubkeys(this.ptr); - const ret_hu_conv: ChannelPublicKeys = new ChannelPublicKeys(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/BestBlock.ts b/ts/structs/BestBlock.ts deleted file mode 100644 index 08597ee1..00000000 --- a/ts/structs/BestBlock.ts +++ /dev/null @@ -1,57 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class BestBlock extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.BestBlock_free(this.ptr); - } - } - public number clone_ptr() { - number ret = bindings.BestBlock_clone_ptr(this.ptr); - return ret; - } - - public BestBlock clone() { - number ret = bindings.BestBlock_clone(this.ptr); - const ret_hu_conv: BestBlock = new BestBlock(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static BestBlock constructor_from_genesis(Network network) { - number ret = bindings.BestBlock_from_genesis(network); - const ret_hu_conv: BestBlock = new BestBlock(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static BestBlock constructor_new(Uint8Array block_hash, number height) { - number ret = bindings.BestBlock_new(InternalUtils.check_arr_len(block_hash, 32), height); - const ret_hu_conv: BestBlock = new BestBlock(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public Uint8Array block_hash() { - Uint8Array ret = bindings.BestBlock_block_hash(this.ptr); - return ret; - } - - public number height() { - number ret = bindings.BestBlock_height(this.ptr); - return ret; - } - -} diff --git a/ts/structs/BroadcasterInterface.ts b/ts/structs/BroadcasterInterface.ts deleted file mode 100644 index 2fbda737..00000000 --- a/ts/structs/BroadcasterInterface.ts +++ /dev/null @@ -1,57 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export class BroadcasterInterface extends CommonBase { - - bindings_instance?: bindings.LDKBroadcasterInterface; - - constructor(ptr?: number, arg?: bindings.LDKBroadcasterInterface) { - if (Number.isFinite(ptr)) { - super(ptr); - this.bindings_instance = null; - } else { - // TODO: private constructor instantiation - super(bindings.LDKBroadcasterInterface_new(arg)); - this.ptrs_to.push(arg); - - } - } - - protected finalize() { - if (this.ptr != 0) { - bindings.BroadcasterInterface_free(this.ptr); - } - super.finalize(); - } - - static new_impl(arg: BroadcasterInterfaceInterface): BroadcasterInterface { - const impl_holder: LDKBroadcasterInterfaceHolder = new LDKBroadcasterInterfaceHolder(); - let structImplementation = { - // todo: in-line interface filling - broadcast_transaction (tx: Uint8Array): void { - arg.broadcast_transaction(tx); - }, - - - }; - impl_holder.held = new BroadcasterInterface (null, structImplementation); - } - } - - export interface BroadcasterInterfaceInterface { - broadcast_transaction(tx: Uint8Array): void; - - } - - class LDKBroadcasterInterfaceHolder { - held: BroadcasterInterface; - } - public void broadcast_transaction(Uint8Array tx) { - bindings.BroadcasterInterface_broadcast_transaction(this.ptr, tx); - } - -} diff --git a/ts/structs/BuiltCommitmentTransaction.ts b/ts/structs/BuiltCommitmentTransaction.ts deleted file mode 100644 index a2082dc2..00000000 --- a/ts/structs/BuiltCommitmentTransaction.ts +++ /dev/null @@ -1,79 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class BuiltCommitmentTransaction extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.BuiltCommitmentTransaction_free(this.ptr); - } - } - public Uint8Array get_transaction() { - Uint8Array ret = bindings.BuiltCommitmentTransaction_get_transaction(this.ptr); - return ret; - } - - public void set_transaction(Uint8Array val) { - bindings.BuiltCommitmentTransaction_set_transaction(this.ptr, val); - } - - public Uint8Array get_txid() { - Uint8Array ret = bindings.BuiltCommitmentTransaction_get_txid(this.ptr); - return ret; - } - - public void set_txid(Uint8Array val) { - bindings.BuiltCommitmentTransaction_set_txid(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public static BuiltCommitmentTransaction constructor_new(Uint8Array transaction_arg, Uint8Array txid_arg) { - number ret = bindings.BuiltCommitmentTransaction_new(transaction_arg, InternalUtils.check_arr_len(txid_arg, 32)); - const ret_hu_conv: BuiltCommitmentTransaction = new BuiltCommitmentTransaction(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.BuiltCommitmentTransaction_clone_ptr(this.ptr); - return ret; - } - - public BuiltCommitmentTransaction clone() { - number ret = bindings.BuiltCommitmentTransaction_clone(this.ptr); - const ret_hu_conv: BuiltCommitmentTransaction = new BuiltCommitmentTransaction(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.BuiltCommitmentTransaction_write(this.ptr); - return ret; - } - - public static Result_BuiltCommitmentTransactionDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.BuiltCommitmentTransaction_read(ser); - Result_BuiltCommitmentTransactionDecodeErrorZ ret_hu_conv = Result_BuiltCommitmentTransactionDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public Uint8Array get_sighash_all(Uint8Array funding_redeemscript, number channel_value_satoshis) { - Uint8Array ret = bindings.BuiltCommitmentTransaction_get_sighash_all(this.ptr, funding_redeemscript, channel_value_satoshis); - return ret; - } - - public Uint8Array sign(Uint8Array funding_key, Uint8Array funding_redeemscript, number channel_value_satoshis) { - Uint8Array ret = bindings.BuiltCommitmentTransaction_sign(this.ptr, InternalUtils.check_arr_len(funding_key, 32), funding_redeemscript, channel_value_satoshis); - return ret; - } - -} diff --git a/ts/structs/ChainMonitor.ts b/ts/structs/ChainMonitor.ts deleted file mode 100644 index e65e42be..00000000 --- a/ts/structs/ChainMonitor.ts +++ /dev/null @@ -1,97 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ChainMonitor extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ChainMonitor_free(this.ptr); - } - } - public static ChainMonitor constructor_new(Option_FilterZ chain_source, BroadcasterInterface broadcaster, Logger logger, FeeEstimator feeest, Persist persister) { - number ret = bindings.ChainMonitor_new(chain_source.ptr, broadcaster == null ? 0 : broadcaster.ptr, logger == null ? 0 : logger.ptr, feeest == null ? 0 : feeest.ptr, persister == null ? 0 : persister.ptr); - const ret_hu_conv: ChainMonitor = new ChainMonitor(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - ret_hu_conv.ptrs_to.add(chain_source); - ret_hu_conv.ptrs_to.add(broadcaster); - ret_hu_conv.ptrs_to.add(logger); - ret_hu_conv.ptrs_to.add(feeest); - ret_hu_conv.ptrs_to.add(persister); - return ret_hu_conv; - } - - public Balance[] get_claimable_balances(ChannelDetails[] ignored_channels) { - number[] ret = bindings.ChainMonitor_get_claimable_balances(this.ptr, ignored_channels != null ? Arrays.stream(ignored_channels).map(ignored_channels_conv_16 -> ignored_channels_conv_16 == null ? 0 : ignored_channels_conv_16.ptr & ~1).toArray(number[]::new) : null); - Balance[] ret_conv_9_arr = new Balance[ret.length]; - for (int j = 0; j < ret.length; j++) { - number ret_conv_9 = ret[j]; - Balance ret_conv_9_hu_conv = Balance.constr_from_ptr(ret_conv_9); - ret_conv_9_hu_conv.ptrs_to.add(this); - ret_conv_9_arr[j] = ret_conv_9_hu_conv; - } - return ret_conv_9_arr; - } - - public Result_LockedChannelMonitorNoneZ get_monitor(OutPoint funding_txo) { - number ret = bindings.ChainMonitor_get_monitor(this.ptr, funding_txo == null ? 0 : funding_txo.ptr & ~1); - Result_LockedChannelMonitorNoneZ ret_hu_conv = Result_LockedChannelMonitorNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public OutPoint[] list_monitors() { - number[] ret = bindings.ChainMonitor_list_monitors(this.ptr); - OutPoint[] ret_conv_10_arr = new OutPoint[ret.length]; - for (int k = 0; k < ret.length; k++) { - number ret_conv_10 = ret[k]; - const ret_conv_10_hu_conv: OutPoint = new OutPoint(null, ret_conv_10); - ret_conv_10_hu_conv.ptrs_to.add(this); - ret_conv_10_arr[k] = ret_conv_10_hu_conv; - } - return ret_conv_10_arr; - } - - public Result_NoneAPIErrorZ channel_monitor_updated(OutPoint funding_txo, MonitorUpdateId completed_update_id) { - number ret = bindings.ChainMonitor_channel_monitor_updated(this.ptr, funding_txo == null ? 0 : funding_txo.ptr & ~1, completed_update_id == null ? 0 : completed_update_id.ptr & ~1); - Result_NoneAPIErrorZ ret_hu_conv = Result_NoneAPIErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public Listen as_Listen() { - number ret = bindings.ChainMonitor_as_Listen(this.ptr); - Listen ret_hu_conv = new Listen(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Confirm as_Confirm() { - number ret = bindings.ChainMonitor_as_Confirm(this.ptr); - Confirm ret_hu_conv = new Confirm(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Watch as_Watch() { - number ret = bindings.ChainMonitor_as_Watch(this.ptr); - Watch ret_hu_conv = new Watch(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public EventsProvider as_EventsProvider() { - number ret = bindings.ChainMonitor_as_EventsProvider(this.ptr); - EventsProvider ret_hu_conv = new EventsProvider(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ChainParameters.ts b/ts/structs/ChainParameters.ts deleted file mode 100644 index cf87765d..00000000 --- a/ts/structs/ChainParameters.ts +++ /dev/null @@ -1,60 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ChainParameters extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ChainParameters_free(this.ptr); - } - } - public Network get_network() { - Network ret = bindings.ChainParameters_get_network(this.ptr); - return ret; - } - - public void set_network(Network val) { - bindings.ChainParameters_set_network(this.ptr, val); - } - - public BestBlock get_best_block() { - number ret = bindings.ChainParameters_get_best_block(this.ptr); - const ret_hu_conv: BestBlock = new BestBlock(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_best_block(BestBlock val) { - bindings.ChainParameters_set_best_block(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public static ChainParameters constructor_new(Network network_arg, BestBlock best_block_arg) { - number ret = bindings.ChainParameters_new(network_arg, best_block_arg == null ? 0 : best_block_arg.ptr & ~1); - const ret_hu_conv: ChainParameters = new ChainParameters(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.ChainParameters_clone_ptr(this.ptr); - return ret; - } - - public ChainParameters clone() { - number ret = bindings.ChainParameters_clone(this.ptr); - const ret_hu_conv: ChainParameters = new ChainParameters(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ChannelAnnouncement.ts b/ts/structs/ChannelAnnouncement.ts deleted file mode 100644 index d009b06c..00000000 --- a/ts/structs/ChannelAnnouncement.ts +++ /dev/null @@ -1,98 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ChannelAnnouncement extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ChannelAnnouncement_free(this.ptr); - } - } - public Uint8Array get_node_signature_1() { - Uint8Array ret = bindings.ChannelAnnouncement_get_node_signature_1(this.ptr); - return ret; - } - - public void set_node_signature_1(Uint8Array val) { - bindings.ChannelAnnouncement_set_node_signature_1(this.ptr, InternalUtils.check_arr_len(val, 64)); - } - - public Uint8Array get_node_signature_2() { - Uint8Array ret = bindings.ChannelAnnouncement_get_node_signature_2(this.ptr); - return ret; - } - - public void set_node_signature_2(Uint8Array val) { - bindings.ChannelAnnouncement_set_node_signature_2(this.ptr, InternalUtils.check_arr_len(val, 64)); - } - - public Uint8Array get_bitcoin_signature_1() { - Uint8Array ret = bindings.ChannelAnnouncement_get_bitcoin_signature_1(this.ptr); - return ret; - } - - public void set_bitcoin_signature_1(Uint8Array val) { - bindings.ChannelAnnouncement_set_bitcoin_signature_1(this.ptr, InternalUtils.check_arr_len(val, 64)); - } - - public Uint8Array get_bitcoin_signature_2() { - Uint8Array ret = bindings.ChannelAnnouncement_get_bitcoin_signature_2(this.ptr); - return ret; - } - - public void set_bitcoin_signature_2(Uint8Array val) { - bindings.ChannelAnnouncement_set_bitcoin_signature_2(this.ptr, InternalUtils.check_arr_len(val, 64)); - } - - public UnsignedChannelAnnouncement get_contents() { - number ret = bindings.ChannelAnnouncement_get_contents(this.ptr); - const ret_hu_conv: UnsignedChannelAnnouncement = new UnsignedChannelAnnouncement(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_contents(UnsignedChannelAnnouncement val) { - bindings.ChannelAnnouncement_set_contents(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public static ChannelAnnouncement constructor_new(Uint8Array node_signature_1_arg, Uint8Array node_signature_2_arg, Uint8Array bitcoin_signature_1_arg, Uint8Array bitcoin_signature_2_arg, UnsignedChannelAnnouncement contents_arg) { - number ret = bindings.ChannelAnnouncement_new(InternalUtils.check_arr_len(node_signature_1_arg, 64), InternalUtils.check_arr_len(node_signature_2_arg, 64), InternalUtils.check_arr_len(bitcoin_signature_1_arg, 64), InternalUtils.check_arr_len(bitcoin_signature_2_arg, 64), contents_arg == null ? 0 : contents_arg.ptr & ~1); - const ret_hu_conv: ChannelAnnouncement = new ChannelAnnouncement(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.ChannelAnnouncement_clone_ptr(this.ptr); - return ret; - } - - public ChannelAnnouncement clone() { - number ret = bindings.ChannelAnnouncement_clone(this.ptr); - const ret_hu_conv: ChannelAnnouncement = new ChannelAnnouncement(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.ChannelAnnouncement_write(this.ptr); - return ret; - } - - public static Result_ChannelAnnouncementDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.ChannelAnnouncement_read(ser); - Result_ChannelAnnouncementDecodeErrorZ ret_hu_conv = Result_ChannelAnnouncementDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ChannelConfig.ts b/ts/structs/ChannelConfig.ts deleted file mode 100644 index e7e2c979..00000000 --- a/ts/structs/ChannelConfig.ts +++ /dev/null @@ -1,121 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ChannelConfig extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ChannelConfig_free(this.ptr); - } - } - public number get_forwarding_fee_proportional_millionths() { - number ret = bindings.ChannelConfig_get_forwarding_fee_proportional_millionths(this.ptr); - return ret; - } - - public void set_forwarding_fee_proportional_millionths(number val) { - bindings.ChannelConfig_set_forwarding_fee_proportional_millionths(this.ptr, val); - } - - public number get_forwarding_fee_base_msat() { - number ret = bindings.ChannelConfig_get_forwarding_fee_base_msat(this.ptr); - return ret; - } - - public void set_forwarding_fee_base_msat(number val) { - bindings.ChannelConfig_set_forwarding_fee_base_msat(this.ptr, val); - } - - public number get_cltv_expiry_delta() { - number ret = bindings.ChannelConfig_get_cltv_expiry_delta(this.ptr); - return ret; - } - - public void set_cltv_expiry_delta(number val) { - bindings.ChannelConfig_set_cltv_expiry_delta(this.ptr, val); - } - - public boolean get_announced_channel() { - boolean ret = bindings.ChannelConfig_get_announced_channel(this.ptr); - return ret; - } - - public void set_announced_channel(boolean val) { - bindings.ChannelConfig_set_announced_channel(this.ptr, val); - } - - public boolean get_commit_upfront_shutdown_pubkey() { - boolean ret = bindings.ChannelConfig_get_commit_upfront_shutdown_pubkey(this.ptr); - return ret; - } - - public void set_commit_upfront_shutdown_pubkey(boolean val) { - bindings.ChannelConfig_set_commit_upfront_shutdown_pubkey(this.ptr, val); - } - - public number get_max_dust_htlc_exposure_msat() { - number ret = bindings.ChannelConfig_get_max_dust_htlc_exposure_msat(this.ptr); - return ret; - } - - public void set_max_dust_htlc_exposure_msat(number val) { - bindings.ChannelConfig_set_max_dust_htlc_exposure_msat(this.ptr, val); - } - - public number get_force_close_avoidance_max_fee_satoshis() { - number ret = bindings.ChannelConfig_get_force_close_avoidance_max_fee_satoshis(this.ptr); - return ret; - } - - public void set_force_close_avoidance_max_fee_satoshis(number val) { - bindings.ChannelConfig_set_force_close_avoidance_max_fee_satoshis(this.ptr, val); - } - - public static ChannelConfig constructor_new(number forwarding_fee_proportional_millionths_arg, number forwarding_fee_base_msat_arg, number cltv_expiry_delta_arg, boolean announced_channel_arg, boolean commit_upfront_shutdown_pubkey_arg, number max_dust_htlc_exposure_msat_arg, number force_close_avoidance_max_fee_satoshis_arg) { - number ret = bindings.ChannelConfig_new(forwarding_fee_proportional_millionths_arg, forwarding_fee_base_msat_arg, cltv_expiry_delta_arg, announced_channel_arg, commit_upfront_shutdown_pubkey_arg, max_dust_htlc_exposure_msat_arg, force_close_avoidance_max_fee_satoshis_arg); - const ret_hu_conv: ChannelConfig = new ChannelConfig(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.ChannelConfig_clone_ptr(this.ptr); - return ret; - } - - public ChannelConfig clone() { - number ret = bindings.ChannelConfig_clone(this.ptr); - const ret_hu_conv: ChannelConfig = new ChannelConfig(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static ChannelConfig constructor_default() { - number ret = bindings.ChannelConfig_default(); - const ret_hu_conv: ChannelConfig = new ChannelConfig(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.ChannelConfig_write(this.ptr); - return ret; - } - - public static Result_ChannelConfigDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.ChannelConfig_read(ser); - Result_ChannelConfigDecodeErrorZ ret_hu_conv = Result_ChannelConfigDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ChannelCounterparty.ts b/ts/structs/ChannelCounterparty.ts deleted file mode 100644 index 2facb074..00000000 --- a/ts/structs/ChannelCounterparty.ts +++ /dev/null @@ -1,80 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ChannelCounterparty extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ChannelCounterparty_free(this.ptr); - } - } - public Uint8Array get_node_id() { - Uint8Array ret = bindings.ChannelCounterparty_get_node_id(this.ptr); - return ret; - } - - public void set_node_id(Uint8Array val) { - bindings.ChannelCounterparty_set_node_id(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public InitFeatures get_features() { - number ret = bindings.ChannelCounterparty_get_features(this.ptr); - const ret_hu_conv: InitFeatures = new InitFeatures(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_features(InitFeatures val) { - bindings.ChannelCounterparty_set_features(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public number get_unspendable_punishment_reserve() { - number ret = bindings.ChannelCounterparty_get_unspendable_punishment_reserve(this.ptr); - return ret; - } - - public void set_unspendable_punishment_reserve(number val) { - bindings.ChannelCounterparty_set_unspendable_punishment_reserve(this.ptr, val); - } - - public CounterpartyForwardingInfo get_forwarding_info() { - number ret = bindings.ChannelCounterparty_get_forwarding_info(this.ptr); - const ret_hu_conv: CounterpartyForwardingInfo = new CounterpartyForwardingInfo(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_forwarding_info(CounterpartyForwardingInfo val) { - bindings.ChannelCounterparty_set_forwarding_info(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public static ChannelCounterparty constructor_new(Uint8Array node_id_arg, InitFeatures features_arg, number unspendable_punishment_reserve_arg, CounterpartyForwardingInfo forwarding_info_arg) { - number ret = bindings.ChannelCounterparty_new(InternalUtils.check_arr_len(node_id_arg, 33), features_arg == null ? 0 : features_arg.ptr & ~1, unspendable_punishment_reserve_arg, forwarding_info_arg == null ? 0 : forwarding_info_arg.ptr & ~1); - const ret_hu_conv: ChannelCounterparty = new ChannelCounterparty(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.ChannelCounterparty_clone_ptr(this.ptr); - return ret; - } - - public ChannelCounterparty clone() { - number ret = bindings.ChannelCounterparty_clone(this.ptr); - const ret_hu_conv: ChannelCounterparty = new ChannelCounterparty(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ChannelDetails.ts b/ts/structs/ChannelDetails.ts deleted file mode 100644 index 15435d95..00000000 --- a/ts/structs/ChannelDetails.ts +++ /dev/null @@ -1,196 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ChannelDetails extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ChannelDetails_free(this.ptr); - } - } - public Uint8Array get_channel_id() { - Uint8Array ret = bindings.ChannelDetails_get_channel_id(this.ptr); - return ret; - } - - public void set_channel_id(Uint8Array val) { - bindings.ChannelDetails_set_channel_id(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public ChannelCounterparty get_counterparty() { - number ret = bindings.ChannelDetails_get_counterparty(this.ptr); - const ret_hu_conv: ChannelCounterparty = new ChannelCounterparty(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_counterparty(ChannelCounterparty val) { - bindings.ChannelDetails_set_counterparty(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public OutPoint get_funding_txo() { - number ret = bindings.ChannelDetails_get_funding_txo(this.ptr); - const ret_hu_conv: OutPoint = new OutPoint(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_funding_txo(OutPoint val) { - bindings.ChannelDetails_set_funding_txo(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public Option_u64Z get_short_channel_id() { - number ret = bindings.ChannelDetails_get_short_channel_id(this.ptr); - Option_u64Z ret_hu_conv = Option_u64Z.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_short_channel_id(Option_u64Z val) { - bindings.ChannelDetails_set_short_channel_id(this.ptr, val.ptr); - } - - public number get_channel_value_satoshis() { - number ret = bindings.ChannelDetails_get_channel_value_satoshis(this.ptr); - return ret; - } - - public void set_channel_value_satoshis(number val) { - bindings.ChannelDetails_set_channel_value_satoshis(this.ptr, val); - } - - public Option_u64Z get_unspendable_punishment_reserve() { - number ret = bindings.ChannelDetails_get_unspendable_punishment_reserve(this.ptr); - Option_u64Z ret_hu_conv = Option_u64Z.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_unspendable_punishment_reserve(Option_u64Z val) { - bindings.ChannelDetails_set_unspendable_punishment_reserve(this.ptr, val.ptr); - } - - public number get_user_channel_id() { - number ret = bindings.ChannelDetails_get_user_channel_id(this.ptr); - return ret; - } - - public void set_user_channel_id(number val) { - bindings.ChannelDetails_set_user_channel_id(this.ptr, val); - } - - public number get_balance_msat() { - number ret = bindings.ChannelDetails_get_balance_msat(this.ptr); - return ret; - } - - public void set_balance_msat(number val) { - bindings.ChannelDetails_set_balance_msat(this.ptr, val); - } - - public number get_outbound_capacity_msat() { - number ret = bindings.ChannelDetails_get_outbound_capacity_msat(this.ptr); - return ret; - } - - public void set_outbound_capacity_msat(number val) { - bindings.ChannelDetails_set_outbound_capacity_msat(this.ptr, val); - } - - public number get_inbound_capacity_msat() { - number ret = bindings.ChannelDetails_get_inbound_capacity_msat(this.ptr); - return ret; - } - - public void set_inbound_capacity_msat(number val) { - bindings.ChannelDetails_set_inbound_capacity_msat(this.ptr, val); - } - - public Option_u32Z get_confirmations_required() { - number ret = bindings.ChannelDetails_get_confirmations_required(this.ptr); - Option_u32Z ret_hu_conv = Option_u32Z.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_confirmations_required(Option_u32Z val) { - bindings.ChannelDetails_set_confirmations_required(this.ptr, val.ptr); - } - - public Option_u16Z get_force_close_spend_delay() { - number ret = bindings.ChannelDetails_get_force_close_spend_delay(this.ptr); - Option_u16Z ret_hu_conv = Option_u16Z.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_force_close_spend_delay(Option_u16Z val) { - bindings.ChannelDetails_set_force_close_spend_delay(this.ptr, val.ptr); - } - - public boolean get_is_outbound() { - boolean ret = bindings.ChannelDetails_get_is_outbound(this.ptr); - return ret; - } - - public void set_is_outbound(boolean val) { - bindings.ChannelDetails_set_is_outbound(this.ptr, val); - } - - public boolean get_is_funding_locked() { - boolean ret = bindings.ChannelDetails_get_is_funding_locked(this.ptr); - return ret; - } - - public void set_is_funding_locked(boolean val) { - bindings.ChannelDetails_set_is_funding_locked(this.ptr, val); - } - - public boolean get_is_usable() { - boolean ret = bindings.ChannelDetails_get_is_usable(this.ptr); - return ret; - } - - public void set_is_usable(boolean val) { - bindings.ChannelDetails_set_is_usable(this.ptr, val); - } - - public boolean get_is_public() { - boolean ret = bindings.ChannelDetails_get_is_public(this.ptr); - return ret; - } - - public void set_is_public(boolean val) { - bindings.ChannelDetails_set_is_public(this.ptr, val); - } - - public static ChannelDetails constructor_new(Uint8Array channel_id_arg, ChannelCounterparty counterparty_arg, OutPoint funding_txo_arg, Option_u64Z short_channel_id_arg, number channel_value_satoshis_arg, Option_u64Z unspendable_punishment_reserve_arg, number user_channel_id_arg, number balance_msat_arg, number outbound_capacity_msat_arg, number inbound_capacity_msat_arg, Option_u32Z confirmations_required_arg, Option_u16Z force_close_spend_delay_arg, boolean is_outbound_arg, boolean is_funding_locked_arg, boolean is_usable_arg, boolean is_public_arg) { - number ret = bindings.ChannelDetails_new(InternalUtils.check_arr_len(channel_id_arg, 32), counterparty_arg == null ? 0 : counterparty_arg.ptr & ~1, funding_txo_arg == null ? 0 : funding_txo_arg.ptr & ~1, short_channel_id_arg.ptr, channel_value_satoshis_arg, unspendable_punishment_reserve_arg.ptr, user_channel_id_arg, balance_msat_arg, outbound_capacity_msat_arg, inbound_capacity_msat_arg, confirmations_required_arg.ptr, force_close_spend_delay_arg.ptr, is_outbound_arg, is_funding_locked_arg, is_usable_arg, is_public_arg); - const ret_hu_conv: ChannelDetails = new ChannelDetails(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.ChannelDetails_clone_ptr(this.ptr); - return ret; - } - - public ChannelDetails clone() { - number ret = bindings.ChannelDetails_clone(this.ptr); - const ret_hu_conv: ChannelDetails = new ChannelDetails(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ChannelFeatures.ts b/ts/structs/ChannelFeatures.ts deleted file mode 100644 index 305b3a21..00000000 --- a/ts/structs/ChannelFeatures.ts +++ /dev/null @@ -1,69 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ChannelFeatures extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ChannelFeatures_free(this.ptr); - } - } - public boolean eq(ChannelFeatures b) { - boolean ret = bindings.ChannelFeatures_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - this.ptrs_to.add(b); - return ret; - } - - public number clone_ptr() { - number ret = bindings.ChannelFeatures_clone_ptr(this.ptr); - return ret; - } - - public ChannelFeatures clone() { - number ret = bindings.ChannelFeatures_clone(this.ptr); - const ret_hu_conv: ChannelFeatures = new ChannelFeatures(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static ChannelFeatures constructor_empty() { - number ret = bindings.ChannelFeatures_empty(); - const ret_hu_conv: ChannelFeatures = new ChannelFeatures(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static ChannelFeatures constructor_known() { - number ret = bindings.ChannelFeatures_known(); - const ret_hu_conv: ChannelFeatures = new ChannelFeatures(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public boolean requires_unknown_bits() { - boolean ret = bindings.ChannelFeatures_requires_unknown_bits(this.ptr); - return ret; - } - - public Uint8Array write() { - Uint8Array ret = bindings.ChannelFeatures_write(this.ptr); - return ret; - } - - public static Result_ChannelFeaturesDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.ChannelFeatures_read(ser); - Result_ChannelFeaturesDecodeErrorZ ret_hu_conv = Result_ChannelFeaturesDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ChannelHandshakeConfig.ts b/ts/structs/ChannelHandshakeConfig.ts deleted file mode 100644 index 2c06b274..00000000 --- a/ts/structs/ChannelHandshakeConfig.ts +++ /dev/null @@ -1,74 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ChannelHandshakeConfig extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ChannelHandshakeConfig_free(this.ptr); - } - } - public number get_minimum_depth() { - number ret = bindings.ChannelHandshakeConfig_get_minimum_depth(this.ptr); - return ret; - } - - public void set_minimum_depth(number val) { - bindings.ChannelHandshakeConfig_set_minimum_depth(this.ptr, val); - } - - public number get_our_to_self_delay() { - number ret = bindings.ChannelHandshakeConfig_get_our_to_self_delay(this.ptr); - return ret; - } - - public void set_our_to_self_delay(number val) { - bindings.ChannelHandshakeConfig_set_our_to_self_delay(this.ptr, val); - } - - public number get_our_htlc_minimum_msat() { - number ret = bindings.ChannelHandshakeConfig_get_our_htlc_minimum_msat(this.ptr); - return ret; - } - - public void set_our_htlc_minimum_msat(number val) { - bindings.ChannelHandshakeConfig_set_our_htlc_minimum_msat(this.ptr, val); - } - - public static ChannelHandshakeConfig constructor_new(number minimum_depth_arg, number our_to_self_delay_arg, number our_htlc_minimum_msat_arg) { - number ret = bindings.ChannelHandshakeConfig_new(minimum_depth_arg, our_to_self_delay_arg, our_htlc_minimum_msat_arg); - const ret_hu_conv: ChannelHandshakeConfig = new ChannelHandshakeConfig(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.ChannelHandshakeConfig_clone_ptr(this.ptr); - return ret; - } - - public ChannelHandshakeConfig clone() { - number ret = bindings.ChannelHandshakeConfig_clone(this.ptr); - const ret_hu_conv: ChannelHandshakeConfig = new ChannelHandshakeConfig(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static ChannelHandshakeConfig constructor_default() { - number ret = bindings.ChannelHandshakeConfig_default(); - const ret_hu_conv: ChannelHandshakeConfig = new ChannelHandshakeConfig(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ChannelHandshakeLimits.ts b/ts/structs/ChannelHandshakeLimits.ts deleted file mode 100644 index 643c7ffa..00000000 --- a/ts/structs/ChannelHandshakeLimits.ts +++ /dev/null @@ -1,119 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ChannelHandshakeLimits extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ChannelHandshakeLimits_free(this.ptr); - } - } - public number get_min_funding_satoshis() { - number ret = bindings.ChannelHandshakeLimits_get_min_funding_satoshis(this.ptr); - return ret; - } - - public void set_min_funding_satoshis(number val) { - bindings.ChannelHandshakeLimits_set_min_funding_satoshis(this.ptr, val); - } - - public number get_max_htlc_minimum_msat() { - number ret = bindings.ChannelHandshakeLimits_get_max_htlc_minimum_msat(this.ptr); - return ret; - } - - public void set_max_htlc_minimum_msat(number val) { - bindings.ChannelHandshakeLimits_set_max_htlc_minimum_msat(this.ptr, val); - } - - public number get_min_max_htlc_value_in_flight_msat() { - number ret = bindings.ChannelHandshakeLimits_get_min_max_htlc_value_in_flight_msat(this.ptr); - return ret; - } - - public void set_min_max_htlc_value_in_flight_msat(number val) { - bindings.ChannelHandshakeLimits_set_min_max_htlc_value_in_flight_msat(this.ptr, val); - } - - public number get_max_channel_reserve_satoshis() { - number ret = bindings.ChannelHandshakeLimits_get_max_channel_reserve_satoshis(this.ptr); - return ret; - } - - public void set_max_channel_reserve_satoshis(number val) { - bindings.ChannelHandshakeLimits_set_max_channel_reserve_satoshis(this.ptr, val); - } - - public number get_min_max_accepted_htlcs() { - number ret = bindings.ChannelHandshakeLimits_get_min_max_accepted_htlcs(this.ptr); - return ret; - } - - public void set_min_max_accepted_htlcs(number val) { - bindings.ChannelHandshakeLimits_set_min_max_accepted_htlcs(this.ptr, val); - } - - public number get_max_minimum_depth() { - number ret = bindings.ChannelHandshakeLimits_get_max_minimum_depth(this.ptr); - return ret; - } - - public void set_max_minimum_depth(number val) { - bindings.ChannelHandshakeLimits_set_max_minimum_depth(this.ptr, val); - } - - public boolean get_force_announced_channel_preference() { - boolean ret = bindings.ChannelHandshakeLimits_get_force_announced_channel_preference(this.ptr); - return ret; - } - - public void set_force_announced_channel_preference(boolean val) { - bindings.ChannelHandshakeLimits_set_force_announced_channel_preference(this.ptr, val); - } - - public number get_their_to_self_delay() { - number ret = bindings.ChannelHandshakeLimits_get_their_to_self_delay(this.ptr); - return ret; - } - - public void set_their_to_self_delay(number val) { - bindings.ChannelHandshakeLimits_set_their_to_self_delay(this.ptr, val); - } - - public static ChannelHandshakeLimits constructor_new(number min_funding_satoshis_arg, number max_htlc_minimum_msat_arg, number min_max_htlc_value_in_flight_msat_arg, number max_channel_reserve_satoshis_arg, number min_max_accepted_htlcs_arg, number max_minimum_depth_arg, boolean force_announced_channel_preference_arg, number their_to_self_delay_arg) { - number ret = bindings.ChannelHandshakeLimits_new(min_funding_satoshis_arg, max_htlc_minimum_msat_arg, min_max_htlc_value_in_flight_msat_arg, max_channel_reserve_satoshis_arg, min_max_accepted_htlcs_arg, max_minimum_depth_arg, force_announced_channel_preference_arg, their_to_self_delay_arg); - const ret_hu_conv: ChannelHandshakeLimits = new ChannelHandshakeLimits(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.ChannelHandshakeLimits_clone_ptr(this.ptr); - return ret; - } - - public ChannelHandshakeLimits clone() { - number ret = bindings.ChannelHandshakeLimits_clone(this.ptr); - const ret_hu_conv: ChannelHandshakeLimits = new ChannelHandshakeLimits(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static ChannelHandshakeLimits constructor_default() { - number ret = bindings.ChannelHandshakeLimits_default(); - const ret_hu_conv: ChannelHandshakeLimits = new ChannelHandshakeLimits(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ChannelInfo.ts b/ts/structs/ChannelInfo.ts deleted file mode 100644 index 19a18379..00000000 --- a/ts/structs/ChannelInfo.ts +++ /dev/null @@ -1,121 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ChannelInfo extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ChannelInfo_free(this.ptr); - } - } - public ChannelFeatures get_features() { - number ret = bindings.ChannelInfo_get_features(this.ptr); - const ret_hu_conv: ChannelFeatures = new ChannelFeatures(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_features(ChannelFeatures val) { - bindings.ChannelInfo_set_features(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public NodeId get_node_one() { - number ret = bindings.ChannelInfo_get_node_one(this.ptr); - const ret_hu_conv: NodeId = new NodeId(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_node_one(NodeId val) { - bindings.ChannelInfo_set_node_one(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public DirectionalChannelInfo get_one_to_two() { - number ret = bindings.ChannelInfo_get_one_to_two(this.ptr); - const ret_hu_conv: DirectionalChannelInfo = new DirectionalChannelInfo(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_one_to_two(DirectionalChannelInfo val) { - bindings.ChannelInfo_set_one_to_two(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public NodeId get_node_two() { - number ret = bindings.ChannelInfo_get_node_two(this.ptr); - const ret_hu_conv: NodeId = new NodeId(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_node_two(NodeId val) { - bindings.ChannelInfo_set_node_two(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public DirectionalChannelInfo get_two_to_one() { - number ret = bindings.ChannelInfo_get_two_to_one(this.ptr); - const ret_hu_conv: DirectionalChannelInfo = new DirectionalChannelInfo(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_two_to_one(DirectionalChannelInfo val) { - bindings.ChannelInfo_set_two_to_one(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public Option_u64Z get_capacity_sats() { - number ret = bindings.ChannelInfo_get_capacity_sats(this.ptr); - Option_u64Z ret_hu_conv = Option_u64Z.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_capacity_sats(Option_u64Z val) { - bindings.ChannelInfo_set_capacity_sats(this.ptr, val.ptr); - } - - public ChannelAnnouncement get_announcement_message() { - number ret = bindings.ChannelInfo_get_announcement_message(this.ptr); - const ret_hu_conv: ChannelAnnouncement = new ChannelAnnouncement(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_announcement_message(ChannelAnnouncement val) { - bindings.ChannelInfo_set_announcement_message(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public number clone_ptr() { - number ret = bindings.ChannelInfo_clone_ptr(this.ptr); - return ret; - } - - public ChannelInfo clone() { - number ret = bindings.ChannelInfo_clone(this.ptr); - const ret_hu_conv: ChannelInfo = new ChannelInfo(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.ChannelInfo_write(this.ptr); - return ret; - } - - public static Result_ChannelInfoDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.ChannelInfo_read(ser); - Result_ChannelInfoDecodeErrorZ ret_hu_conv = Result_ChannelInfoDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ChannelManager.ts b/ts/structs/ChannelManager.ts deleted file mode 100644 index 5c483a3d..00000000 --- a/ts/structs/ChannelManager.ts +++ /dev/null @@ -1,243 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ChannelManager extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ChannelManager_free(this.ptr); - } - } - public static ChannelManager constructor_new(FeeEstimator fee_est, Watch chain_monitor, BroadcasterInterface tx_broadcaster, Logger logger, KeysInterface keys_manager, UserConfig config, ChainParameters params) { - number ret = bindings.ChannelManager_new(fee_est == null ? 0 : fee_est.ptr, chain_monitor == null ? 0 : chain_monitor.ptr, tx_broadcaster == null ? 0 : tx_broadcaster.ptr, logger == null ? 0 : logger.ptr, keys_manager == null ? 0 : keys_manager.ptr, config == null ? 0 : config.ptr & ~1, params == null ? 0 : params.ptr & ~1); - const ret_hu_conv: ChannelManager = new ChannelManager(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - ret_hu_conv.ptrs_to.add(fee_est); - ret_hu_conv.ptrs_to.add(chain_monitor); - ret_hu_conv.ptrs_to.add(tx_broadcaster); - ret_hu_conv.ptrs_to.add(logger); - ret_hu_conv.ptrs_to.add(keys_manager); - return ret_hu_conv; - } - - public UserConfig get_current_default_configuration() { - number ret = bindings.ChannelManager_get_current_default_configuration(this.ptr); - const ret_hu_conv: UserConfig = new UserConfig(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Result__u832APIErrorZ create_channel(Uint8Array their_network_key, number channel_value_satoshis, number push_msat, number user_channel_id, UserConfig override_config) { - number ret = bindings.ChannelManager_create_channel(this.ptr, InternalUtils.check_arr_len(their_network_key, 33), channel_value_satoshis, push_msat, user_channel_id, override_config == null ? 0 : override_config.ptr & ~1); - Result__u832APIErrorZ ret_hu_conv = Result__u832APIErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public ChannelDetails[] list_channels() { - number[] ret = bindings.ChannelManager_list_channels(this.ptr); - ChannelDetails[] ret_conv_16_arr = new ChannelDetails[ret.length]; - for (int q = 0; q < ret.length; q++) { - number ret_conv_16 = ret[q]; - const ret_conv_16_hu_conv: ChannelDetails = new ChannelDetails(null, ret_conv_16); - ret_conv_16_hu_conv.ptrs_to.add(this); - ret_conv_16_arr[q] = ret_conv_16_hu_conv; - } - return ret_conv_16_arr; - } - - public ChannelDetails[] list_usable_channels() { - number[] ret = bindings.ChannelManager_list_usable_channels(this.ptr); - ChannelDetails[] ret_conv_16_arr = new ChannelDetails[ret.length]; - for (int q = 0; q < ret.length; q++) { - number ret_conv_16 = ret[q]; - const ret_conv_16_hu_conv: ChannelDetails = new ChannelDetails(null, ret_conv_16); - ret_conv_16_hu_conv.ptrs_to.add(this); - ret_conv_16_arr[q] = ret_conv_16_hu_conv; - } - return ret_conv_16_arr; - } - - public Result_NoneAPIErrorZ close_channel(Uint8Array channel_id) { - number ret = bindings.ChannelManager_close_channel(this.ptr, InternalUtils.check_arr_len(channel_id, 32)); - Result_NoneAPIErrorZ ret_hu_conv = Result_NoneAPIErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public Result_NoneAPIErrorZ close_channel_with_target_feerate(Uint8Array channel_id, number target_feerate_sats_per_1000_weight) { - number ret = bindings.ChannelManager_close_channel_with_target_feerate(this.ptr, InternalUtils.check_arr_len(channel_id, 32), target_feerate_sats_per_1000_weight); - Result_NoneAPIErrorZ ret_hu_conv = Result_NoneAPIErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public Result_NoneAPIErrorZ force_close_channel(Uint8Array channel_id) { - number ret = bindings.ChannelManager_force_close_channel(this.ptr, InternalUtils.check_arr_len(channel_id, 32)); - Result_NoneAPIErrorZ ret_hu_conv = Result_NoneAPIErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public void force_close_all_channels() { - bindings.ChannelManager_force_close_all_channels(this.ptr); - } - - public Result_PaymentIdPaymentSendFailureZ send_payment(Route route, Uint8Array payment_hash, Uint8Array payment_secret) { - number ret = bindings.ChannelManager_send_payment(this.ptr, route == null ? 0 : route.ptr & ~1, InternalUtils.check_arr_len(payment_hash, 32), InternalUtils.check_arr_len(payment_secret, 32)); - Result_PaymentIdPaymentSendFailureZ ret_hu_conv = Result_PaymentIdPaymentSendFailureZ.constr_from_ptr(ret); - this.ptrs_to.add(route); - return ret_hu_conv; - } - - public Result_NonePaymentSendFailureZ retry_payment(Route route, Uint8Array payment_id) { - number ret = bindings.ChannelManager_retry_payment(this.ptr, route == null ? 0 : route.ptr & ~1, InternalUtils.check_arr_len(payment_id, 32)); - Result_NonePaymentSendFailureZ ret_hu_conv = Result_NonePaymentSendFailureZ.constr_from_ptr(ret); - this.ptrs_to.add(route); - return ret_hu_conv; - } - - public void abandon_payment(Uint8Array payment_id) { - bindings.ChannelManager_abandon_payment(this.ptr, InternalUtils.check_arr_len(payment_id, 32)); - } - - public Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ send_spontaneous_payment(Route route, Uint8Array payment_preimage) { - number ret = bindings.ChannelManager_send_spontaneous_payment(this.ptr, route == null ? 0 : route.ptr & ~1, InternalUtils.check_arr_len(payment_preimage, 32)); - Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ ret_hu_conv = Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ.constr_from_ptr(ret); - this.ptrs_to.add(route); - return ret_hu_conv; - } - - public Result_NoneAPIErrorZ funding_transaction_generated(Uint8Array temporary_channel_id, Uint8Array funding_transaction) { - number ret = bindings.ChannelManager_funding_transaction_generated(this.ptr, InternalUtils.check_arr_len(temporary_channel_id, 32), funding_transaction); - Result_NoneAPIErrorZ ret_hu_conv = Result_NoneAPIErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public void broadcast_node_announcement(Uint8Array rgb, Uint8Array alias, NetAddress[] addresses) { - bindings.ChannelManager_broadcast_node_announcement(this.ptr, InternalUtils.check_arr_len(rgb, 3), InternalUtils.check_arr_len(alias, 32), addresses != null ? Arrays.stream(addresses).map(addresses_conv_12 -> addresses_conv_12.ptr).toArray(number[]::new) : null); - } - - public void process_pending_htlc_forwards() { - bindings.ChannelManager_process_pending_htlc_forwards(this.ptr); - } - - public void timer_tick_occurred() { - bindings.ChannelManager_timer_tick_occurred(this.ptr); - } - - public boolean fail_htlc_backwards(Uint8Array payment_hash) { - boolean ret = bindings.ChannelManager_fail_htlc_backwards(this.ptr, InternalUtils.check_arr_len(payment_hash, 32)); - return ret; - } - - public boolean claim_funds(Uint8Array payment_preimage) { - boolean ret = bindings.ChannelManager_claim_funds(this.ptr, InternalUtils.check_arr_len(payment_preimage, 32)); - return ret; - } - - public Uint8Array get_our_node_id() { - Uint8Array ret = bindings.ChannelManager_get_our_node_id(this.ptr); - return ret; - } - - public Result_C2Tuple_PaymentHashPaymentSecretZNoneZ create_inbound_payment(Option_u64Z min_value_msat, number invoice_expiry_delta_secs) { - number ret = bindings.ChannelManager_create_inbound_payment(this.ptr, min_value_msat.ptr, invoice_expiry_delta_secs); - Result_C2Tuple_PaymentHashPaymentSecretZNoneZ ret_hu_conv = Result_C2Tuple_PaymentHashPaymentSecretZNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ create_inbound_payment_legacy(Option_u64Z min_value_msat, number invoice_expiry_delta_secs) { - number ret = bindings.ChannelManager_create_inbound_payment_legacy(this.ptr, min_value_msat.ptr, invoice_expiry_delta_secs); - Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ ret_hu_conv = Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public Result_PaymentSecretNoneZ create_inbound_payment_for_hash(Uint8Array payment_hash, Option_u64Z min_value_msat, number invoice_expiry_delta_secs) { - number ret = bindings.ChannelManager_create_inbound_payment_for_hash(this.ptr, InternalUtils.check_arr_len(payment_hash, 32), min_value_msat.ptr, invoice_expiry_delta_secs); - Result_PaymentSecretNoneZ ret_hu_conv = Result_PaymentSecretNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public Result_PaymentSecretAPIErrorZ create_inbound_payment_for_hash_legacy(Uint8Array payment_hash, Option_u64Z min_value_msat, number invoice_expiry_delta_secs) { - number ret = bindings.ChannelManager_create_inbound_payment_for_hash_legacy(this.ptr, InternalUtils.check_arr_len(payment_hash, 32), min_value_msat.ptr, invoice_expiry_delta_secs); - Result_PaymentSecretAPIErrorZ ret_hu_conv = Result_PaymentSecretAPIErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public Result_PaymentPreimageAPIErrorZ get_payment_preimage(Uint8Array payment_hash, Uint8Array payment_secret) { - number ret = bindings.ChannelManager_get_payment_preimage(this.ptr, InternalUtils.check_arr_len(payment_hash, 32), InternalUtils.check_arr_len(payment_secret, 32)); - Result_PaymentPreimageAPIErrorZ ret_hu_conv = Result_PaymentPreimageAPIErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public MessageSendEventsProvider as_MessageSendEventsProvider() { - number ret = bindings.ChannelManager_as_MessageSendEventsProvider(this.ptr); - MessageSendEventsProvider ret_hu_conv = new MessageSendEventsProvider(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public EventsProvider as_EventsProvider() { - number ret = bindings.ChannelManager_as_EventsProvider(this.ptr); - EventsProvider ret_hu_conv = new EventsProvider(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Listen as_Listen() { - number ret = bindings.ChannelManager_as_Listen(this.ptr); - Listen ret_hu_conv = new Listen(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Confirm as_Confirm() { - number ret = bindings.ChannelManager_as_Confirm(this.ptr); - Confirm ret_hu_conv = new Confirm(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public boolean await_persistable_update_timeout(number max_wait) { - boolean ret = bindings.ChannelManager_await_persistable_update_timeout(this.ptr, max_wait); - return ret; - } - - public void await_persistable_update() { - bindings.ChannelManager_await_persistable_update(this.ptr); - } - - public BestBlock current_best_block() { - number ret = bindings.ChannelManager_current_best_block(this.ptr); - const ret_hu_conv: BestBlock = new BestBlock(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public ChannelMessageHandler as_ChannelMessageHandler() { - number ret = bindings.ChannelManager_as_ChannelMessageHandler(this.ptr); - ChannelMessageHandler ret_hu_conv = new ChannelMessageHandler(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.ChannelManager_write(this.ptr); - return ret; - } - - public Payer as_Payer() { - number ret = bindings.ChannelManager_as_Payer(this.ptr); - Payer ret_hu_conv = new Payer(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ChannelManagerPersister.ts b/ts/structs/ChannelManagerPersister.ts deleted file mode 100644 index f6cffb2a..00000000 --- a/ts/structs/ChannelManagerPersister.ts +++ /dev/null @@ -1,63 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export class ChannelManagerPersister extends CommonBase { - - bindings_instance?: bindings.LDKChannelManagerPersister; - - constructor(ptr?: number, arg?: bindings.LDKChannelManagerPersister) { - if (Number.isFinite(ptr)) { - super(ptr); - this.bindings_instance = null; - } else { - // TODO: private constructor instantiation - super(bindings.LDKChannelManagerPersister_new(arg)); - this.ptrs_to.push(arg); - - } - } - - protected finalize() { - if (this.ptr != 0) { - bindings.ChannelManagerPersister_free(this.ptr); - } - super.finalize(); - } - - static new_impl(arg: ChannelManagerPersisterInterface): ChannelManagerPersister { - const impl_holder: LDKChannelManagerPersisterHolder = new LDKChannelManagerPersisterHolder(); - let structImplementation = { - // todo: in-line interface filling - persist_manager (channel_manager: number): number { - const channel_manager_hu_conv: ChannelManager = new ChannelManager(null, channel_manager); - Result_NoneErrorZ ret = arg.persist_manager(channel_manager_hu_conv); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - - }; - impl_holder.held = new ChannelManagerPersister (null, structImplementation); - } - } - - export interface ChannelManagerPersisterInterface { - persist_manager(channel_manager: ChannelManager): Result_NoneErrorZ; - - } - - class LDKChannelManagerPersisterHolder { - held: ChannelManagerPersister; - } - public Result_NoneErrorZ persist_manager(ChannelManager channel_manager) { - number ret = bindings.ChannelManagerPersister_persist_manager(this.ptr, channel_manager == null ? 0 : channel_manager.ptr & ~1); - Result_NoneErrorZ ret_hu_conv = Result_NoneErrorZ.constr_from_ptr(ret); - this.ptrs_to.add(channel_manager); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ChannelManagerReadArgs.ts b/ts/structs/ChannelManagerReadArgs.ts deleted file mode 100644 index 3553905f..00000000 --- a/ts/structs/ChannelManagerReadArgs.ts +++ /dev/null @@ -1,105 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ChannelManagerReadArgs extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ChannelManagerReadArgs_free(this.ptr); - } - } - public KeysInterface get_keys_manager() { - number ret = bindings.ChannelManagerReadArgs_get_keys_manager(this.ptr); - KeysInterface ret_hu_conv = new KeysInterface(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_keys_manager(KeysInterface val) { - bindings.ChannelManagerReadArgs_set_keys_manager(this.ptr, val == null ? 0 : val.ptr); - this.ptrs_to.add(val); - } - - public FeeEstimator get_fee_estimator() { - number ret = bindings.ChannelManagerReadArgs_get_fee_estimator(this.ptr); - FeeEstimator ret_hu_conv = new FeeEstimator(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_fee_estimator(FeeEstimator val) { - bindings.ChannelManagerReadArgs_set_fee_estimator(this.ptr, val == null ? 0 : val.ptr); - this.ptrs_to.add(val); - } - - public Watch get_chain_monitor() { - number ret = bindings.ChannelManagerReadArgs_get_chain_monitor(this.ptr); - Watch ret_hu_conv = new Watch(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_chain_monitor(Watch val) { - bindings.ChannelManagerReadArgs_set_chain_monitor(this.ptr, val == null ? 0 : val.ptr); - this.ptrs_to.add(val); - } - - public BroadcasterInterface get_tx_broadcaster() { - number ret = bindings.ChannelManagerReadArgs_get_tx_broadcaster(this.ptr); - BroadcasterInterface ret_hu_conv = new BroadcasterInterface(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_tx_broadcaster(BroadcasterInterface val) { - bindings.ChannelManagerReadArgs_set_tx_broadcaster(this.ptr, val == null ? 0 : val.ptr); - this.ptrs_to.add(val); - } - - public Logger get_logger() { - number ret = bindings.ChannelManagerReadArgs_get_logger(this.ptr); - Logger ret_hu_conv = new Logger(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_logger(Logger val) { - bindings.ChannelManagerReadArgs_set_logger(this.ptr, val == null ? 0 : val.ptr); - this.ptrs_to.add(val); - } - - public UserConfig get_default_config() { - number ret = bindings.ChannelManagerReadArgs_get_default_config(this.ptr); - const ret_hu_conv: UserConfig = new UserConfig(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_default_config(UserConfig val) { - bindings.ChannelManagerReadArgs_set_default_config(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public static ChannelManagerReadArgs constructor_new(KeysInterface keys_manager, FeeEstimator fee_estimator, Watch chain_monitor, BroadcasterInterface tx_broadcaster, Logger logger, UserConfig default_config, ChannelMonitor[] channel_monitors) { - number ret = bindings.ChannelManagerReadArgs_new(keys_manager == null ? 0 : keys_manager.ptr, fee_estimator == null ? 0 : fee_estimator.ptr, chain_monitor == null ? 0 : chain_monitor.ptr, tx_broadcaster == null ? 0 : tx_broadcaster.ptr, logger == null ? 0 : logger.ptr, default_config == null ? 0 : default_config.ptr & ~1, channel_monitors != null ? Arrays.stream(channel_monitors).map(channel_monitors_conv_16 -> channel_monitors_conv_16 == null ? 0 : channel_monitors_conv_16.ptr & ~1).toArray(number[]::new) : null); - const ret_hu_conv: ChannelManagerReadArgs = new ChannelManagerReadArgs(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - ret_hu_conv.ptrs_to.add(keys_manager); - ret_hu_conv.ptrs_to.add(fee_estimator); - ret_hu_conv.ptrs_to.add(chain_monitor); - ret_hu_conv.ptrs_to.add(tx_broadcaster); - ret_hu_conv.ptrs_to.add(logger); - for (ChannelMonitor channel_monitors_conv_16: channel_monitors) { ret_hu_conv.ptrs_to.add(channel_monitors_conv_16); }; - return ret_hu_conv; - } - -} diff --git a/ts/structs/ChannelMessageHandler.ts b/ts/structs/ChannelMessageHandler.ts deleted file mode 100644 index bc81d097..00000000 --- a/ts/structs/ChannelMessageHandler.ts +++ /dev/null @@ -1,273 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export class ChannelMessageHandler extends CommonBase { - - bindings_instance?: bindings.LDKChannelMessageHandler; - - constructor(ptr?: number, arg?: bindings.LDKChannelMessageHandler, messageSendEventsProvider?: bindings.LDKMessageSendEventsProvider) { - if (Number.isFinite(ptr)) { - super(ptr); - this.bindings_instance = null; - } else { - // TODO: private constructor instantiation - super(bindings.LDKChannelMessageHandler_new(arg, messageSendEventsProvider)); - this.ptrs_to.push(arg); - this.ptrs_to.push(messageSendEventsProvider); - - } - } - - protected finalize() { - if (this.ptr != 0) { - bindings.ChannelMessageHandler_free(this.ptr); - } - super.finalize(); - } - - static new_impl(arg: ChannelMessageHandlerInterface, messageSendEventsProvider_impl: MessageSendEventsProvider.MessageSendEventsProviderInterface): ChannelMessageHandler { - const impl_holder: LDKChannelMessageHandlerHolder = new LDKChannelMessageHandlerHolder(); - let structImplementation = { - // todo: in-line interface filling - handle_open_channel (their_node_id: Uint8Array, their_features: number, msg: number): void { - const their_features_hu_conv: InitFeatures = new InitFeatures(null, their_features); - their_features_hu_conv.ptrs_to.add(this); - const msg_hu_conv: OpenChannel = new OpenChannel(null, msg); - arg.handle_open_channel(their_node_id, their_features_hu_conv, msg_hu_conv); - }, - - handle_accept_channel (their_node_id: Uint8Array, their_features: number, msg: number): void { - const their_features_hu_conv: InitFeatures = new InitFeatures(null, their_features); - their_features_hu_conv.ptrs_to.add(this); - const msg_hu_conv: AcceptChannel = new AcceptChannel(null, msg); - arg.handle_accept_channel(their_node_id, their_features_hu_conv, msg_hu_conv); - }, - - handle_funding_created (their_node_id: Uint8Array, msg: number): void { - const msg_hu_conv: FundingCreated = new FundingCreated(null, msg); - arg.handle_funding_created(their_node_id, msg_hu_conv); - }, - - handle_funding_signed (their_node_id: Uint8Array, msg: number): void { - const msg_hu_conv: FundingSigned = new FundingSigned(null, msg); - arg.handle_funding_signed(their_node_id, msg_hu_conv); - }, - - handle_funding_locked (their_node_id: Uint8Array, msg: number): void { - const msg_hu_conv: FundingLocked = new FundingLocked(null, msg); - arg.handle_funding_locked(their_node_id, msg_hu_conv); - }, - - handle_shutdown (their_node_id: Uint8Array, their_features: number, msg: number): void { - const their_features_hu_conv: InitFeatures = new InitFeatures(null, their_features); - const msg_hu_conv: Shutdown = new Shutdown(null, msg); - arg.handle_shutdown(their_node_id, their_features_hu_conv, msg_hu_conv); - }, - - handle_closing_signed (their_node_id: Uint8Array, msg: number): void { - const msg_hu_conv: ClosingSigned = new ClosingSigned(null, msg); - arg.handle_closing_signed(their_node_id, msg_hu_conv); - }, - - handle_update_add_htlc (their_node_id: Uint8Array, msg: number): void { - const msg_hu_conv: UpdateAddHTLC = new UpdateAddHTLC(null, msg); - arg.handle_update_add_htlc(their_node_id, msg_hu_conv); - }, - - handle_update_fulfill_htlc (their_node_id: Uint8Array, msg: number): void { - const msg_hu_conv: UpdateFulfillHTLC = new UpdateFulfillHTLC(null, msg); - arg.handle_update_fulfill_htlc(their_node_id, msg_hu_conv); - }, - - handle_update_fail_htlc (their_node_id: Uint8Array, msg: number): void { - const msg_hu_conv: UpdateFailHTLC = new UpdateFailHTLC(null, msg); - arg.handle_update_fail_htlc(their_node_id, msg_hu_conv); - }, - - handle_update_fail_malformed_htlc (their_node_id: Uint8Array, msg: number): void { - const msg_hu_conv: UpdateFailMalformedHTLC = new UpdateFailMalformedHTLC(null, msg); - arg.handle_update_fail_malformed_htlc(their_node_id, msg_hu_conv); - }, - - handle_commitment_signed (their_node_id: Uint8Array, msg: number): void { - const msg_hu_conv: CommitmentSigned = new CommitmentSigned(null, msg); - arg.handle_commitment_signed(their_node_id, msg_hu_conv); - }, - - handle_revoke_and_ack (their_node_id: Uint8Array, msg: number): void { - const msg_hu_conv: RevokeAndACK = new RevokeAndACK(null, msg); - arg.handle_revoke_and_ack(their_node_id, msg_hu_conv); - }, - - handle_update_fee (their_node_id: Uint8Array, msg: number): void { - const msg_hu_conv: UpdateFee = new UpdateFee(null, msg); - arg.handle_update_fee(their_node_id, msg_hu_conv); - }, - - handle_announcement_signatures (their_node_id: Uint8Array, msg: number): void { - const msg_hu_conv: AnnouncementSignatures = new AnnouncementSignatures(null, msg); - arg.handle_announcement_signatures(their_node_id, msg_hu_conv); - }, - - peer_disconnected (their_node_id: Uint8Array, no_connection_possible: boolean): void { - arg.peer_disconnected(their_node_id, no_connection_possible); - }, - - peer_connected (their_node_id: Uint8Array, msg: number): void { - const msg_hu_conv: Init = new Init(null, msg); - arg.peer_connected(their_node_id, msg_hu_conv); - }, - - handle_channel_reestablish (their_node_id: Uint8Array, msg: number): void { - const msg_hu_conv: ChannelReestablish = new ChannelReestablish(null, msg); - arg.handle_channel_reestablish(their_node_id, msg_hu_conv); - }, - - handle_channel_update (their_node_id: Uint8Array, msg: number): void { - const msg_hu_conv: ChannelUpdate = new ChannelUpdate(null, msg); - arg.handle_channel_update(their_node_id, msg_hu_conv); - }, - - handle_error (their_node_id: Uint8Array, msg: number): void { - const msg_hu_conv: ErrorMessage = new ErrorMessage(null, msg); - arg.handle_error(their_node_id, msg_hu_conv); - }, - - - }; - impl_holder.held = new ChannelMessageHandler (null, structImplementation, MessageSendEventsProvider.new_impl(MessageSendEventsProvider_impl).bindings_instance); - } - } - - export interface ChannelMessageHandlerInterface { - handle_open_channel(their_node_id: Uint8Array, their_features: InitFeatures, msg: OpenChannel): void; - handle_accept_channel(their_node_id: Uint8Array, their_features: InitFeatures, msg: AcceptChannel): void; - handle_funding_created(their_node_id: Uint8Array, msg: FundingCreated): void; - handle_funding_signed(their_node_id: Uint8Array, msg: FundingSigned): void; - handle_funding_locked(their_node_id: Uint8Array, msg: FundingLocked): void; - handle_shutdown(their_node_id: Uint8Array, their_features: InitFeatures, msg: Shutdown): void; - handle_closing_signed(their_node_id: Uint8Array, msg: ClosingSigned): void; - handle_update_add_htlc(their_node_id: Uint8Array, msg: UpdateAddHTLC): void; - handle_update_fulfill_htlc(their_node_id: Uint8Array, msg: UpdateFulfillHTLC): void; - handle_update_fail_htlc(their_node_id: Uint8Array, msg: UpdateFailHTLC): void; - handle_update_fail_malformed_htlc(their_node_id: Uint8Array, msg: UpdateFailMalformedHTLC): void; - handle_commitment_signed(their_node_id: Uint8Array, msg: CommitmentSigned): void; - handle_revoke_and_ack(their_node_id: Uint8Array, msg: RevokeAndACK): void; - handle_update_fee(their_node_id: Uint8Array, msg: UpdateFee): void; - handle_announcement_signatures(their_node_id: Uint8Array, msg: AnnouncementSignatures): void; - peer_disconnected(their_node_id: Uint8Array, no_connection_possible: boolean): void; - peer_connected(their_node_id: Uint8Array, msg: Init): void; - handle_channel_reestablish(their_node_id: Uint8Array, msg: ChannelReestablish): void; - handle_channel_update(their_node_id: Uint8Array, msg: ChannelUpdate): void; - handle_error(their_node_id: Uint8Array, msg: ErrorMessage): void; - - } - - class LDKChannelMessageHandlerHolder { - held: ChannelMessageHandler; - } - public void handle_open_channel(Uint8Array their_node_id, InitFeatures their_features, OpenChannel msg) { - bindings.ChannelMessageHandler_handle_open_channel(this.ptr, InternalUtils.check_arr_len(their_node_id, 33), their_features == null ? 0 : their_features.ptr & ~1, msg == null ? 0 : msg.ptr & ~1); - this.ptrs_to.add(msg); - } - - public void handle_accept_channel(Uint8Array their_node_id, InitFeatures their_features, AcceptChannel msg) { - bindings.ChannelMessageHandler_handle_accept_channel(this.ptr, InternalUtils.check_arr_len(their_node_id, 33), their_features == null ? 0 : their_features.ptr & ~1, msg == null ? 0 : msg.ptr & ~1); - this.ptrs_to.add(msg); - } - - public void handle_funding_created(Uint8Array their_node_id, FundingCreated msg) { - bindings.ChannelMessageHandler_handle_funding_created(this.ptr, InternalUtils.check_arr_len(their_node_id, 33), msg == null ? 0 : msg.ptr & ~1); - this.ptrs_to.add(msg); - } - - public void handle_funding_signed(Uint8Array their_node_id, FundingSigned msg) { - bindings.ChannelMessageHandler_handle_funding_signed(this.ptr, InternalUtils.check_arr_len(their_node_id, 33), msg == null ? 0 : msg.ptr & ~1); - this.ptrs_to.add(msg); - } - - public void handle_funding_locked(Uint8Array their_node_id, FundingLocked msg) { - bindings.ChannelMessageHandler_handle_funding_locked(this.ptr, InternalUtils.check_arr_len(their_node_id, 33), msg == null ? 0 : msg.ptr & ~1); - this.ptrs_to.add(msg); - } - - public void handle_shutdown(Uint8Array their_node_id, InitFeatures their_features, Shutdown msg) { - bindings.ChannelMessageHandler_handle_shutdown(this.ptr, InternalUtils.check_arr_len(their_node_id, 33), their_features == null ? 0 : their_features.ptr & ~1, msg == null ? 0 : msg.ptr & ~1); - this.ptrs_to.add(their_features); - this.ptrs_to.add(msg); - } - - public void handle_closing_signed(Uint8Array their_node_id, ClosingSigned msg) { - bindings.ChannelMessageHandler_handle_closing_signed(this.ptr, InternalUtils.check_arr_len(their_node_id, 33), msg == null ? 0 : msg.ptr & ~1); - this.ptrs_to.add(msg); - } - - public void handle_update_add_htlc(Uint8Array their_node_id, UpdateAddHTLC msg) { - bindings.ChannelMessageHandler_handle_update_add_htlc(this.ptr, InternalUtils.check_arr_len(their_node_id, 33), msg == null ? 0 : msg.ptr & ~1); - this.ptrs_to.add(msg); - } - - public void handle_update_fulfill_htlc(Uint8Array their_node_id, UpdateFulfillHTLC msg) { - bindings.ChannelMessageHandler_handle_update_fulfill_htlc(this.ptr, InternalUtils.check_arr_len(their_node_id, 33), msg == null ? 0 : msg.ptr & ~1); - this.ptrs_to.add(msg); - } - - public void handle_update_fail_htlc(Uint8Array their_node_id, UpdateFailHTLC msg) { - bindings.ChannelMessageHandler_handle_update_fail_htlc(this.ptr, InternalUtils.check_arr_len(their_node_id, 33), msg == null ? 0 : msg.ptr & ~1); - this.ptrs_to.add(msg); - } - - public void handle_update_fail_malformed_htlc(Uint8Array their_node_id, UpdateFailMalformedHTLC msg) { - bindings.ChannelMessageHandler_handle_update_fail_malformed_htlc(this.ptr, InternalUtils.check_arr_len(their_node_id, 33), msg == null ? 0 : msg.ptr & ~1); - this.ptrs_to.add(msg); - } - - public void handle_commitment_signed(Uint8Array their_node_id, CommitmentSigned msg) { - bindings.ChannelMessageHandler_handle_commitment_signed(this.ptr, InternalUtils.check_arr_len(their_node_id, 33), msg == null ? 0 : msg.ptr & ~1); - this.ptrs_to.add(msg); - } - - public void handle_revoke_and_ack(Uint8Array their_node_id, RevokeAndACK msg) { - bindings.ChannelMessageHandler_handle_revoke_and_ack(this.ptr, InternalUtils.check_arr_len(their_node_id, 33), msg == null ? 0 : msg.ptr & ~1); - this.ptrs_to.add(msg); - } - - public void handle_update_fee(Uint8Array their_node_id, UpdateFee msg) { - bindings.ChannelMessageHandler_handle_update_fee(this.ptr, InternalUtils.check_arr_len(their_node_id, 33), msg == null ? 0 : msg.ptr & ~1); - this.ptrs_to.add(msg); - } - - public void handle_announcement_signatures(Uint8Array their_node_id, AnnouncementSignatures msg) { - bindings.ChannelMessageHandler_handle_announcement_signatures(this.ptr, InternalUtils.check_arr_len(their_node_id, 33), msg == null ? 0 : msg.ptr & ~1); - this.ptrs_to.add(msg); - } - - public void peer_disconnected(Uint8Array their_node_id, boolean no_connection_possible) { - bindings.ChannelMessageHandler_peer_disconnected(this.ptr, InternalUtils.check_arr_len(their_node_id, 33), no_connection_possible); - } - - public void peer_connected(Uint8Array their_node_id, Init msg) { - bindings.ChannelMessageHandler_peer_connected(this.ptr, InternalUtils.check_arr_len(their_node_id, 33), msg == null ? 0 : msg.ptr & ~1); - this.ptrs_to.add(msg); - } - - public void handle_channel_reestablish(Uint8Array their_node_id, ChannelReestablish msg) { - bindings.ChannelMessageHandler_handle_channel_reestablish(this.ptr, InternalUtils.check_arr_len(their_node_id, 33), msg == null ? 0 : msg.ptr & ~1); - this.ptrs_to.add(msg); - } - - public void handle_channel_update(Uint8Array their_node_id, ChannelUpdate msg) { - bindings.ChannelMessageHandler_handle_channel_update(this.ptr, InternalUtils.check_arr_len(their_node_id, 33), msg == null ? 0 : msg.ptr & ~1); - this.ptrs_to.add(msg); - } - - public void handle_error(Uint8Array their_node_id, ErrorMessage msg) { - bindings.ChannelMessageHandler_handle_error(this.ptr, InternalUtils.check_arr_len(their_node_id, 33), msg == null ? 0 : msg.ptr & ~1); - this.ptrs_to.add(msg); - } - -} diff --git a/ts/structs/ChannelMonitor.ts b/ts/structs/ChannelMonitor.ts deleted file mode 100644 index e88b8b46..00000000 --- a/ts/structs/ChannelMonitor.ts +++ /dev/null @@ -1,190 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ChannelMonitor extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ChannelMonitor_free(this.ptr); - } - } - public number clone_ptr() { - number ret = bindings.ChannelMonitor_clone_ptr(this.ptr); - return ret; - } - - public ChannelMonitor clone() { - number ret = bindings.ChannelMonitor_clone(this.ptr); - const ret_hu_conv: ChannelMonitor = new ChannelMonitor(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.ChannelMonitor_write(this.ptr); - return ret; - } - - public Result_NoneNoneZ update_monitor(ChannelMonitorUpdate updates, BroadcasterInterface broadcaster, FeeEstimator fee_estimator, Logger logger) { - number ret = bindings.ChannelMonitor_update_monitor(this.ptr, updates == null ? 0 : updates.ptr & ~1, broadcaster == null ? 0 : broadcaster.ptr, fee_estimator == null ? 0 : fee_estimator.ptr, logger == null ? 0 : logger.ptr); - Result_NoneNoneZ ret_hu_conv = Result_NoneNoneZ.constr_from_ptr(ret); - this.ptrs_to.add(updates); - this.ptrs_to.add(broadcaster); - this.ptrs_to.add(fee_estimator); - this.ptrs_to.add(logger); - return ret_hu_conv; - } - - public number get_latest_update_id() { - number ret = bindings.ChannelMonitor_get_latest_update_id(this.ptr); - return ret; - } - - public TwoTuple_OutPointScriptZ get_funding_txo() { - number ret = bindings.ChannelMonitor_get_funding_txo(this.ptr); - TwoTuple_OutPointScriptZ ret_hu_conv = new TwoTuple_OutPointScriptZ(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public TwoTuple_TxidCVec_C2Tuple_u32ScriptZZZ[] get_outputs_to_watch() { - number[] ret = bindings.ChannelMonitor_get_outputs_to_watch(this.ptr); - TwoTuple_TxidCVec_C2Tuple_u32ScriptZZZ[] ret_conv_40_arr = new TwoTuple_TxidCVec_C2Tuple_u32ScriptZZZ[ret.length]; - for (int o = 0; o < ret.length; o++) { - number ret_conv_40 = ret[o]; - TwoTuple_TxidCVec_C2Tuple_u32ScriptZZZ ret_conv_40_hu_conv = new TwoTuple_TxidCVec_C2Tuple_u32ScriptZZZ(null, ret_conv_40); - ret_conv_40_hu_conv.ptrs_to.add(this); - ret_conv_40_arr[o] = ret_conv_40_hu_conv; - } - return ret_conv_40_arr; - } - - public void load_outputs_to_watch(Filter filter) { - bindings.ChannelMonitor_load_outputs_to_watch(this.ptr, filter == null ? 0 : filter.ptr); - this.ptrs_to.add(filter); - } - - public MonitorEvent[] get_and_clear_pending_monitor_events() { - number[] ret = bindings.ChannelMonitor_get_and_clear_pending_monitor_events(this.ptr); - MonitorEvent[] ret_conv_14_arr = new MonitorEvent[ret.length]; - for (int o = 0; o < ret.length; o++) { - number ret_conv_14 = ret[o]; - MonitorEvent ret_conv_14_hu_conv = MonitorEvent.constr_from_ptr(ret_conv_14); - ret_conv_14_hu_conv.ptrs_to.add(this); - ret_conv_14_arr[o] = ret_conv_14_hu_conv; - } - return ret_conv_14_arr; - } - - public Event[] get_and_clear_pending_events() { - number[] ret = bindings.ChannelMonitor_get_and_clear_pending_events(this.ptr); - Event[] ret_conv_7_arr = new Event[ret.length]; - for (int h = 0; h < ret.length; h++) { - number ret_conv_7 = ret[h]; - Event ret_conv_7_hu_conv = Event.constr_from_ptr(ret_conv_7); - ret_conv_7_hu_conv.ptrs_to.add(this); - ret_conv_7_arr[h] = ret_conv_7_hu_conv; - } - return ret_conv_7_arr; - } - - public Uint8Array[] get_latest_holder_commitment_txn(Logger logger) { - Uint8Array[] ret = bindings.ChannelMonitor_get_latest_holder_commitment_txn(this.ptr, logger == null ? 0 : logger.ptr); - this.ptrs_to.add(logger); - return ret; - } - - public TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ[] block_connected(Uint8Array header, TwoTuple_usizeTransactionZ[] txdata, number height, BroadcasterInterface broadcaster, FeeEstimator fee_estimator, Logger logger) { - number[] ret = bindings.ChannelMonitor_block_connected(this.ptr, InternalUtils.check_arr_len(header, 80), txdata != null ? Arrays.stream(txdata).map(txdata_conv_28 -> txdata_conv_28 != null ? txdata_conv_28.ptr : 0).toArray(number[]::new) : null, height, broadcaster == null ? 0 : broadcaster.ptr, fee_estimator == null ? 0 : fee_estimator.ptr, logger == null ? 0 : logger.ptr); - TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ[] ret_conv_39_arr = new TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ[ret.length]; - for (int n = 0; n < ret.length; n++) { - number ret_conv_39 = ret[n]; - TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ ret_conv_39_hu_conv = new TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ(null, ret_conv_39); - ret_conv_39_hu_conv.ptrs_to.add(this); - ret_conv_39_arr[n] = ret_conv_39_hu_conv; - } - this.ptrs_to.add(broadcaster); - this.ptrs_to.add(fee_estimator); - this.ptrs_to.add(logger); - return ret_conv_39_arr; - } - - public void block_disconnected(Uint8Array header, number height, BroadcasterInterface broadcaster, FeeEstimator fee_estimator, Logger logger) { - bindings.ChannelMonitor_block_disconnected(this.ptr, InternalUtils.check_arr_len(header, 80), height, broadcaster == null ? 0 : broadcaster.ptr, fee_estimator == null ? 0 : fee_estimator.ptr, logger == null ? 0 : logger.ptr); - this.ptrs_to.add(broadcaster); - this.ptrs_to.add(fee_estimator); - this.ptrs_to.add(logger); - } - - public TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ[] transactions_confirmed(Uint8Array header, TwoTuple_usizeTransactionZ[] txdata, number height, BroadcasterInterface broadcaster, FeeEstimator fee_estimator, Logger logger) { - number[] ret = bindings.ChannelMonitor_transactions_confirmed(this.ptr, InternalUtils.check_arr_len(header, 80), txdata != null ? Arrays.stream(txdata).map(txdata_conv_28 -> txdata_conv_28 != null ? txdata_conv_28.ptr : 0).toArray(number[]::new) : null, height, broadcaster == null ? 0 : broadcaster.ptr, fee_estimator == null ? 0 : fee_estimator.ptr, logger == null ? 0 : logger.ptr); - TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ[] ret_conv_39_arr = new TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ[ret.length]; - for (int n = 0; n < ret.length; n++) { - number ret_conv_39 = ret[n]; - TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ ret_conv_39_hu_conv = new TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ(null, ret_conv_39); - ret_conv_39_hu_conv.ptrs_to.add(this); - ret_conv_39_arr[n] = ret_conv_39_hu_conv; - } - this.ptrs_to.add(broadcaster); - this.ptrs_to.add(fee_estimator); - this.ptrs_to.add(logger); - return ret_conv_39_arr; - } - - public void transaction_unconfirmed(Uint8Array txid, BroadcasterInterface broadcaster, FeeEstimator fee_estimator, Logger logger) { - bindings.ChannelMonitor_transaction_unconfirmed(this.ptr, InternalUtils.check_arr_len(txid, 32), broadcaster == null ? 0 : broadcaster.ptr, fee_estimator == null ? 0 : fee_estimator.ptr, logger == null ? 0 : logger.ptr); - this.ptrs_to.add(broadcaster); - this.ptrs_to.add(fee_estimator); - this.ptrs_to.add(logger); - } - - public TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ[] best_block_updated(Uint8Array header, number height, BroadcasterInterface broadcaster, FeeEstimator fee_estimator, Logger logger) { - number[] ret = bindings.ChannelMonitor_best_block_updated(this.ptr, InternalUtils.check_arr_len(header, 80), height, broadcaster == null ? 0 : broadcaster.ptr, fee_estimator == null ? 0 : fee_estimator.ptr, logger == null ? 0 : logger.ptr); - TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ[] ret_conv_39_arr = new TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ[ret.length]; - for (int n = 0; n < ret.length; n++) { - number ret_conv_39 = ret[n]; - TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ ret_conv_39_hu_conv = new TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ(null, ret_conv_39); - ret_conv_39_hu_conv.ptrs_to.add(this); - ret_conv_39_arr[n] = ret_conv_39_hu_conv; - } - this.ptrs_to.add(broadcaster); - this.ptrs_to.add(fee_estimator); - this.ptrs_to.add(logger); - return ret_conv_39_arr; - } - - public Uint8Array[] get_relevant_txids() { - Uint8Array[] ret = bindings.ChannelMonitor_get_relevant_txids(this.ptr); - return ret; - } - - public BestBlock current_best_block() { - number ret = bindings.ChannelMonitor_current_best_block(this.ptr); - const ret_hu_conv: BestBlock = new BestBlock(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Balance[] get_claimable_balances() { - number[] ret = bindings.ChannelMonitor_get_claimable_balances(this.ptr); - Balance[] ret_conv_9_arr = new Balance[ret.length]; - for (int j = 0; j < ret.length; j++) { - number ret_conv_9 = ret[j]; - Balance ret_conv_9_hu_conv = Balance.constr_from_ptr(ret_conv_9); - ret_conv_9_hu_conv.ptrs_to.add(this); - ret_conv_9_arr[j] = ret_conv_9_hu_conv; - } - return ret_conv_9_arr; - } - -} diff --git a/ts/structs/ChannelMonitorUpdate.ts b/ts/structs/ChannelMonitorUpdate.ts deleted file mode 100644 index d33e5141..00000000 --- a/ts/structs/ChannelMonitorUpdate.ts +++ /dev/null @@ -1,53 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ChannelMonitorUpdate extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ChannelMonitorUpdate_free(this.ptr); - } - } - public number get_update_id() { - number ret = bindings.ChannelMonitorUpdate_get_update_id(this.ptr); - return ret; - } - - public void set_update_id(number val) { - bindings.ChannelMonitorUpdate_set_update_id(this.ptr, val); - } - - public number clone_ptr() { - number ret = bindings.ChannelMonitorUpdate_clone_ptr(this.ptr); - return ret; - } - - public ChannelMonitorUpdate clone() { - number ret = bindings.ChannelMonitorUpdate_clone(this.ptr); - const ret_hu_conv: ChannelMonitorUpdate = new ChannelMonitorUpdate(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.ChannelMonitorUpdate_write(this.ptr); - return ret; - } - - public static Result_ChannelMonitorUpdateDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.ChannelMonitorUpdate_read(ser); - Result_ChannelMonitorUpdateDecodeErrorZ ret_hu_conv = Result_ChannelMonitorUpdateDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ChannelPublicKeys.ts b/ts/structs/ChannelPublicKeys.ts deleted file mode 100644 index 18fd7697..00000000 --- a/ts/structs/ChannelPublicKeys.ts +++ /dev/null @@ -1,96 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ChannelPublicKeys extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ChannelPublicKeys_free(this.ptr); - } - } - public Uint8Array get_funding_pubkey() { - Uint8Array ret = bindings.ChannelPublicKeys_get_funding_pubkey(this.ptr); - return ret; - } - - public void set_funding_pubkey(Uint8Array val) { - bindings.ChannelPublicKeys_set_funding_pubkey(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public Uint8Array get_revocation_basepoint() { - Uint8Array ret = bindings.ChannelPublicKeys_get_revocation_basepoint(this.ptr); - return ret; - } - - public void set_revocation_basepoint(Uint8Array val) { - bindings.ChannelPublicKeys_set_revocation_basepoint(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public Uint8Array get_payment_point() { - Uint8Array ret = bindings.ChannelPublicKeys_get_payment_point(this.ptr); - return ret; - } - - public void set_payment_point(Uint8Array val) { - bindings.ChannelPublicKeys_set_payment_point(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public Uint8Array get_delayed_payment_basepoint() { - Uint8Array ret = bindings.ChannelPublicKeys_get_delayed_payment_basepoint(this.ptr); - return ret; - } - - public void set_delayed_payment_basepoint(Uint8Array val) { - bindings.ChannelPublicKeys_set_delayed_payment_basepoint(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public Uint8Array get_htlc_basepoint() { - Uint8Array ret = bindings.ChannelPublicKeys_get_htlc_basepoint(this.ptr); - return ret; - } - - public void set_htlc_basepoint(Uint8Array val) { - bindings.ChannelPublicKeys_set_htlc_basepoint(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public static ChannelPublicKeys constructor_new(Uint8Array funding_pubkey_arg, Uint8Array revocation_basepoint_arg, Uint8Array payment_point_arg, Uint8Array delayed_payment_basepoint_arg, Uint8Array htlc_basepoint_arg) { - number ret = bindings.ChannelPublicKeys_new(InternalUtils.check_arr_len(funding_pubkey_arg, 33), InternalUtils.check_arr_len(revocation_basepoint_arg, 33), InternalUtils.check_arr_len(payment_point_arg, 33), InternalUtils.check_arr_len(delayed_payment_basepoint_arg, 33), InternalUtils.check_arr_len(htlc_basepoint_arg, 33)); - const ret_hu_conv: ChannelPublicKeys = new ChannelPublicKeys(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.ChannelPublicKeys_clone_ptr(this.ptr); - return ret; - } - - public ChannelPublicKeys clone() { - number ret = bindings.ChannelPublicKeys_clone(this.ptr); - const ret_hu_conv: ChannelPublicKeys = new ChannelPublicKeys(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.ChannelPublicKeys_write(this.ptr); - return ret; - } - - public static Result_ChannelPublicKeysDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.ChannelPublicKeys_read(ser); - Result_ChannelPublicKeysDecodeErrorZ ret_hu_conv = Result_ChannelPublicKeysDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ChannelReestablish.ts b/ts/structs/ChannelReestablish.ts deleted file mode 100644 index c39a2ec6..00000000 --- a/ts/structs/ChannelReestablish.ts +++ /dev/null @@ -1,71 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ChannelReestablish extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ChannelReestablish_free(this.ptr); - } - } - public Uint8Array get_channel_id() { - Uint8Array ret = bindings.ChannelReestablish_get_channel_id(this.ptr); - return ret; - } - - public void set_channel_id(Uint8Array val) { - bindings.ChannelReestablish_set_channel_id(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public number get_next_local_commitment_number() { - number ret = bindings.ChannelReestablish_get_next_local_commitment_number(this.ptr); - return ret; - } - - public void set_next_local_commitment_number(number val) { - bindings.ChannelReestablish_set_next_local_commitment_number(this.ptr, val); - } - - public number get_next_remote_commitment_number() { - number ret = bindings.ChannelReestablish_get_next_remote_commitment_number(this.ptr); - return ret; - } - - public void set_next_remote_commitment_number(number val) { - bindings.ChannelReestablish_set_next_remote_commitment_number(this.ptr, val); - } - - public number clone_ptr() { - number ret = bindings.ChannelReestablish_clone_ptr(this.ptr); - return ret; - } - - public ChannelReestablish clone() { - number ret = bindings.ChannelReestablish_clone(this.ptr); - const ret_hu_conv: ChannelReestablish = new ChannelReestablish(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.ChannelReestablish_write(this.ptr); - return ret; - } - - public static Result_ChannelReestablishDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.ChannelReestablish_read(ser); - Result_ChannelReestablishDecodeErrorZ ret_hu_conv = Result_ChannelReestablishDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ChannelTransactionParameters.ts b/ts/structs/ChannelTransactionParameters.ts deleted file mode 100644 index 8b49117e..00000000 --- a/ts/structs/ChannelTransactionParameters.ts +++ /dev/null @@ -1,130 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ChannelTransactionParameters extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ChannelTransactionParameters_free(this.ptr); - } - } - public ChannelPublicKeys get_holder_pubkeys() { - number ret = bindings.ChannelTransactionParameters_get_holder_pubkeys(this.ptr); - const ret_hu_conv: ChannelPublicKeys = new ChannelPublicKeys(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_holder_pubkeys(ChannelPublicKeys val) { - bindings.ChannelTransactionParameters_set_holder_pubkeys(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public number get_holder_selected_contest_delay() { - number ret = bindings.ChannelTransactionParameters_get_holder_selected_contest_delay(this.ptr); - return ret; - } - - public void set_holder_selected_contest_delay(number val) { - bindings.ChannelTransactionParameters_set_holder_selected_contest_delay(this.ptr, val); - } - - public boolean get_is_outbound_from_holder() { - boolean ret = bindings.ChannelTransactionParameters_get_is_outbound_from_holder(this.ptr); - return ret; - } - - public void set_is_outbound_from_holder(boolean val) { - bindings.ChannelTransactionParameters_set_is_outbound_from_holder(this.ptr, val); - } - - public CounterpartyChannelTransactionParameters get_counterparty_parameters() { - number ret = bindings.ChannelTransactionParameters_get_counterparty_parameters(this.ptr); - const ret_hu_conv: CounterpartyChannelTransactionParameters = new CounterpartyChannelTransactionParameters(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_counterparty_parameters(CounterpartyChannelTransactionParameters val) { - bindings.ChannelTransactionParameters_set_counterparty_parameters(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public OutPoint get_funding_outpoint() { - number ret = bindings.ChannelTransactionParameters_get_funding_outpoint(this.ptr); - const ret_hu_conv: OutPoint = new OutPoint(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_funding_outpoint(OutPoint val) { - bindings.ChannelTransactionParameters_set_funding_outpoint(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public COption_NoneZ get_opt_anchors() { - COption_NoneZ ret = bindings.ChannelTransactionParameters_get_opt_anchors(this.ptr); - return ret; - } - - public void set_opt_anchors(COption_NoneZ val) { - bindings.ChannelTransactionParameters_set_opt_anchors(this.ptr, val); - } - - public static ChannelTransactionParameters constructor_new(ChannelPublicKeys holder_pubkeys_arg, number holder_selected_contest_delay_arg, boolean is_outbound_from_holder_arg, CounterpartyChannelTransactionParameters counterparty_parameters_arg, OutPoint funding_outpoint_arg, COption_NoneZ opt_anchors_arg) { - number ret = bindings.ChannelTransactionParameters_new(holder_pubkeys_arg == null ? 0 : holder_pubkeys_arg.ptr & ~1, holder_selected_contest_delay_arg, is_outbound_from_holder_arg, counterparty_parameters_arg == null ? 0 : counterparty_parameters_arg.ptr & ~1, funding_outpoint_arg == null ? 0 : funding_outpoint_arg.ptr & ~1, opt_anchors_arg); - const ret_hu_conv: ChannelTransactionParameters = new ChannelTransactionParameters(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.ChannelTransactionParameters_clone_ptr(this.ptr); - return ret; - } - - public ChannelTransactionParameters clone() { - number ret = bindings.ChannelTransactionParameters_clone(this.ptr); - const ret_hu_conv: ChannelTransactionParameters = new ChannelTransactionParameters(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public boolean is_populated() { - boolean ret = bindings.ChannelTransactionParameters_is_populated(this.ptr); - return ret; - } - - public DirectedChannelTransactionParameters as_holder_broadcastable() { - number ret = bindings.ChannelTransactionParameters_as_holder_broadcastable(this.ptr); - const ret_hu_conv: DirectedChannelTransactionParameters = new DirectedChannelTransactionParameters(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public DirectedChannelTransactionParameters as_counterparty_broadcastable() { - number ret = bindings.ChannelTransactionParameters_as_counterparty_broadcastable(this.ptr); - const ret_hu_conv: DirectedChannelTransactionParameters = new DirectedChannelTransactionParameters(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.ChannelTransactionParameters_write(this.ptr); - return ret; - } - - public static Result_ChannelTransactionParametersDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.ChannelTransactionParameters_read(ser); - Result_ChannelTransactionParametersDecodeErrorZ ret_hu_conv = Result_ChannelTransactionParametersDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ChannelTypeFeatures.ts b/ts/structs/ChannelTypeFeatures.ts deleted file mode 100644 index 6863dec4..00000000 --- a/ts/structs/ChannelTypeFeatures.ts +++ /dev/null @@ -1,69 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ChannelTypeFeatures extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ChannelTypeFeatures_free(this.ptr); - } - } - public boolean eq(ChannelTypeFeatures b) { - boolean ret = bindings.ChannelTypeFeatures_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - this.ptrs_to.add(b); - return ret; - } - - public number clone_ptr() { - number ret = bindings.ChannelTypeFeatures_clone_ptr(this.ptr); - return ret; - } - - public ChannelTypeFeatures clone() { - number ret = bindings.ChannelTypeFeatures_clone(this.ptr); - const ret_hu_conv: ChannelTypeFeatures = new ChannelTypeFeatures(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static ChannelTypeFeatures constructor_empty() { - number ret = bindings.ChannelTypeFeatures_empty(); - const ret_hu_conv: ChannelTypeFeatures = new ChannelTypeFeatures(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static ChannelTypeFeatures constructor_known() { - number ret = bindings.ChannelTypeFeatures_known(); - const ret_hu_conv: ChannelTypeFeatures = new ChannelTypeFeatures(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public boolean requires_unknown_bits() { - boolean ret = bindings.ChannelTypeFeatures_requires_unknown_bits(this.ptr); - return ret; - } - - public Uint8Array write() { - Uint8Array ret = bindings.ChannelTypeFeatures_write(this.ptr); - return ret; - } - - public static Result_ChannelTypeFeaturesDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.ChannelTypeFeatures_read(ser); - Result_ChannelTypeFeaturesDecodeErrorZ ret_hu_conv = Result_ChannelTypeFeaturesDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ChannelUpdate.ts b/ts/structs/ChannelUpdate.ts deleted file mode 100644 index c59b6116..00000000 --- a/ts/structs/ChannelUpdate.ts +++ /dev/null @@ -1,71 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ChannelUpdate extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ChannelUpdate_free(this.ptr); - } - } - public Uint8Array get_signature() { - Uint8Array ret = bindings.ChannelUpdate_get_signature(this.ptr); - return ret; - } - - public void set_signature(Uint8Array val) { - bindings.ChannelUpdate_set_signature(this.ptr, InternalUtils.check_arr_len(val, 64)); - } - - public UnsignedChannelUpdate get_contents() { - number ret = bindings.ChannelUpdate_get_contents(this.ptr); - const ret_hu_conv: UnsignedChannelUpdate = new UnsignedChannelUpdate(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_contents(UnsignedChannelUpdate val) { - bindings.ChannelUpdate_set_contents(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public static ChannelUpdate constructor_new(Uint8Array signature_arg, UnsignedChannelUpdate contents_arg) { - number ret = bindings.ChannelUpdate_new(InternalUtils.check_arr_len(signature_arg, 64), contents_arg == null ? 0 : contents_arg.ptr & ~1); - const ret_hu_conv: ChannelUpdate = new ChannelUpdate(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.ChannelUpdate_clone_ptr(this.ptr); - return ret; - } - - public ChannelUpdate clone() { - number ret = bindings.ChannelUpdate_clone(this.ptr); - const ret_hu_conv: ChannelUpdate = new ChannelUpdate(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.ChannelUpdate_write(this.ptr); - return ret; - } - - public static Result_ChannelUpdateDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.ChannelUpdate_read(ser); - Result_ChannelUpdateDecodeErrorZ ret_hu_conv = Result_ChannelUpdateDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ClosingSigned.ts b/ts/structs/ClosingSigned.ts deleted file mode 100644 index c9cd2564..00000000 --- a/ts/structs/ClosingSigned.ts +++ /dev/null @@ -1,89 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ClosingSigned extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ClosingSigned_free(this.ptr); - } - } - public Uint8Array get_channel_id() { - Uint8Array ret = bindings.ClosingSigned_get_channel_id(this.ptr); - return ret; - } - - public void set_channel_id(Uint8Array val) { - bindings.ClosingSigned_set_channel_id(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public number get_fee_satoshis() { - number ret = bindings.ClosingSigned_get_fee_satoshis(this.ptr); - return ret; - } - - public void set_fee_satoshis(number val) { - bindings.ClosingSigned_set_fee_satoshis(this.ptr, val); - } - - public Uint8Array get_signature() { - Uint8Array ret = bindings.ClosingSigned_get_signature(this.ptr); - return ret; - } - - public void set_signature(Uint8Array val) { - bindings.ClosingSigned_set_signature(this.ptr, InternalUtils.check_arr_len(val, 64)); - } - - public ClosingSignedFeeRange get_fee_range() { - number ret = bindings.ClosingSigned_get_fee_range(this.ptr); - const ret_hu_conv: ClosingSignedFeeRange = new ClosingSignedFeeRange(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_fee_range(ClosingSignedFeeRange val) { - bindings.ClosingSigned_set_fee_range(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public static ClosingSigned constructor_new(Uint8Array channel_id_arg, number fee_satoshis_arg, Uint8Array signature_arg, ClosingSignedFeeRange fee_range_arg) { - number ret = bindings.ClosingSigned_new(InternalUtils.check_arr_len(channel_id_arg, 32), fee_satoshis_arg, InternalUtils.check_arr_len(signature_arg, 64), fee_range_arg == null ? 0 : fee_range_arg.ptr & ~1); - const ret_hu_conv: ClosingSigned = new ClosingSigned(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.ClosingSigned_clone_ptr(this.ptr); - return ret; - } - - public ClosingSigned clone() { - number ret = bindings.ClosingSigned_clone(this.ptr); - const ret_hu_conv: ClosingSigned = new ClosingSigned(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.ClosingSigned_write(this.ptr); - return ret; - } - - public static Result_ClosingSignedDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.ClosingSigned_read(ser); - Result_ClosingSignedDecodeErrorZ ret_hu_conv = Result_ClosingSignedDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ClosingSignedFeeRange.ts b/ts/structs/ClosingSignedFeeRange.ts deleted file mode 100644 index a34f9e39..00000000 --- a/ts/structs/ClosingSignedFeeRange.ts +++ /dev/null @@ -1,69 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ClosingSignedFeeRange extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ClosingSignedFeeRange_free(this.ptr); - } - } - public number get_min_fee_satoshis() { - number ret = bindings.ClosingSignedFeeRange_get_min_fee_satoshis(this.ptr); - return ret; - } - - public void set_min_fee_satoshis(number val) { - bindings.ClosingSignedFeeRange_set_min_fee_satoshis(this.ptr, val); - } - - public number get_max_fee_satoshis() { - number ret = bindings.ClosingSignedFeeRange_get_max_fee_satoshis(this.ptr); - return ret; - } - - public void set_max_fee_satoshis(number val) { - bindings.ClosingSignedFeeRange_set_max_fee_satoshis(this.ptr, val); - } - - public static ClosingSignedFeeRange constructor_new(number min_fee_satoshis_arg, number max_fee_satoshis_arg) { - number ret = bindings.ClosingSignedFeeRange_new(min_fee_satoshis_arg, max_fee_satoshis_arg); - const ret_hu_conv: ClosingSignedFeeRange = new ClosingSignedFeeRange(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.ClosingSignedFeeRange_clone_ptr(this.ptr); - return ret; - } - - public ClosingSignedFeeRange clone() { - number ret = bindings.ClosingSignedFeeRange_clone(this.ptr); - const ret_hu_conv: ClosingSignedFeeRange = new ClosingSignedFeeRange(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.ClosingSignedFeeRange_write(this.ptr); - return ret; - } - - public static Result_ClosingSignedFeeRangeDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.ClosingSignedFeeRange_read(ser); - Result_ClosingSignedFeeRangeDecodeErrorZ ret_hu_conv = Result_ClosingSignedFeeRangeDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ClosingTransaction.ts b/ts/structs/ClosingTransaction.ts deleted file mode 100644 index 52f1bc7c..00000000 --- a/ts/structs/ClosingTransaction.ts +++ /dev/null @@ -1,78 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ClosingTransaction extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ClosingTransaction_free(this.ptr); - } - } - public number clone_ptr() { - number ret = bindings.ClosingTransaction_clone_ptr(this.ptr); - return ret; - } - - public ClosingTransaction clone() { - number ret = bindings.ClosingTransaction_clone(this.ptr); - const ret_hu_conv: ClosingTransaction = new ClosingTransaction(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public number hash() { - number ret = bindings.ClosingTransaction_hash(this.ptr); - return ret; - } - - public static ClosingTransaction constructor_new(number to_holder_value_sat, number to_counterparty_value_sat, Uint8Array to_holder_script, Uint8Array to_counterparty_script, OutPoint funding_outpoint) { - number ret = bindings.ClosingTransaction_new(to_holder_value_sat, to_counterparty_value_sat, to_holder_script, to_counterparty_script, funding_outpoint == null ? 0 : funding_outpoint.ptr & ~1); - const ret_hu_conv: ClosingTransaction = new ClosingTransaction(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public TrustedClosingTransaction trust() { - number ret = bindings.ClosingTransaction_trust(this.ptr); - const ret_hu_conv: TrustedClosingTransaction = new TrustedClosingTransaction(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Result_TrustedClosingTransactionNoneZ verify(OutPoint funding_outpoint) { - number ret = bindings.ClosingTransaction_verify(this.ptr, funding_outpoint == null ? 0 : funding_outpoint.ptr & ~1); - Result_TrustedClosingTransactionNoneZ ret_hu_conv = Result_TrustedClosingTransactionNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public number to_holder_value_sat() { - number ret = bindings.ClosingTransaction_to_holder_value_sat(this.ptr); - return ret; - } - - public number to_counterparty_value_sat() { - number ret = bindings.ClosingTransaction_to_counterparty_value_sat(this.ptr); - return ret; - } - - public Uint8Array to_holder_script() { - Uint8Array ret = bindings.ClosingTransaction_to_holder_script(this.ptr); - return ret; - } - - public Uint8Array to_counterparty_script() { - Uint8Array ret = bindings.ClosingTransaction_to_counterparty_script(this.ptr); - return ret; - } - -} diff --git a/ts/structs/ClosureReason.ts b/ts/structs/ClosureReason.ts deleted file mode 100644 index fab6ef68..00000000 --- a/ts/structs/ClosureReason.ts +++ /dev/null @@ -1,158 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class ClosureReason extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.ClosureReason_free(this.ptr); } - } - static constr_from_ptr(ptr: number): ClosureReason { - const raw_val: bindings.LDKClosureReason = bindings.LDKClosureReason_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKClosureReason.CounterpartyForceClosed) { - return new CounterpartyForceClosed(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKClosureReason.HolderForceClosed) { - return new HolderForceClosed(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKClosureReason.CooperativeClosure) { - return new CooperativeClosure(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKClosureReason.CommitmentTxConfirmed) { - return new CommitmentTxConfirmed(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKClosureReason.FundingTimedOut) { - return new FundingTimedOut(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKClosureReason.ProcessingError) { - return new ProcessingError(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKClosureReason.DisconnectedPeer) { - return new DisconnectedPeer(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKClosureReason.OutdatedChannelManager) { - return new OutdatedChannelManager(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class CounterpartyForceClosed extends ClosureReason { - public peer_msg: String; - private constructor(ptr: number, obj: bindings.LDKClosureReason.CounterpartyForceClosed) { - super(null, ptr); - this.peer_msg = obj.peer_msg; - } -} -export class HolderForceClosed extends ClosureReason { - private constructor(ptr: number, obj: bindings.LDKClosureReason.HolderForceClosed) { - super(null, ptr); - } -} -export class CooperativeClosure extends ClosureReason { - private constructor(ptr: number, obj: bindings.LDKClosureReason.CooperativeClosure) { - super(null, ptr); - } -} -export class CommitmentTxConfirmed extends ClosureReason { - private constructor(ptr: number, obj: bindings.LDKClosureReason.CommitmentTxConfirmed) { - super(null, ptr); - } -} -export class FundingTimedOut extends ClosureReason { - private constructor(ptr: number, obj: bindings.LDKClosureReason.FundingTimedOut) { - super(null, ptr); - } -} -export class ProcessingError extends ClosureReason { - public err: String; - private constructor(ptr: number, obj: bindings.LDKClosureReason.ProcessingError) { - super(null, ptr); - this.err = obj.err; - } -} -export class DisconnectedPeer extends ClosureReason { - private constructor(ptr: number, obj: bindings.LDKClosureReason.DisconnectedPeer) { - super(null, ptr); - } -} -export class OutdatedChannelManager extends ClosureReason { - private constructor(ptr: number, obj: bindings.LDKClosureReason.OutdatedChannelManager) { - super(null, ptr); - } -} - public number clone_ptr() { - number ret = bindings.ClosureReason_clone_ptr(this.ptr); - return ret; - } - - public ClosureReason clone() { - number ret = bindings.ClosureReason_clone(this.ptr); - ClosureReason ret_hu_conv = ClosureReason.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static ClosureReason constructor_counterparty_force_closed(String peer_msg) { - number ret = bindings.ClosureReason_counterparty_force_closed(peer_msg); - ClosureReason ret_hu_conv = ClosureReason.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static ClosureReason constructor_holder_force_closed() { - number ret = bindings.ClosureReason_holder_force_closed(); - ClosureReason ret_hu_conv = ClosureReason.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static ClosureReason constructor_cooperative_closure() { - number ret = bindings.ClosureReason_cooperative_closure(); - ClosureReason ret_hu_conv = ClosureReason.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static ClosureReason constructor_commitment_tx_confirmed() { - number ret = bindings.ClosureReason_commitment_tx_confirmed(); - ClosureReason ret_hu_conv = ClosureReason.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static ClosureReason constructor_funding_timed_out() { - number ret = bindings.ClosureReason_funding_timed_out(); - ClosureReason ret_hu_conv = ClosureReason.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static ClosureReason constructor_processing_error(String err) { - number ret = bindings.ClosureReason_processing_error(err); - ClosureReason ret_hu_conv = ClosureReason.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static ClosureReason constructor_disconnected_peer() { - number ret = bindings.ClosureReason_disconnected_peer(); - ClosureReason ret_hu_conv = ClosureReason.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static ClosureReason constructor_outdated_channel_manager() { - number ret = bindings.ClosureReason_outdated_channel_manager(); - ClosureReason ret_hu_conv = ClosureReason.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.ClosureReason_write(this.ptr); - return ret; - } - -} diff --git a/ts/structs/CommitmentSigned.ts b/ts/structs/CommitmentSigned.ts deleted file mode 100644 index 59def698..00000000 --- a/ts/structs/CommitmentSigned.ts +++ /dev/null @@ -1,73 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class CommitmentSigned extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.CommitmentSigned_free(this.ptr); - } - } - public Uint8Array get_channel_id() { - Uint8Array ret = bindings.CommitmentSigned_get_channel_id(this.ptr); - return ret; - } - - public void set_channel_id(Uint8Array val) { - bindings.CommitmentSigned_set_channel_id(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public Uint8Array get_signature() { - Uint8Array ret = bindings.CommitmentSigned_get_signature(this.ptr); - return ret; - } - - public void set_signature(Uint8Array val) { - bindings.CommitmentSigned_set_signature(this.ptr, InternalUtils.check_arr_len(val, 64)); - } - - public void set_htlc_signatures(Uint8Array[] val) { - bindings.CommitmentSigned_set_htlc_signatures(this.ptr, val != null ? Arrays.stream(val).map(val_conv_12 -> InternalUtils.check_arr_len(val_conv_12, 64)).toArray(Uint8Array[]::new) : null); - } - - public static CommitmentSigned constructor_new(Uint8Array channel_id_arg, Uint8Array signature_arg, Uint8Array[] htlc_signatures_arg) { - number ret = bindings.CommitmentSigned_new(InternalUtils.check_arr_len(channel_id_arg, 32), InternalUtils.check_arr_len(signature_arg, 64), htlc_signatures_arg != null ? Arrays.stream(htlc_signatures_arg).map(htlc_signatures_arg_conv_12 -> InternalUtils.check_arr_len(htlc_signatures_arg_conv_12, 64)).toArray(Uint8Array[]::new) : null); - const ret_hu_conv: CommitmentSigned = new CommitmentSigned(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.CommitmentSigned_clone_ptr(this.ptr); - return ret; - } - - public CommitmentSigned clone() { - number ret = bindings.CommitmentSigned_clone(this.ptr); - const ret_hu_conv: CommitmentSigned = new CommitmentSigned(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.CommitmentSigned_write(this.ptr); - return ret; - } - - public static Result_CommitmentSignedDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.CommitmentSigned_read(ser); - Result_CommitmentSignedDecodeErrorZ ret_hu_conv = Result_CommitmentSignedDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/CommitmentTransaction.ts b/ts/structs/CommitmentTransaction.ts deleted file mode 100644 index 2a1a96fc..00000000 --- a/ts/structs/CommitmentTransaction.ts +++ /dev/null @@ -1,80 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class CommitmentTransaction extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.CommitmentTransaction_free(this.ptr); - } - } - public number clone_ptr() { - number ret = bindings.CommitmentTransaction_clone_ptr(this.ptr); - return ret; - } - - public CommitmentTransaction clone() { - number ret = bindings.CommitmentTransaction_clone(this.ptr); - const ret_hu_conv: CommitmentTransaction = new CommitmentTransaction(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.CommitmentTransaction_write(this.ptr); - return ret; - } - - public static Result_CommitmentTransactionDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.CommitmentTransaction_read(ser); - Result_CommitmentTransactionDecodeErrorZ ret_hu_conv = Result_CommitmentTransactionDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public number commitment_number() { - number ret = bindings.CommitmentTransaction_commitment_number(this.ptr); - return ret; - } - - public number to_broadcaster_value_sat() { - number ret = bindings.CommitmentTransaction_to_broadcaster_value_sat(this.ptr); - return ret; - } - - public number to_countersignatory_value_sat() { - number ret = bindings.CommitmentTransaction_to_countersignatory_value_sat(this.ptr); - return ret; - } - - public number feerate_per_kw() { - number ret = bindings.CommitmentTransaction_feerate_per_kw(this.ptr); - return ret; - } - - public TrustedCommitmentTransaction trust() { - number ret = bindings.CommitmentTransaction_trust(this.ptr); - const ret_hu_conv: TrustedCommitmentTransaction = new TrustedCommitmentTransaction(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Result_TrustedCommitmentTransactionNoneZ verify(DirectedChannelTransactionParameters channel_parameters, ChannelPublicKeys broadcaster_keys, ChannelPublicKeys countersignatory_keys) { - number ret = bindings.CommitmentTransaction_verify(this.ptr, channel_parameters == null ? 0 : channel_parameters.ptr & ~1, broadcaster_keys == null ? 0 : broadcaster_keys.ptr & ~1, countersignatory_keys == null ? 0 : countersignatory_keys.ptr & ~1); - Result_TrustedCommitmentTransactionNoneZ ret_hu_conv = Result_TrustedCommitmentTransactionNoneZ.constr_from_ptr(ret); - this.ptrs_to.add(channel_parameters); - this.ptrs_to.add(broadcaster_keys); - this.ptrs_to.add(countersignatory_keys); - return ret_hu_conv; - } - -} diff --git a/ts/structs/CommitmentUpdate.ts b/ts/structs/CommitmentUpdate.ts deleted file mode 100644 index 0c7e3dbc..00000000 --- a/ts/structs/CommitmentUpdate.ts +++ /dev/null @@ -1,126 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class CommitmentUpdate extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.CommitmentUpdate_free(this.ptr); - } - } - public UpdateAddHTLC[] get_update_add_htlcs() { - number[] ret = bindings.CommitmentUpdate_get_update_add_htlcs(this.ptr); - UpdateAddHTLC[] ret_conv_15_arr = new UpdateAddHTLC[ret.length]; - for (int p = 0; p < ret.length; p++) { - number ret_conv_15 = ret[p]; - const ret_conv_15_hu_conv: UpdateAddHTLC = new UpdateAddHTLC(null, ret_conv_15); - ret_conv_15_hu_conv.ptrs_to.add(this); - ret_conv_15_arr[p] = ret_conv_15_hu_conv; - } - return ret_conv_15_arr; - } - - public void set_update_add_htlcs(UpdateAddHTLC[] val) { - bindings.CommitmentUpdate_set_update_add_htlcs(this.ptr, val != null ? Arrays.stream(val).map(val_conv_15 -> val_conv_15 == null ? 0 : val_conv_15.ptr & ~1).toArray(number[]::new) : null); - } - - public UpdateFulfillHTLC[] get_update_fulfill_htlcs() { - number[] ret = bindings.CommitmentUpdate_get_update_fulfill_htlcs(this.ptr); - UpdateFulfillHTLC[] ret_conv_19_arr = new UpdateFulfillHTLC[ret.length]; - for (int t = 0; t < ret.length; t++) { - number ret_conv_19 = ret[t]; - const ret_conv_19_hu_conv: UpdateFulfillHTLC = new UpdateFulfillHTLC(null, ret_conv_19); - ret_conv_19_hu_conv.ptrs_to.add(this); - ret_conv_19_arr[t] = ret_conv_19_hu_conv; - } - return ret_conv_19_arr; - } - - public void set_update_fulfill_htlcs(UpdateFulfillHTLC[] val) { - bindings.CommitmentUpdate_set_update_fulfill_htlcs(this.ptr, val != null ? Arrays.stream(val).map(val_conv_19 -> val_conv_19 == null ? 0 : val_conv_19.ptr & ~1).toArray(number[]::new) : null); - } - - public UpdateFailHTLC[] get_update_fail_htlcs() { - number[] ret = bindings.CommitmentUpdate_get_update_fail_htlcs(this.ptr); - UpdateFailHTLC[] ret_conv_16_arr = new UpdateFailHTLC[ret.length]; - for (int q = 0; q < ret.length; q++) { - number ret_conv_16 = ret[q]; - const ret_conv_16_hu_conv: UpdateFailHTLC = new UpdateFailHTLC(null, ret_conv_16); - ret_conv_16_hu_conv.ptrs_to.add(this); - ret_conv_16_arr[q] = ret_conv_16_hu_conv; - } - return ret_conv_16_arr; - } - - public void set_update_fail_htlcs(UpdateFailHTLC[] val) { - bindings.CommitmentUpdate_set_update_fail_htlcs(this.ptr, val != null ? Arrays.stream(val).map(val_conv_16 -> val_conv_16 == null ? 0 : val_conv_16.ptr & ~1).toArray(number[]::new) : null); - } - - public UpdateFailMalformedHTLC[] get_update_fail_malformed_htlcs() { - number[] ret = bindings.CommitmentUpdate_get_update_fail_malformed_htlcs(this.ptr); - UpdateFailMalformedHTLC[] ret_conv_25_arr = new UpdateFailMalformedHTLC[ret.length]; - for (int z = 0; z < ret.length; z++) { - number ret_conv_25 = ret[z]; - const ret_conv_25_hu_conv: UpdateFailMalformedHTLC = new UpdateFailMalformedHTLC(null, ret_conv_25); - ret_conv_25_hu_conv.ptrs_to.add(this); - ret_conv_25_arr[z] = ret_conv_25_hu_conv; - } - return ret_conv_25_arr; - } - - public void set_update_fail_malformed_htlcs(UpdateFailMalformedHTLC[] val) { - bindings.CommitmentUpdate_set_update_fail_malformed_htlcs(this.ptr, val != null ? Arrays.stream(val).map(val_conv_25 -> val_conv_25 == null ? 0 : val_conv_25.ptr & ~1).toArray(number[]::new) : null); - } - - public UpdateFee get_update_fee() { - number ret = bindings.CommitmentUpdate_get_update_fee(this.ptr); - const ret_hu_conv: UpdateFee = new UpdateFee(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_update_fee(UpdateFee val) { - bindings.CommitmentUpdate_set_update_fee(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public CommitmentSigned get_commitment_signed() { - number ret = bindings.CommitmentUpdate_get_commitment_signed(this.ptr); - const ret_hu_conv: CommitmentSigned = new CommitmentSigned(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_commitment_signed(CommitmentSigned val) { - bindings.CommitmentUpdate_set_commitment_signed(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public static CommitmentUpdate constructor_new(UpdateAddHTLC[] update_add_htlcs_arg, UpdateFulfillHTLC[] update_fulfill_htlcs_arg, UpdateFailHTLC[] update_fail_htlcs_arg, UpdateFailMalformedHTLC[] update_fail_malformed_htlcs_arg, UpdateFee update_fee_arg, CommitmentSigned commitment_signed_arg) { - number ret = bindings.CommitmentUpdate_new(update_add_htlcs_arg != null ? Arrays.stream(update_add_htlcs_arg).map(update_add_htlcs_arg_conv_15 -> update_add_htlcs_arg_conv_15 == null ? 0 : update_add_htlcs_arg_conv_15.ptr & ~1).toArray(number[]::new) : null, update_fulfill_htlcs_arg != null ? Arrays.stream(update_fulfill_htlcs_arg).map(update_fulfill_htlcs_arg_conv_19 -> update_fulfill_htlcs_arg_conv_19 == null ? 0 : update_fulfill_htlcs_arg_conv_19.ptr & ~1).toArray(number[]::new) : null, update_fail_htlcs_arg != null ? Arrays.stream(update_fail_htlcs_arg).map(update_fail_htlcs_arg_conv_16 -> update_fail_htlcs_arg_conv_16 == null ? 0 : update_fail_htlcs_arg_conv_16.ptr & ~1).toArray(number[]::new) : null, update_fail_malformed_htlcs_arg != null ? Arrays.stream(update_fail_malformed_htlcs_arg).map(update_fail_malformed_htlcs_arg_conv_25 -> update_fail_malformed_htlcs_arg_conv_25 == null ? 0 : update_fail_malformed_htlcs_arg_conv_25.ptr & ~1).toArray(number[]::new) : null, update_fee_arg == null ? 0 : update_fee_arg.ptr & ~1, commitment_signed_arg == null ? 0 : commitment_signed_arg.ptr & ~1); - const ret_hu_conv: CommitmentUpdate = new CommitmentUpdate(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.CommitmentUpdate_clone_ptr(this.ptr); - return ret; - } - - public CommitmentUpdate clone() { - number ret = bindings.CommitmentUpdate_clone(this.ptr); - const ret_hu_conv: CommitmentUpdate = new CommitmentUpdate(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/CommonBase.ts b/ts/structs/CommonBase.ts deleted file mode 100644 index 2f7a0f01..00000000 --- a/ts/structs/CommonBase.ts +++ /dev/null @@ -1,10 +0,0 @@ - - export default class CommonBase { - ptr: number; - ptrs_to: object[] = []; // new LinkedList(); TODO: build linked list implementation - protected constructor(ptr: number) { this.ptr = ptr; } - public _test_only_get_ptr(): number { return this.ptr; } - protected finalize() { - // TODO: finalize myself - } - } diff --git a/ts/structs/Confirm.ts b/ts/structs/Confirm.ts deleted file mode 100644 index c991e83c..00000000 --- a/ts/structs/Confirm.ts +++ /dev/null @@ -1,94 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export class Confirm extends CommonBase { - - bindings_instance?: bindings.LDKConfirm; - - constructor(ptr?: number, arg?: bindings.LDKConfirm) { - if (Number.isFinite(ptr)) { - super(ptr); - this.bindings_instance = null; - } else { - // TODO: private constructor instantiation - super(bindings.LDKConfirm_new(arg)); - this.ptrs_to.push(arg); - - } - } - - protected finalize() { - if (this.ptr != 0) { - bindings.Confirm_free(this.ptr); - } - super.finalize(); - } - - static new_impl(arg: ConfirmInterface): Confirm { - const impl_holder: LDKConfirmHolder = new LDKConfirmHolder(); - let structImplementation = { - // todo: in-line interface filling - transactions_confirmed (header: Uint8Array, txdata: number[], height: number): void { - TwoTuple_usizeTransactionZ[] txdata_conv_28_arr = new TwoTuple_usizeTransactionZ[txdata.length]; - for (int c = 0; c < txdata.length; c++) { - number txdata_conv_28 = txdata[c]; - TwoTuple_usizeTransactionZ txdata_conv_28_hu_conv = new TwoTuple_usizeTransactionZ(null, txdata_conv_28); - txdata_conv_28_hu_conv.ptrs_to.add(this); - txdata_conv_28_arr[c] = txdata_conv_28_hu_conv; - } - arg.transactions_confirmed(header, txdata_conv_28_arr, height); - }, - - transaction_unconfirmed (txid: Uint8Array): void { - arg.transaction_unconfirmed(txid); - }, - - best_block_updated (header: Uint8Array, height: number): void { - arg.best_block_updated(header, height); - }, - - get_relevant_txids (): Uint8Array[] { - Uint8Array[] ret = arg.get_relevant_txids(); - result: Uint8Array[] = ret != null ? Arrays.stream(ret).map(ret_conv_12 -> InternalUtils.check_arr_len(ret_conv_12, 32)).toArray(Uint8Array[]::new) : null; - return result; - }, - - - }; - impl_holder.held = new Confirm (null, structImplementation); - } - } - - export interface ConfirmInterface { - transactions_confirmed(header: Uint8Array, txdata: TwoTuple_usizeTransactionZ[], height: number): void; - transaction_unconfirmed(txid: Uint8Array): void; - best_block_updated(header: Uint8Array, height: number): void; - get_relevant_txids(): Uint8Array[]; - - } - - class LDKConfirmHolder { - held: Confirm; - } - public void transactions_confirmed(Uint8Array header, TwoTuple_usizeTransactionZ[] txdata, number height) { - bindings.Confirm_transactions_confirmed(this.ptr, InternalUtils.check_arr_len(header, 80), txdata != null ? Arrays.stream(txdata).map(txdata_conv_28 -> txdata_conv_28 != null ? txdata_conv_28.ptr : 0).toArray(number[]::new) : null, height); - } - - public void transaction_unconfirmed(Uint8Array txid) { - bindings.Confirm_transaction_unconfirmed(this.ptr, InternalUtils.check_arr_len(txid, 32)); - } - - public void best_block_updated(Uint8Array header, number height) { - bindings.Confirm_best_block_updated(this.ptr, InternalUtils.check_arr_len(header, 80), height); - } - - public Uint8Array[] get_relevant_txids() { - Uint8Array[] ret = bindings.Confirm_get_relevant_txids(this.ptr); - return ret; - } - -} diff --git a/ts/structs/CounterpartyChannelTransactionParameters.ts b/ts/structs/CounterpartyChannelTransactionParameters.ts deleted file mode 100644 index 140dfb35..00000000 --- a/ts/structs/CounterpartyChannelTransactionParameters.ts +++ /dev/null @@ -1,71 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class CounterpartyChannelTransactionParameters extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.CounterpartyChannelTransactionParameters_free(this.ptr); - } - } - public ChannelPublicKeys get_pubkeys() { - number ret = bindings.CounterpartyChannelTransactionParameters_get_pubkeys(this.ptr); - const ret_hu_conv: ChannelPublicKeys = new ChannelPublicKeys(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_pubkeys(ChannelPublicKeys val) { - bindings.CounterpartyChannelTransactionParameters_set_pubkeys(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public number get_selected_contest_delay() { - number ret = bindings.CounterpartyChannelTransactionParameters_get_selected_contest_delay(this.ptr); - return ret; - } - - public void set_selected_contest_delay(number val) { - bindings.CounterpartyChannelTransactionParameters_set_selected_contest_delay(this.ptr, val); - } - - public static CounterpartyChannelTransactionParameters constructor_new(ChannelPublicKeys pubkeys_arg, number selected_contest_delay_arg) { - number ret = bindings.CounterpartyChannelTransactionParameters_new(pubkeys_arg == null ? 0 : pubkeys_arg.ptr & ~1, selected_contest_delay_arg); - const ret_hu_conv: CounterpartyChannelTransactionParameters = new CounterpartyChannelTransactionParameters(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.CounterpartyChannelTransactionParameters_clone_ptr(this.ptr); - return ret; - } - - public CounterpartyChannelTransactionParameters clone() { - number ret = bindings.CounterpartyChannelTransactionParameters_clone(this.ptr); - const ret_hu_conv: CounterpartyChannelTransactionParameters = new CounterpartyChannelTransactionParameters(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.CounterpartyChannelTransactionParameters_write(this.ptr); - return ret; - } - - public static Result_CounterpartyChannelTransactionParametersDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.CounterpartyChannelTransactionParameters_read(ser); - Result_CounterpartyChannelTransactionParametersDecodeErrorZ ret_hu_conv = Result_CounterpartyChannelTransactionParametersDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/CounterpartyForwardingInfo.ts b/ts/structs/CounterpartyForwardingInfo.ts deleted file mode 100644 index 8b8db208..00000000 --- a/ts/structs/CounterpartyForwardingInfo.ts +++ /dev/null @@ -1,67 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class CounterpartyForwardingInfo extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.CounterpartyForwardingInfo_free(this.ptr); - } - } - public number get_fee_base_msat() { - number ret = bindings.CounterpartyForwardingInfo_get_fee_base_msat(this.ptr); - return ret; - } - - public void set_fee_base_msat(number val) { - bindings.CounterpartyForwardingInfo_set_fee_base_msat(this.ptr, val); - } - - public number get_fee_proportional_millionths() { - number ret = bindings.CounterpartyForwardingInfo_get_fee_proportional_millionths(this.ptr); - return ret; - } - - public void set_fee_proportional_millionths(number val) { - bindings.CounterpartyForwardingInfo_set_fee_proportional_millionths(this.ptr, val); - } - - public number get_cltv_expiry_delta() { - number ret = bindings.CounterpartyForwardingInfo_get_cltv_expiry_delta(this.ptr); - return ret; - } - - public void set_cltv_expiry_delta(number val) { - bindings.CounterpartyForwardingInfo_set_cltv_expiry_delta(this.ptr, val); - } - - public static CounterpartyForwardingInfo constructor_new(number fee_base_msat_arg, number fee_proportional_millionths_arg, number cltv_expiry_delta_arg) { - number ret = bindings.CounterpartyForwardingInfo_new(fee_base_msat_arg, fee_proportional_millionths_arg, cltv_expiry_delta_arg); - const ret_hu_conv: CounterpartyForwardingInfo = new CounterpartyForwardingInfo(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.CounterpartyForwardingInfo_clone_ptr(this.ptr); - return ret; - } - - public CounterpartyForwardingInfo clone() { - number ret = bindings.CounterpartyForwardingInfo_clone(this.ptr); - const ret_hu_conv: CounterpartyForwardingInfo = new CounterpartyForwardingInfo(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/CustomMessageHandler.ts b/ts/structs/CustomMessageHandler.ts deleted file mode 100644 index 0791013b..00000000 --- a/ts/structs/CustomMessageHandler.ts +++ /dev/null @@ -1,84 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export class CustomMessageHandler extends CommonBase { - - bindings_instance?: bindings.LDKCustomMessageHandler; - - constructor(ptr?: number, arg?: bindings.LDKCustomMessageHandler, customMessageReader?: bindings.LDKCustomMessageReader) { - if (Number.isFinite(ptr)) { - super(ptr); - this.bindings_instance = null; - } else { - // TODO: private constructor instantiation - super(bindings.LDKCustomMessageHandler_new(arg, customMessageReader)); - this.ptrs_to.push(arg); - this.ptrs_to.push(customMessageReader); - - } - } - - protected finalize() { - if (this.ptr != 0) { - bindings.CustomMessageHandler_free(this.ptr); - } - super.finalize(); - } - - static new_impl(arg: CustomMessageHandlerInterface, customMessageReader_impl: CustomMessageReader.CustomMessageReaderInterface): CustomMessageHandler { - const impl_holder: LDKCustomMessageHandlerHolder = new LDKCustomMessageHandlerHolder(); - let structImplementation = { - // todo: in-line interface filling - handle_custom_message (msg: number, sender_node_id: Uint8Array): number { - Type ret_hu_conv = new Type(null, msg); - ret_hu_conv.ptrs_to.add(this); - Result_NoneLightningErrorZ ret = arg.handle_custom_message(ret_hu_conv, sender_node_id); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - get_and_clear_pending_msg (): number[] { - TwoTuple_PublicKeyTypeZ[] ret = arg.get_and_clear_pending_msg(); - result: number[] = ret != null ? Arrays.stream(ret).map(ret_conv_25 -> ret_conv_25 == null ? 0 : ret_conv_25.clone_ptr()).toArray(number[]::new) : null; - return result; - }, - - - }; - impl_holder.held = new CustomMessageHandler (null, structImplementation, CustomMessageReader.new_impl(CustomMessageReader_impl).bindings_instance); - } - } - - export interface CustomMessageHandlerInterface { - handle_custom_message(msg: Type, sender_node_id: Uint8Array): Result_NoneLightningErrorZ; - get_and_clear_pending_msg(): TwoTuple_PublicKeyTypeZ[]; - - } - - class LDKCustomMessageHandlerHolder { - held: CustomMessageHandler; - } - public Result_NoneLightningErrorZ handle_custom_message(Type msg, Uint8Array sender_node_id) { - number ret = bindings.CustomMessageHandler_handle_custom_message(this.ptr, msg == null ? 0 : msg.ptr, InternalUtils.check_arr_len(sender_node_id, 33)); - Result_NoneLightningErrorZ ret_hu_conv = Result_NoneLightningErrorZ.constr_from_ptr(ret); - this.ptrs_to.add(msg); - return ret_hu_conv; - } - - public TwoTuple_PublicKeyTypeZ[] get_and_clear_pending_msg() { - number[] ret = bindings.CustomMessageHandler_get_and_clear_pending_msg(this.ptr); - TwoTuple_PublicKeyTypeZ[] ret_conv_25_arr = new TwoTuple_PublicKeyTypeZ[ret.length]; - for (int z = 0; z < ret.length; z++) { - number ret_conv_25 = ret[z]; - TwoTuple_PublicKeyTypeZ ret_conv_25_hu_conv = new TwoTuple_PublicKeyTypeZ(null, ret_conv_25); - ret_conv_25_hu_conv.ptrs_to.add(this); - ret_conv_25_arr[z] = ret_conv_25_hu_conv; - } - return ret_conv_25_arr; - } - -} diff --git a/ts/structs/CustomMessageReader.ts b/ts/structs/CustomMessageReader.ts deleted file mode 100644 index 6d57c77e..00000000 --- a/ts/structs/CustomMessageReader.ts +++ /dev/null @@ -1,61 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export class CustomMessageReader extends CommonBase { - - bindings_instance?: bindings.LDKCustomMessageReader; - - constructor(ptr?: number, arg?: bindings.LDKCustomMessageReader) { - if (Number.isFinite(ptr)) { - super(ptr); - this.bindings_instance = null; - } else { - // TODO: private constructor instantiation - super(bindings.LDKCustomMessageReader_new(arg)); - this.ptrs_to.push(arg); - - } - } - - protected finalize() { - if (this.ptr != 0) { - bindings.CustomMessageReader_free(this.ptr); - } - super.finalize(); - } - - static new_impl(arg: CustomMessageReaderInterface): CustomMessageReader { - const impl_holder: LDKCustomMessageReaderHolder = new LDKCustomMessageReaderHolder(); - let structImplementation = { - // todo: in-line interface filling - read (message_type: number, buffer: Uint8Array): number { - Result_COption_TypeZDecodeErrorZ ret = arg.read(message_type, buffer); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - - }; - impl_holder.held = new CustomMessageReader (null, structImplementation); - } - } - - export interface CustomMessageReaderInterface { - read(message_type: number, buffer: Uint8Array): Result_COption_TypeZDecodeErrorZ; - - } - - class LDKCustomMessageReaderHolder { - held: CustomMessageReader; - } - public Result_COption_TypeZDecodeErrorZ read(number message_type, Uint8Array buffer) { - number ret = bindings.CustomMessageReader_read(this.ptr, message_type, buffer); - Result_COption_TypeZDecodeErrorZ ret_hu_conv = Result_COption_TypeZDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/DataLossProtect.ts b/ts/structs/DataLossProtect.ts deleted file mode 100644 index 35fc4caa..00000000 --- a/ts/structs/DataLossProtect.ts +++ /dev/null @@ -1,58 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class DataLossProtect extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.DataLossProtect_free(this.ptr); - } - } - public Uint8Array get_your_last_per_commitment_secret() { - Uint8Array ret = bindings.DataLossProtect_get_your_last_per_commitment_secret(this.ptr); - return ret; - } - - public void set_your_last_per_commitment_secret(Uint8Array val) { - bindings.DataLossProtect_set_your_last_per_commitment_secret(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public Uint8Array get_my_current_per_commitment_point() { - Uint8Array ret = bindings.DataLossProtect_get_my_current_per_commitment_point(this.ptr); - return ret; - } - - public void set_my_current_per_commitment_point(Uint8Array val) { - bindings.DataLossProtect_set_my_current_per_commitment_point(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public static DataLossProtect constructor_new(Uint8Array your_last_per_commitment_secret_arg, Uint8Array my_current_per_commitment_point_arg) { - number ret = bindings.DataLossProtect_new(InternalUtils.check_arr_len(your_last_per_commitment_secret_arg, 32), InternalUtils.check_arr_len(my_current_per_commitment_point_arg, 33)); - const ret_hu_conv: DataLossProtect = new DataLossProtect(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.DataLossProtect_clone_ptr(this.ptr); - return ret; - } - - public DataLossProtect clone() { - number ret = bindings.DataLossProtect_clone(this.ptr); - const ret_hu_conv: DataLossProtect = new DataLossProtect(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/DecodeError.ts b/ts/structs/DecodeError.ts deleted file mode 100644 index caffcab4..00000000 --- a/ts/structs/DecodeError.ts +++ /dev/null @@ -1,33 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class DecodeError extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.DecodeError_free(this.ptr); - } - } - public number clone_ptr() { - number ret = bindings.DecodeError_clone_ptr(this.ptr); - return ret; - } - - public DecodeError clone() { - number ret = bindings.DecodeError_clone(this.ptr); - const ret_hu_conv: DecodeError = new DecodeError(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/DefaultRouter.ts b/ts/structs/DefaultRouter.ts deleted file mode 100644 index e4dee1e2..00000000 --- a/ts/structs/DefaultRouter.ts +++ /dev/null @@ -1,37 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class DefaultRouter extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.DefaultRouter_free(this.ptr); - } - } - public static DefaultRouter constructor_new(NetworkGraph network_graph, Logger logger) { - number ret = bindings.DefaultRouter_new(network_graph == null ? 0 : network_graph.ptr & ~1, logger == null ? 0 : logger.ptr); - const ret_hu_conv: DefaultRouter = new DefaultRouter(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - ret_hu_conv.ptrs_to.add(network_graph); - ret_hu_conv.ptrs_to.add(logger); - return ret_hu_conv; - } - - public Router as_Router() { - number ret = bindings.DefaultRouter_as_Router(this.ptr); - Router ret_hu_conv = new Router(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/DelayedPaymentOutputDescriptor.ts b/ts/structs/DelayedPaymentOutputDescriptor.ts deleted file mode 100644 index 669ad3d0..00000000 --- a/ts/structs/DelayedPaymentOutputDescriptor.ts +++ /dev/null @@ -1,111 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class DelayedPaymentOutputDescriptor extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.DelayedPaymentOutputDescriptor_free(this.ptr); - } - } - public OutPoint get_outpoint() { - number ret = bindings.DelayedPaymentOutputDescriptor_get_outpoint(this.ptr); - const ret_hu_conv: OutPoint = new OutPoint(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_outpoint(OutPoint val) { - bindings.DelayedPaymentOutputDescriptor_set_outpoint(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public Uint8Array get_per_commitment_point() { - Uint8Array ret = bindings.DelayedPaymentOutputDescriptor_get_per_commitment_point(this.ptr); - return ret; - } - - public void set_per_commitment_point(Uint8Array val) { - bindings.DelayedPaymentOutputDescriptor_set_per_commitment_point(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public number get_to_self_delay() { - number ret = bindings.DelayedPaymentOutputDescriptor_get_to_self_delay(this.ptr); - return ret; - } - - public void set_to_self_delay(number val) { - bindings.DelayedPaymentOutputDescriptor_set_to_self_delay(this.ptr, val); - } - - public void set_output(TxOut val) { - bindings.DelayedPaymentOutputDescriptor_set_output(this.ptr, val.ptr); - } - - public Uint8Array get_revocation_pubkey() { - Uint8Array ret = bindings.DelayedPaymentOutputDescriptor_get_revocation_pubkey(this.ptr); - return ret; - } - - public void set_revocation_pubkey(Uint8Array val) { - bindings.DelayedPaymentOutputDescriptor_set_revocation_pubkey(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public Uint8Array get_channel_keys_id() { - Uint8Array ret = bindings.DelayedPaymentOutputDescriptor_get_channel_keys_id(this.ptr); - return ret; - } - - public void set_channel_keys_id(Uint8Array val) { - bindings.DelayedPaymentOutputDescriptor_set_channel_keys_id(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public number get_channel_value_satoshis() { - number ret = bindings.DelayedPaymentOutputDescriptor_get_channel_value_satoshis(this.ptr); - return ret; - } - - public void set_channel_value_satoshis(number val) { - bindings.DelayedPaymentOutputDescriptor_set_channel_value_satoshis(this.ptr, val); - } - - public static DelayedPaymentOutputDescriptor constructor_new(OutPoint outpoint_arg, Uint8Array per_commitment_point_arg, number to_self_delay_arg, TxOut output_arg, Uint8Array revocation_pubkey_arg, Uint8Array channel_keys_id_arg, number channel_value_satoshis_arg) { - number ret = bindings.DelayedPaymentOutputDescriptor_new(outpoint_arg == null ? 0 : outpoint_arg.ptr & ~1, InternalUtils.check_arr_len(per_commitment_point_arg, 33), to_self_delay_arg, output_arg.ptr, InternalUtils.check_arr_len(revocation_pubkey_arg, 33), InternalUtils.check_arr_len(channel_keys_id_arg, 32), channel_value_satoshis_arg); - const ret_hu_conv: DelayedPaymentOutputDescriptor = new DelayedPaymentOutputDescriptor(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.DelayedPaymentOutputDescriptor_clone_ptr(this.ptr); - return ret; - } - - public DelayedPaymentOutputDescriptor clone() { - number ret = bindings.DelayedPaymentOutputDescriptor_clone(this.ptr); - const ret_hu_conv: DelayedPaymentOutputDescriptor = new DelayedPaymentOutputDescriptor(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.DelayedPaymentOutputDescriptor_write(this.ptr); - return ret; - } - - public static Result_DelayedPaymentOutputDescriptorDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.DelayedPaymentOutputDescriptor_read(ser); - Result_DelayedPaymentOutputDescriptorDecodeErrorZ ret_hu_conv = Result_DelayedPaymentOutputDescriptorDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Description.ts b/ts/structs/Description.ts deleted file mode 100644 index 3fcb336d..00000000 --- a/ts/structs/Description.ts +++ /dev/null @@ -1,55 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class Description extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.Description_free(this.ptr); - } - } - public number clone_ptr() { - number ret = bindings.Description_clone_ptr(this.ptr); - return ret; - } - - public Description clone() { - number ret = bindings.Description_clone(this.ptr); - const ret_hu_conv: Description = new Description(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public number hash() { - number ret = bindings.Description_hash(this.ptr); - return ret; - } - - public boolean eq(Description b) { - boolean ret = bindings.Description_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - this.ptrs_to.add(b); - return ret; - } - - public static Result_DescriptionCreationErrorZ constructor_new(String description) { - number ret = bindings.Description_new(description); - Result_DescriptionCreationErrorZ ret_hu_conv = Result_DescriptionCreationErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public String into_inner() { - String ret = bindings.Description_into_inner(this.ptr); - return ret; - } - -} diff --git a/ts/structs/DirectedChannelTransactionParameters.ts b/ts/structs/DirectedChannelTransactionParameters.ts deleted file mode 100644 index dfc9e696..00000000 --- a/ts/structs/DirectedChannelTransactionParameters.ts +++ /dev/null @@ -1,57 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class DirectedChannelTransactionParameters extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.DirectedChannelTransactionParameters_free(this.ptr); - } - } - public ChannelPublicKeys broadcaster_pubkeys() { - number ret = bindings.DirectedChannelTransactionParameters_broadcaster_pubkeys(this.ptr); - const ret_hu_conv: ChannelPublicKeys = new ChannelPublicKeys(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public ChannelPublicKeys countersignatory_pubkeys() { - number ret = bindings.DirectedChannelTransactionParameters_countersignatory_pubkeys(this.ptr); - const ret_hu_conv: ChannelPublicKeys = new ChannelPublicKeys(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public number contest_delay() { - number ret = bindings.DirectedChannelTransactionParameters_contest_delay(this.ptr); - return ret; - } - - public boolean is_outbound() { - boolean ret = bindings.DirectedChannelTransactionParameters_is_outbound(this.ptr); - return ret; - } - - public OutPoint funding_outpoint() { - number ret = bindings.DirectedChannelTransactionParameters_funding_outpoint(this.ptr); - const ret_hu_conv: OutPoint = new OutPoint(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public boolean opt_anchors() { - boolean ret = bindings.DirectedChannelTransactionParameters_opt_anchors(this.ptr); - return ret; - } - -} diff --git a/ts/structs/DirectionalChannelInfo.ts b/ts/structs/DirectionalChannelInfo.ts deleted file mode 100644 index d76b77f5..00000000 --- a/ts/structs/DirectionalChannelInfo.ts +++ /dev/null @@ -1,120 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class DirectionalChannelInfo extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.DirectionalChannelInfo_free(this.ptr); - } - } - public number get_last_update() { - number ret = bindings.DirectionalChannelInfo_get_last_update(this.ptr); - return ret; - } - - public void set_last_update(number val) { - bindings.DirectionalChannelInfo_set_last_update(this.ptr, val); - } - - public boolean get_enabled() { - boolean ret = bindings.DirectionalChannelInfo_get_enabled(this.ptr); - return ret; - } - - public void set_enabled(boolean val) { - bindings.DirectionalChannelInfo_set_enabled(this.ptr, val); - } - - public number get_cltv_expiry_delta() { - number ret = bindings.DirectionalChannelInfo_get_cltv_expiry_delta(this.ptr); - return ret; - } - - public void set_cltv_expiry_delta(number val) { - bindings.DirectionalChannelInfo_set_cltv_expiry_delta(this.ptr, val); - } - - public number get_htlc_minimum_msat() { - number ret = bindings.DirectionalChannelInfo_get_htlc_minimum_msat(this.ptr); - return ret; - } - - public void set_htlc_minimum_msat(number val) { - bindings.DirectionalChannelInfo_set_htlc_minimum_msat(this.ptr, val); - } - - public Option_u64Z get_htlc_maximum_msat() { - number ret = bindings.DirectionalChannelInfo_get_htlc_maximum_msat(this.ptr); - Option_u64Z ret_hu_conv = Option_u64Z.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_htlc_maximum_msat(Option_u64Z val) { - bindings.DirectionalChannelInfo_set_htlc_maximum_msat(this.ptr, val.ptr); - } - - public RoutingFees get_fees() { - number ret = bindings.DirectionalChannelInfo_get_fees(this.ptr); - const ret_hu_conv: RoutingFees = new RoutingFees(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_fees(RoutingFees val) { - bindings.DirectionalChannelInfo_set_fees(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public ChannelUpdate get_last_update_message() { - number ret = bindings.DirectionalChannelInfo_get_last_update_message(this.ptr); - const ret_hu_conv: ChannelUpdate = new ChannelUpdate(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_last_update_message(ChannelUpdate val) { - bindings.DirectionalChannelInfo_set_last_update_message(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public static DirectionalChannelInfo constructor_new(number last_update_arg, boolean enabled_arg, number cltv_expiry_delta_arg, number htlc_minimum_msat_arg, Option_u64Z htlc_maximum_msat_arg, RoutingFees fees_arg, ChannelUpdate last_update_message_arg) { - number ret = bindings.DirectionalChannelInfo_new(last_update_arg, enabled_arg, cltv_expiry_delta_arg, htlc_minimum_msat_arg, htlc_maximum_msat_arg.ptr, fees_arg == null ? 0 : fees_arg.ptr & ~1, last_update_message_arg == null ? 0 : last_update_message_arg.ptr & ~1); - const ret_hu_conv: DirectionalChannelInfo = new DirectionalChannelInfo(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.DirectionalChannelInfo_clone_ptr(this.ptr); - return ret; - } - - public DirectionalChannelInfo clone() { - number ret = bindings.DirectionalChannelInfo_clone(this.ptr); - const ret_hu_conv: DirectionalChannelInfo = new DirectionalChannelInfo(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.DirectionalChannelInfo_write(this.ptr); - return ret; - } - - public static Result_DirectionalChannelInfoDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.DirectionalChannelInfo_read(ser); - Result_DirectionalChannelInfoDecodeErrorZ ret_hu_conv = Result_DirectionalChannelInfoDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ErrorAction.ts b/ts/structs/ErrorAction.ts deleted file mode 100644 index 64eea7a0..00000000 --- a/ts/structs/ErrorAction.ts +++ /dev/null @@ -1,116 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class ErrorAction extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.ErrorAction_free(this.ptr); } - } - static constr_from_ptr(ptr: number): ErrorAction { - const raw_val: bindings.LDKErrorAction = bindings.LDKErrorAction_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKErrorAction.DisconnectPeer) { - return new DisconnectPeer(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKErrorAction.IgnoreError) { - return new IgnoreError(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKErrorAction.IgnoreAndLog) { - return new IgnoreAndLog(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKErrorAction.IgnoreDuplicateGossip) { - return new IgnoreDuplicateGossip(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKErrorAction.SendErrorMessage) { - return new SendErrorMessage(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class DisconnectPeer extends ErrorAction { - public msg: ErrorMessage; - private constructor(ptr: number, obj: bindings.LDKErrorAction.DisconnectPeer) { - super(null, ptr); - const msg: number = obj.msg; - const msg_hu_conv: ErrorMessage = new ErrorMessage(null, msg); - msg_hu_conv.ptrs_to.add(this); - this.msg = msg_hu_conv; - } -} -export class IgnoreError extends ErrorAction { - private constructor(ptr: number, obj: bindings.LDKErrorAction.IgnoreError) { - super(null, ptr); - } -} -export class IgnoreAndLog extends ErrorAction { - public ignore_and_log: Level; - private constructor(ptr: number, obj: bindings.LDKErrorAction.IgnoreAndLog) { - super(null, ptr); - this.ignore_and_log = obj.ignore_and_log; - } -} -export class IgnoreDuplicateGossip extends ErrorAction { - private constructor(ptr: number, obj: bindings.LDKErrorAction.IgnoreDuplicateGossip) { - super(null, ptr); - } -} -export class SendErrorMessage extends ErrorAction { - public msg: ErrorMessage; - private constructor(ptr: number, obj: bindings.LDKErrorAction.SendErrorMessage) { - super(null, ptr); - const msg: number = obj.msg; - const msg_hu_conv: ErrorMessage = new ErrorMessage(null, msg); - msg_hu_conv.ptrs_to.add(this); - this.msg = msg_hu_conv; - } -} - public number clone_ptr() { - number ret = bindings.ErrorAction_clone_ptr(this.ptr); - return ret; - } - - public ErrorAction clone() { - number ret = bindings.ErrorAction_clone(this.ptr); - ErrorAction ret_hu_conv = ErrorAction.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static ErrorAction constructor_disconnect_peer(ErrorMessage msg) { - number ret = bindings.ErrorAction_disconnect_peer(msg == null ? 0 : msg.ptr & ~1); - ErrorAction ret_hu_conv = ErrorAction.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static ErrorAction constructor_ignore_error() { - number ret = bindings.ErrorAction_ignore_error(); - ErrorAction ret_hu_conv = ErrorAction.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static ErrorAction constructor_ignore_and_log(Level a) { - number ret = bindings.ErrorAction_ignore_and_log(a); - ErrorAction ret_hu_conv = ErrorAction.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static ErrorAction constructor_ignore_duplicate_gossip() { - number ret = bindings.ErrorAction_ignore_duplicate_gossip(); - ErrorAction ret_hu_conv = ErrorAction.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static ErrorAction constructor_send_error_message(ErrorMessage msg) { - number ret = bindings.ErrorAction_send_error_message(msg == null ? 0 : msg.ptr & ~1); - ErrorAction ret_hu_conv = ErrorAction.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ErrorMessage.ts b/ts/structs/ErrorMessage.ts deleted file mode 100644 index 755f7122..00000000 --- a/ts/structs/ErrorMessage.ts +++ /dev/null @@ -1,69 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ErrorMessage extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ErrorMessage_free(this.ptr); - } - } - public Uint8Array get_channel_id() { - Uint8Array ret = bindings.ErrorMessage_get_channel_id(this.ptr); - return ret; - } - - public void set_channel_id(Uint8Array val) { - bindings.ErrorMessage_set_channel_id(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public String get_data() { - String ret = bindings.ErrorMessage_get_data(this.ptr); - return ret; - } - - public void set_data(String val) { - bindings.ErrorMessage_set_data(this.ptr, val); - } - - public static ErrorMessage constructor_new(Uint8Array channel_id_arg, String data_arg) { - number ret = bindings.ErrorMessage_new(InternalUtils.check_arr_len(channel_id_arg, 32), data_arg); - const ret_hu_conv: ErrorMessage = new ErrorMessage(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.ErrorMessage_clone_ptr(this.ptr); - return ret; - } - - public ErrorMessage clone() { - number ret = bindings.ErrorMessage_clone(this.ptr); - const ret_hu_conv: ErrorMessage = new ErrorMessage(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.ErrorMessage_write(this.ptr); - return ret; - } - - public static Result_ErrorMessageDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.ErrorMessage_read(ser); - Result_ErrorMessageDecodeErrorZ ret_hu_conv = Result_ErrorMessageDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ErroringMessageHandler.ts b/ts/structs/ErroringMessageHandler.ts deleted file mode 100644 index b5c2f8b8..00000000 --- a/ts/structs/ErroringMessageHandler.ts +++ /dev/null @@ -1,42 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ErroringMessageHandler extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ErroringMessageHandler_free(this.ptr); - } - } - public static ErroringMessageHandler constructor_new() { - number ret = bindings.ErroringMessageHandler_new(); - const ret_hu_conv: ErroringMessageHandler = new ErroringMessageHandler(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public MessageSendEventsProvider as_MessageSendEventsProvider() { - number ret = bindings.ErroringMessageHandler_as_MessageSendEventsProvider(this.ptr); - MessageSendEventsProvider ret_hu_conv = new MessageSendEventsProvider(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public ChannelMessageHandler as_ChannelMessageHandler() { - number ret = bindings.ErroringMessageHandler_as_ChannelMessageHandler(this.ptr); - ChannelMessageHandler ret_hu_conv = new ChannelMessageHandler(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Event.ts b/ts/structs/Event.ts deleted file mode 100644 index a21ecbf3..00000000 --- a/ts/structs/Event.ts +++ /dev/null @@ -1,310 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class Event extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.Event_free(this.ptr); } - } - static constr_from_ptr(ptr: number): Event { - const raw_val: bindings.LDKEvent = bindings.LDKEvent_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKEvent.FundingGenerationReady) { - return new FundingGenerationReady(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKEvent.PaymentReceived) { - return new PaymentReceived(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKEvent.PaymentSent) { - return new PaymentSent(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKEvent.PaymentPathFailed) { - return new PaymentPathFailed(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKEvent.PaymentFailed) { - return new PaymentFailed(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKEvent.PendingHTLCsForwardable) { - return new PendingHTLCsForwardable(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKEvent.SpendableOutputs) { - return new SpendableOutputs(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKEvent.PaymentForwarded) { - return new PaymentForwarded(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKEvent.ChannelClosed) { - return new ChannelClosed(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKEvent.DiscardFunding) { - return new DiscardFunding(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKEvent.PaymentPathSuccessful) { - return new PaymentPathSuccessful(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class FundingGenerationReady extends Event { - public temporary_channel_id: Uint8Array; - public channel_value_satoshis: number; - public output_script: Uint8Array; - public user_channel_id: number; - private constructor(ptr: number, obj: bindings.LDKEvent.FundingGenerationReady) { - super(null, ptr); - this.temporary_channel_id = obj.temporary_channel_id; - this.channel_value_satoshis = obj.channel_value_satoshis; - this.output_script = obj.output_script; - this.user_channel_id = obj.user_channel_id; - } -} -export class PaymentReceived extends Event { - public payment_hash: Uint8Array; - public amt: number; - public purpose: PaymentPurpose; - private constructor(ptr: number, obj: bindings.LDKEvent.PaymentReceived) { - super(null, ptr); - this.payment_hash = obj.payment_hash; - this.amt = obj.amt; - const purpose: number = obj.purpose; - PaymentPurpose purpose_hu_conv = PaymentPurpose.constr_from_ptr(purpose); - purpose_hu_conv.ptrs_to.add(this); - this.purpose = purpose_hu_conv; - } -} -export class PaymentSent extends Event { - public payment_id: Uint8Array; - public payment_preimage: Uint8Array; - public payment_hash: Uint8Array; - public fee_paid_msat: Option_u64Z; - private constructor(ptr: number, obj: bindings.LDKEvent.PaymentSent) { - super(null, ptr); - this.payment_id = obj.payment_id; - this.payment_preimage = obj.payment_preimage; - this.payment_hash = obj.payment_hash; - const fee_paid_msat: number = obj.fee_paid_msat; - Option_u64Z fee_paid_msat_hu_conv = Option_u64Z.constr_from_ptr(fee_paid_msat); - fee_paid_msat_hu_conv.ptrs_to.add(this); - this.fee_paid_msat = fee_paid_msat_hu_conv; - } -} -export class PaymentPathFailed extends Event { - public payment_id: Uint8Array; - public payment_hash: Uint8Array; - public rejected_by_dest: boolean; - public network_update: Option_NetworkUpdateZ; - public all_paths_failed: boolean; - public path: RouteHop[]; - public short_channel_id: Option_u64Z; - public retry: RouteParameters; - private constructor(ptr: number, obj: bindings.LDKEvent.PaymentPathFailed) { - super(null, ptr); - this.payment_id = obj.payment_id; - this.payment_hash = obj.payment_hash; - this.rejected_by_dest = obj.rejected_by_dest; - const network_update: number = obj.network_update; - Option_NetworkUpdateZ network_update_hu_conv = Option_NetworkUpdateZ.constr_from_ptr(network_update); - network_update_hu_conv.ptrs_to.add(this); - this.network_update = network_update_hu_conv; - this.all_paths_failed = obj.all_paths_failed; - const path: number[] = obj.path; - RouteHop[] path_conv_10_arr = new RouteHop[path.length]; - for (int k = 0; k < path.length; k++) { - number path_conv_10 = path[k]; - const path_conv_10_hu_conv: RouteHop = new RouteHop(null, path_conv_10); - path_conv_10_hu_conv.ptrs_to.add(this); - path_conv_10_arr[k] = path_conv_10_hu_conv; - } - this.path = path_conv_10_arr; - const short_channel_id: number = obj.short_channel_id; - Option_u64Z short_channel_id_hu_conv = Option_u64Z.constr_from_ptr(short_channel_id); - short_channel_id_hu_conv.ptrs_to.add(this); - this.short_channel_id = short_channel_id_hu_conv; - const retry: number = obj.retry; - const retry_hu_conv: RouteParameters = new RouteParameters(null, retry); - retry_hu_conv.ptrs_to.add(this); - this.retry = retry_hu_conv; - } -} -export class PaymentFailed extends Event { - public payment_id: Uint8Array; - public payment_hash: Uint8Array; - private constructor(ptr: number, obj: bindings.LDKEvent.PaymentFailed) { - super(null, ptr); - this.payment_id = obj.payment_id; - this.payment_hash = obj.payment_hash; - } -} -export class PendingHTLCsForwardable extends Event { - public time_forwardable: number; - private constructor(ptr: number, obj: bindings.LDKEvent.PendingHTLCsForwardable) { - super(null, ptr); - this.time_forwardable = obj.time_forwardable; - } -} -export class SpendableOutputs extends Event { - public outputs: SpendableOutputDescriptor[]; - private constructor(ptr: number, obj: bindings.LDKEvent.SpendableOutputs) { - super(null, ptr); - const outputs: number[] = obj.outputs; - SpendableOutputDescriptor[] outputs_conv_27_arr = new SpendableOutputDescriptor[outputs.length]; - for (int b = 0; b < outputs.length; b++) { - number outputs_conv_27 = outputs[b]; - SpendableOutputDescriptor outputs_conv_27_hu_conv = SpendableOutputDescriptor.constr_from_ptr(outputs_conv_27); - outputs_conv_27_hu_conv.ptrs_to.add(this); - outputs_conv_27_arr[b] = outputs_conv_27_hu_conv; - } - this.outputs = outputs_conv_27_arr; - } -} -export class PaymentForwarded extends Event { - public fee_earned_msat: Option_u64Z; - public claim_from_onchain_tx: boolean; - private constructor(ptr: number, obj: bindings.LDKEvent.PaymentForwarded) { - super(null, ptr); - const fee_earned_msat: number = obj.fee_earned_msat; - Option_u64Z fee_earned_msat_hu_conv = Option_u64Z.constr_from_ptr(fee_earned_msat); - fee_earned_msat_hu_conv.ptrs_to.add(this); - this.fee_earned_msat = fee_earned_msat_hu_conv; - this.claim_from_onchain_tx = obj.claim_from_onchain_tx; - } -} -export class ChannelClosed extends Event { - public channel_id: Uint8Array; - public user_channel_id: number; - public reason: ClosureReason; - private constructor(ptr: number, obj: bindings.LDKEvent.ChannelClosed) { - super(null, ptr); - this.channel_id = obj.channel_id; - this.user_channel_id = obj.user_channel_id; - const reason: number = obj.reason; - ClosureReason reason_hu_conv = ClosureReason.constr_from_ptr(reason); - reason_hu_conv.ptrs_to.add(this); - this.reason = reason_hu_conv; - } -} -export class DiscardFunding extends Event { - public channel_id: Uint8Array; - public transaction: Uint8Array; - private constructor(ptr: number, obj: bindings.LDKEvent.DiscardFunding) { - super(null, ptr); - this.channel_id = obj.channel_id; - this.transaction = obj.transaction; - } -} -export class PaymentPathSuccessful extends Event { - public payment_id: Uint8Array; - public payment_hash: Uint8Array; - public path: RouteHop[]; - private constructor(ptr: number, obj: bindings.LDKEvent.PaymentPathSuccessful) { - super(null, ptr); - this.payment_id = obj.payment_id; - this.payment_hash = obj.payment_hash; - const path: number[] = obj.path; - RouteHop[] path_conv_10_arr = new RouteHop[path.length]; - for (int k = 0; k < path.length; k++) { - number path_conv_10 = path[k]; - const path_conv_10_hu_conv: RouteHop = new RouteHop(null, path_conv_10); - path_conv_10_hu_conv.ptrs_to.add(this); - path_conv_10_arr[k] = path_conv_10_hu_conv; - } - this.path = path_conv_10_arr; - } -} - public number clone_ptr() { - number ret = bindings.Event_clone_ptr(this.ptr); - return ret; - } - - public Event clone() { - number ret = bindings.Event_clone(this.ptr); - Event ret_hu_conv = Event.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static Event constructor_funding_generation_ready(Uint8Array temporary_channel_id, number channel_value_satoshis, Uint8Array output_script, number user_channel_id) { - number ret = bindings.Event_funding_generation_ready(InternalUtils.check_arr_len(temporary_channel_id, 32), channel_value_satoshis, output_script, user_channel_id); - Event ret_hu_conv = Event.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Event constructor_payment_received(Uint8Array payment_hash, number amt, PaymentPurpose purpose) { - number ret = bindings.Event_payment_received(InternalUtils.check_arr_len(payment_hash, 32), amt, purpose.ptr); - Event ret_hu_conv = Event.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Event constructor_payment_sent(Uint8Array payment_id, Uint8Array payment_preimage, Uint8Array payment_hash, Option_u64Z fee_paid_msat) { - number ret = bindings.Event_payment_sent(InternalUtils.check_arr_len(payment_id, 32), InternalUtils.check_arr_len(payment_preimage, 32), InternalUtils.check_arr_len(payment_hash, 32), fee_paid_msat.ptr); - Event ret_hu_conv = Event.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Event constructor_payment_path_failed(Uint8Array payment_id, Uint8Array payment_hash, boolean rejected_by_dest, Option_NetworkUpdateZ network_update, boolean all_paths_failed, RouteHop[] path, Option_u64Z short_channel_id, RouteParameters retry) { - number ret = bindings.Event_payment_path_failed(InternalUtils.check_arr_len(payment_id, 32), InternalUtils.check_arr_len(payment_hash, 32), rejected_by_dest, network_update.ptr, all_paths_failed, path != null ? Arrays.stream(path).map(path_conv_10 -> path_conv_10 == null ? 0 : path_conv_10.ptr & ~1).toArray(number[]::new) : null, short_channel_id.ptr, retry == null ? 0 : retry.ptr & ~1); - Event ret_hu_conv = Event.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Event constructor_payment_failed(Uint8Array payment_id, Uint8Array payment_hash) { - number ret = bindings.Event_payment_failed(InternalUtils.check_arr_len(payment_id, 32), InternalUtils.check_arr_len(payment_hash, 32)); - Event ret_hu_conv = Event.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Event constructor_pending_htlcs_forwardable(number time_forwardable) { - number ret = bindings.Event_pending_htlcs_forwardable(time_forwardable); - Event ret_hu_conv = Event.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Event constructor_spendable_outputs(SpendableOutputDescriptor[] outputs) { - number ret = bindings.Event_spendable_outputs(outputs != null ? Arrays.stream(outputs).map(outputs_conv_27 -> outputs_conv_27.ptr).toArray(number[]::new) : null); - Event ret_hu_conv = Event.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Event constructor_payment_forwarded(Option_u64Z fee_earned_msat, boolean claim_from_onchain_tx) { - number ret = bindings.Event_payment_forwarded(fee_earned_msat.ptr, claim_from_onchain_tx); - Event ret_hu_conv = Event.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Event constructor_channel_closed(Uint8Array channel_id, number user_channel_id, ClosureReason reason) { - number ret = bindings.Event_channel_closed(InternalUtils.check_arr_len(channel_id, 32), user_channel_id, reason.ptr); - Event ret_hu_conv = Event.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Event constructor_discard_funding(Uint8Array channel_id, Uint8Array transaction) { - number ret = bindings.Event_discard_funding(InternalUtils.check_arr_len(channel_id, 32), transaction); - Event ret_hu_conv = Event.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Event constructor_payment_path_successful(Uint8Array payment_id, Uint8Array payment_hash, RouteHop[] path) { - number ret = bindings.Event_payment_path_successful(InternalUtils.check_arr_len(payment_id, 32), InternalUtils.check_arr_len(payment_hash, 32), path != null ? Arrays.stream(path).map(path_conv_10 -> path_conv_10 == null ? 0 : path_conv_10.ptr & ~1).toArray(number[]::new) : null); - Event ret_hu_conv = Event.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.Event_write(this.ptr); - return ret; - } - -} diff --git a/ts/structs/EventHandler.ts b/ts/structs/EventHandler.ts deleted file mode 100644 index 9179c447..00000000 --- a/ts/structs/EventHandler.ts +++ /dev/null @@ -1,58 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export class EventHandler extends CommonBase { - - bindings_instance?: bindings.LDKEventHandler; - - constructor(ptr?: number, arg?: bindings.LDKEventHandler) { - if (Number.isFinite(ptr)) { - super(ptr); - this.bindings_instance = null; - } else { - // TODO: private constructor instantiation - super(bindings.LDKEventHandler_new(arg)); - this.ptrs_to.push(arg); - - } - } - - protected finalize() { - if (this.ptr != 0) { - bindings.EventHandler_free(this.ptr); - } - super.finalize(); - } - - static new_impl(arg: EventHandlerInterface): EventHandler { - const impl_holder: LDKEventHandlerHolder = new LDKEventHandlerHolder(); - let structImplementation = { - // todo: in-line interface filling - handle_event (event: number): void { - Event event_hu_conv = Event.constr_from_ptr(event); - arg.handle_event(event_hu_conv); - }, - - - }; - impl_holder.held = new EventHandler (null, structImplementation); - } - } - - export interface EventHandlerInterface { - handle_event(event: Event): void; - - } - - class LDKEventHandlerHolder { - held: EventHandler; - } - public void handle_event(Event event) { - bindings.EventHandler_handle_event(this.ptr, event == null ? 0 : event.ptr & ~1); - } - -} diff --git a/ts/structs/EventsProvider.ts b/ts/structs/EventsProvider.ts deleted file mode 100644 index a47339b8..00000000 --- a/ts/structs/EventsProvider.ts +++ /dev/null @@ -1,60 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export class EventsProvider extends CommonBase { - - bindings_instance?: bindings.LDKEventsProvider; - - constructor(ptr?: number, arg?: bindings.LDKEventsProvider) { - if (Number.isFinite(ptr)) { - super(ptr); - this.bindings_instance = null; - } else { - // TODO: private constructor instantiation - super(bindings.LDKEventsProvider_new(arg)); - this.ptrs_to.push(arg); - - } - } - - protected finalize() { - if (this.ptr != 0) { - bindings.EventsProvider_free(this.ptr); - } - super.finalize(); - } - - static new_impl(arg: EventsProviderInterface): EventsProvider { - const impl_holder: LDKEventsProviderHolder = new LDKEventsProviderHolder(); - let structImplementation = { - // todo: in-line interface filling - process_pending_events (handler: number): void { - EventHandler ret_hu_conv = new EventHandler(null, handler); - ret_hu_conv.ptrs_to.add(this); - arg.process_pending_events(ret_hu_conv); - }, - - - }; - impl_holder.held = new EventsProvider (null, structImplementation); - } - } - - export interface EventsProviderInterface { - process_pending_events(handler: EventHandler): void; - - } - - class LDKEventsProviderHolder { - held: EventsProvider; - } - public void process_pending_events(EventHandler handler) { - bindings.EventsProvider_process_pending_events(this.ptr, handler == null ? 0 : handler.ptr); - this.ptrs_to.add(handler); - } - -} diff --git a/ts/structs/ExpiryTime.ts b/ts/structs/ExpiryTime.ts deleted file mode 100644 index 47b32107..00000000 --- a/ts/structs/ExpiryTime.ts +++ /dev/null @@ -1,66 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ExpiryTime extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ExpiryTime_free(this.ptr); - } - } - public number clone_ptr() { - number ret = bindings.ExpiryTime_clone_ptr(this.ptr); - return ret; - } - - public ExpiryTime clone() { - number ret = bindings.ExpiryTime_clone(this.ptr); - const ret_hu_conv: ExpiryTime = new ExpiryTime(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public number hash() { - number ret = bindings.ExpiryTime_hash(this.ptr); - return ret; - } - - public boolean eq(ExpiryTime b) { - boolean ret = bindings.ExpiryTime_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - this.ptrs_to.add(b); - return ret; - } - - public static Result_ExpiryTimeCreationErrorZ constructor_from_seconds(number seconds) { - number ret = bindings.ExpiryTime_from_seconds(seconds); - Result_ExpiryTimeCreationErrorZ ret_hu_conv = Result_ExpiryTimeCreationErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_ExpiryTimeCreationErrorZ constructor_from_duration(number duration) { - number ret = bindings.ExpiryTime_from_duration(duration); - Result_ExpiryTimeCreationErrorZ ret_hu_conv = Result_ExpiryTimeCreationErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public number as_seconds() { - number ret = bindings.ExpiryTime_as_seconds(this.ptr); - return ret; - } - - public number as_duration() { - number ret = bindings.ExpiryTime_as_duration(this.ptr); - return ret; - } - -} diff --git a/ts/structs/Fallback.ts b/ts/structs/Fallback.ts deleted file mode 100644 index 31845b13..00000000 --- a/ts/structs/Fallback.ts +++ /dev/null @@ -1,94 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class Fallback extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.Fallback_free(this.ptr); } - } - static constr_from_ptr(ptr: number): Fallback { - const raw_val: bindings.LDKFallback = bindings.LDKFallback_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKFallback.SegWitProgram) { - return new SegWitProgram(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKFallback.PubKeyHash) { - return new PubKeyHash(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKFallback.ScriptHash) { - return new ScriptHash(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class SegWitProgram extends Fallback { - public version: UInt5; - public program: Uint8Array; - private constructor(ptr: number, obj: bindings.LDKFallback.SegWitProgram) { - super(null, ptr); - const version: number = obj.version; - UInt5 version_conv = new UInt5(version); - this.version = version_conv; - this.program = obj.program; - } -} -export class PubKeyHash extends Fallback { - public pub_key_hash: Uint8Array; - private constructor(ptr: number, obj: bindings.LDKFallback.PubKeyHash) { - super(null, ptr); - this.pub_key_hash = obj.pub_key_hash; - } -} -export class ScriptHash extends Fallback { - public script_hash: Uint8Array; - private constructor(ptr: number, obj: bindings.LDKFallback.ScriptHash) { - super(null, ptr); - this.script_hash = obj.script_hash; - } -} - public number clone_ptr() { - number ret = bindings.Fallback_clone_ptr(this.ptr); - return ret; - } - - public Fallback clone() { - number ret = bindings.Fallback_clone(this.ptr); - Fallback ret_hu_conv = Fallback.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static Fallback constructor_seg_wit_program(UInt5 version, Uint8Array program) { - number ret = bindings.Fallback_seg_wit_program(version.getVal(), program); - Fallback ret_hu_conv = Fallback.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Fallback constructor_pub_key_hash(Uint8Array a) { - number ret = bindings.Fallback_pub_key_hash(InternalUtils.check_arr_len(a, 20)); - Fallback ret_hu_conv = Fallback.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Fallback constructor_script_hash(Uint8Array a) { - number ret = bindings.Fallback_script_hash(InternalUtils.check_arr_len(a, 20)); - Fallback ret_hu_conv = Fallback.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number hash() { - number ret = bindings.Fallback_hash(this.ptr); - return ret; - } - - public boolean eq(Fallback b) { - boolean ret = bindings.Fallback_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - return ret; - } - -} diff --git a/ts/structs/FeeEstimator.ts b/ts/structs/FeeEstimator.ts deleted file mode 100644 index 674833fc..00000000 --- a/ts/structs/FeeEstimator.ts +++ /dev/null @@ -1,59 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export class FeeEstimator extends CommonBase { - - bindings_instance?: bindings.LDKFeeEstimator; - - constructor(ptr?: number, arg?: bindings.LDKFeeEstimator) { - if (Number.isFinite(ptr)) { - super(ptr); - this.bindings_instance = null; - } else { - // TODO: private constructor instantiation - super(bindings.LDKFeeEstimator_new(arg)); - this.ptrs_to.push(arg); - - } - } - - protected finalize() { - if (this.ptr != 0) { - bindings.FeeEstimator_free(this.ptr); - } - super.finalize(); - } - - static new_impl(arg: FeeEstimatorInterface): FeeEstimator { - const impl_holder: LDKFeeEstimatorHolder = new LDKFeeEstimatorHolder(); - let structImplementation = { - // todo: in-line interface filling - get_est_sat_per_1000_weight (confirmation_target: ConfirmationTarget): number { - number ret = arg.get_est_sat_per_1000_weight(confirmation_target); - return ret; - }, - - - }; - impl_holder.held = new FeeEstimator (null, structImplementation); - } - } - - export interface FeeEstimatorInterface { - get_est_sat_per_1000_weight(confirmation_target: ConfirmationTarget): number; - - } - - class LDKFeeEstimatorHolder { - held: FeeEstimator; - } - public number get_est_sat_per_1000_weight(ConfirmationTarget confirmation_target) { - number ret = bindings.FeeEstimator_get_est_sat_per_1000_weight(this.ptr, confirmation_target); - return ret; - } - -} diff --git a/ts/structs/FilesystemPersister.ts b/ts/structs/FilesystemPersister.ts deleted file mode 100644 index 7c0e2961..00000000 --- a/ts/structs/FilesystemPersister.ts +++ /dev/null @@ -1,47 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class FilesystemPersister extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.FilesystemPersister_free(this.ptr); - } - } - public static FilesystemPersister constructor_new(String path_to_channel_data) { - number ret = bindings.FilesystemPersister_new(path_to_channel_data); - const ret_hu_conv: FilesystemPersister = new FilesystemPersister(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public String get_data_dir() { - String ret = bindings.FilesystemPersister_get_data_dir(this.ptr); - return ret; - } - - public Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ read_channelmonitors(KeysInterface keys_manager) { - number ret = bindings.FilesystemPersister_read_channelmonitors(this.ptr, keys_manager == null ? 0 : keys_manager.ptr); - Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ ret_hu_conv = Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ.constr_from_ptr(ret); - this.ptrs_to.add(keys_manager); - return ret_hu_conv; - } - - public Persist as_Persist() { - number ret = bindings.FilesystemPersister_as_Persist(this.ptr); - Persist ret_hu_conv = new Persist(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Filter.ts b/ts/structs/Filter.ts deleted file mode 100644 index 140d9500..00000000 --- a/ts/structs/Filter.ts +++ /dev/null @@ -1,73 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export class Filter extends CommonBase { - - bindings_instance?: bindings.LDKFilter; - - constructor(ptr?: number, arg?: bindings.LDKFilter) { - if (Number.isFinite(ptr)) { - super(ptr); - this.bindings_instance = null; - } else { - // TODO: private constructor instantiation - super(bindings.LDKFilter_new(arg)); - this.ptrs_to.push(arg); - - } - } - - protected finalize() { - if (this.ptr != 0) { - bindings.Filter_free(this.ptr); - } - super.finalize(); - } - - static new_impl(arg: FilterInterface): Filter { - const impl_holder: LDKFilterHolder = new LDKFilterHolder(); - let structImplementation = { - // todo: in-line interface filling - register_tx (txid: Uint8Array, script_pubkey: Uint8Array): void { - arg.register_tx(txid, script_pubkey); - }, - - register_output (output: number): number { - const output_hu_conv: WatchedOutput = new WatchedOutput(null, output); - output_hu_conv.ptrs_to.add(this); - Option_C2Tuple_usizeTransactionZZ ret = arg.register_output(output_hu_conv); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - - }; - impl_holder.held = new Filter (null, structImplementation); - } - } - - export interface FilterInterface { - register_tx(txid: Uint8Array, script_pubkey: Uint8Array): void; - register_output(output: WatchedOutput): Option_C2Tuple_usizeTransactionZZ; - - } - - class LDKFilterHolder { - held: Filter; - } - public void register_tx(Uint8Array txid, Uint8Array script_pubkey) { - bindings.Filter_register_tx(this.ptr, InternalUtils.check_arr_len(txid, 32), script_pubkey); - } - - public Option_C2Tuple_usizeTransactionZZ register_output(WatchedOutput output) { - number ret = bindings.Filter_register_output(this.ptr, output == null ? 0 : output.ptr & ~1); - Option_C2Tuple_usizeTransactionZZ ret_hu_conv = Option_C2Tuple_usizeTransactionZZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/FundingCreated.ts b/ts/structs/FundingCreated.ts deleted file mode 100644 index 6dd59364..00000000 --- a/ts/structs/FundingCreated.ts +++ /dev/null @@ -1,87 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class FundingCreated extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.FundingCreated_free(this.ptr); - } - } - public Uint8Array get_temporary_channel_id() { - Uint8Array ret = bindings.FundingCreated_get_temporary_channel_id(this.ptr); - return ret; - } - - public void set_temporary_channel_id(Uint8Array val) { - bindings.FundingCreated_set_temporary_channel_id(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public Uint8Array get_funding_txid() { - Uint8Array ret = bindings.FundingCreated_get_funding_txid(this.ptr); - return ret; - } - - public void set_funding_txid(Uint8Array val) { - bindings.FundingCreated_set_funding_txid(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public number get_funding_output_index() { - number ret = bindings.FundingCreated_get_funding_output_index(this.ptr); - return ret; - } - - public void set_funding_output_index(number val) { - bindings.FundingCreated_set_funding_output_index(this.ptr, val); - } - - public Uint8Array get_signature() { - Uint8Array ret = bindings.FundingCreated_get_signature(this.ptr); - return ret; - } - - public void set_signature(Uint8Array val) { - bindings.FundingCreated_set_signature(this.ptr, InternalUtils.check_arr_len(val, 64)); - } - - public static FundingCreated constructor_new(Uint8Array temporary_channel_id_arg, Uint8Array funding_txid_arg, number funding_output_index_arg, Uint8Array signature_arg) { - number ret = bindings.FundingCreated_new(InternalUtils.check_arr_len(temporary_channel_id_arg, 32), InternalUtils.check_arr_len(funding_txid_arg, 32), funding_output_index_arg, InternalUtils.check_arr_len(signature_arg, 64)); - const ret_hu_conv: FundingCreated = new FundingCreated(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.FundingCreated_clone_ptr(this.ptr); - return ret; - } - - public FundingCreated clone() { - number ret = bindings.FundingCreated_clone(this.ptr); - const ret_hu_conv: FundingCreated = new FundingCreated(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.FundingCreated_write(this.ptr); - return ret; - } - - public static Result_FundingCreatedDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.FundingCreated_read(ser); - Result_FundingCreatedDecodeErrorZ ret_hu_conv = Result_FundingCreatedDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/FundingLocked.ts b/ts/structs/FundingLocked.ts deleted file mode 100644 index e6201012..00000000 --- a/ts/structs/FundingLocked.ts +++ /dev/null @@ -1,69 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class FundingLocked extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.FundingLocked_free(this.ptr); - } - } - public Uint8Array get_channel_id() { - Uint8Array ret = bindings.FundingLocked_get_channel_id(this.ptr); - return ret; - } - - public void set_channel_id(Uint8Array val) { - bindings.FundingLocked_set_channel_id(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public Uint8Array get_next_per_commitment_point() { - Uint8Array ret = bindings.FundingLocked_get_next_per_commitment_point(this.ptr); - return ret; - } - - public void set_next_per_commitment_point(Uint8Array val) { - bindings.FundingLocked_set_next_per_commitment_point(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public static FundingLocked constructor_new(Uint8Array channel_id_arg, Uint8Array next_per_commitment_point_arg) { - number ret = bindings.FundingLocked_new(InternalUtils.check_arr_len(channel_id_arg, 32), InternalUtils.check_arr_len(next_per_commitment_point_arg, 33)); - const ret_hu_conv: FundingLocked = new FundingLocked(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.FundingLocked_clone_ptr(this.ptr); - return ret; - } - - public FundingLocked clone() { - number ret = bindings.FundingLocked_clone(this.ptr); - const ret_hu_conv: FundingLocked = new FundingLocked(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.FundingLocked_write(this.ptr); - return ret; - } - - public static Result_FundingLockedDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.FundingLocked_read(ser); - Result_FundingLockedDecodeErrorZ ret_hu_conv = Result_FundingLockedDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/FundingSigned.ts b/ts/structs/FundingSigned.ts deleted file mode 100644 index f9380e7f..00000000 --- a/ts/structs/FundingSigned.ts +++ /dev/null @@ -1,69 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class FundingSigned extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.FundingSigned_free(this.ptr); - } - } - public Uint8Array get_channel_id() { - Uint8Array ret = bindings.FundingSigned_get_channel_id(this.ptr); - return ret; - } - - public void set_channel_id(Uint8Array val) { - bindings.FundingSigned_set_channel_id(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public Uint8Array get_signature() { - Uint8Array ret = bindings.FundingSigned_get_signature(this.ptr); - return ret; - } - - public void set_signature(Uint8Array val) { - bindings.FundingSigned_set_signature(this.ptr, InternalUtils.check_arr_len(val, 64)); - } - - public static FundingSigned constructor_new(Uint8Array channel_id_arg, Uint8Array signature_arg) { - number ret = bindings.FundingSigned_new(InternalUtils.check_arr_len(channel_id_arg, 32), InternalUtils.check_arr_len(signature_arg, 64)); - const ret_hu_conv: FundingSigned = new FundingSigned(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.FundingSigned_clone_ptr(this.ptr); - return ret; - } - - public FundingSigned clone() { - number ret = bindings.FundingSigned_clone(this.ptr); - const ret_hu_conv: FundingSigned = new FundingSigned(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.FundingSigned_write(this.ptr); - return ret; - } - - public static Result_FundingSignedDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.FundingSigned_read(ser); - Result_FundingSignedDecodeErrorZ ret_hu_conv = Result_FundingSignedDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/GossipTimestampFilter.ts b/ts/structs/GossipTimestampFilter.ts deleted file mode 100644 index 2d1e9aec..00000000 --- a/ts/structs/GossipTimestampFilter.ts +++ /dev/null @@ -1,78 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class GossipTimestampFilter extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.GossipTimestampFilter_free(this.ptr); - } - } - public Uint8Array get_chain_hash() { - Uint8Array ret = bindings.GossipTimestampFilter_get_chain_hash(this.ptr); - return ret; - } - - public void set_chain_hash(Uint8Array val) { - bindings.GossipTimestampFilter_set_chain_hash(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public number get_first_timestamp() { - number ret = bindings.GossipTimestampFilter_get_first_timestamp(this.ptr); - return ret; - } - - public void set_first_timestamp(number val) { - bindings.GossipTimestampFilter_set_first_timestamp(this.ptr, val); - } - - public number get_timestamp_range() { - number ret = bindings.GossipTimestampFilter_get_timestamp_range(this.ptr); - return ret; - } - - public void set_timestamp_range(number val) { - bindings.GossipTimestampFilter_set_timestamp_range(this.ptr, val); - } - - public static GossipTimestampFilter constructor_new(Uint8Array chain_hash_arg, number first_timestamp_arg, number timestamp_range_arg) { - number ret = bindings.GossipTimestampFilter_new(InternalUtils.check_arr_len(chain_hash_arg, 32), first_timestamp_arg, timestamp_range_arg); - const ret_hu_conv: GossipTimestampFilter = new GossipTimestampFilter(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.GossipTimestampFilter_clone_ptr(this.ptr); - return ret; - } - - public GossipTimestampFilter clone() { - number ret = bindings.GossipTimestampFilter_clone(this.ptr); - const ret_hu_conv: GossipTimestampFilter = new GossipTimestampFilter(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.GossipTimestampFilter_write(this.ptr); - return ret; - } - - public static Result_GossipTimestampFilterDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.GossipTimestampFilter_read(ser); - Result_GossipTimestampFilterDecodeErrorZ ret_hu_conv = Result_GossipTimestampFilterDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/HTLCOutputInCommitment.ts b/ts/structs/HTLCOutputInCommitment.ts deleted file mode 100644 index 3b93a6a7..00000000 --- a/ts/structs/HTLCOutputInCommitment.ts +++ /dev/null @@ -1,98 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class HTLCOutputInCommitment extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.HTLCOutputInCommitment_free(this.ptr); - } - } - public boolean get_offered() { - boolean ret = bindings.HTLCOutputInCommitment_get_offered(this.ptr); - return ret; - } - - public void set_offered(boolean val) { - bindings.HTLCOutputInCommitment_set_offered(this.ptr, val); - } - - public number get_amount_msat() { - number ret = bindings.HTLCOutputInCommitment_get_amount_msat(this.ptr); - return ret; - } - - public void set_amount_msat(number val) { - bindings.HTLCOutputInCommitment_set_amount_msat(this.ptr, val); - } - - public number get_cltv_expiry() { - number ret = bindings.HTLCOutputInCommitment_get_cltv_expiry(this.ptr); - return ret; - } - - public void set_cltv_expiry(number val) { - bindings.HTLCOutputInCommitment_set_cltv_expiry(this.ptr, val); - } - - public Uint8Array get_payment_hash() { - Uint8Array ret = bindings.HTLCOutputInCommitment_get_payment_hash(this.ptr); - return ret; - } - - public void set_payment_hash(Uint8Array val) { - bindings.HTLCOutputInCommitment_set_payment_hash(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public Option_u32Z get_transaction_output_index() { - number ret = bindings.HTLCOutputInCommitment_get_transaction_output_index(this.ptr); - Option_u32Z ret_hu_conv = Option_u32Z.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_transaction_output_index(Option_u32Z val) { - bindings.HTLCOutputInCommitment_set_transaction_output_index(this.ptr, val.ptr); - } - - public static HTLCOutputInCommitment constructor_new(boolean offered_arg, number amount_msat_arg, number cltv_expiry_arg, Uint8Array payment_hash_arg, Option_u32Z transaction_output_index_arg) { - number ret = bindings.HTLCOutputInCommitment_new(offered_arg, amount_msat_arg, cltv_expiry_arg, InternalUtils.check_arr_len(payment_hash_arg, 32), transaction_output_index_arg.ptr); - const ret_hu_conv: HTLCOutputInCommitment = new HTLCOutputInCommitment(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.HTLCOutputInCommitment_clone_ptr(this.ptr); - return ret; - } - - public HTLCOutputInCommitment clone() { - number ret = bindings.HTLCOutputInCommitment_clone(this.ptr); - const ret_hu_conv: HTLCOutputInCommitment = new HTLCOutputInCommitment(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.HTLCOutputInCommitment_write(this.ptr); - return ret; - } - - public static Result_HTLCOutputInCommitmentDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.HTLCOutputInCommitment_read(ser); - Result_HTLCOutputInCommitmentDecodeErrorZ ret_hu_conv = Result_HTLCOutputInCommitmentDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/HTLCUpdate.ts b/ts/structs/HTLCUpdate.ts deleted file mode 100644 index 23f9d9a3..00000000 --- a/ts/structs/HTLCUpdate.ts +++ /dev/null @@ -1,44 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class HTLCUpdate extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.HTLCUpdate_free(this.ptr); - } - } - public number clone_ptr() { - number ret = bindings.HTLCUpdate_clone_ptr(this.ptr); - return ret; - } - - public HTLCUpdate clone() { - number ret = bindings.HTLCUpdate_clone(this.ptr); - const ret_hu_conv: HTLCUpdate = new HTLCUpdate(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.HTLCUpdate_write(this.ptr); - return ret; - } - - public static Result_HTLCUpdateDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.HTLCUpdate_read(ser); - Result_HTLCUpdateDecodeErrorZ ret_hu_conv = Result_HTLCUpdateDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/HolderCommitmentTransaction.ts b/ts/structs/HolderCommitmentTransaction.ts deleted file mode 100644 index 1ece40cf..00000000 --- a/ts/structs/HolderCommitmentTransaction.ts +++ /dev/null @@ -1,64 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class HolderCommitmentTransaction extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.HolderCommitmentTransaction_free(this.ptr); - } - } - public Uint8Array get_counterparty_sig() { - Uint8Array ret = bindings.HolderCommitmentTransaction_get_counterparty_sig(this.ptr); - return ret; - } - - public void set_counterparty_sig(Uint8Array val) { - bindings.HolderCommitmentTransaction_set_counterparty_sig(this.ptr, InternalUtils.check_arr_len(val, 64)); - } - - public void set_counterparty_htlc_sigs(Uint8Array[] val) { - bindings.HolderCommitmentTransaction_set_counterparty_htlc_sigs(this.ptr, val != null ? Arrays.stream(val).map(val_conv_12 -> InternalUtils.check_arr_len(val_conv_12, 64)).toArray(Uint8Array[]::new) : null); - } - - public number clone_ptr() { - number ret = bindings.HolderCommitmentTransaction_clone_ptr(this.ptr); - return ret; - } - - public HolderCommitmentTransaction clone() { - number ret = bindings.HolderCommitmentTransaction_clone(this.ptr); - const ret_hu_conv: HolderCommitmentTransaction = new HolderCommitmentTransaction(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.HolderCommitmentTransaction_write(this.ptr); - return ret; - } - - public static Result_HolderCommitmentTransactionDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.HolderCommitmentTransaction_read(ser); - Result_HolderCommitmentTransactionDecodeErrorZ ret_hu_conv = Result_HolderCommitmentTransactionDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static HolderCommitmentTransaction constructor_new(CommitmentTransaction commitment_tx, Uint8Array counterparty_sig, Uint8Array[] counterparty_htlc_sigs, Uint8Array holder_funding_key, Uint8Array counterparty_funding_key) { - number ret = bindings.HolderCommitmentTransaction_new(commitment_tx == null ? 0 : commitment_tx.ptr & ~1, InternalUtils.check_arr_len(counterparty_sig, 64), counterparty_htlc_sigs != null ? Arrays.stream(counterparty_htlc_sigs).map(counterparty_htlc_sigs_conv_12 -> InternalUtils.check_arr_len(counterparty_htlc_sigs_conv_12, 64)).toArray(Uint8Array[]::new) : null, InternalUtils.check_arr_len(holder_funding_key, 33), InternalUtils.check_arr_len(counterparty_funding_key, 33)); - const ret_hu_conv: HolderCommitmentTransaction = new HolderCommitmentTransaction(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - -} diff --git a/ts/structs/IgnoringMessageHandler.ts b/ts/structs/IgnoringMessageHandler.ts deleted file mode 100644 index 6505341f..00000000 --- a/ts/structs/IgnoringMessageHandler.ts +++ /dev/null @@ -1,56 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class IgnoringMessageHandler extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.IgnoringMessageHandler_free(this.ptr); - } - } - public static IgnoringMessageHandler constructor_new() { - number ret = bindings.IgnoringMessageHandler_new(); - const ret_hu_conv: IgnoringMessageHandler = new IgnoringMessageHandler(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public MessageSendEventsProvider as_MessageSendEventsProvider() { - number ret = bindings.IgnoringMessageHandler_as_MessageSendEventsProvider(this.ptr); - MessageSendEventsProvider ret_hu_conv = new MessageSendEventsProvider(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public RoutingMessageHandler as_RoutingMessageHandler() { - number ret = bindings.IgnoringMessageHandler_as_RoutingMessageHandler(this.ptr); - RoutingMessageHandler ret_hu_conv = new RoutingMessageHandler(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public CustomMessageReader as_CustomMessageReader() { - number ret = bindings.IgnoringMessageHandler_as_CustomMessageReader(this.ptr); - CustomMessageReader ret_hu_conv = new CustomMessageReader(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public CustomMessageHandler as_CustomMessageHandler() { - number ret = bindings.IgnoringMessageHandler_as_CustomMessageHandler(this.ptr); - CustomMessageHandler ret_hu_conv = new CustomMessageHandler(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/InMemorySigner.ts b/ts/structs/InMemorySigner.ts deleted file mode 100644 index ff323bb4..00000000 --- a/ts/structs/InMemorySigner.ts +++ /dev/null @@ -1,174 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class InMemorySigner extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.InMemorySigner_free(this.ptr); - } - } - public Uint8Array get_funding_key() { - Uint8Array ret = bindings.InMemorySigner_get_funding_key(this.ptr); - return ret; - } - - public void set_funding_key(Uint8Array val) { - bindings.InMemorySigner_set_funding_key(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public Uint8Array get_revocation_base_key() { - Uint8Array ret = bindings.InMemorySigner_get_revocation_base_key(this.ptr); - return ret; - } - - public void set_revocation_base_key(Uint8Array val) { - bindings.InMemorySigner_set_revocation_base_key(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public Uint8Array get_payment_key() { - Uint8Array ret = bindings.InMemorySigner_get_payment_key(this.ptr); - return ret; - } - - public void set_payment_key(Uint8Array val) { - bindings.InMemorySigner_set_payment_key(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public Uint8Array get_delayed_payment_base_key() { - Uint8Array ret = bindings.InMemorySigner_get_delayed_payment_base_key(this.ptr); - return ret; - } - - public void set_delayed_payment_base_key(Uint8Array val) { - bindings.InMemorySigner_set_delayed_payment_base_key(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public Uint8Array get_htlc_base_key() { - Uint8Array ret = bindings.InMemorySigner_get_htlc_base_key(this.ptr); - return ret; - } - - public void set_htlc_base_key(Uint8Array val) { - bindings.InMemorySigner_set_htlc_base_key(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public Uint8Array get_commitment_seed() { - Uint8Array ret = bindings.InMemorySigner_get_commitment_seed(this.ptr); - return ret; - } - - public void set_commitment_seed(Uint8Array val) { - bindings.InMemorySigner_set_commitment_seed(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public number clone_ptr() { - number ret = bindings.InMemorySigner_clone_ptr(this.ptr); - return ret; - } - - public InMemorySigner clone() { - number ret = bindings.InMemorySigner_clone(this.ptr); - const ret_hu_conv: InMemorySigner = new InMemorySigner(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static InMemorySigner constructor_new(Uint8Array funding_key, Uint8Array revocation_base_key, Uint8Array payment_key, Uint8Array delayed_payment_base_key, Uint8Array htlc_base_key, Uint8Array commitment_seed, number channel_value_satoshis, Uint8Array channel_keys_id) { - number ret = bindings.InMemorySigner_new(InternalUtils.check_arr_len(funding_key, 32), InternalUtils.check_arr_len(revocation_base_key, 32), InternalUtils.check_arr_len(payment_key, 32), InternalUtils.check_arr_len(delayed_payment_base_key, 32), InternalUtils.check_arr_len(htlc_base_key, 32), InternalUtils.check_arr_len(commitment_seed, 32), channel_value_satoshis, InternalUtils.check_arr_len(channel_keys_id, 32)); - const ret_hu_conv: InMemorySigner = new InMemorySigner(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public ChannelPublicKeys counterparty_pubkeys() { - number ret = bindings.InMemorySigner_counterparty_pubkeys(this.ptr); - const ret_hu_conv: ChannelPublicKeys = new ChannelPublicKeys(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public number counterparty_selected_contest_delay() { - number ret = bindings.InMemorySigner_counterparty_selected_contest_delay(this.ptr); - return ret; - } - - public number holder_selected_contest_delay() { - number ret = bindings.InMemorySigner_holder_selected_contest_delay(this.ptr); - return ret; - } - - public boolean is_outbound() { - boolean ret = bindings.InMemorySigner_is_outbound(this.ptr); - return ret; - } - - public OutPoint funding_outpoint() { - number ret = bindings.InMemorySigner_funding_outpoint(this.ptr); - const ret_hu_conv: OutPoint = new OutPoint(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public ChannelTransactionParameters get_channel_parameters() { - number ret = bindings.InMemorySigner_get_channel_parameters(this.ptr); - const ret_hu_conv: ChannelTransactionParameters = new ChannelTransactionParameters(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public boolean opt_anchors() { - boolean ret = bindings.InMemorySigner_opt_anchors(this.ptr); - return ret; - } - - public Result_CVec_CVec_u8ZZNoneZ sign_counterparty_payment_input(Uint8Array spend_tx, number input_idx, StaticPaymentOutputDescriptor descriptor) { - number ret = bindings.InMemorySigner_sign_counterparty_payment_input(this.ptr, spend_tx, input_idx, descriptor == null ? 0 : descriptor.ptr & ~1); - Result_CVec_CVec_u8ZZNoneZ ret_hu_conv = Result_CVec_CVec_u8ZZNoneZ.constr_from_ptr(ret); - this.ptrs_to.add(descriptor); - return ret_hu_conv; - } - - public Result_CVec_CVec_u8ZZNoneZ sign_dynamic_p2wsh_input(Uint8Array spend_tx, number input_idx, DelayedPaymentOutputDescriptor descriptor) { - number ret = bindings.InMemorySigner_sign_dynamic_p2wsh_input(this.ptr, spend_tx, input_idx, descriptor == null ? 0 : descriptor.ptr & ~1); - Result_CVec_CVec_u8ZZNoneZ ret_hu_conv = Result_CVec_CVec_u8ZZNoneZ.constr_from_ptr(ret); - this.ptrs_to.add(descriptor); - return ret_hu_conv; - } - - public BaseSign as_BaseSign() { - number ret = bindings.InMemorySigner_as_BaseSign(this.ptr); - BaseSign ret_hu_conv = new BaseSign(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Sign as_Sign() { - number ret = bindings.InMemorySigner_as_Sign(this.ptr); - Sign ret_hu_conv = new Sign(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.InMemorySigner_write(this.ptr); - return ret; - } - - public static Result_InMemorySignerDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.InMemorySigner_read(ser); - Result_InMemorySignerDecodeErrorZ ret_hu_conv = Result_InMemorySignerDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Init.ts b/ts/structs/Init.ts deleted file mode 100644 index 94cd5d87..00000000 --- a/ts/structs/Init.ts +++ /dev/null @@ -1,62 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class Init extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.Init_free(this.ptr); - } - } - public InitFeatures get_features() { - number ret = bindings.Init_get_features(this.ptr); - const ret_hu_conv: InitFeatures = new InitFeatures(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_features(InitFeatures val) { - bindings.Init_set_features(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public static Init constructor_new(InitFeatures features_arg) { - number ret = bindings.Init_new(features_arg == null ? 0 : features_arg.ptr & ~1); - const ret_hu_conv: Init = new Init(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.Init_clone_ptr(this.ptr); - return ret; - } - - public Init clone() { - number ret = bindings.Init_clone(this.ptr); - const ret_hu_conv: Init = new Init(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.Init_write(this.ptr); - return ret; - } - - public static Result_InitDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.Init_read(ser); - Result_InitDecodeErrorZ ret_hu_conv = Result_InitDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/InitFeatures.ts b/ts/structs/InitFeatures.ts deleted file mode 100644 index ca4e1c39..00000000 --- a/ts/structs/InitFeatures.ts +++ /dev/null @@ -1,69 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class InitFeatures extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.InitFeatures_free(this.ptr); - } - } - public boolean eq(InitFeatures b) { - boolean ret = bindings.InitFeatures_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - this.ptrs_to.add(b); - return ret; - } - - public number clone_ptr() { - number ret = bindings.InitFeatures_clone_ptr(this.ptr); - return ret; - } - - public InitFeatures clone() { - number ret = bindings.InitFeatures_clone(this.ptr); - const ret_hu_conv: InitFeatures = new InitFeatures(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static InitFeatures constructor_empty() { - number ret = bindings.InitFeatures_empty(); - const ret_hu_conv: InitFeatures = new InitFeatures(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static InitFeatures constructor_known() { - number ret = bindings.InitFeatures_known(); - const ret_hu_conv: InitFeatures = new InitFeatures(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public boolean requires_unknown_bits() { - boolean ret = bindings.InitFeatures_requires_unknown_bits(this.ptr); - return ret; - } - - public Uint8Array write() { - Uint8Array ret = bindings.InitFeatures_write(this.ptr); - return ret; - } - - public static Result_InitFeaturesDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.InitFeatures_read(ser); - Result_InitFeaturesDecodeErrorZ ret_hu_conv = Result_InitFeaturesDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/InvalidShutdownScript.ts b/ts/structs/InvalidShutdownScript.ts deleted file mode 100644 index 0f5a990f..00000000 --- a/ts/structs/InvalidShutdownScript.ts +++ /dev/null @@ -1,49 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class InvalidShutdownScript extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.InvalidShutdownScript_free(this.ptr); - } - } - public Uint8Array get_script() { - Uint8Array ret = bindings.InvalidShutdownScript_get_script(this.ptr); - return ret; - } - - public void set_script(Uint8Array val) { - bindings.InvalidShutdownScript_set_script(this.ptr, val); - } - - public static InvalidShutdownScript constructor_new(Uint8Array script_arg) { - number ret = bindings.InvalidShutdownScript_new(script_arg); - const ret_hu_conv: InvalidShutdownScript = new InvalidShutdownScript(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.InvalidShutdownScript_clone_ptr(this.ptr); - return ret; - } - - public InvalidShutdownScript clone() { - number ret = bindings.InvalidShutdownScript_clone(this.ptr); - const ret_hu_conv: InvalidShutdownScript = new InvalidShutdownScript(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Invoice.ts b/ts/structs/Invoice.ts deleted file mode 100644 index aa559f5a..00000000 --- a/ts/structs/Invoice.ts +++ /dev/null @@ -1,152 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class Invoice extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.Invoice_free(this.ptr); - } - } - public boolean eq(Invoice b) { - boolean ret = bindings.Invoice_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - this.ptrs_to.add(b); - return ret; - } - - public number clone_ptr() { - number ret = bindings.Invoice_clone_ptr(this.ptr); - return ret; - } - - public Invoice clone() { - number ret = bindings.Invoice_clone(this.ptr); - const ret_hu_conv: Invoice = new Invoice(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public SignedRawInvoice into_signed_raw() { - number ret = bindings.Invoice_into_signed_raw(this.ptr); - const ret_hu_conv: SignedRawInvoice = new SignedRawInvoice(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Result_NoneSemanticErrorZ check_signature() { - number ret = bindings.Invoice_check_signature(this.ptr); - Result_NoneSemanticErrorZ ret_hu_conv = Result_NoneSemanticErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_InvoiceSemanticErrorZ constructor_from_signed(SignedRawInvoice signed_invoice) { - number ret = bindings.Invoice_from_signed(signed_invoice == null ? 0 : signed_invoice.ptr & ~1); - Result_InvoiceSemanticErrorZ ret_hu_conv = Result_InvoiceSemanticErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public number timestamp() { - number ret = bindings.Invoice_timestamp(this.ptr); - return ret; - } - - public Uint8Array payment_hash() { - Uint8Array ret = bindings.Invoice_payment_hash(this.ptr); - return ret; - } - - public Uint8Array payee_pub_key() { - Uint8Array ret = bindings.Invoice_payee_pub_key(this.ptr); - return ret; - } - - public Uint8Array payment_secret() { - Uint8Array ret = bindings.Invoice_payment_secret(this.ptr); - return ret; - } - - public InvoiceFeatures features() { - number ret = bindings.Invoice_features(this.ptr); - const ret_hu_conv: InvoiceFeatures = new InvoiceFeatures(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array recover_payee_pub_key() { - Uint8Array ret = bindings.Invoice_recover_payee_pub_key(this.ptr); - return ret; - } - - public number expiry_time() { - number ret = bindings.Invoice_expiry_time(this.ptr); - return ret; - } - - public boolean is_expired() { - boolean ret = bindings.Invoice_is_expired(this.ptr); - return ret; - } - - public number min_final_cltv_expiry() { - number ret = bindings.Invoice_min_final_cltv_expiry(this.ptr); - return ret; - } - - public PrivateRoute[] private_routes() { - number[] ret = bindings.Invoice_private_routes(this.ptr); - PrivateRoute[] ret_conv_14_arr = new PrivateRoute[ret.length]; - for (int o = 0; o < ret.length; o++) { - number ret_conv_14 = ret[o]; - const ret_conv_14_hu_conv: PrivateRoute = new PrivateRoute(null, ret_conv_14); - ret_conv_14_hu_conv.ptrs_to.add(this); - ret_conv_14_arr[o] = ret_conv_14_hu_conv; - } - return ret_conv_14_arr; - } - - public RouteHint[] route_hints() { - number[] ret = bindings.Invoice_route_hints(this.ptr); - RouteHint[] ret_conv_11_arr = new RouteHint[ret.length]; - for (int l = 0; l < ret.length; l++) { - number ret_conv_11 = ret[l]; - const ret_conv_11_hu_conv: RouteHint = new RouteHint(null, ret_conv_11); - ret_conv_11_hu_conv.ptrs_to.add(this); - ret_conv_11_arr[l] = ret_conv_11_hu_conv; - } - return ret_conv_11_arr; - } - - public Currency currency() { - Currency ret = bindings.Invoice_currency(this.ptr); - return ret; - } - - public Option_u64Z amount_milli_satoshis() { - number ret = bindings.Invoice_amount_milli_satoshis(this.ptr); - Option_u64Z ret_hu_conv = Option_u64Z.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static Result_InvoiceNoneZ constructor_from_str(String s) { - number ret = bindings.Invoice_from_str(s); - Result_InvoiceNoneZ ret_hu_conv = Result_InvoiceNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public String to_str() { - String ret = bindings.Invoice_to_str(this.ptr); - return ret; - } - -} diff --git a/ts/structs/InvoiceFeatures.ts b/ts/structs/InvoiceFeatures.ts deleted file mode 100644 index a184d7bd..00000000 --- a/ts/structs/InvoiceFeatures.ts +++ /dev/null @@ -1,69 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class InvoiceFeatures extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.InvoiceFeatures_free(this.ptr); - } - } - public boolean eq(InvoiceFeatures b) { - boolean ret = bindings.InvoiceFeatures_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - this.ptrs_to.add(b); - return ret; - } - - public number clone_ptr() { - number ret = bindings.InvoiceFeatures_clone_ptr(this.ptr); - return ret; - } - - public InvoiceFeatures clone() { - number ret = bindings.InvoiceFeatures_clone(this.ptr); - const ret_hu_conv: InvoiceFeatures = new InvoiceFeatures(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static InvoiceFeatures constructor_empty() { - number ret = bindings.InvoiceFeatures_empty(); - const ret_hu_conv: InvoiceFeatures = new InvoiceFeatures(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static InvoiceFeatures constructor_known() { - number ret = bindings.InvoiceFeatures_known(); - const ret_hu_conv: InvoiceFeatures = new InvoiceFeatures(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public boolean requires_unknown_bits() { - boolean ret = bindings.InvoiceFeatures_requires_unknown_bits(this.ptr); - return ret; - } - - public Uint8Array write() { - Uint8Array ret = bindings.InvoiceFeatures_write(this.ptr); - return ret; - } - - public static Result_InvoiceFeaturesDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.InvoiceFeatures_read(ser); - Result_InvoiceFeaturesDecodeErrorZ ret_hu_conv = Result_InvoiceFeaturesDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/InvoicePayer.ts b/ts/structs/InvoicePayer.ts deleted file mode 100644 index a656a817..00000000 --- a/ts/structs/InvoicePayer.ts +++ /dev/null @@ -1,64 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class InvoicePayer extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.InvoicePayer_free(this.ptr); - } - } - public static InvoicePayer constructor_new(Payer payer, Router router, MultiThreadedLockableScore scorer, Logger logger, EventHandler event_handler, RetryAttempts retry_attempts) { - number ret = bindings.InvoicePayer_new(payer == null ? 0 : payer.ptr, router == null ? 0 : router.ptr, scorer == null ? 0 : scorer.ptr & ~1, logger == null ? 0 : logger.ptr, event_handler == null ? 0 : event_handler.ptr, retry_attempts == null ? 0 : retry_attempts.ptr & ~1); - const ret_hu_conv: InvoicePayer = new InvoicePayer(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - ret_hu_conv.ptrs_to.add(payer); - ret_hu_conv.ptrs_to.add(router); - ret_hu_conv.ptrs_to.add(scorer); - ret_hu_conv.ptrs_to.add(logger); - ret_hu_conv.ptrs_to.add(event_handler); - return ret_hu_conv; - } - - public Result_PaymentIdPaymentErrorZ pay_invoice(Invoice invoice) { - number ret = bindings.InvoicePayer_pay_invoice(this.ptr, invoice == null ? 0 : invoice.ptr & ~1); - Result_PaymentIdPaymentErrorZ ret_hu_conv = Result_PaymentIdPaymentErrorZ.constr_from_ptr(ret); - this.ptrs_to.add(invoice); - return ret_hu_conv; - } - - public Result_PaymentIdPaymentErrorZ pay_zero_value_invoice(Invoice invoice, number amount_msats) { - number ret = bindings.InvoicePayer_pay_zero_value_invoice(this.ptr, invoice == null ? 0 : invoice.ptr & ~1, amount_msats); - Result_PaymentIdPaymentErrorZ ret_hu_conv = Result_PaymentIdPaymentErrorZ.constr_from_ptr(ret); - this.ptrs_to.add(invoice); - return ret_hu_conv; - } - - public Result_PaymentIdPaymentErrorZ pay_pubkey(Uint8Array pubkey, Uint8Array payment_preimage, number amount_msats, number final_cltv_expiry_delta) { - number ret = bindings.InvoicePayer_pay_pubkey(this.ptr, InternalUtils.check_arr_len(pubkey, 33), InternalUtils.check_arr_len(payment_preimage, 32), amount_msats, final_cltv_expiry_delta); - Result_PaymentIdPaymentErrorZ ret_hu_conv = Result_PaymentIdPaymentErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public void remove_cached_payment(Uint8Array payment_hash) { - bindings.InvoicePayer_remove_cached_payment(this.ptr, InternalUtils.check_arr_len(payment_hash, 32)); - } - - public EventHandler as_EventHandler() { - number ret = bindings.InvoicePayer_as_EventHandler(this.ptr); - EventHandler ret_hu_conv = new EventHandler(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/InvoiceSignature.ts b/ts/structs/InvoiceSignature.ts deleted file mode 100644 index 55643a49..00000000 --- a/ts/structs/InvoiceSignature.ts +++ /dev/null @@ -1,39 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class InvoiceSignature extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.InvoiceSignature_free(this.ptr); - } - } - public number clone_ptr() { - number ret = bindings.InvoiceSignature_clone_ptr(this.ptr); - return ret; - } - - public InvoiceSignature clone() { - number ret = bindings.InvoiceSignature_clone(this.ptr); - const ret_hu_conv: InvoiceSignature = new InvoiceSignature(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public boolean eq(InvoiceSignature b) { - boolean ret = bindings.InvoiceSignature_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - this.ptrs_to.add(b); - return ret; - } - -} diff --git a/ts/structs/KeysInterface.ts b/ts/structs/KeysInterface.ts deleted file mode 100644 index bfc1777f..00000000 --- a/ts/structs/KeysInterface.ts +++ /dev/null @@ -1,150 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export class KeysInterface extends CommonBase { - - bindings_instance?: bindings.LDKKeysInterface; - - constructor(ptr?: number, arg?: bindings.LDKKeysInterface) { - if (Number.isFinite(ptr)) { - super(ptr); - this.bindings_instance = null; - } else { - // TODO: private constructor instantiation - super(bindings.LDKKeysInterface_new(arg)); - this.ptrs_to.push(arg); - - } - } - - protected finalize() { - if (this.ptr != 0) { - bindings.KeysInterface_free(this.ptr); - } - super.finalize(); - } - - static new_impl(arg: KeysInterfaceInterface): KeysInterface { - const impl_holder: LDKKeysInterfaceHolder = new LDKKeysInterfaceHolder(); - let structImplementation = { - // todo: in-line interface filling - get_node_secret (): Uint8Array { - Uint8Array ret = arg.get_node_secret(); - result: Uint8Array = InternalUtils.check_arr_len(ret, 32); - return result; - }, - - get_destination_script (): Uint8Array { - Uint8Array ret = arg.get_destination_script(); - return ret; - }, - - get_shutdown_scriptpubkey (): number { - ShutdownScript ret = arg.get_shutdown_scriptpubkey(); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - get_channel_signer (inbound: boolean, channel_value_satoshis: number): number { - Sign ret = arg.get_channel_signer(inbound, channel_value_satoshis); - result: number = ret == null ? 0 : ret.clone_ptr(); - impl_holder.held.ptrs_to.add(ret); - return result; - }, - - get_secure_random_bytes (): Uint8Array { - Uint8Array ret = arg.get_secure_random_bytes(); - result: Uint8Array = InternalUtils.check_arr_len(ret, 32); - return result; - }, - - read_chan_signer (reader: Uint8Array): number { - Result_SignDecodeErrorZ ret = arg.read_chan_signer(reader); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - sign_invoice (invoice_preimage: Uint8Array): number { - Result_RecoverableSignatureNoneZ ret = arg.sign_invoice(invoice_preimage); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - get_inbound_payment_key_material (): Uint8Array { - Uint8Array ret = arg.get_inbound_payment_key_material(); - result: Uint8Array = InternalUtils.check_arr_len(ret, 32); - return result; - }, - - - }; - impl_holder.held = new KeysInterface (null, structImplementation); - } - } - - export interface KeysInterfaceInterface { - get_node_secret(): Uint8Array; - get_destination_script(): Uint8Array; - get_shutdown_scriptpubkey(): ShutdownScript; - get_channel_signer(inbound: boolean, channel_value_satoshis: number): Sign; - get_secure_random_bytes(): Uint8Array; - read_chan_signer(reader: Uint8Array): Result_SignDecodeErrorZ; - sign_invoice(invoice_preimage: Uint8Array): Result_RecoverableSignatureNoneZ; - get_inbound_payment_key_material(): Uint8Array; - - } - - class LDKKeysInterfaceHolder { - held: KeysInterface; - } - public Uint8Array get_node_secret() { - Uint8Array ret = bindings.KeysInterface_get_node_secret(this.ptr); - return ret; - } - - public Uint8Array get_destination_script() { - Uint8Array ret = bindings.KeysInterface_get_destination_script(this.ptr); - return ret; - } - - public ShutdownScript get_shutdown_scriptpubkey() { - number ret = bindings.KeysInterface_get_shutdown_scriptpubkey(this.ptr); - const ret_hu_conv: ShutdownScript = new ShutdownScript(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Sign get_channel_signer(boolean inbound, number channel_value_satoshis) { - number ret = bindings.KeysInterface_get_channel_signer(this.ptr, inbound, channel_value_satoshis); - Sign ret_hu_conv = new Sign(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array get_secure_random_bytes() { - Uint8Array ret = bindings.KeysInterface_get_secure_random_bytes(this.ptr); - return ret; - } - - public Result_SignDecodeErrorZ read_chan_signer(Uint8Array reader) { - number ret = bindings.KeysInterface_read_chan_signer(this.ptr, reader); - Result_SignDecodeErrorZ ret_hu_conv = Result_SignDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public Result_RecoverableSignatureNoneZ sign_invoice(Uint8Array invoice_preimage) { - number ret = bindings.KeysInterface_sign_invoice(this.ptr, invoice_preimage); - Result_RecoverableSignatureNoneZ ret_hu_conv = Result_RecoverableSignatureNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public Uint8Array get_inbound_payment_key_material() { - Uint8Array ret = bindings.KeysInterface_get_inbound_payment_key_material(this.ptr); - return ret; - } - -} diff --git a/ts/structs/KeysManager.ts b/ts/structs/KeysManager.ts deleted file mode 100644 index 75ab015f..00000000 --- a/ts/structs/KeysManager.ts +++ /dev/null @@ -1,48 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class KeysManager extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.KeysManager_free(this.ptr); - } - } - public static KeysManager constructor_new(Uint8Array seed, number starting_time_secs, number starting_time_nanos) { - number ret = bindings.KeysManager_new(InternalUtils.check_arr_len(seed, 32), starting_time_secs, starting_time_nanos); - const ret_hu_conv: KeysManager = new KeysManager(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public InMemorySigner derive_channel_keys(number channel_value_satoshis, Uint8Array params) { - number ret = bindings.KeysManager_derive_channel_keys(this.ptr, channel_value_satoshis, InternalUtils.check_arr_len(params, 32)); - const ret_hu_conv: InMemorySigner = new InMemorySigner(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Result_TransactionNoneZ spend_spendable_outputs(SpendableOutputDescriptor[] descriptors, TxOut[] outputs, Uint8Array change_destination_script, number feerate_sat_per_1000_weight) { - number ret = bindings.KeysManager_spend_spendable_outputs(this.ptr, descriptors != null ? Arrays.stream(descriptors).map(descriptors_conv_27 -> descriptors_conv_27.ptr).toArray(number[]::new) : null, outputs != null ? Arrays.stream(outputs).map(outputs_conv_7 -> outputs_conv_7.ptr).toArray(number[]::new) : null, change_destination_script, feerate_sat_per_1000_weight); - Result_TransactionNoneZ ret_hu_conv = Result_TransactionNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public KeysInterface as_KeysInterface() { - number ret = bindings.KeysManager_as_KeysInterface(this.ptr); - KeysInterface ret_hu_conv = new KeysInterface(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/LightningError.ts b/ts/structs/LightningError.ts deleted file mode 100644 index 3cdedccc..00000000 --- a/ts/structs/LightningError.ts +++ /dev/null @@ -1,60 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class LightningError extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.LightningError_free(this.ptr); - } - } - public String get_err() { - String ret = bindings.LightningError_get_err(this.ptr); - return ret; - } - - public void set_err(String val) { - bindings.LightningError_set_err(this.ptr, val); - } - - public ErrorAction get_action() { - number ret = bindings.LightningError_get_action(this.ptr); - ErrorAction ret_hu_conv = ErrorAction.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_action(ErrorAction val) { - bindings.LightningError_set_action(this.ptr, val.ptr); - } - - public static LightningError constructor_new(String err_arg, ErrorAction action_arg) { - number ret = bindings.LightningError_new(err_arg, action_arg.ptr); - const ret_hu_conv: LightningError = new LightningError(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.LightningError_clone_ptr(this.ptr); - return ret; - } - - public LightningError clone() { - number ret = bindings.LightningError_clone(this.ptr); - const ret_hu_conv: LightningError = new LightningError(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Listen.ts b/ts/structs/Listen.ts deleted file mode 100644 index 15154c4f..00000000 --- a/ts/structs/Listen.ts +++ /dev/null @@ -1,66 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export class Listen extends CommonBase { - - bindings_instance?: bindings.LDKListen; - - constructor(ptr?: number, arg?: bindings.LDKListen) { - if (Number.isFinite(ptr)) { - super(ptr); - this.bindings_instance = null; - } else { - // TODO: private constructor instantiation - super(bindings.LDKListen_new(arg)); - this.ptrs_to.push(arg); - - } - } - - protected finalize() { - if (this.ptr != 0) { - bindings.Listen_free(this.ptr); - } - super.finalize(); - } - - static new_impl(arg: ListenInterface): Listen { - const impl_holder: LDKListenHolder = new LDKListenHolder(); - let structImplementation = { - // todo: in-line interface filling - block_connected (block: Uint8Array, height: number): void { - arg.block_connected(block, height); - }, - - block_disconnected (header: Uint8Array, height: number): void { - arg.block_disconnected(header, height); - }, - - - }; - impl_holder.held = new Listen (null, structImplementation); - } - } - - export interface ListenInterface { - block_connected(block: Uint8Array, height: number): void; - block_disconnected(header: Uint8Array, height: number): void; - - } - - class LDKListenHolder { - held: Listen; - } - public void block_connected(Uint8Array block, number height) { - bindings.Listen_block_connected(this.ptr, block, height); - } - - public void block_disconnected(Uint8Array header, number height) { - bindings.Listen_block_disconnected(this.ptr, InternalUtils.check_arr_len(header, 80), height); - } - -} diff --git a/ts/structs/LockableScore.ts b/ts/structs/LockableScore.ts deleted file mode 100644 index bc44054d..00000000 --- a/ts/structs/LockableScore.ts +++ /dev/null @@ -1,63 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export class LockableScore extends CommonBase { - - bindings_instance?: bindings.LDKLockableScore; - - constructor(ptr?: number, arg?: bindings.LDKLockableScore) { - if (Number.isFinite(ptr)) { - super(ptr); - this.bindings_instance = null; - } else { - // TODO: private constructor instantiation - super(bindings.LDKLockableScore_new(arg)); - this.ptrs_to.push(arg); - - } - } - - protected finalize() { - if (this.ptr != 0) { - bindings.LockableScore_free(this.ptr); - } - super.finalize(); - } - - static new_impl(arg: LockableScoreInterface): LockableScore { - const impl_holder: LDKLockableScoreHolder = new LDKLockableScoreHolder(); - let structImplementation = { - // todo: in-line interface filling - lock (): number { - Score ret = arg.lock(); - result: number = ret == null ? 0 : ret.ptr; - impl_holder.held.ptrs_to.add(ret); - return result; - }, - - - }; - impl_holder.held = new LockableScore (null, structImplementation); - } - } - - export interface LockableScoreInterface { - lock(): Score; - - } - - class LDKLockableScoreHolder { - held: LockableScore; - } - public Score lock() { - number ret = bindings.LockableScore_lock(this.ptr); - Score ret_hu_conv = new Score(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/LockedChannelMonitor.ts b/ts/structs/LockedChannelMonitor.ts deleted file mode 100644 index e7f467e0..00000000 --- a/ts/structs/LockedChannelMonitor.ts +++ /dev/null @@ -1,20 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class LockedChannelMonitor extends CommonBase implements AutoCloseable { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - public close() { - - if (this.ptr != 0) { - bindings.LockedChannelMonitor_free(this.ptr); - } - } -} diff --git a/ts/structs/Logger.ts b/ts/structs/Logger.ts deleted file mode 100644 index ffe8b3a5..00000000 --- a/ts/structs/Logger.ts +++ /dev/null @@ -1,54 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export class Logger extends CommonBase { - - bindings_instance?: bindings.LDKLogger; - - constructor(ptr?: number, arg?: bindings.LDKLogger) { - if (Number.isFinite(ptr)) { - super(ptr); - this.bindings_instance = null; - } else { - // TODO: private constructor instantiation - super(bindings.LDKLogger_new(arg)); - this.ptrs_to.push(arg); - - } - } - - protected finalize() { - if (this.ptr != 0) { - bindings.Logger_free(this.ptr); - } - super.finalize(); - } - - static new_impl(arg: LoggerInterface): Logger { - const impl_holder: LDKLoggerHolder = new LDKLoggerHolder(); - let structImplementation = { - // todo: in-line interface filling - log (record: number): void { - const record_hu_conv: Record = new Record(null, record); - arg.log(record_hu_conv); - }, - - - }; - impl_holder.held = new Logger (null, structImplementation); - } - } - - export interface LoggerInterface { - log(record: Record): void; - - } - - class LDKLoggerHolder { - held: Logger; - } -} diff --git a/ts/structs/MessageHandler.ts b/ts/structs/MessageHandler.ts deleted file mode 100644 index b356c76b..00000000 --- a/ts/structs/MessageHandler.ts +++ /dev/null @@ -1,54 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class MessageHandler extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.MessageHandler_free(this.ptr); - } - } - public ChannelMessageHandler get_chan_handler() { - number ret = bindings.MessageHandler_get_chan_handler(this.ptr); - ChannelMessageHandler ret_hu_conv = new ChannelMessageHandler(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_chan_handler(ChannelMessageHandler val) { - bindings.MessageHandler_set_chan_handler(this.ptr, val == null ? 0 : val.ptr); - this.ptrs_to.add(val); - } - - public RoutingMessageHandler get_route_handler() { - number ret = bindings.MessageHandler_get_route_handler(this.ptr); - RoutingMessageHandler ret_hu_conv = new RoutingMessageHandler(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_route_handler(RoutingMessageHandler val) { - bindings.MessageHandler_set_route_handler(this.ptr, val == null ? 0 : val.ptr); - this.ptrs_to.add(val); - } - - public static MessageHandler constructor_new(ChannelMessageHandler chan_handler_arg, RoutingMessageHandler route_handler_arg) { - number ret = bindings.MessageHandler_new(chan_handler_arg == null ? 0 : chan_handler_arg.ptr, route_handler_arg == null ? 0 : route_handler_arg.ptr); - const ret_hu_conv: MessageHandler = new MessageHandler(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - ret_hu_conv.ptrs_to.add(chan_handler_arg); - ret_hu_conv.ptrs_to.add(route_handler_arg); - return ret_hu_conv; - } - -} diff --git a/ts/structs/MessageSendEvent.ts b/ts/structs/MessageSendEvent.ts deleted file mode 100644 index c02e9e37..00000000 --- a/ts/structs/MessageSendEvent.ts +++ /dev/null @@ -1,446 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class MessageSendEvent extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.MessageSendEvent_free(this.ptr); } - } - static constr_from_ptr(ptr: number): MessageSendEvent { - const raw_val: bindings.LDKMessageSendEvent = bindings.LDKMessageSendEvent_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKMessageSendEvent.SendAcceptChannel) { - return new SendAcceptChannel(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKMessageSendEvent.SendOpenChannel) { - return new SendOpenChannel(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKMessageSendEvent.SendFundingCreated) { - return new SendFundingCreated(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKMessageSendEvent.SendFundingSigned) { - return new SendFundingSigned(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKMessageSendEvent.SendFundingLocked) { - return new SendFundingLocked(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKMessageSendEvent.SendAnnouncementSignatures) { - return new SendAnnouncementSignatures(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKMessageSendEvent.UpdateHTLCs) { - return new UpdateHTLCs(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKMessageSendEvent.SendRevokeAndACK) { - return new SendRevokeAndACK(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKMessageSendEvent.SendClosingSigned) { - return new SendClosingSigned(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKMessageSendEvent.SendShutdown) { - return new SendShutdown(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKMessageSendEvent.SendChannelReestablish) { - return new SendChannelReestablish(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKMessageSendEvent.BroadcastChannelAnnouncement) { - return new BroadcastChannelAnnouncement(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKMessageSendEvent.BroadcastNodeAnnouncement) { - return new BroadcastNodeAnnouncement(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKMessageSendEvent.BroadcastChannelUpdate) { - return new BroadcastChannelUpdate(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKMessageSendEvent.SendChannelUpdate) { - return new SendChannelUpdate(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKMessageSendEvent.HandleError) { - return new HandleError(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKMessageSendEvent.SendChannelRangeQuery) { - return new SendChannelRangeQuery(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKMessageSendEvent.SendShortIdsQuery) { - return new SendShortIdsQuery(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKMessageSendEvent.SendReplyChannelRange) { - return new SendReplyChannelRange(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class SendAcceptChannel extends MessageSendEvent { - public node_id: Uint8Array; - public msg: AcceptChannel; - private constructor(ptr: number, obj: bindings.LDKMessageSendEvent.SendAcceptChannel) { - super(null, ptr); - this.node_id = obj.node_id; - const msg: number = obj.msg; - const msg_hu_conv: AcceptChannel = new AcceptChannel(null, msg); - msg_hu_conv.ptrs_to.add(this); - this.msg = msg_hu_conv; - } -} -export class SendOpenChannel extends MessageSendEvent { - public node_id: Uint8Array; - public msg: OpenChannel; - private constructor(ptr: number, obj: bindings.LDKMessageSendEvent.SendOpenChannel) { - super(null, ptr); - this.node_id = obj.node_id; - const msg: number = obj.msg; - const msg_hu_conv: OpenChannel = new OpenChannel(null, msg); - msg_hu_conv.ptrs_to.add(this); - this.msg = msg_hu_conv; - } -} -export class SendFundingCreated extends MessageSendEvent { - public node_id: Uint8Array; - public msg: FundingCreated; - private constructor(ptr: number, obj: bindings.LDKMessageSendEvent.SendFundingCreated) { - super(null, ptr); - this.node_id = obj.node_id; - const msg: number = obj.msg; - const msg_hu_conv: FundingCreated = new FundingCreated(null, msg); - msg_hu_conv.ptrs_to.add(this); - this.msg = msg_hu_conv; - } -} -export class SendFundingSigned extends MessageSendEvent { - public node_id: Uint8Array; - public msg: FundingSigned; - private constructor(ptr: number, obj: bindings.LDKMessageSendEvent.SendFundingSigned) { - super(null, ptr); - this.node_id = obj.node_id; - const msg: number = obj.msg; - const msg_hu_conv: FundingSigned = new FundingSigned(null, msg); - msg_hu_conv.ptrs_to.add(this); - this.msg = msg_hu_conv; - } -} -export class SendFundingLocked extends MessageSendEvent { - public node_id: Uint8Array; - public msg: FundingLocked; - private constructor(ptr: number, obj: bindings.LDKMessageSendEvent.SendFundingLocked) { - super(null, ptr); - this.node_id = obj.node_id; - const msg: number = obj.msg; - const msg_hu_conv: FundingLocked = new FundingLocked(null, msg); - msg_hu_conv.ptrs_to.add(this); - this.msg = msg_hu_conv; - } -} -export class SendAnnouncementSignatures extends MessageSendEvent { - public node_id: Uint8Array; - public msg: AnnouncementSignatures; - private constructor(ptr: number, obj: bindings.LDKMessageSendEvent.SendAnnouncementSignatures) { - super(null, ptr); - this.node_id = obj.node_id; - const msg: number = obj.msg; - const msg_hu_conv: AnnouncementSignatures = new AnnouncementSignatures(null, msg); - msg_hu_conv.ptrs_to.add(this); - this.msg = msg_hu_conv; - } -} -export class UpdateHTLCs extends MessageSendEvent { - public node_id: Uint8Array; - public updates: CommitmentUpdate; - private constructor(ptr: number, obj: bindings.LDKMessageSendEvent.UpdateHTLCs) { - super(null, ptr); - this.node_id = obj.node_id; - const updates: number = obj.updates; - const updates_hu_conv: CommitmentUpdate = new CommitmentUpdate(null, updates); - updates_hu_conv.ptrs_to.add(this); - this.updates = updates_hu_conv; - } -} -export class SendRevokeAndACK extends MessageSendEvent { - public node_id: Uint8Array; - public msg: RevokeAndACK; - private constructor(ptr: number, obj: bindings.LDKMessageSendEvent.SendRevokeAndACK) { - super(null, ptr); - this.node_id = obj.node_id; - const msg: number = obj.msg; - const msg_hu_conv: RevokeAndACK = new RevokeAndACK(null, msg); - msg_hu_conv.ptrs_to.add(this); - this.msg = msg_hu_conv; - } -} -export class SendClosingSigned extends MessageSendEvent { - public node_id: Uint8Array; - public msg: ClosingSigned; - private constructor(ptr: number, obj: bindings.LDKMessageSendEvent.SendClosingSigned) { - super(null, ptr); - this.node_id = obj.node_id; - const msg: number = obj.msg; - const msg_hu_conv: ClosingSigned = new ClosingSigned(null, msg); - msg_hu_conv.ptrs_to.add(this); - this.msg = msg_hu_conv; - } -} -export class SendShutdown extends MessageSendEvent { - public node_id: Uint8Array; - public msg: Shutdown; - private constructor(ptr: number, obj: bindings.LDKMessageSendEvent.SendShutdown) { - super(null, ptr); - this.node_id = obj.node_id; - const msg: number = obj.msg; - const msg_hu_conv: Shutdown = new Shutdown(null, msg); - msg_hu_conv.ptrs_to.add(this); - this.msg = msg_hu_conv; - } -} -export class SendChannelReestablish extends MessageSendEvent { - public node_id: Uint8Array; - public msg: ChannelReestablish; - private constructor(ptr: number, obj: bindings.LDKMessageSendEvent.SendChannelReestablish) { - super(null, ptr); - this.node_id = obj.node_id; - const msg: number = obj.msg; - const msg_hu_conv: ChannelReestablish = new ChannelReestablish(null, msg); - msg_hu_conv.ptrs_to.add(this); - this.msg = msg_hu_conv; - } -} -export class BroadcastChannelAnnouncement extends MessageSendEvent { - public msg: ChannelAnnouncement; - public update_msg: ChannelUpdate; - private constructor(ptr: number, obj: bindings.LDKMessageSendEvent.BroadcastChannelAnnouncement) { - super(null, ptr); - const msg: number = obj.msg; - const msg_hu_conv: ChannelAnnouncement = new ChannelAnnouncement(null, msg); - msg_hu_conv.ptrs_to.add(this); - this.msg = msg_hu_conv; - const update_msg: number = obj.update_msg; - const update_msg_hu_conv: ChannelUpdate = new ChannelUpdate(null, update_msg); - update_msg_hu_conv.ptrs_to.add(this); - this.update_msg = update_msg_hu_conv; - } -} -export class BroadcastNodeAnnouncement extends MessageSendEvent { - public msg: NodeAnnouncement; - private constructor(ptr: number, obj: bindings.LDKMessageSendEvent.BroadcastNodeAnnouncement) { - super(null, ptr); - const msg: number = obj.msg; - const msg_hu_conv: NodeAnnouncement = new NodeAnnouncement(null, msg); - msg_hu_conv.ptrs_to.add(this); - this.msg = msg_hu_conv; - } -} -export class BroadcastChannelUpdate extends MessageSendEvent { - public msg: ChannelUpdate; - private constructor(ptr: number, obj: bindings.LDKMessageSendEvent.BroadcastChannelUpdate) { - super(null, ptr); - const msg: number = obj.msg; - const msg_hu_conv: ChannelUpdate = new ChannelUpdate(null, msg); - msg_hu_conv.ptrs_to.add(this); - this.msg = msg_hu_conv; - } -} -export class SendChannelUpdate extends MessageSendEvent { - public node_id: Uint8Array; - public msg: ChannelUpdate; - private constructor(ptr: number, obj: bindings.LDKMessageSendEvent.SendChannelUpdate) { - super(null, ptr); - this.node_id = obj.node_id; - const msg: number = obj.msg; - const msg_hu_conv: ChannelUpdate = new ChannelUpdate(null, msg); - msg_hu_conv.ptrs_to.add(this); - this.msg = msg_hu_conv; - } -} -export class HandleError extends MessageSendEvent { - public node_id: Uint8Array; - public action: ErrorAction; - private constructor(ptr: number, obj: bindings.LDKMessageSendEvent.HandleError) { - super(null, ptr); - this.node_id = obj.node_id; - const action: number = obj.action; - ErrorAction action_hu_conv = ErrorAction.constr_from_ptr(action); - action_hu_conv.ptrs_to.add(this); - this.action = action_hu_conv; - } -} -export class SendChannelRangeQuery extends MessageSendEvent { - public node_id: Uint8Array; - public msg: QueryChannelRange; - private constructor(ptr: number, obj: bindings.LDKMessageSendEvent.SendChannelRangeQuery) { - super(null, ptr); - this.node_id = obj.node_id; - const msg: number = obj.msg; - const msg_hu_conv: QueryChannelRange = new QueryChannelRange(null, msg); - msg_hu_conv.ptrs_to.add(this); - this.msg = msg_hu_conv; - } -} -export class SendShortIdsQuery extends MessageSendEvent { - public node_id: Uint8Array; - public msg: QueryShortChannelIds; - private constructor(ptr: number, obj: bindings.LDKMessageSendEvent.SendShortIdsQuery) { - super(null, ptr); - this.node_id = obj.node_id; - const msg: number = obj.msg; - const msg_hu_conv: QueryShortChannelIds = new QueryShortChannelIds(null, msg); - msg_hu_conv.ptrs_to.add(this); - this.msg = msg_hu_conv; - } -} -export class SendReplyChannelRange extends MessageSendEvent { - public node_id: Uint8Array; - public msg: ReplyChannelRange; - private constructor(ptr: number, obj: bindings.LDKMessageSendEvent.SendReplyChannelRange) { - super(null, ptr); - this.node_id = obj.node_id; - const msg: number = obj.msg; - const msg_hu_conv: ReplyChannelRange = new ReplyChannelRange(null, msg); - msg_hu_conv.ptrs_to.add(this); - this.msg = msg_hu_conv; - } -} - public number clone_ptr() { - number ret = bindings.MessageSendEvent_clone_ptr(this.ptr); - return ret; - } - - public MessageSendEvent clone() { - number ret = bindings.MessageSendEvent_clone(this.ptr); - MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static MessageSendEvent constructor_send_accept_channel(Uint8Array node_id, AcceptChannel msg) { - number ret = bindings.MessageSendEvent_send_accept_channel(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1); - MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static MessageSendEvent constructor_send_open_channel(Uint8Array node_id, OpenChannel msg) { - number ret = bindings.MessageSendEvent_send_open_channel(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1); - MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static MessageSendEvent constructor_send_funding_created(Uint8Array node_id, FundingCreated msg) { - number ret = bindings.MessageSendEvent_send_funding_created(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1); - MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static MessageSendEvent constructor_send_funding_signed(Uint8Array node_id, FundingSigned msg) { - number ret = bindings.MessageSendEvent_send_funding_signed(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1); - MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static MessageSendEvent constructor_send_funding_locked(Uint8Array node_id, FundingLocked msg) { - number ret = bindings.MessageSendEvent_send_funding_locked(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1); - MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static MessageSendEvent constructor_send_announcement_signatures(Uint8Array node_id, AnnouncementSignatures msg) { - number ret = bindings.MessageSendEvent_send_announcement_signatures(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1); - MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static MessageSendEvent constructor_update_htlcs(Uint8Array node_id, CommitmentUpdate updates) { - number ret = bindings.MessageSendEvent_update_htlcs(InternalUtils.check_arr_len(node_id, 33), updates == null ? 0 : updates.ptr & ~1); - MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static MessageSendEvent constructor_send_revoke_and_ack(Uint8Array node_id, RevokeAndACK msg) { - number ret = bindings.MessageSendEvent_send_revoke_and_ack(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1); - MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static MessageSendEvent constructor_send_closing_signed(Uint8Array node_id, ClosingSigned msg) { - number ret = bindings.MessageSendEvent_send_closing_signed(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1); - MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static MessageSendEvent constructor_send_shutdown(Uint8Array node_id, Shutdown msg) { - number ret = bindings.MessageSendEvent_send_shutdown(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1); - MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static MessageSendEvent constructor_send_channel_reestablish(Uint8Array node_id, ChannelReestablish msg) { - number ret = bindings.MessageSendEvent_send_channel_reestablish(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1); - MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static MessageSendEvent constructor_broadcast_channel_announcement(ChannelAnnouncement msg, ChannelUpdate update_msg) { - number ret = bindings.MessageSendEvent_broadcast_channel_announcement(msg == null ? 0 : msg.ptr & ~1, update_msg == null ? 0 : update_msg.ptr & ~1); - MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static MessageSendEvent constructor_broadcast_node_announcement(NodeAnnouncement msg) { - number ret = bindings.MessageSendEvent_broadcast_node_announcement(msg == null ? 0 : msg.ptr & ~1); - MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static MessageSendEvent constructor_broadcast_channel_update(ChannelUpdate msg) { - number ret = bindings.MessageSendEvent_broadcast_channel_update(msg == null ? 0 : msg.ptr & ~1); - MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static MessageSendEvent constructor_send_channel_update(Uint8Array node_id, ChannelUpdate msg) { - number ret = bindings.MessageSendEvent_send_channel_update(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1); - MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static MessageSendEvent constructor_handle_error(Uint8Array node_id, ErrorAction action) { - number ret = bindings.MessageSendEvent_handle_error(InternalUtils.check_arr_len(node_id, 33), action.ptr); - MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static MessageSendEvent constructor_send_channel_range_query(Uint8Array node_id, QueryChannelRange msg) { - number ret = bindings.MessageSendEvent_send_channel_range_query(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1); - MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static MessageSendEvent constructor_send_short_ids_query(Uint8Array node_id, QueryShortChannelIds msg) { - number ret = bindings.MessageSendEvent_send_short_ids_query(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1); - MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static MessageSendEvent constructor_send_reply_channel_range(Uint8Array node_id, ReplyChannelRange msg) { - number ret = bindings.MessageSendEvent_send_reply_channel_range(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1); - MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - -} diff --git a/ts/structs/MessageSendEventsProvider.ts b/ts/structs/MessageSendEventsProvider.ts deleted file mode 100644 index d4cb29a3..00000000 --- a/ts/structs/MessageSendEventsProvider.ts +++ /dev/null @@ -1,67 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export class MessageSendEventsProvider extends CommonBase { - - bindings_instance?: bindings.LDKMessageSendEventsProvider; - - constructor(ptr?: number, arg?: bindings.LDKMessageSendEventsProvider) { - if (Number.isFinite(ptr)) { - super(ptr); - this.bindings_instance = null; - } else { - // TODO: private constructor instantiation - super(bindings.LDKMessageSendEventsProvider_new(arg)); - this.ptrs_to.push(arg); - - } - } - - protected finalize() { - if (this.ptr != 0) { - bindings.MessageSendEventsProvider_free(this.ptr); - } - super.finalize(); - } - - static new_impl(arg: MessageSendEventsProviderInterface): MessageSendEventsProvider { - const impl_holder: LDKMessageSendEventsProviderHolder = new LDKMessageSendEventsProviderHolder(); - let structImplementation = { - // todo: in-line interface filling - get_and_clear_pending_msg_events (): number[] { - MessageSendEvent[] ret = arg.get_and_clear_pending_msg_events(); - result: number[] = ret != null ? Arrays.stream(ret).map(ret_conv_18 -> ret_conv_18 == null ? 0 : ret_conv_18.clone_ptr()).toArray(number[]::new) : null; - return result; - }, - - - }; - impl_holder.held = new MessageSendEventsProvider (null, structImplementation); - } - } - - export interface MessageSendEventsProviderInterface { - get_and_clear_pending_msg_events(): MessageSendEvent[]; - - } - - class LDKMessageSendEventsProviderHolder { - held: MessageSendEventsProvider; - } - public MessageSendEvent[] get_and_clear_pending_msg_events() { - number[] ret = bindings.MessageSendEventsProvider_get_and_clear_pending_msg_events(this.ptr); - MessageSendEvent[] ret_conv_18_arr = new MessageSendEvent[ret.length]; - for (int s = 0; s < ret.length; s++) { - number ret_conv_18 = ret[s]; - MessageSendEvent ret_conv_18_hu_conv = MessageSendEvent.constr_from_ptr(ret_conv_18); - ret_conv_18_hu_conv.ptrs_to.add(this); - ret_conv_18_arr[s] = ret_conv_18_hu_conv; - } - return ret_conv_18_arr; - } - -} diff --git a/ts/structs/MinFinalCltvExpiry.ts b/ts/structs/MinFinalCltvExpiry.ts deleted file mode 100644 index 709b1788..00000000 --- a/ts/structs/MinFinalCltvExpiry.ts +++ /dev/null @@ -1,60 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class MinFinalCltvExpiry extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.MinFinalCltvExpiry_free(this.ptr); - } - } - public number get_a() { - number ret = bindings.MinFinalCltvExpiry_get_a(this.ptr); - return ret; - } - - public void set_a(number val) { - bindings.MinFinalCltvExpiry_set_a(this.ptr, val); - } - - public static MinFinalCltvExpiry constructor_new(number a_arg) { - number ret = bindings.MinFinalCltvExpiry_new(a_arg); - const ret_hu_conv: MinFinalCltvExpiry = new MinFinalCltvExpiry(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.MinFinalCltvExpiry_clone_ptr(this.ptr); - return ret; - } - - public MinFinalCltvExpiry clone() { - number ret = bindings.MinFinalCltvExpiry_clone(this.ptr); - const ret_hu_conv: MinFinalCltvExpiry = new MinFinalCltvExpiry(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public number hash() { - number ret = bindings.MinFinalCltvExpiry_hash(this.ptr); - return ret; - } - - public boolean eq(MinFinalCltvExpiry b) { - boolean ret = bindings.MinFinalCltvExpiry_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - this.ptrs_to.add(b); - return ret; - } - -} diff --git a/ts/structs/MonitorEvent.ts b/ts/structs/MonitorEvent.ts deleted file mode 100644 index 40899fe8..00000000 --- a/ts/structs/MonitorEvent.ts +++ /dev/null @@ -1,116 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class MonitorEvent extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.MonitorEvent_free(this.ptr); } - } - static constr_from_ptr(ptr: number): MonitorEvent { - const raw_val: bindings.LDKMonitorEvent = bindings.LDKMonitorEvent_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKMonitorEvent.HTLCEvent) { - return new HTLCEvent(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKMonitorEvent.CommitmentTxConfirmed) { - return new CommitmentTxConfirmed(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKMonitorEvent.UpdateCompleted) { - return new UpdateCompleted(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKMonitorEvent.UpdateFailed) { - return new UpdateFailed(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class HTLCEvent extends MonitorEvent { - public htlc_event: HTLCUpdate; - private constructor(ptr: number, obj: bindings.LDKMonitorEvent.HTLCEvent) { - super(null, ptr); - const htlc_event: number = obj.htlc_event; - const htlc_event_hu_conv: HTLCUpdate = new HTLCUpdate(null, htlc_event); - htlc_event_hu_conv.ptrs_to.add(this); - this.htlc_event = htlc_event_hu_conv; - } -} -export class CommitmentTxConfirmed extends MonitorEvent { - public commitment_tx_confirmed: OutPoint; - private constructor(ptr: number, obj: bindings.LDKMonitorEvent.CommitmentTxConfirmed) { - super(null, ptr); - const commitment_tx_confirmed: number = obj.commitment_tx_confirmed; - const commitment_tx_confirmed_hu_conv: OutPoint = new OutPoint(null, commitment_tx_confirmed); - commitment_tx_confirmed_hu_conv.ptrs_to.add(this); - this.commitment_tx_confirmed = commitment_tx_confirmed_hu_conv; - } -} -export class UpdateCompleted extends MonitorEvent { - public funding_txo: OutPoint; - public monitor_update_id: number; - private constructor(ptr: number, obj: bindings.LDKMonitorEvent.UpdateCompleted) { - super(null, ptr); - const funding_txo: number = obj.funding_txo; - const funding_txo_hu_conv: OutPoint = new OutPoint(null, funding_txo); - funding_txo_hu_conv.ptrs_to.add(this); - this.funding_txo = funding_txo_hu_conv; - this.monitor_update_id = obj.monitor_update_id; - } -} -export class UpdateFailed extends MonitorEvent { - public update_failed: OutPoint; - private constructor(ptr: number, obj: bindings.LDKMonitorEvent.UpdateFailed) { - super(null, ptr); - const update_failed: number = obj.update_failed; - const update_failed_hu_conv: OutPoint = new OutPoint(null, update_failed); - update_failed_hu_conv.ptrs_to.add(this); - this.update_failed = update_failed_hu_conv; - } -} - public number clone_ptr() { - number ret = bindings.MonitorEvent_clone_ptr(this.ptr); - return ret; - } - - public MonitorEvent clone() { - number ret = bindings.MonitorEvent_clone(this.ptr); - MonitorEvent ret_hu_conv = MonitorEvent.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static MonitorEvent constructor_htlcevent(HTLCUpdate a) { - number ret = bindings.MonitorEvent_htlcevent(a == null ? 0 : a.ptr & ~1); - MonitorEvent ret_hu_conv = MonitorEvent.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static MonitorEvent constructor_commitment_tx_confirmed(OutPoint a) { - number ret = bindings.MonitorEvent_commitment_tx_confirmed(a == null ? 0 : a.ptr & ~1); - MonitorEvent ret_hu_conv = MonitorEvent.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static MonitorEvent constructor_update_completed(OutPoint funding_txo, number monitor_update_id) { - number ret = bindings.MonitorEvent_update_completed(funding_txo == null ? 0 : funding_txo.ptr & ~1, monitor_update_id); - MonitorEvent ret_hu_conv = MonitorEvent.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static MonitorEvent constructor_update_failed(OutPoint a) { - number ret = bindings.MonitorEvent_update_failed(a == null ? 0 : a.ptr & ~1); - MonitorEvent ret_hu_conv = MonitorEvent.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.MonitorEvent_write(this.ptr); - return ret; - } - -} diff --git a/ts/structs/MonitorUpdateId.ts b/ts/structs/MonitorUpdateId.ts deleted file mode 100644 index d9e6d3e5..00000000 --- a/ts/structs/MonitorUpdateId.ts +++ /dev/null @@ -1,44 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class MonitorUpdateId extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.MonitorUpdateId_free(this.ptr); - } - } - public number clone_ptr() { - number ret = bindings.MonitorUpdateId_clone_ptr(this.ptr); - return ret; - } - - public MonitorUpdateId clone() { - number ret = bindings.MonitorUpdateId_clone(this.ptr); - const ret_hu_conv: MonitorUpdateId = new MonitorUpdateId(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public number hash() { - number ret = bindings.MonitorUpdateId_hash(this.ptr); - return ret; - } - - public boolean eq(MonitorUpdateId b) { - boolean ret = bindings.MonitorUpdateId_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - this.ptrs_to.add(b); - return ret; - } - -} diff --git a/ts/structs/MultiThreadedLockableScore.ts b/ts/structs/MultiThreadedLockableScore.ts deleted file mode 100644 index 07ea9992..00000000 --- a/ts/structs/MultiThreadedLockableScore.ts +++ /dev/null @@ -1,29 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class MultiThreadedLockableScore extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.MultiThreadedLockableScore_free(this.ptr); - } - } - public static MultiThreadedLockableScore constructor_new(Score score) { - number ret = bindings.MultiThreadedLockableScore_new(score == null ? 0 : score.ptr); - const ret_hu_conv: MultiThreadedLockableScore = new MultiThreadedLockableScore(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - ret_hu_conv.ptrs_to.add(score); - return ret_hu_conv; - } - -} diff --git a/ts/structs/NetAddress.ts b/ts/structs/NetAddress.ts deleted file mode 100644 index d80b5189..00000000 --- a/ts/structs/NetAddress.ts +++ /dev/null @@ -1,118 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class NetAddress extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.NetAddress_free(this.ptr); } - } - static constr_from_ptr(ptr: number): NetAddress { - const raw_val: bindings.LDKNetAddress = bindings.LDKNetAddress_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKNetAddress.IPv4) { - return new IPv4(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKNetAddress.IPv6) { - return new IPv6(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKNetAddress.OnionV2) { - return new OnionV2(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKNetAddress.OnionV3) { - return new OnionV3(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class IPv4 extends NetAddress { - public addr: Uint8Array; - public port: number; - private constructor(ptr: number, obj: bindings.LDKNetAddress.IPv4) { - super(null, ptr); - this.addr = obj.addr; - this.port = obj.port; - } -} -export class IPv6 extends NetAddress { - public addr: Uint8Array; - public port: number; - private constructor(ptr: number, obj: bindings.LDKNetAddress.IPv6) { - super(null, ptr); - this.addr = obj.addr; - this.port = obj.port; - } -} -export class OnionV2 extends NetAddress { - public onion_v2: Uint8Array; - private constructor(ptr: number, obj: bindings.LDKNetAddress.OnionV2) { - super(null, ptr); - this.onion_v2 = obj.onion_v2; - } -} -export class OnionV3 extends NetAddress { - public ed25519_pubkey: Uint8Array; - public checksum: number; - public version: number; - public port: number; - private constructor(ptr: number, obj: bindings.LDKNetAddress.OnionV3) { - super(null, ptr); - this.ed25519_pubkey = obj.ed25519_pubkey; - this.checksum = obj.checksum; - this.version = obj.version; - this.port = obj.port; - } -} - public number clone_ptr() { - number ret = bindings.NetAddress_clone_ptr(this.ptr); - return ret; - } - - public NetAddress clone() { - number ret = bindings.NetAddress_clone(this.ptr); - NetAddress ret_hu_conv = NetAddress.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static NetAddress constructor_ipv4(Uint8Array addr, number port) { - number ret = bindings.NetAddress_ipv4(InternalUtils.check_arr_len(addr, 4), port); - NetAddress ret_hu_conv = NetAddress.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static NetAddress constructor_ipv6(Uint8Array addr, number port) { - number ret = bindings.NetAddress_ipv6(InternalUtils.check_arr_len(addr, 16), port); - NetAddress ret_hu_conv = NetAddress.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static NetAddress constructor_onion_v2(Uint8Array a) { - number ret = bindings.NetAddress_onion_v2(InternalUtils.check_arr_len(a, 12)); - NetAddress ret_hu_conv = NetAddress.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static NetAddress constructor_onion_v3(Uint8Array ed25519_pubkey, number checksum, number version, number port) { - number ret = bindings.NetAddress_onion_v3(InternalUtils.check_arr_len(ed25519_pubkey, 32), checksum, version, port); - NetAddress ret_hu_conv = NetAddress.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.NetAddress_write(this.ptr); - return ret; - } - - public static Result_NetAddressDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.NetAddress_read(ser); - Result_NetAddressDecodeErrorZ ret_hu_conv = Result_NetAddressDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/NetGraphMsgHandler.ts b/ts/structs/NetGraphMsgHandler.ts deleted file mode 100644 index ee9659a8..00000000 --- a/ts/structs/NetGraphMsgHandler.ts +++ /dev/null @@ -1,57 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class NetGraphMsgHandler extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.NetGraphMsgHandler_free(this.ptr); - } - } - public EventHandler as_EventHandler() { - number ret = bindings.NetGraphMsgHandler_as_EventHandler(this.ptr); - EventHandler ret_hu_conv = new EventHandler(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static NetGraphMsgHandler constructor_new(NetworkGraph network_graph, Option_AccessZ chain_access, Logger logger) { - number ret = bindings.NetGraphMsgHandler_new(network_graph == null ? 0 : network_graph.ptr & ~1, chain_access.ptr, logger == null ? 0 : logger.ptr); - const ret_hu_conv: NetGraphMsgHandler = new NetGraphMsgHandler(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - ret_hu_conv.ptrs_to.add(network_graph); - ret_hu_conv.ptrs_to.add(chain_access); - ret_hu_conv.ptrs_to.add(logger); - return ret_hu_conv; - } - - public void add_chain_access(Option_AccessZ chain_access) { - bindings.NetGraphMsgHandler_add_chain_access(this.ptr, chain_access.ptr); - this.ptrs_to.add(chain_access); - } - - public RoutingMessageHandler as_RoutingMessageHandler() { - number ret = bindings.NetGraphMsgHandler_as_RoutingMessageHandler(this.ptr); - RoutingMessageHandler ret_hu_conv = new RoutingMessageHandler(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public MessageSendEventsProvider as_MessageSendEventsProvider() { - number ret = bindings.NetGraphMsgHandler_as_MessageSendEventsProvider(this.ptr); - MessageSendEventsProvider ret_hu_conv = new MessageSendEventsProvider(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/NetworkGraph.ts b/ts/structs/NetworkGraph.ts deleted file mode 100644 index 4f33d5f8..00000000 --- a/ts/structs/NetworkGraph.ts +++ /dev/null @@ -1,114 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class NetworkGraph extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.NetworkGraph_free(this.ptr); - } - } - public number clone_ptr() { - number ret = bindings.NetworkGraph_clone_ptr(this.ptr); - return ret; - } - - public NetworkGraph clone() { - number ret = bindings.NetworkGraph_clone(this.ptr); - const ret_hu_conv: NetworkGraph = new NetworkGraph(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.NetworkGraph_write(this.ptr); - return ret; - } - - public static Result_NetworkGraphDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.NetworkGraph_read(ser); - Result_NetworkGraphDecodeErrorZ ret_hu_conv = Result_NetworkGraphDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static NetworkGraph constructor_new(Uint8Array genesis_hash) { - number ret = bindings.NetworkGraph_new(InternalUtils.check_arr_len(genesis_hash, 32)); - const ret_hu_conv: NetworkGraph = new NetworkGraph(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public ReadOnlyNetworkGraph read_only() { - number ret = bindings.NetworkGraph_read_only(this.ptr); - const ret_hu_conv: ReadOnlyNetworkGraph = new ReadOnlyNetworkGraph(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Result_NoneLightningErrorZ update_node_from_announcement(NodeAnnouncement msg) { - number ret = bindings.NetworkGraph_update_node_from_announcement(this.ptr, msg == null ? 0 : msg.ptr & ~1); - Result_NoneLightningErrorZ ret_hu_conv = Result_NoneLightningErrorZ.constr_from_ptr(ret); - this.ptrs_to.add(msg); - return ret_hu_conv; - } - - public Result_NoneLightningErrorZ update_node_from_unsigned_announcement(UnsignedNodeAnnouncement msg) { - number ret = bindings.NetworkGraph_update_node_from_unsigned_announcement(this.ptr, msg == null ? 0 : msg.ptr & ~1); - Result_NoneLightningErrorZ ret_hu_conv = Result_NoneLightningErrorZ.constr_from_ptr(ret); - this.ptrs_to.add(msg); - return ret_hu_conv; - } - - public Result_NoneLightningErrorZ update_channel_from_announcement(ChannelAnnouncement msg, Option_AccessZ chain_access) { - number ret = bindings.NetworkGraph_update_channel_from_announcement(this.ptr, msg == null ? 0 : msg.ptr & ~1, chain_access.ptr); - Result_NoneLightningErrorZ ret_hu_conv = Result_NoneLightningErrorZ.constr_from_ptr(ret); - this.ptrs_to.add(msg); - this.ptrs_to.add(chain_access); - return ret_hu_conv; - } - - public Result_NoneLightningErrorZ update_channel_from_unsigned_announcement(UnsignedChannelAnnouncement msg, Option_AccessZ chain_access) { - number ret = bindings.NetworkGraph_update_channel_from_unsigned_announcement(this.ptr, msg == null ? 0 : msg.ptr & ~1, chain_access.ptr); - Result_NoneLightningErrorZ ret_hu_conv = Result_NoneLightningErrorZ.constr_from_ptr(ret); - this.ptrs_to.add(msg); - this.ptrs_to.add(chain_access); - return ret_hu_conv; - } - - public void close_channel_from_update(number short_channel_id, boolean is_permanent) { - bindings.NetworkGraph_close_channel_from_update(this.ptr, short_channel_id, is_permanent); - } - - public void fail_node(Uint8Array _node_id, boolean is_permanent) { - bindings.NetworkGraph_fail_node(this.ptr, InternalUtils.check_arr_len(_node_id, 33), is_permanent); - } - - public void remove_stale_channels_with_time(number current_time_unix) { - bindings.NetworkGraph_remove_stale_channels_with_time(this.ptr, current_time_unix); - } - - public Result_NoneLightningErrorZ update_channel(ChannelUpdate msg) { - number ret = bindings.NetworkGraph_update_channel(this.ptr, msg == null ? 0 : msg.ptr & ~1); - Result_NoneLightningErrorZ ret_hu_conv = Result_NoneLightningErrorZ.constr_from_ptr(ret); - this.ptrs_to.add(msg); - return ret_hu_conv; - } - - public Result_NoneLightningErrorZ update_channel_unsigned(UnsignedChannelUpdate msg) { - number ret = bindings.NetworkGraph_update_channel_unsigned(this.ptr, msg == null ? 0 : msg.ptr & ~1); - Result_NoneLightningErrorZ ret_hu_conv = Result_NoneLightningErrorZ.constr_from_ptr(ret); - this.ptrs_to.add(msg); - return ret_hu_conv; - } - -} diff --git a/ts/structs/NetworkUpdate.ts b/ts/structs/NetworkUpdate.ts deleted file mode 100644 index 758e2225..00000000 --- a/ts/structs/NetworkUpdate.ts +++ /dev/null @@ -1,92 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class NetworkUpdate extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.NetworkUpdate_free(this.ptr); } - } - static constr_from_ptr(ptr: number): NetworkUpdate { - const raw_val: bindings.LDKNetworkUpdate = bindings.LDKNetworkUpdate_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKNetworkUpdate.ChannelUpdateMessage) { - return new ChannelUpdateMessage(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKNetworkUpdate.ChannelClosed) { - return new ChannelClosed(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKNetworkUpdate.NodeFailure) { - return new NodeFailure(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class ChannelUpdateMessage extends NetworkUpdate { - public msg: ChannelUpdate; - private constructor(ptr: number, obj: bindings.LDKNetworkUpdate.ChannelUpdateMessage) { - super(null, ptr); - const msg: number = obj.msg; - const msg_hu_conv: ChannelUpdate = new ChannelUpdate(null, msg); - msg_hu_conv.ptrs_to.add(this); - this.msg = msg_hu_conv; - } -} -export class ChannelClosed extends NetworkUpdate { - public short_channel_id: number; - public is_permanent: boolean; - private constructor(ptr: number, obj: bindings.LDKNetworkUpdate.ChannelClosed) { - super(null, ptr); - this.short_channel_id = obj.short_channel_id; - this.is_permanent = obj.is_permanent; - } -} -export class NodeFailure extends NetworkUpdate { - public node_id: Uint8Array; - public is_permanent: boolean; - private constructor(ptr: number, obj: bindings.LDKNetworkUpdate.NodeFailure) { - super(null, ptr); - this.node_id = obj.node_id; - this.is_permanent = obj.is_permanent; - } -} - public number clone_ptr() { - number ret = bindings.NetworkUpdate_clone_ptr(this.ptr); - return ret; - } - - public NetworkUpdate clone() { - number ret = bindings.NetworkUpdate_clone(this.ptr); - NetworkUpdate ret_hu_conv = NetworkUpdate.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static NetworkUpdate constructor_channel_update_message(ChannelUpdate msg) { - number ret = bindings.NetworkUpdate_channel_update_message(msg == null ? 0 : msg.ptr & ~1); - NetworkUpdate ret_hu_conv = NetworkUpdate.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static NetworkUpdate constructor_channel_closed(number short_channel_id, boolean is_permanent) { - number ret = bindings.NetworkUpdate_channel_closed(short_channel_id, is_permanent); - NetworkUpdate ret_hu_conv = NetworkUpdate.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static NetworkUpdate constructor_node_failure(Uint8Array node_id, boolean is_permanent) { - number ret = bindings.NetworkUpdate_node_failure(InternalUtils.check_arr_len(node_id, 33), is_permanent); - NetworkUpdate ret_hu_conv = NetworkUpdate.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.NetworkUpdate_write(this.ptr); - return ret; - } - -} diff --git a/ts/structs/NodeAnnouncement.ts b/ts/structs/NodeAnnouncement.ts deleted file mode 100644 index e3087cd1..00000000 --- a/ts/structs/NodeAnnouncement.ts +++ /dev/null @@ -1,71 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class NodeAnnouncement extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.NodeAnnouncement_free(this.ptr); - } - } - public Uint8Array get_signature() { - Uint8Array ret = bindings.NodeAnnouncement_get_signature(this.ptr); - return ret; - } - - public void set_signature(Uint8Array val) { - bindings.NodeAnnouncement_set_signature(this.ptr, InternalUtils.check_arr_len(val, 64)); - } - - public UnsignedNodeAnnouncement get_contents() { - number ret = bindings.NodeAnnouncement_get_contents(this.ptr); - const ret_hu_conv: UnsignedNodeAnnouncement = new UnsignedNodeAnnouncement(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_contents(UnsignedNodeAnnouncement val) { - bindings.NodeAnnouncement_set_contents(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public static NodeAnnouncement constructor_new(Uint8Array signature_arg, UnsignedNodeAnnouncement contents_arg) { - number ret = bindings.NodeAnnouncement_new(InternalUtils.check_arr_len(signature_arg, 64), contents_arg == null ? 0 : contents_arg.ptr & ~1); - const ret_hu_conv: NodeAnnouncement = new NodeAnnouncement(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.NodeAnnouncement_clone_ptr(this.ptr); - return ret; - } - - public NodeAnnouncement clone() { - number ret = bindings.NodeAnnouncement_clone(this.ptr); - const ret_hu_conv: NodeAnnouncement = new NodeAnnouncement(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.NodeAnnouncement_write(this.ptr); - return ret; - } - - public static Result_NodeAnnouncementDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.NodeAnnouncement_read(ser); - Result_NodeAnnouncementDecodeErrorZ ret_hu_conv = Result_NodeAnnouncementDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/NodeAnnouncementInfo.ts b/ts/structs/NodeAnnouncementInfo.ts deleted file mode 100644 index a5cd2286..00000000 --- a/ts/structs/NodeAnnouncementInfo.ts +++ /dev/null @@ -1,104 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class NodeAnnouncementInfo extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.NodeAnnouncementInfo_free(this.ptr); - } - } - public NodeFeatures get_features() { - number ret = bindings.NodeAnnouncementInfo_get_features(this.ptr); - const ret_hu_conv: NodeFeatures = new NodeFeatures(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_features(NodeFeatures val) { - bindings.NodeAnnouncementInfo_set_features(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public number get_last_update() { - number ret = bindings.NodeAnnouncementInfo_get_last_update(this.ptr); - return ret; - } - - public void set_last_update(number val) { - bindings.NodeAnnouncementInfo_set_last_update(this.ptr, val); - } - - public Uint8Array get_rgb() { - Uint8Array ret = bindings.NodeAnnouncementInfo_get_rgb(this.ptr); - return ret; - } - - public void set_rgb(Uint8Array val) { - bindings.NodeAnnouncementInfo_set_rgb(this.ptr, InternalUtils.check_arr_len(val, 3)); - } - - public Uint8Array get_alias() { - Uint8Array ret = bindings.NodeAnnouncementInfo_get_alias(this.ptr); - return ret; - } - - public void set_alias(Uint8Array val) { - bindings.NodeAnnouncementInfo_set_alias(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public void set_addresses(NetAddress[] val) { - bindings.NodeAnnouncementInfo_set_addresses(this.ptr, val != null ? Arrays.stream(val).map(val_conv_12 -> val_conv_12.ptr).toArray(number[]::new) : null); - } - - public NodeAnnouncement get_announcement_message() { - number ret = bindings.NodeAnnouncementInfo_get_announcement_message(this.ptr); - const ret_hu_conv: NodeAnnouncement = new NodeAnnouncement(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_announcement_message(NodeAnnouncement val) { - bindings.NodeAnnouncementInfo_set_announcement_message(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public static NodeAnnouncementInfo constructor_new(NodeFeatures features_arg, number last_update_arg, Uint8Array rgb_arg, Uint8Array alias_arg, NetAddress[] addresses_arg, NodeAnnouncement announcement_message_arg) { - number ret = bindings.NodeAnnouncementInfo_new(features_arg == null ? 0 : features_arg.ptr & ~1, last_update_arg, InternalUtils.check_arr_len(rgb_arg, 3), InternalUtils.check_arr_len(alias_arg, 32), addresses_arg != null ? Arrays.stream(addresses_arg).map(addresses_arg_conv_12 -> addresses_arg_conv_12.ptr).toArray(number[]::new) : null, announcement_message_arg == null ? 0 : announcement_message_arg.ptr & ~1); - const ret_hu_conv: NodeAnnouncementInfo = new NodeAnnouncementInfo(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.NodeAnnouncementInfo_clone_ptr(this.ptr); - return ret; - } - - public NodeAnnouncementInfo clone() { - number ret = bindings.NodeAnnouncementInfo_clone(this.ptr); - const ret_hu_conv: NodeAnnouncementInfo = new NodeAnnouncementInfo(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.NodeAnnouncementInfo_write(this.ptr); - return ret; - } - - public static Result_NodeAnnouncementInfoDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.NodeAnnouncementInfo_read(ser); - Result_NodeAnnouncementInfoDecodeErrorZ ret_hu_conv = Result_NodeAnnouncementInfoDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/NodeFeatures.ts b/ts/structs/NodeFeatures.ts deleted file mode 100644 index f9a4c13a..00000000 --- a/ts/structs/NodeFeatures.ts +++ /dev/null @@ -1,69 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class NodeFeatures extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.NodeFeatures_free(this.ptr); - } - } - public boolean eq(NodeFeatures b) { - boolean ret = bindings.NodeFeatures_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - this.ptrs_to.add(b); - return ret; - } - - public number clone_ptr() { - number ret = bindings.NodeFeatures_clone_ptr(this.ptr); - return ret; - } - - public NodeFeatures clone() { - number ret = bindings.NodeFeatures_clone(this.ptr); - const ret_hu_conv: NodeFeatures = new NodeFeatures(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static NodeFeatures constructor_empty() { - number ret = bindings.NodeFeatures_empty(); - const ret_hu_conv: NodeFeatures = new NodeFeatures(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static NodeFeatures constructor_known() { - number ret = bindings.NodeFeatures_known(); - const ret_hu_conv: NodeFeatures = new NodeFeatures(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public boolean requires_unknown_bits() { - boolean ret = bindings.NodeFeatures_requires_unknown_bits(this.ptr); - return ret; - } - - public Uint8Array write() { - Uint8Array ret = bindings.NodeFeatures_write(this.ptr); - return ret; - } - - public static Result_NodeFeaturesDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.NodeFeatures_read(ser); - Result_NodeFeaturesDecodeErrorZ ret_hu_conv = Result_NodeFeaturesDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/NodeId.ts b/ts/structs/NodeId.ts deleted file mode 100644 index 9f288e0a..00000000 --- a/ts/structs/NodeId.ts +++ /dev/null @@ -1,61 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class NodeId extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.NodeId_free(this.ptr); - } - } - public number clone_ptr() { - number ret = bindings.NodeId_clone_ptr(this.ptr); - return ret; - } - - public NodeId clone() { - number ret = bindings.NodeId_clone(this.ptr); - const ret_hu_conv: NodeId = new NodeId(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static NodeId constructor_from_pubkey(Uint8Array pubkey) { - number ret = bindings.NodeId_from_pubkey(InternalUtils.check_arr_len(pubkey, 33)); - const ret_hu_conv: NodeId = new NodeId(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public Uint8Array as_slice() { - Uint8Array ret = bindings.NodeId_as_slice(this.ptr); - return ret; - } - - public number hash() { - number ret = bindings.NodeId_hash(this.ptr); - return ret; - } - - public Uint8Array write() { - Uint8Array ret = bindings.NodeId_write(this.ptr); - return ret; - } - - public static Result_NodeIdDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.NodeId_read(ser); - Result_NodeIdDecodeErrorZ ret_hu_conv = Result_NodeIdDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/NodeInfo.ts b/ts/structs/NodeInfo.ts deleted file mode 100644 index da17e063..00000000 --- a/ts/structs/NodeInfo.ts +++ /dev/null @@ -1,77 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class NodeInfo extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.NodeInfo_free(this.ptr); - } - } - public void set_channels(number[] val) { - bindings.NodeInfo_set_channels(this.ptr, val); - } - - public RoutingFees get_lowest_inbound_channel_fees() { - number ret = bindings.NodeInfo_get_lowest_inbound_channel_fees(this.ptr); - const ret_hu_conv: RoutingFees = new RoutingFees(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_lowest_inbound_channel_fees(RoutingFees val) { - bindings.NodeInfo_set_lowest_inbound_channel_fees(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public NodeAnnouncementInfo get_announcement_info() { - number ret = bindings.NodeInfo_get_announcement_info(this.ptr); - const ret_hu_conv: NodeAnnouncementInfo = new NodeAnnouncementInfo(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_announcement_info(NodeAnnouncementInfo val) { - bindings.NodeInfo_set_announcement_info(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public static NodeInfo constructor_new(number[] channels_arg, RoutingFees lowest_inbound_channel_fees_arg, NodeAnnouncementInfo announcement_info_arg) { - number ret = bindings.NodeInfo_new(channels_arg, lowest_inbound_channel_fees_arg == null ? 0 : lowest_inbound_channel_fees_arg.ptr & ~1, announcement_info_arg == null ? 0 : announcement_info_arg.ptr & ~1); - const ret_hu_conv: NodeInfo = new NodeInfo(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.NodeInfo_clone_ptr(this.ptr); - return ret; - } - - public NodeInfo clone() { - number ret = bindings.NodeInfo_clone(this.ptr); - const ret_hu_conv: NodeInfo = new NodeInfo(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.NodeInfo_write(this.ptr); - return ret; - } - - public static Result_NodeInfoDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.NodeInfo_read(ser); - Result_NodeInfoDecodeErrorZ ret_hu_conv = Result_NodeInfoDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/OpenChannel.ts b/ts/structs/OpenChannel.ts deleted file mode 100644 index 8088f78d..00000000 --- a/ts/structs/OpenChannel.ts +++ /dev/null @@ -1,217 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class OpenChannel extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.OpenChannel_free(this.ptr); - } - } - public Uint8Array get_chain_hash() { - Uint8Array ret = bindings.OpenChannel_get_chain_hash(this.ptr); - return ret; - } - - public void set_chain_hash(Uint8Array val) { - bindings.OpenChannel_set_chain_hash(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public Uint8Array get_temporary_channel_id() { - Uint8Array ret = bindings.OpenChannel_get_temporary_channel_id(this.ptr); - return ret; - } - - public void set_temporary_channel_id(Uint8Array val) { - bindings.OpenChannel_set_temporary_channel_id(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public number get_funding_satoshis() { - number ret = bindings.OpenChannel_get_funding_satoshis(this.ptr); - return ret; - } - - public void set_funding_satoshis(number val) { - bindings.OpenChannel_set_funding_satoshis(this.ptr, val); - } - - public number get_push_msat() { - number ret = bindings.OpenChannel_get_push_msat(this.ptr); - return ret; - } - - public void set_push_msat(number val) { - bindings.OpenChannel_set_push_msat(this.ptr, val); - } - - public number get_dust_limit_satoshis() { - number ret = bindings.OpenChannel_get_dust_limit_satoshis(this.ptr); - return ret; - } - - public void set_dust_limit_satoshis(number val) { - bindings.OpenChannel_set_dust_limit_satoshis(this.ptr, val); - } - - public number get_max_htlc_value_in_flight_msat() { - number ret = bindings.OpenChannel_get_max_htlc_value_in_flight_msat(this.ptr); - return ret; - } - - public void set_max_htlc_value_in_flight_msat(number val) { - bindings.OpenChannel_set_max_htlc_value_in_flight_msat(this.ptr, val); - } - - public number get_channel_reserve_satoshis() { - number ret = bindings.OpenChannel_get_channel_reserve_satoshis(this.ptr); - return ret; - } - - public void set_channel_reserve_satoshis(number val) { - bindings.OpenChannel_set_channel_reserve_satoshis(this.ptr, val); - } - - public number get_htlc_minimum_msat() { - number ret = bindings.OpenChannel_get_htlc_minimum_msat(this.ptr); - return ret; - } - - public void set_htlc_minimum_msat(number val) { - bindings.OpenChannel_set_htlc_minimum_msat(this.ptr, val); - } - - public number get_feerate_per_kw() { - number ret = bindings.OpenChannel_get_feerate_per_kw(this.ptr); - return ret; - } - - public void set_feerate_per_kw(number val) { - bindings.OpenChannel_set_feerate_per_kw(this.ptr, val); - } - - public number get_to_self_delay() { - number ret = bindings.OpenChannel_get_to_self_delay(this.ptr); - return ret; - } - - public void set_to_self_delay(number val) { - bindings.OpenChannel_set_to_self_delay(this.ptr, val); - } - - public number get_max_accepted_htlcs() { - number ret = bindings.OpenChannel_get_max_accepted_htlcs(this.ptr); - return ret; - } - - public void set_max_accepted_htlcs(number val) { - bindings.OpenChannel_set_max_accepted_htlcs(this.ptr, val); - } - - public Uint8Array get_funding_pubkey() { - Uint8Array ret = bindings.OpenChannel_get_funding_pubkey(this.ptr); - return ret; - } - - public void set_funding_pubkey(Uint8Array val) { - bindings.OpenChannel_set_funding_pubkey(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public Uint8Array get_revocation_basepoint() { - Uint8Array ret = bindings.OpenChannel_get_revocation_basepoint(this.ptr); - return ret; - } - - public void set_revocation_basepoint(Uint8Array val) { - bindings.OpenChannel_set_revocation_basepoint(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public Uint8Array get_payment_point() { - Uint8Array ret = bindings.OpenChannel_get_payment_point(this.ptr); - return ret; - } - - public void set_payment_point(Uint8Array val) { - bindings.OpenChannel_set_payment_point(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public Uint8Array get_delayed_payment_basepoint() { - Uint8Array ret = bindings.OpenChannel_get_delayed_payment_basepoint(this.ptr); - return ret; - } - - public void set_delayed_payment_basepoint(Uint8Array val) { - bindings.OpenChannel_set_delayed_payment_basepoint(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public Uint8Array get_htlc_basepoint() { - Uint8Array ret = bindings.OpenChannel_get_htlc_basepoint(this.ptr); - return ret; - } - - public void set_htlc_basepoint(Uint8Array val) { - bindings.OpenChannel_set_htlc_basepoint(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public Uint8Array get_first_per_commitment_point() { - Uint8Array ret = bindings.OpenChannel_get_first_per_commitment_point(this.ptr); - return ret; - } - - public void set_first_per_commitment_point(Uint8Array val) { - bindings.OpenChannel_set_first_per_commitment_point(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public number get_channel_flags() { - number ret = bindings.OpenChannel_get_channel_flags(this.ptr); - return ret; - } - - public void set_channel_flags(number val) { - bindings.OpenChannel_set_channel_flags(this.ptr, val); - } - - public ChannelTypeFeatures get_channel_type() { - number ret = bindings.OpenChannel_get_channel_type(this.ptr); - const ret_hu_conv: ChannelTypeFeatures = new ChannelTypeFeatures(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_channel_type(ChannelTypeFeatures val) { - bindings.OpenChannel_set_channel_type(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public number clone_ptr() { - number ret = bindings.OpenChannel_clone_ptr(this.ptr); - return ret; - } - - public OpenChannel clone() { - number ret = bindings.OpenChannel_clone(this.ptr); - const ret_hu_conv: OpenChannel = new OpenChannel(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.OpenChannel_write(this.ptr); - return ret; - } - - public static Result_OpenChannelDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.OpenChannel_read(ser); - Result_OpenChannelDecodeErrorZ ret_hu_conv = Result_OpenChannelDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Option_AccessZ.ts b/ts/structs/Option_AccessZ.ts deleted file mode 100644 index 4823565e..00000000 --- a/ts/structs/Option_AccessZ.ts +++ /dev/null @@ -1,53 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class COption_AccessZ extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.COption_AccessZ_free(this.ptr); } - } - static constr_from_ptr(ptr: number): COption_AccessZ { - const raw_val: bindings.LDKCOption_AccessZ = bindings.LDKCOption_AccessZ_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKCOption_AccessZ.Some) { - return new Some(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKCOption_AccessZ.None) { - return new None(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class Some extends COption_AccessZ { - public some: Access; - private constructor(ptr: number, obj: bindings.LDKCOption_AccessZ.Some) { - super(null, ptr); - const some: number = obj.some; - Access ret_hu_conv = new Access(null, some); - ret_hu_conv.ptrs_to.add(this); - this.some = ret_hu_conv; - } -} -export class None extends COption_AccessZ { - private constructor(ptr: number, obj: bindings.LDKCOption_AccessZ.None) { - super(null, ptr); - } -} - public static Option_AccessZ constructor_some(Access o) { - number ret = bindings.COption_AccessZ_some(o == null ? 0 : o.ptr); - Option_AccessZ ret_hu_conv = Option_AccessZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - ret_hu_conv.ptrs_to.add(o); - return ret_hu_conv; - } - - public static Option_AccessZ constructor_none() { - number ret = bindings.COption_AccessZ_none(); - Option_AccessZ ret_hu_conv = Option_AccessZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Option_C2Tuple_usizeTransactionZZ.ts b/ts/structs/Option_C2Tuple_usizeTransactionZZ.ts deleted file mode 100644 index a3cb7413..00000000 --- a/ts/structs/Option_C2Tuple_usizeTransactionZZ.ts +++ /dev/null @@ -1,64 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class COption_C2Tuple_usizeTransactionZZ extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.COption_C2Tuple_usizeTransactionZZ_free(this.ptr); } - } - static constr_from_ptr(ptr: number): COption_C2Tuple_usizeTransactionZZ { - const raw_val: bindings.LDKCOption_C2Tuple_usizeTransactionZZ = bindings.LDKCOption_C2Tuple_usizeTransactionZZ_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKCOption_C2Tuple_usizeTransactionZZ.Some) { - return new Some(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKCOption_C2Tuple_usizeTransactionZZ.None) { - return new None(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class Some extends COption_C2Tuple_usizeTransactionZZ { - public some: TwoTuple_usizeTransactionZ; - private constructor(ptr: number, obj: bindings.LDKCOption_C2Tuple_usizeTransactionZZ.Some) { - super(null, ptr); - const some: number = obj.some; - TwoTuple_usizeTransactionZ some_hu_conv = new TwoTuple_usizeTransactionZ(null, some); - some_hu_conv.ptrs_to.add(this); - this.some = some_hu_conv; - } -} -export class None extends COption_C2Tuple_usizeTransactionZZ { - private constructor(ptr: number, obj: bindings.LDKCOption_C2Tuple_usizeTransactionZZ.None) { - super(null, ptr); - } -} - public static Option_C2Tuple_usizeTransactionZZ constructor_some(TwoTuple_usizeTransactionZ o) { - number ret = bindings.COption_C2Tuple_usizeTransactionZZ_some(o != null ? o.ptr : 0); - Option_C2Tuple_usizeTransactionZZ ret_hu_conv = Option_C2Tuple_usizeTransactionZZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Option_C2Tuple_usizeTransactionZZ constructor_none() { - number ret = bindings.COption_C2Tuple_usizeTransactionZZ_none(); - Option_C2Tuple_usizeTransactionZZ ret_hu_conv = Option_C2Tuple_usizeTransactionZZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.COption_C2Tuple_usizeTransactionZZ_clone_ptr(this.ptr); - return ret; - } - - public Option_C2Tuple_usizeTransactionZZ clone() { - number ret = bindings.COption_C2Tuple_usizeTransactionZZ_clone(this.ptr); - Option_C2Tuple_usizeTransactionZZ ret_hu_conv = Option_C2Tuple_usizeTransactionZZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Option_CVec_NetAddressZZ.ts b/ts/structs/Option_CVec_NetAddressZZ.ts deleted file mode 100644 index 9cbac12c..00000000 --- a/ts/structs/Option_CVec_NetAddressZZ.ts +++ /dev/null @@ -1,69 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class COption_CVec_NetAddressZZ extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.COption_CVec_NetAddressZZ_free(this.ptr); } - } - static constr_from_ptr(ptr: number): COption_CVec_NetAddressZZ { - const raw_val: bindings.LDKCOption_CVec_NetAddressZZ = bindings.LDKCOption_CVec_NetAddressZZ_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKCOption_CVec_NetAddressZZ.Some) { - return new Some(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKCOption_CVec_NetAddressZZ.None) { - return new None(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class Some extends COption_CVec_NetAddressZZ { - public some: NetAddress[]; - private constructor(ptr: number, obj: bindings.LDKCOption_CVec_NetAddressZZ.Some) { - super(null, ptr); - const some: number[] = obj.some; - NetAddress[] some_conv_12_arr = new NetAddress[some.length]; - for (int m = 0; m < some.length; m++) { - number some_conv_12 = some[m]; - NetAddress some_conv_12_hu_conv = NetAddress.constr_from_ptr(some_conv_12); - some_conv_12_hu_conv.ptrs_to.add(this); - some_conv_12_arr[m] = some_conv_12_hu_conv; - } - this.some = some_conv_12_arr; - } -} -export class None extends COption_CVec_NetAddressZZ { - private constructor(ptr: number, obj: bindings.LDKCOption_CVec_NetAddressZZ.None) { - super(null, ptr); - } -} - public static Option_CVec_NetAddressZZ constructor_some(NetAddress[] o) { - number ret = bindings.COption_CVec_NetAddressZZ_some(o != null ? Arrays.stream(o).map(o_conv_12 -> o_conv_12.ptr).toArray(number[]::new) : null); - Option_CVec_NetAddressZZ ret_hu_conv = Option_CVec_NetAddressZZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Option_CVec_NetAddressZZ constructor_none() { - number ret = bindings.COption_CVec_NetAddressZZ_none(); - Option_CVec_NetAddressZZ ret_hu_conv = Option_CVec_NetAddressZZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.COption_CVec_NetAddressZZ_clone_ptr(this.ptr); - return ret; - } - - public Option_CVec_NetAddressZZ clone() { - number ret = bindings.COption_CVec_NetAddressZZ_clone(this.ptr); - Option_CVec_NetAddressZZ ret_hu_conv = Option_CVec_NetAddressZZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Option_ClosureReasonZ.ts b/ts/structs/Option_ClosureReasonZ.ts deleted file mode 100644 index c77ca357..00000000 --- a/ts/structs/Option_ClosureReasonZ.ts +++ /dev/null @@ -1,64 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class COption_ClosureReasonZ extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.COption_ClosureReasonZ_free(this.ptr); } - } - static constr_from_ptr(ptr: number): COption_ClosureReasonZ { - const raw_val: bindings.LDKCOption_ClosureReasonZ = bindings.LDKCOption_ClosureReasonZ_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKCOption_ClosureReasonZ.Some) { - return new Some(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKCOption_ClosureReasonZ.None) { - return new None(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class Some extends COption_ClosureReasonZ { - public some: ClosureReason; - private constructor(ptr: number, obj: bindings.LDKCOption_ClosureReasonZ.Some) { - super(null, ptr); - const some: number = obj.some; - ClosureReason some_hu_conv = ClosureReason.constr_from_ptr(some); - some_hu_conv.ptrs_to.add(this); - this.some = some_hu_conv; - } -} -export class None extends COption_ClosureReasonZ { - private constructor(ptr: number, obj: bindings.LDKCOption_ClosureReasonZ.None) { - super(null, ptr); - } -} - public static Option_ClosureReasonZ constructor_some(ClosureReason o) { - number ret = bindings.COption_ClosureReasonZ_some(o.ptr); - Option_ClosureReasonZ ret_hu_conv = Option_ClosureReasonZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Option_ClosureReasonZ constructor_none() { - number ret = bindings.COption_ClosureReasonZ_none(); - Option_ClosureReasonZ ret_hu_conv = Option_ClosureReasonZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.COption_ClosureReasonZ_clone_ptr(this.ptr); - return ret; - } - - public Option_ClosureReasonZ clone() { - number ret = bindings.COption_ClosureReasonZ_clone(this.ptr); - Option_ClosureReasonZ ret_hu_conv = Option_ClosureReasonZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Option_EventZ.ts b/ts/structs/Option_EventZ.ts deleted file mode 100644 index a1a60c19..00000000 --- a/ts/structs/Option_EventZ.ts +++ /dev/null @@ -1,64 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class COption_EventZ extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.COption_EventZ_free(this.ptr); } - } - static constr_from_ptr(ptr: number): COption_EventZ { - const raw_val: bindings.LDKCOption_EventZ = bindings.LDKCOption_EventZ_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKCOption_EventZ.Some) { - return new Some(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKCOption_EventZ.None) { - return new None(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class Some extends COption_EventZ { - public some: Event; - private constructor(ptr: number, obj: bindings.LDKCOption_EventZ.Some) { - super(null, ptr); - const some: number = obj.some; - Event some_hu_conv = Event.constr_from_ptr(some); - some_hu_conv.ptrs_to.add(this); - this.some = some_hu_conv; - } -} -export class None extends COption_EventZ { - private constructor(ptr: number, obj: bindings.LDKCOption_EventZ.None) { - super(null, ptr); - } -} - public static Option_EventZ constructor_some(Event o) { - number ret = bindings.COption_EventZ_some(o.ptr); - Option_EventZ ret_hu_conv = Option_EventZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Option_EventZ constructor_none() { - number ret = bindings.COption_EventZ_none(); - Option_EventZ ret_hu_conv = Option_EventZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.COption_EventZ_clone_ptr(this.ptr); - return ret; - } - - public Option_EventZ clone() { - number ret = bindings.COption_EventZ_clone(this.ptr); - Option_EventZ ret_hu_conv = Option_EventZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Option_FilterZ.ts b/ts/structs/Option_FilterZ.ts deleted file mode 100644 index a9b76998..00000000 --- a/ts/structs/Option_FilterZ.ts +++ /dev/null @@ -1,53 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class COption_FilterZ extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.COption_FilterZ_free(this.ptr); } - } - static constr_from_ptr(ptr: number): COption_FilterZ { - const raw_val: bindings.LDKCOption_FilterZ = bindings.LDKCOption_FilterZ_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKCOption_FilterZ.Some) { - return new Some(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKCOption_FilterZ.None) { - return new None(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class Some extends COption_FilterZ { - public some: Filter; - private constructor(ptr: number, obj: bindings.LDKCOption_FilterZ.Some) { - super(null, ptr); - const some: number = obj.some; - Filter ret_hu_conv = new Filter(null, some); - ret_hu_conv.ptrs_to.add(this); - this.some = ret_hu_conv; - } -} -export class None extends COption_FilterZ { - private constructor(ptr: number, obj: bindings.LDKCOption_FilterZ.None) { - super(null, ptr); - } -} - public static Option_FilterZ constructor_some(Filter o) { - number ret = bindings.COption_FilterZ_some(o == null ? 0 : o.ptr); - Option_FilterZ ret_hu_conv = Option_FilterZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - ret_hu_conv.ptrs_to.add(o); - return ret_hu_conv; - } - - public static Option_FilterZ constructor_none() { - number ret = bindings.COption_FilterZ_none(); - Option_FilterZ ret_hu_conv = Option_FilterZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Option_MonitorEventZ.ts b/ts/structs/Option_MonitorEventZ.ts deleted file mode 100644 index 143df5c9..00000000 --- a/ts/structs/Option_MonitorEventZ.ts +++ /dev/null @@ -1,64 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class COption_MonitorEventZ extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.COption_MonitorEventZ_free(this.ptr); } - } - static constr_from_ptr(ptr: number): COption_MonitorEventZ { - const raw_val: bindings.LDKCOption_MonitorEventZ = bindings.LDKCOption_MonitorEventZ_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKCOption_MonitorEventZ.Some) { - return new Some(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKCOption_MonitorEventZ.None) { - return new None(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class Some extends COption_MonitorEventZ { - public some: MonitorEvent; - private constructor(ptr: number, obj: bindings.LDKCOption_MonitorEventZ.Some) { - super(null, ptr); - const some: number = obj.some; - MonitorEvent some_hu_conv = MonitorEvent.constr_from_ptr(some); - some_hu_conv.ptrs_to.add(this); - this.some = some_hu_conv; - } -} -export class None extends COption_MonitorEventZ { - private constructor(ptr: number, obj: bindings.LDKCOption_MonitorEventZ.None) { - super(null, ptr); - } -} - public static Option_MonitorEventZ constructor_some(MonitorEvent o) { - number ret = bindings.COption_MonitorEventZ_some(o.ptr); - Option_MonitorEventZ ret_hu_conv = Option_MonitorEventZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Option_MonitorEventZ constructor_none() { - number ret = bindings.COption_MonitorEventZ_none(); - Option_MonitorEventZ ret_hu_conv = Option_MonitorEventZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.COption_MonitorEventZ_clone_ptr(this.ptr); - return ret; - } - - public Option_MonitorEventZ clone() { - number ret = bindings.COption_MonitorEventZ_clone(this.ptr); - Option_MonitorEventZ ret_hu_conv = Option_MonitorEventZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Option_NetworkUpdateZ.ts b/ts/structs/Option_NetworkUpdateZ.ts deleted file mode 100644 index 959f0c42..00000000 --- a/ts/structs/Option_NetworkUpdateZ.ts +++ /dev/null @@ -1,64 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class COption_NetworkUpdateZ extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.COption_NetworkUpdateZ_free(this.ptr); } - } - static constr_from_ptr(ptr: number): COption_NetworkUpdateZ { - const raw_val: bindings.LDKCOption_NetworkUpdateZ = bindings.LDKCOption_NetworkUpdateZ_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKCOption_NetworkUpdateZ.Some) { - return new Some(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKCOption_NetworkUpdateZ.None) { - return new None(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class Some extends COption_NetworkUpdateZ { - public some: NetworkUpdate; - private constructor(ptr: number, obj: bindings.LDKCOption_NetworkUpdateZ.Some) { - super(null, ptr); - const some: number = obj.some; - NetworkUpdate some_hu_conv = NetworkUpdate.constr_from_ptr(some); - some_hu_conv.ptrs_to.add(this); - this.some = some_hu_conv; - } -} -export class None extends COption_NetworkUpdateZ { - private constructor(ptr: number, obj: bindings.LDKCOption_NetworkUpdateZ.None) { - super(null, ptr); - } -} - public static Option_NetworkUpdateZ constructor_some(NetworkUpdate o) { - number ret = bindings.COption_NetworkUpdateZ_some(o.ptr); - Option_NetworkUpdateZ ret_hu_conv = Option_NetworkUpdateZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Option_NetworkUpdateZ constructor_none() { - number ret = bindings.COption_NetworkUpdateZ_none(); - Option_NetworkUpdateZ ret_hu_conv = Option_NetworkUpdateZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.COption_NetworkUpdateZ_clone_ptr(this.ptr); - return ret; - } - - public Option_NetworkUpdateZ clone() { - number ret = bindings.COption_NetworkUpdateZ_clone(this.ptr); - Option_NetworkUpdateZ ret_hu_conv = Option_NetworkUpdateZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Option_TypeZ.ts b/ts/structs/Option_TypeZ.ts deleted file mode 100644 index b6919288..00000000 --- a/ts/structs/Option_TypeZ.ts +++ /dev/null @@ -1,65 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class COption_TypeZ extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.COption_TypeZ_free(this.ptr); } - } - static constr_from_ptr(ptr: number): COption_TypeZ { - const raw_val: bindings.LDKCOption_TypeZ = bindings.LDKCOption_TypeZ_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKCOption_TypeZ.Some) { - return new Some(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKCOption_TypeZ.None) { - return new None(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class Some extends COption_TypeZ { - public some: Type; - private constructor(ptr: number, obj: bindings.LDKCOption_TypeZ.Some) { - super(null, ptr); - const some: number = obj.some; - Type ret_hu_conv = new Type(null, some); - ret_hu_conv.ptrs_to.add(this); - this.some = ret_hu_conv; - } -} -export class None extends COption_TypeZ { - private constructor(ptr: number, obj: bindings.LDKCOption_TypeZ.None) { - super(null, ptr); - } -} - public static Option_TypeZ constructor_some(Type o) { - number ret = bindings.COption_TypeZ_some(o == null ? 0 : o.ptr); - Option_TypeZ ret_hu_conv = Option_TypeZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - ret_hu_conv.ptrs_to.add(o); - return ret_hu_conv; - } - - public static Option_TypeZ constructor_none() { - number ret = bindings.COption_TypeZ_none(); - Option_TypeZ ret_hu_conv = Option_TypeZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.COption_TypeZ_clone_ptr(this.ptr); - return ret; - } - - public Option_TypeZ clone() { - number ret = bindings.COption_TypeZ_clone(this.ptr); - Option_TypeZ ret_hu_conv = Option_TypeZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Option_u16Z.ts b/ts/structs/Option_u16Z.ts deleted file mode 100644 index 0c7441d7..00000000 --- a/ts/structs/Option_u16Z.ts +++ /dev/null @@ -1,61 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class COption_u16Z extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.COption_u16Z_free(this.ptr); } - } - static constr_from_ptr(ptr: number): COption_u16Z { - const raw_val: bindings.LDKCOption_u16Z = bindings.LDKCOption_u16Z_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKCOption_u16Z.Some) { - return new Some(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKCOption_u16Z.None) { - return new None(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class Some extends COption_u16Z { - public some: number; - private constructor(ptr: number, obj: bindings.LDKCOption_u16Z.Some) { - super(null, ptr); - this.some = obj.some; - } -} -export class None extends COption_u16Z { - private constructor(ptr: number, obj: bindings.LDKCOption_u16Z.None) { - super(null, ptr); - } -} - public static Option_u16Z constructor_some(number o) { - number ret = bindings.COption_u16Z_some(o); - Option_u16Z ret_hu_conv = Option_u16Z.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Option_u16Z constructor_none() { - number ret = bindings.COption_u16Z_none(); - Option_u16Z ret_hu_conv = Option_u16Z.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.COption_u16Z_clone_ptr(this.ptr); - return ret; - } - - public Option_u16Z clone() { - number ret = bindings.COption_u16Z_clone(this.ptr); - Option_u16Z ret_hu_conv = Option_u16Z.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Option_u32Z.ts b/ts/structs/Option_u32Z.ts deleted file mode 100644 index a91f74c3..00000000 --- a/ts/structs/Option_u32Z.ts +++ /dev/null @@ -1,61 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class COption_u32Z extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.COption_u32Z_free(this.ptr); } - } - static constr_from_ptr(ptr: number): COption_u32Z { - const raw_val: bindings.LDKCOption_u32Z = bindings.LDKCOption_u32Z_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKCOption_u32Z.Some) { - return new Some(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKCOption_u32Z.None) { - return new None(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class Some extends COption_u32Z { - public some: number; - private constructor(ptr: number, obj: bindings.LDKCOption_u32Z.Some) { - super(null, ptr); - this.some = obj.some; - } -} -export class None extends COption_u32Z { - private constructor(ptr: number, obj: bindings.LDKCOption_u32Z.None) { - super(null, ptr); - } -} - public static Option_u32Z constructor_some(number o) { - number ret = bindings.COption_u32Z_some(o); - Option_u32Z ret_hu_conv = Option_u32Z.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Option_u32Z constructor_none() { - number ret = bindings.COption_u32Z_none(); - Option_u32Z ret_hu_conv = Option_u32Z.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.COption_u32Z_clone_ptr(this.ptr); - return ret; - } - - public Option_u32Z clone() { - number ret = bindings.COption_u32Z_clone(this.ptr); - Option_u32Z ret_hu_conv = Option_u32Z.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Option_u64Z.ts b/ts/structs/Option_u64Z.ts deleted file mode 100644 index 92aa6781..00000000 --- a/ts/structs/Option_u64Z.ts +++ /dev/null @@ -1,61 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class COption_u64Z extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.COption_u64Z_free(this.ptr); } - } - static constr_from_ptr(ptr: number): COption_u64Z { - const raw_val: bindings.LDKCOption_u64Z = bindings.LDKCOption_u64Z_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKCOption_u64Z.Some) { - return new Some(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKCOption_u64Z.None) { - return new None(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class Some extends COption_u64Z { - public some: number; - private constructor(ptr: number, obj: bindings.LDKCOption_u64Z.Some) { - super(null, ptr); - this.some = obj.some; - } -} -export class None extends COption_u64Z { - private constructor(ptr: number, obj: bindings.LDKCOption_u64Z.None) { - super(null, ptr); - } -} - public static Option_u64Z constructor_some(number o) { - number ret = bindings.COption_u64Z_some(o); - Option_u64Z ret_hu_conv = Option_u64Z.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Option_u64Z constructor_none() { - number ret = bindings.COption_u64Z_none(); - Option_u64Z ret_hu_conv = Option_u64Z.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.COption_u64Z_clone_ptr(this.ptr); - return ret; - } - - public Option_u64Z clone() { - number ret = bindings.COption_u64Z_clone(this.ptr); - Option_u64Z ret_hu_conv = Option_u64Z.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/OutPoint.ts b/ts/structs/OutPoint.ts deleted file mode 100644 index 29005226..00000000 --- a/ts/structs/OutPoint.ts +++ /dev/null @@ -1,85 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class OutPoint extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.OutPoint_free(this.ptr); - } - } - public Uint8Array get_txid() { - Uint8Array ret = bindings.OutPoint_get_txid(this.ptr); - return ret; - } - - public void set_txid(Uint8Array val) { - bindings.OutPoint_set_txid(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public number get_index() { - number ret = bindings.OutPoint_get_index(this.ptr); - return ret; - } - - public void set_index(number val) { - bindings.OutPoint_set_index(this.ptr, val); - } - - public static OutPoint constructor_new(Uint8Array txid_arg, number index_arg) { - number ret = bindings.OutPoint_new(InternalUtils.check_arr_len(txid_arg, 32), index_arg); - const ret_hu_conv: OutPoint = new OutPoint(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.OutPoint_clone_ptr(this.ptr); - return ret; - } - - public OutPoint clone() { - number ret = bindings.OutPoint_clone(this.ptr); - const ret_hu_conv: OutPoint = new OutPoint(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public boolean eq(OutPoint b) { - boolean ret = bindings.OutPoint_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - this.ptrs_to.add(b); - return ret; - } - - public number hash() { - number ret = bindings.OutPoint_hash(this.ptr); - return ret; - } - - public Uint8Array to_channel_id() { - Uint8Array ret = bindings.OutPoint_to_channel_id(this.ptr); - return ret; - } - - public Uint8Array write() { - Uint8Array ret = bindings.OutPoint_write(this.ptr); - return ret; - } - - public static Result_OutPointDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.OutPoint_read(ser); - Result_OutPointDecodeErrorZ ret_hu_conv = Result_OutPointDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Payee.ts b/ts/structs/Payee.ts deleted file mode 100644 index a981e13e..00000000 --- a/ts/structs/Payee.ts +++ /dev/null @@ -1,123 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class Payee extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.Payee_free(this.ptr); - } - } - public Uint8Array get_pubkey() { - Uint8Array ret = bindings.Payee_get_pubkey(this.ptr); - return ret; - } - - public void set_pubkey(Uint8Array val) { - bindings.Payee_set_pubkey(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public InvoiceFeatures get_features() { - number ret = bindings.Payee_get_features(this.ptr); - const ret_hu_conv: InvoiceFeatures = new InvoiceFeatures(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_features(InvoiceFeatures val) { - bindings.Payee_set_features(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public RouteHint[] get_route_hints() { - number[] ret = bindings.Payee_get_route_hints(this.ptr); - RouteHint[] ret_conv_11_arr = new RouteHint[ret.length]; - for (int l = 0; l < ret.length; l++) { - number ret_conv_11 = ret[l]; - const ret_conv_11_hu_conv: RouteHint = new RouteHint(null, ret_conv_11); - ret_conv_11_hu_conv.ptrs_to.add(this); - ret_conv_11_arr[l] = ret_conv_11_hu_conv; - } - return ret_conv_11_arr; - } - - public void set_route_hints(RouteHint[] val) { - bindings.Payee_set_route_hints(this.ptr, val != null ? Arrays.stream(val).map(val_conv_11 -> val_conv_11 == null ? 0 : val_conv_11.ptr & ~1).toArray(number[]::new) : null); - } - - public Option_u64Z get_expiry_time() { - number ret = bindings.Payee_get_expiry_time(this.ptr); - Option_u64Z ret_hu_conv = Option_u64Z.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_expiry_time(Option_u64Z val) { - bindings.Payee_set_expiry_time(this.ptr, val.ptr); - } - - public static Payee constructor_new(Uint8Array pubkey_arg, InvoiceFeatures features_arg, RouteHint[] route_hints_arg, Option_u64Z expiry_time_arg) { - number ret = bindings.Payee_new(InternalUtils.check_arr_len(pubkey_arg, 33), features_arg == null ? 0 : features_arg.ptr & ~1, route_hints_arg != null ? Arrays.stream(route_hints_arg).map(route_hints_arg_conv_11 -> route_hints_arg_conv_11 == null ? 0 : route_hints_arg_conv_11.ptr & ~1).toArray(number[]::new) : null, expiry_time_arg.ptr); - const ret_hu_conv: Payee = new Payee(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.Payee_clone_ptr(this.ptr); - return ret; - } - - public Payee clone() { - number ret = bindings.Payee_clone(this.ptr); - const ret_hu_conv: Payee = new Payee(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public number hash() { - number ret = bindings.Payee_hash(this.ptr); - return ret; - } - - public boolean eq(Payee b) { - boolean ret = bindings.Payee_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - this.ptrs_to.add(b); - return ret; - } - - public Uint8Array write() { - Uint8Array ret = bindings.Payee_write(this.ptr); - return ret; - } - - public static Result_PayeeDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.Payee_read(ser); - Result_PayeeDecodeErrorZ ret_hu_conv = Result_PayeeDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Payee constructor_from_node_id(Uint8Array pubkey) { - number ret = bindings.Payee_from_node_id(InternalUtils.check_arr_len(pubkey, 33)); - const ret_hu_conv: Payee = new Payee(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Payee constructor_for_keysend(Uint8Array pubkey) { - number ret = bindings.Payee_for_keysend(InternalUtils.check_arr_len(pubkey, 33)); - const ret_hu_conv: Payee = new Payee(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - -} diff --git a/ts/structs/PayeePubKey.ts b/ts/structs/PayeePubKey.ts deleted file mode 100644 index e7d9c930..00000000 --- a/ts/structs/PayeePubKey.ts +++ /dev/null @@ -1,60 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class PayeePubKey extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.PayeePubKey_free(this.ptr); - } - } - public Uint8Array get_a() { - Uint8Array ret = bindings.PayeePubKey_get_a(this.ptr); - return ret; - } - - public void set_a(Uint8Array val) { - bindings.PayeePubKey_set_a(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public static PayeePubKey constructor_new(Uint8Array a_arg) { - number ret = bindings.PayeePubKey_new(InternalUtils.check_arr_len(a_arg, 33)); - const ret_hu_conv: PayeePubKey = new PayeePubKey(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.PayeePubKey_clone_ptr(this.ptr); - return ret; - } - - public PayeePubKey clone() { - number ret = bindings.PayeePubKey_clone(this.ptr); - const ret_hu_conv: PayeePubKey = new PayeePubKey(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public number hash() { - number ret = bindings.PayeePubKey_hash(this.ptr); - return ret; - } - - public boolean eq(PayeePubKey b) { - boolean ret = bindings.PayeePubKey_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - this.ptrs_to.add(b); - return ret; - } - -} diff --git a/ts/structs/Payer.ts b/ts/structs/Payer.ts deleted file mode 100644 index cab53970..00000000 --- a/ts/structs/Payer.ts +++ /dev/null @@ -1,133 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export class Payer extends CommonBase { - - bindings_instance?: bindings.LDKPayer; - - constructor(ptr?: number, arg?: bindings.LDKPayer) { - if (Number.isFinite(ptr)) { - super(ptr); - this.bindings_instance = null; - } else { - // TODO: private constructor instantiation - super(bindings.LDKPayer_new(arg)); - this.ptrs_to.push(arg); - - } - } - - protected finalize() { - if (this.ptr != 0) { - bindings.Payer_free(this.ptr); - } - super.finalize(); - } - - static new_impl(arg: PayerInterface): Payer { - const impl_holder: LDKPayerHolder = new LDKPayerHolder(); - let structImplementation = { - // todo: in-line interface filling - node_id (): Uint8Array { - Uint8Array ret = arg.node_id(); - result: Uint8Array = InternalUtils.check_arr_len(ret, 33); - return result; - }, - - first_hops (): number[] { - ChannelDetails[] ret = arg.first_hops(); - result: number[] = ret != null ? Arrays.stream(ret).map(ret_conv_16 -> ret_conv_16 == null ? 0 : ret_conv_16.clone_ptr()).toArray(number[]::new) : null; - return result; - }, - - send_payment (route: number, payment_hash: Uint8Array, payment_secret: Uint8Array): number { - const route_hu_conv: Route = new Route(null, route); - Result_PaymentIdPaymentSendFailureZ ret = arg.send_payment(route_hu_conv, payment_hash, payment_secret); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - send_spontaneous_payment (route: number, payment_preimage: Uint8Array): number { - const route_hu_conv: Route = new Route(null, route); - Result_PaymentIdPaymentSendFailureZ ret = arg.send_spontaneous_payment(route_hu_conv, payment_preimage); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - retry_payment (route: number, payment_id: Uint8Array): number { - const route_hu_conv: Route = new Route(null, route); - Result_NonePaymentSendFailureZ ret = arg.retry_payment(route_hu_conv, payment_id); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - abandon_payment (payment_id: Uint8Array): void { - arg.abandon_payment(payment_id); - }, - - - }; - impl_holder.held = new Payer (null, structImplementation); - } - } - - export interface PayerInterface { - node_id(): Uint8Array; - first_hops(): ChannelDetails[]; - send_payment(route: Route, payment_hash: Uint8Array, payment_secret: Uint8Array): Result_PaymentIdPaymentSendFailureZ; - send_spontaneous_payment(route: Route, payment_preimage: Uint8Array): Result_PaymentIdPaymentSendFailureZ; - retry_payment(route: Route, payment_id: Uint8Array): Result_NonePaymentSendFailureZ; - abandon_payment(payment_id: Uint8Array): void; - - } - - class LDKPayerHolder { - held: Payer; - } - public Uint8Array node_id() { - Uint8Array ret = bindings.Payer_node_id(this.ptr); - return ret; - } - - public ChannelDetails[] first_hops() { - number[] ret = bindings.Payer_first_hops(this.ptr); - ChannelDetails[] ret_conv_16_arr = new ChannelDetails[ret.length]; - for (int q = 0; q < ret.length; q++) { - number ret_conv_16 = ret[q]; - const ret_conv_16_hu_conv: ChannelDetails = new ChannelDetails(null, ret_conv_16); - ret_conv_16_hu_conv.ptrs_to.add(this); - ret_conv_16_arr[q] = ret_conv_16_hu_conv; - } - return ret_conv_16_arr; - } - - public Result_PaymentIdPaymentSendFailureZ send_payment(Route route, Uint8Array payment_hash, Uint8Array payment_secret) { - number ret = bindings.Payer_send_payment(this.ptr, route == null ? 0 : route.ptr & ~1, InternalUtils.check_arr_len(payment_hash, 32), InternalUtils.check_arr_len(payment_secret, 32)); - Result_PaymentIdPaymentSendFailureZ ret_hu_conv = Result_PaymentIdPaymentSendFailureZ.constr_from_ptr(ret); - this.ptrs_to.add(route); - return ret_hu_conv; - } - - public Result_PaymentIdPaymentSendFailureZ send_spontaneous_payment(Route route, Uint8Array payment_preimage) { - number ret = bindings.Payer_send_spontaneous_payment(this.ptr, route == null ? 0 : route.ptr & ~1, InternalUtils.check_arr_len(payment_preimage, 32)); - Result_PaymentIdPaymentSendFailureZ ret_hu_conv = Result_PaymentIdPaymentSendFailureZ.constr_from_ptr(ret); - this.ptrs_to.add(route); - return ret_hu_conv; - } - - public Result_NonePaymentSendFailureZ retry_payment(Route route, Uint8Array payment_id) { - number ret = bindings.Payer_retry_payment(this.ptr, route == null ? 0 : route.ptr & ~1, InternalUtils.check_arr_len(payment_id, 32)); - Result_NonePaymentSendFailureZ ret_hu_conv = Result_NonePaymentSendFailureZ.constr_from_ptr(ret); - this.ptrs_to.add(route); - return ret_hu_conv; - } - - public void abandon_payment(Uint8Array payment_id) { - bindings.Payer_abandon_payment(this.ptr, InternalUtils.check_arr_len(payment_id, 32)); - } - -} diff --git a/ts/structs/PaymentError.ts b/ts/structs/PaymentError.ts deleted file mode 100644 index 37ee22e3..00000000 --- a/ts/structs/PaymentError.ts +++ /dev/null @@ -1,86 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class PaymentError extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.PaymentError_free(this.ptr); } - } - static constr_from_ptr(ptr: number): PaymentError { - const raw_val: bindings.LDKPaymentError = bindings.LDKPaymentError_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKPaymentError.Invoice) { - return new Invoice(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKPaymentError.Routing) { - return new Routing(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKPaymentError.Sending) { - return new Sending(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class Invoice extends PaymentError { - public invoice: String; - private constructor(ptr: number, obj: bindings.LDKPaymentError.Invoice) { - super(null, ptr); - this.invoice = obj.invoice; - } -} -export class Routing extends PaymentError { - public routing: LightningError; - private constructor(ptr: number, obj: bindings.LDKPaymentError.Routing) { - super(null, ptr); - const routing: number = obj.routing; - const routing_hu_conv: LightningError = new LightningError(null, routing); - routing_hu_conv.ptrs_to.add(this); - this.routing = routing_hu_conv; - } -} -export class Sending extends PaymentError { - public sending: PaymentSendFailure; - private constructor(ptr: number, obj: bindings.LDKPaymentError.Sending) { - super(null, ptr); - const sending: number = obj.sending; - PaymentSendFailure sending_hu_conv = PaymentSendFailure.constr_from_ptr(sending); - sending_hu_conv.ptrs_to.add(this); - this.sending = sending_hu_conv; - } -} - public number clone_ptr() { - number ret = bindings.PaymentError_clone_ptr(this.ptr); - return ret; - } - - public PaymentError clone() { - number ret = bindings.PaymentError_clone(this.ptr); - PaymentError ret_hu_conv = PaymentError.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static PaymentError constructor_invoice(String a) { - number ret = bindings.PaymentError_invoice(a); - PaymentError ret_hu_conv = PaymentError.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static PaymentError constructor_routing(LightningError a) { - number ret = bindings.PaymentError_routing(a == null ? 0 : a.ptr & ~1); - PaymentError ret_hu_conv = PaymentError.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static PaymentError constructor_sending(PaymentSendFailure a) { - number ret = bindings.PaymentError_sending(a.ptr); - PaymentError ret_hu_conv = PaymentError.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - -} diff --git a/ts/structs/PaymentPurpose.ts b/ts/structs/PaymentPurpose.ts deleted file mode 100644 index a71834b7..00000000 --- a/ts/structs/PaymentPurpose.ts +++ /dev/null @@ -1,65 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class PaymentPurpose extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.PaymentPurpose_free(this.ptr); } - } - static constr_from_ptr(ptr: number): PaymentPurpose { - const raw_val: bindings.LDKPaymentPurpose = bindings.LDKPaymentPurpose_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKPaymentPurpose.InvoicePayment) { - return new InvoicePayment(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKPaymentPurpose.SpontaneousPayment) { - return new SpontaneousPayment(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class InvoicePayment extends PaymentPurpose { - public payment_preimage: Uint8Array; - public payment_secret: Uint8Array; - private constructor(ptr: number, obj: bindings.LDKPaymentPurpose.InvoicePayment) { - super(null, ptr); - this.payment_preimage = obj.payment_preimage; - this.payment_secret = obj.payment_secret; - } -} -export class SpontaneousPayment extends PaymentPurpose { - public spontaneous_payment: Uint8Array; - private constructor(ptr: number, obj: bindings.LDKPaymentPurpose.SpontaneousPayment) { - super(null, ptr); - this.spontaneous_payment = obj.spontaneous_payment; - } -} - public number clone_ptr() { - number ret = bindings.PaymentPurpose_clone_ptr(this.ptr); - return ret; - } - - public PaymentPurpose clone() { - number ret = bindings.PaymentPurpose_clone(this.ptr); - PaymentPurpose ret_hu_conv = PaymentPurpose.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static PaymentPurpose constructor_invoice_payment(Uint8Array payment_preimage, Uint8Array payment_secret) { - number ret = bindings.PaymentPurpose_invoice_payment(InternalUtils.check_arr_len(payment_preimage, 32), InternalUtils.check_arr_len(payment_secret, 32)); - PaymentPurpose ret_hu_conv = PaymentPurpose.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static PaymentPurpose constructor_spontaneous_payment(Uint8Array a) { - number ret = bindings.PaymentPurpose_spontaneous_payment(InternalUtils.check_arr_len(a, 32)); - PaymentPurpose ret_hu_conv = PaymentPurpose.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - -} diff --git a/ts/structs/PaymentSendFailure.ts b/ts/structs/PaymentSendFailure.ts deleted file mode 100644 index 82553689..00000000 --- a/ts/structs/PaymentSendFailure.ts +++ /dev/null @@ -1,129 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class PaymentSendFailure extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.PaymentSendFailure_free(this.ptr); } - } - static constr_from_ptr(ptr: number): PaymentSendFailure { - const raw_val: bindings.LDKPaymentSendFailure = bindings.LDKPaymentSendFailure_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKPaymentSendFailure.ParameterError) { - return new ParameterError(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKPaymentSendFailure.PathParameterError) { - return new PathParameterError(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKPaymentSendFailure.AllFailedRetrySafe) { - return new AllFailedRetrySafe(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKPaymentSendFailure.PartialFailure) { - return new PartialFailure(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class ParameterError extends PaymentSendFailure { - public parameter_error: APIError; - private constructor(ptr: number, obj: bindings.LDKPaymentSendFailure.ParameterError) { - super(null, ptr); - const parameter_error: number = obj.parameter_error; - APIError parameter_error_hu_conv = APIError.constr_from_ptr(parameter_error); - parameter_error_hu_conv.ptrs_to.add(this); - this.parameter_error = parameter_error_hu_conv; - } -} -export class PathParameterError extends PaymentSendFailure { - public path_parameter_error: Result_NoneAPIErrorZ[]; - private constructor(ptr: number, obj: bindings.LDKPaymentSendFailure.PathParameterError) { - super(null, ptr); - const path_parameter_error: number[] = obj.path_parameter_error; - Result_NoneAPIErrorZ[] path_parameter_error_conv_22_arr = new Result_NoneAPIErrorZ[path_parameter_error.length]; - for (int w = 0; w < path_parameter_error.length; w++) { - number path_parameter_error_conv_22 = path_parameter_error[w]; - Result_NoneAPIErrorZ path_parameter_error_conv_22_hu_conv = Result_NoneAPIErrorZ.constr_from_ptr(path_parameter_error_conv_22); - path_parameter_error_conv_22_arr[w] = path_parameter_error_conv_22_hu_conv; - } - this.path_parameter_error = path_parameter_error_conv_22_arr; - } -} -export class AllFailedRetrySafe extends PaymentSendFailure { - public all_failed_retry_safe: APIError[]; - private constructor(ptr: number, obj: bindings.LDKPaymentSendFailure.AllFailedRetrySafe) { - super(null, ptr); - const all_failed_retry_safe: number[] = obj.all_failed_retry_safe; - APIError[] all_failed_retry_safe_conv_10_arr = new APIError[all_failed_retry_safe.length]; - for (int k = 0; k < all_failed_retry_safe.length; k++) { - number all_failed_retry_safe_conv_10 = all_failed_retry_safe[k]; - APIError all_failed_retry_safe_conv_10_hu_conv = APIError.constr_from_ptr(all_failed_retry_safe_conv_10); - all_failed_retry_safe_conv_10_hu_conv.ptrs_to.add(this); - all_failed_retry_safe_conv_10_arr[k] = all_failed_retry_safe_conv_10_hu_conv; - } - this.all_failed_retry_safe = all_failed_retry_safe_conv_10_arr; - } -} -export class PartialFailure extends PaymentSendFailure { - public results: Result_NoneAPIErrorZ[]; - public failed_paths_retry: RouteParameters; - public payment_id: Uint8Array; - private constructor(ptr: number, obj: bindings.LDKPaymentSendFailure.PartialFailure) { - super(null, ptr); - const results: number[] = obj.results; - Result_NoneAPIErrorZ[] results_conv_22_arr = new Result_NoneAPIErrorZ[results.length]; - for (int w = 0; w < results.length; w++) { - number results_conv_22 = results[w]; - Result_NoneAPIErrorZ results_conv_22_hu_conv = Result_NoneAPIErrorZ.constr_from_ptr(results_conv_22); - results_conv_22_arr[w] = results_conv_22_hu_conv; - } - this.results = results_conv_22_arr; - const failed_paths_retry: number = obj.failed_paths_retry; - const failed_paths_retry_hu_conv: RouteParameters = new RouteParameters(null, failed_paths_retry); - failed_paths_retry_hu_conv.ptrs_to.add(this); - this.failed_paths_retry = failed_paths_retry_hu_conv; - this.payment_id = obj.payment_id; - } -} - public number clone_ptr() { - number ret = bindings.PaymentSendFailure_clone_ptr(this.ptr); - return ret; - } - - public PaymentSendFailure clone() { - number ret = bindings.PaymentSendFailure_clone(this.ptr); - PaymentSendFailure ret_hu_conv = PaymentSendFailure.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static PaymentSendFailure constructor_parameter_error(APIError a) { - number ret = bindings.PaymentSendFailure_parameter_error(a.ptr); - PaymentSendFailure ret_hu_conv = PaymentSendFailure.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static PaymentSendFailure constructor_path_parameter_error(Result_NoneAPIErrorZ[] a) { - number ret = bindings.PaymentSendFailure_path_parameter_error(a != null ? Arrays.stream(a).map(a_conv_22 -> a_conv_22 != null ? a_conv_22.ptr : 0).toArray(number[]::new) : null); - PaymentSendFailure ret_hu_conv = PaymentSendFailure.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static PaymentSendFailure constructor_all_failed_retry_safe(APIError[] a) { - number ret = bindings.PaymentSendFailure_all_failed_retry_safe(a != null ? Arrays.stream(a).map(a_conv_10 -> a_conv_10.ptr).toArray(number[]::new) : null); - PaymentSendFailure ret_hu_conv = PaymentSendFailure.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static PaymentSendFailure constructor_partial_failure(Result_NoneAPIErrorZ[] results, RouteParameters failed_paths_retry, Uint8Array payment_id) { - number ret = bindings.PaymentSendFailure_partial_failure(results != null ? Arrays.stream(results).map(results_conv_22 -> results_conv_22 != null ? results_conv_22.ptr : 0).toArray(number[]::new) : null, failed_paths_retry == null ? 0 : failed_paths_retry.ptr & ~1, InternalUtils.check_arr_len(payment_id, 32)); - PaymentSendFailure ret_hu_conv = PaymentSendFailure.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - -} diff --git a/ts/structs/PeerHandleError.ts b/ts/structs/PeerHandleError.ts deleted file mode 100644 index 7e80b4b9..00000000 --- a/ts/structs/PeerHandleError.ts +++ /dev/null @@ -1,49 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class PeerHandleError extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.PeerHandleError_free(this.ptr); - } - } - public boolean get_no_connection_possible() { - boolean ret = bindings.PeerHandleError_get_no_connection_possible(this.ptr); - return ret; - } - - public void set_no_connection_possible(boolean val) { - bindings.PeerHandleError_set_no_connection_possible(this.ptr, val); - } - - public static PeerHandleError constructor_new(boolean no_connection_possible_arg) { - number ret = bindings.PeerHandleError_new(no_connection_possible_arg); - const ret_hu_conv: PeerHandleError = new PeerHandleError(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.PeerHandleError_clone_ptr(this.ptr); - return ret; - } - - public PeerHandleError clone() { - number ret = bindings.PeerHandleError_clone(this.ptr); - const ret_hu_conv: PeerHandleError = new PeerHandleError(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/PeerManager.ts b/ts/structs/PeerManager.ts deleted file mode 100644 index 1900a954..00000000 --- a/ts/structs/PeerManager.ts +++ /dev/null @@ -1,83 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class PeerManager extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.PeerManager_free(this.ptr); - } - } - public static PeerManager constructor_new(ChannelMessageHandler message_handler_chan_handler_arg, RoutingMessageHandler message_handler_route_handler_arg, Uint8Array our_node_secret, Uint8Array ephemeral_random_data, Logger logger, CustomMessageHandler custom_message_handler) { - number ret = bindings.PeerManager_new(bindings.MessageHandler_new(message_handler_chan_handler_arg == null ? 0 : message_handler_chan_handler_arg.ptr, message_handler_route_handler_arg == null ? 0 : message_handler_route_handler_arg.ptr), InternalUtils.check_arr_len(our_node_secret, 32), InternalUtils.check_arr_len(ephemeral_random_data, 32), logger == null ? 0 : logger.ptr, custom_message_handler == null ? 0 : custom_message_handler.ptr); - const ret_hu_conv: PeerManager = new PeerManager(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - ret_hu_conv.ptrs_to.add(message_handler_chan_handler_arg); - ret_hu_conv.ptrs_to.add(message_handler_route_handler_arg); - ret_hu_conv.ptrs_to.add(logger); - ret_hu_conv.ptrs_to.add(custom_message_handler); - return ret_hu_conv; - } - - public Uint8Array[] get_peer_node_ids() { - Uint8Array[] ret = bindings.PeerManager_get_peer_node_ids(this.ptr); - return ret; - } - - public Result_CVec_u8ZPeerHandleErrorZ new_outbound_connection(Uint8Array their_node_id, SocketDescriptor descriptor) { - number ret = bindings.PeerManager_new_outbound_connection(this.ptr, InternalUtils.check_arr_len(their_node_id, 33), descriptor == null ? 0 : descriptor.ptr); - Result_CVec_u8ZPeerHandleErrorZ ret_hu_conv = Result_CVec_u8ZPeerHandleErrorZ.constr_from_ptr(ret); - this.ptrs_to.add(descriptor); - return ret_hu_conv; - } - - public Result_NonePeerHandleErrorZ new_inbound_connection(SocketDescriptor descriptor) { - number ret = bindings.PeerManager_new_inbound_connection(this.ptr, descriptor == null ? 0 : descriptor.ptr); - Result_NonePeerHandleErrorZ ret_hu_conv = Result_NonePeerHandleErrorZ.constr_from_ptr(ret); - this.ptrs_to.add(descriptor); - return ret_hu_conv; - } - - public Result_NonePeerHandleErrorZ write_buffer_space_avail(SocketDescriptor descriptor) { - number ret = bindings.PeerManager_write_buffer_space_avail(this.ptr, descriptor == null ? 0 : descriptor.ptr); - Result_NonePeerHandleErrorZ ret_hu_conv = Result_NonePeerHandleErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public Result_boolPeerHandleErrorZ read_event(SocketDescriptor peer_descriptor, Uint8Array data) { - number ret = bindings.PeerManager_read_event(this.ptr, peer_descriptor == null ? 0 : peer_descriptor.ptr, data); - Result_boolPeerHandleErrorZ ret_hu_conv = Result_boolPeerHandleErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public void process_events() { - bindings.PeerManager_process_events(this.ptr); - } - - public void socket_disconnected(SocketDescriptor descriptor) { - bindings.PeerManager_socket_disconnected(this.ptr, descriptor == null ? 0 : descriptor.ptr); - } - - public void disconnect_by_node_id(Uint8Array node_id, boolean no_connection_possible) { - bindings.PeerManager_disconnect_by_node_id(this.ptr, InternalUtils.check_arr_len(node_id, 33), no_connection_possible); - } - - public void disconnect_all_peers() { - bindings.PeerManager_disconnect_all_peers(this.ptr); - } - - public void timer_tick_occurred() { - bindings.PeerManager_timer_tick_occurred(this.ptr); - } - -} diff --git a/ts/structs/Persist.ts b/ts/structs/Persist.ts deleted file mode 100644 index 3a4b7344..00000000 --- a/ts/structs/Persist.ts +++ /dev/null @@ -1,88 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export class Persist extends CommonBase { - - bindings_instance?: bindings.LDKPersist; - - constructor(ptr?: number, arg?: bindings.LDKPersist) { - if (Number.isFinite(ptr)) { - super(ptr); - this.bindings_instance = null; - } else { - // TODO: private constructor instantiation - super(bindings.LDKPersist_new(arg)); - this.ptrs_to.push(arg); - - } - } - - protected finalize() { - if (this.ptr != 0) { - bindings.Persist_free(this.ptr); - } - super.finalize(); - } - - static new_impl(arg: PersistInterface): Persist { - const impl_holder: LDKPersistHolder = new LDKPersistHolder(); - let structImplementation = { - // todo: in-line interface filling - persist_new_channel (channel_id: number, data: number, update_id: number): number { - const channel_id_hu_conv: OutPoint = new OutPoint(null, channel_id); - channel_id_hu_conv.ptrs_to.add(this); - const data_hu_conv: ChannelMonitor = new ChannelMonitor(null, data); - const update_id_hu_conv: MonitorUpdateId = new MonitorUpdateId(null, update_id); - update_id_hu_conv.ptrs_to.add(this); - Result_NoneChannelMonitorUpdateErrZ ret = arg.persist_new_channel(channel_id_hu_conv, data_hu_conv, update_id_hu_conv); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - update_persisted_channel (channel_id: number, update: number, data: number, update_id: number): number { - const channel_id_hu_conv: OutPoint = new OutPoint(null, channel_id); - channel_id_hu_conv.ptrs_to.add(this); - const update_hu_conv: ChannelMonitorUpdate = new ChannelMonitorUpdate(null, update); - const data_hu_conv: ChannelMonitor = new ChannelMonitor(null, data); - const update_id_hu_conv: MonitorUpdateId = new MonitorUpdateId(null, update_id); - update_id_hu_conv.ptrs_to.add(this); - Result_NoneChannelMonitorUpdateErrZ ret = arg.update_persisted_channel(channel_id_hu_conv, update_hu_conv, data_hu_conv, update_id_hu_conv); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - - }; - impl_holder.held = new Persist (null, structImplementation); - } - } - - export interface PersistInterface { - persist_new_channel(channel_id: OutPoint, data: ChannelMonitor, update_id: MonitorUpdateId): Result_NoneChannelMonitorUpdateErrZ; - update_persisted_channel(channel_id: OutPoint, update: ChannelMonitorUpdate, data: ChannelMonitor, update_id: MonitorUpdateId): Result_NoneChannelMonitorUpdateErrZ; - - } - - class LDKPersistHolder { - held: Persist; - } - public Result_NoneChannelMonitorUpdateErrZ persist_new_channel(OutPoint channel_id, ChannelMonitor data, MonitorUpdateId update_id) { - number ret = bindings.Persist_persist_new_channel(this.ptr, channel_id == null ? 0 : channel_id.ptr & ~1, data == null ? 0 : data.ptr & ~1, update_id == null ? 0 : update_id.ptr & ~1); - Result_NoneChannelMonitorUpdateErrZ ret_hu_conv = Result_NoneChannelMonitorUpdateErrZ.constr_from_ptr(ret); - this.ptrs_to.add(data); - return ret_hu_conv; - } - - public Result_NoneChannelMonitorUpdateErrZ update_persisted_channel(OutPoint channel_id, ChannelMonitorUpdate update, ChannelMonitor data, MonitorUpdateId update_id) { - number ret = bindings.Persist_update_persisted_channel(this.ptr, channel_id == null ? 0 : channel_id.ptr & ~1, update == null ? 0 : update.ptr & ~1, data == null ? 0 : data.ptr & ~1, update_id == null ? 0 : update_id.ptr & ~1); - Result_NoneChannelMonitorUpdateErrZ ret_hu_conv = Result_NoneChannelMonitorUpdateErrZ.constr_from_ptr(ret); - this.ptrs_to.add(update); - this.ptrs_to.add(data); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Ping.ts b/ts/structs/Ping.ts deleted file mode 100644 index e1a0a848..00000000 --- a/ts/structs/Ping.ts +++ /dev/null @@ -1,69 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class Ping extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.Ping_free(this.ptr); - } - } - public number get_ponglen() { - number ret = bindings.Ping_get_ponglen(this.ptr); - return ret; - } - - public void set_ponglen(number val) { - bindings.Ping_set_ponglen(this.ptr, val); - } - - public number get_byteslen() { - number ret = bindings.Ping_get_byteslen(this.ptr); - return ret; - } - - public void set_byteslen(number val) { - bindings.Ping_set_byteslen(this.ptr, val); - } - - public static Ping constructor_new(number ponglen_arg, number byteslen_arg) { - number ret = bindings.Ping_new(ponglen_arg, byteslen_arg); - const ret_hu_conv: Ping = new Ping(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.Ping_clone_ptr(this.ptr); - return ret; - } - - public Ping clone() { - number ret = bindings.Ping_clone(this.ptr); - const ret_hu_conv: Ping = new Ping(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.Ping_write(this.ptr); - return ret; - } - - public static Result_PingDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.Ping_read(ser); - Result_PingDecodeErrorZ ret_hu_conv = Result_PingDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Pong.ts b/ts/structs/Pong.ts deleted file mode 100644 index c4749eb2..00000000 --- a/ts/structs/Pong.ts +++ /dev/null @@ -1,60 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class Pong extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.Pong_free(this.ptr); - } - } - public number get_byteslen() { - number ret = bindings.Pong_get_byteslen(this.ptr); - return ret; - } - - public void set_byteslen(number val) { - bindings.Pong_set_byteslen(this.ptr, val); - } - - public static Pong constructor_new(number byteslen_arg) { - number ret = bindings.Pong_new(byteslen_arg); - const ret_hu_conv: Pong = new Pong(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.Pong_clone_ptr(this.ptr); - return ret; - } - - public Pong clone() { - number ret = bindings.Pong_clone(this.ptr); - const ret_hu_conv: Pong = new Pong(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.Pong_write(this.ptr); - return ret; - } - - public static Result_PongDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.Pong_read(ser); - Result_PongDecodeErrorZ ret_hu_conv = Result_PongDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/PositiveTimestamp.ts b/ts/structs/PositiveTimestamp.ts deleted file mode 100644 index de2bdcee..00000000 --- a/ts/structs/PositiveTimestamp.ts +++ /dev/null @@ -1,61 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class PositiveTimestamp extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.PositiveTimestamp_free(this.ptr); - } - } - public boolean eq(PositiveTimestamp b) { - boolean ret = bindings.PositiveTimestamp_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - this.ptrs_to.add(b); - return ret; - } - - public number clone_ptr() { - number ret = bindings.PositiveTimestamp_clone_ptr(this.ptr); - return ret; - } - - public PositiveTimestamp clone() { - number ret = bindings.PositiveTimestamp_clone(this.ptr); - const ret_hu_conv: PositiveTimestamp = new PositiveTimestamp(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static Result_PositiveTimestampCreationErrorZ constructor_from_unix_timestamp(number unix_seconds) { - number ret = bindings.PositiveTimestamp_from_unix_timestamp(unix_seconds); - Result_PositiveTimestampCreationErrorZ ret_hu_conv = Result_PositiveTimestampCreationErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_PositiveTimestampCreationErrorZ constructor_from_system_time(number time) { - number ret = bindings.PositiveTimestamp_from_system_time(time); - Result_PositiveTimestampCreationErrorZ ret_hu_conv = Result_PositiveTimestampCreationErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public number as_unix_timestamp() { - number ret = bindings.PositiveTimestamp_as_unix_timestamp(this.ptr); - return ret; - } - - public number as_time() { - number ret = bindings.PositiveTimestamp_as_time(this.ptr); - return ret; - } - -} diff --git a/ts/structs/PrivateRoute.ts b/ts/structs/PrivateRoute.ts deleted file mode 100644 index fc53d046..00000000 --- a/ts/structs/PrivateRoute.ts +++ /dev/null @@ -1,57 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class PrivateRoute extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.PrivateRoute_free(this.ptr); - } - } - public number clone_ptr() { - number ret = bindings.PrivateRoute_clone_ptr(this.ptr); - return ret; - } - - public PrivateRoute clone() { - number ret = bindings.PrivateRoute_clone(this.ptr); - const ret_hu_conv: PrivateRoute = new PrivateRoute(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public number hash() { - number ret = bindings.PrivateRoute_hash(this.ptr); - return ret; - } - - public boolean eq(PrivateRoute b) { - boolean ret = bindings.PrivateRoute_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - this.ptrs_to.add(b); - return ret; - } - - public static Result_PrivateRouteCreationErrorZ constructor_new(RouteHint hops) { - number ret = bindings.PrivateRoute_new(hops == null ? 0 : hops.ptr & ~1); - Result_PrivateRouteCreationErrorZ ret_hu_conv = Result_PrivateRouteCreationErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public RouteHint into_inner() { - number ret = bindings.PrivateRoute_into_inner(this.ptr); - const ret_hu_conv: RouteHint = new RouteHint(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/QueryChannelRange.ts b/ts/structs/QueryChannelRange.ts deleted file mode 100644 index 11c394b8..00000000 --- a/ts/structs/QueryChannelRange.ts +++ /dev/null @@ -1,83 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class QueryChannelRange extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.QueryChannelRange_free(this.ptr); - } - } - public Uint8Array get_chain_hash() { - Uint8Array ret = bindings.QueryChannelRange_get_chain_hash(this.ptr); - return ret; - } - - public void set_chain_hash(Uint8Array val) { - bindings.QueryChannelRange_set_chain_hash(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public number get_first_blocknum() { - number ret = bindings.QueryChannelRange_get_first_blocknum(this.ptr); - return ret; - } - - public void set_first_blocknum(number val) { - bindings.QueryChannelRange_set_first_blocknum(this.ptr, val); - } - - public number get_number_of_blocks() { - number ret = bindings.QueryChannelRange_get_number_of_blocks(this.ptr); - return ret; - } - - public void set_number_of_blocks(number val) { - bindings.QueryChannelRange_set_number_of_blocks(this.ptr, val); - } - - public static QueryChannelRange constructor_new(Uint8Array chain_hash_arg, number first_blocknum_arg, number number_of_blocks_arg) { - number ret = bindings.QueryChannelRange_new(InternalUtils.check_arr_len(chain_hash_arg, 32), first_blocknum_arg, number_of_blocks_arg); - const ret_hu_conv: QueryChannelRange = new QueryChannelRange(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.QueryChannelRange_clone_ptr(this.ptr); - return ret; - } - - public QueryChannelRange clone() { - number ret = bindings.QueryChannelRange_clone(this.ptr); - const ret_hu_conv: QueryChannelRange = new QueryChannelRange(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public number end_blocknum() { - number ret = bindings.QueryChannelRange_end_blocknum(this.ptr); - return ret; - } - - public Uint8Array write() { - Uint8Array ret = bindings.QueryChannelRange_write(this.ptr); - return ret; - } - - public static Result_QueryChannelRangeDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.QueryChannelRange_read(ser); - Result_QueryChannelRangeDecodeErrorZ ret_hu_conv = Result_QueryChannelRangeDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/QueryShortChannelIds.ts b/ts/structs/QueryShortChannelIds.ts deleted file mode 100644 index 5afafcf5..00000000 --- a/ts/structs/QueryShortChannelIds.ts +++ /dev/null @@ -1,64 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class QueryShortChannelIds extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.QueryShortChannelIds_free(this.ptr); - } - } - public Uint8Array get_chain_hash() { - Uint8Array ret = bindings.QueryShortChannelIds_get_chain_hash(this.ptr); - return ret; - } - - public void set_chain_hash(Uint8Array val) { - bindings.QueryShortChannelIds_set_chain_hash(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public void set_short_channel_ids(number[] val) { - bindings.QueryShortChannelIds_set_short_channel_ids(this.ptr, val); - } - - public static QueryShortChannelIds constructor_new(Uint8Array chain_hash_arg, number[] short_channel_ids_arg) { - number ret = bindings.QueryShortChannelIds_new(InternalUtils.check_arr_len(chain_hash_arg, 32), short_channel_ids_arg); - const ret_hu_conv: QueryShortChannelIds = new QueryShortChannelIds(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.QueryShortChannelIds_clone_ptr(this.ptr); - return ret; - } - - public QueryShortChannelIds clone() { - number ret = bindings.QueryShortChannelIds_clone(this.ptr); - const ret_hu_conv: QueryShortChannelIds = new QueryShortChannelIds(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static Result_QueryShortChannelIdsDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.QueryShortChannelIds_read(ser); - Result_QueryShortChannelIdsDecodeErrorZ ret_hu_conv = Result_QueryShortChannelIdsDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.QueryShortChannelIds_write(this.ptr); - return ret; - } - -} diff --git a/ts/structs/RawDataPart.ts b/ts/structs/RawDataPart.ts deleted file mode 100644 index c4537373..00000000 --- a/ts/structs/RawDataPart.ts +++ /dev/null @@ -1,50 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class RawDataPart extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.RawDataPart_free(this.ptr); - } - } - public PositiveTimestamp get_timestamp() { - number ret = bindings.RawDataPart_get_timestamp(this.ptr); - const ret_hu_conv: PositiveTimestamp = new PositiveTimestamp(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_timestamp(PositiveTimestamp val) { - bindings.RawDataPart_set_timestamp(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public boolean eq(RawDataPart b) { - boolean ret = bindings.RawDataPart_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - this.ptrs_to.add(b); - return ret; - } - - public number clone_ptr() { - number ret = bindings.RawDataPart_clone_ptr(this.ptr); - return ret; - } - - public RawDataPart clone() { - number ret = bindings.RawDataPart_clone(this.ptr); - const ret_hu_conv: RawDataPart = new RawDataPart(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/RawInvoice.ts b/ts/structs/RawInvoice.ts deleted file mode 100644 index 3cd1b041..00000000 --- a/ts/structs/RawInvoice.ts +++ /dev/null @@ -1,133 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class RawInvoice extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.RawInvoice_free(this.ptr); - } - } - public RawDataPart get_data() { - number ret = bindings.RawInvoice_get_data(this.ptr); - const ret_hu_conv: RawDataPart = new RawDataPart(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_data(RawDataPart val) { - bindings.RawInvoice_set_data(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public boolean eq(RawInvoice b) { - boolean ret = bindings.RawInvoice_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - this.ptrs_to.add(b); - return ret; - } - - public number clone_ptr() { - number ret = bindings.RawInvoice_clone_ptr(this.ptr); - return ret; - } - - public RawInvoice clone() { - number ret = bindings.RawInvoice_clone(this.ptr); - const ret_hu_conv: RawInvoice = new RawInvoice(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array hash() { - Uint8Array ret = bindings.RawInvoice_hash(this.ptr); - return ret; - } - - public Sha256 payment_hash() { - number ret = bindings.RawInvoice_payment_hash(this.ptr); - const ret_hu_conv: Sha256 = new Sha256(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Description description() { - number ret = bindings.RawInvoice_description(this.ptr); - const ret_hu_conv: Description = new Description(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public PayeePubKey payee_pub_key() { - number ret = bindings.RawInvoice_payee_pub_key(this.ptr); - const ret_hu_conv: PayeePubKey = new PayeePubKey(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Sha256 description_hash() { - number ret = bindings.RawInvoice_description_hash(this.ptr); - const ret_hu_conv: Sha256 = new Sha256(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public ExpiryTime expiry_time() { - number ret = bindings.RawInvoice_expiry_time(this.ptr); - const ret_hu_conv: ExpiryTime = new ExpiryTime(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public MinFinalCltvExpiry min_final_cltv_expiry() { - number ret = bindings.RawInvoice_min_final_cltv_expiry(this.ptr); - const ret_hu_conv: MinFinalCltvExpiry = new MinFinalCltvExpiry(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array payment_secret() { - Uint8Array ret = bindings.RawInvoice_payment_secret(this.ptr); - return ret; - } - - public InvoiceFeatures features() { - number ret = bindings.RawInvoice_features(this.ptr); - const ret_hu_conv: InvoiceFeatures = new InvoiceFeatures(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public PrivateRoute[] private_routes() { - number[] ret = bindings.RawInvoice_private_routes(this.ptr); - PrivateRoute[] ret_conv_14_arr = new PrivateRoute[ret.length]; - for (int o = 0; o < ret.length; o++) { - number ret_conv_14 = ret[o]; - const ret_conv_14_hu_conv: PrivateRoute = new PrivateRoute(null, ret_conv_14); - ret_conv_14_hu_conv.ptrs_to.add(this); - ret_conv_14_arr[o] = ret_conv_14_hu_conv; - } - return ret_conv_14_arr; - } - - public Option_u64Z amount_pico_btc() { - number ret = bindings.RawInvoice_amount_pico_btc(this.ptr); - Option_u64Z ret_hu_conv = Option_u64Z.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Currency currency() { - Currency ret = bindings.RawInvoice_currency(this.ptr); - return ret; - } - -} diff --git a/ts/structs/ReadOnlyNetworkGraph.ts b/ts/structs/ReadOnlyNetworkGraph.ts deleted file mode 100644 index b0a1e25e..00000000 --- a/ts/structs/ReadOnlyNetworkGraph.ts +++ /dev/null @@ -1,28 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ReadOnlyNetworkGraph extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ReadOnlyNetworkGraph_free(this.ptr); - } - } - public Option_CVec_NetAddressZZ get_addresses(Uint8Array pubkey) { - number ret = bindings.ReadOnlyNetworkGraph_get_addresses(this.ptr, InternalUtils.check_arr_len(pubkey, 33)); - Option_CVec_NetAddressZZ ret_hu_conv = Option_CVec_NetAddressZZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Record.ts b/ts/structs/Record.ts deleted file mode 100644 index 95fc0e29..00000000 --- a/ts/structs/Record.ts +++ /dev/null @@ -1,78 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class Record extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.Record_free(this.ptr); - } - } - public Level get_level() { - Level ret = bindings.Record_get_level(this.ptr); - return ret; - } - - public void set_level(Level val) { - bindings.Record_set_level(this.ptr, val); - } - - public String get_args() { - String ret = bindings.Record_get_args(this.ptr); - return ret; - } - - public void set_args(String val) { - bindings.Record_set_args(this.ptr, val); - } - - public String get_module_path() { - String ret = bindings.Record_get_module_path(this.ptr); - return ret; - } - - public void set_module_path(String val) { - bindings.Record_set_module_path(this.ptr, val); - } - - public String get_file() { - String ret = bindings.Record_get_file(this.ptr); - return ret; - } - - public void set_file(String val) { - bindings.Record_set_file(this.ptr, val); - } - - public number get_line() { - number ret = bindings.Record_get_line(this.ptr); - return ret; - } - - public void set_line(number val) { - bindings.Record_set_line(this.ptr, val); - } - - public number clone_ptr() { - number ret = bindings.Record_clone_ptr(this.ptr); - return ret; - } - - public Record clone() { - number ret = bindings.Record_clone(this.ptr); - const ret_hu_conv: Record = new Record(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ReplyChannelRange.ts b/ts/structs/ReplyChannelRange.ts deleted file mode 100644 index 9d3ec28d..00000000 --- a/ts/structs/ReplyChannelRange.ts +++ /dev/null @@ -1,91 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ReplyChannelRange extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ReplyChannelRange_free(this.ptr); - } - } - public Uint8Array get_chain_hash() { - Uint8Array ret = bindings.ReplyChannelRange_get_chain_hash(this.ptr); - return ret; - } - - public void set_chain_hash(Uint8Array val) { - bindings.ReplyChannelRange_set_chain_hash(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public number get_first_blocknum() { - number ret = bindings.ReplyChannelRange_get_first_blocknum(this.ptr); - return ret; - } - - public void set_first_blocknum(number val) { - bindings.ReplyChannelRange_set_first_blocknum(this.ptr, val); - } - - public number get_number_of_blocks() { - number ret = bindings.ReplyChannelRange_get_number_of_blocks(this.ptr); - return ret; - } - - public void set_number_of_blocks(number val) { - bindings.ReplyChannelRange_set_number_of_blocks(this.ptr, val); - } - - public boolean get_sync_complete() { - boolean ret = bindings.ReplyChannelRange_get_sync_complete(this.ptr); - return ret; - } - - public void set_sync_complete(boolean val) { - bindings.ReplyChannelRange_set_sync_complete(this.ptr, val); - } - - public void set_short_channel_ids(number[] val) { - bindings.ReplyChannelRange_set_short_channel_ids(this.ptr, val); - } - - public static ReplyChannelRange constructor_new(Uint8Array chain_hash_arg, number first_blocknum_arg, number number_of_blocks_arg, boolean sync_complete_arg, number[] short_channel_ids_arg) { - number ret = bindings.ReplyChannelRange_new(InternalUtils.check_arr_len(chain_hash_arg, 32), first_blocknum_arg, number_of_blocks_arg, sync_complete_arg, short_channel_ids_arg); - const ret_hu_conv: ReplyChannelRange = new ReplyChannelRange(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.ReplyChannelRange_clone_ptr(this.ptr); - return ret; - } - - public ReplyChannelRange clone() { - number ret = bindings.ReplyChannelRange_clone(this.ptr); - const ret_hu_conv: ReplyChannelRange = new ReplyChannelRange(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static Result_ReplyChannelRangeDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.ReplyChannelRange_read(ser); - Result_ReplyChannelRangeDecodeErrorZ ret_hu_conv = Result_ReplyChannelRangeDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.ReplyChannelRange_write(this.ptr); - return ret; - } - -} diff --git a/ts/structs/ReplyShortChannelIdsEnd.ts b/ts/structs/ReplyShortChannelIdsEnd.ts deleted file mode 100644 index 9c3d2881..00000000 --- a/ts/structs/ReplyShortChannelIdsEnd.ts +++ /dev/null @@ -1,69 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ReplyShortChannelIdsEnd extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ReplyShortChannelIdsEnd_free(this.ptr); - } - } - public Uint8Array get_chain_hash() { - Uint8Array ret = bindings.ReplyShortChannelIdsEnd_get_chain_hash(this.ptr); - return ret; - } - - public void set_chain_hash(Uint8Array val) { - bindings.ReplyShortChannelIdsEnd_set_chain_hash(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public boolean get_full_information() { - boolean ret = bindings.ReplyShortChannelIdsEnd_get_full_information(this.ptr); - return ret; - } - - public void set_full_information(boolean val) { - bindings.ReplyShortChannelIdsEnd_set_full_information(this.ptr, val); - } - - public static ReplyShortChannelIdsEnd constructor_new(Uint8Array chain_hash_arg, boolean full_information_arg) { - number ret = bindings.ReplyShortChannelIdsEnd_new(InternalUtils.check_arr_len(chain_hash_arg, 32), full_information_arg); - const ret_hu_conv: ReplyShortChannelIdsEnd = new ReplyShortChannelIdsEnd(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.ReplyShortChannelIdsEnd_clone_ptr(this.ptr); - return ret; - } - - public ReplyShortChannelIdsEnd clone() { - number ret = bindings.ReplyShortChannelIdsEnd_clone(this.ptr); - const ret_hu_conv: ReplyShortChannelIdsEnd = new ReplyShortChannelIdsEnd(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.ReplyShortChannelIdsEnd_write(this.ptr); - return ret; - } - - public static Result_ReplyShortChannelIdsEndDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.ReplyShortChannelIdsEnd_read(ser); - Result_ReplyShortChannelIdsEndDecodeErrorZ ret_hu_conv = Result_ReplyShortChannelIdsEndDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_AcceptChannelDecodeErrorZ.ts b/ts/structs/Result_AcceptChannelDecodeErrorZ.ts deleted file mode 100644 index f8dd75b5..00000000 --- a/ts/structs/Result_AcceptChannelDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_AcceptChannelDecodeErrorZ extends CommonBase { - private Result_AcceptChannelDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_AcceptChannelDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_AcceptChannelDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_AcceptChannelDecodeErrorZ_is_ok(ptr)) { - return new Result_AcceptChannelDecodeErrorZ_OK(null, ptr); - } else { - return new Result_AcceptChannelDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_AcceptChannelDecodeErrorZ_OK extends Result_AcceptChannelDecodeErrorZ { - public final AcceptChannel res; - private Result_AcceptChannelDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_AcceptChannelDecodeErrorZ_get_ok(ptr); - const res_hu_conv: AcceptChannel = new AcceptChannel(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_AcceptChannelDecodeErrorZ_Err extends Result_AcceptChannelDecodeErrorZ { - public final DecodeError err; - private Result_AcceptChannelDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_AcceptChannelDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_AcceptChannelDecodeErrorZ constructor_ok(AcceptChannel o) { - number ret = bindings.CResult_AcceptChannelDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_AcceptChannelDecodeErrorZ ret_hu_conv = Result_AcceptChannelDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_AcceptChannelDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_AcceptChannelDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_AcceptChannelDecodeErrorZ ret_hu_conv = Result_AcceptChannelDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_AcceptChannelDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_AcceptChannelDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_AcceptChannelDecodeErrorZ clone() { - number ret = bindings.CResult_AcceptChannelDecodeErrorZ_clone(this.ptr); - Result_AcceptChannelDecodeErrorZ ret_hu_conv = Result_AcceptChannelDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_AnnouncementSignaturesDecodeErrorZ.ts b/ts/structs/Result_AnnouncementSignaturesDecodeErrorZ.ts deleted file mode 100644 index 745f0e4d..00000000 --- a/ts/structs/Result_AnnouncementSignaturesDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_AnnouncementSignaturesDecodeErrorZ extends CommonBase { - private Result_AnnouncementSignaturesDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_AnnouncementSignaturesDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_AnnouncementSignaturesDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_AnnouncementSignaturesDecodeErrorZ_is_ok(ptr)) { - return new Result_AnnouncementSignaturesDecodeErrorZ_OK(null, ptr); - } else { - return new Result_AnnouncementSignaturesDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_AnnouncementSignaturesDecodeErrorZ_OK extends Result_AnnouncementSignaturesDecodeErrorZ { - public final AnnouncementSignatures res; - private Result_AnnouncementSignaturesDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_AnnouncementSignaturesDecodeErrorZ_get_ok(ptr); - const res_hu_conv: AnnouncementSignatures = new AnnouncementSignatures(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_AnnouncementSignaturesDecodeErrorZ_Err extends Result_AnnouncementSignaturesDecodeErrorZ { - public final DecodeError err; - private Result_AnnouncementSignaturesDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_AnnouncementSignaturesDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_AnnouncementSignaturesDecodeErrorZ constructor_ok(AnnouncementSignatures o) { - number ret = bindings.CResult_AnnouncementSignaturesDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_AnnouncementSignaturesDecodeErrorZ ret_hu_conv = Result_AnnouncementSignaturesDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_AnnouncementSignaturesDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_AnnouncementSignaturesDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_AnnouncementSignaturesDecodeErrorZ ret_hu_conv = Result_AnnouncementSignaturesDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_AnnouncementSignaturesDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_AnnouncementSignaturesDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_AnnouncementSignaturesDecodeErrorZ clone() { - number ret = bindings.CResult_AnnouncementSignaturesDecodeErrorZ_clone(this.ptr); - Result_AnnouncementSignaturesDecodeErrorZ ret_hu_conv = Result_AnnouncementSignaturesDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_BuiltCommitmentTransactionDecodeErrorZ.ts b/ts/structs/Result_BuiltCommitmentTransactionDecodeErrorZ.ts deleted file mode 100644 index 5aef308d..00000000 --- a/ts/structs/Result_BuiltCommitmentTransactionDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_BuiltCommitmentTransactionDecodeErrorZ extends CommonBase { - private Result_BuiltCommitmentTransactionDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_BuiltCommitmentTransactionDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_BuiltCommitmentTransactionDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_BuiltCommitmentTransactionDecodeErrorZ_is_ok(ptr)) { - return new Result_BuiltCommitmentTransactionDecodeErrorZ_OK(null, ptr); - } else { - return new Result_BuiltCommitmentTransactionDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_BuiltCommitmentTransactionDecodeErrorZ_OK extends Result_BuiltCommitmentTransactionDecodeErrorZ { - public final BuiltCommitmentTransaction res; - private Result_BuiltCommitmentTransactionDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_BuiltCommitmentTransactionDecodeErrorZ_get_ok(ptr); - const res_hu_conv: BuiltCommitmentTransaction = new BuiltCommitmentTransaction(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_BuiltCommitmentTransactionDecodeErrorZ_Err extends Result_BuiltCommitmentTransactionDecodeErrorZ { - public final DecodeError err; - private Result_BuiltCommitmentTransactionDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_BuiltCommitmentTransactionDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_BuiltCommitmentTransactionDecodeErrorZ constructor_ok(BuiltCommitmentTransaction o) { - number ret = bindings.CResult_BuiltCommitmentTransactionDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_BuiltCommitmentTransactionDecodeErrorZ ret_hu_conv = Result_BuiltCommitmentTransactionDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_BuiltCommitmentTransactionDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_BuiltCommitmentTransactionDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_BuiltCommitmentTransactionDecodeErrorZ ret_hu_conv = Result_BuiltCommitmentTransactionDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_BuiltCommitmentTransactionDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_BuiltCommitmentTransactionDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_BuiltCommitmentTransactionDecodeErrorZ clone() { - number ret = bindings.CResult_BuiltCommitmentTransactionDecodeErrorZ_clone(this.ptr); - Result_BuiltCommitmentTransactionDecodeErrorZ ret_hu_conv = Result_BuiltCommitmentTransactionDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ.ts b/ts/structs/Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ.ts deleted file mode 100644 index 91789ad3..00000000 --- a/ts/structs/Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ.ts +++ /dev/null @@ -1,57 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ extends CommonBase { - private Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_is_ok(ptr)) { - return new Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_OK(null, ptr); - } else { - return new Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_OK extends Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ { - public final TwoTuple_BlockHashChannelManagerZ res; - private Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_ok(ptr); - TwoTuple_BlockHashChannelManagerZ res_hu_conv = new TwoTuple_BlockHashChannelManagerZ(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_Err extends Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ { - public final DecodeError err; - private Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ constructor_ok(TwoTuple_BlockHashChannelManagerZ o) { - number ret = bindings.CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_ok(o != null ? o.ptr : 0); - Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ ret_hu_conv = Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ ret_hu_conv = Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_is_ok(this.ptr); - return ret; - } - -} diff --git a/ts/structs/Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ.ts b/ts/structs/Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ.ts deleted file mode 100644 index 3a2f12c5..00000000 --- a/ts/structs/Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ extends CommonBase { - private Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_is_ok(ptr)) { - return new Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_OK(null, ptr); - } else { - return new Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_OK extends Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ { - public final TwoTuple_BlockHashChannelMonitorZ res; - private Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_ok(ptr); - TwoTuple_BlockHashChannelMonitorZ res_hu_conv = new TwoTuple_BlockHashChannelMonitorZ(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_Err extends Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ { - public final DecodeError err; - private Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ constructor_ok(TwoTuple_BlockHashChannelMonitorZ o) { - number ret = bindings.CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_ok(o != null ? o.ptr : 0); - Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ ret_hu_conv = Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ ret_hu_conv = Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ clone() { - number ret = bindings.CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone(this.ptr); - Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ ret_hu_conv = Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ.ts b/ts/structs/Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ.ts deleted file mode 100644 index 5708e418..00000000 --- a/ts/structs/Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ extends CommonBase { - private Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_free(ptr); } super.finalize(); - } - - static Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ constr_from_ptr(long ptr) { - if (bindings.CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_is_ok(ptr)) { - return new Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_OK(null, ptr); - } else { - return new Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_Err(null, ptr); - } - } - public static final class Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_OK extends Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ { - public final TwoTuple_PaymentHashPaymentIdZ res; - private Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_get_ok(ptr); - TwoTuple_PaymentHashPaymentIdZ res_hu_conv = new TwoTuple_PaymentHashPaymentIdZ(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_Err extends Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ { - public final PaymentSendFailure err; - private Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_get_err(ptr); - PaymentSendFailure err_hu_conv = PaymentSendFailure.constr_from_ptr(err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ constructor_ok(TwoTuple_PaymentHashPaymentIdZ o) { - number ret = bindings.CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_ok(o != null ? o.ptr : 0); - Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ ret_hu_conv = Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ constructor_err(PaymentSendFailure e) { - number ret = bindings.CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_err(e.ptr); - Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ ret_hu_conv = Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone_ptr(this.ptr); - return ret; - } - - public Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ clone() { - number ret = bindings.CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ_clone(this.ptr); - Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ ret_hu_conv = Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ.ts b/ts/structs/Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ.ts deleted file mode 100644 index 26e3a960..00000000 --- a/ts/structs/Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ extends CommonBase { - private Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_free(ptr); } super.finalize(); - } - - static Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_is_ok(ptr)) { - return new Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_OK(null, ptr); - } else { - return new Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_Err(null, ptr); - } - } - public static final class Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_OK extends Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ { - public final TwoTuple_PaymentHashPaymentSecretZ res; - private Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_get_ok(ptr); - TwoTuple_PaymentHashPaymentSecretZ res_hu_conv = new TwoTuple_PaymentHashPaymentSecretZ(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_Err extends Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ { - public final APIError err; - private Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_get_err(ptr); - APIError err_hu_conv = APIError.constr_from_ptr(err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ constructor_ok(TwoTuple_PaymentHashPaymentSecretZ o) { - number ret = bindings.CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_ok(o != null ? o.ptr : 0); - Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ ret_hu_conv = Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ constructor_err(APIError e) { - number ret = bindings.CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_err(e.ptr); - Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ ret_hu_conv = Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ clone() { - number ret = bindings.CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ_clone(this.ptr); - Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ ret_hu_conv = Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_C2Tuple_PaymentHashPaymentSecretZNoneZ.ts b/ts/structs/Result_C2Tuple_PaymentHashPaymentSecretZNoneZ.ts deleted file mode 100644 index 290ae959..00000000 --- a/ts/structs/Result_C2Tuple_PaymentHashPaymentSecretZNoneZ.ts +++ /dev/null @@ -1,63 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_C2Tuple_PaymentHashPaymentSecretZNoneZ extends CommonBase { - private Result_C2Tuple_PaymentHashPaymentSecretZNoneZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_free(ptr); } super.finalize(); - } - - static Result_C2Tuple_PaymentHashPaymentSecretZNoneZ constr_from_ptr(long ptr) { - if (bindings.CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_is_ok(ptr)) { - return new Result_C2Tuple_PaymentHashPaymentSecretZNoneZ_OK(null, ptr); - } else { - return new Result_C2Tuple_PaymentHashPaymentSecretZNoneZ_Err(null, ptr); - } - } - public static final class Result_C2Tuple_PaymentHashPaymentSecretZNoneZ_OK extends Result_C2Tuple_PaymentHashPaymentSecretZNoneZ { - public final TwoTuple_PaymentHashPaymentSecretZ res; - private Result_C2Tuple_PaymentHashPaymentSecretZNoneZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_get_ok(ptr); - TwoTuple_PaymentHashPaymentSecretZ res_hu_conv = new TwoTuple_PaymentHashPaymentSecretZ(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_C2Tuple_PaymentHashPaymentSecretZNoneZ_Err extends Result_C2Tuple_PaymentHashPaymentSecretZNoneZ { - private Result_C2Tuple_PaymentHashPaymentSecretZNoneZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - } - } - - public static Result_C2Tuple_PaymentHashPaymentSecretZNoneZ constructor_ok(TwoTuple_PaymentHashPaymentSecretZ o) { - number ret = bindings.CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_ok(o != null ? o.ptr : 0); - Result_C2Tuple_PaymentHashPaymentSecretZNoneZ ret_hu_conv = Result_C2Tuple_PaymentHashPaymentSecretZNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_C2Tuple_PaymentHashPaymentSecretZNoneZ constructor_err() { - number ret = bindings.CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_err(); - Result_C2Tuple_PaymentHashPaymentSecretZNoneZ ret_hu_conv = Result_C2Tuple_PaymentHashPaymentSecretZNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone_ptr(this.ptr); - return ret; - } - - public Result_C2Tuple_PaymentHashPaymentSecretZNoneZ clone() { - number ret = bindings.CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_clone(this.ptr); - Result_C2Tuple_PaymentHashPaymentSecretZNoneZ ret_hu_conv = Result_C2Tuple_PaymentHashPaymentSecretZNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_C2Tuple_SignatureCVec_SignatureZZNoneZ.ts b/ts/structs/Result_C2Tuple_SignatureCVec_SignatureZZNoneZ.ts deleted file mode 100644 index 5ff71a0a..00000000 --- a/ts/structs/Result_C2Tuple_SignatureCVec_SignatureZZNoneZ.ts +++ /dev/null @@ -1,63 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_C2Tuple_SignatureCVec_SignatureZZNoneZ extends CommonBase { - private Result_C2Tuple_SignatureCVec_SignatureZZNoneZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_free(ptr); } super.finalize(); - } - - static Result_C2Tuple_SignatureCVec_SignatureZZNoneZ constr_from_ptr(long ptr) { - if (bindings.CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_is_ok(ptr)) { - return new Result_C2Tuple_SignatureCVec_SignatureZZNoneZ_OK(null, ptr); - } else { - return new Result_C2Tuple_SignatureCVec_SignatureZZNoneZ_Err(null, ptr); - } - } - public static final class Result_C2Tuple_SignatureCVec_SignatureZZNoneZ_OK extends Result_C2Tuple_SignatureCVec_SignatureZZNoneZ { - public final TwoTuple_SignatureCVec_SignatureZZ res; - private Result_C2Tuple_SignatureCVec_SignatureZZNoneZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_ok(ptr); - TwoTuple_SignatureCVec_SignatureZZ res_hu_conv = new TwoTuple_SignatureCVec_SignatureZZ(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_C2Tuple_SignatureCVec_SignatureZZNoneZ_Err extends Result_C2Tuple_SignatureCVec_SignatureZZNoneZ { - private Result_C2Tuple_SignatureCVec_SignatureZZNoneZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - } - } - - public static Result_C2Tuple_SignatureCVec_SignatureZZNoneZ constructor_ok(TwoTuple_SignatureCVec_SignatureZZ o) { - number ret = bindings.CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_ok(o != null ? o.ptr : 0); - Result_C2Tuple_SignatureCVec_SignatureZZNoneZ ret_hu_conv = Result_C2Tuple_SignatureCVec_SignatureZZNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_C2Tuple_SignatureCVec_SignatureZZNoneZ constructor_err() { - number ret = bindings.CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_err(); - Result_C2Tuple_SignatureCVec_SignatureZZNoneZ ret_hu_conv = Result_C2Tuple_SignatureCVec_SignatureZZNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone_ptr(this.ptr); - return ret; - } - - public Result_C2Tuple_SignatureCVec_SignatureZZNoneZ clone() { - number ret = bindings.CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_clone(this.ptr); - Result_C2Tuple_SignatureCVec_SignatureZZNoneZ ret_hu_conv = Result_C2Tuple_SignatureCVec_SignatureZZNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_COption_ClosureReasonZDecodeErrorZ.ts b/ts/structs/Result_COption_ClosureReasonZDecodeErrorZ.ts deleted file mode 100644 index c526901e..00000000 --- a/ts/structs/Result_COption_ClosureReasonZDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_COption_ClosureReasonZDecodeErrorZ extends CommonBase { - private Result_COption_ClosureReasonZDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_COption_ClosureReasonZDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_COption_ClosureReasonZDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_COption_ClosureReasonZDecodeErrorZ_is_ok(ptr)) { - return new Result_COption_ClosureReasonZDecodeErrorZ_OK(null, ptr); - } else { - return new Result_COption_ClosureReasonZDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_COption_ClosureReasonZDecodeErrorZ_OK extends Result_COption_ClosureReasonZDecodeErrorZ { - public final Option_ClosureReasonZ res; - private Result_COption_ClosureReasonZDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_COption_ClosureReasonZDecodeErrorZ_get_ok(ptr); - Option_ClosureReasonZ res_hu_conv = Option_ClosureReasonZ.constr_from_ptr(res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_COption_ClosureReasonZDecodeErrorZ_Err extends Result_COption_ClosureReasonZDecodeErrorZ { - public final DecodeError err; - private Result_COption_ClosureReasonZDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_COption_ClosureReasonZDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_COption_ClosureReasonZDecodeErrorZ constructor_ok(Option_ClosureReasonZ o) { - number ret = bindings.CResult_COption_ClosureReasonZDecodeErrorZ_ok(o.ptr); - Result_COption_ClosureReasonZDecodeErrorZ ret_hu_conv = Result_COption_ClosureReasonZDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_COption_ClosureReasonZDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_COption_ClosureReasonZDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_COption_ClosureReasonZDecodeErrorZ ret_hu_conv = Result_COption_ClosureReasonZDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_COption_ClosureReasonZDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_COption_ClosureReasonZDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_COption_ClosureReasonZDecodeErrorZ clone() { - number ret = bindings.CResult_COption_ClosureReasonZDecodeErrorZ_clone(this.ptr); - Result_COption_ClosureReasonZDecodeErrorZ ret_hu_conv = Result_COption_ClosureReasonZDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_COption_EventZDecodeErrorZ.ts b/ts/structs/Result_COption_EventZDecodeErrorZ.ts deleted file mode 100644 index b346fc2f..00000000 --- a/ts/structs/Result_COption_EventZDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_COption_EventZDecodeErrorZ extends CommonBase { - private Result_COption_EventZDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_COption_EventZDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_COption_EventZDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_COption_EventZDecodeErrorZ_is_ok(ptr)) { - return new Result_COption_EventZDecodeErrorZ_OK(null, ptr); - } else { - return new Result_COption_EventZDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_COption_EventZDecodeErrorZ_OK extends Result_COption_EventZDecodeErrorZ { - public final Option_EventZ res; - private Result_COption_EventZDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_COption_EventZDecodeErrorZ_get_ok(ptr); - Option_EventZ res_hu_conv = Option_EventZ.constr_from_ptr(res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_COption_EventZDecodeErrorZ_Err extends Result_COption_EventZDecodeErrorZ { - public final DecodeError err; - private Result_COption_EventZDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_COption_EventZDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_COption_EventZDecodeErrorZ constructor_ok(Option_EventZ o) { - number ret = bindings.CResult_COption_EventZDecodeErrorZ_ok(o.ptr); - Result_COption_EventZDecodeErrorZ ret_hu_conv = Result_COption_EventZDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_COption_EventZDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_COption_EventZDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_COption_EventZDecodeErrorZ ret_hu_conv = Result_COption_EventZDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_COption_EventZDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_COption_EventZDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_COption_EventZDecodeErrorZ clone() { - number ret = bindings.CResult_COption_EventZDecodeErrorZ_clone(this.ptr); - Result_COption_EventZDecodeErrorZ ret_hu_conv = Result_COption_EventZDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_COption_MonitorEventZDecodeErrorZ.ts b/ts/structs/Result_COption_MonitorEventZDecodeErrorZ.ts deleted file mode 100644 index af7855e3..00000000 --- a/ts/structs/Result_COption_MonitorEventZDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_COption_MonitorEventZDecodeErrorZ extends CommonBase { - private Result_COption_MonitorEventZDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_COption_MonitorEventZDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_COption_MonitorEventZDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_COption_MonitorEventZDecodeErrorZ_is_ok(ptr)) { - return new Result_COption_MonitorEventZDecodeErrorZ_OK(null, ptr); - } else { - return new Result_COption_MonitorEventZDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_COption_MonitorEventZDecodeErrorZ_OK extends Result_COption_MonitorEventZDecodeErrorZ { - public final Option_MonitorEventZ res; - private Result_COption_MonitorEventZDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_COption_MonitorEventZDecodeErrorZ_get_ok(ptr); - Option_MonitorEventZ res_hu_conv = Option_MonitorEventZ.constr_from_ptr(res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_COption_MonitorEventZDecodeErrorZ_Err extends Result_COption_MonitorEventZDecodeErrorZ { - public final DecodeError err; - private Result_COption_MonitorEventZDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_COption_MonitorEventZDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_COption_MonitorEventZDecodeErrorZ constructor_ok(Option_MonitorEventZ o) { - number ret = bindings.CResult_COption_MonitorEventZDecodeErrorZ_ok(o.ptr); - Result_COption_MonitorEventZDecodeErrorZ ret_hu_conv = Result_COption_MonitorEventZDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_COption_MonitorEventZDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_COption_MonitorEventZDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_COption_MonitorEventZDecodeErrorZ ret_hu_conv = Result_COption_MonitorEventZDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_COption_MonitorEventZDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_COption_MonitorEventZDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_COption_MonitorEventZDecodeErrorZ clone() { - number ret = bindings.CResult_COption_MonitorEventZDecodeErrorZ_clone(this.ptr); - Result_COption_MonitorEventZDecodeErrorZ ret_hu_conv = Result_COption_MonitorEventZDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_COption_NetworkUpdateZDecodeErrorZ.ts b/ts/structs/Result_COption_NetworkUpdateZDecodeErrorZ.ts deleted file mode 100644 index 970174c6..00000000 --- a/ts/structs/Result_COption_NetworkUpdateZDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_COption_NetworkUpdateZDecodeErrorZ extends CommonBase { - private Result_COption_NetworkUpdateZDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_COption_NetworkUpdateZDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_COption_NetworkUpdateZDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_COption_NetworkUpdateZDecodeErrorZ_is_ok(ptr)) { - return new Result_COption_NetworkUpdateZDecodeErrorZ_OK(null, ptr); - } else { - return new Result_COption_NetworkUpdateZDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_COption_NetworkUpdateZDecodeErrorZ_OK extends Result_COption_NetworkUpdateZDecodeErrorZ { - public final Option_NetworkUpdateZ res; - private Result_COption_NetworkUpdateZDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_COption_NetworkUpdateZDecodeErrorZ_get_ok(ptr); - Option_NetworkUpdateZ res_hu_conv = Option_NetworkUpdateZ.constr_from_ptr(res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_COption_NetworkUpdateZDecodeErrorZ_Err extends Result_COption_NetworkUpdateZDecodeErrorZ { - public final DecodeError err; - private Result_COption_NetworkUpdateZDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_COption_NetworkUpdateZDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_COption_NetworkUpdateZDecodeErrorZ constructor_ok(Option_NetworkUpdateZ o) { - number ret = bindings.CResult_COption_NetworkUpdateZDecodeErrorZ_ok(o.ptr); - Result_COption_NetworkUpdateZDecodeErrorZ ret_hu_conv = Result_COption_NetworkUpdateZDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_COption_NetworkUpdateZDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_COption_NetworkUpdateZDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_COption_NetworkUpdateZDecodeErrorZ ret_hu_conv = Result_COption_NetworkUpdateZDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_COption_NetworkUpdateZDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_COption_NetworkUpdateZDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_COption_NetworkUpdateZDecodeErrorZ clone() { - number ret = bindings.CResult_COption_NetworkUpdateZDecodeErrorZ_clone(this.ptr); - Result_COption_NetworkUpdateZDecodeErrorZ ret_hu_conv = Result_COption_NetworkUpdateZDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_COption_TypeZDecodeErrorZ.ts b/ts/structs/Result_COption_TypeZDecodeErrorZ.ts deleted file mode 100644 index 3207ea4f..00000000 --- a/ts/structs/Result_COption_TypeZDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_COption_TypeZDecodeErrorZ extends CommonBase { - private Result_COption_TypeZDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_COption_TypeZDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_COption_TypeZDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_COption_TypeZDecodeErrorZ_is_ok(ptr)) { - return new Result_COption_TypeZDecodeErrorZ_OK(null, ptr); - } else { - return new Result_COption_TypeZDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_COption_TypeZDecodeErrorZ_OK extends Result_COption_TypeZDecodeErrorZ { - public final Option_TypeZ res; - private Result_COption_TypeZDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_COption_TypeZDecodeErrorZ_get_ok(ptr); - Option_TypeZ res_hu_conv = Option_TypeZ.constr_from_ptr(res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_COption_TypeZDecodeErrorZ_Err extends Result_COption_TypeZDecodeErrorZ { - public final DecodeError err; - private Result_COption_TypeZDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_COption_TypeZDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_COption_TypeZDecodeErrorZ constructor_ok(Option_TypeZ o) { - number ret = bindings.CResult_COption_TypeZDecodeErrorZ_ok(o.ptr); - Result_COption_TypeZDecodeErrorZ ret_hu_conv = Result_COption_TypeZDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_COption_TypeZDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_COption_TypeZDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_COption_TypeZDecodeErrorZ ret_hu_conv = Result_COption_TypeZDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_COption_TypeZDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_COption_TypeZDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_COption_TypeZDecodeErrorZ clone() { - number ret = bindings.CResult_COption_TypeZDecodeErrorZ_clone(this.ptr); - Result_COption_TypeZDecodeErrorZ ret_hu_conv = Result_COption_TypeZDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ.ts b/ts/structs/Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ.ts deleted file mode 100644 index e211d81a..00000000 --- a/ts/structs/Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ.ts +++ /dev/null @@ -1,70 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ extends CommonBase { - private Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_free(ptr); } super.finalize(); - } - - static Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_is_ok(ptr)) { - return new Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_OK(null, ptr); - } else { - return new Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_Err(null, ptr); - } - } - public static final class Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_OK extends Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ { - public final TwoTuple_BlockHashChannelMonitorZ[] res; - private Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number[] res = bindings.LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_get_ok(ptr); - TwoTuple_BlockHashChannelMonitorZ[] res_conv_35_arr = new TwoTuple_BlockHashChannelMonitorZ[res.length]; - for (int j = 0; j < res.length; j++) { - number res_conv_35 = res[j]; - TwoTuple_BlockHashChannelMonitorZ res_conv_35_hu_conv = new TwoTuple_BlockHashChannelMonitorZ(null, res_conv_35); - res_conv_35_hu_conv.ptrs_to.add(this); - res_conv_35_arr[j] = res_conv_35_hu_conv; - } - this.res = res_conv_35_arr; - } - } - - public static final class Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_Err extends Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ { - public final IOError err; - private Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - this.err = bindings.LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_get_err(ptr); - } - } - - public static Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ constructor_ok(TwoTuple_BlockHashChannelMonitorZ[] o) { - number ret = bindings.CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_ok(o != null ? Arrays.stream(o).map(o_conv_35 -> o_conv_35 != null ? o_conv_35.ptr : 0).toArray(number[]::new) : null); - Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ ret_hu_conv = Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ constructor_err(IOError e) { - number ret = bindings.CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_err(e); - Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ ret_hu_conv = Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ clone() { - number ret = bindings.CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_clone(this.ptr); - Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ ret_hu_conv = Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_CVec_CVec_u8ZZNoneZ.ts b/ts/structs/Result_CVec_CVec_u8ZZNoneZ.ts deleted file mode 100644 index 25385d11..00000000 --- a/ts/structs/Result_CVec_CVec_u8ZZNoneZ.ts +++ /dev/null @@ -1,60 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_CVec_CVec_u8ZZNoneZ extends CommonBase { - private Result_CVec_CVec_u8ZZNoneZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_CVec_CVec_u8ZZNoneZ_free(ptr); } super.finalize(); - } - - static Result_CVec_CVec_u8ZZNoneZ constr_from_ptr(long ptr) { - if (bindings.CResult_CVec_CVec_u8ZZNoneZ_is_ok(ptr)) { - return new Result_CVec_CVec_u8ZZNoneZ_OK(null, ptr); - } else { - return new Result_CVec_CVec_u8ZZNoneZ_Err(null, ptr); - } - } - public static final class Result_CVec_CVec_u8ZZNoneZ_OK extends Result_CVec_CVec_u8ZZNoneZ { - public final Uint8Array[] res; - private Result_CVec_CVec_u8ZZNoneZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - this.res = bindings.LDKCResult_CVec_CVec_u8ZZNoneZ_get_ok(ptr); - } - } - - public static final class Result_CVec_CVec_u8ZZNoneZ_Err extends Result_CVec_CVec_u8ZZNoneZ { - private Result_CVec_CVec_u8ZZNoneZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - } - } - - public static Result_CVec_CVec_u8ZZNoneZ constructor_ok(Uint8Array[] o) { - number ret = bindings.CResult_CVec_CVec_u8ZZNoneZ_ok(o); - Result_CVec_CVec_u8ZZNoneZ ret_hu_conv = Result_CVec_CVec_u8ZZNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_CVec_CVec_u8ZZNoneZ constructor_err() { - number ret = bindings.CResult_CVec_CVec_u8ZZNoneZ_err(); - Result_CVec_CVec_u8ZZNoneZ ret_hu_conv = Result_CVec_CVec_u8ZZNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_CVec_CVec_u8ZZNoneZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(this.ptr); - return ret; - } - - public Result_CVec_CVec_u8ZZNoneZ clone() { - number ret = bindings.CResult_CVec_CVec_u8ZZNoneZ_clone(this.ptr); - Result_CVec_CVec_u8ZZNoneZ ret_hu_conv = Result_CVec_CVec_u8ZZNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_CVec_SignatureZNoneZ.ts b/ts/structs/Result_CVec_SignatureZNoneZ.ts deleted file mode 100644 index bb526206..00000000 --- a/ts/structs/Result_CVec_SignatureZNoneZ.ts +++ /dev/null @@ -1,60 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_CVec_SignatureZNoneZ extends CommonBase { - private Result_CVec_SignatureZNoneZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_CVec_SignatureZNoneZ_free(ptr); } super.finalize(); - } - - static Result_CVec_SignatureZNoneZ constr_from_ptr(long ptr) { - if (bindings.CResult_CVec_SignatureZNoneZ_is_ok(ptr)) { - return new Result_CVec_SignatureZNoneZ_OK(null, ptr); - } else { - return new Result_CVec_SignatureZNoneZ_Err(null, ptr); - } - } - public static final class Result_CVec_SignatureZNoneZ_OK extends Result_CVec_SignatureZNoneZ { - public final Uint8Array[] res; - private Result_CVec_SignatureZNoneZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - this.res = bindings.LDKCResult_CVec_SignatureZNoneZ_get_ok(ptr); - } - } - - public static final class Result_CVec_SignatureZNoneZ_Err extends Result_CVec_SignatureZNoneZ { - private Result_CVec_SignatureZNoneZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - } - } - - public static Result_CVec_SignatureZNoneZ constructor_ok(Uint8Array[] o) { - number ret = bindings.CResult_CVec_SignatureZNoneZ_ok(o != null ? Arrays.stream(o).map(o_conv_12 -> InternalUtils.check_arr_len(o_conv_12, 64)).toArray(Uint8Array[]::new) : null); - Result_CVec_SignatureZNoneZ ret_hu_conv = Result_CVec_SignatureZNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_CVec_SignatureZNoneZ constructor_err() { - number ret = bindings.CResult_CVec_SignatureZNoneZ_err(); - Result_CVec_SignatureZNoneZ ret_hu_conv = Result_CVec_SignatureZNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_CVec_SignatureZNoneZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_CVec_SignatureZNoneZ_clone_ptr(this.ptr); - return ret; - } - - public Result_CVec_SignatureZNoneZ clone() { - number ret = bindings.CResult_CVec_SignatureZNoneZ_clone(this.ptr); - Result_CVec_SignatureZNoneZ ret_hu_conv = Result_CVec_SignatureZNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_CVec_u8ZPeerHandleErrorZ.ts b/ts/structs/Result_CVec_u8ZPeerHandleErrorZ.ts deleted file mode 100644 index e4ff80b4..00000000 --- a/ts/structs/Result_CVec_u8ZPeerHandleErrorZ.ts +++ /dev/null @@ -1,65 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_CVec_u8ZPeerHandleErrorZ extends CommonBase { - private Result_CVec_u8ZPeerHandleErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_CVec_u8ZPeerHandleErrorZ_free(ptr); } super.finalize(); - } - - static Result_CVec_u8ZPeerHandleErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_CVec_u8ZPeerHandleErrorZ_is_ok(ptr)) { - return new Result_CVec_u8ZPeerHandleErrorZ_OK(null, ptr); - } else { - return new Result_CVec_u8ZPeerHandleErrorZ_Err(null, ptr); - } - } - public static final class Result_CVec_u8ZPeerHandleErrorZ_OK extends Result_CVec_u8ZPeerHandleErrorZ { - public final Uint8Array res; - private Result_CVec_u8ZPeerHandleErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - this.res = bindings.LDKCResult_CVec_u8ZPeerHandleErrorZ_get_ok(ptr); - } - } - - public static final class Result_CVec_u8ZPeerHandleErrorZ_Err extends Result_CVec_u8ZPeerHandleErrorZ { - public final PeerHandleError err; - private Result_CVec_u8ZPeerHandleErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_CVec_u8ZPeerHandleErrorZ_get_err(ptr); - const err_hu_conv: PeerHandleError = new PeerHandleError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_CVec_u8ZPeerHandleErrorZ constructor_ok(Uint8Array o) { - number ret = bindings.CResult_CVec_u8ZPeerHandleErrorZ_ok(o); - Result_CVec_u8ZPeerHandleErrorZ ret_hu_conv = Result_CVec_u8ZPeerHandleErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_CVec_u8ZPeerHandleErrorZ constructor_err(PeerHandleError e) { - number ret = bindings.CResult_CVec_u8ZPeerHandleErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_CVec_u8ZPeerHandleErrorZ ret_hu_conv = Result_CVec_u8ZPeerHandleErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_CVec_u8ZPeerHandleErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_CVec_u8ZPeerHandleErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_CVec_u8ZPeerHandleErrorZ clone() { - number ret = bindings.CResult_CVec_u8ZPeerHandleErrorZ_clone(this.ptr); - Result_CVec_u8ZPeerHandleErrorZ ret_hu_conv = Result_CVec_u8ZPeerHandleErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_ChannelAnnouncementDecodeErrorZ.ts b/ts/structs/Result_ChannelAnnouncementDecodeErrorZ.ts deleted file mode 100644 index bc1cf7dc..00000000 --- a/ts/structs/Result_ChannelAnnouncementDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_ChannelAnnouncementDecodeErrorZ extends CommonBase { - private Result_ChannelAnnouncementDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_ChannelAnnouncementDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_ChannelAnnouncementDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_ChannelAnnouncementDecodeErrorZ_is_ok(ptr)) { - return new Result_ChannelAnnouncementDecodeErrorZ_OK(null, ptr); - } else { - return new Result_ChannelAnnouncementDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_ChannelAnnouncementDecodeErrorZ_OK extends Result_ChannelAnnouncementDecodeErrorZ { - public final ChannelAnnouncement res; - private Result_ChannelAnnouncementDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_ChannelAnnouncementDecodeErrorZ_get_ok(ptr); - const res_hu_conv: ChannelAnnouncement = new ChannelAnnouncement(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_ChannelAnnouncementDecodeErrorZ_Err extends Result_ChannelAnnouncementDecodeErrorZ { - public final DecodeError err; - private Result_ChannelAnnouncementDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_ChannelAnnouncementDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_ChannelAnnouncementDecodeErrorZ constructor_ok(ChannelAnnouncement o) { - number ret = bindings.CResult_ChannelAnnouncementDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_ChannelAnnouncementDecodeErrorZ ret_hu_conv = Result_ChannelAnnouncementDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_ChannelAnnouncementDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_ChannelAnnouncementDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_ChannelAnnouncementDecodeErrorZ ret_hu_conv = Result_ChannelAnnouncementDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_ChannelAnnouncementDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_ChannelAnnouncementDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_ChannelAnnouncementDecodeErrorZ clone() { - number ret = bindings.CResult_ChannelAnnouncementDecodeErrorZ_clone(this.ptr); - Result_ChannelAnnouncementDecodeErrorZ ret_hu_conv = Result_ChannelAnnouncementDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_ChannelConfigDecodeErrorZ.ts b/ts/structs/Result_ChannelConfigDecodeErrorZ.ts deleted file mode 100644 index ec5ec379..00000000 --- a/ts/structs/Result_ChannelConfigDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_ChannelConfigDecodeErrorZ extends CommonBase { - private Result_ChannelConfigDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_ChannelConfigDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_ChannelConfigDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_ChannelConfigDecodeErrorZ_is_ok(ptr)) { - return new Result_ChannelConfigDecodeErrorZ_OK(null, ptr); - } else { - return new Result_ChannelConfigDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_ChannelConfigDecodeErrorZ_OK extends Result_ChannelConfigDecodeErrorZ { - public final ChannelConfig res; - private Result_ChannelConfigDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_ChannelConfigDecodeErrorZ_get_ok(ptr); - const res_hu_conv: ChannelConfig = new ChannelConfig(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_ChannelConfigDecodeErrorZ_Err extends Result_ChannelConfigDecodeErrorZ { - public final DecodeError err; - private Result_ChannelConfigDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_ChannelConfigDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_ChannelConfigDecodeErrorZ constructor_ok(ChannelConfig o) { - number ret = bindings.CResult_ChannelConfigDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_ChannelConfigDecodeErrorZ ret_hu_conv = Result_ChannelConfigDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_ChannelConfigDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_ChannelConfigDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_ChannelConfigDecodeErrorZ ret_hu_conv = Result_ChannelConfigDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_ChannelConfigDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_ChannelConfigDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_ChannelConfigDecodeErrorZ clone() { - number ret = bindings.CResult_ChannelConfigDecodeErrorZ_clone(this.ptr); - Result_ChannelConfigDecodeErrorZ ret_hu_conv = Result_ChannelConfigDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_ChannelFeaturesDecodeErrorZ.ts b/ts/structs/Result_ChannelFeaturesDecodeErrorZ.ts deleted file mode 100644 index 7864a54d..00000000 --- a/ts/structs/Result_ChannelFeaturesDecodeErrorZ.ts +++ /dev/null @@ -1,57 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_ChannelFeaturesDecodeErrorZ extends CommonBase { - private Result_ChannelFeaturesDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_ChannelFeaturesDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_ChannelFeaturesDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_ChannelFeaturesDecodeErrorZ_is_ok(ptr)) { - return new Result_ChannelFeaturesDecodeErrorZ_OK(null, ptr); - } else { - return new Result_ChannelFeaturesDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_ChannelFeaturesDecodeErrorZ_OK extends Result_ChannelFeaturesDecodeErrorZ { - public final ChannelFeatures res; - private Result_ChannelFeaturesDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_ChannelFeaturesDecodeErrorZ_get_ok(ptr); - const res_hu_conv: ChannelFeatures = new ChannelFeatures(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_ChannelFeaturesDecodeErrorZ_Err extends Result_ChannelFeaturesDecodeErrorZ { - public final DecodeError err; - private Result_ChannelFeaturesDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_ChannelFeaturesDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_ChannelFeaturesDecodeErrorZ constructor_ok(ChannelFeatures o) { - number ret = bindings.CResult_ChannelFeaturesDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_ChannelFeaturesDecodeErrorZ ret_hu_conv = Result_ChannelFeaturesDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_ChannelFeaturesDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_ChannelFeaturesDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_ChannelFeaturesDecodeErrorZ ret_hu_conv = Result_ChannelFeaturesDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_ChannelFeaturesDecodeErrorZ_is_ok(this.ptr); - return ret; - } - -} diff --git a/ts/structs/Result_ChannelInfoDecodeErrorZ.ts b/ts/structs/Result_ChannelInfoDecodeErrorZ.ts deleted file mode 100644 index c8d36ecd..00000000 --- a/ts/structs/Result_ChannelInfoDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_ChannelInfoDecodeErrorZ extends CommonBase { - private Result_ChannelInfoDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_ChannelInfoDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_ChannelInfoDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_ChannelInfoDecodeErrorZ_is_ok(ptr)) { - return new Result_ChannelInfoDecodeErrorZ_OK(null, ptr); - } else { - return new Result_ChannelInfoDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_ChannelInfoDecodeErrorZ_OK extends Result_ChannelInfoDecodeErrorZ { - public final ChannelInfo res; - private Result_ChannelInfoDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_ChannelInfoDecodeErrorZ_get_ok(ptr); - const res_hu_conv: ChannelInfo = new ChannelInfo(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_ChannelInfoDecodeErrorZ_Err extends Result_ChannelInfoDecodeErrorZ { - public final DecodeError err; - private Result_ChannelInfoDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_ChannelInfoDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_ChannelInfoDecodeErrorZ constructor_ok(ChannelInfo o) { - number ret = bindings.CResult_ChannelInfoDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_ChannelInfoDecodeErrorZ ret_hu_conv = Result_ChannelInfoDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_ChannelInfoDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_ChannelInfoDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_ChannelInfoDecodeErrorZ ret_hu_conv = Result_ChannelInfoDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_ChannelInfoDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_ChannelInfoDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_ChannelInfoDecodeErrorZ clone() { - number ret = bindings.CResult_ChannelInfoDecodeErrorZ_clone(this.ptr); - Result_ChannelInfoDecodeErrorZ ret_hu_conv = Result_ChannelInfoDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_ChannelMonitorUpdateDecodeErrorZ.ts b/ts/structs/Result_ChannelMonitorUpdateDecodeErrorZ.ts deleted file mode 100644 index fedae20e..00000000 --- a/ts/structs/Result_ChannelMonitorUpdateDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_ChannelMonitorUpdateDecodeErrorZ extends CommonBase { - private Result_ChannelMonitorUpdateDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_ChannelMonitorUpdateDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_ChannelMonitorUpdateDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_ChannelMonitorUpdateDecodeErrorZ_is_ok(ptr)) { - return new Result_ChannelMonitorUpdateDecodeErrorZ_OK(null, ptr); - } else { - return new Result_ChannelMonitorUpdateDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_ChannelMonitorUpdateDecodeErrorZ_OK extends Result_ChannelMonitorUpdateDecodeErrorZ { - public final ChannelMonitorUpdate res; - private Result_ChannelMonitorUpdateDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_ChannelMonitorUpdateDecodeErrorZ_get_ok(ptr); - const res_hu_conv: ChannelMonitorUpdate = new ChannelMonitorUpdate(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_ChannelMonitorUpdateDecodeErrorZ_Err extends Result_ChannelMonitorUpdateDecodeErrorZ { - public final DecodeError err; - private Result_ChannelMonitorUpdateDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_ChannelMonitorUpdateDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_ChannelMonitorUpdateDecodeErrorZ constructor_ok(ChannelMonitorUpdate o) { - number ret = bindings.CResult_ChannelMonitorUpdateDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_ChannelMonitorUpdateDecodeErrorZ ret_hu_conv = Result_ChannelMonitorUpdateDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_ChannelMonitorUpdateDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_ChannelMonitorUpdateDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_ChannelMonitorUpdateDecodeErrorZ ret_hu_conv = Result_ChannelMonitorUpdateDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_ChannelMonitorUpdateDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_ChannelMonitorUpdateDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_ChannelMonitorUpdateDecodeErrorZ clone() { - number ret = bindings.CResult_ChannelMonitorUpdateDecodeErrorZ_clone(this.ptr); - Result_ChannelMonitorUpdateDecodeErrorZ ret_hu_conv = Result_ChannelMonitorUpdateDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_ChannelPublicKeysDecodeErrorZ.ts b/ts/structs/Result_ChannelPublicKeysDecodeErrorZ.ts deleted file mode 100644 index feccedd2..00000000 --- a/ts/structs/Result_ChannelPublicKeysDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_ChannelPublicKeysDecodeErrorZ extends CommonBase { - private Result_ChannelPublicKeysDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_ChannelPublicKeysDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_ChannelPublicKeysDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_ChannelPublicKeysDecodeErrorZ_is_ok(ptr)) { - return new Result_ChannelPublicKeysDecodeErrorZ_OK(null, ptr); - } else { - return new Result_ChannelPublicKeysDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_ChannelPublicKeysDecodeErrorZ_OK extends Result_ChannelPublicKeysDecodeErrorZ { - public final ChannelPublicKeys res; - private Result_ChannelPublicKeysDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_ChannelPublicKeysDecodeErrorZ_get_ok(ptr); - const res_hu_conv: ChannelPublicKeys = new ChannelPublicKeys(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_ChannelPublicKeysDecodeErrorZ_Err extends Result_ChannelPublicKeysDecodeErrorZ { - public final DecodeError err; - private Result_ChannelPublicKeysDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_ChannelPublicKeysDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_ChannelPublicKeysDecodeErrorZ constructor_ok(ChannelPublicKeys o) { - number ret = bindings.CResult_ChannelPublicKeysDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_ChannelPublicKeysDecodeErrorZ ret_hu_conv = Result_ChannelPublicKeysDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_ChannelPublicKeysDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_ChannelPublicKeysDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_ChannelPublicKeysDecodeErrorZ ret_hu_conv = Result_ChannelPublicKeysDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_ChannelPublicKeysDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_ChannelPublicKeysDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_ChannelPublicKeysDecodeErrorZ clone() { - number ret = bindings.CResult_ChannelPublicKeysDecodeErrorZ_clone(this.ptr); - Result_ChannelPublicKeysDecodeErrorZ ret_hu_conv = Result_ChannelPublicKeysDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_ChannelReestablishDecodeErrorZ.ts b/ts/structs/Result_ChannelReestablishDecodeErrorZ.ts deleted file mode 100644 index 32ad42de..00000000 --- a/ts/structs/Result_ChannelReestablishDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_ChannelReestablishDecodeErrorZ extends CommonBase { - private Result_ChannelReestablishDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_ChannelReestablishDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_ChannelReestablishDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_ChannelReestablishDecodeErrorZ_is_ok(ptr)) { - return new Result_ChannelReestablishDecodeErrorZ_OK(null, ptr); - } else { - return new Result_ChannelReestablishDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_ChannelReestablishDecodeErrorZ_OK extends Result_ChannelReestablishDecodeErrorZ { - public final ChannelReestablish res; - private Result_ChannelReestablishDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_ChannelReestablishDecodeErrorZ_get_ok(ptr); - const res_hu_conv: ChannelReestablish = new ChannelReestablish(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_ChannelReestablishDecodeErrorZ_Err extends Result_ChannelReestablishDecodeErrorZ { - public final DecodeError err; - private Result_ChannelReestablishDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_ChannelReestablishDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_ChannelReestablishDecodeErrorZ constructor_ok(ChannelReestablish o) { - number ret = bindings.CResult_ChannelReestablishDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_ChannelReestablishDecodeErrorZ ret_hu_conv = Result_ChannelReestablishDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_ChannelReestablishDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_ChannelReestablishDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_ChannelReestablishDecodeErrorZ ret_hu_conv = Result_ChannelReestablishDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_ChannelReestablishDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_ChannelReestablishDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_ChannelReestablishDecodeErrorZ clone() { - number ret = bindings.CResult_ChannelReestablishDecodeErrorZ_clone(this.ptr); - Result_ChannelReestablishDecodeErrorZ ret_hu_conv = Result_ChannelReestablishDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_ChannelTransactionParametersDecodeErrorZ.ts b/ts/structs/Result_ChannelTransactionParametersDecodeErrorZ.ts deleted file mode 100644 index a8151fa4..00000000 --- a/ts/structs/Result_ChannelTransactionParametersDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_ChannelTransactionParametersDecodeErrorZ extends CommonBase { - private Result_ChannelTransactionParametersDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_ChannelTransactionParametersDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_ChannelTransactionParametersDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_ChannelTransactionParametersDecodeErrorZ_is_ok(ptr)) { - return new Result_ChannelTransactionParametersDecodeErrorZ_OK(null, ptr); - } else { - return new Result_ChannelTransactionParametersDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_ChannelTransactionParametersDecodeErrorZ_OK extends Result_ChannelTransactionParametersDecodeErrorZ { - public final ChannelTransactionParameters res; - private Result_ChannelTransactionParametersDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_ChannelTransactionParametersDecodeErrorZ_get_ok(ptr); - const res_hu_conv: ChannelTransactionParameters = new ChannelTransactionParameters(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_ChannelTransactionParametersDecodeErrorZ_Err extends Result_ChannelTransactionParametersDecodeErrorZ { - public final DecodeError err; - private Result_ChannelTransactionParametersDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_ChannelTransactionParametersDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_ChannelTransactionParametersDecodeErrorZ constructor_ok(ChannelTransactionParameters o) { - number ret = bindings.CResult_ChannelTransactionParametersDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_ChannelTransactionParametersDecodeErrorZ ret_hu_conv = Result_ChannelTransactionParametersDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_ChannelTransactionParametersDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_ChannelTransactionParametersDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_ChannelTransactionParametersDecodeErrorZ ret_hu_conv = Result_ChannelTransactionParametersDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_ChannelTransactionParametersDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_ChannelTransactionParametersDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_ChannelTransactionParametersDecodeErrorZ clone() { - number ret = bindings.CResult_ChannelTransactionParametersDecodeErrorZ_clone(this.ptr); - Result_ChannelTransactionParametersDecodeErrorZ ret_hu_conv = Result_ChannelTransactionParametersDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_ChannelTypeFeaturesDecodeErrorZ.ts b/ts/structs/Result_ChannelTypeFeaturesDecodeErrorZ.ts deleted file mode 100644 index 5a202a52..00000000 --- a/ts/structs/Result_ChannelTypeFeaturesDecodeErrorZ.ts +++ /dev/null @@ -1,57 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_ChannelTypeFeaturesDecodeErrorZ extends CommonBase { - private Result_ChannelTypeFeaturesDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_ChannelTypeFeaturesDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_ChannelTypeFeaturesDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_ChannelTypeFeaturesDecodeErrorZ_is_ok(ptr)) { - return new Result_ChannelTypeFeaturesDecodeErrorZ_OK(null, ptr); - } else { - return new Result_ChannelTypeFeaturesDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_ChannelTypeFeaturesDecodeErrorZ_OK extends Result_ChannelTypeFeaturesDecodeErrorZ { - public final ChannelTypeFeatures res; - private Result_ChannelTypeFeaturesDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_ChannelTypeFeaturesDecodeErrorZ_get_ok(ptr); - const res_hu_conv: ChannelTypeFeatures = new ChannelTypeFeatures(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_ChannelTypeFeaturesDecodeErrorZ_Err extends Result_ChannelTypeFeaturesDecodeErrorZ { - public final DecodeError err; - private Result_ChannelTypeFeaturesDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_ChannelTypeFeaturesDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_ChannelTypeFeaturesDecodeErrorZ constructor_ok(ChannelTypeFeatures o) { - number ret = bindings.CResult_ChannelTypeFeaturesDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_ChannelTypeFeaturesDecodeErrorZ ret_hu_conv = Result_ChannelTypeFeaturesDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_ChannelTypeFeaturesDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_ChannelTypeFeaturesDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_ChannelTypeFeaturesDecodeErrorZ ret_hu_conv = Result_ChannelTypeFeaturesDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_ChannelTypeFeaturesDecodeErrorZ_is_ok(this.ptr); - return ret; - } - -} diff --git a/ts/structs/Result_ChannelUpdateDecodeErrorZ.ts b/ts/structs/Result_ChannelUpdateDecodeErrorZ.ts deleted file mode 100644 index 0ed98e4e..00000000 --- a/ts/structs/Result_ChannelUpdateDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_ChannelUpdateDecodeErrorZ extends CommonBase { - private Result_ChannelUpdateDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_ChannelUpdateDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_ChannelUpdateDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_ChannelUpdateDecodeErrorZ_is_ok(ptr)) { - return new Result_ChannelUpdateDecodeErrorZ_OK(null, ptr); - } else { - return new Result_ChannelUpdateDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_ChannelUpdateDecodeErrorZ_OK extends Result_ChannelUpdateDecodeErrorZ { - public final ChannelUpdate res; - private Result_ChannelUpdateDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_ChannelUpdateDecodeErrorZ_get_ok(ptr); - const res_hu_conv: ChannelUpdate = new ChannelUpdate(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_ChannelUpdateDecodeErrorZ_Err extends Result_ChannelUpdateDecodeErrorZ { - public final DecodeError err; - private Result_ChannelUpdateDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_ChannelUpdateDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_ChannelUpdateDecodeErrorZ constructor_ok(ChannelUpdate o) { - number ret = bindings.CResult_ChannelUpdateDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_ChannelUpdateDecodeErrorZ ret_hu_conv = Result_ChannelUpdateDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_ChannelUpdateDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_ChannelUpdateDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_ChannelUpdateDecodeErrorZ ret_hu_conv = Result_ChannelUpdateDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_ChannelUpdateDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_ChannelUpdateDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_ChannelUpdateDecodeErrorZ clone() { - number ret = bindings.CResult_ChannelUpdateDecodeErrorZ_clone(this.ptr); - Result_ChannelUpdateDecodeErrorZ ret_hu_conv = Result_ChannelUpdateDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_ClosingSignedDecodeErrorZ.ts b/ts/structs/Result_ClosingSignedDecodeErrorZ.ts deleted file mode 100644 index d3ab0794..00000000 --- a/ts/structs/Result_ClosingSignedDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_ClosingSignedDecodeErrorZ extends CommonBase { - private Result_ClosingSignedDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_ClosingSignedDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_ClosingSignedDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_ClosingSignedDecodeErrorZ_is_ok(ptr)) { - return new Result_ClosingSignedDecodeErrorZ_OK(null, ptr); - } else { - return new Result_ClosingSignedDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_ClosingSignedDecodeErrorZ_OK extends Result_ClosingSignedDecodeErrorZ { - public final ClosingSigned res; - private Result_ClosingSignedDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_ClosingSignedDecodeErrorZ_get_ok(ptr); - const res_hu_conv: ClosingSigned = new ClosingSigned(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_ClosingSignedDecodeErrorZ_Err extends Result_ClosingSignedDecodeErrorZ { - public final DecodeError err; - private Result_ClosingSignedDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_ClosingSignedDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_ClosingSignedDecodeErrorZ constructor_ok(ClosingSigned o) { - number ret = bindings.CResult_ClosingSignedDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_ClosingSignedDecodeErrorZ ret_hu_conv = Result_ClosingSignedDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_ClosingSignedDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_ClosingSignedDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_ClosingSignedDecodeErrorZ ret_hu_conv = Result_ClosingSignedDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_ClosingSignedDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_ClosingSignedDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_ClosingSignedDecodeErrorZ clone() { - number ret = bindings.CResult_ClosingSignedDecodeErrorZ_clone(this.ptr); - Result_ClosingSignedDecodeErrorZ ret_hu_conv = Result_ClosingSignedDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_ClosingSignedFeeRangeDecodeErrorZ.ts b/ts/structs/Result_ClosingSignedFeeRangeDecodeErrorZ.ts deleted file mode 100644 index bf3bc07b..00000000 --- a/ts/structs/Result_ClosingSignedFeeRangeDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_ClosingSignedFeeRangeDecodeErrorZ extends CommonBase { - private Result_ClosingSignedFeeRangeDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_ClosingSignedFeeRangeDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_ClosingSignedFeeRangeDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_ClosingSignedFeeRangeDecodeErrorZ_is_ok(ptr)) { - return new Result_ClosingSignedFeeRangeDecodeErrorZ_OK(null, ptr); - } else { - return new Result_ClosingSignedFeeRangeDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_ClosingSignedFeeRangeDecodeErrorZ_OK extends Result_ClosingSignedFeeRangeDecodeErrorZ { - public final ClosingSignedFeeRange res; - private Result_ClosingSignedFeeRangeDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_ClosingSignedFeeRangeDecodeErrorZ_get_ok(ptr); - const res_hu_conv: ClosingSignedFeeRange = new ClosingSignedFeeRange(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_ClosingSignedFeeRangeDecodeErrorZ_Err extends Result_ClosingSignedFeeRangeDecodeErrorZ { - public final DecodeError err; - private Result_ClosingSignedFeeRangeDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_ClosingSignedFeeRangeDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_ClosingSignedFeeRangeDecodeErrorZ constructor_ok(ClosingSignedFeeRange o) { - number ret = bindings.CResult_ClosingSignedFeeRangeDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_ClosingSignedFeeRangeDecodeErrorZ ret_hu_conv = Result_ClosingSignedFeeRangeDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_ClosingSignedFeeRangeDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_ClosingSignedFeeRangeDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_ClosingSignedFeeRangeDecodeErrorZ ret_hu_conv = Result_ClosingSignedFeeRangeDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_ClosingSignedFeeRangeDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_ClosingSignedFeeRangeDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_ClosingSignedFeeRangeDecodeErrorZ clone() { - number ret = bindings.CResult_ClosingSignedFeeRangeDecodeErrorZ_clone(this.ptr); - Result_ClosingSignedFeeRangeDecodeErrorZ ret_hu_conv = Result_ClosingSignedFeeRangeDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_CommitmentSignedDecodeErrorZ.ts b/ts/structs/Result_CommitmentSignedDecodeErrorZ.ts deleted file mode 100644 index 69ee5978..00000000 --- a/ts/structs/Result_CommitmentSignedDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_CommitmentSignedDecodeErrorZ extends CommonBase { - private Result_CommitmentSignedDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_CommitmentSignedDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_CommitmentSignedDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_CommitmentSignedDecodeErrorZ_is_ok(ptr)) { - return new Result_CommitmentSignedDecodeErrorZ_OK(null, ptr); - } else { - return new Result_CommitmentSignedDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_CommitmentSignedDecodeErrorZ_OK extends Result_CommitmentSignedDecodeErrorZ { - public final CommitmentSigned res; - private Result_CommitmentSignedDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_CommitmentSignedDecodeErrorZ_get_ok(ptr); - const res_hu_conv: CommitmentSigned = new CommitmentSigned(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_CommitmentSignedDecodeErrorZ_Err extends Result_CommitmentSignedDecodeErrorZ { - public final DecodeError err; - private Result_CommitmentSignedDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_CommitmentSignedDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_CommitmentSignedDecodeErrorZ constructor_ok(CommitmentSigned o) { - number ret = bindings.CResult_CommitmentSignedDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_CommitmentSignedDecodeErrorZ ret_hu_conv = Result_CommitmentSignedDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_CommitmentSignedDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_CommitmentSignedDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_CommitmentSignedDecodeErrorZ ret_hu_conv = Result_CommitmentSignedDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_CommitmentSignedDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_CommitmentSignedDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_CommitmentSignedDecodeErrorZ clone() { - number ret = bindings.CResult_CommitmentSignedDecodeErrorZ_clone(this.ptr); - Result_CommitmentSignedDecodeErrorZ ret_hu_conv = Result_CommitmentSignedDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_CommitmentTransactionDecodeErrorZ.ts b/ts/structs/Result_CommitmentTransactionDecodeErrorZ.ts deleted file mode 100644 index de0ee7c0..00000000 --- a/ts/structs/Result_CommitmentTransactionDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_CommitmentTransactionDecodeErrorZ extends CommonBase { - private Result_CommitmentTransactionDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_CommitmentTransactionDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_CommitmentTransactionDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_CommitmentTransactionDecodeErrorZ_is_ok(ptr)) { - return new Result_CommitmentTransactionDecodeErrorZ_OK(null, ptr); - } else { - return new Result_CommitmentTransactionDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_CommitmentTransactionDecodeErrorZ_OK extends Result_CommitmentTransactionDecodeErrorZ { - public final CommitmentTransaction res; - private Result_CommitmentTransactionDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_CommitmentTransactionDecodeErrorZ_get_ok(ptr); - const res_hu_conv: CommitmentTransaction = new CommitmentTransaction(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_CommitmentTransactionDecodeErrorZ_Err extends Result_CommitmentTransactionDecodeErrorZ { - public final DecodeError err; - private Result_CommitmentTransactionDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_CommitmentTransactionDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_CommitmentTransactionDecodeErrorZ constructor_ok(CommitmentTransaction o) { - number ret = bindings.CResult_CommitmentTransactionDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_CommitmentTransactionDecodeErrorZ ret_hu_conv = Result_CommitmentTransactionDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_CommitmentTransactionDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_CommitmentTransactionDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_CommitmentTransactionDecodeErrorZ ret_hu_conv = Result_CommitmentTransactionDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_CommitmentTransactionDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_CommitmentTransactionDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_CommitmentTransactionDecodeErrorZ clone() { - number ret = bindings.CResult_CommitmentTransactionDecodeErrorZ_clone(this.ptr); - Result_CommitmentTransactionDecodeErrorZ ret_hu_conv = Result_CommitmentTransactionDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_CounterpartyChannelTransactionParametersDecodeErrorZ.ts b/ts/structs/Result_CounterpartyChannelTransactionParametersDecodeErrorZ.ts deleted file mode 100644 index 2ba9e597..00000000 --- a/ts/structs/Result_CounterpartyChannelTransactionParametersDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_CounterpartyChannelTransactionParametersDecodeErrorZ extends CommonBase { - private Result_CounterpartyChannelTransactionParametersDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_CounterpartyChannelTransactionParametersDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_is_ok(ptr)) { - return new Result_CounterpartyChannelTransactionParametersDecodeErrorZ_OK(null, ptr); - } else { - return new Result_CounterpartyChannelTransactionParametersDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_CounterpartyChannelTransactionParametersDecodeErrorZ_OK extends Result_CounterpartyChannelTransactionParametersDecodeErrorZ { - public final CounterpartyChannelTransactionParameters res; - private Result_CounterpartyChannelTransactionParametersDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ_get_ok(ptr); - const res_hu_conv: CounterpartyChannelTransactionParameters = new CounterpartyChannelTransactionParameters(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_CounterpartyChannelTransactionParametersDecodeErrorZ_Err extends Result_CounterpartyChannelTransactionParametersDecodeErrorZ { - public final DecodeError err; - private Result_CounterpartyChannelTransactionParametersDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_CounterpartyChannelTransactionParametersDecodeErrorZ constructor_ok(CounterpartyChannelTransactionParameters o) { - number ret = bindings.CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_CounterpartyChannelTransactionParametersDecodeErrorZ ret_hu_conv = Result_CounterpartyChannelTransactionParametersDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_CounterpartyChannelTransactionParametersDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_CounterpartyChannelTransactionParametersDecodeErrorZ ret_hu_conv = Result_CounterpartyChannelTransactionParametersDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_CounterpartyChannelTransactionParametersDecodeErrorZ clone() { - number ret = bindings.CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_clone(this.ptr); - Result_CounterpartyChannelTransactionParametersDecodeErrorZ ret_hu_conv = Result_CounterpartyChannelTransactionParametersDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_DelayedPaymentOutputDescriptorDecodeErrorZ.ts b/ts/structs/Result_DelayedPaymentOutputDescriptorDecodeErrorZ.ts deleted file mode 100644 index 2a64ba03..00000000 --- a/ts/structs/Result_DelayedPaymentOutputDescriptorDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_DelayedPaymentOutputDescriptorDecodeErrorZ extends CommonBase { - private Result_DelayedPaymentOutputDescriptorDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_DelayedPaymentOutputDescriptorDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_is_ok(ptr)) { - return new Result_DelayedPaymentOutputDescriptorDecodeErrorZ_OK(null, ptr); - } else { - return new Result_DelayedPaymentOutputDescriptorDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_DelayedPaymentOutputDescriptorDecodeErrorZ_OK extends Result_DelayedPaymentOutputDescriptorDecodeErrorZ { - public final DelayedPaymentOutputDescriptor res; - private Result_DelayedPaymentOutputDescriptorDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ_get_ok(ptr); - const res_hu_conv: DelayedPaymentOutputDescriptor = new DelayedPaymentOutputDescriptor(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_DelayedPaymentOutputDescriptorDecodeErrorZ_Err extends Result_DelayedPaymentOutputDescriptorDecodeErrorZ { - public final DecodeError err; - private Result_DelayedPaymentOutputDescriptorDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_DelayedPaymentOutputDescriptorDecodeErrorZ constructor_ok(DelayedPaymentOutputDescriptor o) { - number ret = bindings.CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_DelayedPaymentOutputDescriptorDecodeErrorZ ret_hu_conv = Result_DelayedPaymentOutputDescriptorDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_DelayedPaymentOutputDescriptorDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_DelayedPaymentOutputDescriptorDecodeErrorZ ret_hu_conv = Result_DelayedPaymentOutputDescriptorDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_DelayedPaymentOutputDescriptorDecodeErrorZ clone() { - number ret = bindings.CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_clone(this.ptr); - Result_DelayedPaymentOutputDescriptorDecodeErrorZ ret_hu_conv = Result_DelayedPaymentOutputDescriptorDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_DescriptionCreationErrorZ.ts b/ts/structs/Result_DescriptionCreationErrorZ.ts deleted file mode 100644 index f68ac0f4..00000000 --- a/ts/structs/Result_DescriptionCreationErrorZ.ts +++ /dev/null @@ -1,65 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_DescriptionCreationErrorZ extends CommonBase { - private Result_DescriptionCreationErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_DescriptionCreationErrorZ_free(ptr); } super.finalize(); - } - - static Result_DescriptionCreationErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_DescriptionCreationErrorZ_is_ok(ptr)) { - return new Result_DescriptionCreationErrorZ_OK(null, ptr); - } else { - return new Result_DescriptionCreationErrorZ_Err(null, ptr); - } - } - public static final class Result_DescriptionCreationErrorZ_OK extends Result_DescriptionCreationErrorZ { - public final Description res; - private Result_DescriptionCreationErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_DescriptionCreationErrorZ_get_ok(ptr); - const res_hu_conv: Description = new Description(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_DescriptionCreationErrorZ_Err extends Result_DescriptionCreationErrorZ { - public final CreationError err; - private Result_DescriptionCreationErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - this.err = bindings.LDKCResult_DescriptionCreationErrorZ_get_err(ptr); - } - } - - public static Result_DescriptionCreationErrorZ constructor_ok(Description o) { - number ret = bindings.CResult_DescriptionCreationErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_DescriptionCreationErrorZ ret_hu_conv = Result_DescriptionCreationErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_DescriptionCreationErrorZ constructor_err(CreationError e) { - number ret = bindings.CResult_DescriptionCreationErrorZ_err(e); - Result_DescriptionCreationErrorZ ret_hu_conv = Result_DescriptionCreationErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_DescriptionCreationErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_DescriptionCreationErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_DescriptionCreationErrorZ clone() { - number ret = bindings.CResult_DescriptionCreationErrorZ_clone(this.ptr); - Result_DescriptionCreationErrorZ ret_hu_conv = Result_DescriptionCreationErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_DirectionalChannelInfoDecodeErrorZ.ts b/ts/structs/Result_DirectionalChannelInfoDecodeErrorZ.ts deleted file mode 100644 index 352ddcbe..00000000 --- a/ts/structs/Result_DirectionalChannelInfoDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_DirectionalChannelInfoDecodeErrorZ extends CommonBase { - private Result_DirectionalChannelInfoDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_DirectionalChannelInfoDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_DirectionalChannelInfoDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_DirectionalChannelInfoDecodeErrorZ_is_ok(ptr)) { - return new Result_DirectionalChannelInfoDecodeErrorZ_OK(null, ptr); - } else { - return new Result_DirectionalChannelInfoDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_DirectionalChannelInfoDecodeErrorZ_OK extends Result_DirectionalChannelInfoDecodeErrorZ { - public final DirectionalChannelInfo res; - private Result_DirectionalChannelInfoDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_DirectionalChannelInfoDecodeErrorZ_get_ok(ptr); - const res_hu_conv: DirectionalChannelInfo = new DirectionalChannelInfo(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_DirectionalChannelInfoDecodeErrorZ_Err extends Result_DirectionalChannelInfoDecodeErrorZ { - public final DecodeError err; - private Result_DirectionalChannelInfoDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_DirectionalChannelInfoDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_DirectionalChannelInfoDecodeErrorZ constructor_ok(DirectionalChannelInfo o) { - number ret = bindings.CResult_DirectionalChannelInfoDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_DirectionalChannelInfoDecodeErrorZ ret_hu_conv = Result_DirectionalChannelInfoDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_DirectionalChannelInfoDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_DirectionalChannelInfoDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_DirectionalChannelInfoDecodeErrorZ ret_hu_conv = Result_DirectionalChannelInfoDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_DirectionalChannelInfoDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_DirectionalChannelInfoDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_DirectionalChannelInfoDecodeErrorZ clone() { - number ret = bindings.CResult_DirectionalChannelInfoDecodeErrorZ_clone(this.ptr); - Result_DirectionalChannelInfoDecodeErrorZ ret_hu_conv = Result_DirectionalChannelInfoDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_ErrorMessageDecodeErrorZ.ts b/ts/structs/Result_ErrorMessageDecodeErrorZ.ts deleted file mode 100644 index 15912b08..00000000 --- a/ts/structs/Result_ErrorMessageDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_ErrorMessageDecodeErrorZ extends CommonBase { - private Result_ErrorMessageDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_ErrorMessageDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_ErrorMessageDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_ErrorMessageDecodeErrorZ_is_ok(ptr)) { - return new Result_ErrorMessageDecodeErrorZ_OK(null, ptr); - } else { - return new Result_ErrorMessageDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_ErrorMessageDecodeErrorZ_OK extends Result_ErrorMessageDecodeErrorZ { - public final ErrorMessage res; - private Result_ErrorMessageDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_ErrorMessageDecodeErrorZ_get_ok(ptr); - const res_hu_conv: ErrorMessage = new ErrorMessage(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_ErrorMessageDecodeErrorZ_Err extends Result_ErrorMessageDecodeErrorZ { - public final DecodeError err; - private Result_ErrorMessageDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_ErrorMessageDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_ErrorMessageDecodeErrorZ constructor_ok(ErrorMessage o) { - number ret = bindings.CResult_ErrorMessageDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_ErrorMessageDecodeErrorZ ret_hu_conv = Result_ErrorMessageDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_ErrorMessageDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_ErrorMessageDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_ErrorMessageDecodeErrorZ ret_hu_conv = Result_ErrorMessageDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_ErrorMessageDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_ErrorMessageDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_ErrorMessageDecodeErrorZ clone() { - number ret = bindings.CResult_ErrorMessageDecodeErrorZ_clone(this.ptr); - Result_ErrorMessageDecodeErrorZ ret_hu_conv = Result_ErrorMessageDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_ExpiryTimeCreationErrorZ.ts b/ts/structs/Result_ExpiryTimeCreationErrorZ.ts deleted file mode 100644 index 6e62befd..00000000 --- a/ts/structs/Result_ExpiryTimeCreationErrorZ.ts +++ /dev/null @@ -1,65 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_ExpiryTimeCreationErrorZ extends CommonBase { - private Result_ExpiryTimeCreationErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_ExpiryTimeCreationErrorZ_free(ptr); } super.finalize(); - } - - static Result_ExpiryTimeCreationErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_ExpiryTimeCreationErrorZ_is_ok(ptr)) { - return new Result_ExpiryTimeCreationErrorZ_OK(null, ptr); - } else { - return new Result_ExpiryTimeCreationErrorZ_Err(null, ptr); - } - } - public static final class Result_ExpiryTimeCreationErrorZ_OK extends Result_ExpiryTimeCreationErrorZ { - public final ExpiryTime res; - private Result_ExpiryTimeCreationErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_ExpiryTimeCreationErrorZ_get_ok(ptr); - const res_hu_conv: ExpiryTime = new ExpiryTime(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_ExpiryTimeCreationErrorZ_Err extends Result_ExpiryTimeCreationErrorZ { - public final CreationError err; - private Result_ExpiryTimeCreationErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - this.err = bindings.LDKCResult_ExpiryTimeCreationErrorZ_get_err(ptr); - } - } - - public static Result_ExpiryTimeCreationErrorZ constructor_ok(ExpiryTime o) { - number ret = bindings.CResult_ExpiryTimeCreationErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_ExpiryTimeCreationErrorZ ret_hu_conv = Result_ExpiryTimeCreationErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_ExpiryTimeCreationErrorZ constructor_err(CreationError e) { - number ret = bindings.CResult_ExpiryTimeCreationErrorZ_err(e); - Result_ExpiryTimeCreationErrorZ ret_hu_conv = Result_ExpiryTimeCreationErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_ExpiryTimeCreationErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_ExpiryTimeCreationErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_ExpiryTimeCreationErrorZ clone() { - number ret = bindings.CResult_ExpiryTimeCreationErrorZ_clone(this.ptr); - Result_ExpiryTimeCreationErrorZ ret_hu_conv = Result_ExpiryTimeCreationErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_FundingCreatedDecodeErrorZ.ts b/ts/structs/Result_FundingCreatedDecodeErrorZ.ts deleted file mode 100644 index 07ab44e3..00000000 --- a/ts/structs/Result_FundingCreatedDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_FundingCreatedDecodeErrorZ extends CommonBase { - private Result_FundingCreatedDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_FundingCreatedDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_FundingCreatedDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_FundingCreatedDecodeErrorZ_is_ok(ptr)) { - return new Result_FundingCreatedDecodeErrorZ_OK(null, ptr); - } else { - return new Result_FundingCreatedDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_FundingCreatedDecodeErrorZ_OK extends Result_FundingCreatedDecodeErrorZ { - public final FundingCreated res; - private Result_FundingCreatedDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_FundingCreatedDecodeErrorZ_get_ok(ptr); - const res_hu_conv: FundingCreated = new FundingCreated(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_FundingCreatedDecodeErrorZ_Err extends Result_FundingCreatedDecodeErrorZ { - public final DecodeError err; - private Result_FundingCreatedDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_FundingCreatedDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_FundingCreatedDecodeErrorZ constructor_ok(FundingCreated o) { - number ret = bindings.CResult_FundingCreatedDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_FundingCreatedDecodeErrorZ ret_hu_conv = Result_FundingCreatedDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_FundingCreatedDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_FundingCreatedDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_FundingCreatedDecodeErrorZ ret_hu_conv = Result_FundingCreatedDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_FundingCreatedDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_FundingCreatedDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_FundingCreatedDecodeErrorZ clone() { - number ret = bindings.CResult_FundingCreatedDecodeErrorZ_clone(this.ptr); - Result_FundingCreatedDecodeErrorZ ret_hu_conv = Result_FundingCreatedDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_FundingLockedDecodeErrorZ.ts b/ts/structs/Result_FundingLockedDecodeErrorZ.ts deleted file mode 100644 index a2432d0c..00000000 --- a/ts/structs/Result_FundingLockedDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_FundingLockedDecodeErrorZ extends CommonBase { - private Result_FundingLockedDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_FundingLockedDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_FundingLockedDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_FundingLockedDecodeErrorZ_is_ok(ptr)) { - return new Result_FundingLockedDecodeErrorZ_OK(null, ptr); - } else { - return new Result_FundingLockedDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_FundingLockedDecodeErrorZ_OK extends Result_FundingLockedDecodeErrorZ { - public final FundingLocked res; - private Result_FundingLockedDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_FundingLockedDecodeErrorZ_get_ok(ptr); - const res_hu_conv: FundingLocked = new FundingLocked(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_FundingLockedDecodeErrorZ_Err extends Result_FundingLockedDecodeErrorZ { - public final DecodeError err; - private Result_FundingLockedDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_FundingLockedDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_FundingLockedDecodeErrorZ constructor_ok(FundingLocked o) { - number ret = bindings.CResult_FundingLockedDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_FundingLockedDecodeErrorZ ret_hu_conv = Result_FundingLockedDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_FundingLockedDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_FundingLockedDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_FundingLockedDecodeErrorZ ret_hu_conv = Result_FundingLockedDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_FundingLockedDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_FundingLockedDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_FundingLockedDecodeErrorZ clone() { - number ret = bindings.CResult_FundingLockedDecodeErrorZ_clone(this.ptr); - Result_FundingLockedDecodeErrorZ ret_hu_conv = Result_FundingLockedDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_FundingSignedDecodeErrorZ.ts b/ts/structs/Result_FundingSignedDecodeErrorZ.ts deleted file mode 100644 index 112ad99e..00000000 --- a/ts/structs/Result_FundingSignedDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_FundingSignedDecodeErrorZ extends CommonBase { - private Result_FundingSignedDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_FundingSignedDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_FundingSignedDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_FundingSignedDecodeErrorZ_is_ok(ptr)) { - return new Result_FundingSignedDecodeErrorZ_OK(null, ptr); - } else { - return new Result_FundingSignedDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_FundingSignedDecodeErrorZ_OK extends Result_FundingSignedDecodeErrorZ { - public final FundingSigned res; - private Result_FundingSignedDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_FundingSignedDecodeErrorZ_get_ok(ptr); - const res_hu_conv: FundingSigned = new FundingSigned(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_FundingSignedDecodeErrorZ_Err extends Result_FundingSignedDecodeErrorZ { - public final DecodeError err; - private Result_FundingSignedDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_FundingSignedDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_FundingSignedDecodeErrorZ constructor_ok(FundingSigned o) { - number ret = bindings.CResult_FundingSignedDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_FundingSignedDecodeErrorZ ret_hu_conv = Result_FundingSignedDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_FundingSignedDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_FundingSignedDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_FundingSignedDecodeErrorZ ret_hu_conv = Result_FundingSignedDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_FundingSignedDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_FundingSignedDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_FundingSignedDecodeErrorZ clone() { - number ret = bindings.CResult_FundingSignedDecodeErrorZ_clone(this.ptr); - Result_FundingSignedDecodeErrorZ ret_hu_conv = Result_FundingSignedDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_GossipTimestampFilterDecodeErrorZ.ts b/ts/structs/Result_GossipTimestampFilterDecodeErrorZ.ts deleted file mode 100644 index e867ead0..00000000 --- a/ts/structs/Result_GossipTimestampFilterDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_GossipTimestampFilterDecodeErrorZ extends CommonBase { - private Result_GossipTimestampFilterDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_GossipTimestampFilterDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_GossipTimestampFilterDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_GossipTimestampFilterDecodeErrorZ_is_ok(ptr)) { - return new Result_GossipTimestampFilterDecodeErrorZ_OK(null, ptr); - } else { - return new Result_GossipTimestampFilterDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_GossipTimestampFilterDecodeErrorZ_OK extends Result_GossipTimestampFilterDecodeErrorZ { - public final GossipTimestampFilter res; - private Result_GossipTimestampFilterDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_GossipTimestampFilterDecodeErrorZ_get_ok(ptr); - const res_hu_conv: GossipTimestampFilter = new GossipTimestampFilter(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_GossipTimestampFilterDecodeErrorZ_Err extends Result_GossipTimestampFilterDecodeErrorZ { - public final DecodeError err; - private Result_GossipTimestampFilterDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_GossipTimestampFilterDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_GossipTimestampFilterDecodeErrorZ constructor_ok(GossipTimestampFilter o) { - number ret = bindings.CResult_GossipTimestampFilterDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_GossipTimestampFilterDecodeErrorZ ret_hu_conv = Result_GossipTimestampFilterDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_GossipTimestampFilterDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_GossipTimestampFilterDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_GossipTimestampFilterDecodeErrorZ ret_hu_conv = Result_GossipTimestampFilterDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_GossipTimestampFilterDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_GossipTimestampFilterDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_GossipTimestampFilterDecodeErrorZ clone() { - number ret = bindings.CResult_GossipTimestampFilterDecodeErrorZ_clone(this.ptr); - Result_GossipTimestampFilterDecodeErrorZ ret_hu_conv = Result_GossipTimestampFilterDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_HTLCOutputInCommitmentDecodeErrorZ.ts b/ts/structs/Result_HTLCOutputInCommitmentDecodeErrorZ.ts deleted file mode 100644 index 8bcc7e12..00000000 --- a/ts/structs/Result_HTLCOutputInCommitmentDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_HTLCOutputInCommitmentDecodeErrorZ extends CommonBase { - private Result_HTLCOutputInCommitmentDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_HTLCOutputInCommitmentDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_HTLCOutputInCommitmentDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_HTLCOutputInCommitmentDecodeErrorZ_is_ok(ptr)) { - return new Result_HTLCOutputInCommitmentDecodeErrorZ_OK(null, ptr); - } else { - return new Result_HTLCOutputInCommitmentDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_HTLCOutputInCommitmentDecodeErrorZ_OK extends Result_HTLCOutputInCommitmentDecodeErrorZ { - public final HTLCOutputInCommitment res; - private Result_HTLCOutputInCommitmentDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_HTLCOutputInCommitmentDecodeErrorZ_get_ok(ptr); - const res_hu_conv: HTLCOutputInCommitment = new HTLCOutputInCommitment(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_HTLCOutputInCommitmentDecodeErrorZ_Err extends Result_HTLCOutputInCommitmentDecodeErrorZ { - public final DecodeError err; - private Result_HTLCOutputInCommitmentDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_HTLCOutputInCommitmentDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_HTLCOutputInCommitmentDecodeErrorZ constructor_ok(HTLCOutputInCommitment o) { - number ret = bindings.CResult_HTLCOutputInCommitmentDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_HTLCOutputInCommitmentDecodeErrorZ ret_hu_conv = Result_HTLCOutputInCommitmentDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_HTLCOutputInCommitmentDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_HTLCOutputInCommitmentDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_HTLCOutputInCommitmentDecodeErrorZ ret_hu_conv = Result_HTLCOutputInCommitmentDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_HTLCOutputInCommitmentDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_HTLCOutputInCommitmentDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_HTLCOutputInCommitmentDecodeErrorZ clone() { - number ret = bindings.CResult_HTLCOutputInCommitmentDecodeErrorZ_clone(this.ptr); - Result_HTLCOutputInCommitmentDecodeErrorZ ret_hu_conv = Result_HTLCOutputInCommitmentDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_HTLCUpdateDecodeErrorZ.ts b/ts/structs/Result_HTLCUpdateDecodeErrorZ.ts deleted file mode 100644 index e950edf0..00000000 --- a/ts/structs/Result_HTLCUpdateDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_HTLCUpdateDecodeErrorZ extends CommonBase { - private Result_HTLCUpdateDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_HTLCUpdateDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_HTLCUpdateDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_HTLCUpdateDecodeErrorZ_is_ok(ptr)) { - return new Result_HTLCUpdateDecodeErrorZ_OK(null, ptr); - } else { - return new Result_HTLCUpdateDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_HTLCUpdateDecodeErrorZ_OK extends Result_HTLCUpdateDecodeErrorZ { - public final HTLCUpdate res; - private Result_HTLCUpdateDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_HTLCUpdateDecodeErrorZ_get_ok(ptr); - const res_hu_conv: HTLCUpdate = new HTLCUpdate(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_HTLCUpdateDecodeErrorZ_Err extends Result_HTLCUpdateDecodeErrorZ { - public final DecodeError err; - private Result_HTLCUpdateDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_HTLCUpdateDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_HTLCUpdateDecodeErrorZ constructor_ok(HTLCUpdate o) { - number ret = bindings.CResult_HTLCUpdateDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_HTLCUpdateDecodeErrorZ ret_hu_conv = Result_HTLCUpdateDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_HTLCUpdateDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_HTLCUpdateDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_HTLCUpdateDecodeErrorZ ret_hu_conv = Result_HTLCUpdateDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_HTLCUpdateDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_HTLCUpdateDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_HTLCUpdateDecodeErrorZ clone() { - number ret = bindings.CResult_HTLCUpdateDecodeErrorZ_clone(this.ptr); - Result_HTLCUpdateDecodeErrorZ ret_hu_conv = Result_HTLCUpdateDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_HolderCommitmentTransactionDecodeErrorZ.ts b/ts/structs/Result_HolderCommitmentTransactionDecodeErrorZ.ts deleted file mode 100644 index 43266182..00000000 --- a/ts/structs/Result_HolderCommitmentTransactionDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_HolderCommitmentTransactionDecodeErrorZ extends CommonBase { - private Result_HolderCommitmentTransactionDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_HolderCommitmentTransactionDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_HolderCommitmentTransactionDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_HolderCommitmentTransactionDecodeErrorZ_is_ok(ptr)) { - return new Result_HolderCommitmentTransactionDecodeErrorZ_OK(null, ptr); - } else { - return new Result_HolderCommitmentTransactionDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_HolderCommitmentTransactionDecodeErrorZ_OK extends Result_HolderCommitmentTransactionDecodeErrorZ { - public final HolderCommitmentTransaction res; - private Result_HolderCommitmentTransactionDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_HolderCommitmentTransactionDecodeErrorZ_get_ok(ptr); - const res_hu_conv: HolderCommitmentTransaction = new HolderCommitmentTransaction(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_HolderCommitmentTransactionDecodeErrorZ_Err extends Result_HolderCommitmentTransactionDecodeErrorZ { - public final DecodeError err; - private Result_HolderCommitmentTransactionDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_HolderCommitmentTransactionDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_HolderCommitmentTransactionDecodeErrorZ constructor_ok(HolderCommitmentTransaction o) { - number ret = bindings.CResult_HolderCommitmentTransactionDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_HolderCommitmentTransactionDecodeErrorZ ret_hu_conv = Result_HolderCommitmentTransactionDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_HolderCommitmentTransactionDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_HolderCommitmentTransactionDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_HolderCommitmentTransactionDecodeErrorZ ret_hu_conv = Result_HolderCommitmentTransactionDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_HolderCommitmentTransactionDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_HolderCommitmentTransactionDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_HolderCommitmentTransactionDecodeErrorZ clone() { - number ret = bindings.CResult_HolderCommitmentTransactionDecodeErrorZ_clone(this.ptr); - Result_HolderCommitmentTransactionDecodeErrorZ ret_hu_conv = Result_HolderCommitmentTransactionDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_InMemorySignerDecodeErrorZ.ts b/ts/structs/Result_InMemorySignerDecodeErrorZ.ts deleted file mode 100644 index 15c4b734..00000000 --- a/ts/structs/Result_InMemorySignerDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_InMemorySignerDecodeErrorZ extends CommonBase { - private Result_InMemorySignerDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_InMemorySignerDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_InMemorySignerDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_InMemorySignerDecodeErrorZ_is_ok(ptr)) { - return new Result_InMemorySignerDecodeErrorZ_OK(null, ptr); - } else { - return new Result_InMemorySignerDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_InMemorySignerDecodeErrorZ_OK extends Result_InMemorySignerDecodeErrorZ { - public final InMemorySigner res; - private Result_InMemorySignerDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_InMemorySignerDecodeErrorZ_get_ok(ptr); - const res_hu_conv: InMemorySigner = new InMemorySigner(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_InMemorySignerDecodeErrorZ_Err extends Result_InMemorySignerDecodeErrorZ { - public final DecodeError err; - private Result_InMemorySignerDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_InMemorySignerDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_InMemorySignerDecodeErrorZ constructor_ok(InMemorySigner o) { - number ret = bindings.CResult_InMemorySignerDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_InMemorySignerDecodeErrorZ ret_hu_conv = Result_InMemorySignerDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_InMemorySignerDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_InMemorySignerDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_InMemorySignerDecodeErrorZ ret_hu_conv = Result_InMemorySignerDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_InMemorySignerDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_InMemorySignerDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_InMemorySignerDecodeErrorZ clone() { - number ret = bindings.CResult_InMemorySignerDecodeErrorZ_clone(this.ptr); - Result_InMemorySignerDecodeErrorZ ret_hu_conv = Result_InMemorySignerDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_InitDecodeErrorZ.ts b/ts/structs/Result_InitDecodeErrorZ.ts deleted file mode 100644 index ef549f0d..00000000 --- a/ts/structs/Result_InitDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_InitDecodeErrorZ extends CommonBase { - private Result_InitDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_InitDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_InitDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_InitDecodeErrorZ_is_ok(ptr)) { - return new Result_InitDecodeErrorZ_OK(null, ptr); - } else { - return new Result_InitDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_InitDecodeErrorZ_OK extends Result_InitDecodeErrorZ { - public final Init res; - private Result_InitDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_InitDecodeErrorZ_get_ok(ptr); - const res_hu_conv: Init = new Init(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_InitDecodeErrorZ_Err extends Result_InitDecodeErrorZ { - public final DecodeError err; - private Result_InitDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_InitDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_InitDecodeErrorZ constructor_ok(Init o) { - number ret = bindings.CResult_InitDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_InitDecodeErrorZ ret_hu_conv = Result_InitDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_InitDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_InitDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_InitDecodeErrorZ ret_hu_conv = Result_InitDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_InitDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_InitDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_InitDecodeErrorZ clone() { - number ret = bindings.CResult_InitDecodeErrorZ_clone(this.ptr); - Result_InitDecodeErrorZ ret_hu_conv = Result_InitDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_InitFeaturesDecodeErrorZ.ts b/ts/structs/Result_InitFeaturesDecodeErrorZ.ts deleted file mode 100644 index d3adc293..00000000 --- a/ts/structs/Result_InitFeaturesDecodeErrorZ.ts +++ /dev/null @@ -1,57 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_InitFeaturesDecodeErrorZ extends CommonBase { - private Result_InitFeaturesDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_InitFeaturesDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_InitFeaturesDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_InitFeaturesDecodeErrorZ_is_ok(ptr)) { - return new Result_InitFeaturesDecodeErrorZ_OK(null, ptr); - } else { - return new Result_InitFeaturesDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_InitFeaturesDecodeErrorZ_OK extends Result_InitFeaturesDecodeErrorZ { - public final InitFeatures res; - private Result_InitFeaturesDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_InitFeaturesDecodeErrorZ_get_ok(ptr); - const res_hu_conv: InitFeatures = new InitFeatures(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_InitFeaturesDecodeErrorZ_Err extends Result_InitFeaturesDecodeErrorZ { - public final DecodeError err; - private Result_InitFeaturesDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_InitFeaturesDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_InitFeaturesDecodeErrorZ constructor_ok(InitFeatures o) { - number ret = bindings.CResult_InitFeaturesDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_InitFeaturesDecodeErrorZ ret_hu_conv = Result_InitFeaturesDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_InitFeaturesDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_InitFeaturesDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_InitFeaturesDecodeErrorZ ret_hu_conv = Result_InitFeaturesDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_InitFeaturesDecodeErrorZ_is_ok(this.ptr); - return ret; - } - -} diff --git a/ts/structs/Result_InvoiceFeaturesDecodeErrorZ.ts b/ts/structs/Result_InvoiceFeaturesDecodeErrorZ.ts deleted file mode 100644 index e86d9137..00000000 --- a/ts/structs/Result_InvoiceFeaturesDecodeErrorZ.ts +++ /dev/null @@ -1,57 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_InvoiceFeaturesDecodeErrorZ extends CommonBase { - private Result_InvoiceFeaturesDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_InvoiceFeaturesDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_InvoiceFeaturesDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_InvoiceFeaturesDecodeErrorZ_is_ok(ptr)) { - return new Result_InvoiceFeaturesDecodeErrorZ_OK(null, ptr); - } else { - return new Result_InvoiceFeaturesDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_InvoiceFeaturesDecodeErrorZ_OK extends Result_InvoiceFeaturesDecodeErrorZ { - public final InvoiceFeatures res; - private Result_InvoiceFeaturesDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_InvoiceFeaturesDecodeErrorZ_get_ok(ptr); - const res_hu_conv: InvoiceFeatures = new InvoiceFeatures(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_InvoiceFeaturesDecodeErrorZ_Err extends Result_InvoiceFeaturesDecodeErrorZ { - public final DecodeError err; - private Result_InvoiceFeaturesDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_InvoiceFeaturesDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_InvoiceFeaturesDecodeErrorZ constructor_ok(InvoiceFeatures o) { - number ret = bindings.CResult_InvoiceFeaturesDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_InvoiceFeaturesDecodeErrorZ ret_hu_conv = Result_InvoiceFeaturesDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_InvoiceFeaturesDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_InvoiceFeaturesDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_InvoiceFeaturesDecodeErrorZ ret_hu_conv = Result_InvoiceFeaturesDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_InvoiceFeaturesDecodeErrorZ_is_ok(this.ptr); - return ret; - } - -} diff --git a/ts/structs/Result_InvoiceNoneZ.ts b/ts/structs/Result_InvoiceNoneZ.ts deleted file mode 100644 index 689e5caf..00000000 --- a/ts/structs/Result_InvoiceNoneZ.ts +++ /dev/null @@ -1,63 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_InvoiceNoneZ extends CommonBase { - private Result_InvoiceNoneZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_InvoiceNoneZ_free(ptr); } super.finalize(); - } - - static Result_InvoiceNoneZ constr_from_ptr(long ptr) { - if (bindings.CResult_InvoiceNoneZ_is_ok(ptr)) { - return new Result_InvoiceNoneZ_OK(null, ptr); - } else { - return new Result_InvoiceNoneZ_Err(null, ptr); - } - } - public static final class Result_InvoiceNoneZ_OK extends Result_InvoiceNoneZ { - public final Invoice res; - private Result_InvoiceNoneZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_InvoiceNoneZ_get_ok(ptr); - const res_hu_conv: Invoice = new Invoice(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_InvoiceNoneZ_Err extends Result_InvoiceNoneZ { - private Result_InvoiceNoneZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - } - } - - public static Result_InvoiceNoneZ constructor_ok(Invoice o) { - number ret = bindings.CResult_InvoiceNoneZ_ok(o == null ? 0 : o.ptr & ~1); - Result_InvoiceNoneZ ret_hu_conv = Result_InvoiceNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_InvoiceNoneZ constructor_err() { - number ret = bindings.CResult_InvoiceNoneZ_err(); - Result_InvoiceNoneZ ret_hu_conv = Result_InvoiceNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_InvoiceNoneZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_InvoiceNoneZ_clone_ptr(this.ptr); - return ret; - } - - public Result_InvoiceNoneZ clone() { - number ret = bindings.CResult_InvoiceNoneZ_clone(this.ptr); - Result_InvoiceNoneZ ret_hu_conv = Result_InvoiceNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_InvoiceSemanticErrorZ.ts b/ts/structs/Result_InvoiceSemanticErrorZ.ts deleted file mode 100644 index 86271c30..00000000 --- a/ts/structs/Result_InvoiceSemanticErrorZ.ts +++ /dev/null @@ -1,65 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_InvoiceSemanticErrorZ extends CommonBase { - private Result_InvoiceSemanticErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_InvoiceSemanticErrorZ_free(ptr); } super.finalize(); - } - - static Result_InvoiceSemanticErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_InvoiceSemanticErrorZ_is_ok(ptr)) { - return new Result_InvoiceSemanticErrorZ_OK(null, ptr); - } else { - return new Result_InvoiceSemanticErrorZ_Err(null, ptr); - } - } - public static final class Result_InvoiceSemanticErrorZ_OK extends Result_InvoiceSemanticErrorZ { - public final Invoice res; - private Result_InvoiceSemanticErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_InvoiceSemanticErrorZ_get_ok(ptr); - const res_hu_conv: Invoice = new Invoice(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_InvoiceSemanticErrorZ_Err extends Result_InvoiceSemanticErrorZ { - public final SemanticError err; - private Result_InvoiceSemanticErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - this.err = bindings.LDKCResult_InvoiceSemanticErrorZ_get_err(ptr); - } - } - - public static Result_InvoiceSemanticErrorZ constructor_ok(Invoice o) { - number ret = bindings.CResult_InvoiceSemanticErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_InvoiceSemanticErrorZ ret_hu_conv = Result_InvoiceSemanticErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_InvoiceSemanticErrorZ constructor_err(SemanticError e) { - number ret = bindings.CResult_InvoiceSemanticErrorZ_err(e); - Result_InvoiceSemanticErrorZ ret_hu_conv = Result_InvoiceSemanticErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_InvoiceSemanticErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_InvoiceSemanticErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_InvoiceSemanticErrorZ clone() { - number ret = bindings.CResult_InvoiceSemanticErrorZ_clone(this.ptr); - Result_InvoiceSemanticErrorZ ret_hu_conv = Result_InvoiceSemanticErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_InvoiceSignOrCreationErrorZ.ts b/ts/structs/Result_InvoiceSignOrCreationErrorZ.ts deleted file mode 100644 index c9e7ff57..00000000 --- a/ts/structs/Result_InvoiceSignOrCreationErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_InvoiceSignOrCreationErrorZ extends CommonBase { - private Result_InvoiceSignOrCreationErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_InvoiceSignOrCreationErrorZ_free(ptr); } super.finalize(); - } - - static Result_InvoiceSignOrCreationErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_InvoiceSignOrCreationErrorZ_is_ok(ptr)) { - return new Result_InvoiceSignOrCreationErrorZ_OK(null, ptr); - } else { - return new Result_InvoiceSignOrCreationErrorZ_Err(null, ptr); - } - } - public static final class Result_InvoiceSignOrCreationErrorZ_OK extends Result_InvoiceSignOrCreationErrorZ { - public final Invoice res; - private Result_InvoiceSignOrCreationErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_InvoiceSignOrCreationErrorZ_get_ok(ptr); - const res_hu_conv: Invoice = new Invoice(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_InvoiceSignOrCreationErrorZ_Err extends Result_InvoiceSignOrCreationErrorZ { - public final SignOrCreationError err; - private Result_InvoiceSignOrCreationErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_InvoiceSignOrCreationErrorZ_get_err(ptr); - SignOrCreationError err_hu_conv = SignOrCreationError.constr_from_ptr(err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_InvoiceSignOrCreationErrorZ constructor_ok(Invoice o) { - number ret = bindings.CResult_InvoiceSignOrCreationErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_InvoiceSignOrCreationErrorZ ret_hu_conv = Result_InvoiceSignOrCreationErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_InvoiceSignOrCreationErrorZ constructor_err(SignOrCreationError e) { - number ret = bindings.CResult_InvoiceSignOrCreationErrorZ_err(e.ptr); - Result_InvoiceSignOrCreationErrorZ ret_hu_conv = Result_InvoiceSignOrCreationErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_InvoiceSignOrCreationErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_InvoiceSignOrCreationErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_InvoiceSignOrCreationErrorZ clone() { - number ret = bindings.CResult_InvoiceSignOrCreationErrorZ_clone(this.ptr); - Result_InvoiceSignOrCreationErrorZ ret_hu_conv = Result_InvoiceSignOrCreationErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_LockedChannelMonitorNoneZ.ts b/ts/structs/Result_LockedChannelMonitorNoneZ.ts deleted file mode 100644 index 28eac649..00000000 --- a/ts/structs/Result_LockedChannelMonitorNoneZ.ts +++ /dev/null @@ -1,61 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_LockedChannelMonitorNoneZ extends CommonBase { - private Result_LockedChannelMonitorNoneZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_LockedChannelMonitorNoneZ_free(ptr); } super.finalize(); - } - - static Result_LockedChannelMonitorNoneZ constr_from_ptr(long ptr) { - if (bindings.CResult_LockedChannelMonitorNoneZ_is_ok(ptr)) { - return new Result_LockedChannelMonitorNoneZ_OK(null, ptr); - } else { - return new Result_LockedChannelMonitorNoneZ_Err(null, ptr); - } - } - public static final class Result_LockedChannelMonitorNoneZ_OK extends Result_LockedChannelMonitorNoneZ { - public final LockedChannelMonitor res; - private Result_LockedChannelMonitorNoneZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_LockedChannelMonitorNoneZ_get_ok(ptr); - const res_hu_conv: LockedChannelMonitor = new LockedChannelMonitor(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_LockedChannelMonitorNoneZ_Err extends Result_LockedChannelMonitorNoneZ { - private Result_LockedChannelMonitorNoneZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - } - } - - public static Result_LockedChannelMonitorNoneZ constructor_ok(LockedChannelMonitor o) { - number ret = bindings.CResult_LockedChannelMonitorNoneZ_ok(o == null ? 0 : o.ptr & ~1); - Result_LockedChannelMonitorNoneZ ret_hu_conv = Result_LockedChannelMonitorNoneZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(o); - // Due to rust's strict-ownership memory model, in some cases we need to "move" - // an object to pass exclusive ownership to the function being called. - // In most cases, we avoid ret_hu_conv being visible in GC'd languages by cloning the object - // at the FFI layer, creating a new object which Rust can claim ownership of - // However, in some cases (eg here), there is no way to clone an object, and thus - // we actually have to pass full ownership to Rust. - // Thus, after ret_hu_conv call, o is reset to null and is now a dummy object. - o.ptr = 0; - return ret_hu_conv; - } - - public static Result_LockedChannelMonitorNoneZ constructor_err() { - number ret = bindings.CResult_LockedChannelMonitorNoneZ_err(); - Result_LockedChannelMonitorNoneZ ret_hu_conv = Result_LockedChannelMonitorNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_LockedChannelMonitorNoneZ_is_ok(this.ptr); - return ret; - } - -} diff --git a/ts/structs/Result_NetAddressDecodeErrorZ.ts b/ts/structs/Result_NetAddressDecodeErrorZ.ts deleted file mode 100644 index 044797e4..00000000 --- a/ts/structs/Result_NetAddressDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_NetAddressDecodeErrorZ extends CommonBase { - private Result_NetAddressDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_NetAddressDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_NetAddressDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_NetAddressDecodeErrorZ_is_ok(ptr)) { - return new Result_NetAddressDecodeErrorZ_OK(null, ptr); - } else { - return new Result_NetAddressDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_NetAddressDecodeErrorZ_OK extends Result_NetAddressDecodeErrorZ { - public final NetAddress res; - private Result_NetAddressDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_NetAddressDecodeErrorZ_get_ok(ptr); - NetAddress res_hu_conv = NetAddress.constr_from_ptr(res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_NetAddressDecodeErrorZ_Err extends Result_NetAddressDecodeErrorZ { - public final DecodeError err; - private Result_NetAddressDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_NetAddressDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_NetAddressDecodeErrorZ constructor_ok(NetAddress o) { - number ret = bindings.CResult_NetAddressDecodeErrorZ_ok(o.ptr); - Result_NetAddressDecodeErrorZ ret_hu_conv = Result_NetAddressDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_NetAddressDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_NetAddressDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_NetAddressDecodeErrorZ ret_hu_conv = Result_NetAddressDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_NetAddressDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_NetAddressDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_NetAddressDecodeErrorZ clone() { - number ret = bindings.CResult_NetAddressDecodeErrorZ_clone(this.ptr); - Result_NetAddressDecodeErrorZ ret_hu_conv = Result_NetAddressDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_NetworkGraphDecodeErrorZ.ts b/ts/structs/Result_NetworkGraphDecodeErrorZ.ts deleted file mode 100644 index 11188415..00000000 --- a/ts/structs/Result_NetworkGraphDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_NetworkGraphDecodeErrorZ extends CommonBase { - private Result_NetworkGraphDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_NetworkGraphDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_NetworkGraphDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_NetworkGraphDecodeErrorZ_is_ok(ptr)) { - return new Result_NetworkGraphDecodeErrorZ_OK(null, ptr); - } else { - return new Result_NetworkGraphDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_NetworkGraphDecodeErrorZ_OK extends Result_NetworkGraphDecodeErrorZ { - public final NetworkGraph res; - private Result_NetworkGraphDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_NetworkGraphDecodeErrorZ_get_ok(ptr); - const res_hu_conv: NetworkGraph = new NetworkGraph(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_NetworkGraphDecodeErrorZ_Err extends Result_NetworkGraphDecodeErrorZ { - public final DecodeError err; - private Result_NetworkGraphDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_NetworkGraphDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_NetworkGraphDecodeErrorZ constructor_ok(NetworkGraph o) { - number ret = bindings.CResult_NetworkGraphDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_NetworkGraphDecodeErrorZ ret_hu_conv = Result_NetworkGraphDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_NetworkGraphDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_NetworkGraphDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_NetworkGraphDecodeErrorZ ret_hu_conv = Result_NetworkGraphDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_NetworkGraphDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_NetworkGraphDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_NetworkGraphDecodeErrorZ clone() { - number ret = bindings.CResult_NetworkGraphDecodeErrorZ_clone(this.ptr); - Result_NetworkGraphDecodeErrorZ ret_hu_conv = Result_NetworkGraphDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_NodeAnnouncementDecodeErrorZ.ts b/ts/structs/Result_NodeAnnouncementDecodeErrorZ.ts deleted file mode 100644 index aaab5e96..00000000 --- a/ts/structs/Result_NodeAnnouncementDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_NodeAnnouncementDecodeErrorZ extends CommonBase { - private Result_NodeAnnouncementDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_NodeAnnouncementDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_NodeAnnouncementDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_NodeAnnouncementDecodeErrorZ_is_ok(ptr)) { - return new Result_NodeAnnouncementDecodeErrorZ_OK(null, ptr); - } else { - return new Result_NodeAnnouncementDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_NodeAnnouncementDecodeErrorZ_OK extends Result_NodeAnnouncementDecodeErrorZ { - public final NodeAnnouncement res; - private Result_NodeAnnouncementDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_NodeAnnouncementDecodeErrorZ_get_ok(ptr); - const res_hu_conv: NodeAnnouncement = new NodeAnnouncement(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_NodeAnnouncementDecodeErrorZ_Err extends Result_NodeAnnouncementDecodeErrorZ { - public final DecodeError err; - private Result_NodeAnnouncementDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_NodeAnnouncementDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_NodeAnnouncementDecodeErrorZ constructor_ok(NodeAnnouncement o) { - number ret = bindings.CResult_NodeAnnouncementDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_NodeAnnouncementDecodeErrorZ ret_hu_conv = Result_NodeAnnouncementDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_NodeAnnouncementDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_NodeAnnouncementDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_NodeAnnouncementDecodeErrorZ ret_hu_conv = Result_NodeAnnouncementDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_NodeAnnouncementDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_NodeAnnouncementDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_NodeAnnouncementDecodeErrorZ clone() { - number ret = bindings.CResult_NodeAnnouncementDecodeErrorZ_clone(this.ptr); - Result_NodeAnnouncementDecodeErrorZ ret_hu_conv = Result_NodeAnnouncementDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_NodeAnnouncementInfoDecodeErrorZ.ts b/ts/structs/Result_NodeAnnouncementInfoDecodeErrorZ.ts deleted file mode 100644 index b8ee77f9..00000000 --- a/ts/structs/Result_NodeAnnouncementInfoDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_NodeAnnouncementInfoDecodeErrorZ extends CommonBase { - private Result_NodeAnnouncementInfoDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_NodeAnnouncementInfoDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_NodeAnnouncementInfoDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_NodeAnnouncementInfoDecodeErrorZ_is_ok(ptr)) { - return new Result_NodeAnnouncementInfoDecodeErrorZ_OK(null, ptr); - } else { - return new Result_NodeAnnouncementInfoDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_NodeAnnouncementInfoDecodeErrorZ_OK extends Result_NodeAnnouncementInfoDecodeErrorZ { - public final NodeAnnouncementInfo res; - private Result_NodeAnnouncementInfoDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_NodeAnnouncementInfoDecodeErrorZ_get_ok(ptr); - const res_hu_conv: NodeAnnouncementInfo = new NodeAnnouncementInfo(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_NodeAnnouncementInfoDecodeErrorZ_Err extends Result_NodeAnnouncementInfoDecodeErrorZ { - public final DecodeError err; - private Result_NodeAnnouncementInfoDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_NodeAnnouncementInfoDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_NodeAnnouncementInfoDecodeErrorZ constructor_ok(NodeAnnouncementInfo o) { - number ret = bindings.CResult_NodeAnnouncementInfoDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_NodeAnnouncementInfoDecodeErrorZ ret_hu_conv = Result_NodeAnnouncementInfoDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_NodeAnnouncementInfoDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_NodeAnnouncementInfoDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_NodeAnnouncementInfoDecodeErrorZ ret_hu_conv = Result_NodeAnnouncementInfoDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_NodeAnnouncementInfoDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_NodeAnnouncementInfoDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_NodeAnnouncementInfoDecodeErrorZ clone() { - number ret = bindings.CResult_NodeAnnouncementInfoDecodeErrorZ_clone(this.ptr); - Result_NodeAnnouncementInfoDecodeErrorZ ret_hu_conv = Result_NodeAnnouncementInfoDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_NodeFeaturesDecodeErrorZ.ts b/ts/structs/Result_NodeFeaturesDecodeErrorZ.ts deleted file mode 100644 index 64a8e638..00000000 --- a/ts/structs/Result_NodeFeaturesDecodeErrorZ.ts +++ /dev/null @@ -1,57 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_NodeFeaturesDecodeErrorZ extends CommonBase { - private Result_NodeFeaturesDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_NodeFeaturesDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_NodeFeaturesDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_NodeFeaturesDecodeErrorZ_is_ok(ptr)) { - return new Result_NodeFeaturesDecodeErrorZ_OK(null, ptr); - } else { - return new Result_NodeFeaturesDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_NodeFeaturesDecodeErrorZ_OK extends Result_NodeFeaturesDecodeErrorZ { - public final NodeFeatures res; - private Result_NodeFeaturesDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_NodeFeaturesDecodeErrorZ_get_ok(ptr); - const res_hu_conv: NodeFeatures = new NodeFeatures(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_NodeFeaturesDecodeErrorZ_Err extends Result_NodeFeaturesDecodeErrorZ { - public final DecodeError err; - private Result_NodeFeaturesDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_NodeFeaturesDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_NodeFeaturesDecodeErrorZ constructor_ok(NodeFeatures o) { - number ret = bindings.CResult_NodeFeaturesDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_NodeFeaturesDecodeErrorZ ret_hu_conv = Result_NodeFeaturesDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_NodeFeaturesDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_NodeFeaturesDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_NodeFeaturesDecodeErrorZ ret_hu_conv = Result_NodeFeaturesDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_NodeFeaturesDecodeErrorZ_is_ok(this.ptr); - return ret; - } - -} diff --git a/ts/structs/Result_NodeIdDecodeErrorZ.ts b/ts/structs/Result_NodeIdDecodeErrorZ.ts deleted file mode 100644 index 5fb82dc3..00000000 --- a/ts/structs/Result_NodeIdDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_NodeIdDecodeErrorZ extends CommonBase { - private Result_NodeIdDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_NodeIdDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_NodeIdDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_NodeIdDecodeErrorZ_is_ok(ptr)) { - return new Result_NodeIdDecodeErrorZ_OK(null, ptr); - } else { - return new Result_NodeIdDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_NodeIdDecodeErrorZ_OK extends Result_NodeIdDecodeErrorZ { - public final NodeId res; - private Result_NodeIdDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_NodeIdDecodeErrorZ_get_ok(ptr); - const res_hu_conv: NodeId = new NodeId(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_NodeIdDecodeErrorZ_Err extends Result_NodeIdDecodeErrorZ { - public final DecodeError err; - private Result_NodeIdDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_NodeIdDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_NodeIdDecodeErrorZ constructor_ok(NodeId o) { - number ret = bindings.CResult_NodeIdDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_NodeIdDecodeErrorZ ret_hu_conv = Result_NodeIdDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_NodeIdDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_NodeIdDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_NodeIdDecodeErrorZ ret_hu_conv = Result_NodeIdDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_NodeIdDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_NodeIdDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_NodeIdDecodeErrorZ clone() { - number ret = bindings.CResult_NodeIdDecodeErrorZ_clone(this.ptr); - Result_NodeIdDecodeErrorZ ret_hu_conv = Result_NodeIdDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_NodeInfoDecodeErrorZ.ts b/ts/structs/Result_NodeInfoDecodeErrorZ.ts deleted file mode 100644 index 3f785d25..00000000 --- a/ts/structs/Result_NodeInfoDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_NodeInfoDecodeErrorZ extends CommonBase { - private Result_NodeInfoDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_NodeInfoDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_NodeInfoDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_NodeInfoDecodeErrorZ_is_ok(ptr)) { - return new Result_NodeInfoDecodeErrorZ_OK(null, ptr); - } else { - return new Result_NodeInfoDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_NodeInfoDecodeErrorZ_OK extends Result_NodeInfoDecodeErrorZ { - public final NodeInfo res; - private Result_NodeInfoDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_NodeInfoDecodeErrorZ_get_ok(ptr); - const res_hu_conv: NodeInfo = new NodeInfo(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_NodeInfoDecodeErrorZ_Err extends Result_NodeInfoDecodeErrorZ { - public final DecodeError err; - private Result_NodeInfoDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_NodeInfoDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_NodeInfoDecodeErrorZ constructor_ok(NodeInfo o) { - number ret = bindings.CResult_NodeInfoDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_NodeInfoDecodeErrorZ ret_hu_conv = Result_NodeInfoDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_NodeInfoDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_NodeInfoDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_NodeInfoDecodeErrorZ ret_hu_conv = Result_NodeInfoDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_NodeInfoDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_NodeInfoDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_NodeInfoDecodeErrorZ clone() { - number ret = bindings.CResult_NodeInfoDecodeErrorZ_clone(this.ptr); - Result_NodeInfoDecodeErrorZ ret_hu_conv = Result_NodeInfoDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_NoneAPIErrorZ.ts b/ts/structs/Result_NoneAPIErrorZ.ts deleted file mode 100644 index 76b46084..00000000 --- a/ts/structs/Result_NoneAPIErrorZ.ts +++ /dev/null @@ -1,63 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_NoneAPIErrorZ extends CommonBase { - private Result_NoneAPIErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_NoneAPIErrorZ_free(ptr); } super.finalize(); - } - - static Result_NoneAPIErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_NoneAPIErrorZ_is_ok(ptr)) { - return new Result_NoneAPIErrorZ_OK(null, ptr); - } else { - return new Result_NoneAPIErrorZ_Err(null, ptr); - } - } - public static final class Result_NoneAPIErrorZ_OK extends Result_NoneAPIErrorZ { - private Result_NoneAPIErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - } - } - - public static final class Result_NoneAPIErrorZ_Err extends Result_NoneAPIErrorZ { - public final APIError err; - private Result_NoneAPIErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_NoneAPIErrorZ_get_err(ptr); - APIError err_hu_conv = APIError.constr_from_ptr(err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_NoneAPIErrorZ constructor_ok() { - number ret = bindings.CResult_NoneAPIErrorZ_ok(); - Result_NoneAPIErrorZ ret_hu_conv = Result_NoneAPIErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_NoneAPIErrorZ constructor_err(APIError e) { - number ret = bindings.CResult_NoneAPIErrorZ_err(e.ptr); - Result_NoneAPIErrorZ ret_hu_conv = Result_NoneAPIErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_NoneAPIErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_NoneAPIErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_NoneAPIErrorZ clone() { - number ret = bindings.CResult_NoneAPIErrorZ_clone(this.ptr); - Result_NoneAPIErrorZ ret_hu_conv = Result_NoneAPIErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_NoneChannelMonitorUpdateErrZ.ts b/ts/structs/Result_NoneChannelMonitorUpdateErrZ.ts deleted file mode 100644 index 3bfe878e..00000000 --- a/ts/structs/Result_NoneChannelMonitorUpdateErrZ.ts +++ /dev/null @@ -1,60 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_NoneChannelMonitorUpdateErrZ extends CommonBase { - private Result_NoneChannelMonitorUpdateErrZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_NoneChannelMonitorUpdateErrZ_free(ptr); } super.finalize(); - } - - static Result_NoneChannelMonitorUpdateErrZ constr_from_ptr(long ptr) { - if (bindings.CResult_NoneChannelMonitorUpdateErrZ_is_ok(ptr)) { - return new Result_NoneChannelMonitorUpdateErrZ_OK(null, ptr); - } else { - return new Result_NoneChannelMonitorUpdateErrZ_Err(null, ptr); - } - } - public static final class Result_NoneChannelMonitorUpdateErrZ_OK extends Result_NoneChannelMonitorUpdateErrZ { - private Result_NoneChannelMonitorUpdateErrZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - } - } - - public static final class Result_NoneChannelMonitorUpdateErrZ_Err extends Result_NoneChannelMonitorUpdateErrZ { - public final ChannelMonitorUpdateErr err; - private Result_NoneChannelMonitorUpdateErrZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - this.err = bindings.LDKCResult_NoneChannelMonitorUpdateErrZ_get_err(ptr); - } - } - - public static Result_NoneChannelMonitorUpdateErrZ constructor_ok() { - number ret = bindings.CResult_NoneChannelMonitorUpdateErrZ_ok(); - Result_NoneChannelMonitorUpdateErrZ ret_hu_conv = Result_NoneChannelMonitorUpdateErrZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_NoneChannelMonitorUpdateErrZ constructor_err(ChannelMonitorUpdateErr e) { - number ret = bindings.CResult_NoneChannelMonitorUpdateErrZ_err(e); - Result_NoneChannelMonitorUpdateErrZ ret_hu_conv = Result_NoneChannelMonitorUpdateErrZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_NoneChannelMonitorUpdateErrZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_NoneChannelMonitorUpdateErrZ_clone_ptr(this.ptr); - return ret; - } - - public Result_NoneChannelMonitorUpdateErrZ clone() { - number ret = bindings.CResult_NoneChannelMonitorUpdateErrZ_clone(this.ptr); - Result_NoneChannelMonitorUpdateErrZ ret_hu_conv = Result_NoneChannelMonitorUpdateErrZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_NoneErrorZ.ts b/ts/structs/Result_NoneErrorZ.ts deleted file mode 100644 index 7e8df21d..00000000 --- a/ts/structs/Result_NoneErrorZ.ts +++ /dev/null @@ -1,60 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_NoneErrorZ extends CommonBase { - private Result_NoneErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_NoneErrorZ_free(ptr); } super.finalize(); - } - - static Result_NoneErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_NoneErrorZ_is_ok(ptr)) { - return new Result_NoneErrorZ_OK(null, ptr); - } else { - return new Result_NoneErrorZ_Err(null, ptr); - } - } - public static final class Result_NoneErrorZ_OK extends Result_NoneErrorZ { - private Result_NoneErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - } - } - - public static final class Result_NoneErrorZ_Err extends Result_NoneErrorZ { - public final IOError err; - private Result_NoneErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - this.err = bindings.LDKCResult_NoneErrorZ_get_err(ptr); - } - } - - public static Result_NoneErrorZ constructor_ok() { - number ret = bindings.CResult_NoneErrorZ_ok(); - Result_NoneErrorZ ret_hu_conv = Result_NoneErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_NoneErrorZ constructor_err(IOError e) { - number ret = bindings.CResult_NoneErrorZ_err(e); - Result_NoneErrorZ ret_hu_conv = Result_NoneErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_NoneErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_NoneErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_NoneErrorZ clone() { - number ret = bindings.CResult_NoneErrorZ_clone(this.ptr); - Result_NoneErrorZ ret_hu_conv = Result_NoneErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_NoneLightningErrorZ.ts b/ts/structs/Result_NoneLightningErrorZ.ts deleted file mode 100644 index 8630f41a..00000000 --- a/ts/structs/Result_NoneLightningErrorZ.ts +++ /dev/null @@ -1,63 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_NoneLightningErrorZ extends CommonBase { - private Result_NoneLightningErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_NoneLightningErrorZ_free(ptr); } super.finalize(); - } - - static Result_NoneLightningErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_NoneLightningErrorZ_is_ok(ptr)) { - return new Result_NoneLightningErrorZ_OK(null, ptr); - } else { - return new Result_NoneLightningErrorZ_Err(null, ptr); - } - } - public static final class Result_NoneLightningErrorZ_OK extends Result_NoneLightningErrorZ { - private Result_NoneLightningErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - } - } - - public static final class Result_NoneLightningErrorZ_Err extends Result_NoneLightningErrorZ { - public final LightningError err; - private Result_NoneLightningErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_NoneLightningErrorZ_get_err(ptr); - const err_hu_conv: LightningError = new LightningError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_NoneLightningErrorZ constructor_ok() { - number ret = bindings.CResult_NoneLightningErrorZ_ok(); - Result_NoneLightningErrorZ ret_hu_conv = Result_NoneLightningErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_NoneLightningErrorZ constructor_err(LightningError e) { - number ret = bindings.CResult_NoneLightningErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_NoneLightningErrorZ ret_hu_conv = Result_NoneLightningErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_NoneLightningErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_NoneLightningErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_NoneLightningErrorZ clone() { - number ret = bindings.CResult_NoneLightningErrorZ_clone(this.ptr); - Result_NoneLightningErrorZ ret_hu_conv = Result_NoneLightningErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_NoneNoneZ.ts b/ts/structs/Result_NoneNoneZ.ts deleted file mode 100644 index 4beac56c..00000000 --- a/ts/structs/Result_NoneNoneZ.ts +++ /dev/null @@ -1,58 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_NoneNoneZ extends CommonBase { - private Result_NoneNoneZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_NoneNoneZ_free(ptr); } super.finalize(); - } - - static Result_NoneNoneZ constr_from_ptr(long ptr) { - if (bindings.CResult_NoneNoneZ_is_ok(ptr)) { - return new Result_NoneNoneZ_OK(null, ptr); - } else { - return new Result_NoneNoneZ_Err(null, ptr); - } - } - public static final class Result_NoneNoneZ_OK extends Result_NoneNoneZ { - private Result_NoneNoneZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - } - } - - public static final class Result_NoneNoneZ_Err extends Result_NoneNoneZ { - private Result_NoneNoneZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - } - } - - public static Result_NoneNoneZ constructor_ok() { - number ret = bindings.CResult_NoneNoneZ_ok(); - Result_NoneNoneZ ret_hu_conv = Result_NoneNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_NoneNoneZ constructor_err() { - number ret = bindings.CResult_NoneNoneZ_err(); - Result_NoneNoneZ ret_hu_conv = Result_NoneNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_NoneNoneZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_NoneNoneZ_clone_ptr(this.ptr); - return ret; - } - - public Result_NoneNoneZ clone() { - number ret = bindings.CResult_NoneNoneZ_clone(this.ptr); - Result_NoneNoneZ ret_hu_conv = Result_NoneNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_NonePaymentSendFailureZ.ts b/ts/structs/Result_NonePaymentSendFailureZ.ts deleted file mode 100644 index 73dd48e2..00000000 --- a/ts/structs/Result_NonePaymentSendFailureZ.ts +++ /dev/null @@ -1,63 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_NonePaymentSendFailureZ extends CommonBase { - private Result_NonePaymentSendFailureZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_NonePaymentSendFailureZ_free(ptr); } super.finalize(); - } - - static Result_NonePaymentSendFailureZ constr_from_ptr(long ptr) { - if (bindings.CResult_NonePaymentSendFailureZ_is_ok(ptr)) { - return new Result_NonePaymentSendFailureZ_OK(null, ptr); - } else { - return new Result_NonePaymentSendFailureZ_Err(null, ptr); - } - } - public static final class Result_NonePaymentSendFailureZ_OK extends Result_NonePaymentSendFailureZ { - private Result_NonePaymentSendFailureZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - } - } - - public static final class Result_NonePaymentSendFailureZ_Err extends Result_NonePaymentSendFailureZ { - public final PaymentSendFailure err; - private Result_NonePaymentSendFailureZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_NonePaymentSendFailureZ_get_err(ptr); - PaymentSendFailure err_hu_conv = PaymentSendFailure.constr_from_ptr(err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_NonePaymentSendFailureZ constructor_ok() { - number ret = bindings.CResult_NonePaymentSendFailureZ_ok(); - Result_NonePaymentSendFailureZ ret_hu_conv = Result_NonePaymentSendFailureZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_NonePaymentSendFailureZ constructor_err(PaymentSendFailure e) { - number ret = bindings.CResult_NonePaymentSendFailureZ_err(e.ptr); - Result_NonePaymentSendFailureZ ret_hu_conv = Result_NonePaymentSendFailureZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_NonePaymentSendFailureZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_NonePaymentSendFailureZ_clone_ptr(this.ptr); - return ret; - } - - public Result_NonePaymentSendFailureZ clone() { - number ret = bindings.CResult_NonePaymentSendFailureZ_clone(this.ptr); - Result_NonePaymentSendFailureZ ret_hu_conv = Result_NonePaymentSendFailureZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_NonePeerHandleErrorZ.ts b/ts/structs/Result_NonePeerHandleErrorZ.ts deleted file mode 100644 index 1da48f86..00000000 --- a/ts/structs/Result_NonePeerHandleErrorZ.ts +++ /dev/null @@ -1,63 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_NonePeerHandleErrorZ extends CommonBase { - private Result_NonePeerHandleErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_NonePeerHandleErrorZ_free(ptr); } super.finalize(); - } - - static Result_NonePeerHandleErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_NonePeerHandleErrorZ_is_ok(ptr)) { - return new Result_NonePeerHandleErrorZ_OK(null, ptr); - } else { - return new Result_NonePeerHandleErrorZ_Err(null, ptr); - } - } - public static final class Result_NonePeerHandleErrorZ_OK extends Result_NonePeerHandleErrorZ { - private Result_NonePeerHandleErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - } - } - - public static final class Result_NonePeerHandleErrorZ_Err extends Result_NonePeerHandleErrorZ { - public final PeerHandleError err; - private Result_NonePeerHandleErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_NonePeerHandleErrorZ_get_err(ptr); - const err_hu_conv: PeerHandleError = new PeerHandleError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_NonePeerHandleErrorZ constructor_ok() { - number ret = bindings.CResult_NonePeerHandleErrorZ_ok(); - Result_NonePeerHandleErrorZ ret_hu_conv = Result_NonePeerHandleErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_NonePeerHandleErrorZ constructor_err(PeerHandleError e) { - number ret = bindings.CResult_NonePeerHandleErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_NonePeerHandleErrorZ ret_hu_conv = Result_NonePeerHandleErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_NonePeerHandleErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_NonePeerHandleErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_NonePeerHandleErrorZ clone() { - number ret = bindings.CResult_NonePeerHandleErrorZ_clone(this.ptr); - Result_NonePeerHandleErrorZ ret_hu_conv = Result_NonePeerHandleErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_NoneSemanticErrorZ.ts b/ts/structs/Result_NoneSemanticErrorZ.ts deleted file mode 100644 index ec49cdb3..00000000 --- a/ts/structs/Result_NoneSemanticErrorZ.ts +++ /dev/null @@ -1,60 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_NoneSemanticErrorZ extends CommonBase { - private Result_NoneSemanticErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_NoneSemanticErrorZ_free(ptr); } super.finalize(); - } - - static Result_NoneSemanticErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_NoneSemanticErrorZ_is_ok(ptr)) { - return new Result_NoneSemanticErrorZ_OK(null, ptr); - } else { - return new Result_NoneSemanticErrorZ_Err(null, ptr); - } - } - public static final class Result_NoneSemanticErrorZ_OK extends Result_NoneSemanticErrorZ { - private Result_NoneSemanticErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - } - } - - public static final class Result_NoneSemanticErrorZ_Err extends Result_NoneSemanticErrorZ { - public final SemanticError err; - private Result_NoneSemanticErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - this.err = bindings.LDKCResult_NoneSemanticErrorZ_get_err(ptr); - } - } - - public static Result_NoneSemanticErrorZ constructor_ok() { - number ret = bindings.CResult_NoneSemanticErrorZ_ok(); - Result_NoneSemanticErrorZ ret_hu_conv = Result_NoneSemanticErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_NoneSemanticErrorZ constructor_err(SemanticError e) { - number ret = bindings.CResult_NoneSemanticErrorZ_err(e); - Result_NoneSemanticErrorZ ret_hu_conv = Result_NoneSemanticErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_NoneSemanticErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_NoneSemanticErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_NoneSemanticErrorZ clone() { - number ret = bindings.CResult_NoneSemanticErrorZ_clone(this.ptr); - Result_NoneSemanticErrorZ ret_hu_conv = Result_NoneSemanticErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_OpenChannelDecodeErrorZ.ts b/ts/structs/Result_OpenChannelDecodeErrorZ.ts deleted file mode 100644 index fa1c6389..00000000 --- a/ts/structs/Result_OpenChannelDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_OpenChannelDecodeErrorZ extends CommonBase { - private Result_OpenChannelDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_OpenChannelDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_OpenChannelDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_OpenChannelDecodeErrorZ_is_ok(ptr)) { - return new Result_OpenChannelDecodeErrorZ_OK(null, ptr); - } else { - return new Result_OpenChannelDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_OpenChannelDecodeErrorZ_OK extends Result_OpenChannelDecodeErrorZ { - public final OpenChannel res; - private Result_OpenChannelDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_OpenChannelDecodeErrorZ_get_ok(ptr); - const res_hu_conv: OpenChannel = new OpenChannel(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_OpenChannelDecodeErrorZ_Err extends Result_OpenChannelDecodeErrorZ { - public final DecodeError err; - private Result_OpenChannelDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_OpenChannelDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_OpenChannelDecodeErrorZ constructor_ok(OpenChannel o) { - number ret = bindings.CResult_OpenChannelDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_OpenChannelDecodeErrorZ ret_hu_conv = Result_OpenChannelDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_OpenChannelDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_OpenChannelDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_OpenChannelDecodeErrorZ ret_hu_conv = Result_OpenChannelDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_OpenChannelDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_OpenChannelDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_OpenChannelDecodeErrorZ clone() { - number ret = bindings.CResult_OpenChannelDecodeErrorZ_clone(this.ptr); - Result_OpenChannelDecodeErrorZ ret_hu_conv = Result_OpenChannelDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_OutPointDecodeErrorZ.ts b/ts/structs/Result_OutPointDecodeErrorZ.ts deleted file mode 100644 index 97099d7c..00000000 --- a/ts/structs/Result_OutPointDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_OutPointDecodeErrorZ extends CommonBase { - private Result_OutPointDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_OutPointDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_OutPointDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_OutPointDecodeErrorZ_is_ok(ptr)) { - return new Result_OutPointDecodeErrorZ_OK(null, ptr); - } else { - return new Result_OutPointDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_OutPointDecodeErrorZ_OK extends Result_OutPointDecodeErrorZ { - public final OutPoint res; - private Result_OutPointDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_OutPointDecodeErrorZ_get_ok(ptr); - const res_hu_conv: OutPoint = new OutPoint(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_OutPointDecodeErrorZ_Err extends Result_OutPointDecodeErrorZ { - public final DecodeError err; - private Result_OutPointDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_OutPointDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_OutPointDecodeErrorZ constructor_ok(OutPoint o) { - number ret = bindings.CResult_OutPointDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_OutPointDecodeErrorZ ret_hu_conv = Result_OutPointDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_OutPointDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_OutPointDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_OutPointDecodeErrorZ ret_hu_conv = Result_OutPointDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_OutPointDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_OutPointDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_OutPointDecodeErrorZ clone() { - number ret = bindings.CResult_OutPointDecodeErrorZ_clone(this.ptr); - Result_OutPointDecodeErrorZ ret_hu_conv = Result_OutPointDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_PayeeDecodeErrorZ.ts b/ts/structs/Result_PayeeDecodeErrorZ.ts deleted file mode 100644 index 4a1cf86d..00000000 --- a/ts/structs/Result_PayeeDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_PayeeDecodeErrorZ extends CommonBase { - private Result_PayeeDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_PayeeDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_PayeeDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_PayeeDecodeErrorZ_is_ok(ptr)) { - return new Result_PayeeDecodeErrorZ_OK(null, ptr); - } else { - return new Result_PayeeDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_PayeeDecodeErrorZ_OK extends Result_PayeeDecodeErrorZ { - public final Payee res; - private Result_PayeeDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_PayeeDecodeErrorZ_get_ok(ptr); - const res_hu_conv: Payee = new Payee(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_PayeeDecodeErrorZ_Err extends Result_PayeeDecodeErrorZ { - public final DecodeError err; - private Result_PayeeDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_PayeeDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_PayeeDecodeErrorZ constructor_ok(Payee o) { - number ret = bindings.CResult_PayeeDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_PayeeDecodeErrorZ ret_hu_conv = Result_PayeeDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_PayeeDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_PayeeDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_PayeeDecodeErrorZ ret_hu_conv = Result_PayeeDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_PayeeDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_PayeeDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_PayeeDecodeErrorZ clone() { - number ret = bindings.CResult_PayeeDecodeErrorZ_clone(this.ptr); - Result_PayeeDecodeErrorZ ret_hu_conv = Result_PayeeDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_PayeePubKeyErrorZ.ts b/ts/structs/Result_PayeePubKeyErrorZ.ts deleted file mode 100644 index 1a5c93cd..00000000 --- a/ts/structs/Result_PayeePubKeyErrorZ.ts +++ /dev/null @@ -1,65 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_PayeePubKeyErrorZ extends CommonBase { - private Result_PayeePubKeyErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_PayeePubKeyErrorZ_free(ptr); } super.finalize(); - } - - static Result_PayeePubKeyErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_PayeePubKeyErrorZ_is_ok(ptr)) { - return new Result_PayeePubKeyErrorZ_OK(null, ptr); - } else { - return new Result_PayeePubKeyErrorZ_Err(null, ptr); - } - } - public static final class Result_PayeePubKeyErrorZ_OK extends Result_PayeePubKeyErrorZ { - public final PayeePubKey res; - private Result_PayeePubKeyErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_PayeePubKeyErrorZ_get_ok(ptr); - const res_hu_conv: PayeePubKey = new PayeePubKey(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_PayeePubKeyErrorZ_Err extends Result_PayeePubKeyErrorZ { - public final Secp256k1Error err; - private Result_PayeePubKeyErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - this.err = bindings.LDKCResult_PayeePubKeyErrorZ_get_err(ptr); - } - } - - public static Result_PayeePubKeyErrorZ constructor_ok(PayeePubKey o) { - number ret = bindings.CResult_PayeePubKeyErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_PayeePubKeyErrorZ ret_hu_conv = Result_PayeePubKeyErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_PayeePubKeyErrorZ constructor_err(Secp256k1Error e) { - number ret = bindings.CResult_PayeePubKeyErrorZ_err(e); - Result_PayeePubKeyErrorZ ret_hu_conv = Result_PayeePubKeyErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_PayeePubKeyErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_PayeePubKeyErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_PayeePubKeyErrorZ clone() { - number ret = bindings.CResult_PayeePubKeyErrorZ_clone(this.ptr); - Result_PayeePubKeyErrorZ ret_hu_conv = Result_PayeePubKeyErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_PaymentIdPaymentErrorZ.ts b/ts/structs/Result_PaymentIdPaymentErrorZ.ts deleted file mode 100644 index 31efaae1..00000000 --- a/ts/structs/Result_PaymentIdPaymentErrorZ.ts +++ /dev/null @@ -1,65 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_PaymentIdPaymentErrorZ extends CommonBase { - private Result_PaymentIdPaymentErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_PaymentIdPaymentErrorZ_free(ptr); } super.finalize(); - } - - static Result_PaymentIdPaymentErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_PaymentIdPaymentErrorZ_is_ok(ptr)) { - return new Result_PaymentIdPaymentErrorZ_OK(null, ptr); - } else { - return new Result_PaymentIdPaymentErrorZ_Err(null, ptr); - } - } - public static final class Result_PaymentIdPaymentErrorZ_OK extends Result_PaymentIdPaymentErrorZ { - public final Uint8Array res; - private Result_PaymentIdPaymentErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - this.res = bindings.LDKCResult_PaymentIdPaymentErrorZ_get_ok(ptr); - } - } - - public static final class Result_PaymentIdPaymentErrorZ_Err extends Result_PaymentIdPaymentErrorZ { - public final PaymentError err; - private Result_PaymentIdPaymentErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_PaymentIdPaymentErrorZ_get_err(ptr); - PaymentError err_hu_conv = PaymentError.constr_from_ptr(err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_PaymentIdPaymentErrorZ constructor_ok(Uint8Array o) { - number ret = bindings.CResult_PaymentIdPaymentErrorZ_ok(InternalUtils.check_arr_len(o, 32)); - Result_PaymentIdPaymentErrorZ ret_hu_conv = Result_PaymentIdPaymentErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_PaymentIdPaymentErrorZ constructor_err(PaymentError e) { - number ret = bindings.CResult_PaymentIdPaymentErrorZ_err(e.ptr); - Result_PaymentIdPaymentErrorZ ret_hu_conv = Result_PaymentIdPaymentErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_PaymentIdPaymentErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_PaymentIdPaymentErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_PaymentIdPaymentErrorZ clone() { - number ret = bindings.CResult_PaymentIdPaymentErrorZ_clone(this.ptr); - Result_PaymentIdPaymentErrorZ ret_hu_conv = Result_PaymentIdPaymentErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_PaymentIdPaymentSendFailureZ.ts b/ts/structs/Result_PaymentIdPaymentSendFailureZ.ts deleted file mode 100644 index c1331d00..00000000 --- a/ts/structs/Result_PaymentIdPaymentSendFailureZ.ts +++ /dev/null @@ -1,65 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_PaymentIdPaymentSendFailureZ extends CommonBase { - private Result_PaymentIdPaymentSendFailureZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_PaymentIdPaymentSendFailureZ_free(ptr); } super.finalize(); - } - - static Result_PaymentIdPaymentSendFailureZ constr_from_ptr(long ptr) { - if (bindings.CResult_PaymentIdPaymentSendFailureZ_is_ok(ptr)) { - return new Result_PaymentIdPaymentSendFailureZ_OK(null, ptr); - } else { - return new Result_PaymentIdPaymentSendFailureZ_Err(null, ptr); - } - } - public static final class Result_PaymentIdPaymentSendFailureZ_OK extends Result_PaymentIdPaymentSendFailureZ { - public final Uint8Array res; - private Result_PaymentIdPaymentSendFailureZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - this.res = bindings.LDKCResult_PaymentIdPaymentSendFailureZ_get_ok(ptr); - } - } - - public static final class Result_PaymentIdPaymentSendFailureZ_Err extends Result_PaymentIdPaymentSendFailureZ { - public final PaymentSendFailure err; - private Result_PaymentIdPaymentSendFailureZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_PaymentIdPaymentSendFailureZ_get_err(ptr); - PaymentSendFailure err_hu_conv = PaymentSendFailure.constr_from_ptr(err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_PaymentIdPaymentSendFailureZ constructor_ok(Uint8Array o) { - number ret = bindings.CResult_PaymentIdPaymentSendFailureZ_ok(InternalUtils.check_arr_len(o, 32)); - Result_PaymentIdPaymentSendFailureZ ret_hu_conv = Result_PaymentIdPaymentSendFailureZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_PaymentIdPaymentSendFailureZ constructor_err(PaymentSendFailure e) { - number ret = bindings.CResult_PaymentIdPaymentSendFailureZ_err(e.ptr); - Result_PaymentIdPaymentSendFailureZ ret_hu_conv = Result_PaymentIdPaymentSendFailureZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_PaymentIdPaymentSendFailureZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_PaymentIdPaymentSendFailureZ_clone_ptr(this.ptr); - return ret; - } - - public Result_PaymentIdPaymentSendFailureZ clone() { - number ret = bindings.CResult_PaymentIdPaymentSendFailureZ_clone(this.ptr); - Result_PaymentIdPaymentSendFailureZ ret_hu_conv = Result_PaymentIdPaymentSendFailureZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_PaymentPreimageAPIErrorZ.ts b/ts/structs/Result_PaymentPreimageAPIErrorZ.ts deleted file mode 100644 index 88f80e1e..00000000 --- a/ts/structs/Result_PaymentPreimageAPIErrorZ.ts +++ /dev/null @@ -1,65 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_PaymentPreimageAPIErrorZ extends CommonBase { - private Result_PaymentPreimageAPIErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_PaymentPreimageAPIErrorZ_free(ptr); } super.finalize(); - } - - static Result_PaymentPreimageAPIErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_PaymentPreimageAPIErrorZ_is_ok(ptr)) { - return new Result_PaymentPreimageAPIErrorZ_OK(null, ptr); - } else { - return new Result_PaymentPreimageAPIErrorZ_Err(null, ptr); - } - } - public static final class Result_PaymentPreimageAPIErrorZ_OK extends Result_PaymentPreimageAPIErrorZ { - public final Uint8Array res; - private Result_PaymentPreimageAPIErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - this.res = bindings.LDKCResult_PaymentPreimageAPIErrorZ_get_ok(ptr); - } - } - - public static final class Result_PaymentPreimageAPIErrorZ_Err extends Result_PaymentPreimageAPIErrorZ { - public final APIError err; - private Result_PaymentPreimageAPIErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_PaymentPreimageAPIErrorZ_get_err(ptr); - APIError err_hu_conv = APIError.constr_from_ptr(err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_PaymentPreimageAPIErrorZ constructor_ok(Uint8Array o) { - number ret = bindings.CResult_PaymentPreimageAPIErrorZ_ok(InternalUtils.check_arr_len(o, 32)); - Result_PaymentPreimageAPIErrorZ ret_hu_conv = Result_PaymentPreimageAPIErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_PaymentPreimageAPIErrorZ constructor_err(APIError e) { - number ret = bindings.CResult_PaymentPreimageAPIErrorZ_err(e.ptr); - Result_PaymentPreimageAPIErrorZ ret_hu_conv = Result_PaymentPreimageAPIErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_PaymentPreimageAPIErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_PaymentPreimageAPIErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_PaymentPreimageAPIErrorZ clone() { - number ret = bindings.CResult_PaymentPreimageAPIErrorZ_clone(this.ptr); - Result_PaymentPreimageAPIErrorZ ret_hu_conv = Result_PaymentPreimageAPIErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_PaymentSecretAPIErrorZ.ts b/ts/structs/Result_PaymentSecretAPIErrorZ.ts deleted file mode 100644 index 906f575b..00000000 --- a/ts/structs/Result_PaymentSecretAPIErrorZ.ts +++ /dev/null @@ -1,65 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_PaymentSecretAPIErrorZ extends CommonBase { - private Result_PaymentSecretAPIErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_PaymentSecretAPIErrorZ_free(ptr); } super.finalize(); - } - - static Result_PaymentSecretAPIErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_PaymentSecretAPIErrorZ_is_ok(ptr)) { - return new Result_PaymentSecretAPIErrorZ_OK(null, ptr); - } else { - return new Result_PaymentSecretAPIErrorZ_Err(null, ptr); - } - } - public static final class Result_PaymentSecretAPIErrorZ_OK extends Result_PaymentSecretAPIErrorZ { - public final Uint8Array res; - private Result_PaymentSecretAPIErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - this.res = bindings.LDKCResult_PaymentSecretAPIErrorZ_get_ok(ptr); - } - } - - public static final class Result_PaymentSecretAPIErrorZ_Err extends Result_PaymentSecretAPIErrorZ { - public final APIError err; - private Result_PaymentSecretAPIErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_PaymentSecretAPIErrorZ_get_err(ptr); - APIError err_hu_conv = APIError.constr_from_ptr(err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_PaymentSecretAPIErrorZ constructor_ok(Uint8Array o) { - number ret = bindings.CResult_PaymentSecretAPIErrorZ_ok(InternalUtils.check_arr_len(o, 32)); - Result_PaymentSecretAPIErrorZ ret_hu_conv = Result_PaymentSecretAPIErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_PaymentSecretAPIErrorZ constructor_err(APIError e) { - number ret = bindings.CResult_PaymentSecretAPIErrorZ_err(e.ptr); - Result_PaymentSecretAPIErrorZ ret_hu_conv = Result_PaymentSecretAPIErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_PaymentSecretAPIErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_PaymentSecretAPIErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_PaymentSecretAPIErrorZ clone() { - number ret = bindings.CResult_PaymentSecretAPIErrorZ_clone(this.ptr); - Result_PaymentSecretAPIErrorZ ret_hu_conv = Result_PaymentSecretAPIErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_PaymentSecretNoneZ.ts b/ts/structs/Result_PaymentSecretNoneZ.ts deleted file mode 100644 index 6178ba63..00000000 --- a/ts/structs/Result_PaymentSecretNoneZ.ts +++ /dev/null @@ -1,60 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_PaymentSecretNoneZ extends CommonBase { - private Result_PaymentSecretNoneZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_PaymentSecretNoneZ_free(ptr); } super.finalize(); - } - - static Result_PaymentSecretNoneZ constr_from_ptr(long ptr) { - if (bindings.CResult_PaymentSecretNoneZ_is_ok(ptr)) { - return new Result_PaymentSecretNoneZ_OK(null, ptr); - } else { - return new Result_PaymentSecretNoneZ_Err(null, ptr); - } - } - public static final class Result_PaymentSecretNoneZ_OK extends Result_PaymentSecretNoneZ { - public final Uint8Array res; - private Result_PaymentSecretNoneZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - this.res = bindings.LDKCResult_PaymentSecretNoneZ_get_ok(ptr); - } - } - - public static final class Result_PaymentSecretNoneZ_Err extends Result_PaymentSecretNoneZ { - private Result_PaymentSecretNoneZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - } - } - - public static Result_PaymentSecretNoneZ constructor_ok(Uint8Array o) { - number ret = bindings.CResult_PaymentSecretNoneZ_ok(InternalUtils.check_arr_len(o, 32)); - Result_PaymentSecretNoneZ ret_hu_conv = Result_PaymentSecretNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_PaymentSecretNoneZ constructor_err() { - number ret = bindings.CResult_PaymentSecretNoneZ_err(); - Result_PaymentSecretNoneZ ret_hu_conv = Result_PaymentSecretNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_PaymentSecretNoneZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_PaymentSecretNoneZ_clone_ptr(this.ptr); - return ret; - } - - public Result_PaymentSecretNoneZ clone() { - number ret = bindings.CResult_PaymentSecretNoneZ_clone(this.ptr); - Result_PaymentSecretNoneZ ret_hu_conv = Result_PaymentSecretNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_PingDecodeErrorZ.ts b/ts/structs/Result_PingDecodeErrorZ.ts deleted file mode 100644 index 5351a3cb..00000000 --- a/ts/structs/Result_PingDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_PingDecodeErrorZ extends CommonBase { - private Result_PingDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_PingDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_PingDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_PingDecodeErrorZ_is_ok(ptr)) { - return new Result_PingDecodeErrorZ_OK(null, ptr); - } else { - return new Result_PingDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_PingDecodeErrorZ_OK extends Result_PingDecodeErrorZ { - public final Ping res; - private Result_PingDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_PingDecodeErrorZ_get_ok(ptr); - const res_hu_conv: Ping = new Ping(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_PingDecodeErrorZ_Err extends Result_PingDecodeErrorZ { - public final DecodeError err; - private Result_PingDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_PingDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_PingDecodeErrorZ constructor_ok(Ping o) { - number ret = bindings.CResult_PingDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_PingDecodeErrorZ ret_hu_conv = Result_PingDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_PingDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_PingDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_PingDecodeErrorZ ret_hu_conv = Result_PingDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_PingDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_PingDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_PingDecodeErrorZ clone() { - number ret = bindings.CResult_PingDecodeErrorZ_clone(this.ptr); - Result_PingDecodeErrorZ ret_hu_conv = Result_PingDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_PongDecodeErrorZ.ts b/ts/structs/Result_PongDecodeErrorZ.ts deleted file mode 100644 index 10a2eb71..00000000 --- a/ts/structs/Result_PongDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_PongDecodeErrorZ extends CommonBase { - private Result_PongDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_PongDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_PongDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_PongDecodeErrorZ_is_ok(ptr)) { - return new Result_PongDecodeErrorZ_OK(null, ptr); - } else { - return new Result_PongDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_PongDecodeErrorZ_OK extends Result_PongDecodeErrorZ { - public final Pong res; - private Result_PongDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_PongDecodeErrorZ_get_ok(ptr); - const res_hu_conv: Pong = new Pong(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_PongDecodeErrorZ_Err extends Result_PongDecodeErrorZ { - public final DecodeError err; - private Result_PongDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_PongDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_PongDecodeErrorZ constructor_ok(Pong o) { - number ret = bindings.CResult_PongDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_PongDecodeErrorZ ret_hu_conv = Result_PongDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_PongDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_PongDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_PongDecodeErrorZ ret_hu_conv = Result_PongDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_PongDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_PongDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_PongDecodeErrorZ clone() { - number ret = bindings.CResult_PongDecodeErrorZ_clone(this.ptr); - Result_PongDecodeErrorZ ret_hu_conv = Result_PongDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_PositiveTimestampCreationErrorZ.ts b/ts/structs/Result_PositiveTimestampCreationErrorZ.ts deleted file mode 100644 index 8d5dc048..00000000 --- a/ts/structs/Result_PositiveTimestampCreationErrorZ.ts +++ /dev/null @@ -1,65 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_PositiveTimestampCreationErrorZ extends CommonBase { - private Result_PositiveTimestampCreationErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_PositiveTimestampCreationErrorZ_free(ptr); } super.finalize(); - } - - static Result_PositiveTimestampCreationErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_PositiveTimestampCreationErrorZ_is_ok(ptr)) { - return new Result_PositiveTimestampCreationErrorZ_OK(null, ptr); - } else { - return new Result_PositiveTimestampCreationErrorZ_Err(null, ptr); - } - } - public static final class Result_PositiveTimestampCreationErrorZ_OK extends Result_PositiveTimestampCreationErrorZ { - public final PositiveTimestamp res; - private Result_PositiveTimestampCreationErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_PositiveTimestampCreationErrorZ_get_ok(ptr); - const res_hu_conv: PositiveTimestamp = new PositiveTimestamp(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_PositiveTimestampCreationErrorZ_Err extends Result_PositiveTimestampCreationErrorZ { - public final CreationError err; - private Result_PositiveTimestampCreationErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - this.err = bindings.LDKCResult_PositiveTimestampCreationErrorZ_get_err(ptr); - } - } - - public static Result_PositiveTimestampCreationErrorZ constructor_ok(PositiveTimestamp o) { - number ret = bindings.CResult_PositiveTimestampCreationErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_PositiveTimestampCreationErrorZ ret_hu_conv = Result_PositiveTimestampCreationErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_PositiveTimestampCreationErrorZ constructor_err(CreationError e) { - number ret = bindings.CResult_PositiveTimestampCreationErrorZ_err(e); - Result_PositiveTimestampCreationErrorZ ret_hu_conv = Result_PositiveTimestampCreationErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_PositiveTimestampCreationErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_PositiveTimestampCreationErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_PositiveTimestampCreationErrorZ clone() { - number ret = bindings.CResult_PositiveTimestampCreationErrorZ_clone(this.ptr); - Result_PositiveTimestampCreationErrorZ ret_hu_conv = Result_PositiveTimestampCreationErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_PrivateRouteCreationErrorZ.ts b/ts/structs/Result_PrivateRouteCreationErrorZ.ts deleted file mode 100644 index 4cfd7ba0..00000000 --- a/ts/structs/Result_PrivateRouteCreationErrorZ.ts +++ /dev/null @@ -1,65 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_PrivateRouteCreationErrorZ extends CommonBase { - private Result_PrivateRouteCreationErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_PrivateRouteCreationErrorZ_free(ptr); } super.finalize(); - } - - static Result_PrivateRouteCreationErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_PrivateRouteCreationErrorZ_is_ok(ptr)) { - return new Result_PrivateRouteCreationErrorZ_OK(null, ptr); - } else { - return new Result_PrivateRouteCreationErrorZ_Err(null, ptr); - } - } - public static final class Result_PrivateRouteCreationErrorZ_OK extends Result_PrivateRouteCreationErrorZ { - public final PrivateRoute res; - private Result_PrivateRouteCreationErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_PrivateRouteCreationErrorZ_get_ok(ptr); - const res_hu_conv: PrivateRoute = new PrivateRoute(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_PrivateRouteCreationErrorZ_Err extends Result_PrivateRouteCreationErrorZ { - public final CreationError err; - private Result_PrivateRouteCreationErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - this.err = bindings.LDKCResult_PrivateRouteCreationErrorZ_get_err(ptr); - } - } - - public static Result_PrivateRouteCreationErrorZ constructor_ok(PrivateRoute o) { - number ret = bindings.CResult_PrivateRouteCreationErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_PrivateRouteCreationErrorZ ret_hu_conv = Result_PrivateRouteCreationErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_PrivateRouteCreationErrorZ constructor_err(CreationError e) { - number ret = bindings.CResult_PrivateRouteCreationErrorZ_err(e); - Result_PrivateRouteCreationErrorZ ret_hu_conv = Result_PrivateRouteCreationErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_PrivateRouteCreationErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_PrivateRouteCreationErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_PrivateRouteCreationErrorZ clone() { - number ret = bindings.CResult_PrivateRouteCreationErrorZ_clone(this.ptr); - Result_PrivateRouteCreationErrorZ ret_hu_conv = Result_PrivateRouteCreationErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_PublicKeyErrorZ.ts b/ts/structs/Result_PublicKeyErrorZ.ts deleted file mode 100644 index 303de7b7..00000000 --- a/ts/structs/Result_PublicKeyErrorZ.ts +++ /dev/null @@ -1,62 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_PublicKeyErrorZ extends CommonBase { - private Result_PublicKeyErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_PublicKeyErrorZ_free(ptr); } super.finalize(); - } - - static Result_PublicKeyErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_PublicKeyErrorZ_is_ok(ptr)) { - return new Result_PublicKeyErrorZ_OK(null, ptr); - } else { - return new Result_PublicKeyErrorZ_Err(null, ptr); - } - } - public static final class Result_PublicKeyErrorZ_OK extends Result_PublicKeyErrorZ { - public final Uint8Array res; - private Result_PublicKeyErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - this.res = bindings.LDKCResult_PublicKeyErrorZ_get_ok(ptr); - } - } - - public static final class Result_PublicKeyErrorZ_Err extends Result_PublicKeyErrorZ { - public final Secp256k1Error err; - private Result_PublicKeyErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - this.err = bindings.LDKCResult_PublicKeyErrorZ_get_err(ptr); - } - } - - public static Result_PublicKeyErrorZ constructor_ok(Uint8Array o) { - number ret = bindings.CResult_PublicKeyErrorZ_ok(InternalUtils.check_arr_len(o, 33)); - Result_PublicKeyErrorZ ret_hu_conv = Result_PublicKeyErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_PublicKeyErrorZ constructor_err(Secp256k1Error e) { - number ret = bindings.CResult_PublicKeyErrorZ_err(e); - Result_PublicKeyErrorZ ret_hu_conv = Result_PublicKeyErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_PublicKeyErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_PublicKeyErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_PublicKeyErrorZ clone() { - number ret = bindings.CResult_PublicKeyErrorZ_clone(this.ptr); - Result_PublicKeyErrorZ ret_hu_conv = Result_PublicKeyErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_QueryChannelRangeDecodeErrorZ.ts b/ts/structs/Result_QueryChannelRangeDecodeErrorZ.ts deleted file mode 100644 index 77695698..00000000 --- a/ts/structs/Result_QueryChannelRangeDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_QueryChannelRangeDecodeErrorZ extends CommonBase { - private Result_QueryChannelRangeDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_QueryChannelRangeDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_QueryChannelRangeDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_QueryChannelRangeDecodeErrorZ_is_ok(ptr)) { - return new Result_QueryChannelRangeDecodeErrorZ_OK(null, ptr); - } else { - return new Result_QueryChannelRangeDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_QueryChannelRangeDecodeErrorZ_OK extends Result_QueryChannelRangeDecodeErrorZ { - public final QueryChannelRange res; - private Result_QueryChannelRangeDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_QueryChannelRangeDecodeErrorZ_get_ok(ptr); - const res_hu_conv: QueryChannelRange = new QueryChannelRange(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_QueryChannelRangeDecodeErrorZ_Err extends Result_QueryChannelRangeDecodeErrorZ { - public final DecodeError err; - private Result_QueryChannelRangeDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_QueryChannelRangeDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_QueryChannelRangeDecodeErrorZ constructor_ok(QueryChannelRange o) { - number ret = bindings.CResult_QueryChannelRangeDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_QueryChannelRangeDecodeErrorZ ret_hu_conv = Result_QueryChannelRangeDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_QueryChannelRangeDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_QueryChannelRangeDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_QueryChannelRangeDecodeErrorZ ret_hu_conv = Result_QueryChannelRangeDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_QueryChannelRangeDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_QueryChannelRangeDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_QueryChannelRangeDecodeErrorZ clone() { - number ret = bindings.CResult_QueryChannelRangeDecodeErrorZ_clone(this.ptr); - Result_QueryChannelRangeDecodeErrorZ ret_hu_conv = Result_QueryChannelRangeDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_QueryShortChannelIdsDecodeErrorZ.ts b/ts/structs/Result_QueryShortChannelIdsDecodeErrorZ.ts deleted file mode 100644 index 7df1f39a..00000000 --- a/ts/structs/Result_QueryShortChannelIdsDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_QueryShortChannelIdsDecodeErrorZ extends CommonBase { - private Result_QueryShortChannelIdsDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_QueryShortChannelIdsDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_QueryShortChannelIdsDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_QueryShortChannelIdsDecodeErrorZ_is_ok(ptr)) { - return new Result_QueryShortChannelIdsDecodeErrorZ_OK(null, ptr); - } else { - return new Result_QueryShortChannelIdsDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_QueryShortChannelIdsDecodeErrorZ_OK extends Result_QueryShortChannelIdsDecodeErrorZ { - public final QueryShortChannelIds res; - private Result_QueryShortChannelIdsDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_QueryShortChannelIdsDecodeErrorZ_get_ok(ptr); - const res_hu_conv: QueryShortChannelIds = new QueryShortChannelIds(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_QueryShortChannelIdsDecodeErrorZ_Err extends Result_QueryShortChannelIdsDecodeErrorZ { - public final DecodeError err; - private Result_QueryShortChannelIdsDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_QueryShortChannelIdsDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_QueryShortChannelIdsDecodeErrorZ constructor_ok(QueryShortChannelIds o) { - number ret = bindings.CResult_QueryShortChannelIdsDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_QueryShortChannelIdsDecodeErrorZ ret_hu_conv = Result_QueryShortChannelIdsDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_QueryShortChannelIdsDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_QueryShortChannelIdsDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_QueryShortChannelIdsDecodeErrorZ ret_hu_conv = Result_QueryShortChannelIdsDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_QueryShortChannelIdsDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_QueryShortChannelIdsDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_QueryShortChannelIdsDecodeErrorZ clone() { - number ret = bindings.CResult_QueryShortChannelIdsDecodeErrorZ_clone(this.ptr); - Result_QueryShortChannelIdsDecodeErrorZ ret_hu_conv = Result_QueryShortChannelIdsDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_RecoverableSignatureNoneZ.ts b/ts/structs/Result_RecoverableSignatureNoneZ.ts deleted file mode 100644 index 413ac731..00000000 --- a/ts/structs/Result_RecoverableSignatureNoneZ.ts +++ /dev/null @@ -1,60 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_RecoverableSignatureNoneZ extends CommonBase { - private Result_RecoverableSignatureNoneZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_RecoverableSignatureNoneZ_free(ptr); } super.finalize(); - } - - static Result_RecoverableSignatureNoneZ constr_from_ptr(long ptr) { - if (bindings.CResult_RecoverableSignatureNoneZ_is_ok(ptr)) { - return new Result_RecoverableSignatureNoneZ_OK(null, ptr); - } else { - return new Result_RecoverableSignatureNoneZ_Err(null, ptr); - } - } - public static final class Result_RecoverableSignatureNoneZ_OK extends Result_RecoverableSignatureNoneZ { - public final Uint8Array res; - private Result_RecoverableSignatureNoneZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - this.res = bindings.LDKCResult_RecoverableSignatureNoneZ_get_ok(ptr); - } - } - - public static final class Result_RecoverableSignatureNoneZ_Err extends Result_RecoverableSignatureNoneZ { - private Result_RecoverableSignatureNoneZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - } - } - - public static Result_RecoverableSignatureNoneZ constructor_ok(Uint8Array arg) { - number ret = bindings.CResult_RecoverableSignatureNoneZ_ok(InternalUtils.check_arr_len(arg, 68)); - Result_RecoverableSignatureNoneZ ret_hu_conv = Result_RecoverableSignatureNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_RecoverableSignatureNoneZ constructor_err() { - number ret = bindings.CResult_RecoverableSignatureNoneZ_err(); - Result_RecoverableSignatureNoneZ ret_hu_conv = Result_RecoverableSignatureNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_RecoverableSignatureNoneZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_RecoverableSignatureNoneZ_clone_ptr(this.ptr); - return ret; - } - - public Result_RecoverableSignatureNoneZ clone() { - number ret = bindings.CResult_RecoverableSignatureNoneZ_clone(this.ptr); - Result_RecoverableSignatureNoneZ ret_hu_conv = Result_RecoverableSignatureNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_ReplyChannelRangeDecodeErrorZ.ts b/ts/structs/Result_ReplyChannelRangeDecodeErrorZ.ts deleted file mode 100644 index b5af32a4..00000000 --- a/ts/structs/Result_ReplyChannelRangeDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_ReplyChannelRangeDecodeErrorZ extends CommonBase { - private Result_ReplyChannelRangeDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_ReplyChannelRangeDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_ReplyChannelRangeDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_ReplyChannelRangeDecodeErrorZ_is_ok(ptr)) { - return new Result_ReplyChannelRangeDecodeErrorZ_OK(null, ptr); - } else { - return new Result_ReplyChannelRangeDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_ReplyChannelRangeDecodeErrorZ_OK extends Result_ReplyChannelRangeDecodeErrorZ { - public final ReplyChannelRange res; - private Result_ReplyChannelRangeDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_ReplyChannelRangeDecodeErrorZ_get_ok(ptr); - const res_hu_conv: ReplyChannelRange = new ReplyChannelRange(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_ReplyChannelRangeDecodeErrorZ_Err extends Result_ReplyChannelRangeDecodeErrorZ { - public final DecodeError err; - private Result_ReplyChannelRangeDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_ReplyChannelRangeDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_ReplyChannelRangeDecodeErrorZ constructor_ok(ReplyChannelRange o) { - number ret = bindings.CResult_ReplyChannelRangeDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_ReplyChannelRangeDecodeErrorZ ret_hu_conv = Result_ReplyChannelRangeDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_ReplyChannelRangeDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_ReplyChannelRangeDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_ReplyChannelRangeDecodeErrorZ ret_hu_conv = Result_ReplyChannelRangeDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_ReplyChannelRangeDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_ReplyChannelRangeDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_ReplyChannelRangeDecodeErrorZ clone() { - number ret = bindings.CResult_ReplyChannelRangeDecodeErrorZ_clone(this.ptr); - Result_ReplyChannelRangeDecodeErrorZ ret_hu_conv = Result_ReplyChannelRangeDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_ReplyShortChannelIdsEndDecodeErrorZ.ts b/ts/structs/Result_ReplyShortChannelIdsEndDecodeErrorZ.ts deleted file mode 100644 index 94670382..00000000 --- a/ts/structs/Result_ReplyShortChannelIdsEndDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_ReplyShortChannelIdsEndDecodeErrorZ extends CommonBase { - private Result_ReplyShortChannelIdsEndDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_ReplyShortChannelIdsEndDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_ReplyShortChannelIdsEndDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_ReplyShortChannelIdsEndDecodeErrorZ_is_ok(ptr)) { - return new Result_ReplyShortChannelIdsEndDecodeErrorZ_OK(null, ptr); - } else { - return new Result_ReplyShortChannelIdsEndDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_ReplyShortChannelIdsEndDecodeErrorZ_OK extends Result_ReplyShortChannelIdsEndDecodeErrorZ { - public final ReplyShortChannelIdsEnd res; - private Result_ReplyShortChannelIdsEndDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ_get_ok(ptr); - const res_hu_conv: ReplyShortChannelIdsEnd = new ReplyShortChannelIdsEnd(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_ReplyShortChannelIdsEndDecodeErrorZ_Err extends Result_ReplyShortChannelIdsEndDecodeErrorZ { - public final DecodeError err; - private Result_ReplyShortChannelIdsEndDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_ReplyShortChannelIdsEndDecodeErrorZ constructor_ok(ReplyShortChannelIdsEnd o) { - number ret = bindings.CResult_ReplyShortChannelIdsEndDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_ReplyShortChannelIdsEndDecodeErrorZ ret_hu_conv = Result_ReplyShortChannelIdsEndDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_ReplyShortChannelIdsEndDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_ReplyShortChannelIdsEndDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_ReplyShortChannelIdsEndDecodeErrorZ ret_hu_conv = Result_ReplyShortChannelIdsEndDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_ReplyShortChannelIdsEndDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_ReplyShortChannelIdsEndDecodeErrorZ clone() { - number ret = bindings.CResult_ReplyShortChannelIdsEndDecodeErrorZ_clone(this.ptr); - Result_ReplyShortChannelIdsEndDecodeErrorZ ret_hu_conv = Result_ReplyShortChannelIdsEndDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_RevokeAndACKDecodeErrorZ.ts b/ts/structs/Result_RevokeAndACKDecodeErrorZ.ts deleted file mode 100644 index 7764c368..00000000 --- a/ts/structs/Result_RevokeAndACKDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_RevokeAndACKDecodeErrorZ extends CommonBase { - private Result_RevokeAndACKDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_RevokeAndACKDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_RevokeAndACKDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_RevokeAndACKDecodeErrorZ_is_ok(ptr)) { - return new Result_RevokeAndACKDecodeErrorZ_OK(null, ptr); - } else { - return new Result_RevokeAndACKDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_RevokeAndACKDecodeErrorZ_OK extends Result_RevokeAndACKDecodeErrorZ { - public final RevokeAndACK res; - private Result_RevokeAndACKDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_RevokeAndACKDecodeErrorZ_get_ok(ptr); - const res_hu_conv: RevokeAndACK = new RevokeAndACK(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_RevokeAndACKDecodeErrorZ_Err extends Result_RevokeAndACKDecodeErrorZ { - public final DecodeError err; - private Result_RevokeAndACKDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_RevokeAndACKDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_RevokeAndACKDecodeErrorZ constructor_ok(RevokeAndACK o) { - number ret = bindings.CResult_RevokeAndACKDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_RevokeAndACKDecodeErrorZ ret_hu_conv = Result_RevokeAndACKDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_RevokeAndACKDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_RevokeAndACKDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_RevokeAndACKDecodeErrorZ ret_hu_conv = Result_RevokeAndACKDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_RevokeAndACKDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_RevokeAndACKDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_RevokeAndACKDecodeErrorZ clone() { - number ret = bindings.CResult_RevokeAndACKDecodeErrorZ_clone(this.ptr); - Result_RevokeAndACKDecodeErrorZ ret_hu_conv = Result_RevokeAndACKDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_RouteDecodeErrorZ.ts b/ts/structs/Result_RouteDecodeErrorZ.ts deleted file mode 100644 index 99794ce4..00000000 --- a/ts/structs/Result_RouteDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_RouteDecodeErrorZ extends CommonBase { - private Result_RouteDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_RouteDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_RouteDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_RouteDecodeErrorZ_is_ok(ptr)) { - return new Result_RouteDecodeErrorZ_OK(null, ptr); - } else { - return new Result_RouteDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_RouteDecodeErrorZ_OK extends Result_RouteDecodeErrorZ { - public final Route res; - private Result_RouteDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_RouteDecodeErrorZ_get_ok(ptr); - const res_hu_conv: Route = new Route(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_RouteDecodeErrorZ_Err extends Result_RouteDecodeErrorZ { - public final DecodeError err; - private Result_RouteDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_RouteDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_RouteDecodeErrorZ constructor_ok(Route o) { - number ret = bindings.CResult_RouteDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_RouteDecodeErrorZ ret_hu_conv = Result_RouteDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_RouteDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_RouteDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_RouteDecodeErrorZ ret_hu_conv = Result_RouteDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_RouteDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_RouteDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_RouteDecodeErrorZ clone() { - number ret = bindings.CResult_RouteDecodeErrorZ_clone(this.ptr); - Result_RouteDecodeErrorZ ret_hu_conv = Result_RouteDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_RouteHintDecodeErrorZ.ts b/ts/structs/Result_RouteHintDecodeErrorZ.ts deleted file mode 100644 index 3b622713..00000000 --- a/ts/structs/Result_RouteHintDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_RouteHintDecodeErrorZ extends CommonBase { - private Result_RouteHintDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_RouteHintDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_RouteHintDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_RouteHintDecodeErrorZ_is_ok(ptr)) { - return new Result_RouteHintDecodeErrorZ_OK(null, ptr); - } else { - return new Result_RouteHintDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_RouteHintDecodeErrorZ_OK extends Result_RouteHintDecodeErrorZ { - public final RouteHint res; - private Result_RouteHintDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_RouteHintDecodeErrorZ_get_ok(ptr); - const res_hu_conv: RouteHint = new RouteHint(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_RouteHintDecodeErrorZ_Err extends Result_RouteHintDecodeErrorZ { - public final DecodeError err; - private Result_RouteHintDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_RouteHintDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_RouteHintDecodeErrorZ constructor_ok(RouteHint o) { - number ret = bindings.CResult_RouteHintDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_RouteHintDecodeErrorZ ret_hu_conv = Result_RouteHintDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_RouteHintDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_RouteHintDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_RouteHintDecodeErrorZ ret_hu_conv = Result_RouteHintDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_RouteHintDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_RouteHintDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_RouteHintDecodeErrorZ clone() { - number ret = bindings.CResult_RouteHintDecodeErrorZ_clone(this.ptr); - Result_RouteHintDecodeErrorZ ret_hu_conv = Result_RouteHintDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_RouteHintHopDecodeErrorZ.ts b/ts/structs/Result_RouteHintHopDecodeErrorZ.ts deleted file mode 100644 index 35c280c1..00000000 --- a/ts/structs/Result_RouteHintHopDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_RouteHintHopDecodeErrorZ extends CommonBase { - private Result_RouteHintHopDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_RouteHintHopDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_RouteHintHopDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_RouteHintHopDecodeErrorZ_is_ok(ptr)) { - return new Result_RouteHintHopDecodeErrorZ_OK(null, ptr); - } else { - return new Result_RouteHintHopDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_RouteHintHopDecodeErrorZ_OK extends Result_RouteHintHopDecodeErrorZ { - public final RouteHintHop res; - private Result_RouteHintHopDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_RouteHintHopDecodeErrorZ_get_ok(ptr); - const res_hu_conv: RouteHintHop = new RouteHintHop(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_RouteHintHopDecodeErrorZ_Err extends Result_RouteHintHopDecodeErrorZ { - public final DecodeError err; - private Result_RouteHintHopDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_RouteHintHopDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_RouteHintHopDecodeErrorZ constructor_ok(RouteHintHop o) { - number ret = bindings.CResult_RouteHintHopDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_RouteHintHopDecodeErrorZ ret_hu_conv = Result_RouteHintHopDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_RouteHintHopDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_RouteHintHopDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_RouteHintHopDecodeErrorZ ret_hu_conv = Result_RouteHintHopDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_RouteHintHopDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_RouteHintHopDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_RouteHintHopDecodeErrorZ clone() { - number ret = bindings.CResult_RouteHintHopDecodeErrorZ_clone(this.ptr); - Result_RouteHintHopDecodeErrorZ ret_hu_conv = Result_RouteHintHopDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_RouteHopDecodeErrorZ.ts b/ts/structs/Result_RouteHopDecodeErrorZ.ts deleted file mode 100644 index a4a3e329..00000000 --- a/ts/structs/Result_RouteHopDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_RouteHopDecodeErrorZ extends CommonBase { - private Result_RouteHopDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_RouteHopDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_RouteHopDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_RouteHopDecodeErrorZ_is_ok(ptr)) { - return new Result_RouteHopDecodeErrorZ_OK(null, ptr); - } else { - return new Result_RouteHopDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_RouteHopDecodeErrorZ_OK extends Result_RouteHopDecodeErrorZ { - public final RouteHop res; - private Result_RouteHopDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_RouteHopDecodeErrorZ_get_ok(ptr); - const res_hu_conv: RouteHop = new RouteHop(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_RouteHopDecodeErrorZ_Err extends Result_RouteHopDecodeErrorZ { - public final DecodeError err; - private Result_RouteHopDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_RouteHopDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_RouteHopDecodeErrorZ constructor_ok(RouteHop o) { - number ret = bindings.CResult_RouteHopDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_RouteHopDecodeErrorZ ret_hu_conv = Result_RouteHopDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_RouteHopDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_RouteHopDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_RouteHopDecodeErrorZ ret_hu_conv = Result_RouteHopDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_RouteHopDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_RouteHopDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_RouteHopDecodeErrorZ clone() { - number ret = bindings.CResult_RouteHopDecodeErrorZ_clone(this.ptr); - Result_RouteHopDecodeErrorZ ret_hu_conv = Result_RouteHopDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_RouteLightningErrorZ.ts b/ts/structs/Result_RouteLightningErrorZ.ts deleted file mode 100644 index 33dc74bf..00000000 --- a/ts/structs/Result_RouteLightningErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_RouteLightningErrorZ extends CommonBase { - private Result_RouteLightningErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_RouteLightningErrorZ_free(ptr); } super.finalize(); - } - - static Result_RouteLightningErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_RouteLightningErrorZ_is_ok(ptr)) { - return new Result_RouteLightningErrorZ_OK(null, ptr); - } else { - return new Result_RouteLightningErrorZ_Err(null, ptr); - } - } - public static final class Result_RouteLightningErrorZ_OK extends Result_RouteLightningErrorZ { - public final Route res; - private Result_RouteLightningErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_RouteLightningErrorZ_get_ok(ptr); - const res_hu_conv: Route = new Route(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_RouteLightningErrorZ_Err extends Result_RouteLightningErrorZ { - public final LightningError err; - private Result_RouteLightningErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_RouteLightningErrorZ_get_err(ptr); - const err_hu_conv: LightningError = new LightningError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_RouteLightningErrorZ constructor_ok(Route o) { - number ret = bindings.CResult_RouteLightningErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_RouteLightningErrorZ ret_hu_conv = Result_RouteLightningErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_RouteLightningErrorZ constructor_err(LightningError e) { - number ret = bindings.CResult_RouteLightningErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_RouteLightningErrorZ ret_hu_conv = Result_RouteLightningErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_RouteLightningErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_RouteLightningErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_RouteLightningErrorZ clone() { - number ret = bindings.CResult_RouteLightningErrorZ_clone(this.ptr); - Result_RouteLightningErrorZ ret_hu_conv = Result_RouteLightningErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_RouteParametersDecodeErrorZ.ts b/ts/structs/Result_RouteParametersDecodeErrorZ.ts deleted file mode 100644 index 78480fe3..00000000 --- a/ts/structs/Result_RouteParametersDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_RouteParametersDecodeErrorZ extends CommonBase { - private Result_RouteParametersDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_RouteParametersDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_RouteParametersDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_RouteParametersDecodeErrorZ_is_ok(ptr)) { - return new Result_RouteParametersDecodeErrorZ_OK(null, ptr); - } else { - return new Result_RouteParametersDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_RouteParametersDecodeErrorZ_OK extends Result_RouteParametersDecodeErrorZ { - public final RouteParameters res; - private Result_RouteParametersDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_RouteParametersDecodeErrorZ_get_ok(ptr); - const res_hu_conv: RouteParameters = new RouteParameters(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_RouteParametersDecodeErrorZ_Err extends Result_RouteParametersDecodeErrorZ { - public final DecodeError err; - private Result_RouteParametersDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_RouteParametersDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_RouteParametersDecodeErrorZ constructor_ok(RouteParameters o) { - number ret = bindings.CResult_RouteParametersDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_RouteParametersDecodeErrorZ ret_hu_conv = Result_RouteParametersDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_RouteParametersDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_RouteParametersDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_RouteParametersDecodeErrorZ ret_hu_conv = Result_RouteParametersDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_RouteParametersDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_RouteParametersDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_RouteParametersDecodeErrorZ clone() { - number ret = bindings.CResult_RouteParametersDecodeErrorZ_clone(this.ptr); - Result_RouteParametersDecodeErrorZ ret_hu_conv = Result_RouteParametersDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_RoutingFeesDecodeErrorZ.ts b/ts/structs/Result_RoutingFeesDecodeErrorZ.ts deleted file mode 100644 index 4c272dfa..00000000 --- a/ts/structs/Result_RoutingFeesDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_RoutingFeesDecodeErrorZ extends CommonBase { - private Result_RoutingFeesDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_RoutingFeesDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_RoutingFeesDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_RoutingFeesDecodeErrorZ_is_ok(ptr)) { - return new Result_RoutingFeesDecodeErrorZ_OK(null, ptr); - } else { - return new Result_RoutingFeesDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_RoutingFeesDecodeErrorZ_OK extends Result_RoutingFeesDecodeErrorZ { - public final RoutingFees res; - private Result_RoutingFeesDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_RoutingFeesDecodeErrorZ_get_ok(ptr); - const res_hu_conv: RoutingFees = new RoutingFees(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_RoutingFeesDecodeErrorZ_Err extends Result_RoutingFeesDecodeErrorZ { - public final DecodeError err; - private Result_RoutingFeesDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_RoutingFeesDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_RoutingFeesDecodeErrorZ constructor_ok(RoutingFees o) { - number ret = bindings.CResult_RoutingFeesDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_RoutingFeesDecodeErrorZ ret_hu_conv = Result_RoutingFeesDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_RoutingFeesDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_RoutingFeesDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_RoutingFeesDecodeErrorZ ret_hu_conv = Result_RoutingFeesDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_RoutingFeesDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_RoutingFeesDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_RoutingFeesDecodeErrorZ clone() { - number ret = bindings.CResult_RoutingFeesDecodeErrorZ_clone(this.ptr); - Result_RoutingFeesDecodeErrorZ ret_hu_conv = Result_RoutingFeesDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_ScorerDecodeErrorZ.ts b/ts/structs/Result_ScorerDecodeErrorZ.ts deleted file mode 100644 index 843568be..00000000 --- a/ts/structs/Result_ScorerDecodeErrorZ.ts +++ /dev/null @@ -1,66 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_ScorerDecodeErrorZ extends CommonBase { - private Result_ScorerDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_ScorerDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_ScorerDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_ScorerDecodeErrorZ_is_ok(ptr)) { - return new Result_ScorerDecodeErrorZ_OK(null, ptr); - } else { - return new Result_ScorerDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_ScorerDecodeErrorZ_OK extends Result_ScorerDecodeErrorZ { - public final Scorer res; - private Result_ScorerDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_ScorerDecodeErrorZ_get_ok(ptr); - const res_hu_conv: Scorer = new Scorer(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_ScorerDecodeErrorZ_Err extends Result_ScorerDecodeErrorZ { - public final DecodeError err; - private Result_ScorerDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_ScorerDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_ScorerDecodeErrorZ constructor_ok(ScoringParameters o_params) { - number ret = bindings.CResult_ScorerDecodeErrorZ_ok(bindings.Scorer_new(o_params == null ? 0 : o_params.ptr & ~1)); - Result_ScorerDecodeErrorZ ret_hu_conv = Result_ScorerDecodeErrorZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(o_params); -// Due to rust's strict-ownership memory model, in some cases we need to "move" -// an object to pass exclusive ownership to the function being called. -// In most cases, we avoid ret_hu_conv being visible in GC'd languages by cloning the object -// at the FFI layer, creating a new object which Rust can claim ownership of -// However, in some cases (eg here), there is no way to clone an object, and thus -// we actually have to pass full ownership to Rust. -// Thus, after ret_hu_conv call, o_params is reset to null and is now a dummy object. -o_params.ptr = 0; - return ret_hu_conv; - } - - public static Result_ScorerDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_ScorerDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_ScorerDecodeErrorZ ret_hu_conv = Result_ScorerDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_ScorerDecodeErrorZ_is_ok(this.ptr); - return ret; - } - -} diff --git a/ts/structs/Result_ScoringParametersDecodeErrorZ.ts b/ts/structs/Result_ScoringParametersDecodeErrorZ.ts deleted file mode 100644 index ba11e644..00000000 --- a/ts/structs/Result_ScoringParametersDecodeErrorZ.ts +++ /dev/null @@ -1,57 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_ScoringParametersDecodeErrorZ extends CommonBase { - private Result_ScoringParametersDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_ScoringParametersDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_ScoringParametersDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_ScoringParametersDecodeErrorZ_is_ok(ptr)) { - return new Result_ScoringParametersDecodeErrorZ_OK(null, ptr); - } else { - return new Result_ScoringParametersDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_ScoringParametersDecodeErrorZ_OK extends Result_ScoringParametersDecodeErrorZ { - public final ScoringParameters res; - private Result_ScoringParametersDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_ScoringParametersDecodeErrorZ_get_ok(ptr); - const res_hu_conv: ScoringParameters = new ScoringParameters(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_ScoringParametersDecodeErrorZ_Err extends Result_ScoringParametersDecodeErrorZ { - public final DecodeError err; - private Result_ScoringParametersDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_ScoringParametersDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_ScoringParametersDecodeErrorZ constructor_ok(number o_base_penalty_msat_arg, number o_failure_penalty_msat_arg, number o_overuse_penalty_start_1024th_arg, number o_overuse_penalty_msat_per_1024th_arg, number o_failure_penalty_half_life_arg) { - number ret = bindings.CResult_ScoringParametersDecodeErrorZ_ok(bindings.ScoringParameters_new(o_base_penalty_msat_arg, o_failure_penalty_msat_arg, o_overuse_penalty_start_1024th_arg, o_overuse_penalty_msat_per_1024th_arg, o_failure_penalty_half_life_arg)); - Result_ScoringParametersDecodeErrorZ ret_hu_conv = Result_ScoringParametersDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_ScoringParametersDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_ScoringParametersDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_ScoringParametersDecodeErrorZ ret_hu_conv = Result_ScoringParametersDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_ScoringParametersDecodeErrorZ_is_ok(this.ptr); - return ret; - } - -} diff --git a/ts/structs/Result_SecretKeyErrorZ.ts b/ts/structs/Result_SecretKeyErrorZ.ts deleted file mode 100644 index ae21d631..00000000 --- a/ts/structs/Result_SecretKeyErrorZ.ts +++ /dev/null @@ -1,51 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_SecretKeyErrorZ extends CommonBase { - private Result_SecretKeyErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_SecretKeyErrorZ_free(ptr); } super.finalize(); - } - - static Result_SecretKeyErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_SecretKeyErrorZ_is_ok(ptr)) { - return new Result_SecretKeyErrorZ_OK(null, ptr); - } else { - return new Result_SecretKeyErrorZ_Err(null, ptr); - } - } - public static final class Result_SecretKeyErrorZ_OK extends Result_SecretKeyErrorZ { - public final Uint8Array res; - private Result_SecretKeyErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - this.res = bindings.LDKCResult_SecretKeyErrorZ_get_ok(ptr); - } - } - - public static final class Result_SecretKeyErrorZ_Err extends Result_SecretKeyErrorZ { - public final Secp256k1Error err; - private Result_SecretKeyErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - this.err = bindings.LDKCResult_SecretKeyErrorZ_get_err(ptr); - } - } - - public static Result_SecretKeyErrorZ constructor_ok(Uint8Array o) { - number ret = bindings.CResult_SecretKeyErrorZ_ok(InternalUtils.check_arr_len(o, 32)); - Result_SecretKeyErrorZ ret_hu_conv = Result_SecretKeyErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_SecretKeyErrorZ constructor_err(Secp256k1Error e) { - number ret = bindings.CResult_SecretKeyErrorZ_err(e); - Result_SecretKeyErrorZ ret_hu_conv = Result_SecretKeyErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_SecretKeyErrorZ_is_ok(this.ptr); - return ret; - } - -} diff --git a/ts/structs/Result_ShutdownDecodeErrorZ.ts b/ts/structs/Result_ShutdownDecodeErrorZ.ts deleted file mode 100644 index 6eaa72bc..00000000 --- a/ts/structs/Result_ShutdownDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_ShutdownDecodeErrorZ extends CommonBase { - private Result_ShutdownDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_ShutdownDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_ShutdownDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_ShutdownDecodeErrorZ_is_ok(ptr)) { - return new Result_ShutdownDecodeErrorZ_OK(null, ptr); - } else { - return new Result_ShutdownDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_ShutdownDecodeErrorZ_OK extends Result_ShutdownDecodeErrorZ { - public final Shutdown res; - private Result_ShutdownDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_ShutdownDecodeErrorZ_get_ok(ptr); - const res_hu_conv: Shutdown = new Shutdown(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_ShutdownDecodeErrorZ_Err extends Result_ShutdownDecodeErrorZ { - public final DecodeError err; - private Result_ShutdownDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_ShutdownDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_ShutdownDecodeErrorZ constructor_ok(Shutdown o) { - number ret = bindings.CResult_ShutdownDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_ShutdownDecodeErrorZ ret_hu_conv = Result_ShutdownDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_ShutdownDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_ShutdownDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_ShutdownDecodeErrorZ ret_hu_conv = Result_ShutdownDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_ShutdownDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_ShutdownDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_ShutdownDecodeErrorZ clone() { - number ret = bindings.CResult_ShutdownDecodeErrorZ_clone(this.ptr); - Result_ShutdownDecodeErrorZ ret_hu_conv = Result_ShutdownDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_ShutdownScriptDecodeErrorZ.ts b/ts/structs/Result_ShutdownScriptDecodeErrorZ.ts deleted file mode 100644 index 067d8ffd..00000000 --- a/ts/structs/Result_ShutdownScriptDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_ShutdownScriptDecodeErrorZ extends CommonBase { - private Result_ShutdownScriptDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_ShutdownScriptDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_ShutdownScriptDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_ShutdownScriptDecodeErrorZ_is_ok(ptr)) { - return new Result_ShutdownScriptDecodeErrorZ_OK(null, ptr); - } else { - return new Result_ShutdownScriptDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_ShutdownScriptDecodeErrorZ_OK extends Result_ShutdownScriptDecodeErrorZ { - public final ShutdownScript res; - private Result_ShutdownScriptDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_ShutdownScriptDecodeErrorZ_get_ok(ptr); - const res_hu_conv: ShutdownScript = new ShutdownScript(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_ShutdownScriptDecodeErrorZ_Err extends Result_ShutdownScriptDecodeErrorZ { - public final DecodeError err; - private Result_ShutdownScriptDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_ShutdownScriptDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_ShutdownScriptDecodeErrorZ constructor_ok(ShutdownScript o) { - number ret = bindings.CResult_ShutdownScriptDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_ShutdownScriptDecodeErrorZ ret_hu_conv = Result_ShutdownScriptDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_ShutdownScriptDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_ShutdownScriptDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_ShutdownScriptDecodeErrorZ ret_hu_conv = Result_ShutdownScriptDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_ShutdownScriptDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_ShutdownScriptDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_ShutdownScriptDecodeErrorZ clone() { - number ret = bindings.CResult_ShutdownScriptDecodeErrorZ_clone(this.ptr); - Result_ShutdownScriptDecodeErrorZ ret_hu_conv = Result_ShutdownScriptDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_ShutdownScriptInvalidShutdownScriptZ.ts b/ts/structs/Result_ShutdownScriptInvalidShutdownScriptZ.ts deleted file mode 100644 index 7fae6c5c..00000000 --- a/ts/structs/Result_ShutdownScriptInvalidShutdownScriptZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_ShutdownScriptInvalidShutdownScriptZ extends CommonBase { - private Result_ShutdownScriptInvalidShutdownScriptZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_ShutdownScriptInvalidShutdownScriptZ_free(ptr); } super.finalize(); - } - - static Result_ShutdownScriptInvalidShutdownScriptZ constr_from_ptr(long ptr) { - if (bindings.CResult_ShutdownScriptInvalidShutdownScriptZ_is_ok(ptr)) { - return new Result_ShutdownScriptInvalidShutdownScriptZ_OK(null, ptr); - } else { - return new Result_ShutdownScriptInvalidShutdownScriptZ_Err(null, ptr); - } - } - public static final class Result_ShutdownScriptInvalidShutdownScriptZ_OK extends Result_ShutdownScriptInvalidShutdownScriptZ { - public final ShutdownScript res; - private Result_ShutdownScriptInvalidShutdownScriptZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_ShutdownScriptInvalidShutdownScriptZ_get_ok(ptr); - const res_hu_conv: ShutdownScript = new ShutdownScript(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_ShutdownScriptInvalidShutdownScriptZ_Err extends Result_ShutdownScriptInvalidShutdownScriptZ { - public final InvalidShutdownScript err; - private Result_ShutdownScriptInvalidShutdownScriptZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_ShutdownScriptInvalidShutdownScriptZ_get_err(ptr); - const err_hu_conv: InvalidShutdownScript = new InvalidShutdownScript(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_ShutdownScriptInvalidShutdownScriptZ constructor_ok(ShutdownScript o) { - number ret = bindings.CResult_ShutdownScriptInvalidShutdownScriptZ_ok(o == null ? 0 : o.ptr & ~1); - Result_ShutdownScriptInvalidShutdownScriptZ ret_hu_conv = Result_ShutdownScriptInvalidShutdownScriptZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_ShutdownScriptInvalidShutdownScriptZ constructor_err(InvalidShutdownScript e) { - number ret = bindings.CResult_ShutdownScriptInvalidShutdownScriptZ_err(e == null ? 0 : e.ptr & ~1); - Result_ShutdownScriptInvalidShutdownScriptZ ret_hu_conv = Result_ShutdownScriptInvalidShutdownScriptZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_ShutdownScriptInvalidShutdownScriptZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_ShutdownScriptInvalidShutdownScriptZ_clone_ptr(this.ptr); - return ret; - } - - public Result_ShutdownScriptInvalidShutdownScriptZ clone() { - number ret = bindings.CResult_ShutdownScriptInvalidShutdownScriptZ_clone(this.ptr); - Result_ShutdownScriptInvalidShutdownScriptZ ret_hu_conv = Result_ShutdownScriptInvalidShutdownScriptZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_SiPrefixNoneZ.ts b/ts/structs/Result_SiPrefixNoneZ.ts deleted file mode 100644 index 950fe420..00000000 --- a/ts/structs/Result_SiPrefixNoneZ.ts +++ /dev/null @@ -1,60 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_SiPrefixNoneZ extends CommonBase { - private Result_SiPrefixNoneZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_SiPrefixNoneZ_free(ptr); } super.finalize(); - } - - static Result_SiPrefixNoneZ constr_from_ptr(long ptr) { - if (bindings.CResult_SiPrefixNoneZ_is_ok(ptr)) { - return new Result_SiPrefixNoneZ_OK(null, ptr); - } else { - return new Result_SiPrefixNoneZ_Err(null, ptr); - } - } - public static final class Result_SiPrefixNoneZ_OK extends Result_SiPrefixNoneZ { - public final SiPrefix res; - private Result_SiPrefixNoneZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - this.res = bindings.LDKCResult_SiPrefixNoneZ_get_ok(ptr); - } - } - - public static final class Result_SiPrefixNoneZ_Err extends Result_SiPrefixNoneZ { - private Result_SiPrefixNoneZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - } - } - - public static Result_SiPrefixNoneZ constructor_ok(SiPrefix o) { - number ret = bindings.CResult_SiPrefixNoneZ_ok(o); - Result_SiPrefixNoneZ ret_hu_conv = Result_SiPrefixNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_SiPrefixNoneZ constructor_err() { - number ret = bindings.CResult_SiPrefixNoneZ_err(); - Result_SiPrefixNoneZ ret_hu_conv = Result_SiPrefixNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_SiPrefixNoneZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_SiPrefixNoneZ_clone_ptr(this.ptr); - return ret; - } - - public Result_SiPrefixNoneZ clone() { - number ret = bindings.CResult_SiPrefixNoneZ_clone(this.ptr); - Result_SiPrefixNoneZ ret_hu_conv = Result_SiPrefixNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_SignDecodeErrorZ.ts b/ts/structs/Result_SignDecodeErrorZ.ts deleted file mode 100644 index ff486f6c..00000000 --- a/ts/structs/Result_SignDecodeErrorZ.ts +++ /dev/null @@ -1,69 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_SignDecodeErrorZ extends CommonBase { - private Result_SignDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_SignDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_SignDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_SignDecodeErrorZ_is_ok(ptr)) { - return new Result_SignDecodeErrorZ_OK(null, ptr); - } else { - return new Result_SignDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_SignDecodeErrorZ_OK extends Result_SignDecodeErrorZ { - public final Sign res; - private Result_SignDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_SignDecodeErrorZ_get_ok(ptr); - Sign ret_hu_conv = new Sign(null, res); - ret_hu_conv.ptrs_to.add(this); - this.res = ret_hu_conv; - } - } - - public static final class Result_SignDecodeErrorZ_Err extends Result_SignDecodeErrorZ { - public final DecodeError err; - private Result_SignDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_SignDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_SignDecodeErrorZ constructor_ok(Sign o) { - number ret = bindings.CResult_SignDecodeErrorZ_ok(o == null ? 0 : o.ptr); - Result_SignDecodeErrorZ ret_hu_conv = Result_SignDecodeErrorZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(o); - return ret_hu_conv; - } - - public static Result_SignDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_SignDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_SignDecodeErrorZ ret_hu_conv = Result_SignDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_SignDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_SignDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_SignDecodeErrorZ clone() { - number ret = bindings.CResult_SignDecodeErrorZ_clone(this.ptr); - Result_SignDecodeErrorZ ret_hu_conv = Result_SignDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_SignatureNoneZ.ts b/ts/structs/Result_SignatureNoneZ.ts deleted file mode 100644 index 7f1c5a6a..00000000 --- a/ts/structs/Result_SignatureNoneZ.ts +++ /dev/null @@ -1,60 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_SignatureNoneZ extends CommonBase { - private Result_SignatureNoneZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_SignatureNoneZ_free(ptr); } super.finalize(); - } - - static Result_SignatureNoneZ constr_from_ptr(long ptr) { - if (bindings.CResult_SignatureNoneZ_is_ok(ptr)) { - return new Result_SignatureNoneZ_OK(null, ptr); - } else { - return new Result_SignatureNoneZ_Err(null, ptr); - } - } - public static final class Result_SignatureNoneZ_OK extends Result_SignatureNoneZ { - public final Uint8Array res; - private Result_SignatureNoneZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - this.res = bindings.LDKCResult_SignatureNoneZ_get_ok(ptr); - } - } - - public static final class Result_SignatureNoneZ_Err extends Result_SignatureNoneZ { - private Result_SignatureNoneZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - } - } - - public static Result_SignatureNoneZ constructor_ok(Uint8Array o) { - number ret = bindings.CResult_SignatureNoneZ_ok(InternalUtils.check_arr_len(o, 64)); - Result_SignatureNoneZ ret_hu_conv = Result_SignatureNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_SignatureNoneZ constructor_err() { - number ret = bindings.CResult_SignatureNoneZ_err(); - Result_SignatureNoneZ ret_hu_conv = Result_SignatureNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_SignatureNoneZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_SignatureNoneZ_clone_ptr(this.ptr); - return ret; - } - - public Result_SignatureNoneZ clone() { - number ret = bindings.CResult_SignatureNoneZ_clone(this.ptr); - Result_SignatureNoneZ ret_hu_conv = Result_SignatureNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_SignedRawInvoiceNoneZ.ts b/ts/structs/Result_SignedRawInvoiceNoneZ.ts deleted file mode 100644 index 6b3da462..00000000 --- a/ts/structs/Result_SignedRawInvoiceNoneZ.ts +++ /dev/null @@ -1,63 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_SignedRawInvoiceNoneZ extends CommonBase { - private Result_SignedRawInvoiceNoneZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_SignedRawInvoiceNoneZ_free(ptr); } super.finalize(); - } - - static Result_SignedRawInvoiceNoneZ constr_from_ptr(long ptr) { - if (bindings.CResult_SignedRawInvoiceNoneZ_is_ok(ptr)) { - return new Result_SignedRawInvoiceNoneZ_OK(null, ptr); - } else { - return new Result_SignedRawInvoiceNoneZ_Err(null, ptr); - } - } - public static final class Result_SignedRawInvoiceNoneZ_OK extends Result_SignedRawInvoiceNoneZ { - public final SignedRawInvoice res; - private Result_SignedRawInvoiceNoneZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_SignedRawInvoiceNoneZ_get_ok(ptr); - const res_hu_conv: SignedRawInvoice = new SignedRawInvoice(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_SignedRawInvoiceNoneZ_Err extends Result_SignedRawInvoiceNoneZ { - private Result_SignedRawInvoiceNoneZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - } - } - - public static Result_SignedRawInvoiceNoneZ constructor_ok(SignedRawInvoice o) { - number ret = bindings.CResult_SignedRawInvoiceNoneZ_ok(o == null ? 0 : o.ptr & ~1); - Result_SignedRawInvoiceNoneZ ret_hu_conv = Result_SignedRawInvoiceNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_SignedRawInvoiceNoneZ constructor_err() { - number ret = bindings.CResult_SignedRawInvoiceNoneZ_err(); - Result_SignedRawInvoiceNoneZ ret_hu_conv = Result_SignedRawInvoiceNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_SignedRawInvoiceNoneZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_SignedRawInvoiceNoneZ_clone_ptr(this.ptr); - return ret; - } - - public Result_SignedRawInvoiceNoneZ clone() { - number ret = bindings.CResult_SignedRawInvoiceNoneZ_clone(this.ptr); - Result_SignedRawInvoiceNoneZ ret_hu_conv = Result_SignedRawInvoiceNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_SpendableOutputDescriptorDecodeErrorZ.ts b/ts/structs/Result_SpendableOutputDescriptorDecodeErrorZ.ts deleted file mode 100644 index 37e33590..00000000 --- a/ts/structs/Result_SpendableOutputDescriptorDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_SpendableOutputDescriptorDecodeErrorZ extends CommonBase { - private Result_SpendableOutputDescriptorDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_SpendableOutputDescriptorDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_SpendableOutputDescriptorDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_SpendableOutputDescriptorDecodeErrorZ_is_ok(ptr)) { - return new Result_SpendableOutputDescriptorDecodeErrorZ_OK(null, ptr); - } else { - return new Result_SpendableOutputDescriptorDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_SpendableOutputDescriptorDecodeErrorZ_OK extends Result_SpendableOutputDescriptorDecodeErrorZ { - public final SpendableOutputDescriptor res; - private Result_SpendableOutputDescriptorDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_SpendableOutputDescriptorDecodeErrorZ_get_ok(ptr); - SpendableOutputDescriptor res_hu_conv = SpendableOutputDescriptor.constr_from_ptr(res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_SpendableOutputDescriptorDecodeErrorZ_Err extends Result_SpendableOutputDescriptorDecodeErrorZ { - public final DecodeError err; - private Result_SpendableOutputDescriptorDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_SpendableOutputDescriptorDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_SpendableOutputDescriptorDecodeErrorZ constructor_ok(SpendableOutputDescriptor o) { - number ret = bindings.CResult_SpendableOutputDescriptorDecodeErrorZ_ok(o.ptr); - Result_SpendableOutputDescriptorDecodeErrorZ ret_hu_conv = Result_SpendableOutputDescriptorDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_SpendableOutputDescriptorDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_SpendableOutputDescriptorDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_SpendableOutputDescriptorDecodeErrorZ ret_hu_conv = Result_SpendableOutputDescriptorDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_SpendableOutputDescriptorDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_SpendableOutputDescriptorDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_SpendableOutputDescriptorDecodeErrorZ clone() { - number ret = bindings.CResult_SpendableOutputDescriptorDecodeErrorZ_clone(this.ptr); - Result_SpendableOutputDescriptorDecodeErrorZ ret_hu_conv = Result_SpendableOutputDescriptorDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_StaticPaymentOutputDescriptorDecodeErrorZ.ts b/ts/structs/Result_StaticPaymentOutputDescriptorDecodeErrorZ.ts deleted file mode 100644 index 3899f62e..00000000 --- a/ts/structs/Result_StaticPaymentOutputDescriptorDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_StaticPaymentOutputDescriptorDecodeErrorZ extends CommonBase { - private Result_StaticPaymentOutputDescriptorDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_StaticPaymentOutputDescriptorDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_StaticPaymentOutputDescriptorDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_StaticPaymentOutputDescriptorDecodeErrorZ_is_ok(ptr)) { - return new Result_StaticPaymentOutputDescriptorDecodeErrorZ_OK(null, ptr); - } else { - return new Result_StaticPaymentOutputDescriptorDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_StaticPaymentOutputDescriptorDecodeErrorZ_OK extends Result_StaticPaymentOutputDescriptorDecodeErrorZ { - public final StaticPaymentOutputDescriptor res; - private Result_StaticPaymentOutputDescriptorDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ_get_ok(ptr); - const res_hu_conv: StaticPaymentOutputDescriptor = new StaticPaymentOutputDescriptor(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_StaticPaymentOutputDescriptorDecodeErrorZ_Err extends Result_StaticPaymentOutputDescriptorDecodeErrorZ { - public final DecodeError err; - private Result_StaticPaymentOutputDescriptorDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_StaticPaymentOutputDescriptorDecodeErrorZ constructor_ok(StaticPaymentOutputDescriptor o) { - number ret = bindings.CResult_StaticPaymentOutputDescriptorDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_StaticPaymentOutputDescriptorDecodeErrorZ ret_hu_conv = Result_StaticPaymentOutputDescriptorDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_StaticPaymentOutputDescriptorDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_StaticPaymentOutputDescriptorDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_StaticPaymentOutputDescriptorDecodeErrorZ ret_hu_conv = Result_StaticPaymentOutputDescriptorDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_StaticPaymentOutputDescriptorDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_StaticPaymentOutputDescriptorDecodeErrorZ clone() { - number ret = bindings.CResult_StaticPaymentOutputDescriptorDecodeErrorZ_clone(this.ptr); - Result_StaticPaymentOutputDescriptorDecodeErrorZ ret_hu_conv = Result_StaticPaymentOutputDescriptorDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_StringErrorZ.ts b/ts/structs/Result_StringErrorZ.ts deleted file mode 100644 index b482d250..00000000 --- a/ts/structs/Result_StringErrorZ.ts +++ /dev/null @@ -1,51 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_StringErrorZ extends CommonBase { - private Result_StringErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_StringErrorZ_free(ptr); } super.finalize(); - } - - static Result_StringErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_StringErrorZ_is_ok(ptr)) { - return new Result_StringErrorZ_OK(null, ptr); - } else { - return new Result_StringErrorZ_Err(null, ptr); - } - } - public static final class Result_StringErrorZ_OK extends Result_StringErrorZ { - public final String res; - private Result_StringErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - this.res = bindings.LDKCResult_StringErrorZ_get_ok(ptr); - } - } - - public static final class Result_StringErrorZ_Err extends Result_StringErrorZ { - public final Secp256k1Error err; - private Result_StringErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - this.err = bindings.LDKCResult_StringErrorZ_get_err(ptr); - } - } - - public static Result_StringErrorZ constructor_ok(String o) { - number ret = bindings.CResult_StringErrorZ_ok(o); - Result_StringErrorZ ret_hu_conv = Result_StringErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_StringErrorZ constructor_err(Secp256k1Error e) { - number ret = bindings.CResult_StringErrorZ_err(e); - Result_StringErrorZ ret_hu_conv = Result_StringErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_StringErrorZ_is_ok(this.ptr); - return ret; - } - -} diff --git a/ts/structs/Result_TransactionNoneZ.ts b/ts/structs/Result_TransactionNoneZ.ts deleted file mode 100644 index b1ccf6b7..00000000 --- a/ts/structs/Result_TransactionNoneZ.ts +++ /dev/null @@ -1,60 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_TransactionNoneZ extends CommonBase { - private Result_TransactionNoneZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_TransactionNoneZ_free(ptr); } super.finalize(); - } - - static Result_TransactionNoneZ constr_from_ptr(long ptr) { - if (bindings.CResult_TransactionNoneZ_is_ok(ptr)) { - return new Result_TransactionNoneZ_OK(null, ptr); - } else { - return new Result_TransactionNoneZ_Err(null, ptr); - } - } - public static final class Result_TransactionNoneZ_OK extends Result_TransactionNoneZ { - public final Uint8Array res; - private Result_TransactionNoneZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - this.res = bindings.LDKCResult_TransactionNoneZ_get_ok(ptr); - } - } - - public static final class Result_TransactionNoneZ_Err extends Result_TransactionNoneZ { - private Result_TransactionNoneZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - } - } - - public static Result_TransactionNoneZ constructor_ok(Uint8Array o) { - number ret = bindings.CResult_TransactionNoneZ_ok(o); - Result_TransactionNoneZ ret_hu_conv = Result_TransactionNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_TransactionNoneZ constructor_err() { - number ret = bindings.CResult_TransactionNoneZ_err(); - Result_TransactionNoneZ ret_hu_conv = Result_TransactionNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_TransactionNoneZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_TransactionNoneZ_clone_ptr(this.ptr); - return ret; - } - - public Result_TransactionNoneZ clone() { - number ret = bindings.CResult_TransactionNoneZ_clone(this.ptr); - Result_TransactionNoneZ ret_hu_conv = Result_TransactionNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_TrustedClosingTransactionNoneZ.ts b/ts/structs/Result_TrustedClosingTransactionNoneZ.ts deleted file mode 100644 index 4698edfc..00000000 --- a/ts/structs/Result_TrustedClosingTransactionNoneZ.ts +++ /dev/null @@ -1,61 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_TrustedClosingTransactionNoneZ extends CommonBase { - private Result_TrustedClosingTransactionNoneZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_TrustedClosingTransactionNoneZ_free(ptr); } super.finalize(); - } - - static Result_TrustedClosingTransactionNoneZ constr_from_ptr(long ptr) { - if (bindings.CResult_TrustedClosingTransactionNoneZ_is_ok(ptr)) { - return new Result_TrustedClosingTransactionNoneZ_OK(null, ptr); - } else { - return new Result_TrustedClosingTransactionNoneZ_Err(null, ptr); - } - } - public static final class Result_TrustedClosingTransactionNoneZ_OK extends Result_TrustedClosingTransactionNoneZ { - public final TrustedClosingTransaction res; - private Result_TrustedClosingTransactionNoneZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_TrustedClosingTransactionNoneZ_get_ok(ptr); - const res_hu_conv: TrustedClosingTransaction = new TrustedClosingTransaction(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_TrustedClosingTransactionNoneZ_Err extends Result_TrustedClosingTransactionNoneZ { - private Result_TrustedClosingTransactionNoneZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - } - } - - public static Result_TrustedClosingTransactionNoneZ constructor_ok(TrustedClosingTransaction o) { - number ret = bindings.CResult_TrustedClosingTransactionNoneZ_ok(o == null ? 0 : o.ptr & ~1); - Result_TrustedClosingTransactionNoneZ ret_hu_conv = Result_TrustedClosingTransactionNoneZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(o); - // Due to rust's strict-ownership memory model, in some cases we need to "move" - // an object to pass exclusive ownership to the function being called. - // In most cases, we avoid ret_hu_conv being visible in GC'd languages by cloning the object - // at the FFI layer, creating a new object which Rust can claim ownership of - // However, in some cases (eg here), there is no way to clone an object, and thus - // we actually have to pass full ownership to Rust. - // Thus, after ret_hu_conv call, o is reset to null and is now a dummy object. - o.ptr = 0; - return ret_hu_conv; - } - - public static Result_TrustedClosingTransactionNoneZ constructor_err() { - number ret = bindings.CResult_TrustedClosingTransactionNoneZ_err(); - Result_TrustedClosingTransactionNoneZ ret_hu_conv = Result_TrustedClosingTransactionNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_TrustedClosingTransactionNoneZ_is_ok(this.ptr); - return ret; - } - -} diff --git a/ts/structs/Result_TrustedCommitmentTransactionNoneZ.ts b/ts/structs/Result_TrustedCommitmentTransactionNoneZ.ts deleted file mode 100644 index 406c6d76..00000000 --- a/ts/structs/Result_TrustedCommitmentTransactionNoneZ.ts +++ /dev/null @@ -1,61 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_TrustedCommitmentTransactionNoneZ extends CommonBase { - private Result_TrustedCommitmentTransactionNoneZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_TrustedCommitmentTransactionNoneZ_free(ptr); } super.finalize(); - } - - static Result_TrustedCommitmentTransactionNoneZ constr_from_ptr(long ptr) { - if (bindings.CResult_TrustedCommitmentTransactionNoneZ_is_ok(ptr)) { - return new Result_TrustedCommitmentTransactionNoneZ_OK(null, ptr); - } else { - return new Result_TrustedCommitmentTransactionNoneZ_Err(null, ptr); - } - } - public static final class Result_TrustedCommitmentTransactionNoneZ_OK extends Result_TrustedCommitmentTransactionNoneZ { - public final TrustedCommitmentTransaction res; - private Result_TrustedCommitmentTransactionNoneZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_TrustedCommitmentTransactionNoneZ_get_ok(ptr); - const res_hu_conv: TrustedCommitmentTransaction = new TrustedCommitmentTransaction(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_TrustedCommitmentTransactionNoneZ_Err extends Result_TrustedCommitmentTransactionNoneZ { - private Result_TrustedCommitmentTransactionNoneZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - } - } - - public static Result_TrustedCommitmentTransactionNoneZ constructor_ok(TrustedCommitmentTransaction o) { - number ret = bindings.CResult_TrustedCommitmentTransactionNoneZ_ok(o == null ? 0 : o.ptr & ~1); - Result_TrustedCommitmentTransactionNoneZ ret_hu_conv = Result_TrustedCommitmentTransactionNoneZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(o); - // Due to rust's strict-ownership memory model, in some cases we need to "move" - // an object to pass exclusive ownership to the function being called. - // In most cases, we avoid ret_hu_conv being visible in GC'd languages by cloning the object - // at the FFI layer, creating a new object which Rust can claim ownership of - // However, in some cases (eg here), there is no way to clone an object, and thus - // we actually have to pass full ownership to Rust. - // Thus, after ret_hu_conv call, o is reset to null and is now a dummy object. - o.ptr = 0; - return ret_hu_conv; - } - - public static Result_TrustedCommitmentTransactionNoneZ constructor_err() { - number ret = bindings.CResult_TrustedCommitmentTransactionNoneZ_err(); - Result_TrustedCommitmentTransactionNoneZ ret_hu_conv = Result_TrustedCommitmentTransactionNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_TrustedCommitmentTransactionNoneZ_is_ok(this.ptr); - return ret; - } - -} diff --git a/ts/structs/Result_TxCreationKeysDecodeErrorZ.ts b/ts/structs/Result_TxCreationKeysDecodeErrorZ.ts deleted file mode 100644 index 674477cd..00000000 --- a/ts/structs/Result_TxCreationKeysDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_TxCreationKeysDecodeErrorZ extends CommonBase { - private Result_TxCreationKeysDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_TxCreationKeysDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_TxCreationKeysDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_TxCreationKeysDecodeErrorZ_is_ok(ptr)) { - return new Result_TxCreationKeysDecodeErrorZ_OK(null, ptr); - } else { - return new Result_TxCreationKeysDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_TxCreationKeysDecodeErrorZ_OK extends Result_TxCreationKeysDecodeErrorZ { - public final TxCreationKeys res; - private Result_TxCreationKeysDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_TxCreationKeysDecodeErrorZ_get_ok(ptr); - const res_hu_conv: TxCreationKeys = new TxCreationKeys(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_TxCreationKeysDecodeErrorZ_Err extends Result_TxCreationKeysDecodeErrorZ { - public final DecodeError err; - private Result_TxCreationKeysDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_TxCreationKeysDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_TxCreationKeysDecodeErrorZ constructor_ok(TxCreationKeys o) { - number ret = bindings.CResult_TxCreationKeysDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_TxCreationKeysDecodeErrorZ ret_hu_conv = Result_TxCreationKeysDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_TxCreationKeysDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_TxCreationKeysDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_TxCreationKeysDecodeErrorZ ret_hu_conv = Result_TxCreationKeysDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_TxCreationKeysDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_TxCreationKeysDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_TxCreationKeysDecodeErrorZ clone() { - number ret = bindings.CResult_TxCreationKeysDecodeErrorZ_clone(this.ptr); - Result_TxCreationKeysDecodeErrorZ ret_hu_conv = Result_TxCreationKeysDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_TxCreationKeysErrorZ.ts b/ts/structs/Result_TxCreationKeysErrorZ.ts deleted file mode 100644 index 49666976..00000000 --- a/ts/structs/Result_TxCreationKeysErrorZ.ts +++ /dev/null @@ -1,65 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_TxCreationKeysErrorZ extends CommonBase { - private Result_TxCreationKeysErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_TxCreationKeysErrorZ_free(ptr); } super.finalize(); - } - - static Result_TxCreationKeysErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_TxCreationKeysErrorZ_is_ok(ptr)) { - return new Result_TxCreationKeysErrorZ_OK(null, ptr); - } else { - return new Result_TxCreationKeysErrorZ_Err(null, ptr); - } - } - public static final class Result_TxCreationKeysErrorZ_OK extends Result_TxCreationKeysErrorZ { - public final TxCreationKeys res; - private Result_TxCreationKeysErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_TxCreationKeysErrorZ_get_ok(ptr); - const res_hu_conv: TxCreationKeys = new TxCreationKeys(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_TxCreationKeysErrorZ_Err extends Result_TxCreationKeysErrorZ { - public final Secp256k1Error err; - private Result_TxCreationKeysErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - this.err = bindings.LDKCResult_TxCreationKeysErrorZ_get_err(ptr); - } - } - - public static Result_TxCreationKeysErrorZ constructor_ok(TxCreationKeys o) { - number ret = bindings.CResult_TxCreationKeysErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_TxCreationKeysErrorZ ret_hu_conv = Result_TxCreationKeysErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_TxCreationKeysErrorZ constructor_err(Secp256k1Error e) { - number ret = bindings.CResult_TxCreationKeysErrorZ_err(e); - Result_TxCreationKeysErrorZ ret_hu_conv = Result_TxCreationKeysErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_TxCreationKeysErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_TxCreationKeysErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_TxCreationKeysErrorZ clone() { - number ret = bindings.CResult_TxCreationKeysErrorZ_clone(this.ptr); - Result_TxCreationKeysErrorZ ret_hu_conv = Result_TxCreationKeysErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_TxOutAccessErrorZ.ts b/ts/structs/Result_TxOutAccessErrorZ.ts deleted file mode 100644 index fe6a0a7f..00000000 --- a/ts/structs/Result_TxOutAccessErrorZ.ts +++ /dev/null @@ -1,64 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_TxOutAccessErrorZ extends CommonBase { - private Result_TxOutAccessErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_TxOutAccessErrorZ_free(ptr); } super.finalize(); - } - - static Result_TxOutAccessErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_TxOutAccessErrorZ_is_ok(ptr)) { - return new Result_TxOutAccessErrorZ_OK(null, ptr); - } else { - return new Result_TxOutAccessErrorZ_Err(null, ptr); - } - } - public static final class Result_TxOutAccessErrorZ_OK extends Result_TxOutAccessErrorZ { - public final TxOut res; - private Result_TxOutAccessErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_TxOutAccessErrorZ_get_ok(ptr); - TxOut res_conv = new TxOut(null, res); - this.res = res_conv; - } - } - - public static final class Result_TxOutAccessErrorZ_Err extends Result_TxOutAccessErrorZ { - public final AccessError err; - private Result_TxOutAccessErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - this.err = bindings.LDKCResult_TxOutAccessErrorZ_get_err(ptr); - } - } - - public static Result_TxOutAccessErrorZ constructor_ok(TxOut o) { - number ret = bindings.CResult_TxOutAccessErrorZ_ok(o.ptr); - Result_TxOutAccessErrorZ ret_hu_conv = Result_TxOutAccessErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_TxOutAccessErrorZ constructor_err(AccessError e) { - number ret = bindings.CResult_TxOutAccessErrorZ_err(e); - Result_TxOutAccessErrorZ ret_hu_conv = Result_TxOutAccessErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_TxOutAccessErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_TxOutAccessErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_TxOutAccessErrorZ clone() { - number ret = bindings.CResult_TxOutAccessErrorZ_clone(this.ptr); - Result_TxOutAccessErrorZ ret_hu_conv = Result_TxOutAccessErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_UnsignedChannelAnnouncementDecodeErrorZ.ts b/ts/structs/Result_UnsignedChannelAnnouncementDecodeErrorZ.ts deleted file mode 100644 index 55f53adf..00000000 --- a/ts/structs/Result_UnsignedChannelAnnouncementDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_UnsignedChannelAnnouncementDecodeErrorZ extends CommonBase { - private Result_UnsignedChannelAnnouncementDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_UnsignedChannelAnnouncementDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_UnsignedChannelAnnouncementDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_UnsignedChannelAnnouncementDecodeErrorZ_is_ok(ptr)) { - return new Result_UnsignedChannelAnnouncementDecodeErrorZ_OK(null, ptr); - } else { - return new Result_UnsignedChannelAnnouncementDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_UnsignedChannelAnnouncementDecodeErrorZ_OK extends Result_UnsignedChannelAnnouncementDecodeErrorZ { - public final UnsignedChannelAnnouncement res; - private Result_UnsignedChannelAnnouncementDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ_get_ok(ptr); - const res_hu_conv: UnsignedChannelAnnouncement = new UnsignedChannelAnnouncement(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_UnsignedChannelAnnouncementDecodeErrorZ_Err extends Result_UnsignedChannelAnnouncementDecodeErrorZ { - public final DecodeError err; - private Result_UnsignedChannelAnnouncementDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_UnsignedChannelAnnouncementDecodeErrorZ constructor_ok(UnsignedChannelAnnouncement o) { - number ret = bindings.CResult_UnsignedChannelAnnouncementDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_UnsignedChannelAnnouncementDecodeErrorZ ret_hu_conv = Result_UnsignedChannelAnnouncementDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_UnsignedChannelAnnouncementDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_UnsignedChannelAnnouncementDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_UnsignedChannelAnnouncementDecodeErrorZ ret_hu_conv = Result_UnsignedChannelAnnouncementDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_UnsignedChannelAnnouncementDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_UnsignedChannelAnnouncementDecodeErrorZ clone() { - number ret = bindings.CResult_UnsignedChannelAnnouncementDecodeErrorZ_clone(this.ptr); - Result_UnsignedChannelAnnouncementDecodeErrorZ ret_hu_conv = Result_UnsignedChannelAnnouncementDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_UnsignedChannelUpdateDecodeErrorZ.ts b/ts/structs/Result_UnsignedChannelUpdateDecodeErrorZ.ts deleted file mode 100644 index eeaf83dc..00000000 --- a/ts/structs/Result_UnsignedChannelUpdateDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_UnsignedChannelUpdateDecodeErrorZ extends CommonBase { - private Result_UnsignedChannelUpdateDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_UnsignedChannelUpdateDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_UnsignedChannelUpdateDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_UnsignedChannelUpdateDecodeErrorZ_is_ok(ptr)) { - return new Result_UnsignedChannelUpdateDecodeErrorZ_OK(null, ptr); - } else { - return new Result_UnsignedChannelUpdateDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_UnsignedChannelUpdateDecodeErrorZ_OK extends Result_UnsignedChannelUpdateDecodeErrorZ { - public final UnsignedChannelUpdate res; - private Result_UnsignedChannelUpdateDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_UnsignedChannelUpdateDecodeErrorZ_get_ok(ptr); - const res_hu_conv: UnsignedChannelUpdate = new UnsignedChannelUpdate(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_UnsignedChannelUpdateDecodeErrorZ_Err extends Result_UnsignedChannelUpdateDecodeErrorZ { - public final DecodeError err; - private Result_UnsignedChannelUpdateDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_UnsignedChannelUpdateDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_UnsignedChannelUpdateDecodeErrorZ constructor_ok(UnsignedChannelUpdate o) { - number ret = bindings.CResult_UnsignedChannelUpdateDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_UnsignedChannelUpdateDecodeErrorZ ret_hu_conv = Result_UnsignedChannelUpdateDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_UnsignedChannelUpdateDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_UnsignedChannelUpdateDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_UnsignedChannelUpdateDecodeErrorZ ret_hu_conv = Result_UnsignedChannelUpdateDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_UnsignedChannelUpdateDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_UnsignedChannelUpdateDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_UnsignedChannelUpdateDecodeErrorZ clone() { - number ret = bindings.CResult_UnsignedChannelUpdateDecodeErrorZ_clone(this.ptr); - Result_UnsignedChannelUpdateDecodeErrorZ ret_hu_conv = Result_UnsignedChannelUpdateDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_UnsignedNodeAnnouncementDecodeErrorZ.ts b/ts/structs/Result_UnsignedNodeAnnouncementDecodeErrorZ.ts deleted file mode 100644 index d5e2c38c..00000000 --- a/ts/structs/Result_UnsignedNodeAnnouncementDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_UnsignedNodeAnnouncementDecodeErrorZ extends CommonBase { - private Result_UnsignedNodeAnnouncementDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_UnsignedNodeAnnouncementDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_UnsignedNodeAnnouncementDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_UnsignedNodeAnnouncementDecodeErrorZ_is_ok(ptr)) { - return new Result_UnsignedNodeAnnouncementDecodeErrorZ_OK(null, ptr); - } else { - return new Result_UnsignedNodeAnnouncementDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_UnsignedNodeAnnouncementDecodeErrorZ_OK extends Result_UnsignedNodeAnnouncementDecodeErrorZ { - public final UnsignedNodeAnnouncement res; - private Result_UnsignedNodeAnnouncementDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ_get_ok(ptr); - const res_hu_conv: UnsignedNodeAnnouncement = new UnsignedNodeAnnouncement(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_UnsignedNodeAnnouncementDecodeErrorZ_Err extends Result_UnsignedNodeAnnouncementDecodeErrorZ { - public final DecodeError err; - private Result_UnsignedNodeAnnouncementDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_UnsignedNodeAnnouncementDecodeErrorZ constructor_ok(UnsignedNodeAnnouncement o) { - number ret = bindings.CResult_UnsignedNodeAnnouncementDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_UnsignedNodeAnnouncementDecodeErrorZ ret_hu_conv = Result_UnsignedNodeAnnouncementDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_UnsignedNodeAnnouncementDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_UnsignedNodeAnnouncementDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_UnsignedNodeAnnouncementDecodeErrorZ ret_hu_conv = Result_UnsignedNodeAnnouncementDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_UnsignedNodeAnnouncementDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_UnsignedNodeAnnouncementDecodeErrorZ clone() { - number ret = bindings.CResult_UnsignedNodeAnnouncementDecodeErrorZ_clone(this.ptr); - Result_UnsignedNodeAnnouncementDecodeErrorZ ret_hu_conv = Result_UnsignedNodeAnnouncementDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_UpdateAddHTLCDecodeErrorZ.ts b/ts/structs/Result_UpdateAddHTLCDecodeErrorZ.ts deleted file mode 100644 index e0cd7e7e..00000000 --- a/ts/structs/Result_UpdateAddHTLCDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_UpdateAddHTLCDecodeErrorZ extends CommonBase { - private Result_UpdateAddHTLCDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_UpdateAddHTLCDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_UpdateAddHTLCDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_UpdateAddHTLCDecodeErrorZ_is_ok(ptr)) { - return new Result_UpdateAddHTLCDecodeErrorZ_OK(null, ptr); - } else { - return new Result_UpdateAddHTLCDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_UpdateAddHTLCDecodeErrorZ_OK extends Result_UpdateAddHTLCDecodeErrorZ { - public final UpdateAddHTLC res; - private Result_UpdateAddHTLCDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_UpdateAddHTLCDecodeErrorZ_get_ok(ptr); - const res_hu_conv: UpdateAddHTLC = new UpdateAddHTLC(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_UpdateAddHTLCDecodeErrorZ_Err extends Result_UpdateAddHTLCDecodeErrorZ { - public final DecodeError err; - private Result_UpdateAddHTLCDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_UpdateAddHTLCDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_UpdateAddHTLCDecodeErrorZ constructor_ok(UpdateAddHTLC o) { - number ret = bindings.CResult_UpdateAddHTLCDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_UpdateAddHTLCDecodeErrorZ ret_hu_conv = Result_UpdateAddHTLCDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_UpdateAddHTLCDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_UpdateAddHTLCDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_UpdateAddHTLCDecodeErrorZ ret_hu_conv = Result_UpdateAddHTLCDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_UpdateAddHTLCDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_UpdateAddHTLCDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_UpdateAddHTLCDecodeErrorZ clone() { - number ret = bindings.CResult_UpdateAddHTLCDecodeErrorZ_clone(this.ptr); - Result_UpdateAddHTLCDecodeErrorZ ret_hu_conv = Result_UpdateAddHTLCDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_UpdateFailHTLCDecodeErrorZ.ts b/ts/structs/Result_UpdateFailHTLCDecodeErrorZ.ts deleted file mode 100644 index 20f471a6..00000000 --- a/ts/structs/Result_UpdateFailHTLCDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_UpdateFailHTLCDecodeErrorZ extends CommonBase { - private Result_UpdateFailHTLCDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_UpdateFailHTLCDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_UpdateFailHTLCDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_UpdateFailHTLCDecodeErrorZ_is_ok(ptr)) { - return new Result_UpdateFailHTLCDecodeErrorZ_OK(null, ptr); - } else { - return new Result_UpdateFailHTLCDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_UpdateFailHTLCDecodeErrorZ_OK extends Result_UpdateFailHTLCDecodeErrorZ { - public final UpdateFailHTLC res; - private Result_UpdateFailHTLCDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_UpdateFailHTLCDecodeErrorZ_get_ok(ptr); - const res_hu_conv: UpdateFailHTLC = new UpdateFailHTLC(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_UpdateFailHTLCDecodeErrorZ_Err extends Result_UpdateFailHTLCDecodeErrorZ { - public final DecodeError err; - private Result_UpdateFailHTLCDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_UpdateFailHTLCDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_UpdateFailHTLCDecodeErrorZ constructor_ok(UpdateFailHTLC o) { - number ret = bindings.CResult_UpdateFailHTLCDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_UpdateFailHTLCDecodeErrorZ ret_hu_conv = Result_UpdateFailHTLCDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_UpdateFailHTLCDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_UpdateFailHTLCDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_UpdateFailHTLCDecodeErrorZ ret_hu_conv = Result_UpdateFailHTLCDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_UpdateFailHTLCDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_UpdateFailHTLCDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_UpdateFailHTLCDecodeErrorZ clone() { - number ret = bindings.CResult_UpdateFailHTLCDecodeErrorZ_clone(this.ptr); - Result_UpdateFailHTLCDecodeErrorZ ret_hu_conv = Result_UpdateFailHTLCDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_UpdateFailMalformedHTLCDecodeErrorZ.ts b/ts/structs/Result_UpdateFailMalformedHTLCDecodeErrorZ.ts deleted file mode 100644 index 4066e0b5..00000000 --- a/ts/structs/Result_UpdateFailMalformedHTLCDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_UpdateFailMalformedHTLCDecodeErrorZ extends CommonBase { - private Result_UpdateFailMalformedHTLCDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_UpdateFailMalformedHTLCDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_UpdateFailMalformedHTLCDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_UpdateFailMalformedHTLCDecodeErrorZ_is_ok(ptr)) { - return new Result_UpdateFailMalformedHTLCDecodeErrorZ_OK(null, ptr); - } else { - return new Result_UpdateFailMalformedHTLCDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_UpdateFailMalformedHTLCDecodeErrorZ_OK extends Result_UpdateFailMalformedHTLCDecodeErrorZ { - public final UpdateFailMalformedHTLC res; - private Result_UpdateFailMalformedHTLCDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ_get_ok(ptr); - const res_hu_conv: UpdateFailMalformedHTLC = new UpdateFailMalformedHTLC(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_UpdateFailMalformedHTLCDecodeErrorZ_Err extends Result_UpdateFailMalformedHTLCDecodeErrorZ { - public final DecodeError err; - private Result_UpdateFailMalformedHTLCDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_UpdateFailMalformedHTLCDecodeErrorZ constructor_ok(UpdateFailMalformedHTLC o) { - number ret = bindings.CResult_UpdateFailMalformedHTLCDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_UpdateFailMalformedHTLCDecodeErrorZ ret_hu_conv = Result_UpdateFailMalformedHTLCDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_UpdateFailMalformedHTLCDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_UpdateFailMalformedHTLCDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_UpdateFailMalformedHTLCDecodeErrorZ ret_hu_conv = Result_UpdateFailMalformedHTLCDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_UpdateFailMalformedHTLCDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_UpdateFailMalformedHTLCDecodeErrorZ clone() { - number ret = bindings.CResult_UpdateFailMalformedHTLCDecodeErrorZ_clone(this.ptr); - Result_UpdateFailMalformedHTLCDecodeErrorZ ret_hu_conv = Result_UpdateFailMalformedHTLCDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_UpdateFeeDecodeErrorZ.ts b/ts/structs/Result_UpdateFeeDecodeErrorZ.ts deleted file mode 100644 index 09fbb333..00000000 --- a/ts/structs/Result_UpdateFeeDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_UpdateFeeDecodeErrorZ extends CommonBase { - private Result_UpdateFeeDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_UpdateFeeDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_UpdateFeeDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_UpdateFeeDecodeErrorZ_is_ok(ptr)) { - return new Result_UpdateFeeDecodeErrorZ_OK(null, ptr); - } else { - return new Result_UpdateFeeDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_UpdateFeeDecodeErrorZ_OK extends Result_UpdateFeeDecodeErrorZ { - public final UpdateFee res; - private Result_UpdateFeeDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_UpdateFeeDecodeErrorZ_get_ok(ptr); - const res_hu_conv: UpdateFee = new UpdateFee(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_UpdateFeeDecodeErrorZ_Err extends Result_UpdateFeeDecodeErrorZ { - public final DecodeError err; - private Result_UpdateFeeDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_UpdateFeeDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_UpdateFeeDecodeErrorZ constructor_ok(UpdateFee o) { - number ret = bindings.CResult_UpdateFeeDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_UpdateFeeDecodeErrorZ ret_hu_conv = Result_UpdateFeeDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_UpdateFeeDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_UpdateFeeDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_UpdateFeeDecodeErrorZ ret_hu_conv = Result_UpdateFeeDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_UpdateFeeDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_UpdateFeeDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_UpdateFeeDecodeErrorZ clone() { - number ret = bindings.CResult_UpdateFeeDecodeErrorZ_clone(this.ptr); - Result_UpdateFeeDecodeErrorZ ret_hu_conv = Result_UpdateFeeDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_UpdateFulfillHTLCDecodeErrorZ.ts b/ts/structs/Result_UpdateFulfillHTLCDecodeErrorZ.ts deleted file mode 100644 index 7104ca83..00000000 --- a/ts/structs/Result_UpdateFulfillHTLCDecodeErrorZ.ts +++ /dev/null @@ -1,68 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_UpdateFulfillHTLCDecodeErrorZ extends CommonBase { - private Result_UpdateFulfillHTLCDecodeErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_UpdateFulfillHTLCDecodeErrorZ_free(ptr); } super.finalize(); - } - - static Result_UpdateFulfillHTLCDecodeErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_UpdateFulfillHTLCDecodeErrorZ_is_ok(ptr)) { - return new Result_UpdateFulfillHTLCDecodeErrorZ_OK(null, ptr); - } else { - return new Result_UpdateFulfillHTLCDecodeErrorZ_Err(null, ptr); - } - } - public static final class Result_UpdateFulfillHTLCDecodeErrorZ_OK extends Result_UpdateFulfillHTLCDecodeErrorZ { - public final UpdateFulfillHTLC res; - private Result_UpdateFulfillHTLCDecodeErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - number res = bindings.LDKCResult_UpdateFulfillHTLCDecodeErrorZ_get_ok(ptr); - const res_hu_conv: UpdateFulfillHTLC = new UpdateFulfillHTLC(null, res); - res_hu_conv.ptrs_to.add(this); - this.res = res_hu_conv; - } - } - - public static final class Result_UpdateFulfillHTLCDecodeErrorZ_Err extends Result_UpdateFulfillHTLCDecodeErrorZ { - public final DecodeError err; - private Result_UpdateFulfillHTLCDecodeErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_UpdateFulfillHTLCDecodeErrorZ_get_err(ptr); - const err_hu_conv: DecodeError = new DecodeError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_UpdateFulfillHTLCDecodeErrorZ constructor_ok(UpdateFulfillHTLC o) { - number ret = bindings.CResult_UpdateFulfillHTLCDecodeErrorZ_ok(o == null ? 0 : o.ptr & ~1); - Result_UpdateFulfillHTLCDecodeErrorZ ret_hu_conv = Result_UpdateFulfillHTLCDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_UpdateFulfillHTLCDecodeErrorZ constructor_err(DecodeError e) { - number ret = bindings.CResult_UpdateFulfillHTLCDecodeErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_UpdateFulfillHTLCDecodeErrorZ ret_hu_conv = Result_UpdateFulfillHTLCDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_UpdateFulfillHTLCDecodeErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_UpdateFulfillHTLCDecodeErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_UpdateFulfillHTLCDecodeErrorZ clone() { - number ret = bindings.CResult_UpdateFulfillHTLCDecodeErrorZ_clone(this.ptr); - Result_UpdateFulfillHTLCDecodeErrorZ ret_hu_conv = Result_UpdateFulfillHTLCDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result__u832APIErrorZ.ts b/ts/structs/Result__u832APIErrorZ.ts deleted file mode 100644 index bd0a59b0..00000000 --- a/ts/structs/Result__u832APIErrorZ.ts +++ /dev/null @@ -1,65 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result__u832APIErrorZ extends CommonBase { - private Result__u832APIErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult__u832APIErrorZ_free(ptr); } super.finalize(); - } - - static Result__u832APIErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult__u832APIErrorZ_is_ok(ptr)) { - return new Result__u832APIErrorZ_OK(null, ptr); - } else { - return new Result__u832APIErrorZ_Err(null, ptr); - } - } - public static final class Result__u832APIErrorZ_OK extends Result__u832APIErrorZ { - public final Uint8Array res; - private Result__u832APIErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - this.res = bindings.LDKCResult__u832APIErrorZ_get_ok(ptr); - } - } - - public static final class Result__u832APIErrorZ_Err extends Result__u832APIErrorZ { - public final APIError err; - private Result__u832APIErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult__u832APIErrorZ_get_err(ptr); - APIError err_hu_conv = APIError.constr_from_ptr(err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result__u832APIErrorZ constructor_ok(Uint8Array o) { - number ret = bindings.CResult__u832APIErrorZ_ok(InternalUtils.check_arr_len(o, 32)); - Result__u832APIErrorZ ret_hu_conv = Result__u832APIErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result__u832APIErrorZ constructor_err(APIError e) { - number ret = bindings.CResult__u832APIErrorZ_err(e.ptr); - Result__u832APIErrorZ ret_hu_conv = Result__u832APIErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult__u832APIErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult__u832APIErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result__u832APIErrorZ clone() { - number ret = bindings.CResult__u832APIErrorZ_clone(this.ptr); - Result__u832APIErrorZ ret_hu_conv = Result__u832APIErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_boolLightningErrorZ.ts b/ts/structs/Result_boolLightningErrorZ.ts deleted file mode 100644 index 021bd872..00000000 --- a/ts/structs/Result_boolLightningErrorZ.ts +++ /dev/null @@ -1,65 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_boolLightningErrorZ extends CommonBase { - private Result_boolLightningErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_boolLightningErrorZ_free(ptr); } super.finalize(); - } - - static Result_boolLightningErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_boolLightningErrorZ_is_ok(ptr)) { - return new Result_boolLightningErrorZ_OK(null, ptr); - } else { - return new Result_boolLightningErrorZ_Err(null, ptr); - } - } - public static final class Result_boolLightningErrorZ_OK extends Result_boolLightningErrorZ { - public final boolean res; - private Result_boolLightningErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - this.res = bindings.LDKCResult_boolLightningErrorZ_get_ok(ptr); - } - } - - public static final class Result_boolLightningErrorZ_Err extends Result_boolLightningErrorZ { - public final LightningError err; - private Result_boolLightningErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_boolLightningErrorZ_get_err(ptr); - const err_hu_conv: LightningError = new LightningError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_boolLightningErrorZ constructor_ok(boolean o) { - number ret = bindings.CResult_boolLightningErrorZ_ok(o); - Result_boolLightningErrorZ ret_hu_conv = Result_boolLightningErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_boolLightningErrorZ constructor_err(LightningError e) { - number ret = bindings.CResult_boolLightningErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_boolLightningErrorZ ret_hu_conv = Result_boolLightningErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_boolLightningErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_boolLightningErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_boolLightningErrorZ clone() { - number ret = bindings.CResult_boolLightningErrorZ_clone(this.ptr); - Result_boolLightningErrorZ ret_hu_conv = Result_boolLightningErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Result_boolPeerHandleErrorZ.ts b/ts/structs/Result_boolPeerHandleErrorZ.ts deleted file mode 100644 index 2d8e096a..00000000 --- a/ts/structs/Result_boolPeerHandleErrorZ.ts +++ /dev/null @@ -1,65 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class Result_boolPeerHandleErrorZ extends CommonBase { - private Result_boolPeerHandleErrorZ(Object _dummy, long ptr) { super(ptr); } - protected void finalize() throws Throwable { - if (ptr != 0) { bindings.CResult_boolPeerHandleErrorZ_free(ptr); } super.finalize(); - } - - static Result_boolPeerHandleErrorZ constr_from_ptr(long ptr) { - if (bindings.CResult_boolPeerHandleErrorZ_is_ok(ptr)) { - return new Result_boolPeerHandleErrorZ_OK(null, ptr); - } else { - return new Result_boolPeerHandleErrorZ_Err(null, ptr); - } - } - public static final class Result_boolPeerHandleErrorZ_OK extends Result_boolPeerHandleErrorZ { - public final boolean res; - private Result_boolPeerHandleErrorZ_OK(Object _dummy, long ptr) { - super(_dummy, ptr); - this.res = bindings.LDKCResult_boolPeerHandleErrorZ_get_ok(ptr); - } - } - - public static final class Result_boolPeerHandleErrorZ_Err extends Result_boolPeerHandleErrorZ { - public final PeerHandleError err; - private Result_boolPeerHandleErrorZ_Err(Object _dummy, long ptr) { - super(_dummy, ptr); - number err = bindings.LDKCResult_boolPeerHandleErrorZ_get_err(ptr); - const err_hu_conv: PeerHandleError = new PeerHandleError(null, err); - err_hu_conv.ptrs_to.add(this); - this.err = err_hu_conv; - } - } - - public static Result_boolPeerHandleErrorZ constructor_ok(boolean o) { - number ret = bindings.CResult_boolPeerHandleErrorZ_ok(o); - Result_boolPeerHandleErrorZ ret_hu_conv = Result_boolPeerHandleErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_boolPeerHandleErrorZ constructor_err(PeerHandleError e) { - number ret = bindings.CResult_boolPeerHandleErrorZ_err(e == null ? 0 : e.ptr & ~1); - Result_boolPeerHandleErrorZ ret_hu_conv = Result_boolPeerHandleErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean is_ok() { - boolean ret = bindings.CResult_boolPeerHandleErrorZ_is_ok(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.CResult_boolPeerHandleErrorZ_clone_ptr(this.ptr); - return ret; - } - - public Result_boolPeerHandleErrorZ clone() { - number ret = bindings.CResult_boolPeerHandleErrorZ_clone(this.ptr); - Result_boolPeerHandleErrorZ ret_hu_conv = Result_boolPeerHandleErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/RetryAttempts.ts b/ts/structs/RetryAttempts.ts deleted file mode 100644 index d844d6ed..00000000 --- a/ts/structs/RetryAttempts.ts +++ /dev/null @@ -1,60 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class RetryAttempts extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.RetryAttempts_free(this.ptr); - } - } - public number get_a() { - number ret = bindings.RetryAttempts_get_a(this.ptr); - return ret; - } - - public void set_a(number val) { - bindings.RetryAttempts_set_a(this.ptr, val); - } - - public static RetryAttempts constructor_new(number a_arg) { - number ret = bindings.RetryAttempts_new(a_arg); - const ret_hu_conv: RetryAttempts = new RetryAttempts(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.RetryAttempts_clone_ptr(this.ptr); - return ret; - } - - public RetryAttempts clone() { - number ret = bindings.RetryAttempts_clone(this.ptr); - const ret_hu_conv: RetryAttempts = new RetryAttempts(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public boolean eq(RetryAttempts b) { - boolean ret = bindings.RetryAttempts_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - this.ptrs_to.add(b); - return ret; - } - - public number hash() { - number ret = bindings.RetryAttempts_hash(this.ptr); - return ret; - } - -} diff --git a/ts/structs/RevokeAndACK.ts b/ts/structs/RevokeAndACK.ts deleted file mode 100644 index b4720403..00000000 --- a/ts/structs/RevokeAndACK.ts +++ /dev/null @@ -1,78 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class RevokeAndACK extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.RevokeAndACK_free(this.ptr); - } - } - public Uint8Array get_channel_id() { - Uint8Array ret = bindings.RevokeAndACK_get_channel_id(this.ptr); - return ret; - } - - public void set_channel_id(Uint8Array val) { - bindings.RevokeAndACK_set_channel_id(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public Uint8Array get_per_commitment_secret() { - Uint8Array ret = bindings.RevokeAndACK_get_per_commitment_secret(this.ptr); - return ret; - } - - public void set_per_commitment_secret(Uint8Array val) { - bindings.RevokeAndACK_set_per_commitment_secret(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public Uint8Array get_next_per_commitment_point() { - Uint8Array ret = bindings.RevokeAndACK_get_next_per_commitment_point(this.ptr); - return ret; - } - - public void set_next_per_commitment_point(Uint8Array val) { - bindings.RevokeAndACK_set_next_per_commitment_point(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public static RevokeAndACK constructor_new(Uint8Array channel_id_arg, Uint8Array per_commitment_secret_arg, Uint8Array next_per_commitment_point_arg) { - number ret = bindings.RevokeAndACK_new(InternalUtils.check_arr_len(channel_id_arg, 32), InternalUtils.check_arr_len(per_commitment_secret_arg, 32), InternalUtils.check_arr_len(next_per_commitment_point_arg, 33)); - const ret_hu_conv: RevokeAndACK = new RevokeAndACK(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.RevokeAndACK_clone_ptr(this.ptr); - return ret; - } - - public RevokeAndACK clone() { - number ret = bindings.RevokeAndACK_clone(this.ptr); - const ret_hu_conv: RevokeAndACK = new RevokeAndACK(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.RevokeAndACK_write(this.ptr); - return ret; - } - - public static Result_RevokeAndACKDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.RevokeAndACK_read(ser); - Result_RevokeAndACKDecodeErrorZ ret_hu_conv = Result_RevokeAndACKDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Route.ts b/ts/structs/Route.ts deleted file mode 100644 index 0335254b..00000000 --- a/ts/structs/Route.ts +++ /dev/null @@ -1,104 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class Route extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.Route_free(this.ptr); - } - } - public RouteHop[][] get_paths() { - number[][] ret = bindings.Route_get_paths(this.ptr); - RouteHop[][] ret_conv_12_arr = new RouteHop[ret.length][]; - for (int m = 0; m < ret.length; m++) { - number[] ret_conv_12 = ret[m]; - RouteHop[] ret_conv_12_conv_10_arr = new RouteHop[ret_conv_12.length]; - for (int k = 0; k < ret_conv_12.length; k++) { - number ret_conv_12_conv_10 = ret_conv_12[k]; - const ret_conv_12_conv_10_hu_conv: RouteHop = new RouteHop(null, ret_conv_12_conv_10); - ret_conv_12_conv_10_hu_conv.ptrs_to.add(this); - ret_conv_12_conv_10_arr[k] = ret_conv_12_conv_10_hu_conv; - } - ret_conv_12_arr[m] = ret_conv_12_conv_10_arr; - } - return ret_conv_12_arr; - } - - public void set_paths(RouteHop[][] val) { - bindings.Route_set_paths(this.ptr, val != null ? Arrays.stream(val).map(val_conv_12 -> val_conv_12 != null ? Arrays.stream(val_conv_12).map(val_conv_12_conv_10 -> val_conv_12_conv_10 == null ? 0 : val_conv_12_conv_10.ptr & ~1).toArray(number[]::new) : null).toArray(number[][]::new) : null); - } - - public Payee get_payee() { - number ret = bindings.Route_get_payee(this.ptr); - const ret_hu_conv: Payee = new Payee(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_payee(Payee val) { - bindings.Route_set_payee(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public static Route constructor_new(RouteHop[][] paths_arg, Payee payee_arg) { - number ret = bindings.Route_new(paths_arg != null ? Arrays.stream(paths_arg).map(paths_arg_conv_12 -> paths_arg_conv_12 != null ? Arrays.stream(paths_arg_conv_12).map(paths_arg_conv_12_conv_10 -> paths_arg_conv_12_conv_10 == null ? 0 : paths_arg_conv_12_conv_10.ptr & ~1).toArray(number[]::new) : null).toArray(number[][]::new) : null, payee_arg == null ? 0 : payee_arg.ptr & ~1); - const ret_hu_conv: Route = new Route(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.Route_clone_ptr(this.ptr); - return ret; - } - - public Route clone() { - number ret = bindings.Route_clone(this.ptr); - const ret_hu_conv: Route = new Route(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public number hash() { - number ret = bindings.Route_hash(this.ptr); - return ret; - } - - public boolean eq(Route b) { - boolean ret = bindings.Route_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - this.ptrs_to.add(b); - return ret; - } - - public number get_total_fees() { - number ret = bindings.Route_get_total_fees(this.ptr); - return ret; - } - - public number get_total_amount() { - number ret = bindings.Route_get_total_amount(this.ptr); - return ret; - } - - public Uint8Array write() { - Uint8Array ret = bindings.Route_write(this.ptr); - return ret; - } - - public static Result_RouteDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.Route_read(ser); - Result_RouteDecodeErrorZ ret_hu_conv = Result_RouteDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/RouteHint.ts b/ts/structs/RouteHint.ts deleted file mode 100644 index 05604200..00000000 --- a/ts/structs/RouteHint.ts +++ /dev/null @@ -1,78 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class RouteHint extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.RouteHint_free(this.ptr); - } - } - public RouteHintHop[] get_a() { - number[] ret = bindings.RouteHint_get_a(this.ptr); - RouteHintHop[] ret_conv_14_arr = new RouteHintHop[ret.length]; - for (int o = 0; o < ret.length; o++) { - number ret_conv_14 = ret[o]; - const ret_conv_14_hu_conv: RouteHintHop = new RouteHintHop(null, ret_conv_14); - ret_conv_14_hu_conv.ptrs_to.add(this); - ret_conv_14_arr[o] = ret_conv_14_hu_conv; - } - return ret_conv_14_arr; - } - - public void set_a(RouteHintHop[] val) { - bindings.RouteHint_set_a(this.ptr, val != null ? Arrays.stream(val).map(val_conv_14 -> val_conv_14 == null ? 0 : val_conv_14.ptr & ~1).toArray(number[]::new) : null); - } - - public static RouteHint constructor_new(RouteHintHop[] a_arg) { - number ret = bindings.RouteHint_new(a_arg != null ? Arrays.stream(a_arg).map(a_arg_conv_14 -> a_arg_conv_14 == null ? 0 : a_arg_conv_14.ptr & ~1).toArray(number[]::new) : null); - const ret_hu_conv: RouteHint = new RouteHint(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.RouteHint_clone_ptr(this.ptr); - return ret; - } - - public RouteHint clone() { - number ret = bindings.RouteHint_clone(this.ptr); - const ret_hu_conv: RouteHint = new RouteHint(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public number hash() { - number ret = bindings.RouteHint_hash(this.ptr); - return ret; - } - - public boolean eq(RouteHint b) { - boolean ret = bindings.RouteHint_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - this.ptrs_to.add(b); - return ret; - } - - public Uint8Array write() { - Uint8Array ret = bindings.RouteHint_write(this.ptr); - return ret; - } - - public static Result_RouteHintDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.RouteHint_read(ser); - Result_RouteHintDecodeErrorZ ret_hu_conv = Result_RouteHintDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/RouteHintHop.ts b/ts/structs/RouteHintHop.ts deleted file mode 100644 index a211023c..00000000 --- a/ts/structs/RouteHintHop.ts +++ /dev/null @@ -1,122 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class RouteHintHop extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.RouteHintHop_free(this.ptr); - } - } - public Uint8Array get_src_node_id() { - Uint8Array ret = bindings.RouteHintHop_get_src_node_id(this.ptr); - return ret; - } - - public void set_src_node_id(Uint8Array val) { - bindings.RouteHintHop_set_src_node_id(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public number get_short_channel_id() { - number ret = bindings.RouteHintHop_get_short_channel_id(this.ptr); - return ret; - } - - public void set_short_channel_id(number val) { - bindings.RouteHintHop_set_short_channel_id(this.ptr, val); - } - - public RoutingFees get_fees() { - number ret = bindings.RouteHintHop_get_fees(this.ptr); - const ret_hu_conv: RoutingFees = new RoutingFees(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_fees(RoutingFees val) { - bindings.RouteHintHop_set_fees(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public number get_cltv_expiry_delta() { - number ret = bindings.RouteHintHop_get_cltv_expiry_delta(this.ptr); - return ret; - } - - public void set_cltv_expiry_delta(number val) { - bindings.RouteHintHop_set_cltv_expiry_delta(this.ptr, val); - } - - public Option_u64Z get_htlc_minimum_msat() { - number ret = bindings.RouteHintHop_get_htlc_minimum_msat(this.ptr); - Option_u64Z ret_hu_conv = Option_u64Z.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_htlc_minimum_msat(Option_u64Z val) { - bindings.RouteHintHop_set_htlc_minimum_msat(this.ptr, val.ptr); - } - - public Option_u64Z get_htlc_maximum_msat() { - number ret = bindings.RouteHintHop_get_htlc_maximum_msat(this.ptr); - Option_u64Z ret_hu_conv = Option_u64Z.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_htlc_maximum_msat(Option_u64Z val) { - bindings.RouteHintHop_set_htlc_maximum_msat(this.ptr, val.ptr); - } - - public static RouteHintHop constructor_new(Uint8Array src_node_id_arg, number short_channel_id_arg, RoutingFees fees_arg, number cltv_expiry_delta_arg, Option_u64Z htlc_minimum_msat_arg, Option_u64Z htlc_maximum_msat_arg) { - number ret = bindings.RouteHintHop_new(InternalUtils.check_arr_len(src_node_id_arg, 33), short_channel_id_arg, fees_arg == null ? 0 : fees_arg.ptr & ~1, cltv_expiry_delta_arg, htlc_minimum_msat_arg.ptr, htlc_maximum_msat_arg.ptr); - const ret_hu_conv: RouteHintHop = new RouteHintHop(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.RouteHintHop_clone_ptr(this.ptr); - return ret; - } - - public RouteHintHop clone() { - number ret = bindings.RouteHintHop_clone(this.ptr); - const ret_hu_conv: RouteHintHop = new RouteHintHop(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public number hash() { - number ret = bindings.RouteHintHop_hash(this.ptr); - return ret; - } - - public boolean eq(RouteHintHop b) { - boolean ret = bindings.RouteHintHop_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - this.ptrs_to.add(b); - return ret; - } - - public Uint8Array write() { - Uint8Array ret = bindings.RouteHintHop_write(this.ptr); - return ret; - } - - public static Result_RouteHintHopDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.RouteHintHop_read(ser); - Result_RouteHintHopDecodeErrorZ ret_hu_conv = Result_RouteHintHopDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/RouteHop.ts b/ts/structs/RouteHop.ts deleted file mode 100644 index af9e0616..00000000 --- a/ts/structs/RouteHop.ts +++ /dev/null @@ -1,120 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class RouteHop extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.RouteHop_free(this.ptr); - } - } - public Uint8Array get_pubkey() { - Uint8Array ret = bindings.RouteHop_get_pubkey(this.ptr); - return ret; - } - - public void set_pubkey(Uint8Array val) { - bindings.RouteHop_set_pubkey(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public NodeFeatures get_node_features() { - number ret = bindings.RouteHop_get_node_features(this.ptr); - const ret_hu_conv: NodeFeatures = new NodeFeatures(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_node_features(NodeFeatures val) { - bindings.RouteHop_set_node_features(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public number get_short_channel_id() { - number ret = bindings.RouteHop_get_short_channel_id(this.ptr); - return ret; - } - - public void set_short_channel_id(number val) { - bindings.RouteHop_set_short_channel_id(this.ptr, val); - } - - public ChannelFeatures get_channel_features() { - number ret = bindings.RouteHop_get_channel_features(this.ptr); - const ret_hu_conv: ChannelFeatures = new ChannelFeatures(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_channel_features(ChannelFeatures val) { - bindings.RouteHop_set_channel_features(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public number get_fee_msat() { - number ret = bindings.RouteHop_get_fee_msat(this.ptr); - return ret; - } - - public void set_fee_msat(number val) { - bindings.RouteHop_set_fee_msat(this.ptr, val); - } - - public number get_cltv_expiry_delta() { - number ret = bindings.RouteHop_get_cltv_expiry_delta(this.ptr); - return ret; - } - - public void set_cltv_expiry_delta(number val) { - bindings.RouteHop_set_cltv_expiry_delta(this.ptr, val); - } - - public static RouteHop constructor_new(Uint8Array pubkey_arg, NodeFeatures node_features_arg, number short_channel_id_arg, ChannelFeatures channel_features_arg, number fee_msat_arg, number cltv_expiry_delta_arg) { - number ret = bindings.RouteHop_new(InternalUtils.check_arr_len(pubkey_arg, 33), node_features_arg == null ? 0 : node_features_arg.ptr & ~1, short_channel_id_arg, channel_features_arg == null ? 0 : channel_features_arg.ptr & ~1, fee_msat_arg, cltv_expiry_delta_arg); - const ret_hu_conv: RouteHop = new RouteHop(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.RouteHop_clone_ptr(this.ptr); - return ret; - } - - public RouteHop clone() { - number ret = bindings.RouteHop_clone(this.ptr); - const ret_hu_conv: RouteHop = new RouteHop(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public number hash() { - number ret = bindings.RouteHop_hash(this.ptr); - return ret; - } - - public boolean eq(RouteHop b) { - boolean ret = bindings.RouteHop_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - this.ptrs_to.add(b); - return ret; - } - - public Uint8Array write() { - Uint8Array ret = bindings.RouteHop_write(this.ptr); - return ret; - } - - public static Result_RouteHopDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.RouteHop_read(ser); - Result_RouteHopDecodeErrorZ ret_hu_conv = Result_RouteHopDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/RouteParameters.ts b/ts/structs/RouteParameters.ts deleted file mode 100644 index 304e3190..00000000 --- a/ts/structs/RouteParameters.ts +++ /dev/null @@ -1,80 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class RouteParameters extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.RouteParameters_free(this.ptr); - } - } - public Payee get_payee() { - number ret = bindings.RouteParameters_get_payee(this.ptr); - const ret_hu_conv: Payee = new Payee(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_payee(Payee val) { - bindings.RouteParameters_set_payee(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public number get_final_value_msat() { - number ret = bindings.RouteParameters_get_final_value_msat(this.ptr); - return ret; - } - - public void set_final_value_msat(number val) { - bindings.RouteParameters_set_final_value_msat(this.ptr, val); - } - - public number get_final_cltv_expiry_delta() { - number ret = bindings.RouteParameters_get_final_cltv_expiry_delta(this.ptr); - return ret; - } - - public void set_final_cltv_expiry_delta(number val) { - bindings.RouteParameters_set_final_cltv_expiry_delta(this.ptr, val); - } - - public static RouteParameters constructor_new(Payee payee_arg, number final_value_msat_arg, number final_cltv_expiry_delta_arg) { - number ret = bindings.RouteParameters_new(payee_arg == null ? 0 : payee_arg.ptr & ~1, final_value_msat_arg, final_cltv_expiry_delta_arg); - const ret_hu_conv: RouteParameters = new RouteParameters(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.RouteParameters_clone_ptr(this.ptr); - return ret; - } - - public RouteParameters clone() { - number ret = bindings.RouteParameters_clone(this.ptr); - const ret_hu_conv: RouteParameters = new RouteParameters(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.RouteParameters_write(this.ptr); - return ret; - } - - public static Result_RouteParametersDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.RouteParameters_read(ser); - Result_RouteParametersDecodeErrorZ ret_hu_conv = Result_RouteParametersDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Router.ts b/ts/structs/Router.ts deleted file mode 100644 index b6b848ee..00000000 --- a/ts/structs/Router.ts +++ /dev/null @@ -1,74 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export class Router extends CommonBase { - - bindings_instance?: bindings.LDKRouter; - - constructor(ptr?: number, arg?: bindings.LDKRouter) { - if (Number.isFinite(ptr)) { - super(ptr); - this.bindings_instance = null; - } else { - // TODO: private constructor instantiation - super(bindings.LDKRouter_new(arg)); - this.ptrs_to.push(arg); - - } - } - - protected finalize() { - if (this.ptr != 0) { - bindings.Router_free(this.ptr); - } - super.finalize(); - } - - static new_impl(arg: RouterInterface): Router { - const impl_holder: LDKRouterHolder = new LDKRouterHolder(); - let structImplementation = { - // todo: in-line interface filling - find_route (payer: Uint8Array, params: number, payment_hash: Uint8Array, first_hops: number[], scorer: number): number { - const params_hu_conv: RouteParameters = new RouteParameters(null, params); - ChannelDetails[] first_hops_conv_16_arr = new ChannelDetails[first_hops.length]; - for (int q = 0; q < first_hops.length; q++) { - number first_hops_conv_16 = first_hops[q]; - const first_hops_conv_16_hu_conv: ChannelDetails = new ChannelDetails(null, first_hops_conv_16); - first_hops_conv_16_hu_conv.ptrs_to.add(this); - first_hops_conv_16_arr[q] = first_hops_conv_16_hu_conv; - } - Score ret_hu_conv = new Score(null, scorer); - ret_hu_conv.ptrs_to.add(this); - Result_RouteLightningErrorZ ret = arg.find_route(payer, params_hu_conv, payment_hash, first_hops_conv_16_arr, ret_hu_conv); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - - }; - impl_holder.held = new Router (null, structImplementation); - } - } - - export interface RouterInterface { - find_route(payer: Uint8Array, params: RouteParameters, payment_hash: Uint8Array, first_hops: ChannelDetails[], scorer: Score): Result_RouteLightningErrorZ; - - } - - class LDKRouterHolder { - held: Router; - } - public Result_RouteLightningErrorZ find_route(Uint8Array payer, RouteParameters params, Uint8Array payment_hash, ChannelDetails[] first_hops, Score scorer) { - number ret = bindings.Router_find_route(this.ptr, InternalUtils.check_arr_len(payer, 33), params == null ? 0 : params.ptr & ~1, InternalUtils.check_arr_len(payment_hash, 32), first_hops != null ? Arrays.stream(first_hops).map(first_hops_conv_16 -> first_hops_conv_16 == null ? 0 : first_hops_conv_16.ptr & ~1).toArray(number[]::new) : null, scorer == null ? 0 : scorer.ptr); - Result_RouteLightningErrorZ ret_hu_conv = Result_RouteLightningErrorZ.constr_from_ptr(ret); - this.ptrs_to.add(params); - for (ChannelDetails first_hops_conv_16: first_hops) { this.ptrs_to.add(first_hops_conv_16); }; - this.ptrs_to.add(scorer); - return ret_hu_conv; - } - -} diff --git a/ts/structs/RoutingFees.ts b/ts/structs/RoutingFees.ts deleted file mode 100644 index 494a0fb1..00000000 --- a/ts/structs/RoutingFees.ts +++ /dev/null @@ -1,80 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class RoutingFees extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.RoutingFees_free(this.ptr); - } - } - public number get_base_msat() { - number ret = bindings.RoutingFees_get_base_msat(this.ptr); - return ret; - } - - public void set_base_msat(number val) { - bindings.RoutingFees_set_base_msat(this.ptr, val); - } - - public number get_proportional_millionths() { - number ret = bindings.RoutingFees_get_proportional_millionths(this.ptr); - return ret; - } - - public void set_proportional_millionths(number val) { - bindings.RoutingFees_set_proportional_millionths(this.ptr, val); - } - - public static RoutingFees constructor_new(number base_msat_arg, number proportional_millionths_arg) { - number ret = bindings.RoutingFees_new(base_msat_arg, proportional_millionths_arg); - const ret_hu_conv: RoutingFees = new RoutingFees(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public boolean eq(RoutingFees b) { - boolean ret = bindings.RoutingFees_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - this.ptrs_to.add(b); - return ret; - } - - public number clone_ptr() { - number ret = bindings.RoutingFees_clone_ptr(this.ptr); - return ret; - } - - public RoutingFees clone() { - number ret = bindings.RoutingFees_clone(this.ptr); - const ret_hu_conv: RoutingFees = new RoutingFees(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public number hash() { - number ret = bindings.RoutingFees_hash(this.ptr); - return ret; - } - - public Uint8Array write() { - Uint8Array ret = bindings.RoutingFees_write(this.ptr); - return ret; - } - - public static Result_RoutingFeesDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.RoutingFees_read(ser); - Result_RoutingFeesDecodeErrorZ ret_hu_conv = Result_RoutingFeesDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/RoutingMessageHandler.ts b/ts/structs/RoutingMessageHandler.ts deleted file mode 100644 index 263b67c0..00000000 --- a/ts/structs/RoutingMessageHandler.ts +++ /dev/null @@ -1,203 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export class RoutingMessageHandler extends CommonBase { - - bindings_instance?: bindings.LDKRoutingMessageHandler; - - constructor(ptr?: number, arg?: bindings.LDKRoutingMessageHandler, messageSendEventsProvider?: bindings.LDKMessageSendEventsProvider) { - if (Number.isFinite(ptr)) { - super(ptr); - this.bindings_instance = null; - } else { - // TODO: private constructor instantiation - super(bindings.LDKRoutingMessageHandler_new(arg, messageSendEventsProvider)); - this.ptrs_to.push(arg); - this.ptrs_to.push(messageSendEventsProvider); - - } - } - - protected finalize() { - if (this.ptr != 0) { - bindings.RoutingMessageHandler_free(this.ptr); - } - super.finalize(); - } - - static new_impl(arg: RoutingMessageHandlerInterface, messageSendEventsProvider_impl: MessageSendEventsProvider.MessageSendEventsProviderInterface): RoutingMessageHandler { - const impl_holder: LDKRoutingMessageHandlerHolder = new LDKRoutingMessageHandlerHolder(); - let structImplementation = { - // todo: in-line interface filling - handle_node_announcement (msg: number): number { - const msg_hu_conv: NodeAnnouncement = new NodeAnnouncement(null, msg); - Result_boolLightningErrorZ ret = arg.handle_node_announcement(msg_hu_conv); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - handle_channel_announcement (msg: number): number { - const msg_hu_conv: ChannelAnnouncement = new ChannelAnnouncement(null, msg); - Result_boolLightningErrorZ ret = arg.handle_channel_announcement(msg_hu_conv); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - handle_channel_update (msg: number): number { - const msg_hu_conv: ChannelUpdate = new ChannelUpdate(null, msg); - Result_boolLightningErrorZ ret = arg.handle_channel_update(msg_hu_conv); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - get_next_channel_announcements (starting_point: number, batch_amount: number): number[] { - ThreeTuple_ChannelAnnouncementChannelUpdateChannelUpdateZ[] ret = arg.get_next_channel_announcements(starting_point, batch_amount); - result: number[] = ret != null ? Arrays.stream(ret).map(ret_conv_59 -> ret_conv_59 == null ? 0 : ret_conv_59.clone_ptr()).toArray(number[]::new) : null; - return result; - }, - - get_next_node_announcements (starting_point: Uint8Array, batch_amount: number): number[] { - NodeAnnouncement[] ret = arg.get_next_node_announcements(starting_point, batch_amount); - result: number[] = ret != null ? Arrays.stream(ret).map(ret_conv_18 -> ret_conv_18 == null ? 0 : ret_conv_18.clone_ptr()).toArray(number[]::new) : null; - return result; - }, - - sync_routing_table (their_node_id: Uint8Array, init: number): void { - const init_hu_conv: Init = new Init(null, init); - arg.sync_routing_table(their_node_id, init_hu_conv); - }, - - handle_reply_channel_range (their_node_id: Uint8Array, msg: number): number { - const msg_hu_conv: ReplyChannelRange = new ReplyChannelRange(null, msg); - msg_hu_conv.ptrs_to.add(this); - Result_NoneLightningErrorZ ret = arg.handle_reply_channel_range(their_node_id, msg_hu_conv); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - handle_reply_short_channel_ids_end (their_node_id: Uint8Array, msg: number): number { - const msg_hu_conv: ReplyShortChannelIdsEnd = new ReplyShortChannelIdsEnd(null, msg); - msg_hu_conv.ptrs_to.add(this); - Result_NoneLightningErrorZ ret = arg.handle_reply_short_channel_ids_end(their_node_id, msg_hu_conv); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - handle_query_channel_range (their_node_id: Uint8Array, msg: number): number { - const msg_hu_conv: QueryChannelRange = new QueryChannelRange(null, msg); - msg_hu_conv.ptrs_to.add(this); - Result_NoneLightningErrorZ ret = arg.handle_query_channel_range(their_node_id, msg_hu_conv); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - handle_query_short_channel_ids (their_node_id: Uint8Array, msg: number): number { - const msg_hu_conv: QueryShortChannelIds = new QueryShortChannelIds(null, msg); - msg_hu_conv.ptrs_to.add(this); - Result_NoneLightningErrorZ ret = arg.handle_query_short_channel_ids(their_node_id, msg_hu_conv); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - - }; - impl_holder.held = new RoutingMessageHandler (null, structImplementation, MessageSendEventsProvider.new_impl(MessageSendEventsProvider_impl).bindings_instance); - } - } - - export interface RoutingMessageHandlerInterface { - handle_node_announcement(msg: NodeAnnouncement): Result_boolLightningErrorZ; - handle_channel_announcement(msg: ChannelAnnouncement): Result_boolLightningErrorZ; - handle_channel_update(msg: ChannelUpdate): Result_boolLightningErrorZ; - get_next_channel_announcements(starting_point: number, batch_amount: number): ThreeTuple_ChannelAnnouncementChannelUpdateChannelUpdateZ[]; - get_next_node_announcements(starting_point: Uint8Array, batch_amount: number): NodeAnnouncement[]; - sync_routing_table(their_node_id: Uint8Array, init: Init): void; - handle_reply_channel_range(their_node_id: Uint8Array, msg: ReplyChannelRange): Result_NoneLightningErrorZ; - handle_reply_short_channel_ids_end(their_node_id: Uint8Array, msg: ReplyShortChannelIdsEnd): Result_NoneLightningErrorZ; - handle_query_channel_range(their_node_id: Uint8Array, msg: QueryChannelRange): Result_NoneLightningErrorZ; - handle_query_short_channel_ids(their_node_id: Uint8Array, msg: QueryShortChannelIds): Result_NoneLightningErrorZ; - - } - - class LDKRoutingMessageHandlerHolder { - held: RoutingMessageHandler; - } - public Result_boolLightningErrorZ handle_node_announcement(NodeAnnouncement msg) { - number ret = bindings.RoutingMessageHandler_handle_node_announcement(this.ptr, msg == null ? 0 : msg.ptr & ~1); - Result_boolLightningErrorZ ret_hu_conv = Result_boolLightningErrorZ.constr_from_ptr(ret); - this.ptrs_to.add(msg); - return ret_hu_conv; - } - - public Result_boolLightningErrorZ handle_channel_announcement(ChannelAnnouncement msg) { - number ret = bindings.RoutingMessageHandler_handle_channel_announcement(this.ptr, msg == null ? 0 : msg.ptr & ~1); - Result_boolLightningErrorZ ret_hu_conv = Result_boolLightningErrorZ.constr_from_ptr(ret); - this.ptrs_to.add(msg); - return ret_hu_conv; - } - - public Result_boolLightningErrorZ handle_channel_update(ChannelUpdate msg) { - number ret = bindings.RoutingMessageHandler_handle_channel_update(this.ptr, msg == null ? 0 : msg.ptr & ~1); - Result_boolLightningErrorZ ret_hu_conv = Result_boolLightningErrorZ.constr_from_ptr(ret); - this.ptrs_to.add(msg); - return ret_hu_conv; - } - - public ThreeTuple_ChannelAnnouncementChannelUpdateChannelUpdateZ[] get_next_channel_announcements(number starting_point, number batch_amount) { - number[] ret = bindings.RoutingMessageHandler_get_next_channel_announcements(this.ptr, starting_point, batch_amount); - ThreeTuple_ChannelAnnouncementChannelUpdateChannelUpdateZ[] ret_conv_59_arr = new ThreeTuple_ChannelAnnouncementChannelUpdateChannelUpdateZ[ret.length]; - for (int h = 0; h < ret.length; h++) { - number ret_conv_59 = ret[h]; - ThreeTuple_ChannelAnnouncementChannelUpdateChannelUpdateZ ret_conv_59_hu_conv = new ThreeTuple_ChannelAnnouncementChannelUpdateChannelUpdateZ(null, ret_conv_59); - ret_conv_59_hu_conv.ptrs_to.add(this); - ret_conv_59_arr[h] = ret_conv_59_hu_conv; - } - return ret_conv_59_arr; - } - - public NodeAnnouncement[] get_next_node_announcements(Uint8Array starting_point, number batch_amount) { - number[] ret = bindings.RoutingMessageHandler_get_next_node_announcements(this.ptr, InternalUtils.check_arr_len(starting_point, 33), batch_amount); - NodeAnnouncement[] ret_conv_18_arr = new NodeAnnouncement[ret.length]; - for (int s = 0; s < ret.length; s++) { - number ret_conv_18 = ret[s]; - const ret_conv_18_hu_conv: NodeAnnouncement = new NodeAnnouncement(null, ret_conv_18); - ret_conv_18_hu_conv.ptrs_to.add(this); - ret_conv_18_arr[s] = ret_conv_18_hu_conv; - } - return ret_conv_18_arr; - } - - public void sync_routing_table(Uint8Array their_node_id, Init init) { - bindings.RoutingMessageHandler_sync_routing_table(this.ptr, InternalUtils.check_arr_len(their_node_id, 33), init == null ? 0 : init.ptr & ~1); - this.ptrs_to.add(init); - } - - public Result_NoneLightningErrorZ handle_reply_channel_range(Uint8Array their_node_id, ReplyChannelRange msg) { - number ret = bindings.RoutingMessageHandler_handle_reply_channel_range(this.ptr, InternalUtils.check_arr_len(their_node_id, 33), msg == null ? 0 : msg.ptr & ~1); - Result_NoneLightningErrorZ ret_hu_conv = Result_NoneLightningErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public Result_NoneLightningErrorZ handle_reply_short_channel_ids_end(Uint8Array their_node_id, ReplyShortChannelIdsEnd msg) { - number ret = bindings.RoutingMessageHandler_handle_reply_short_channel_ids_end(this.ptr, InternalUtils.check_arr_len(their_node_id, 33), msg == null ? 0 : msg.ptr & ~1); - Result_NoneLightningErrorZ ret_hu_conv = Result_NoneLightningErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public Result_NoneLightningErrorZ handle_query_channel_range(Uint8Array their_node_id, QueryChannelRange msg) { - number ret = bindings.RoutingMessageHandler_handle_query_channel_range(this.ptr, InternalUtils.check_arr_len(their_node_id, 33), msg == null ? 0 : msg.ptr & ~1); - Result_NoneLightningErrorZ ret_hu_conv = Result_NoneLightningErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public Result_NoneLightningErrorZ handle_query_short_channel_ids(Uint8Array their_node_id, QueryShortChannelIds msg) { - number ret = bindings.RoutingMessageHandler_handle_query_short_channel_ids(this.ptr, InternalUtils.check_arr_len(their_node_id, 33), msg == null ? 0 : msg.ptr & ~1); - Result_NoneLightningErrorZ ret_hu_conv = Result_NoneLightningErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Score.ts b/ts/structs/Score.ts deleted file mode 100644 index 6c73fe5c..00000000 --- a/ts/structs/Score.ts +++ /dev/null @@ -1,108 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export class Score extends CommonBase { - - bindings_instance?: bindings.LDKScore; - - constructor(ptr?: number, arg?: bindings.LDKScore) { - if (Number.isFinite(ptr)) { - super(ptr); - this.bindings_instance = null; - } else { - // TODO: private constructor instantiation - super(bindings.LDKScore_new(arg)); - this.ptrs_to.push(arg); - - } - } - - protected finalize() { - if (this.ptr != 0) { - bindings.Score_free(this.ptr); - } - super.finalize(); - } - - static new_impl(arg: ScoreInterface): Score { - const impl_holder: LDKScoreHolder = new LDKScoreHolder(); - let structImplementation = { - // todo: in-line interface filling - channel_penalty_msat (short_channel_id: number, send_amt_msat: number, channel_capacity_msat: number, source: number, target: number): number { - Option_u64Z channel_capacity_msat_hu_conv = Option_u64Z.constr_from_ptr(channel_capacity_msat); - channel_capacity_msat_hu_conv.ptrs_to.add(this); - const source_hu_conv: NodeId = new NodeId(null, source); - const target_hu_conv: NodeId = new NodeId(null, target); - number ret = arg.channel_penalty_msat(short_channel_id, send_amt_msat, channel_capacity_msat_hu_conv, source_hu_conv, target_hu_conv); - return ret; - }, - - payment_path_failed (path: number[], short_channel_id: number): void { - RouteHop[] path_conv_10_arr = new RouteHop[path.length]; - for (int k = 0; k < path.length; k++) { - number path_conv_10 = path[k]; - const path_conv_10_hu_conv: RouteHop = new RouteHop(null, path_conv_10); - path_conv_10_hu_conv.ptrs_to.add(this); - path_conv_10_arr[k] = path_conv_10_hu_conv; - } - arg.payment_path_failed(path_conv_10_arr, short_channel_id); - }, - - payment_path_successful (path: number[]): void { - RouteHop[] path_conv_10_arr = new RouteHop[path.length]; - for (int k = 0; k < path.length; k++) { - number path_conv_10 = path[k]; - const path_conv_10_hu_conv: RouteHop = new RouteHop(null, path_conv_10); - path_conv_10_hu_conv.ptrs_to.add(this); - path_conv_10_arr[k] = path_conv_10_hu_conv; - } - arg.payment_path_successful(path_conv_10_arr); - }, - - write (): Uint8Array { - Uint8Array ret = arg.write(); - return ret; - }, - - - }; - impl_holder.held = new Score (null, structImplementation); - } - } - - export interface ScoreInterface { - channel_penalty_msat(short_channel_id: number, send_amt_msat: number, channel_capacity_msat: Option_u64Z, source: NodeId, target: NodeId): number; - payment_path_failed(path: RouteHop[], short_channel_id: number): void; - payment_path_successful(path: RouteHop[]): void; - write(): Uint8Array; - - } - - class LDKScoreHolder { - held: Score; - } - public number channel_penalty_msat(number short_channel_id, number send_amt_msat, Option_u64Z channel_capacity_msat, NodeId source, NodeId target) { - number ret = bindings.Score_channel_penalty_msat(this.ptr, short_channel_id, send_amt_msat, channel_capacity_msat.ptr, source == null ? 0 : source.ptr & ~1, target == null ? 0 : target.ptr & ~1); - this.ptrs_to.add(source); - this.ptrs_to.add(target); - return ret; - } - - public void payment_path_failed(RouteHop[] path, number short_channel_id) { - bindings.Score_payment_path_failed(this.ptr, path != null ? Arrays.stream(path).map(path_conv_10 -> path_conv_10 == null ? 0 : path_conv_10.ptr & ~1).toArray(number[]::new) : null, short_channel_id); - } - - public void payment_path_successful(RouteHop[] path) { - bindings.Score_payment_path_successful(this.ptr, path != null ? Arrays.stream(path).map(path_conv_10 -> path_conv_10 == null ? 0 : path_conv_10.ptr & ~1).toArray(number[]::new) : null); - } - - public Uint8Array write() { - Uint8Array ret = bindings.Score_write(this.ptr); - return ret; - } - -} diff --git a/ts/structs/Scorer.ts b/ts/structs/Scorer.ts deleted file mode 100644 index ac26dd3f..00000000 --- a/ts/structs/Scorer.ts +++ /dev/null @@ -1,53 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class Scorer extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.Scorer_free(this.ptr); - } - } - public static Scorer constructor_new(number params_base_penalty_msat_arg, number params_failure_penalty_msat_arg, number params_overuse_penalty_start_1024th_arg, number params_overuse_penalty_msat_per_1024th_arg, number params_failure_penalty_half_life_arg) { - number ret = bindings.Scorer_new(bindings.ScoringParameters_new(params_base_penalty_msat_arg, params_failure_penalty_msat_arg, params_overuse_penalty_start_1024th_arg, params_overuse_penalty_msat_per_1024th_arg, params_failure_penalty_half_life_arg)); - const ret_hu_conv: Scorer = new Scorer(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Scorer constructor_default() { - number ret = bindings.Scorer_default(); - const ret_hu_conv: Scorer = new Scorer(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public Score as_Score() { - number ret = bindings.Scorer_as_Score(this.ptr); - Score ret_hu_conv = new Score(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.Scorer_write(this.ptr); - return ret; - } - - public static Result_ScorerDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.Scorer_read(ser); - Result_ScorerDecodeErrorZ ret_hu_conv = Result_ScorerDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ScoringParameters.ts b/ts/structs/ScoringParameters.ts deleted file mode 100644 index 18e17f3c..00000000 --- a/ts/structs/ScoringParameters.ts +++ /dev/null @@ -1,91 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ScoringParameters extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ScoringParameters_free(this.ptr); - } - } - public number get_base_penalty_msat() { - number ret = bindings.ScoringParameters_get_base_penalty_msat(this.ptr); - return ret; - } - - public void set_base_penalty_msat(number val) { - bindings.ScoringParameters_set_base_penalty_msat(this.ptr, val); - } - - public number get_failure_penalty_msat() { - number ret = bindings.ScoringParameters_get_failure_penalty_msat(this.ptr); - return ret; - } - - public void set_failure_penalty_msat(number val) { - bindings.ScoringParameters_set_failure_penalty_msat(this.ptr, val); - } - - public number get_overuse_penalty_start_1024th() { - number ret = bindings.ScoringParameters_get_overuse_penalty_start_1024th(this.ptr); - return ret; - } - - public void set_overuse_penalty_start_1024th(number val) { - bindings.ScoringParameters_set_overuse_penalty_start_1024th(this.ptr, val); - } - - public number get_overuse_penalty_msat_per_1024th() { - number ret = bindings.ScoringParameters_get_overuse_penalty_msat_per_1024th(this.ptr); - return ret; - } - - public void set_overuse_penalty_msat_per_1024th(number val) { - bindings.ScoringParameters_set_overuse_penalty_msat_per_1024th(this.ptr, val); - } - - public number get_failure_penalty_half_life() { - number ret = bindings.ScoringParameters_get_failure_penalty_half_life(this.ptr); - return ret; - } - - public void set_failure_penalty_half_life(number val) { - bindings.ScoringParameters_set_failure_penalty_half_life(this.ptr, val); - } - - public static ScoringParameters constructor_new(number base_penalty_msat_arg, number failure_penalty_msat_arg, number overuse_penalty_start_1024th_arg, number overuse_penalty_msat_per_1024th_arg, number failure_penalty_half_life_arg) { - number ret = bindings.ScoringParameters_new(base_penalty_msat_arg, failure_penalty_msat_arg, overuse_penalty_start_1024th_arg, overuse_penalty_msat_per_1024th_arg, failure_penalty_half_life_arg); - const ret_hu_conv: ScoringParameters = new ScoringParameters(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.ScoringParameters_write(this.ptr); - return ret; - } - - public static Result_ScoringParametersDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.ScoringParameters_read(ser); - Result_ScoringParametersDecodeErrorZ ret_hu_conv = Result_ScoringParametersDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static ScoringParameters constructor_default() { - number ret = bindings.ScoringParameters_default(); - const ret_hu_conv: ScoringParameters = new ScoringParameters(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - -} diff --git a/ts/structs/Sha256.ts b/ts/structs/Sha256.ts deleted file mode 100644 index dd23a098..00000000 --- a/ts/structs/Sha256.ts +++ /dev/null @@ -1,44 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class Sha256 extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.Sha256_free(this.ptr); - } - } - public number clone_ptr() { - number ret = bindings.Sha256_clone_ptr(this.ptr); - return ret; - } - - public Sha256 clone() { - number ret = bindings.Sha256_clone(this.ptr); - const ret_hu_conv: Sha256 = new Sha256(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public number hash() { - number ret = bindings.Sha256_hash(this.ptr); - return ret; - } - - public boolean eq(Sha256 b) { - boolean ret = bindings.Sha256_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - this.ptrs_to.add(b); - return ret; - } - -} diff --git a/ts/structs/Shutdown.ts b/ts/structs/Shutdown.ts deleted file mode 100644 index dd73d5bd..00000000 --- a/ts/structs/Shutdown.ts +++ /dev/null @@ -1,69 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class Shutdown extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.Shutdown_free(this.ptr); - } - } - public Uint8Array get_channel_id() { - Uint8Array ret = bindings.Shutdown_get_channel_id(this.ptr); - return ret; - } - - public void set_channel_id(Uint8Array val) { - bindings.Shutdown_set_channel_id(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public Uint8Array get_scriptpubkey() { - Uint8Array ret = bindings.Shutdown_get_scriptpubkey(this.ptr); - return ret; - } - - public void set_scriptpubkey(Uint8Array val) { - bindings.Shutdown_set_scriptpubkey(this.ptr, val); - } - - public static Shutdown constructor_new(Uint8Array channel_id_arg, Uint8Array scriptpubkey_arg) { - number ret = bindings.Shutdown_new(InternalUtils.check_arr_len(channel_id_arg, 32), scriptpubkey_arg); - const ret_hu_conv: Shutdown = new Shutdown(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.Shutdown_clone_ptr(this.ptr); - return ret; - } - - public Shutdown clone() { - number ret = bindings.Shutdown_clone(this.ptr); - const ret_hu_conv: Shutdown = new Shutdown(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.Shutdown_write(this.ptr); - return ret; - } - - public static Result_ShutdownDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.Shutdown_read(ser); - Result_ShutdownDecodeErrorZ ret_hu_conv = Result_ShutdownDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ShutdownScript.ts b/ts/structs/ShutdownScript.ts deleted file mode 100644 index e1da61d7..00000000 --- a/ts/structs/ShutdownScript.ts +++ /dev/null @@ -1,80 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class ShutdownScript extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.ShutdownScript_free(this.ptr); - } - } - public number clone_ptr() { - number ret = bindings.ShutdownScript_clone_ptr(this.ptr); - return ret; - } - - public ShutdownScript clone() { - number ret = bindings.ShutdownScript_clone(this.ptr); - const ret_hu_conv: ShutdownScript = new ShutdownScript(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.ShutdownScript_write(this.ptr); - return ret; - } - - public static Result_ShutdownScriptDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.ShutdownScript_read(ser); - Result_ShutdownScriptDecodeErrorZ ret_hu_conv = Result_ShutdownScriptDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static ShutdownScript constructor_new_p2wpkh(Uint8Array pubkey_hash) { - number ret = bindings.ShutdownScript_new_p2wpkh(InternalUtils.check_arr_len(pubkey_hash, 20)); - const ret_hu_conv: ShutdownScript = new ShutdownScript(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static ShutdownScript constructor_new_p2wsh(Uint8Array script_hash) { - number ret = bindings.ShutdownScript_new_p2wsh(InternalUtils.check_arr_len(script_hash, 32)); - const ret_hu_conv: ShutdownScript = new ShutdownScript(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static Result_ShutdownScriptInvalidShutdownScriptZ constructor_new_witness_program(number version, Uint8Array program) { - number ret = bindings.ShutdownScript_new_witness_program(version, program); - Result_ShutdownScriptInvalidShutdownScriptZ ret_hu_conv = Result_ShutdownScriptInvalidShutdownScriptZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public Uint8Array into_inner() { - Uint8Array ret = bindings.ShutdownScript_into_inner(this.ptr); - return ret; - } - - public Uint8Array as_legacy_pubkey() { - Uint8Array ret = bindings.ShutdownScript_as_legacy_pubkey(this.ptr); - return ret; - } - - public boolean is_compatible(InitFeatures features) { - boolean ret = bindings.ShutdownScript_is_compatible(this.ptr, features == null ? 0 : features.ptr & ~1); - this.ptrs_to.add(features); - return ret; - } - -} diff --git a/ts/structs/Sign.ts b/ts/structs/Sign.ts deleted file mode 100644 index 1d99ab39..00000000 --- a/ts/structs/Sign.ts +++ /dev/null @@ -1,72 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export class Sign extends CommonBase { - - bindings_instance?: bindings.LDKSign; - - constructor(ptr?: number, arg?: bindings.LDKSign, baseSign?: bindings.LDKBaseSign, pubkeys?: ChannelPublicKeys) { - if (Number.isFinite(ptr)) { - super(ptr); - this.bindings_instance = null; - } else { - // TODO: private constructor instantiation - super(bindings.LDKSign_new(arg, baseSign, pubkeys == null ? 0 : pubkeys.clone_ptr())); - this.ptrs_to.push(arg); - this.ptrs_to.push(baseSign); - - } - } - - protected finalize() { - if (this.ptr != 0) { - bindings.Sign_free(this.ptr); - } - super.finalize(); - } - - static new_impl(arg: SignInterface, baseSign_impl: BaseSign.BaseSignInterface, pubkeys: ChannelPublicKeys): Sign { - const impl_holder: LDKSignHolder = new LDKSignHolder(); - let structImplementation = { - // todo: in-line interface filling - write (): Uint8Array { - Uint8Array ret = arg.write(); - return ret; - }, - - - }; - impl_holder.held = new Sign (null, structImplementation, BaseSign.new_impl(BaseSign_impl, pubkeys).bindings_instance, pubkeys); - } - } - - export interface SignInterface { - write(): Uint8Array; - - } - - class LDKSignHolder { - held: Sign; - } - public Uint8Array write() { - Uint8Array ret = bindings.Sign_write(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.Sign_clone_ptr(this.ptr); - return ret; - } - - public Sign clone() { - number ret = bindings.Sign_clone(this.ptr); - Sign ret_hu_conv = new Sign(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/SignOrCreationError.ts b/ts/structs/SignOrCreationError.ts deleted file mode 100644 index d2e1e36b..00000000 --- a/ts/structs/SignOrCreationError.ts +++ /dev/null @@ -1,71 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class SignOrCreationError extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.SignOrCreationError_free(this.ptr); } - } - static constr_from_ptr(ptr: number): SignOrCreationError { - const raw_val: bindings.LDKSignOrCreationError = bindings.LDKSignOrCreationError_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKSignOrCreationError.SignError) { - return new SignError(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKSignOrCreationError.CreationError) { - return new CreationError(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class SignError extends SignOrCreationError { - private constructor(ptr: number, obj: bindings.LDKSignOrCreationError.SignError) { - super(null, ptr); - } -} -export class CreationError extends SignOrCreationError { - public creation_error: CreationError; - private constructor(ptr: number, obj: bindings.LDKSignOrCreationError.CreationError) { - super(null, ptr); - this.creation_error = obj.creation_error; - } -} - public number clone_ptr() { - number ret = bindings.SignOrCreationError_clone_ptr(this.ptr); - return ret; - } - - public SignOrCreationError clone() { - number ret = bindings.SignOrCreationError_clone(this.ptr); - SignOrCreationError ret_hu_conv = SignOrCreationError.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static SignOrCreationError constructor_sign_error() { - number ret = bindings.SignOrCreationError_sign_error(); - SignOrCreationError ret_hu_conv = SignOrCreationError.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static SignOrCreationError constructor_creation_error(CreationError a) { - number ret = bindings.SignOrCreationError_creation_error(a); - SignOrCreationError ret_hu_conv = SignOrCreationError.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public boolean eq(SignOrCreationError b) { - boolean ret = bindings.SignOrCreationError_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - return ret; - } - - public String to_str() { - String ret = bindings.SignOrCreationError_to_str(this.ptr); - return ret; - } - -} diff --git a/ts/structs/SignedRawInvoice.ts b/ts/structs/SignedRawInvoice.ts deleted file mode 100644 index 22f2b59e..00000000 --- a/ts/structs/SignedRawInvoice.ts +++ /dev/null @@ -1,87 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class SignedRawInvoice extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.SignedRawInvoice_free(this.ptr); - } - } - public boolean eq(SignedRawInvoice b) { - boolean ret = bindings.SignedRawInvoice_eq(this.ptr, b == null ? 0 : b.ptr & ~1); - this.ptrs_to.add(b); - return ret; - } - - public number clone_ptr() { - number ret = bindings.SignedRawInvoice_clone_ptr(this.ptr); - return ret; - } - - public SignedRawInvoice clone() { - number ret = bindings.SignedRawInvoice_clone(this.ptr); - const ret_hu_conv: SignedRawInvoice = new SignedRawInvoice(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public ThreeTuple_RawInvoice_u832InvoiceSignatureZ into_parts() { - number ret = bindings.SignedRawInvoice_into_parts(this.ptr); - ThreeTuple_RawInvoice_u832InvoiceSignatureZ ret_hu_conv = new ThreeTuple_RawInvoice_u832InvoiceSignatureZ(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public RawInvoice raw_invoice() { - number ret = bindings.SignedRawInvoice_raw_invoice(this.ptr); - const ret_hu_conv: RawInvoice = new RawInvoice(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array hash() { - Uint8Array ret = bindings.SignedRawInvoice_hash(this.ptr); - return ret; - } - - public InvoiceSignature signature() { - number ret = bindings.SignedRawInvoice_signature(this.ptr); - const ret_hu_conv: InvoiceSignature = new InvoiceSignature(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Result_PayeePubKeyErrorZ recover_payee_pub_key() { - number ret = bindings.SignedRawInvoice_recover_payee_pub_key(this.ptr); - Result_PayeePubKeyErrorZ ret_hu_conv = Result_PayeePubKeyErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public boolean check_signature() { - boolean ret = bindings.SignedRawInvoice_check_signature(this.ptr); - return ret; - } - - public static Result_SignedRawInvoiceNoneZ constructor_from_str(String s) { - number ret = bindings.SignedRawInvoice_from_str(s); - Result_SignedRawInvoiceNoneZ ret_hu_conv = Result_SignedRawInvoiceNoneZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public String to_str() { - String ret = bindings.SignedRawInvoice_to_str(this.ptr); - return ret; - } - -} diff --git a/ts/structs/SocketDescriptor.ts b/ts/structs/SocketDescriptor.ts deleted file mode 100644 index d9439255..00000000 --- a/ts/structs/SocketDescriptor.ts +++ /dev/null @@ -1,99 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export class SocketDescriptor extends CommonBase { - - bindings_instance?: bindings.LDKSocketDescriptor; - - constructor(ptr?: number, arg?: bindings.LDKSocketDescriptor) { - if (Number.isFinite(ptr)) { - super(ptr); - this.bindings_instance = null; - } else { - // TODO: private constructor instantiation - super(bindings.LDKSocketDescriptor_new(arg)); - this.ptrs_to.push(arg); - - } - } - - protected finalize() { - if (this.ptr != 0) { - bindings.SocketDescriptor_free(this.ptr); - } - super.finalize(); - } - - static new_impl(arg: SocketDescriptorInterface): SocketDescriptor { - const impl_holder: LDKSocketDescriptorHolder = new LDKSocketDescriptorHolder(); - let structImplementation = { - // todo: in-line interface filling - send_data (data: Uint8Array, resume_read: boolean): number { - number ret = arg.send_data(data, resume_read); - return ret; - }, - - disconnect_socket (): void { - arg.disconnect_socket(); - }, - - eq (other_arg: number): boolean { - SocketDescriptor ret_hu_conv = new SocketDescriptor(null, other_arg); - ret_hu_conv.ptrs_to.add(this); - boolean ret = arg.eq(ret_hu_conv); - return ret; - }, - - hash (): number { - number ret = arg.hash(); - return ret; - }, - - - }; - impl_holder.held = new SocketDescriptor (null, structImplementation); - } - } - - export interface SocketDescriptorInterface { - send_data(data: Uint8Array, resume_read: boolean): number; - disconnect_socket(): void; - eq(other_arg: SocketDescriptor): boolean; - hash(): number; - - } - - class LDKSocketDescriptorHolder { - held: SocketDescriptor; - } - public number send_data(Uint8Array data, boolean resume_read) { - number ret = bindings.SocketDescriptor_send_data(this.ptr, data, resume_read); - return ret; - } - - public void disconnect_socket() { - bindings.SocketDescriptor_disconnect_socket(this.ptr); - } - - public number hash() { - number ret = bindings.SocketDescriptor_hash(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.SocketDescriptor_clone_ptr(this.ptr); - return ret; - } - - public SocketDescriptor clone() { - number ret = bindings.SocketDescriptor_clone(this.ptr); - SocketDescriptor ret_hu_conv = new SocketDescriptor(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/SpendableOutputDescriptor.ts b/ts/structs/SpendableOutputDescriptor.ts deleted file mode 100644 index f0758a28..00000000 --- a/ts/structs/SpendableOutputDescriptor.ts +++ /dev/null @@ -1,104 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -export default class SpendableOutputDescriptor extends CommonBase { - protected constructor(_dummy: object, ptr: number) { super(ptr); } - protected finalize() { - super.finalize(); - if (this.ptr != 0) { bindings.SpendableOutputDescriptor_free(this.ptr); } - } - static constr_from_ptr(ptr: number): SpendableOutputDescriptor { - const raw_val: bindings.LDKSpendableOutputDescriptor = bindings.LDKSpendableOutputDescriptor_ref_from_ptr(ptr); - if (raw_val instanceof bindings.LDKSpendableOutputDescriptor.StaticOutput) { - return new StaticOutput(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKSpendableOutputDescriptor.DelayedPaymentOutput) { - return new DelayedPaymentOutput(this.ptr, raw_val); - } - if (raw_val instanceof bindings.LDKSpendableOutputDescriptor.StaticPaymentOutput) { - return new StaticPaymentOutput(this.ptr, raw_val); - } - throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface - } - -} -export class StaticOutput extends SpendableOutputDescriptor { - public outpoint: OutPoint; - public output: TxOut; - private constructor(ptr: number, obj: bindings.LDKSpendableOutputDescriptor.StaticOutput) { - super(null, ptr); - const outpoint: number = obj.outpoint; - const outpoint_hu_conv: OutPoint = new OutPoint(null, outpoint); - outpoint_hu_conv.ptrs_to.add(this); - this.outpoint = outpoint_hu_conv; - const output: number = obj.output; - TxOut output_conv = new TxOut(null, output); - this.output = output_conv; - } -} -export class DelayedPaymentOutput extends SpendableOutputDescriptor { - public delayed_payment_output: DelayedPaymentOutputDescriptor; - private constructor(ptr: number, obj: bindings.LDKSpendableOutputDescriptor.DelayedPaymentOutput) { - super(null, ptr); - const delayed_payment_output: number = obj.delayed_payment_output; - const delayed_payment_output_hu_conv: DelayedPaymentOutputDescriptor = new DelayedPaymentOutputDescriptor(null, delayed_payment_output); - delayed_payment_output_hu_conv.ptrs_to.add(this); - this.delayed_payment_output = delayed_payment_output_hu_conv; - } -} -export class StaticPaymentOutput extends SpendableOutputDescriptor { - public static_payment_output: StaticPaymentOutputDescriptor; - private constructor(ptr: number, obj: bindings.LDKSpendableOutputDescriptor.StaticPaymentOutput) { - super(null, ptr); - const static_payment_output: number = obj.static_payment_output; - const static_payment_output_hu_conv: StaticPaymentOutputDescriptor = new StaticPaymentOutputDescriptor(null, static_payment_output); - static_payment_output_hu_conv.ptrs_to.add(this); - this.static_payment_output = static_payment_output_hu_conv; - } -} - public number clone_ptr() { - number ret = bindings.SpendableOutputDescriptor_clone_ptr(this.ptr); - return ret; - } - - public SpendableOutputDescriptor clone() { - number ret = bindings.SpendableOutputDescriptor_clone(this.ptr); - SpendableOutputDescriptor ret_hu_conv = SpendableOutputDescriptor.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static SpendableOutputDescriptor constructor_static_output(OutPoint outpoint, TxOut output) { - number ret = bindings.SpendableOutputDescriptor_static_output(outpoint == null ? 0 : outpoint.ptr & ~1, output.ptr); - SpendableOutputDescriptor ret_hu_conv = SpendableOutputDescriptor.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static SpendableOutputDescriptor constructor_delayed_payment_output(DelayedPaymentOutputDescriptor a) { - number ret = bindings.SpendableOutputDescriptor_delayed_payment_output(a == null ? 0 : a.ptr & ~1); - SpendableOutputDescriptor ret_hu_conv = SpendableOutputDescriptor.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public static SpendableOutputDescriptor constructor_static_payment_output(StaticPaymentOutputDescriptor a) { - number ret = bindings.SpendableOutputDescriptor_static_payment_output(a == null ? 0 : a.ptr & ~1); - SpendableOutputDescriptor ret_hu_conv = SpendableOutputDescriptor.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.SpendableOutputDescriptor_write(this.ptr); - return ret; - } - - public static Result_SpendableOutputDescriptorDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.SpendableOutputDescriptor_read(ser); - Result_SpendableOutputDescriptorDecodeErrorZ ret_hu_conv = Result_SpendableOutputDescriptorDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/StaticPaymentOutputDescriptor.ts b/ts/structs/StaticPaymentOutputDescriptor.ts deleted file mode 100644 index 9af18ea3..00000000 --- a/ts/structs/StaticPaymentOutputDescriptor.ts +++ /dev/null @@ -1,84 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class StaticPaymentOutputDescriptor extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.StaticPaymentOutputDescriptor_free(this.ptr); - } - } - public OutPoint get_outpoint() { - number ret = bindings.StaticPaymentOutputDescriptor_get_outpoint(this.ptr); - const ret_hu_conv: OutPoint = new OutPoint(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_outpoint(OutPoint val) { - bindings.StaticPaymentOutputDescriptor_set_outpoint(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public void set_output(TxOut val) { - bindings.StaticPaymentOutputDescriptor_set_output(this.ptr, val.ptr); - } - - public Uint8Array get_channel_keys_id() { - Uint8Array ret = bindings.StaticPaymentOutputDescriptor_get_channel_keys_id(this.ptr); - return ret; - } - - public void set_channel_keys_id(Uint8Array val) { - bindings.StaticPaymentOutputDescriptor_set_channel_keys_id(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public number get_channel_value_satoshis() { - number ret = bindings.StaticPaymentOutputDescriptor_get_channel_value_satoshis(this.ptr); - return ret; - } - - public void set_channel_value_satoshis(number val) { - bindings.StaticPaymentOutputDescriptor_set_channel_value_satoshis(this.ptr, val); - } - - public static StaticPaymentOutputDescriptor constructor_new(OutPoint outpoint_arg, TxOut output_arg, Uint8Array channel_keys_id_arg, number channel_value_satoshis_arg) { - number ret = bindings.StaticPaymentOutputDescriptor_new(outpoint_arg == null ? 0 : outpoint_arg.ptr & ~1, output_arg.ptr, InternalUtils.check_arr_len(channel_keys_id_arg, 32), channel_value_satoshis_arg); - const ret_hu_conv: StaticPaymentOutputDescriptor = new StaticPaymentOutputDescriptor(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.StaticPaymentOutputDescriptor_clone_ptr(this.ptr); - return ret; - } - - public StaticPaymentOutputDescriptor clone() { - number ret = bindings.StaticPaymentOutputDescriptor_clone(this.ptr); - const ret_hu_conv: StaticPaymentOutputDescriptor = new StaticPaymentOutputDescriptor(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.StaticPaymentOutputDescriptor_write(this.ptr); - return ret; - } - - public static Result_StaticPaymentOutputDescriptorDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.StaticPaymentOutputDescriptor_read(ser); - Result_StaticPaymentOutputDescriptorDecodeErrorZ ret_hu_conv = Result_StaticPaymentOutputDescriptorDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ThreeTuple_ChannelAnnouncementChannelUpdateChannelUpdateZ.ts b/ts/structs/ThreeTuple_ChannelAnnouncementChannelUpdateChannelUpdateZ.ts deleted file mode 100644 index 625b5834..00000000 --- a/ts/structs/ThreeTuple_ChannelAnnouncementChannelUpdateChannelUpdateZ.ts +++ /dev/null @@ -1,61 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_free(this.ptr); - } - } - public ChannelAnnouncement get_a() { - number ret = bindings.C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_a(this.ptr); - const ret_hu_conv: ChannelAnnouncement = new ChannelAnnouncement(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public ChannelUpdate get_b() { - number ret = bindings.C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_b(this.ptr); - const ret_hu_conv: ChannelUpdate = new ChannelUpdate(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public ChannelUpdate get_c() { - number ret = bindings.C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_c(this.ptr); - const ret_hu_conv: ChannelUpdate = new ChannelUpdate(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone_ptr(this.ptr); - return ret; - } - - public ThreeTuple_ChannelAnnouncementChannelUpdateChannelUpdateZ clone() { - number ret = bindings.C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_clone(this.ptr); - ThreeTuple_ChannelAnnouncementChannelUpdateChannelUpdateZ ret_hu_conv = new ThreeTuple_ChannelAnnouncementChannelUpdateChannelUpdateZ(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static ThreeTuple_ChannelAnnouncementChannelUpdateChannelUpdateZ constructor_new(ChannelAnnouncement a, ChannelUpdate b, ChannelUpdate c) { - number ret = bindings.C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_new(a == null ? 0 : a.ptr & ~1, b == null ? 0 : b.ptr & ~1, c == null ? 0 : c.ptr & ~1); - ThreeTuple_ChannelAnnouncementChannelUpdateChannelUpdateZ ret_hu_conv = new ThreeTuple_ChannelAnnouncementChannelUpdateChannelUpdateZ(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - -} diff --git a/ts/structs/ThreeTuple_RawInvoice_u832InvoiceSignatureZ.ts b/ts/structs/ThreeTuple_RawInvoice_u832InvoiceSignatureZ.ts deleted file mode 100644 index e1a15644..00000000 --- a/ts/structs/ThreeTuple_RawInvoice_u832InvoiceSignatureZ.ts +++ /dev/null @@ -1,59 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class C3Tuple_RawInvoice_u832InvoiceSignatureZ extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.C3Tuple_RawInvoice_u832InvoiceSignatureZ_free(this.ptr); - } - } - public RawInvoice get_a() { - number ret = bindings.C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_a(this.ptr); - const ret_hu_conv: RawInvoice = new RawInvoice(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array get_b() { - Uint8Array ret = bindings.C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_b(this.ptr); - return ret; - } - - public InvoiceSignature get_c() { - number ret = bindings.C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_c(this.ptr); - const ret_hu_conv: InvoiceSignature = new InvoiceSignature(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone_ptr(this.ptr); - return ret; - } - - public ThreeTuple_RawInvoice_u832InvoiceSignatureZ clone() { - number ret = bindings.C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone(this.ptr); - ThreeTuple_RawInvoice_u832InvoiceSignatureZ ret_hu_conv = new ThreeTuple_RawInvoice_u832InvoiceSignatureZ(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static ThreeTuple_RawInvoice_u832InvoiceSignatureZ constructor_new(RawInvoice a, Uint8Array b, InvoiceSignature c) { - number ret = bindings.C3Tuple_RawInvoice_u832InvoiceSignatureZ_new(a == null ? 0 : a.ptr & ~1, InternalUtils.check_arr_len(b, 32), c == null ? 0 : c.ptr & ~1); - ThreeTuple_RawInvoice_u832InvoiceSignatureZ ret_hu_conv = new ThreeTuple_RawInvoice_u832InvoiceSignatureZ(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - -} diff --git a/ts/structs/TrustedClosingTransaction.ts b/ts/structs/TrustedClosingTransaction.ts deleted file mode 100644 index a9aa05dd..00000000 --- a/ts/structs/TrustedClosingTransaction.ts +++ /dev/null @@ -1,36 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class TrustedClosingTransaction extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.TrustedClosingTransaction_free(this.ptr); - } - } - public Uint8Array built_transaction() { - Uint8Array ret = bindings.TrustedClosingTransaction_built_transaction(this.ptr); - return ret; - } - - public Uint8Array get_sighash_all(Uint8Array funding_redeemscript, number channel_value_satoshis) { - Uint8Array ret = bindings.TrustedClosingTransaction_get_sighash_all(this.ptr, funding_redeemscript, channel_value_satoshis); - return ret; - } - - public Uint8Array sign(Uint8Array funding_key, Uint8Array funding_redeemscript, number channel_value_satoshis) { - Uint8Array ret = bindings.TrustedClosingTransaction_sign(this.ptr, InternalUtils.check_arr_len(funding_key, 32), funding_redeemscript, channel_value_satoshis); - return ret; - } - -} diff --git a/ts/structs/TrustedCommitmentTransaction.ts b/ts/structs/TrustedCommitmentTransaction.ts deleted file mode 100644 index cb0c2bfc..00000000 --- a/ts/structs/TrustedCommitmentTransaction.ts +++ /dev/null @@ -1,52 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class TrustedCommitmentTransaction extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.TrustedCommitmentTransaction_free(this.ptr); - } - } - public Uint8Array txid() { - Uint8Array ret = bindings.TrustedCommitmentTransaction_txid(this.ptr); - return ret; - } - - public BuiltCommitmentTransaction built_transaction() { - number ret = bindings.TrustedCommitmentTransaction_built_transaction(this.ptr); - const ret_hu_conv: BuiltCommitmentTransaction = new BuiltCommitmentTransaction(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public TxCreationKeys keys() { - number ret = bindings.TrustedCommitmentTransaction_keys(this.ptr); - const ret_hu_conv: TxCreationKeys = new TxCreationKeys(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public boolean opt_anchors() { - boolean ret = bindings.TrustedCommitmentTransaction_opt_anchors(this.ptr); - return ret; - } - - public Result_CVec_SignatureZNoneZ get_htlc_sigs(Uint8Array htlc_base_key, DirectedChannelTransactionParameters channel_parameters) { - number ret = bindings.TrustedCommitmentTransaction_get_htlc_sigs(this.ptr, InternalUtils.check_arr_len(htlc_base_key, 32), channel_parameters == null ? 0 : channel_parameters.ptr & ~1); - Result_CVec_SignatureZNoneZ ret_hu_conv = Result_CVec_SignatureZNoneZ.constr_from_ptr(ret); - this.ptrs_to.add(channel_parameters); - return ret_hu_conv; - } - -} diff --git a/ts/structs/TwoTuple_BlockHashChannelManagerZ.ts b/ts/structs/TwoTuple_BlockHashChannelManagerZ.ts deleted file mode 100644 index d6c17cfe..00000000 --- a/ts/structs/TwoTuple_BlockHashChannelManagerZ.ts +++ /dev/null @@ -1,47 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class C2Tuple_BlockHashChannelManagerZ extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.C2Tuple_BlockHashChannelManagerZ_free(this.ptr); - } - } - public Uint8Array get_a() { - Uint8Array ret = bindings.C2Tuple_BlockHashChannelManagerZ_get_a(this.ptr); - return ret; - } - - public ChannelManager get_b() { - number ret = bindings.C2Tuple_BlockHashChannelManagerZ_get_b(this.ptr); - const ret_hu_conv: ChannelManager = new ChannelManager(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static TwoTuple_BlockHashChannelManagerZ constructor_new(Uint8Array a, FeeEstimator b_fee_est, Watch b_chain_monitor, BroadcasterInterface b_tx_broadcaster, Logger b_logger, KeysInterface b_keys_manager, UserConfig b_config, ChainParameters b_params) { - number ret = bindings.C2Tuple_BlockHashChannelManagerZ_new(InternalUtils.check_arr_len(a, 32), bindings.ChannelManager_new(b_fee_est == null ? 0 : b_fee_est.ptr, b_chain_monitor == null ? 0 : b_chain_monitor.ptr, b_tx_broadcaster == null ? 0 : b_tx_broadcaster.ptr, b_logger == null ? 0 : b_logger.ptr, b_keys_manager == null ? 0 : b_keys_manager.ptr, b_config == null ? 0 : b_config.ptr & ~1, b_params == null ? 0 : b_params.ptr & ~1)); - TwoTuple_BlockHashChannelManagerZ ret_hu_conv = new TwoTuple_BlockHashChannelManagerZ(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - ret_hu_conv.ptrs_to.add(b_fee_est); - ret_hu_conv.ptrs_to.add(b_chain_monitor); - ret_hu_conv.ptrs_to.add(b_tx_broadcaster); - ret_hu_conv.ptrs_to.add(b_logger); - ret_hu_conv.ptrs_to.add(b_keys_manager); - ; - ; - return ret_hu_conv; - } - -} diff --git a/ts/structs/TwoTuple_BlockHashChannelMonitorZ.ts b/ts/structs/TwoTuple_BlockHashChannelMonitorZ.ts deleted file mode 100644 index e2efd8a8..00000000 --- a/ts/structs/TwoTuple_BlockHashChannelMonitorZ.ts +++ /dev/null @@ -1,52 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class C2Tuple_BlockHashChannelMonitorZ extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.C2Tuple_BlockHashChannelMonitorZ_free(this.ptr); - } - } - public Uint8Array get_a() { - Uint8Array ret = bindings.C2Tuple_BlockHashChannelMonitorZ_get_a(this.ptr); - return ret; - } - - public ChannelMonitor get_b() { - number ret = bindings.C2Tuple_BlockHashChannelMonitorZ_get_b(this.ptr); - const ret_hu_conv: ChannelMonitor = new ChannelMonitor(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.C2Tuple_BlockHashChannelMonitorZ_clone_ptr(this.ptr); - return ret; - } - - public TwoTuple_BlockHashChannelMonitorZ clone() { - number ret = bindings.C2Tuple_BlockHashChannelMonitorZ_clone(this.ptr); - TwoTuple_BlockHashChannelMonitorZ ret_hu_conv = new TwoTuple_BlockHashChannelMonitorZ(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static TwoTuple_BlockHashChannelMonitorZ constructor_new(Uint8Array a, ChannelMonitor b) { - number ret = bindings.C2Tuple_BlockHashChannelMonitorZ_new(InternalUtils.check_arr_len(a, 32), b == null ? 0 : b.ptr & ~1); - TwoTuple_BlockHashChannelMonitorZ ret_hu_conv = new TwoTuple_BlockHashChannelMonitorZ(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - -} diff --git a/ts/structs/TwoTuple_OutPointScriptZ.ts b/ts/structs/TwoTuple_OutPointScriptZ.ts deleted file mode 100644 index 0a9dd35b..00000000 --- a/ts/structs/TwoTuple_OutPointScriptZ.ts +++ /dev/null @@ -1,52 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class C2Tuple_OutPointScriptZ extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.C2Tuple_OutPointScriptZ_free(this.ptr); - } - } - public OutPoint get_a() { - number ret = bindings.C2Tuple_OutPointScriptZ_get_a(this.ptr); - const ret_hu_conv: OutPoint = new OutPoint(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array get_b() { - Uint8Array ret = bindings.C2Tuple_OutPointScriptZ_get_b(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.C2Tuple_OutPointScriptZ_clone_ptr(this.ptr); - return ret; - } - - public TwoTuple_OutPointScriptZ clone() { - number ret = bindings.C2Tuple_OutPointScriptZ_clone(this.ptr); - TwoTuple_OutPointScriptZ ret_hu_conv = new TwoTuple_OutPointScriptZ(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static TwoTuple_OutPointScriptZ constructor_new(OutPoint a, Uint8Array b) { - number ret = bindings.C2Tuple_OutPointScriptZ_new(a == null ? 0 : a.ptr & ~1, b); - TwoTuple_OutPointScriptZ ret_hu_conv = new TwoTuple_OutPointScriptZ(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - -} diff --git a/ts/structs/TwoTuple_PaymentHashPaymentIdZ.ts b/ts/structs/TwoTuple_PaymentHashPaymentIdZ.ts deleted file mode 100644 index 645ca609..00000000 --- a/ts/structs/TwoTuple_PaymentHashPaymentIdZ.ts +++ /dev/null @@ -1,50 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class C2Tuple_PaymentHashPaymentIdZ extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.C2Tuple_PaymentHashPaymentIdZ_free(this.ptr); - } - } - public Uint8Array get_a() { - Uint8Array ret = bindings.C2Tuple_PaymentHashPaymentIdZ_get_a(this.ptr); - return ret; - } - - public Uint8Array get_b() { - Uint8Array ret = bindings.C2Tuple_PaymentHashPaymentIdZ_get_b(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.C2Tuple_PaymentHashPaymentIdZ_clone_ptr(this.ptr); - return ret; - } - - public TwoTuple_PaymentHashPaymentIdZ clone() { - number ret = bindings.C2Tuple_PaymentHashPaymentIdZ_clone(this.ptr); - TwoTuple_PaymentHashPaymentIdZ ret_hu_conv = new TwoTuple_PaymentHashPaymentIdZ(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static TwoTuple_PaymentHashPaymentIdZ constructor_new(Uint8Array a, Uint8Array b) { - number ret = bindings.C2Tuple_PaymentHashPaymentIdZ_new(InternalUtils.check_arr_len(a, 32), InternalUtils.check_arr_len(b, 32)); - TwoTuple_PaymentHashPaymentIdZ ret_hu_conv = new TwoTuple_PaymentHashPaymentIdZ(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - -} diff --git a/ts/structs/TwoTuple_PaymentHashPaymentSecretZ.ts b/ts/structs/TwoTuple_PaymentHashPaymentSecretZ.ts deleted file mode 100644 index d0401208..00000000 --- a/ts/structs/TwoTuple_PaymentHashPaymentSecretZ.ts +++ /dev/null @@ -1,50 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class C2Tuple_PaymentHashPaymentSecretZ extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.C2Tuple_PaymentHashPaymentSecretZ_free(this.ptr); - } - } - public Uint8Array get_a() { - Uint8Array ret = bindings.C2Tuple_PaymentHashPaymentSecretZ_get_a(this.ptr); - return ret; - } - - public Uint8Array get_b() { - Uint8Array ret = bindings.C2Tuple_PaymentHashPaymentSecretZ_get_b(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.C2Tuple_PaymentHashPaymentSecretZ_clone_ptr(this.ptr); - return ret; - } - - public TwoTuple_PaymentHashPaymentSecretZ clone() { - number ret = bindings.C2Tuple_PaymentHashPaymentSecretZ_clone(this.ptr); - TwoTuple_PaymentHashPaymentSecretZ ret_hu_conv = new TwoTuple_PaymentHashPaymentSecretZ(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static TwoTuple_PaymentHashPaymentSecretZ constructor_new(Uint8Array a, Uint8Array b) { - number ret = bindings.C2Tuple_PaymentHashPaymentSecretZ_new(InternalUtils.check_arr_len(a, 32), InternalUtils.check_arr_len(b, 32)); - TwoTuple_PaymentHashPaymentSecretZ ret_hu_conv = new TwoTuple_PaymentHashPaymentSecretZ(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - -} diff --git a/ts/structs/TwoTuple_PublicKeyTypeZ.ts b/ts/structs/TwoTuple_PublicKeyTypeZ.ts deleted file mode 100644 index c7c12671..00000000 --- a/ts/structs/TwoTuple_PublicKeyTypeZ.ts +++ /dev/null @@ -1,53 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class C2Tuple_PublicKeyTypeZ extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.C2Tuple_PublicKeyTypeZ_free(this.ptr); - } - } - public Uint8Array get_a() { - Uint8Array ret = bindings.C2Tuple_PublicKeyTypeZ_get_a(this.ptr); - return ret; - } - - public Type get_b() { - number ret = bindings.C2Tuple_PublicKeyTypeZ_get_b(this.ptr); - Type ret_hu_conv = new Type(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.C2Tuple_PublicKeyTypeZ_clone_ptr(this.ptr); - return ret; - } - - public TwoTuple_PublicKeyTypeZ clone() { - number ret = bindings.C2Tuple_PublicKeyTypeZ_clone(this.ptr); - TwoTuple_PublicKeyTypeZ ret_hu_conv = new TwoTuple_PublicKeyTypeZ(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static TwoTuple_PublicKeyTypeZ constructor_new(Uint8Array a, Type b) { - number ret = bindings.C2Tuple_PublicKeyTypeZ_new(InternalUtils.check_arr_len(a, 33), b == null ? 0 : b.ptr); - TwoTuple_PublicKeyTypeZ ret_hu_conv = new TwoTuple_PublicKeyTypeZ(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - ret_hu_conv.ptrs_to.add(b); - return ret_hu_conv; - } - -} diff --git a/ts/structs/TwoTuple_SignatureCVec_SignatureZZ.ts b/ts/structs/TwoTuple_SignatureCVec_SignatureZZ.ts deleted file mode 100644 index ff23dea6..00000000 --- a/ts/structs/TwoTuple_SignatureCVec_SignatureZZ.ts +++ /dev/null @@ -1,50 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class C2Tuple_SignatureCVec_SignatureZZ extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.C2Tuple_SignatureCVec_SignatureZZ_free(this.ptr); - } - } - public Uint8Array get_a() { - Uint8Array ret = bindings.C2Tuple_SignatureCVec_SignatureZZ_get_a(this.ptr); - return ret; - } - - public Uint8Array[] get_b() { - Uint8Array[] ret = bindings.C2Tuple_SignatureCVec_SignatureZZ_get_b(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.C2Tuple_SignatureCVec_SignatureZZ_clone_ptr(this.ptr); - return ret; - } - - public TwoTuple_SignatureCVec_SignatureZZ clone() { - number ret = bindings.C2Tuple_SignatureCVec_SignatureZZ_clone(this.ptr); - TwoTuple_SignatureCVec_SignatureZZ ret_hu_conv = new TwoTuple_SignatureCVec_SignatureZZ(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static TwoTuple_SignatureCVec_SignatureZZ constructor_new(Uint8Array a, Uint8Array[] b) { - number ret = bindings.C2Tuple_SignatureCVec_SignatureZZ_new(InternalUtils.check_arr_len(a, 64), b != null ? Arrays.stream(b).map(b_conv_12 -> InternalUtils.check_arr_len(b_conv_12, 64)).toArray(Uint8Array[]::new) : null); - TwoTuple_SignatureCVec_SignatureZZ ret_hu_conv = new TwoTuple_SignatureCVec_SignatureZZ(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - -} diff --git a/ts/structs/TwoTuple_TxidCVec_C2Tuple_u32ScriptZZZ.ts b/ts/structs/TwoTuple_TxidCVec_C2Tuple_u32ScriptZZZ.ts deleted file mode 100644 index 28911f41..00000000 --- a/ts/structs/TwoTuple_TxidCVec_C2Tuple_u32ScriptZZZ.ts +++ /dev/null @@ -1,57 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_free(this.ptr); - } - } - public Uint8Array get_a() { - Uint8Array ret = bindings.C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_a(this.ptr); - return ret; - } - - public TwoTuple_u32ScriptZ[] get_b() { - number[] ret = bindings.C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_get_b(this.ptr); - TwoTuple_u32ScriptZ[] ret_conv_21_arr = new TwoTuple_u32ScriptZ[ret.length]; - for (int v = 0; v < ret.length; v++) { - number ret_conv_21 = ret[v]; - TwoTuple_u32ScriptZ ret_conv_21_hu_conv = new TwoTuple_u32ScriptZ(null, ret_conv_21); - ret_conv_21_hu_conv.ptrs_to.add(this); - ret_conv_21_arr[v] = ret_conv_21_hu_conv; - } - return ret_conv_21_arr; - } - - public number clone_ptr() { - number ret = bindings.C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone_ptr(this.ptr); - return ret; - } - - public TwoTuple_TxidCVec_C2Tuple_u32ScriptZZZ clone() { - number ret = bindings.C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone(this.ptr); - TwoTuple_TxidCVec_C2Tuple_u32ScriptZZZ ret_hu_conv = new TwoTuple_TxidCVec_C2Tuple_u32ScriptZZZ(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static TwoTuple_TxidCVec_C2Tuple_u32ScriptZZZ constructor_new(Uint8Array a, TwoTuple_u32ScriptZ[] b) { - number ret = bindings.C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_new(InternalUtils.check_arr_len(a, 32), b != null ? Arrays.stream(b).map(b_conv_21 -> b_conv_21 != null ? b_conv_21.ptr : 0).toArray(number[]::new) : null); - TwoTuple_TxidCVec_C2Tuple_u32ScriptZZZ ret_hu_conv = new TwoTuple_TxidCVec_C2Tuple_u32ScriptZZZ(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - -} diff --git a/ts/structs/TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ.ts b/ts/structs/TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ.ts deleted file mode 100644 index a18ddfe8..00000000 --- a/ts/structs/TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ.ts +++ /dev/null @@ -1,57 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_free(this.ptr); - } - } - public Uint8Array get_a() { - Uint8Array ret = bindings.C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_a(this.ptr); - return ret; - } - - public TwoTuple_u32TxOutZ[] get_b() { - number[] ret = bindings.C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_get_b(this.ptr); - TwoTuple_u32TxOutZ[] ret_conv_20_arr = new TwoTuple_u32TxOutZ[ret.length]; - for (int u = 0; u < ret.length; u++) { - number ret_conv_20 = ret[u]; - TwoTuple_u32TxOutZ ret_conv_20_hu_conv = new TwoTuple_u32TxOutZ(null, ret_conv_20); - ret_conv_20_hu_conv.ptrs_to.add(this); - ret_conv_20_arr[u] = ret_conv_20_hu_conv; - } - return ret_conv_20_arr; - } - - public number clone_ptr() { - number ret = bindings.C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone_ptr(this.ptr); - return ret; - } - - public TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ clone() { - number ret = bindings.C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(this.ptr); - TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ ret_hu_conv = new TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ constructor_new(Uint8Array a, TwoTuple_u32TxOutZ[] b) { - number ret = bindings.C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_new(InternalUtils.check_arr_len(a, 32), b != null ? Arrays.stream(b).map(b_conv_20 -> b_conv_20 != null ? b_conv_20.ptr : 0).toArray(number[]::new) : null); - TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ ret_hu_conv = new TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - -} diff --git a/ts/structs/TwoTuple_u32ScriptZ.ts b/ts/structs/TwoTuple_u32ScriptZ.ts deleted file mode 100644 index 3f10e6b1..00000000 --- a/ts/structs/TwoTuple_u32ScriptZ.ts +++ /dev/null @@ -1,50 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class C2Tuple_u32ScriptZ extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.C2Tuple_u32ScriptZ_free(this.ptr); - } - } - public number get_a() { - number ret = bindings.C2Tuple_u32ScriptZ_get_a(this.ptr); - return ret; - } - - public Uint8Array get_b() { - Uint8Array ret = bindings.C2Tuple_u32ScriptZ_get_b(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.C2Tuple_u32ScriptZ_clone_ptr(this.ptr); - return ret; - } - - public TwoTuple_u32ScriptZ clone() { - number ret = bindings.C2Tuple_u32ScriptZ_clone(this.ptr); - TwoTuple_u32ScriptZ ret_hu_conv = new TwoTuple_u32ScriptZ(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static TwoTuple_u32ScriptZ constructor_new(number a, Uint8Array b) { - number ret = bindings.C2Tuple_u32ScriptZ_new(a, b); - TwoTuple_u32ScriptZ ret_hu_conv = new TwoTuple_u32ScriptZ(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - -} diff --git a/ts/structs/TwoTuple_u32TxOutZ.ts b/ts/structs/TwoTuple_u32TxOutZ.ts deleted file mode 100644 index 57927771..00000000 --- a/ts/structs/TwoTuple_u32TxOutZ.ts +++ /dev/null @@ -1,51 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class C2Tuple_u32TxOutZ extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.C2Tuple_u32TxOutZ_free(this.ptr); - } - } - public number get_a() { - number ret = bindings.C2Tuple_u32TxOutZ_get_a(this.ptr); - return ret; - } - - public TxOut get_b() { - number ret = bindings.C2Tuple_u32TxOutZ_get_b(this.ptr); - TxOut ret_conv = new TxOut(null, ret); - return ret_conv; - } - - public number clone_ptr() { - number ret = bindings.C2Tuple_u32TxOutZ_clone_ptr(this.ptr); - return ret; - } - - public TwoTuple_u32TxOutZ clone() { - number ret = bindings.C2Tuple_u32TxOutZ_clone(this.ptr); - TwoTuple_u32TxOutZ ret_hu_conv = new TwoTuple_u32TxOutZ(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static TwoTuple_u32TxOutZ constructor_new(number a, TxOut b) { - number ret = bindings.C2Tuple_u32TxOutZ_new(a, b.ptr); - TwoTuple_u32TxOutZ ret_hu_conv = new TwoTuple_u32TxOutZ(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - -} diff --git a/ts/structs/TwoTuple_usizeTransactionZ.ts b/ts/structs/TwoTuple_usizeTransactionZ.ts deleted file mode 100644 index c150b0a2..00000000 --- a/ts/structs/TwoTuple_usizeTransactionZ.ts +++ /dev/null @@ -1,50 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class C2Tuple_usizeTransactionZ extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.C2Tuple_usizeTransactionZ_free(this.ptr); - } - } - public number get_a() { - number ret = bindings.C2Tuple_usizeTransactionZ_get_a(this.ptr); - return ret; - } - - public Uint8Array get_b() { - Uint8Array ret = bindings.C2Tuple_usizeTransactionZ_get_b(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.C2Tuple_usizeTransactionZ_clone_ptr(this.ptr); - return ret; - } - - public TwoTuple_usizeTransactionZ clone() { - number ret = bindings.C2Tuple_usizeTransactionZ_clone(this.ptr); - TwoTuple_usizeTransactionZ ret_hu_conv = new TwoTuple_usizeTransactionZ(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static TwoTuple_usizeTransactionZ constructor_new(number a, Uint8Array b) { - number ret = bindings.C2Tuple_usizeTransactionZ_new(a, b); - TwoTuple_usizeTransactionZ ret_hu_conv = new TwoTuple_usizeTransactionZ(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - -} diff --git a/ts/structs/TxCreationKeys.ts b/ts/structs/TxCreationKeys.ts deleted file mode 100644 index 7cdad7a5..00000000 --- a/ts/structs/TxCreationKeys.ts +++ /dev/null @@ -1,110 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class TxCreationKeys extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.TxCreationKeys_free(this.ptr); - } - } - public Uint8Array get_per_commitment_point() { - Uint8Array ret = bindings.TxCreationKeys_get_per_commitment_point(this.ptr); - return ret; - } - - public void set_per_commitment_point(Uint8Array val) { - bindings.TxCreationKeys_set_per_commitment_point(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public Uint8Array get_revocation_key() { - Uint8Array ret = bindings.TxCreationKeys_get_revocation_key(this.ptr); - return ret; - } - - public void set_revocation_key(Uint8Array val) { - bindings.TxCreationKeys_set_revocation_key(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public Uint8Array get_broadcaster_htlc_key() { - Uint8Array ret = bindings.TxCreationKeys_get_broadcaster_htlc_key(this.ptr); - return ret; - } - - public void set_broadcaster_htlc_key(Uint8Array val) { - bindings.TxCreationKeys_set_broadcaster_htlc_key(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public Uint8Array get_countersignatory_htlc_key() { - Uint8Array ret = bindings.TxCreationKeys_get_countersignatory_htlc_key(this.ptr); - return ret; - } - - public void set_countersignatory_htlc_key(Uint8Array val) { - bindings.TxCreationKeys_set_countersignatory_htlc_key(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public Uint8Array get_broadcaster_delayed_payment_key() { - Uint8Array ret = bindings.TxCreationKeys_get_broadcaster_delayed_payment_key(this.ptr); - return ret; - } - - public void set_broadcaster_delayed_payment_key(Uint8Array val) { - bindings.TxCreationKeys_set_broadcaster_delayed_payment_key(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public static TxCreationKeys constructor_new(Uint8Array per_commitment_point_arg, Uint8Array revocation_key_arg, Uint8Array broadcaster_htlc_key_arg, Uint8Array countersignatory_htlc_key_arg, Uint8Array broadcaster_delayed_payment_key_arg) { - number ret = bindings.TxCreationKeys_new(InternalUtils.check_arr_len(per_commitment_point_arg, 33), InternalUtils.check_arr_len(revocation_key_arg, 33), InternalUtils.check_arr_len(broadcaster_htlc_key_arg, 33), InternalUtils.check_arr_len(countersignatory_htlc_key_arg, 33), InternalUtils.check_arr_len(broadcaster_delayed_payment_key_arg, 33)); - const ret_hu_conv: TxCreationKeys = new TxCreationKeys(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.TxCreationKeys_clone_ptr(this.ptr); - return ret; - } - - public TxCreationKeys clone() { - number ret = bindings.TxCreationKeys_clone(this.ptr); - const ret_hu_conv: TxCreationKeys = new TxCreationKeys(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.TxCreationKeys_write(this.ptr); - return ret; - } - - public static Result_TxCreationKeysDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.TxCreationKeys_read(ser); - Result_TxCreationKeysDecodeErrorZ ret_hu_conv = Result_TxCreationKeysDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_TxCreationKeysErrorZ constructor_derive_new(Uint8Array per_commitment_point, Uint8Array broadcaster_delayed_payment_base, Uint8Array broadcaster_htlc_base, Uint8Array countersignatory_revocation_base, Uint8Array countersignatory_htlc_base) { - number ret = bindings.TxCreationKeys_derive_new(InternalUtils.check_arr_len(per_commitment_point, 33), InternalUtils.check_arr_len(broadcaster_delayed_payment_base, 33), InternalUtils.check_arr_len(broadcaster_htlc_base, 33), InternalUtils.check_arr_len(countersignatory_revocation_base, 33), InternalUtils.check_arr_len(countersignatory_htlc_base, 33)); - Result_TxCreationKeysErrorZ ret_hu_conv = Result_TxCreationKeysErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_TxCreationKeysErrorZ constructor_from_channel_static_keys(Uint8Array per_commitment_point, ChannelPublicKeys broadcaster_keys, ChannelPublicKeys countersignatory_keys) { - number ret = bindings.TxCreationKeys_from_channel_static_keys(InternalUtils.check_arr_len(per_commitment_point, 33), broadcaster_keys == null ? 0 : broadcaster_keys.ptr & ~1, countersignatory_keys == null ? 0 : countersignatory_keys.ptr & ~1); - Result_TxCreationKeysErrorZ ret_hu_conv = Result_TxCreationKeysErrorZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(broadcaster_keys); - ret_hu_conv.ptrs_to.add(countersignatory_keys); - return ret_hu_conv; - } - -} diff --git a/ts/structs/TxOut.ts b/ts/structs/TxOut.ts deleted file mode 100644 index 09969ade..00000000 --- a/ts/structs/TxOut.ts +++ /dev/null @@ -1,28 +0,0 @@ - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - -public class TxOut extends CommonBase{ - /** The script_pubkey in this output */ - public final byte[] script_pubkey; - /** The value, in satoshis, of this output */ - public final long value; - - TxOut(java.lang.Object _dummy, long ptr) { - super(ptr); - this.script_pubkey = bindings.TxOut_get_script_pubkey(ptr); - this.value = bindings.TxOut_get_value(ptr); - } - public TxOut(long value, byte[] script_pubkey) { - super(bindings.TxOut_new(script_pubkey, value)); - this.script_pubkey = bindings.TxOut_get_script_pubkey(ptr); - this.value = bindings.TxOut_get_value(ptr); - } - - @Override @SuppressWarnings("deprecation") - protected void finalize() throws Throwable { - super.finalize(); - if (ptr != 0) { bindings.TxOut_free(ptr); } - } - -} \ No newline at end of file diff --git a/ts/structs/Type.ts b/ts/structs/Type.ts deleted file mode 100644 index fda6128e..00000000 --- a/ts/structs/Type.ts +++ /dev/null @@ -1,93 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export class Type extends CommonBase { - - bindings_instance?: bindings.LDKType; - - constructor(ptr?: number, arg?: bindings.LDKType) { - if (Number.isFinite(ptr)) { - super(ptr); - this.bindings_instance = null; - } else { - // TODO: private constructor instantiation - super(bindings.LDKType_new(arg)); - this.ptrs_to.push(arg); - - } - } - - protected finalize() { - if (this.ptr != 0) { - bindings.Type_free(this.ptr); - } - super.finalize(); - } - - static new_impl(arg: TypeInterface): Type { - const impl_holder: LDKTypeHolder = new LDKTypeHolder(); - let structImplementation = { - // todo: in-line interface filling - type_id (): number { - number ret = arg.type_id(); - return ret; - }, - - debug_str (): String { - String ret = arg.debug_str(); - return ret; - }, - - write (): Uint8Array { - Uint8Array ret = arg.write(); - return ret; - }, - - - }; - impl_holder.held = new Type (null, structImplementation); - } - } - - export interface TypeInterface { - type_id(): number; - debug_str(): String; - write(): Uint8Array; - - } - - class LDKTypeHolder { - held: Type; - } - public number type_id() { - number ret = bindings.Type_type_id(this.ptr); - return ret; - } - - public String debug_str() { - String ret = bindings.Type_debug_str(this.ptr); - return ret; - } - - public Uint8Array write() { - Uint8Array ret = bindings.Type_write(this.ptr); - return ret; - } - - public number clone_ptr() { - number ret = bindings.Type_clone_ptr(this.ptr); - return ret; - } - - public Type clone() { - number ret = bindings.Type_clone(this.ptr); - Type ret_hu_conv = new Type(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - -} diff --git a/ts/structs/UnsignedChannelAnnouncement.ts b/ts/structs/UnsignedChannelAnnouncement.ts deleted file mode 100644 index 08981954..00000000 --- a/ts/structs/UnsignedChannelAnnouncement.ts +++ /dev/null @@ -1,109 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class UnsignedChannelAnnouncement extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.UnsignedChannelAnnouncement_free(this.ptr); - } - } - public ChannelFeatures get_features() { - number ret = bindings.UnsignedChannelAnnouncement_get_features(this.ptr); - const ret_hu_conv: ChannelFeatures = new ChannelFeatures(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_features(ChannelFeatures val) { - bindings.UnsignedChannelAnnouncement_set_features(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public Uint8Array get_chain_hash() { - Uint8Array ret = bindings.UnsignedChannelAnnouncement_get_chain_hash(this.ptr); - return ret; - } - - public void set_chain_hash(Uint8Array val) { - bindings.UnsignedChannelAnnouncement_set_chain_hash(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public number get_short_channel_id() { - number ret = bindings.UnsignedChannelAnnouncement_get_short_channel_id(this.ptr); - return ret; - } - - public void set_short_channel_id(number val) { - bindings.UnsignedChannelAnnouncement_set_short_channel_id(this.ptr, val); - } - - public Uint8Array get_node_id_1() { - Uint8Array ret = bindings.UnsignedChannelAnnouncement_get_node_id_1(this.ptr); - return ret; - } - - public void set_node_id_1(Uint8Array val) { - bindings.UnsignedChannelAnnouncement_set_node_id_1(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public Uint8Array get_node_id_2() { - Uint8Array ret = bindings.UnsignedChannelAnnouncement_get_node_id_2(this.ptr); - return ret; - } - - public void set_node_id_2(Uint8Array val) { - bindings.UnsignedChannelAnnouncement_set_node_id_2(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public Uint8Array get_bitcoin_key_1() { - Uint8Array ret = bindings.UnsignedChannelAnnouncement_get_bitcoin_key_1(this.ptr); - return ret; - } - - public void set_bitcoin_key_1(Uint8Array val) { - bindings.UnsignedChannelAnnouncement_set_bitcoin_key_1(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public Uint8Array get_bitcoin_key_2() { - Uint8Array ret = bindings.UnsignedChannelAnnouncement_get_bitcoin_key_2(this.ptr); - return ret; - } - - public void set_bitcoin_key_2(Uint8Array val) { - bindings.UnsignedChannelAnnouncement_set_bitcoin_key_2(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public number clone_ptr() { - number ret = bindings.UnsignedChannelAnnouncement_clone_ptr(this.ptr); - return ret; - } - - public UnsignedChannelAnnouncement clone() { - number ret = bindings.UnsignedChannelAnnouncement_clone(this.ptr); - const ret_hu_conv: UnsignedChannelAnnouncement = new UnsignedChannelAnnouncement(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.UnsignedChannelAnnouncement_write(this.ptr); - return ret; - } - - public static Result_UnsignedChannelAnnouncementDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.UnsignedChannelAnnouncement_read(ser); - Result_UnsignedChannelAnnouncementDecodeErrorZ ret_hu_conv = Result_UnsignedChannelAnnouncementDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/UnsignedChannelUpdate.ts b/ts/structs/UnsignedChannelUpdate.ts deleted file mode 100644 index c509f73f..00000000 --- a/ts/structs/UnsignedChannelUpdate.ts +++ /dev/null @@ -1,116 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class UnsignedChannelUpdate extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.UnsignedChannelUpdate_free(this.ptr); - } - } - public Uint8Array get_chain_hash() { - Uint8Array ret = bindings.UnsignedChannelUpdate_get_chain_hash(this.ptr); - return ret; - } - - public void set_chain_hash(Uint8Array val) { - bindings.UnsignedChannelUpdate_set_chain_hash(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public number get_short_channel_id() { - number ret = bindings.UnsignedChannelUpdate_get_short_channel_id(this.ptr); - return ret; - } - - public void set_short_channel_id(number val) { - bindings.UnsignedChannelUpdate_set_short_channel_id(this.ptr, val); - } - - public number get_timestamp() { - number ret = bindings.UnsignedChannelUpdate_get_timestamp(this.ptr); - return ret; - } - - public void set_timestamp(number val) { - bindings.UnsignedChannelUpdate_set_timestamp(this.ptr, val); - } - - public number get_flags() { - number ret = bindings.UnsignedChannelUpdate_get_flags(this.ptr); - return ret; - } - - public void set_flags(number val) { - bindings.UnsignedChannelUpdate_set_flags(this.ptr, val); - } - - public number get_cltv_expiry_delta() { - number ret = bindings.UnsignedChannelUpdate_get_cltv_expiry_delta(this.ptr); - return ret; - } - - public void set_cltv_expiry_delta(number val) { - bindings.UnsignedChannelUpdate_set_cltv_expiry_delta(this.ptr, val); - } - - public number get_htlc_minimum_msat() { - number ret = bindings.UnsignedChannelUpdate_get_htlc_minimum_msat(this.ptr); - return ret; - } - - public void set_htlc_minimum_msat(number val) { - bindings.UnsignedChannelUpdate_set_htlc_minimum_msat(this.ptr, val); - } - - public number get_fee_base_msat() { - number ret = bindings.UnsignedChannelUpdate_get_fee_base_msat(this.ptr); - return ret; - } - - public void set_fee_base_msat(number val) { - bindings.UnsignedChannelUpdate_set_fee_base_msat(this.ptr, val); - } - - public number get_fee_proportional_millionths() { - number ret = bindings.UnsignedChannelUpdate_get_fee_proportional_millionths(this.ptr); - return ret; - } - - public void set_fee_proportional_millionths(number val) { - bindings.UnsignedChannelUpdate_set_fee_proportional_millionths(this.ptr, val); - } - - public number clone_ptr() { - number ret = bindings.UnsignedChannelUpdate_clone_ptr(this.ptr); - return ret; - } - - public UnsignedChannelUpdate clone() { - number ret = bindings.UnsignedChannelUpdate_clone(this.ptr); - const ret_hu_conv: UnsignedChannelUpdate = new UnsignedChannelUpdate(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.UnsignedChannelUpdate_write(this.ptr); - return ret; - } - - public static Result_UnsignedChannelUpdateDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.UnsignedChannelUpdate_read(ser); - Result_UnsignedChannelUpdateDecodeErrorZ ret_hu_conv = Result_UnsignedChannelUpdateDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/UnsignedNodeAnnouncement.ts b/ts/structs/UnsignedNodeAnnouncement.ts deleted file mode 100644 index dce96727..00000000 --- a/ts/structs/UnsignedNodeAnnouncement.ts +++ /dev/null @@ -1,95 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class UnsignedNodeAnnouncement extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.UnsignedNodeAnnouncement_free(this.ptr); - } - } - public NodeFeatures get_features() { - number ret = bindings.UnsignedNodeAnnouncement_get_features(this.ptr); - const ret_hu_conv: NodeFeatures = new NodeFeatures(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_features(NodeFeatures val) { - bindings.UnsignedNodeAnnouncement_set_features(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public number get_timestamp() { - number ret = bindings.UnsignedNodeAnnouncement_get_timestamp(this.ptr); - return ret; - } - - public void set_timestamp(number val) { - bindings.UnsignedNodeAnnouncement_set_timestamp(this.ptr, val); - } - - public Uint8Array get_node_id() { - Uint8Array ret = bindings.UnsignedNodeAnnouncement_get_node_id(this.ptr); - return ret; - } - - public void set_node_id(Uint8Array val) { - bindings.UnsignedNodeAnnouncement_set_node_id(this.ptr, InternalUtils.check_arr_len(val, 33)); - } - - public Uint8Array get_rgb() { - Uint8Array ret = bindings.UnsignedNodeAnnouncement_get_rgb(this.ptr); - return ret; - } - - public void set_rgb(Uint8Array val) { - bindings.UnsignedNodeAnnouncement_set_rgb(this.ptr, InternalUtils.check_arr_len(val, 3)); - } - - public Uint8Array get_alias() { - Uint8Array ret = bindings.UnsignedNodeAnnouncement_get_alias(this.ptr); - return ret; - } - - public void set_alias(Uint8Array val) { - bindings.UnsignedNodeAnnouncement_set_alias(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public void set_addresses(NetAddress[] val) { - bindings.UnsignedNodeAnnouncement_set_addresses(this.ptr, val != null ? Arrays.stream(val).map(val_conv_12 -> val_conv_12.ptr).toArray(number[]::new) : null); - } - - public number clone_ptr() { - number ret = bindings.UnsignedNodeAnnouncement_clone_ptr(this.ptr); - return ret; - } - - public UnsignedNodeAnnouncement clone() { - number ret = bindings.UnsignedNodeAnnouncement_clone(this.ptr); - const ret_hu_conv: UnsignedNodeAnnouncement = new UnsignedNodeAnnouncement(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.UnsignedNodeAnnouncement_write(this.ptr); - return ret; - } - - public static Result_UnsignedNodeAnnouncementDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.UnsignedNodeAnnouncement_read(ser); - Result_UnsignedNodeAnnouncementDecodeErrorZ ret_hu_conv = Result_UnsignedNodeAnnouncementDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/UpdateAddHTLC.ts b/ts/structs/UpdateAddHTLC.ts deleted file mode 100644 index 5622a5da..00000000 --- a/ts/structs/UpdateAddHTLC.ts +++ /dev/null @@ -1,89 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class UpdateAddHTLC extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.UpdateAddHTLC_free(this.ptr); - } - } - public Uint8Array get_channel_id() { - Uint8Array ret = bindings.UpdateAddHTLC_get_channel_id(this.ptr); - return ret; - } - - public void set_channel_id(Uint8Array val) { - bindings.UpdateAddHTLC_set_channel_id(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public number get_htlc_id() { - number ret = bindings.UpdateAddHTLC_get_htlc_id(this.ptr); - return ret; - } - - public void set_htlc_id(number val) { - bindings.UpdateAddHTLC_set_htlc_id(this.ptr, val); - } - - public number get_amount_msat() { - number ret = bindings.UpdateAddHTLC_get_amount_msat(this.ptr); - return ret; - } - - public void set_amount_msat(number val) { - bindings.UpdateAddHTLC_set_amount_msat(this.ptr, val); - } - - public Uint8Array get_payment_hash() { - Uint8Array ret = bindings.UpdateAddHTLC_get_payment_hash(this.ptr); - return ret; - } - - public void set_payment_hash(Uint8Array val) { - bindings.UpdateAddHTLC_set_payment_hash(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public number get_cltv_expiry() { - number ret = bindings.UpdateAddHTLC_get_cltv_expiry(this.ptr); - return ret; - } - - public void set_cltv_expiry(number val) { - bindings.UpdateAddHTLC_set_cltv_expiry(this.ptr, val); - } - - public number clone_ptr() { - number ret = bindings.UpdateAddHTLC_clone_ptr(this.ptr); - return ret; - } - - public UpdateAddHTLC clone() { - number ret = bindings.UpdateAddHTLC_clone(this.ptr); - const ret_hu_conv: UpdateAddHTLC = new UpdateAddHTLC(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.UpdateAddHTLC_write(this.ptr); - return ret; - } - - public static Result_UpdateAddHTLCDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.UpdateAddHTLC_read(ser); - Result_UpdateAddHTLCDecodeErrorZ ret_hu_conv = Result_UpdateAddHTLCDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/UpdateFailHTLC.ts b/ts/structs/UpdateFailHTLC.ts deleted file mode 100644 index afe36ae9..00000000 --- a/ts/structs/UpdateFailHTLC.ts +++ /dev/null @@ -1,62 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class UpdateFailHTLC extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.UpdateFailHTLC_free(this.ptr); - } - } - public Uint8Array get_channel_id() { - Uint8Array ret = bindings.UpdateFailHTLC_get_channel_id(this.ptr); - return ret; - } - - public void set_channel_id(Uint8Array val) { - bindings.UpdateFailHTLC_set_channel_id(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public number get_htlc_id() { - number ret = bindings.UpdateFailHTLC_get_htlc_id(this.ptr); - return ret; - } - - public void set_htlc_id(number val) { - bindings.UpdateFailHTLC_set_htlc_id(this.ptr, val); - } - - public number clone_ptr() { - number ret = bindings.UpdateFailHTLC_clone_ptr(this.ptr); - return ret; - } - - public UpdateFailHTLC clone() { - number ret = bindings.UpdateFailHTLC_clone(this.ptr); - const ret_hu_conv: UpdateFailHTLC = new UpdateFailHTLC(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.UpdateFailHTLC_write(this.ptr); - return ret; - } - - public static Result_UpdateFailHTLCDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.UpdateFailHTLC_read(ser); - Result_UpdateFailHTLCDecodeErrorZ ret_hu_conv = Result_UpdateFailHTLCDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/UpdateFailMalformedHTLC.ts b/ts/structs/UpdateFailMalformedHTLC.ts deleted file mode 100644 index 3b894fb1..00000000 --- a/ts/structs/UpdateFailMalformedHTLC.ts +++ /dev/null @@ -1,71 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class UpdateFailMalformedHTLC extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.UpdateFailMalformedHTLC_free(this.ptr); - } - } - public Uint8Array get_channel_id() { - Uint8Array ret = bindings.UpdateFailMalformedHTLC_get_channel_id(this.ptr); - return ret; - } - - public void set_channel_id(Uint8Array val) { - bindings.UpdateFailMalformedHTLC_set_channel_id(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public number get_htlc_id() { - number ret = bindings.UpdateFailMalformedHTLC_get_htlc_id(this.ptr); - return ret; - } - - public void set_htlc_id(number val) { - bindings.UpdateFailMalformedHTLC_set_htlc_id(this.ptr, val); - } - - public number get_failure_code() { - number ret = bindings.UpdateFailMalformedHTLC_get_failure_code(this.ptr); - return ret; - } - - public void set_failure_code(number val) { - bindings.UpdateFailMalformedHTLC_set_failure_code(this.ptr, val); - } - - public number clone_ptr() { - number ret = bindings.UpdateFailMalformedHTLC_clone_ptr(this.ptr); - return ret; - } - - public UpdateFailMalformedHTLC clone() { - number ret = bindings.UpdateFailMalformedHTLC_clone(this.ptr); - const ret_hu_conv: UpdateFailMalformedHTLC = new UpdateFailMalformedHTLC(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.UpdateFailMalformedHTLC_write(this.ptr); - return ret; - } - - public static Result_UpdateFailMalformedHTLCDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.UpdateFailMalformedHTLC_read(ser); - Result_UpdateFailMalformedHTLCDecodeErrorZ ret_hu_conv = Result_UpdateFailMalformedHTLCDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/UpdateFee.ts b/ts/structs/UpdateFee.ts deleted file mode 100644 index a86e5903..00000000 --- a/ts/structs/UpdateFee.ts +++ /dev/null @@ -1,69 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class UpdateFee extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.UpdateFee_free(this.ptr); - } - } - public Uint8Array get_channel_id() { - Uint8Array ret = bindings.UpdateFee_get_channel_id(this.ptr); - return ret; - } - - public void set_channel_id(Uint8Array val) { - bindings.UpdateFee_set_channel_id(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public number get_feerate_per_kw() { - number ret = bindings.UpdateFee_get_feerate_per_kw(this.ptr); - return ret; - } - - public void set_feerate_per_kw(number val) { - bindings.UpdateFee_set_feerate_per_kw(this.ptr, val); - } - - public static UpdateFee constructor_new(Uint8Array channel_id_arg, number feerate_per_kw_arg) { - number ret = bindings.UpdateFee_new(InternalUtils.check_arr_len(channel_id_arg, 32), feerate_per_kw_arg); - const ret_hu_conv: UpdateFee = new UpdateFee(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.UpdateFee_clone_ptr(this.ptr); - return ret; - } - - public UpdateFee clone() { - number ret = bindings.UpdateFee_clone(this.ptr); - const ret_hu_conv: UpdateFee = new UpdateFee(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.UpdateFee_write(this.ptr); - return ret; - } - - public static Result_UpdateFeeDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.UpdateFee_read(ser); - Result_UpdateFeeDecodeErrorZ ret_hu_conv = Result_UpdateFeeDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/UpdateFulfillHTLC.ts b/ts/structs/UpdateFulfillHTLC.ts deleted file mode 100644 index 5bd5d0b1..00000000 --- a/ts/structs/UpdateFulfillHTLC.ts +++ /dev/null @@ -1,78 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class UpdateFulfillHTLC extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.UpdateFulfillHTLC_free(this.ptr); - } - } - public Uint8Array get_channel_id() { - Uint8Array ret = bindings.UpdateFulfillHTLC_get_channel_id(this.ptr); - return ret; - } - - public void set_channel_id(Uint8Array val) { - bindings.UpdateFulfillHTLC_set_channel_id(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public number get_htlc_id() { - number ret = bindings.UpdateFulfillHTLC_get_htlc_id(this.ptr); - return ret; - } - - public void set_htlc_id(number val) { - bindings.UpdateFulfillHTLC_set_htlc_id(this.ptr, val); - } - - public Uint8Array get_payment_preimage() { - Uint8Array ret = bindings.UpdateFulfillHTLC_get_payment_preimage(this.ptr); - return ret; - } - - public void set_payment_preimage(Uint8Array val) { - bindings.UpdateFulfillHTLC_set_payment_preimage(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public static UpdateFulfillHTLC constructor_new(Uint8Array channel_id_arg, number htlc_id_arg, Uint8Array payment_preimage_arg) { - number ret = bindings.UpdateFulfillHTLC_new(InternalUtils.check_arr_len(channel_id_arg, 32), htlc_id_arg, InternalUtils.check_arr_len(payment_preimage_arg, 32)); - const ret_hu_conv: UpdateFulfillHTLC = new UpdateFulfillHTLC(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.UpdateFulfillHTLC_clone_ptr(this.ptr); - return ret; - } - - public UpdateFulfillHTLC clone() { - number ret = bindings.UpdateFulfillHTLC_clone(this.ptr); - const ret_hu_conv: UpdateFulfillHTLC = new UpdateFulfillHTLC(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public Uint8Array write() { - Uint8Array ret = bindings.UpdateFulfillHTLC_write(this.ptr); - return ret; - } - - public static Result_UpdateFulfillHTLCDecodeErrorZ constructor_read(Uint8Array ser) { - number ret = bindings.UpdateFulfillHTLC_read(ser); - Result_UpdateFulfillHTLCDecodeErrorZ ret_hu_conv = Result_UpdateFulfillHTLCDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - -} diff --git a/ts/structs/UserConfig.ts b/ts/structs/UserConfig.ts deleted file mode 100644 index 06742340..00000000 --- a/ts/structs/UserConfig.ts +++ /dev/null @@ -1,98 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class UserConfig extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.UserConfig_free(this.ptr); - } - } - public ChannelHandshakeConfig get_own_channel_config() { - number ret = bindings.UserConfig_get_own_channel_config(this.ptr); - const ret_hu_conv: ChannelHandshakeConfig = new ChannelHandshakeConfig(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_own_channel_config(ChannelHandshakeConfig val) { - bindings.UserConfig_set_own_channel_config(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public ChannelHandshakeLimits get_peer_channel_config_limits() { - number ret = bindings.UserConfig_get_peer_channel_config_limits(this.ptr); - const ret_hu_conv: ChannelHandshakeLimits = new ChannelHandshakeLimits(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_peer_channel_config_limits(ChannelHandshakeLimits val) { - bindings.UserConfig_set_peer_channel_config_limits(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public ChannelConfig get_channel_options() { - number ret = bindings.UserConfig_get_channel_options(this.ptr); - const ret_hu_conv: ChannelConfig = new ChannelConfig(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_channel_options(ChannelConfig val) { - bindings.UserConfig_set_channel_options(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public boolean get_accept_forwards_to_priv_channels() { - boolean ret = bindings.UserConfig_get_accept_forwards_to_priv_channels(this.ptr); - return ret; - } - - public void set_accept_forwards_to_priv_channels(boolean val) { - bindings.UserConfig_set_accept_forwards_to_priv_channels(this.ptr, val); - } - - public boolean get_accept_inbound_channels() { - boolean ret = bindings.UserConfig_get_accept_inbound_channels(this.ptr); - return ret; - } - - public void set_accept_inbound_channels(boolean val) { - bindings.UserConfig_set_accept_inbound_channels(this.ptr, val); - } - - public static UserConfig constructor_new(ChannelHandshakeConfig own_channel_config_arg, ChannelHandshakeLimits peer_channel_config_limits_arg, ChannelConfig channel_options_arg, boolean accept_forwards_to_priv_channels_arg, boolean accept_inbound_channels_arg) { - number ret = bindings.UserConfig_new(own_channel_config_arg == null ? 0 : own_channel_config_arg.ptr & ~1, peer_channel_config_limits_arg == null ? 0 : peer_channel_config_limits_arg.ptr & ~1, channel_options_arg == null ? 0 : channel_options_arg.ptr & ~1, accept_forwards_to_priv_channels_arg, accept_inbound_channels_arg); - const ret_hu_conv: UserConfig = new UserConfig(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.UserConfig_clone_ptr(this.ptr); - return ret; - } - - public UserConfig clone() { - number ret = bindings.UserConfig_clone(this.ptr); - const ret_hu_conv: UserConfig = new UserConfig(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public static UserConfig constructor_default() { - number ret = bindings.UserConfig_default(); - const ret_hu_conv: UserConfig = new UserConfig(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - -} diff --git a/ts/structs/UtilMethods.ts b/ts/structs/UtilMethods.ts deleted file mode 100644 index 5dced389..00000000 --- a/ts/structs/UtilMethods.ts +++ /dev/null @@ -1,174 +0,0 @@ - public static COption_NoneZ constructor_COption_NoneZ_some() { - COption_NoneZ ret = bindings.COption_NoneZ_some(); - return ret; - } - - public static COption_NoneZ constructor_COption_NoneZ_none() { - COption_NoneZ ret = bindings.COption_NoneZ_none(); - return ret; - } - - public static Result_COption_ClosureReasonZDecodeErrorZ constructor_ClosureReason_read(Uint8Array ser) { - number ret = bindings.ClosureReason_read(ser); - Result_COption_ClosureReasonZDecodeErrorZ ret_hu_conv = Result_COption_ClosureReasonZDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_COption_EventZDecodeErrorZ constructor_Event_read(Uint8Array ser) { - number ret = bindings.Event_read(ser); - Result_COption_EventZDecodeErrorZ ret_hu_conv = Result_COption_EventZDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_StringErrorZ constructor_sign(Uint8Array msg, Uint8Array sk) { - number ret = bindings.sign(msg, InternalUtils.check_arr_len(sk, 32)); - Result_StringErrorZ ret_hu_conv = Result_StringErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_PublicKeyErrorZ constructor_recover_pk(Uint8Array msg, String sig) { - number ret = bindings.recover_pk(msg, sig); - Result_PublicKeyErrorZ ret_hu_conv = Result_PublicKeyErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static boolean constructor_verify(Uint8Array msg, String sig, Uint8Array pk) { - boolean ret = bindings.verify(msg, sig, InternalUtils.check_arr_len(pk, 33)); - return ret; - } - - public static Result_COption_MonitorEventZDecodeErrorZ constructor_MonitorEvent_read(Uint8Array ser) { - number ret = bindings.MonitorEvent_read(ser); - Result_COption_MonitorEventZDecodeErrorZ ret_hu_conv = Result_COption_MonitorEventZDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ constructor_C2Tuple_BlockHashChannelMonitorZ_read(Uint8Array ser, KeysInterface arg) { - number ret = bindings.C2Tuple_BlockHashChannelMonitorZ_read(ser, arg == null ? 0 : arg.ptr); - Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ ret_hu_conv = Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(arg); - return ret_hu_conv; - } - - public static Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ constructor_C2Tuple_BlockHashChannelManagerZ_read(Uint8Array ser, KeysInterface arg_keys_manager, FeeEstimator arg_fee_estimator, Watch arg_chain_monitor, BroadcasterInterface arg_tx_broadcaster, Logger arg_logger, UserConfig arg_default_config, ChannelMonitor[] arg_channel_monitors) { - number ret = bindings.C2Tuple_BlockHashChannelManagerZ_read(ser, bindings.ChannelManagerReadArgs_new(arg_keys_manager == null ? 0 : arg_keys_manager.ptr, arg_fee_estimator == null ? 0 : arg_fee_estimator.ptr, arg_chain_monitor == null ? 0 : arg_chain_monitor.ptr, arg_tx_broadcaster == null ? 0 : arg_tx_broadcaster.ptr, arg_logger == null ? 0 : arg_logger.ptr, arg_default_config == null ? 0 : arg_default_config.ptr & ~1, arg_channel_monitors != null ? Arrays.stream(arg_channel_monitors).map(arg_channel_monitors_conv_16 -> arg_channel_monitors_conv_16 == null ? 0 : arg_channel_monitors_conv_16.ptr & ~1).toArray(number[]::new) : null)); - Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ ret_hu_conv = Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(arg_keys_manager); - ret_hu_conv.ptrs_to.add(arg_fee_estimator); - ret_hu_conv.ptrs_to.add(arg_chain_monitor); - ret_hu_conv.ptrs_to.add(arg_tx_broadcaster); - ret_hu_conv.ptrs_to.add(arg_logger); - ; - for (ChannelMonitor arg_channel_monitors_conv_16: arg_channel_monitors) { ret_hu_conv.ptrs_to.add(arg_channel_monitors_conv_16); }; - return ret_hu_conv; - } - - public static number constructor_htlc_success_tx_weight(boolean opt_anchors) { - number ret = bindings.htlc_success_tx_weight(opt_anchors); - return ret; - } - - public static number constructor_htlc_timeout_tx_weight(boolean opt_anchors) { - number ret = bindings.htlc_timeout_tx_weight(opt_anchors); - return ret; - } - - public static Uint8Array constructor_build_commitment_secret(Uint8Array commitment_seed, number idx) { - Uint8Array ret = bindings.build_commitment_secret(InternalUtils.check_arr_len(commitment_seed, 32), idx); - return ret; - } - - public static Uint8Array constructor_build_closing_transaction(number to_holder_value_sat, number to_counterparty_value_sat, Uint8Array to_holder_script, Uint8Array to_counterparty_script, OutPoint funding_outpoint) { - Uint8Array ret = bindings.build_closing_transaction(to_holder_value_sat, to_counterparty_value_sat, to_holder_script, to_counterparty_script, funding_outpoint == null ? 0 : funding_outpoint.ptr & ~1); - return ret; - } - - public static Result_SecretKeyErrorZ constructor_derive_private_key(Uint8Array per_commitment_point, Uint8Array base_secret) { - number ret = bindings.derive_private_key(InternalUtils.check_arr_len(per_commitment_point, 33), InternalUtils.check_arr_len(base_secret, 32)); - Result_SecretKeyErrorZ ret_hu_conv = Result_SecretKeyErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_PublicKeyErrorZ constructor_derive_public_key(Uint8Array per_commitment_point, Uint8Array base_point) { - number ret = bindings.derive_public_key(InternalUtils.check_arr_len(per_commitment_point, 33), InternalUtils.check_arr_len(base_point, 33)); - Result_PublicKeyErrorZ ret_hu_conv = Result_PublicKeyErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_SecretKeyErrorZ constructor_derive_private_revocation_key(Uint8Array per_commitment_secret, Uint8Array countersignatory_revocation_base_secret) { - number ret = bindings.derive_private_revocation_key(InternalUtils.check_arr_len(per_commitment_secret, 32), InternalUtils.check_arr_len(countersignatory_revocation_base_secret, 32)); - Result_SecretKeyErrorZ ret_hu_conv = Result_SecretKeyErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_PublicKeyErrorZ constructor_derive_public_revocation_key(Uint8Array per_commitment_point, Uint8Array countersignatory_revocation_base_point) { - number ret = bindings.derive_public_revocation_key(InternalUtils.check_arr_len(per_commitment_point, 33), InternalUtils.check_arr_len(countersignatory_revocation_base_point, 33)); - Result_PublicKeyErrorZ ret_hu_conv = Result_PublicKeyErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Uint8Array constructor_get_revokeable_redeemscript(Uint8Array revocation_key, number contest_delay, Uint8Array broadcaster_delayed_payment_key) { - Uint8Array ret = bindings.get_revokeable_redeemscript(InternalUtils.check_arr_len(revocation_key, 33), contest_delay, InternalUtils.check_arr_len(broadcaster_delayed_payment_key, 33)); - return ret; - } - - public static Uint8Array constructor_get_htlc_redeemscript(HTLCOutputInCommitment htlc, boolean opt_anchors, TxCreationKeys keys) { - Uint8Array ret = bindings.get_htlc_redeemscript(htlc == null ? 0 : htlc.ptr & ~1, opt_anchors, keys == null ? 0 : keys.ptr & ~1); - // this.ptrs_to.add(htlc); - // this.ptrs_to.add(keys); - return ret; - } - - public static Uint8Array constructor_make_funding_redeemscript(Uint8Array broadcaster, Uint8Array countersignatory) { - Uint8Array ret = bindings.make_funding_redeemscript(InternalUtils.check_arr_len(broadcaster, 33), InternalUtils.check_arr_len(countersignatory, 33)); - return ret; - } - - public static Uint8Array constructor_build_htlc_transaction(Uint8Array commitment_txid, number feerate_per_kw, number contest_delay, HTLCOutputInCommitment htlc, boolean opt_anchors, Uint8Array broadcaster_delayed_payment_key, Uint8Array revocation_key) { - Uint8Array ret = bindings.build_htlc_transaction(InternalUtils.check_arr_len(commitment_txid, 32), feerate_per_kw, contest_delay, htlc == null ? 0 : htlc.ptr & ~1, opt_anchors, InternalUtils.check_arr_len(broadcaster_delayed_payment_key, 33), InternalUtils.check_arr_len(revocation_key, 33)); - // this.ptrs_to.add(htlc); - return ret; - } - - public static Uint8Array constructor_get_anchor_redeemscript(Uint8Array funding_pubkey) { - Uint8Array ret = bindings.get_anchor_redeemscript(InternalUtils.check_arr_len(funding_pubkey, 33)); - return ret; - } - - public static number constructor_get_commitment_transaction_number_obscure_factor(Uint8Array broadcaster_payment_basepoint, Uint8Array countersignatory_payment_basepoint, boolean outbound_from_broadcaster) { - number ret = bindings.get_commitment_transaction_number_obscure_factor(InternalUtils.check_arr_len(broadcaster_payment_basepoint, 33), InternalUtils.check_arr_len(countersignatory_payment_basepoint, 33), outbound_from_broadcaster); - return ret; - } - - public static Result_COption_NetworkUpdateZDecodeErrorZ constructor_NetworkUpdate_read(Uint8Array ser) { - number ret = bindings.NetworkUpdate_read(ser); - Result_COption_NetworkUpdateZDecodeErrorZ ret_hu_conv = Result_COption_NetworkUpdateZDecodeErrorZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public static Result_RouteLightningErrorZ constructor_find_route(Uint8Array our_node_pubkey, RouteParameters params, NetworkGraph network, ChannelDetails[] first_hops, Logger logger, Score scorer) { - number ret = bindings.find_route(InternalUtils.check_arr_len(our_node_pubkey, 33), params == null ? 0 : params.ptr & ~1, network == null ? 0 : network.ptr & ~1, first_hops != null ? Arrays.stream(first_hops).map(first_hops_conv_16 -> first_hops_conv_16 == null ? 0 : first_hops_conv_16.ptr & ~1).toArray(number[]::new) : null, logger == null ? 0 : logger.ptr, scorer == null ? 0 : scorer.ptr); - Result_RouteLightningErrorZ ret_hu_conv = Result_RouteLightningErrorZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(params); - ret_hu_conv.ptrs_to.add(network); - for (ChannelDetails first_hops_conv_16: first_hops) { ret_hu_conv.ptrs_to.add(first_hops_conv_16); }; - ret_hu_conv.ptrs_to.add(logger); - ret_hu_conv.ptrs_to.add(scorer); - return ret_hu_conv; - } - - public static Result_NoneErrorZ constructor_FilesystemPersister_persist_manager(String data_dir, ChannelManager manager) { - number ret = bindings.FilesystemPersister_persist_manager(data_dir, manager == null ? 0 : manager.ptr & ~1); - Result_NoneErrorZ ret_hu_conv = Result_NoneErrorZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(manager); - return ret_hu_conv; - } - - public static Result_InvoiceSignOrCreationErrorZ constructor_create_invoice_from_channelmanager(ChannelManager channelmanager, KeysInterface keys_manager, Currency network, Option_u64Z amt_msat, String description) { - number ret = bindings.create_invoice_from_channelmanager(channelmanager == null ? 0 : channelmanager.ptr & ~1, keys_manager == null ? 0 : keys_manager.ptr, network, amt_msat.ptr, description); - Result_InvoiceSignOrCreationErrorZ ret_hu_conv = Result_InvoiceSignOrCreationErrorZ.constr_from_ptr(ret); - ret_hu_conv.ptrs_to.add(channelmanager); - ret_hu_conv.ptrs_to.add(keys_manager); - return ret_hu_conv; - } - diff --git a/ts/structs/Watch.ts b/ts/structs/Watch.ts deleted file mode 100644 index 300d856e..00000000 --- a/ts/structs/Watch.ts +++ /dev/null @@ -1,101 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export class Watch extends CommonBase { - - bindings_instance?: bindings.LDKWatch; - - constructor(ptr?: number, arg?: bindings.LDKWatch) { - if (Number.isFinite(ptr)) { - super(ptr); - this.bindings_instance = null; - } else { - // TODO: private constructor instantiation - super(bindings.LDKWatch_new(arg)); - this.ptrs_to.push(arg); - - } - } - - protected finalize() { - if (this.ptr != 0) { - bindings.Watch_free(this.ptr); - } - super.finalize(); - } - - static new_impl(arg: WatchInterface): Watch { - const impl_holder: LDKWatchHolder = new LDKWatchHolder(); - let structImplementation = { - // todo: in-line interface filling - watch_channel (funding_txo: number, monitor: number): number { - const funding_txo_hu_conv: OutPoint = new OutPoint(null, funding_txo); - funding_txo_hu_conv.ptrs_to.add(this); - const monitor_hu_conv: ChannelMonitor = new ChannelMonitor(null, monitor); - monitor_hu_conv.ptrs_to.add(this); - Result_NoneChannelMonitorUpdateErrZ ret = arg.watch_channel(funding_txo_hu_conv, monitor_hu_conv); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - update_channel (funding_txo: number, update: number): number { - const funding_txo_hu_conv: OutPoint = new OutPoint(null, funding_txo); - funding_txo_hu_conv.ptrs_to.add(this); - const update_hu_conv: ChannelMonitorUpdate = new ChannelMonitorUpdate(null, update); - update_hu_conv.ptrs_to.add(this); - Result_NoneChannelMonitorUpdateErrZ ret = arg.update_channel(funding_txo_hu_conv, update_hu_conv); - result: number = ret == null ? 0 : ret.clone_ptr(); - return result; - }, - - release_pending_monitor_events (): number[] { - MonitorEvent[] ret = arg.release_pending_monitor_events(); - result: number[] = ret != null ? Arrays.stream(ret).map(ret_conv_14 -> ret_conv_14 == null ? 0 : ret_conv_14.clone_ptr()).toArray(number[]::new) : null; - return result; - }, - - - }; - impl_holder.held = new Watch (null, structImplementation); - } - } - - export interface WatchInterface { - watch_channel(funding_txo: OutPoint, monitor: ChannelMonitor): Result_NoneChannelMonitorUpdateErrZ; - update_channel(funding_txo: OutPoint, update: ChannelMonitorUpdate): Result_NoneChannelMonitorUpdateErrZ; - release_pending_monitor_events(): MonitorEvent[]; - - } - - class LDKWatchHolder { - held: Watch; - } - public Result_NoneChannelMonitorUpdateErrZ watch_channel(OutPoint funding_txo, ChannelMonitor monitor) { - number ret = bindings.Watch_watch_channel(this.ptr, funding_txo == null ? 0 : funding_txo.ptr & ~1, monitor == null ? 0 : monitor.ptr & ~1); - Result_NoneChannelMonitorUpdateErrZ ret_hu_conv = Result_NoneChannelMonitorUpdateErrZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public Result_NoneChannelMonitorUpdateErrZ update_channel(OutPoint funding_txo, ChannelMonitorUpdate update) { - number ret = bindings.Watch_update_channel(this.ptr, funding_txo == null ? 0 : funding_txo.ptr & ~1, update == null ? 0 : update.ptr & ~1); - Result_NoneChannelMonitorUpdateErrZ ret_hu_conv = Result_NoneChannelMonitorUpdateErrZ.constr_from_ptr(ret); - return ret_hu_conv; - } - - public MonitorEvent[] release_pending_monitor_events() { - number[] ret = bindings.Watch_release_pending_monitor_events(this.ptr); - MonitorEvent[] ret_conv_14_arr = new MonitorEvent[ret.length]; - for (int o = 0; o < ret.length; o++) { - number ret_conv_14 = ret[o]; - MonitorEvent ret_conv_14_hu_conv = MonitorEvent.constr_from_ptr(ret_conv_14); - ret_conv_14_hu_conv.ptrs_to.add(this); - ret_conv_14_arr[o] = ret_conv_14_hu_conv; - } - return ret_conv_14_arr; - } - -} diff --git a/ts/structs/WatchedOutput.ts b/ts/structs/WatchedOutput.ts deleted file mode 100644 index 8b3364c2..00000000 --- a/ts/structs/WatchedOutput.ts +++ /dev/null @@ -1,74 +0,0 @@ - - -import CommonBase from './CommonBase'; -import * as bindings from '../bindings' // TODO: figure out location - - - - export default class WatchedOutput extends CommonBase { - constructor(_dummy: object, ptr: number) { - super(ptr); - } - - - protected finalize() { - super.finalize(); - - if (this.ptr != 0) { - bindings.WatchedOutput_free(this.ptr); - } - } - public Uint8Array get_block_hash() { - Uint8Array ret = bindings.WatchedOutput_get_block_hash(this.ptr); - return ret; - } - - public void set_block_hash(Uint8Array val) { - bindings.WatchedOutput_set_block_hash(this.ptr, InternalUtils.check_arr_len(val, 32)); - } - - public OutPoint get_outpoint() { - number ret = bindings.WatchedOutput_get_outpoint(this.ptr); - const ret_hu_conv: OutPoint = new OutPoint(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public void set_outpoint(OutPoint val) { - bindings.WatchedOutput_set_outpoint(this.ptr, val == null ? 0 : val.ptr & ~1); - } - - public Uint8Array get_script_pubkey() { - Uint8Array ret = bindings.WatchedOutput_get_script_pubkey(this.ptr); - return ret; - } - - public void set_script_pubkey(Uint8Array val) { - bindings.WatchedOutput_set_script_pubkey(this.ptr, val); - } - - public static WatchedOutput constructor_new(Uint8Array block_hash_arg, OutPoint outpoint_arg, Uint8Array script_pubkey_arg) { - number ret = bindings.WatchedOutput_new(InternalUtils.check_arr_len(block_hash_arg, 32), outpoint_arg == null ? 0 : outpoint_arg.ptr & ~1, script_pubkey_arg); - const ret_hu_conv: WatchedOutput = new WatchedOutput(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); - return ret_hu_conv; - } - - public number clone_ptr() { - number ret = bindings.WatchedOutput_clone_ptr(this.ptr); - return ret; - } - - public WatchedOutput clone() { - number ret = bindings.WatchedOutput_clone(this.ptr); - const ret_hu_conv: WatchedOutput = new WatchedOutput(null, ret); - ret_hu_conv.ptrs_to.add(this); - return ret_hu_conv; - } - - public number hash() { - number ret = bindings.WatchedOutput_hash(this.ptr); - return ret; - } - -} diff --git a/ts/version.mts b/ts/version.mts new file mode 100644 index 00000000..e69de29b -- 2.30.2