+ // void OffersMessageHandler_free(struct LDKOffersMessageHandler this_ptr);
+ public static native void OffersMessageHandler_free(long this_ptr);
+ // void OffersMessage_free(struct LDKOffersMessage this_ptr);
+ public static native void OffersMessage_free(long this_ptr);
+ // uint64_t OffersMessage_clone_ptr(LDKOffersMessage *NONNULL_PTR arg);
+ public static native long OffersMessage_clone_ptr(long arg);
+ // struct LDKOffersMessage OffersMessage_clone(const struct LDKOffersMessage *NONNULL_PTR orig);
+ public static native long OffersMessage_clone(long orig);
+ // struct LDKOffersMessage OffersMessage_invoice_request(struct LDKInvoiceRequest a);
+ public static native long OffersMessage_invoice_request(long a);
+ // struct LDKOffersMessage OffersMessage_invoice(struct LDKBolt12Invoice a);
+ public static native long OffersMessage_invoice(long a);
+ // struct LDKOffersMessage OffersMessage_invoice_error(struct LDKInvoiceError a);
+ public static native long OffersMessage_invoice_error(long a);
+ // MUST_USE_RES bool OffersMessage_is_known_type(uint64_t tlv_type);
+ public static native boolean OffersMessage_is_known_type(long tlv_type);
+ // struct LDKCVec_u8Z OffersMessage_write(const struct LDKOffersMessage *NONNULL_PTR obj);
+ public static native byte[] OffersMessage_write(long obj);
+ // struct LDKCResult_OffersMessageDecodeErrorZ OffersMessage_read(struct LDKu8slice ser, uint64_t arg_a, const struct LDKLogger *NONNULL_PTR arg_b);
+ public static native long OffersMessage_read(byte[] ser, long arg_a, long arg_b);
+ // void Packet_free(struct LDKPacket this_obj);
+ public static native void Packet_free(long this_obj);
+ // uint8_t Packet_get_version(const struct LDKPacket *NONNULL_PTR this_ptr);
+ public static native byte Packet_get_version(long this_ptr);
+ // void Packet_set_version(struct LDKPacket *NONNULL_PTR this_ptr, uint8_t val);
+ public static native void Packet_set_version(long this_ptr, byte val);
+ // struct LDKPublicKey Packet_get_public_key(const struct LDKPacket *NONNULL_PTR this_ptr);
+ public static native byte[] Packet_get_public_key(long this_ptr);
+ // void Packet_set_public_key(struct LDKPacket *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+ public static native void Packet_set_public_key(long this_ptr, byte[] val);
+ // struct LDKCVec_u8Z Packet_get_hop_data(const struct LDKPacket *NONNULL_PTR this_ptr);
+ public static native byte[] Packet_get_hop_data(long this_ptr);
+ // void Packet_set_hop_data(struct LDKPacket *NONNULL_PTR this_ptr, struct LDKCVec_u8Z val);
+ public static native void Packet_set_hop_data(long this_ptr, byte[] val);
+ // const uint8_t (*Packet_get_hmac(const struct LDKPacket *NONNULL_PTR this_ptr))[32];
+ public static native byte[] Packet_get_hmac(long this_ptr);
+ // void Packet_set_hmac(struct LDKPacket *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val);
+ public static native void Packet_set_hmac(long this_ptr, byte[] val);
+ // MUST_USE_RES struct LDKPacket Packet_new(uint8_t version_arg, struct LDKPublicKey public_key_arg, struct LDKCVec_u8Z hop_data_arg, struct LDKThirtyTwoBytes hmac_arg);
+ public static native long Packet_new(byte version_arg, byte[] public_key_arg, byte[] hop_data_arg, byte[] hmac_arg);
+ // uint64_t Packet_clone_ptr(LDKPacket *NONNULL_PTR arg);
+ public static native long Packet_clone_ptr(long arg);
+ // struct LDKPacket Packet_clone(const struct LDKPacket *NONNULL_PTR orig);
+ public static native long Packet_clone(long orig);
+ // bool Packet_eq(const struct LDKPacket *NONNULL_PTR a, const struct LDKPacket *NONNULL_PTR b);
+ public static native boolean Packet_eq(long a, long b);
+ // struct LDKCVec_u8Z Packet_write(const struct LDKPacket *NONNULL_PTR obj);
+ public static native byte[] Packet_write(long obj);
+ // void ParsedOnionMessageContents_free(struct LDKParsedOnionMessageContents this_ptr);
+ public static native void ParsedOnionMessageContents_free(long this_ptr);
+ // uint64_t ParsedOnionMessageContents_clone_ptr(LDKParsedOnionMessageContents *NONNULL_PTR arg);
+ public static native long ParsedOnionMessageContents_clone_ptr(long arg);
+ // struct LDKParsedOnionMessageContents ParsedOnionMessageContents_clone(const struct LDKParsedOnionMessageContents *NONNULL_PTR orig);
+ public static native long ParsedOnionMessageContents_clone(long orig);
+ // struct LDKParsedOnionMessageContents ParsedOnionMessageContents_offers(struct LDKOffersMessage a);
+ public static native long ParsedOnionMessageContents_offers(long a);
+ // struct LDKParsedOnionMessageContents ParsedOnionMessageContents_custom(struct LDKOnionMessageContents a);
+ public static native long ParsedOnionMessageContents_custom(long a);
+ // struct LDKOnionMessageContents ParsedOnionMessageContents_as_OnionMessageContents(const struct LDKParsedOnionMessageContents *NONNULL_PTR this_arg);
+ public static native long ParsedOnionMessageContents_as_OnionMessageContents(long this_arg);
+ // struct LDKCVec_u8Z ParsedOnionMessageContents_write(const struct LDKParsedOnionMessageContents *NONNULL_PTR obj);
+ public static native byte[] ParsedOnionMessageContents_write(long obj);
+ // uint64_t OnionMessageContents_clone_ptr(LDKOnionMessageContents *NONNULL_PTR arg);
+ public static native long OnionMessageContents_clone_ptr(long arg);
+ // struct LDKOnionMessageContents OnionMessageContents_clone(const struct LDKOnionMessageContents *NONNULL_PTR orig);
+ public static native long OnionMessageContents_clone(long orig);
+ // void OnionMessageContents_free(struct LDKOnionMessageContents this_ptr);
+ public static native void OnionMessageContents_free(long this_ptr);
+ // void BlindedPath_free(struct LDKBlindedPath this_obj);
+ public static native void BlindedPath_free(long this_obj);
+ // struct LDKPublicKey BlindedPath_get_introduction_node_id(const struct LDKBlindedPath *NONNULL_PTR this_ptr);
+ public static native byte[] BlindedPath_get_introduction_node_id(long this_ptr);
+ // void BlindedPath_set_introduction_node_id(struct LDKBlindedPath *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+ public static native void BlindedPath_set_introduction_node_id(long this_ptr, byte[] val);
+ // struct LDKPublicKey BlindedPath_get_blinding_point(const struct LDKBlindedPath *NONNULL_PTR this_ptr);
+ public static native byte[] BlindedPath_get_blinding_point(long this_ptr);
+ // void BlindedPath_set_blinding_point(struct LDKBlindedPath *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+ public static native void BlindedPath_set_blinding_point(long this_ptr, byte[] val);
+ // struct LDKCVec_BlindedHopZ BlindedPath_get_blinded_hops(const struct LDKBlindedPath *NONNULL_PTR this_ptr);
+ public static native long[] BlindedPath_get_blinded_hops(long this_ptr);
+ // void BlindedPath_set_blinded_hops(struct LDKBlindedPath *NONNULL_PTR this_ptr, struct LDKCVec_BlindedHopZ val);
+ public static native void BlindedPath_set_blinded_hops(long this_ptr, long[] val);
+ // MUST_USE_RES struct LDKBlindedPath BlindedPath_new(struct LDKPublicKey introduction_node_id_arg, struct LDKPublicKey blinding_point_arg, struct LDKCVec_BlindedHopZ blinded_hops_arg);
+ public static native long BlindedPath_new(byte[] introduction_node_id_arg, byte[] blinding_point_arg, long[] blinded_hops_arg);
+ // uint64_t BlindedPath_clone_ptr(LDKBlindedPath *NONNULL_PTR arg);
+ public static native long BlindedPath_clone_ptr(long arg);
+ // struct LDKBlindedPath BlindedPath_clone(const struct LDKBlindedPath *NONNULL_PTR orig);
+ public static native long BlindedPath_clone(long orig);
+ // uint64_t BlindedPath_hash(const struct LDKBlindedPath *NONNULL_PTR o);
+ public static native long BlindedPath_hash(long o);
+ // bool BlindedPath_eq(const struct LDKBlindedPath *NONNULL_PTR a, const struct LDKBlindedPath *NONNULL_PTR b);
+ public static native boolean BlindedPath_eq(long a, long b);
+ // void BlindedHop_free(struct LDKBlindedHop this_obj);
+ public static native void BlindedHop_free(long this_obj);
+ // struct LDKPublicKey BlindedHop_get_blinded_node_id(const struct LDKBlindedHop *NONNULL_PTR this_ptr);
+ public static native byte[] BlindedHop_get_blinded_node_id(long this_ptr);
+ // void BlindedHop_set_blinded_node_id(struct LDKBlindedHop *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+ public static native void BlindedHop_set_blinded_node_id(long this_ptr, byte[] val);
+ // struct LDKCVec_u8Z BlindedHop_get_encrypted_payload(const struct LDKBlindedHop *NONNULL_PTR this_ptr);
+ public static native byte[] BlindedHop_get_encrypted_payload(long this_ptr);
+ // void BlindedHop_set_encrypted_payload(struct LDKBlindedHop *NONNULL_PTR this_ptr, struct LDKCVec_u8Z val);
+ public static native void BlindedHop_set_encrypted_payload(long this_ptr, byte[] val);
+ // MUST_USE_RES struct LDKBlindedHop BlindedHop_new(struct LDKPublicKey blinded_node_id_arg, struct LDKCVec_u8Z encrypted_payload_arg);
+ public static native long BlindedHop_new(byte[] blinded_node_id_arg, byte[] encrypted_payload_arg);
+ // uint64_t BlindedHop_clone_ptr(LDKBlindedHop *NONNULL_PTR arg);
+ public static native long BlindedHop_clone_ptr(long arg);
+ // struct LDKBlindedHop BlindedHop_clone(const struct LDKBlindedHop *NONNULL_PTR orig);
+ public static native long BlindedHop_clone(long orig);
+ // uint64_t BlindedHop_hash(const struct LDKBlindedHop *NONNULL_PTR o);
+ public static native long BlindedHop_hash(long o);
+ // bool BlindedHop_eq(const struct LDKBlindedHop *NONNULL_PTR a, const struct LDKBlindedHop *NONNULL_PTR b);
+ public static native boolean BlindedHop_eq(long a, long b);
+ // MUST_USE_RES struct LDKCResult_BlindedPathNoneZ BlindedPath_one_hop_for_message(struct LDKPublicKey recipient_node_id, const struct LDKEntropySource *NONNULL_PTR entropy_source);
+ public static native long BlindedPath_one_hop_for_message(byte[] recipient_node_id, long entropy_source);
+ // MUST_USE_RES struct LDKCResult_BlindedPathNoneZ BlindedPath_new_for_message(struct LDKCVec_PublicKeyZ node_pks, const struct LDKEntropySource *NONNULL_PTR entropy_source);
+ public static native long BlindedPath_new_for_message(byte[][] node_pks, long entropy_source);
+ // MUST_USE_RES struct LDKCResult_C2Tuple_BlindedPayInfoBlindedPathZNoneZ BlindedPath_one_hop_for_payment(struct LDKPublicKey payee_node_id, struct LDKReceiveTlvs payee_tlvs, const struct LDKEntropySource *NONNULL_PTR entropy_source);
+ public static native long BlindedPath_one_hop_for_payment(byte[] payee_node_id, long payee_tlvs, long entropy_source);
+ // struct LDKCVec_u8Z BlindedPath_write(const struct LDKBlindedPath *NONNULL_PTR obj);
+ public static native byte[] BlindedPath_write(long obj);
+ // struct LDKCResult_BlindedPathDecodeErrorZ BlindedPath_read(struct LDKu8slice ser);
+ public static native long BlindedPath_read(byte[] ser);
+ // struct LDKCVec_u8Z BlindedHop_write(const struct LDKBlindedHop *NONNULL_PTR obj);
+ public static native byte[] BlindedHop_write(long obj);
+ // struct LDKCResult_BlindedHopDecodeErrorZ BlindedHop_read(struct LDKu8slice ser);
+ public static native long BlindedHop_read(byte[] ser);
+ // void ForwardNode_free(struct LDKForwardNode this_obj);
+ public static native void ForwardNode_free(long this_obj);
+ // struct LDKForwardTlvs ForwardNode_get_tlvs(const struct LDKForwardNode *NONNULL_PTR this_ptr);
+ public static native long ForwardNode_get_tlvs(long this_ptr);
+ // void ForwardNode_set_tlvs(struct LDKForwardNode *NONNULL_PTR this_ptr, struct LDKForwardTlvs val);
+ public static native void ForwardNode_set_tlvs(long this_ptr, long val);
+ // struct LDKPublicKey ForwardNode_get_node_id(const struct LDKForwardNode *NONNULL_PTR this_ptr);
+ public static native byte[] ForwardNode_get_node_id(long this_ptr);
+ // void ForwardNode_set_node_id(struct LDKForwardNode *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+ public static native void ForwardNode_set_node_id(long this_ptr, byte[] val);
+ // uint64_t ForwardNode_get_htlc_maximum_msat(const struct LDKForwardNode *NONNULL_PTR this_ptr);
+ public static native long ForwardNode_get_htlc_maximum_msat(long this_ptr);
+ // void ForwardNode_set_htlc_maximum_msat(struct LDKForwardNode *NONNULL_PTR this_ptr, uint64_t val);
+ public static native void ForwardNode_set_htlc_maximum_msat(long this_ptr, long val);
+ // MUST_USE_RES struct LDKForwardNode ForwardNode_new(struct LDKForwardTlvs tlvs_arg, struct LDKPublicKey node_id_arg, uint64_t htlc_maximum_msat_arg);
+ public static native long ForwardNode_new(long tlvs_arg, byte[] node_id_arg, long htlc_maximum_msat_arg);
+ // uint64_t ForwardNode_clone_ptr(LDKForwardNode *NONNULL_PTR arg);
+ public static native long ForwardNode_clone_ptr(long arg);
+ // struct LDKForwardNode ForwardNode_clone(const struct LDKForwardNode *NONNULL_PTR orig);
+ public static native long ForwardNode_clone(long orig);
+ // void ForwardTlvs_free(struct LDKForwardTlvs this_obj);
+ public static native void ForwardTlvs_free(long this_obj);
+ // uint64_t ForwardTlvs_get_short_channel_id(const struct LDKForwardTlvs *NONNULL_PTR this_ptr);
+ public static native long ForwardTlvs_get_short_channel_id(long this_ptr);
+ // void ForwardTlvs_set_short_channel_id(struct LDKForwardTlvs *NONNULL_PTR this_ptr, uint64_t val);
+ public static native void ForwardTlvs_set_short_channel_id(long this_ptr, long val);
+ // struct LDKPaymentRelay ForwardTlvs_get_payment_relay(const struct LDKForwardTlvs *NONNULL_PTR this_ptr);
+ public static native long ForwardTlvs_get_payment_relay(long this_ptr);
+ // void ForwardTlvs_set_payment_relay(struct LDKForwardTlvs *NONNULL_PTR this_ptr, struct LDKPaymentRelay val);
+ public static native void ForwardTlvs_set_payment_relay(long this_ptr, long val);
+ // struct LDKPaymentConstraints ForwardTlvs_get_payment_constraints(const struct LDKForwardTlvs *NONNULL_PTR this_ptr);
+ public static native long ForwardTlvs_get_payment_constraints(long this_ptr);
+ // void ForwardTlvs_set_payment_constraints(struct LDKForwardTlvs *NONNULL_PTR this_ptr, struct LDKPaymentConstraints val);
+ public static native void ForwardTlvs_set_payment_constraints(long this_ptr, long val);
+ // struct LDKBlindedHopFeatures ForwardTlvs_get_features(const struct LDKForwardTlvs *NONNULL_PTR this_ptr);
+ public static native long ForwardTlvs_get_features(long this_ptr);
+ // void ForwardTlvs_set_features(struct LDKForwardTlvs *NONNULL_PTR this_ptr, struct LDKBlindedHopFeatures val);
+ public static native void ForwardTlvs_set_features(long this_ptr, long val);
+ // MUST_USE_RES struct LDKForwardTlvs ForwardTlvs_new(uint64_t short_channel_id_arg, struct LDKPaymentRelay payment_relay_arg, struct LDKPaymentConstraints payment_constraints_arg, struct LDKBlindedHopFeatures features_arg);
+ public static native long ForwardTlvs_new(long short_channel_id_arg, long payment_relay_arg, long payment_constraints_arg, long features_arg);
+ // uint64_t ForwardTlvs_clone_ptr(LDKForwardTlvs *NONNULL_PTR arg);
+ public static native long ForwardTlvs_clone_ptr(long arg);
+ // struct LDKForwardTlvs ForwardTlvs_clone(const struct LDKForwardTlvs *NONNULL_PTR orig);
+ public static native long ForwardTlvs_clone(long orig);
+ // void ReceiveTlvs_free(struct LDKReceiveTlvs this_obj);
+ public static native void ReceiveTlvs_free(long this_obj);
+ // const uint8_t (*ReceiveTlvs_get_payment_secret(const struct LDKReceiveTlvs *NONNULL_PTR this_ptr))[32];
+ public static native byte[] ReceiveTlvs_get_payment_secret(long this_ptr);
+ // void ReceiveTlvs_set_payment_secret(struct LDKReceiveTlvs *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val);
+ public static native void ReceiveTlvs_set_payment_secret(long this_ptr, byte[] val);
+ // struct LDKPaymentConstraints ReceiveTlvs_get_payment_constraints(const struct LDKReceiveTlvs *NONNULL_PTR this_ptr);
+ public static native long ReceiveTlvs_get_payment_constraints(long this_ptr);
+ // void ReceiveTlvs_set_payment_constraints(struct LDKReceiveTlvs *NONNULL_PTR this_ptr, struct LDKPaymentConstraints val);
+ public static native void ReceiveTlvs_set_payment_constraints(long this_ptr, long val);
+ // MUST_USE_RES struct LDKReceiveTlvs ReceiveTlvs_new(struct LDKThirtyTwoBytes payment_secret_arg, struct LDKPaymentConstraints payment_constraints_arg);
+ public static native long ReceiveTlvs_new(byte[] payment_secret_arg, long payment_constraints_arg);
+ // uint64_t ReceiveTlvs_clone_ptr(LDKReceiveTlvs *NONNULL_PTR arg);
+ public static native long ReceiveTlvs_clone_ptr(long arg);
+ // struct LDKReceiveTlvs ReceiveTlvs_clone(const struct LDKReceiveTlvs *NONNULL_PTR orig);
+ public static native long ReceiveTlvs_clone(long orig);
+ // void PaymentRelay_free(struct LDKPaymentRelay this_obj);
+ public static native void PaymentRelay_free(long this_obj);
+ // uint16_t PaymentRelay_get_cltv_expiry_delta(const struct LDKPaymentRelay *NONNULL_PTR this_ptr);
+ public static native short PaymentRelay_get_cltv_expiry_delta(long this_ptr);
+ // void PaymentRelay_set_cltv_expiry_delta(struct LDKPaymentRelay *NONNULL_PTR this_ptr, uint16_t val);
+ public static native void PaymentRelay_set_cltv_expiry_delta(long this_ptr, short val);
+ // uint32_t PaymentRelay_get_fee_proportional_millionths(const struct LDKPaymentRelay *NONNULL_PTR this_ptr);
+ public static native int PaymentRelay_get_fee_proportional_millionths(long this_ptr);
+ // void PaymentRelay_set_fee_proportional_millionths(struct LDKPaymentRelay *NONNULL_PTR this_ptr, uint32_t val);
+ public static native void PaymentRelay_set_fee_proportional_millionths(long this_ptr, int val);
+ // uint32_t PaymentRelay_get_fee_base_msat(const struct LDKPaymentRelay *NONNULL_PTR this_ptr);
+ public static native int PaymentRelay_get_fee_base_msat(long this_ptr);
+ // void PaymentRelay_set_fee_base_msat(struct LDKPaymentRelay *NONNULL_PTR this_ptr, uint32_t val);
+ public static native void PaymentRelay_set_fee_base_msat(long this_ptr, int val);
+ // MUST_USE_RES struct LDKPaymentRelay PaymentRelay_new(uint16_t cltv_expiry_delta_arg, uint32_t fee_proportional_millionths_arg, uint32_t fee_base_msat_arg);
+ public static native long PaymentRelay_new(short cltv_expiry_delta_arg, int fee_proportional_millionths_arg, int fee_base_msat_arg);
+ // uint64_t PaymentRelay_clone_ptr(LDKPaymentRelay *NONNULL_PTR arg);
+ public static native long PaymentRelay_clone_ptr(long arg);
+ // struct LDKPaymentRelay PaymentRelay_clone(const struct LDKPaymentRelay *NONNULL_PTR orig);
+ public static native long PaymentRelay_clone(long orig);
+ // void PaymentConstraints_free(struct LDKPaymentConstraints this_obj);
+ public static native void PaymentConstraints_free(long this_obj);
+ // uint32_t PaymentConstraints_get_max_cltv_expiry(const struct LDKPaymentConstraints *NONNULL_PTR this_ptr);
+ public static native int PaymentConstraints_get_max_cltv_expiry(long this_ptr);
+ // void PaymentConstraints_set_max_cltv_expiry(struct LDKPaymentConstraints *NONNULL_PTR this_ptr, uint32_t val);
+ public static native void PaymentConstraints_set_max_cltv_expiry(long this_ptr, int val);
+ // uint64_t PaymentConstraints_get_htlc_minimum_msat(const struct LDKPaymentConstraints *NONNULL_PTR this_ptr);
+ public static native long PaymentConstraints_get_htlc_minimum_msat(long this_ptr);
+ // void PaymentConstraints_set_htlc_minimum_msat(struct LDKPaymentConstraints *NONNULL_PTR this_ptr, uint64_t val);
+ public static native void PaymentConstraints_set_htlc_minimum_msat(long this_ptr, long val);
+ // MUST_USE_RES struct LDKPaymentConstraints PaymentConstraints_new(uint32_t max_cltv_expiry_arg, uint64_t htlc_minimum_msat_arg);
+ public static native long PaymentConstraints_new(int max_cltv_expiry_arg, long htlc_minimum_msat_arg);
+ // uint64_t PaymentConstraints_clone_ptr(LDKPaymentConstraints *NONNULL_PTR arg);
+ public static native long PaymentConstraints_clone_ptr(long arg);
+ // struct LDKPaymentConstraints PaymentConstraints_clone(const struct LDKPaymentConstraints *NONNULL_PTR orig);
+ public static native long PaymentConstraints_clone(long orig);
+ // struct LDKCVec_u8Z ForwardTlvs_write(const struct LDKForwardTlvs *NONNULL_PTR obj);
+ public static native byte[] ForwardTlvs_write(long obj);
+ // struct LDKCVec_u8Z ReceiveTlvs_write(const struct LDKReceiveTlvs *NONNULL_PTR obj);
+ public static native byte[] ReceiveTlvs_write(long obj);
+ // struct LDKCResult_ReceiveTlvsDecodeErrorZ ReceiveTlvs_read(struct LDKu8slice ser);
+ public static native long ReceiveTlvs_read(byte[] ser);
+ // struct LDKCVec_u8Z PaymentRelay_write(const struct LDKPaymentRelay *NONNULL_PTR obj);
+ public static native byte[] PaymentRelay_write(long obj);
+ // struct LDKCResult_PaymentRelayDecodeErrorZ PaymentRelay_read(struct LDKu8slice ser);
+ public static native long PaymentRelay_read(byte[] ser);
+ // struct LDKCVec_u8Z PaymentConstraints_write(const struct LDKPaymentConstraints *NONNULL_PTR obj);
+ public static native byte[] PaymentConstraints_write(long obj);
+ // struct LDKCResult_PaymentConstraintsDecodeErrorZ PaymentConstraints_read(struct LDKu8slice ser);
+ public static native long PaymentConstraints_read(byte[] ser);
+ // void PaymentPurpose_free(struct LDKPaymentPurpose this_ptr);
+ public static native void PaymentPurpose_free(long this_ptr);
+ // uint64_t PaymentPurpose_clone_ptr(LDKPaymentPurpose *NONNULL_PTR arg);
+ public static native long PaymentPurpose_clone_ptr(long arg);
+ // struct LDKPaymentPurpose PaymentPurpose_clone(const struct LDKPaymentPurpose *NONNULL_PTR orig);
+ public static native long PaymentPurpose_clone(long orig);
+ // struct LDKPaymentPurpose PaymentPurpose_invoice_payment(struct LDKCOption_ThirtyTwoBytesZ payment_preimage, struct LDKThirtyTwoBytes payment_secret);
+ public static native long PaymentPurpose_invoice_payment(long payment_preimage, byte[] payment_secret);
+ // struct LDKPaymentPurpose PaymentPurpose_spontaneous_payment(struct LDKThirtyTwoBytes a);
+ public static native long PaymentPurpose_spontaneous_payment(byte[] a);
+ // bool PaymentPurpose_eq(const struct LDKPaymentPurpose *NONNULL_PTR a, const struct LDKPaymentPurpose *NONNULL_PTR b);
+ public static native boolean PaymentPurpose_eq(long a, long b);
+ // struct LDKCVec_u8Z PaymentPurpose_write(const struct LDKPaymentPurpose *NONNULL_PTR obj);
+ public static native byte[] PaymentPurpose_write(long obj);
+ // struct LDKCResult_PaymentPurposeDecodeErrorZ PaymentPurpose_read(struct LDKu8slice ser);
+ public static native long PaymentPurpose_read(byte[] ser);
+ // void ClaimedHTLC_free(struct LDKClaimedHTLC this_obj);
+ public static native void ClaimedHTLC_free(long this_obj);
+ // const uint8_t (*ClaimedHTLC_get_channel_id(const struct LDKClaimedHTLC *NONNULL_PTR this_ptr))[32];
+ public static native byte[] ClaimedHTLC_get_channel_id(long this_ptr);
+ // void ClaimedHTLC_set_channel_id(struct LDKClaimedHTLC *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val);
+ public static native void ClaimedHTLC_set_channel_id(long this_ptr, byte[] val);
+ // struct LDKU128 ClaimedHTLC_get_user_channel_id(const struct LDKClaimedHTLC *NONNULL_PTR this_ptr);
+ public static native byte[] ClaimedHTLC_get_user_channel_id(long this_ptr);
+ // void ClaimedHTLC_set_user_channel_id(struct LDKClaimedHTLC *NONNULL_PTR this_ptr, struct LDKU128 val);
+ public static native void ClaimedHTLC_set_user_channel_id(long this_ptr, byte[] val);
+ // uint32_t ClaimedHTLC_get_cltv_expiry(const struct LDKClaimedHTLC *NONNULL_PTR this_ptr);
+ public static native int ClaimedHTLC_get_cltv_expiry(long this_ptr);
+ // void ClaimedHTLC_set_cltv_expiry(struct LDKClaimedHTLC *NONNULL_PTR this_ptr, uint32_t val);
+ public static native void ClaimedHTLC_set_cltv_expiry(long this_ptr, int val);
+ // uint64_t ClaimedHTLC_get_value_msat(const struct LDKClaimedHTLC *NONNULL_PTR this_ptr);
+ public static native long ClaimedHTLC_get_value_msat(long this_ptr);
+ // void ClaimedHTLC_set_value_msat(struct LDKClaimedHTLC *NONNULL_PTR this_ptr, uint64_t val);
+ public static native void ClaimedHTLC_set_value_msat(long this_ptr, long val);
+ // MUST_USE_RES struct LDKClaimedHTLC ClaimedHTLC_new(struct LDKThirtyTwoBytes channel_id_arg, struct LDKU128 user_channel_id_arg, uint32_t cltv_expiry_arg, uint64_t value_msat_arg);
+ public static native long ClaimedHTLC_new(byte[] channel_id_arg, byte[] user_channel_id_arg, int cltv_expiry_arg, long value_msat_arg);
+ // uint64_t ClaimedHTLC_clone_ptr(LDKClaimedHTLC *NONNULL_PTR arg);
+ public static native long ClaimedHTLC_clone_ptr(long arg);
+ // struct LDKClaimedHTLC ClaimedHTLC_clone(const struct LDKClaimedHTLC *NONNULL_PTR orig);
+ public static native long ClaimedHTLC_clone(long orig);
+ // bool ClaimedHTLC_eq(const struct LDKClaimedHTLC *NONNULL_PTR a, const struct LDKClaimedHTLC *NONNULL_PTR b);
+ public static native boolean ClaimedHTLC_eq(long a, long b);
+ // struct LDKCVec_u8Z ClaimedHTLC_write(const struct LDKClaimedHTLC *NONNULL_PTR obj);
+ public static native byte[] ClaimedHTLC_write(long obj);
+ // struct LDKCResult_ClaimedHTLCDecodeErrorZ ClaimedHTLC_read(struct LDKu8slice ser);
+ public static native long ClaimedHTLC_read(byte[] ser);
+ // void PathFailure_free(struct LDKPathFailure this_ptr);
+ public static native void PathFailure_free(long this_ptr);
+ // uint64_t PathFailure_clone_ptr(LDKPathFailure *NONNULL_PTR arg);
+ public static native long PathFailure_clone_ptr(long arg);
+ // struct LDKPathFailure PathFailure_clone(const struct LDKPathFailure *NONNULL_PTR orig);
+ public static native long PathFailure_clone(long orig);
+ // struct LDKPathFailure PathFailure_initial_send(struct LDKAPIError err);
+ public static native long PathFailure_initial_send(long err);
+ // struct LDKPathFailure PathFailure_on_path(struct LDKCOption_NetworkUpdateZ network_update);
+ public static native long PathFailure_on_path(long network_update);
+ // bool PathFailure_eq(const struct LDKPathFailure *NONNULL_PTR a, const struct LDKPathFailure *NONNULL_PTR b);
+ public static native boolean PathFailure_eq(long a, long b);
+ // struct LDKCVec_u8Z PathFailure_write(const struct LDKPathFailure *NONNULL_PTR obj);
+ public static native byte[] PathFailure_write(long obj);
+ // struct LDKCResult_COption_PathFailureZDecodeErrorZ PathFailure_read(struct LDKu8slice ser);
+ public static native long PathFailure_read(byte[] ser);
+ // void ClosureReason_free(struct LDKClosureReason this_ptr);
+ public static native void ClosureReason_free(long this_ptr);
+ // uint64_t ClosureReason_clone_ptr(LDKClosureReason *NONNULL_PTR arg);
+ public static native long ClosureReason_clone_ptr(long arg);
+ // struct LDKClosureReason ClosureReason_clone(const struct LDKClosureReason *NONNULL_PTR orig);
+ public static native long ClosureReason_clone(long orig);
+ // struct LDKClosureReason ClosureReason_counterparty_force_closed(struct LDKUntrustedString peer_msg);
+ public static native long ClosureReason_counterparty_force_closed(long peer_msg);
+ // struct LDKClosureReason ClosureReason_holder_force_closed(void);
+ public static native long ClosureReason_holder_force_closed();
+ // struct LDKClosureReason ClosureReason_cooperative_closure(void);
+ public static native long ClosureReason_cooperative_closure();
+ // struct LDKClosureReason ClosureReason_commitment_tx_confirmed(void);
+ public static native long ClosureReason_commitment_tx_confirmed();
+ // struct LDKClosureReason ClosureReason_funding_timed_out(void);
+ public static native long ClosureReason_funding_timed_out();
+ // struct LDKClosureReason ClosureReason_processing_error(struct LDKStr err);
+ public static native long ClosureReason_processing_error(String err);
+ // struct LDKClosureReason ClosureReason_disconnected_peer(void);
+ public static native long ClosureReason_disconnected_peer();
+ // struct LDKClosureReason ClosureReason_outdated_channel_manager(void);
+ public static native long ClosureReason_outdated_channel_manager();
+ // struct LDKClosureReason ClosureReason_counterparty_coop_closed_unfunded_channel(void);
+ public static native long ClosureReason_counterparty_coop_closed_unfunded_channel();
+ // struct LDKClosureReason ClosureReason_funding_batch_closure(void);
+ public static native long ClosureReason_funding_batch_closure();
+ // bool ClosureReason_eq(const struct LDKClosureReason *NONNULL_PTR a, const struct LDKClosureReason *NONNULL_PTR b);
+ public static native boolean ClosureReason_eq(long a, long b);
+ // struct LDKCVec_u8Z ClosureReason_write(const struct LDKClosureReason *NONNULL_PTR obj);
+ public static native byte[] ClosureReason_write(long obj);
+ // struct LDKCResult_COption_ClosureReasonZDecodeErrorZ ClosureReason_read(struct LDKu8slice ser);
+ public static native long ClosureReason_read(byte[] ser);
+ // void HTLCDestination_free(struct LDKHTLCDestination this_ptr);
+ public static native void HTLCDestination_free(long this_ptr);
+ // uint64_t HTLCDestination_clone_ptr(LDKHTLCDestination *NONNULL_PTR arg);
+ public static native long HTLCDestination_clone_ptr(long arg);
+ // struct LDKHTLCDestination HTLCDestination_clone(const struct LDKHTLCDestination *NONNULL_PTR orig);
+ public static native long HTLCDestination_clone(long orig);
+ // struct LDKHTLCDestination HTLCDestination_next_hop_channel(struct LDKPublicKey node_id, struct LDKThirtyTwoBytes channel_id);
+ public static native long HTLCDestination_next_hop_channel(byte[] node_id, byte[] channel_id);
+ // struct LDKHTLCDestination HTLCDestination_unknown_next_hop(uint64_t requested_forward_scid);
+ public static native long HTLCDestination_unknown_next_hop(long requested_forward_scid);
+ // struct LDKHTLCDestination HTLCDestination_invalid_forward(uint64_t requested_forward_scid);
+ public static native long HTLCDestination_invalid_forward(long requested_forward_scid);
+ // struct LDKHTLCDestination HTLCDestination_failed_payment(struct LDKThirtyTwoBytes payment_hash);
+ public static native long HTLCDestination_failed_payment(byte[] payment_hash);
+ // bool HTLCDestination_eq(const struct LDKHTLCDestination *NONNULL_PTR a, const struct LDKHTLCDestination *NONNULL_PTR b);
+ public static native boolean HTLCDestination_eq(long a, long b);
+ // struct LDKCVec_u8Z HTLCDestination_write(const struct LDKHTLCDestination *NONNULL_PTR obj);
+ public static native byte[] HTLCDestination_write(long obj);
+ // struct LDKCResult_COption_HTLCDestinationZDecodeErrorZ HTLCDestination_read(struct LDKu8slice ser);
+ public static native long HTLCDestination_read(byte[] ser);
+ // enum LDKPaymentFailureReason PaymentFailureReason_clone(const enum LDKPaymentFailureReason *NONNULL_PTR orig);
+ public static native PaymentFailureReason PaymentFailureReason_clone(long orig);
+ // enum LDKPaymentFailureReason PaymentFailureReason_recipient_rejected(void);
+ public static native PaymentFailureReason PaymentFailureReason_recipient_rejected();
+ // enum LDKPaymentFailureReason PaymentFailureReason_user_abandoned(void);
+ public static native PaymentFailureReason PaymentFailureReason_user_abandoned();
+ // enum LDKPaymentFailureReason PaymentFailureReason_retries_exhausted(void);
+ public static native PaymentFailureReason PaymentFailureReason_retries_exhausted();
+ // enum LDKPaymentFailureReason PaymentFailureReason_payment_expired(void);
+ public static native PaymentFailureReason PaymentFailureReason_payment_expired();
+ // enum LDKPaymentFailureReason PaymentFailureReason_route_not_found(void);
+ public static native PaymentFailureReason PaymentFailureReason_route_not_found();
+ // enum LDKPaymentFailureReason PaymentFailureReason_unexpected_error(void);
+ public static native PaymentFailureReason PaymentFailureReason_unexpected_error();
+ // bool PaymentFailureReason_eq(const enum LDKPaymentFailureReason *NONNULL_PTR a, const enum LDKPaymentFailureReason *NONNULL_PTR b);
+ public static native boolean PaymentFailureReason_eq(long a, long b);
+ // struct LDKCVec_u8Z PaymentFailureReason_write(const enum LDKPaymentFailureReason *NONNULL_PTR obj);
+ public static native byte[] PaymentFailureReason_write(long obj);
+ // struct LDKCResult_PaymentFailureReasonDecodeErrorZ PaymentFailureReason_read(struct LDKu8slice ser);
+ public static native long PaymentFailureReason_read(byte[] ser);
+ // void Event_free(struct LDKEvent this_ptr);
+ public static native void Event_free(long this_ptr);
+ // uint64_t Event_clone_ptr(LDKEvent *NONNULL_PTR arg);
+ public static native long Event_clone_ptr(long arg);
+ // struct LDKEvent Event_clone(const struct LDKEvent *NONNULL_PTR orig);
+ public static native long Event_clone(long orig);
+ // struct LDKEvent Event_funding_generation_ready(struct LDKThirtyTwoBytes temporary_channel_id, struct LDKPublicKey counterparty_node_id, uint64_t channel_value_satoshis, struct LDKCVec_u8Z output_script, struct LDKU128 user_channel_id);
+ public static native long Event_funding_generation_ready(byte[] temporary_channel_id, byte[] counterparty_node_id, long channel_value_satoshis, byte[] output_script, byte[] user_channel_id);
+ // struct LDKEvent Event_payment_claimable(struct LDKPublicKey receiver_node_id, struct LDKThirtyTwoBytes payment_hash, struct LDKRecipientOnionFields onion_fields, uint64_t amount_msat, uint64_t counterparty_skimmed_fee_msat, struct LDKPaymentPurpose purpose, struct LDKCOption_ThirtyTwoBytesZ via_channel_id, struct LDKCOption_U128Z via_user_channel_id, struct LDKCOption_u32Z claim_deadline);
+ public static native long Event_payment_claimable(byte[] receiver_node_id, byte[] payment_hash, long onion_fields, long amount_msat, long counterparty_skimmed_fee_msat, long purpose, long via_channel_id, long via_user_channel_id, long claim_deadline);
+ // struct LDKEvent Event_payment_claimed(struct LDKPublicKey receiver_node_id, struct LDKThirtyTwoBytes payment_hash, uint64_t amount_msat, struct LDKPaymentPurpose purpose, struct LDKCVec_ClaimedHTLCZ htlcs, struct LDKCOption_u64Z sender_intended_total_msat);
+ public static native long Event_payment_claimed(byte[] receiver_node_id, byte[] payment_hash, long amount_msat, long purpose, long[] htlcs, long sender_intended_total_msat);
+ // struct LDKEvent Event_invoice_request_failed(struct LDKThirtyTwoBytes payment_id);
+ public static native long Event_invoice_request_failed(byte[] payment_id);
+ // struct LDKEvent Event_payment_sent(struct LDKCOption_ThirtyTwoBytesZ payment_id, struct LDKThirtyTwoBytes payment_preimage, struct LDKThirtyTwoBytes payment_hash, struct LDKCOption_u64Z fee_paid_msat);
+ public static native long Event_payment_sent(long payment_id, byte[] payment_preimage, byte[] payment_hash, long fee_paid_msat);
+ // struct LDKEvent Event_payment_failed(struct LDKThirtyTwoBytes payment_id, struct LDKThirtyTwoBytes payment_hash, struct LDKCOption_PaymentFailureReasonZ reason);
+ public static native long Event_payment_failed(byte[] payment_id, byte[] payment_hash, long reason);
+ // struct LDKEvent Event_payment_path_successful(struct LDKThirtyTwoBytes payment_id, struct LDKCOption_ThirtyTwoBytesZ payment_hash, struct LDKPath path);
+ public static native long Event_payment_path_successful(byte[] payment_id, long payment_hash, long path);
+ // struct LDKEvent Event_payment_path_failed(struct LDKCOption_ThirtyTwoBytesZ payment_id, struct LDKThirtyTwoBytes payment_hash, bool payment_failed_permanently, struct LDKPathFailure failure, struct LDKPath path, struct LDKCOption_u64Z short_channel_id);
+ public static native long Event_payment_path_failed(long payment_id, byte[] payment_hash, boolean payment_failed_permanently, long failure, long path, long short_channel_id);
+ // struct LDKEvent Event_probe_successful(struct LDKThirtyTwoBytes payment_id, struct LDKThirtyTwoBytes payment_hash, struct LDKPath path);
+ public static native long Event_probe_successful(byte[] payment_id, byte[] payment_hash, long path);
+ // struct LDKEvent Event_probe_failed(struct LDKThirtyTwoBytes payment_id, struct LDKThirtyTwoBytes payment_hash, struct LDKPath path, struct LDKCOption_u64Z short_channel_id);
+ public static native long Event_probe_failed(byte[] payment_id, byte[] payment_hash, long path, long short_channel_id);
+ // struct LDKEvent Event_pending_htlcs_forwardable(uint64_t time_forwardable);
+ public static native long Event_pending_htlcs_forwardable(long time_forwardable);
+ // struct LDKEvent Event_htlcintercepted(struct LDKThirtyTwoBytes intercept_id, uint64_t requested_next_hop_scid, struct LDKThirtyTwoBytes payment_hash, uint64_t inbound_amount_msat, uint64_t expected_outbound_amount_msat);
+ public static native long Event_htlcintercepted(byte[] intercept_id, long requested_next_hop_scid, byte[] payment_hash, long inbound_amount_msat, long expected_outbound_amount_msat);
+ // struct LDKEvent Event_spendable_outputs(struct LDKCVec_SpendableOutputDescriptorZ outputs, struct LDKCOption_ThirtyTwoBytesZ channel_id);
+ public static native long Event_spendable_outputs(long[] outputs, long channel_id);
+ // struct LDKEvent Event_payment_forwarded(struct LDKCOption_ThirtyTwoBytesZ prev_channel_id, struct LDKCOption_ThirtyTwoBytesZ next_channel_id, struct LDKCOption_u64Z fee_earned_msat, bool claim_from_onchain_tx, struct LDKCOption_u64Z outbound_amount_forwarded_msat);
+ public static native long Event_payment_forwarded(long prev_channel_id, long next_channel_id, long fee_earned_msat, boolean claim_from_onchain_tx, long outbound_amount_forwarded_msat);
+ // struct LDKEvent Event_channel_pending(struct LDKThirtyTwoBytes channel_id, struct LDKU128 user_channel_id, struct LDKCOption_ThirtyTwoBytesZ former_temporary_channel_id, struct LDKPublicKey counterparty_node_id, struct LDKOutPoint funding_txo);
+ public static native long Event_channel_pending(byte[] channel_id, byte[] user_channel_id, long former_temporary_channel_id, byte[] counterparty_node_id, long funding_txo);
+ // struct LDKEvent Event_channel_ready(struct LDKThirtyTwoBytes channel_id, struct LDKU128 user_channel_id, struct LDKPublicKey counterparty_node_id, struct LDKChannelTypeFeatures channel_type);
+ public static native long Event_channel_ready(byte[] channel_id, byte[] user_channel_id, byte[] counterparty_node_id, long channel_type);
+ // struct LDKEvent Event_channel_closed(struct LDKThirtyTwoBytes channel_id, struct LDKU128 user_channel_id, struct LDKClosureReason reason, struct LDKPublicKey counterparty_node_id, struct LDKCOption_u64Z channel_capacity_sats);
+ public static native long Event_channel_closed(byte[] channel_id, byte[] user_channel_id, long reason, byte[] counterparty_node_id, long channel_capacity_sats);
+ // struct LDKEvent Event_discard_funding(struct LDKThirtyTwoBytes channel_id, struct LDKTransaction transaction);
+ public static native long Event_discard_funding(byte[] channel_id, byte[] transaction);
+ // struct LDKEvent Event_open_channel_request(struct LDKThirtyTwoBytes temporary_channel_id, struct LDKPublicKey counterparty_node_id, uint64_t funding_satoshis, uint64_t push_msat, struct LDKChannelTypeFeatures channel_type);
+ public static native long Event_open_channel_request(byte[] temporary_channel_id, byte[] counterparty_node_id, long funding_satoshis, long push_msat, long channel_type);
+ // struct LDKEvent Event_htlchandling_failed(struct LDKThirtyTwoBytes prev_channel_id, struct LDKHTLCDestination failed_next_destination);
+ public static native long Event_htlchandling_failed(byte[] prev_channel_id, long failed_next_destination);
+ // struct LDKEvent Event_bump_transaction(struct LDKBumpTransactionEvent a);
+ public static native long Event_bump_transaction(long a);
+ // bool Event_eq(const struct LDKEvent *NONNULL_PTR a, const struct LDKEvent *NONNULL_PTR b);
+ public static native boolean Event_eq(long a, long b);
+ // struct LDKCVec_u8Z Event_write(const struct LDKEvent *NONNULL_PTR obj);
+ public static native byte[] Event_write(long obj);
+ // struct LDKCResult_COption_EventZDecodeErrorZ Event_read(struct LDKu8slice ser);
+ public static native long Event_read(byte[] ser);
+ // void MessageSendEvent_free(struct LDKMessageSendEvent this_ptr);
+ public static native void MessageSendEvent_free(long this_ptr);
+ // uint64_t MessageSendEvent_clone_ptr(LDKMessageSendEvent *NONNULL_PTR arg);
+ public static native long MessageSendEvent_clone_ptr(long arg);
+ // struct LDKMessageSendEvent MessageSendEvent_clone(const struct LDKMessageSendEvent *NONNULL_PTR orig);
+ public static native long MessageSendEvent_clone(long orig);
+ // struct LDKMessageSendEvent MessageSendEvent_send_accept_channel(struct LDKPublicKey node_id, struct LDKAcceptChannel msg);
+ public static native long MessageSendEvent_send_accept_channel(byte[] node_id, long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_accept_channel_v2(struct LDKPublicKey node_id, struct LDKAcceptChannelV2 msg);
+ public static native long MessageSendEvent_send_accept_channel_v2(byte[] node_id, long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_open_channel(struct LDKPublicKey node_id, struct LDKOpenChannel msg);
+ public static native long MessageSendEvent_send_open_channel(byte[] node_id, long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_open_channel_v2(struct LDKPublicKey node_id, struct LDKOpenChannelV2 msg);
+ public static native long MessageSendEvent_send_open_channel_v2(byte[] node_id, long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_funding_created(struct LDKPublicKey node_id, struct LDKFundingCreated msg);
+ public static native long MessageSendEvent_send_funding_created(byte[] node_id, long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_funding_signed(struct LDKPublicKey node_id, struct LDKFundingSigned msg);
+ public static native long MessageSendEvent_send_funding_signed(byte[] node_id, long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_tx_add_input(struct LDKPublicKey node_id, struct LDKTxAddInput msg);
+ public static native long MessageSendEvent_send_tx_add_input(byte[] node_id, long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_tx_add_output(struct LDKPublicKey node_id, struct LDKTxAddOutput msg);
+ public static native long MessageSendEvent_send_tx_add_output(byte[] node_id, long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_tx_remove_input(struct LDKPublicKey node_id, struct LDKTxRemoveInput msg);
+ public static native long MessageSendEvent_send_tx_remove_input(byte[] node_id, long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_tx_remove_output(struct LDKPublicKey node_id, struct LDKTxRemoveOutput msg);
+ public static native long MessageSendEvent_send_tx_remove_output(byte[] node_id, long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_tx_complete(struct LDKPublicKey node_id, struct LDKTxComplete msg);
+ public static native long MessageSendEvent_send_tx_complete(byte[] node_id, long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_tx_signatures(struct LDKPublicKey node_id, struct LDKTxSignatures msg);
+ public static native long MessageSendEvent_send_tx_signatures(byte[] node_id, long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_tx_init_rbf(struct LDKPublicKey node_id, struct LDKTxInitRbf msg);
+ public static native long MessageSendEvent_send_tx_init_rbf(byte[] node_id, long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_tx_ack_rbf(struct LDKPublicKey node_id, struct LDKTxAckRbf msg);
+ public static native long MessageSendEvent_send_tx_ack_rbf(byte[] node_id, long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_tx_abort(struct LDKPublicKey node_id, struct LDKTxAbort msg);
+ public static native long MessageSendEvent_send_tx_abort(byte[] node_id, long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_channel_ready(struct LDKPublicKey node_id, struct LDKChannelReady msg);
+ public static native long MessageSendEvent_send_channel_ready(byte[] node_id, long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_announcement_signatures(struct LDKPublicKey node_id, struct LDKAnnouncementSignatures msg);
+ public static native long MessageSendEvent_send_announcement_signatures(byte[] node_id, long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_update_htlcs(struct LDKPublicKey node_id, struct LDKCommitmentUpdate updates);
+ public static native long MessageSendEvent_update_htlcs(byte[] node_id, long updates);
+ // struct LDKMessageSendEvent MessageSendEvent_send_revoke_and_ack(struct LDKPublicKey node_id, struct LDKRevokeAndACK msg);
+ public static native long MessageSendEvent_send_revoke_and_ack(byte[] node_id, long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_closing_signed(struct LDKPublicKey node_id, struct LDKClosingSigned msg);
+ public static native long MessageSendEvent_send_closing_signed(byte[] node_id, long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_shutdown(struct LDKPublicKey node_id, struct LDKShutdown msg);
+ public static native long MessageSendEvent_send_shutdown(byte[] node_id, long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_channel_reestablish(struct LDKPublicKey node_id, struct LDKChannelReestablish msg);
+ public static native long MessageSendEvent_send_channel_reestablish(byte[] node_id, long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_channel_announcement(struct LDKPublicKey node_id, struct LDKChannelAnnouncement msg, struct LDKChannelUpdate update_msg);
+ public static native long MessageSendEvent_send_channel_announcement(byte[] node_id, long msg, long update_msg);
+ // struct LDKMessageSendEvent MessageSendEvent_broadcast_channel_announcement(struct LDKChannelAnnouncement msg, struct LDKChannelUpdate update_msg);
+ public static native long MessageSendEvent_broadcast_channel_announcement(long msg, long update_msg);
+ // struct LDKMessageSendEvent MessageSendEvent_broadcast_channel_update(struct LDKChannelUpdate msg);
+ public static native long MessageSendEvent_broadcast_channel_update(long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_broadcast_node_announcement(struct LDKNodeAnnouncement msg);
+ public static native long MessageSendEvent_broadcast_node_announcement(long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_channel_update(struct LDKPublicKey node_id, struct LDKChannelUpdate msg);
+ public static native long MessageSendEvent_send_channel_update(byte[] node_id, long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_handle_error(struct LDKPublicKey node_id, struct LDKErrorAction action);
+ public static native long MessageSendEvent_handle_error(byte[] node_id, long action);
+ // struct LDKMessageSendEvent MessageSendEvent_send_channel_range_query(struct LDKPublicKey node_id, struct LDKQueryChannelRange msg);
+ public static native long MessageSendEvent_send_channel_range_query(byte[] node_id, long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_short_ids_query(struct LDKPublicKey node_id, struct LDKQueryShortChannelIds msg);
+ public static native long MessageSendEvent_send_short_ids_query(byte[] node_id, long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_reply_channel_range(struct LDKPublicKey node_id, struct LDKReplyChannelRange msg);
+ public static native long MessageSendEvent_send_reply_channel_range(byte[] node_id, long msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_gossip_timestamp_filter(struct LDKPublicKey node_id, struct LDKGossipTimestampFilter msg);
+ public static native long MessageSendEvent_send_gossip_timestamp_filter(byte[] node_id, long msg);
+ // void MessageSendEventsProvider_free(struct LDKMessageSendEventsProvider this_ptr);
+ public static native void MessageSendEventsProvider_free(long this_ptr);
+ // void EventsProvider_free(struct LDKEventsProvider this_ptr);
+ public static native void EventsProvider_free(long this_ptr);
+ // void EventHandler_free(struct LDKEventHandler this_ptr);
+ public static native void EventHandler_free(long this_ptr);
+ // void AnchorDescriptor_free(struct LDKAnchorDescriptor this_obj);
+ public static native void AnchorDescriptor_free(long this_obj);
+ // struct LDKChannelDerivationParameters AnchorDescriptor_get_channel_derivation_parameters(const struct LDKAnchorDescriptor *NONNULL_PTR this_ptr);
+ public static native long AnchorDescriptor_get_channel_derivation_parameters(long this_ptr);
+ // void AnchorDescriptor_set_channel_derivation_parameters(struct LDKAnchorDescriptor *NONNULL_PTR this_ptr, struct LDKChannelDerivationParameters val);
+ public static native void AnchorDescriptor_set_channel_derivation_parameters(long this_ptr, long val);
+ // struct LDKOutPoint AnchorDescriptor_get_outpoint(const struct LDKAnchorDescriptor *NONNULL_PTR this_ptr);
+ public static native long AnchorDescriptor_get_outpoint(long this_ptr);
+ // void AnchorDescriptor_set_outpoint(struct LDKAnchorDescriptor *NONNULL_PTR this_ptr, struct LDKOutPoint val);
+ public static native void AnchorDescriptor_set_outpoint(long this_ptr, long val);
+ // MUST_USE_RES struct LDKAnchorDescriptor AnchorDescriptor_new(struct LDKChannelDerivationParameters channel_derivation_parameters_arg, struct LDKOutPoint outpoint_arg);
+ public static native long AnchorDescriptor_new(long channel_derivation_parameters_arg, long outpoint_arg);
+ // uint64_t AnchorDescriptor_clone_ptr(LDKAnchorDescriptor *NONNULL_PTR arg);
+ public static native long AnchorDescriptor_clone_ptr(long arg);
+ // struct LDKAnchorDescriptor AnchorDescriptor_clone(const struct LDKAnchorDescriptor *NONNULL_PTR orig);
+ public static native long AnchorDescriptor_clone(long orig);
+ // bool AnchorDescriptor_eq(const struct LDKAnchorDescriptor *NONNULL_PTR a, const struct LDKAnchorDescriptor *NONNULL_PTR b);
+ public static native boolean AnchorDescriptor_eq(long a, long b);
+ // MUST_USE_RES struct LDKTxOut AnchorDescriptor_previous_utxo(const struct LDKAnchorDescriptor *NONNULL_PTR this_arg);
+ public static native long AnchorDescriptor_previous_utxo(long this_arg);
+ // MUST_USE_RES struct LDKTxIn AnchorDescriptor_unsigned_tx_input(const struct LDKAnchorDescriptor *NONNULL_PTR this_arg);
+ public static native long AnchorDescriptor_unsigned_tx_input(long this_arg);
+ // MUST_USE_RES struct LDKCVec_u8Z AnchorDescriptor_witness_script(const struct LDKAnchorDescriptor *NONNULL_PTR this_arg);
+ public static native byte[] AnchorDescriptor_witness_script(long this_arg);
+ // MUST_USE_RES struct LDKWitness AnchorDescriptor_tx_input_witness(const struct LDKAnchorDescriptor *NONNULL_PTR this_arg, struct LDKECDSASignature signature);
+ public static native byte[] AnchorDescriptor_tx_input_witness(long this_arg, byte[] signature);
+ // MUST_USE_RES struct LDKWriteableEcdsaChannelSigner AnchorDescriptor_derive_channel_signer(const struct LDKAnchorDescriptor *NONNULL_PTR this_arg, const struct LDKSignerProvider *NONNULL_PTR signer_provider);
+ public static native long AnchorDescriptor_derive_channel_signer(long this_arg, long signer_provider);
+ // void BumpTransactionEvent_free(struct LDKBumpTransactionEvent this_ptr);
+ public static native void BumpTransactionEvent_free(long this_ptr);
+ // uint64_t BumpTransactionEvent_clone_ptr(LDKBumpTransactionEvent *NONNULL_PTR arg);
+ public static native long BumpTransactionEvent_clone_ptr(long arg);
+ // struct LDKBumpTransactionEvent BumpTransactionEvent_clone(const struct LDKBumpTransactionEvent *NONNULL_PTR orig);
+ public static native long BumpTransactionEvent_clone(long orig);
+ // struct LDKBumpTransactionEvent BumpTransactionEvent_channel_close(struct LDKThirtyTwoBytes claim_id, uint32_t package_target_feerate_sat_per_1000_weight, struct LDKTransaction commitment_tx, uint64_t commitment_tx_fee_satoshis, struct LDKAnchorDescriptor anchor_descriptor, struct LDKCVec_HTLCOutputInCommitmentZ pending_htlcs);
+ public static native long BumpTransactionEvent_channel_close(byte[] claim_id, int package_target_feerate_sat_per_1000_weight, byte[] commitment_tx, long commitment_tx_fee_satoshis, long anchor_descriptor, long[] pending_htlcs);
+ // struct LDKBumpTransactionEvent BumpTransactionEvent_htlcresolution(struct LDKThirtyTwoBytes claim_id, uint32_t target_feerate_sat_per_1000_weight, struct LDKCVec_HTLCDescriptorZ htlc_descriptors, uint32_t tx_lock_time);
+ public static native long BumpTransactionEvent_htlcresolution(byte[] claim_id, int target_feerate_sat_per_1000_weight, long[] htlc_descriptors, int tx_lock_time);
+ // bool BumpTransactionEvent_eq(const struct LDKBumpTransactionEvent *NONNULL_PTR a, const struct LDKBumpTransactionEvent *NONNULL_PTR b);
+ public static native boolean BumpTransactionEvent_eq(long a, long b);
+ // void Input_free(struct LDKInput this_obj);
+ public static native void Input_free(long this_obj);
+ // struct LDKOutPoint Input_get_outpoint(const struct LDKInput *NONNULL_PTR this_ptr);
+ public static native long Input_get_outpoint(long this_ptr);
+ // void Input_set_outpoint(struct LDKInput *NONNULL_PTR this_ptr, struct LDKOutPoint val);
+ public static native void Input_set_outpoint(long this_ptr, long val);
+ // struct LDKTxOut Input_get_previous_utxo(const struct LDKInput *NONNULL_PTR this_ptr);
+ public static native long Input_get_previous_utxo(long this_ptr);
+ // void Input_set_previous_utxo(struct LDKInput *NONNULL_PTR this_ptr, struct LDKTxOut val);
+ public static native void Input_set_previous_utxo(long this_ptr, long val);
+ // uint64_t Input_get_satisfaction_weight(const struct LDKInput *NONNULL_PTR this_ptr);
+ public static native long Input_get_satisfaction_weight(long this_ptr);
+ // void Input_set_satisfaction_weight(struct LDKInput *NONNULL_PTR this_ptr, uint64_t val);
+ public static native void Input_set_satisfaction_weight(long this_ptr, long val);
+ // MUST_USE_RES struct LDKInput Input_new(struct LDKOutPoint outpoint_arg, struct LDKTxOut previous_utxo_arg, uint64_t satisfaction_weight_arg);
+ public static native long Input_new(long outpoint_arg, long previous_utxo_arg, long satisfaction_weight_arg);
+ // uint64_t Input_clone_ptr(LDKInput *NONNULL_PTR arg);
+ public static native long Input_clone_ptr(long arg);
+ // struct LDKInput Input_clone(const struct LDKInput *NONNULL_PTR orig);
+ public static native long Input_clone(long orig);
+ // uint64_t Input_hash(const struct LDKInput *NONNULL_PTR o);
+ public static native long Input_hash(long o);
+ // bool Input_eq(const struct LDKInput *NONNULL_PTR a, const struct LDKInput *NONNULL_PTR b);
+ public static native boolean Input_eq(long a, long b);
+ // void Utxo_free(struct LDKUtxo this_obj);
+ public static native void Utxo_free(long this_obj);
+ // struct LDKOutPoint Utxo_get_outpoint(const struct LDKUtxo *NONNULL_PTR this_ptr);
+ public static native long Utxo_get_outpoint(long this_ptr);
+ // void Utxo_set_outpoint(struct LDKUtxo *NONNULL_PTR this_ptr, struct LDKOutPoint val);
+ public static native void Utxo_set_outpoint(long this_ptr, long val);
+ // struct LDKTxOut Utxo_get_output(const struct LDKUtxo *NONNULL_PTR this_ptr);
+ public static native long Utxo_get_output(long this_ptr);
+ // void Utxo_set_output(struct LDKUtxo *NONNULL_PTR this_ptr, struct LDKTxOut val);
+ public static native void Utxo_set_output(long this_ptr, long val);
+ // uint64_t Utxo_get_satisfaction_weight(const struct LDKUtxo *NONNULL_PTR this_ptr);
+ public static native long Utxo_get_satisfaction_weight(long this_ptr);
+ // void Utxo_set_satisfaction_weight(struct LDKUtxo *NONNULL_PTR this_ptr, uint64_t val);
+ public static native void Utxo_set_satisfaction_weight(long this_ptr, long val);
+ // MUST_USE_RES struct LDKUtxo Utxo_new(struct LDKOutPoint outpoint_arg, struct LDKTxOut output_arg, uint64_t satisfaction_weight_arg);
+ public static native long Utxo_new(long outpoint_arg, long output_arg, long satisfaction_weight_arg);
+ // uint64_t Utxo_clone_ptr(LDKUtxo *NONNULL_PTR arg);
+ public static native long Utxo_clone_ptr(long arg);
+ // struct LDKUtxo Utxo_clone(const struct LDKUtxo *NONNULL_PTR orig);
+ public static native long Utxo_clone(long orig);
+ // uint64_t Utxo_hash(const struct LDKUtxo *NONNULL_PTR o);
+ public static native long Utxo_hash(long o);
+ // bool Utxo_eq(const struct LDKUtxo *NONNULL_PTR a, const struct LDKUtxo *NONNULL_PTR b);
+ public static native boolean Utxo_eq(long a, long b);
+ // MUST_USE_RES struct LDKUtxo Utxo_new_p2pkh(struct LDKOutPoint outpoint, uint64_t value, const uint8_t (*pubkey_hash)[20]);
+ public static native long Utxo_new_p2pkh(long outpoint, long value, byte[] pubkey_hash);
+ // void CoinSelection_free(struct LDKCoinSelection this_obj);
+ public static native void CoinSelection_free(long this_obj);
+ // struct LDKCVec_UtxoZ CoinSelection_get_confirmed_utxos(const struct LDKCoinSelection *NONNULL_PTR this_ptr);
+ public static native long[] CoinSelection_get_confirmed_utxos(long this_ptr);
+ // void CoinSelection_set_confirmed_utxos(struct LDKCoinSelection *NONNULL_PTR this_ptr, struct LDKCVec_UtxoZ val);
+ public static native void CoinSelection_set_confirmed_utxos(long this_ptr, long[] val);
+ // struct LDKCOption_TxOutZ CoinSelection_get_change_output(const struct LDKCoinSelection *NONNULL_PTR this_ptr);
+ public static native long CoinSelection_get_change_output(long this_ptr);
+ // void CoinSelection_set_change_output(struct LDKCoinSelection *NONNULL_PTR this_ptr, struct LDKCOption_TxOutZ val);
+ public static native void CoinSelection_set_change_output(long this_ptr, long val);
+ // MUST_USE_RES struct LDKCoinSelection CoinSelection_new(struct LDKCVec_UtxoZ confirmed_utxos_arg, struct LDKCOption_TxOutZ change_output_arg);
+ public static native long CoinSelection_new(long[] confirmed_utxos_arg, long change_output_arg);
+ // uint64_t CoinSelection_clone_ptr(LDKCoinSelection *NONNULL_PTR arg);
+ public static native long CoinSelection_clone_ptr(long arg);
+ // struct LDKCoinSelection CoinSelection_clone(const struct LDKCoinSelection *NONNULL_PTR orig);
+ public static native long CoinSelection_clone(long orig);
+ // void CoinSelectionSource_free(struct LDKCoinSelectionSource this_ptr);
+ public static native void CoinSelectionSource_free(long this_ptr);
+ // void WalletSource_free(struct LDKWalletSource this_ptr);
+ public static native void WalletSource_free(long this_ptr);
+ // void Wallet_free(struct LDKWallet this_obj);
+ public static native void Wallet_free(long this_obj);
+ // MUST_USE_RES struct LDKWallet Wallet_new(struct LDKWalletSource source, struct LDKLogger logger);
+ public static native long Wallet_new(long source, long logger);
+ // struct LDKCoinSelectionSource Wallet_as_CoinSelectionSource(const struct LDKWallet *NONNULL_PTR this_arg);
+ public static native long Wallet_as_CoinSelectionSource(long this_arg);
+ // void BumpTransactionEventHandler_free(struct LDKBumpTransactionEventHandler this_obj);
+ public static native void BumpTransactionEventHandler_free(long this_obj);
+ // MUST_USE_RES struct LDKBumpTransactionEventHandler BumpTransactionEventHandler_new(struct LDKBroadcasterInterface broadcaster, struct LDKCoinSelectionSource utxo_source, struct LDKSignerProvider signer_provider, struct LDKLogger logger);
+ public static native long BumpTransactionEventHandler_new(long broadcaster, long utxo_source, long signer_provider, long logger);
+ // void BumpTransactionEventHandler_handle_event(const struct LDKBumpTransactionEventHandler *NONNULL_PTR this_arg, const struct LDKBumpTransactionEvent *NONNULL_PTR event);
+ public static native void BumpTransactionEventHandler_handle_event(long this_arg, long event);
+ // void FilesystemStore_free(struct LDKFilesystemStore this_obj);
+ public static native void FilesystemStore_free(long this_obj);
+ // MUST_USE_RES struct LDKFilesystemStore FilesystemStore_new(struct LDKStr data_dir);
+ public static native long FilesystemStore_new(String data_dir);
+ // MUST_USE_RES struct LDKStr FilesystemStore_get_data_dir(const struct LDKFilesystemStore *NONNULL_PTR this_arg);
+ public static native String FilesystemStore_get_data_dir(long this_arg);
+ // struct LDKKVStore FilesystemStore_as_KVStore(const struct LDKFilesystemStore *NONNULL_PTR this_arg);
+ public static native long FilesystemStore_as_KVStore(long this_arg);