- const underlying_om_a = ldk.OnionMessenger.constructor_new(a.keys_interface, a.logger);
- const om_provider_a = {
- next_onion_message_for_peer(peer_node_id: Uint8Array): ldk.OnionMessage {
- return underlying_om_a.as_OnionMessageProvider().next_onion_message_for_peer(peer_node_id);
- }
- } as ldk.OnionMessageProviderInterface;
+ var a_handled_msg = false;
+ const om_handler_a = ldk.CustomOnionMessageHandler.new_impl({
+ read_custom_message(message_type: bigint, buffer: Uint8Array): ldk.Result_COption_OnionMessageContentsZDecodeErrorZ {
+ assert(message_type == 4343n);
+ assert(buffer.length == 44);
+ for (var i = 0; i < 44; i++) assert(buffer[i] == 67);
+ return ldk.Result_COption_OnionMessageContentsZDecodeErrorZ.constructor_ok(ldk.Option_OnionMessageContentsZ.constructor_some(ldk.OnionMessageContents.new_impl({
+ tlv_type(): bigint { return 9998n; },
+ write(): Uint8Array { throw new Error(); },
+ debug_str(): string { return "Message Contents"; }
+ } as ldk.OnionMessageContentsInterface)));
+ },
+ handle_custom_message(msg: ldk.OnionMessageContents) {
+ assert(msg.tlv_type() == 9998n);
+ a_handled_msg = true;
+ },
+ release_pending_custom_messages(): ldk.ThreeTuple_OnionMessageContentsDestinationBlindedPathZ[] {
+ return [];
+ },
+ } as ldk.CustomOnionMessageHandlerInterface);
+
+ const a_msg_router = ldk.DefaultMessageRouter
+ .constructor_new(a.net_graph, a.keys_manager.as_EntropySource()).as_MessageRouter();
+ const underlying_om_a = ldk.OnionMessenger.constructor_new(
+ a.keys_manager.as_EntropySource(), a.keys_manager.as_NodeSigner(), a.logger,
+ a_msg_router, ignorer.as_OffersMessageHandler(), om_handler_a);