breez_sdk_core/
bridge_generated.rs

1#![allow(
2    non_camel_case_types,
3    unused,
4    clippy::redundant_closure,
5    clippy::useless_conversion,
6    clippy::unit_arg,
7    clippy::double_parens,
8    non_snake_case,
9    clippy::too_many_arguments
10)]
11// AUTO GENERATED FILE, DO NOT EDIT.
12// Generated by `flutter_rust_bridge`@ 1.82.6.
13
14use crate::binding::*;
15use core::panic::UnwindSafe;
16use flutter_rust_bridge::rust2dart::IntoIntoDart;
17use flutter_rust_bridge::*;
18use std::ffi::c_void;
19use std::sync::Arc;
20
21// Section: imports
22
23use crate::breez_services::BackupFailedData;
24use crate::breez_services::BreezEvent;
25use crate::breez_services::CheckMessageRequest;
26use crate::breez_services::CheckMessageResponse;
27use crate::breez_services::InvoicePaidDetails;
28use crate::breez_services::PaymentFailedData;
29use crate::breez_services::SignMessageRequest;
30use crate::breez_services::SignMessageResponse;
31use crate::chain::RecommendedFees;
32use crate::lnurl::pay::LnUrlPayResult;
33use crate::lnurl::pay::LnUrlPaySuccessData;
34use crate::lsp::LspInformation;
35use crate::models::BackupStatus;
36use crate::models::BuyBitcoinProvider;
37use crate::models::BuyBitcoinRequest;
38use crate::models::BuyBitcoinResponse;
39use crate::models::ChannelState;
40use crate::models::ClosedChannelPaymentDetails;
41use crate::models::Config;
42use crate::models::ConfigureNodeRequest;
43use crate::models::ConnectRequest;
44use crate::models::EnvironmentType;
45use crate::models::GreenlightCredentials;
46use crate::models::GreenlightDeviceCredentials;
47use crate::models::GreenlightNodeConfig;
48use crate::models::HealthCheckStatus;
49use crate::models::ListPaymentsRequest;
50use crate::models::ListSwapsRequest;
51use crate::models::LnPaymentDetails;
52use crate::models::LogEntry;
53use crate::models::MetadataFilter;
54use crate::models::NodeConfig;
55use crate::models::NodeCredentials;
56use crate::models::NodeState;
57use crate::models::OnchainPaymentLimitsResponse;
58use crate::models::OpenChannelFeeRequest;
59use crate::models::OpenChannelFeeResponse;
60use crate::models::OpeningFeeParams;
61use crate::models::OpeningFeeParamsMenu;
62use crate::models::PayOnchainRequest;
63use crate::models::PayOnchainResponse;
64use crate::models::Payment;
65use crate::models::PaymentDetails;
66use crate::models::PaymentStatus;
67use crate::models::PaymentType;
68use crate::models::PaymentTypeFilter;
69use crate::models::PrepareOnchainPaymentRequest;
70use crate::models::PrepareOnchainPaymentResponse;
71use crate::models::PrepareRedeemOnchainFundsRequest;
72use crate::models::PrepareRedeemOnchainFundsResponse;
73use crate::models::PrepareRefundRequest;
74use crate::models::PrepareRefundResponse;
75use crate::models::ReceiveOnchainRequest;
76use crate::models::ReceivePaymentRequest;
77use crate::models::ReceivePaymentResponse;
78use crate::models::RedeemOnchainFundsRequest;
79use crate::models::RedeemOnchainFundsResponse;
80use crate::models::RefundRequest;
81use crate::models::RefundResponse;
82use crate::models::ReportIssueRequest;
83use crate::models::ReportPaymentFailureDetails;
84use crate::models::ReverseSwapFeesRequest;
85use crate::models::ReverseSwapInfo;
86use crate::models::ReverseSwapPairInfo;
87use crate::models::ReverseSwapStatus;
88use crate::models::SendPaymentRequest;
89use crate::models::SendPaymentResponse;
90use crate::models::SendSpontaneousPaymentRequest;
91use crate::models::ServiceHealthCheckResponse;
92use crate::models::StaticBackupRequest;
93use crate::models::StaticBackupResponse;
94use crate::models::SwapAmountType;
95use crate::models::SwapInfo;
96use crate::models::SwapStatus;
97use crate::models::TlvEntry;
98use crate::models::UnspentTransactionOutput;
99
100// Section: wire functions
101
102fn wire_connect_impl(port_: MessagePort, req: impl Wire2Api<ConnectRequest> + UnwindSafe) {
103    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, (), _>(
104        WrapInfo {
105            debug_name: "connect",
106            port: Some(port_),
107            mode: FfiCallMode::Normal,
108        },
109        move || {
110            let api_req = req.wire2api();
111            move |task_callback| connect(api_req)
112        },
113    )
114}
115fn wire_is_initialized_impl(port_: MessagePort) {
116    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, bool, _>(
117        WrapInfo {
118            debug_name: "is_initialized",
119            port: Some(port_),
120            mode: FfiCallMode::Normal,
121        },
122        move || move |task_callback| Result::<_, ()>::Ok(is_initialized()),
123    )
124}
125fn wire_sync_impl(port_: MessagePort) {
126    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, (), _>(
127        WrapInfo {
128            debug_name: "sync",
129            port: Some(port_),
130            mode: FfiCallMode::Normal,
131        },
132        move || move |task_callback| sync(),
133    )
134}
135fn wire_node_credentials_impl(port_: MessagePort) {
136    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, Option<NodeCredentials>, _>(
137        WrapInfo {
138            debug_name: "node_credentials",
139            port: Some(port_),
140            mode: FfiCallMode::Normal,
141        },
142        move || move |task_callback| node_credentials(),
143    )
144}
145fn wire_node_info_impl(port_: MessagePort) {
146    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, NodeState, _>(
147        WrapInfo {
148            debug_name: "node_info",
149            port: Some(port_),
150            mode: FfiCallMode::Normal,
151        },
152        move || move |task_callback| node_info(),
153    )
154}
155fn wire_configure_node_impl(
156    port_: MessagePort,
157    req: impl Wire2Api<ConfigureNodeRequest> + UnwindSafe,
158) {
159    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, (), _>(
160        WrapInfo {
161            debug_name: "configure_node",
162            port: Some(port_),
163            mode: FfiCallMode::Normal,
164        },
165        move || {
166            let api_req = req.wire2api();
167            move |task_callback| configure_node(api_req)
168        },
169    )
170}
171fn wire_disconnect_impl(port_: MessagePort) {
172    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, (), _>(
173        WrapInfo {
174            debug_name: "disconnect",
175            port: Some(port_),
176            mode: FfiCallMode::Normal,
177        },
178        move || move |task_callback| disconnect(),
179    )
180}
181fn wire_sign_message_impl(port_: MessagePort, req: impl Wire2Api<SignMessageRequest> + UnwindSafe) {
182    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, SignMessageResponse, _>(
183        WrapInfo {
184            debug_name: "sign_message",
185            port: Some(port_),
186            mode: FfiCallMode::Normal,
187        },
188        move || {
189            let api_req = req.wire2api();
190            move |task_callback| sign_message(api_req)
191        },
192    )
193}
194fn wire_check_message_impl(
195    port_: MessagePort,
196    req: impl Wire2Api<CheckMessageRequest> + UnwindSafe,
197) {
198    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, CheckMessageResponse, _>(
199        WrapInfo {
200            debug_name: "check_message",
201            port: Some(port_),
202            mode: FfiCallMode::Normal,
203        },
204        move || {
205            let api_req = req.wire2api();
206            move |task_callback| check_message(api_req)
207        },
208    )
209}
210fn wire_mnemonic_to_seed_impl(port_: MessagePort, phrase: impl Wire2Api<String> + UnwindSafe) {
211    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, Vec<u8>, _>(
212        WrapInfo {
213            debug_name: "mnemonic_to_seed",
214            port: Some(port_),
215            mode: FfiCallMode::Normal,
216        },
217        move || {
218            let api_phrase = phrase.wire2api();
219            move |task_callback| mnemonic_to_seed(api_phrase)
220        },
221    )
222}
223fn wire_default_config_impl(
224    port_: MessagePort,
225    env_type: impl Wire2Api<EnvironmentType> + UnwindSafe,
226    api_key: impl Wire2Api<String> + UnwindSafe,
227    node_config: impl Wire2Api<NodeConfig> + UnwindSafe,
228) {
229    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, Config, _>(
230        WrapInfo {
231            debug_name: "default_config",
232            port: Some(port_),
233            mode: FfiCallMode::Normal,
234        },
235        move || {
236            let api_env_type = env_type.wire2api();
237            let api_api_key = api_key.wire2api();
238            let api_node_config = node_config.wire2api();
239            move |task_callback| {
240                Result::<_, ()>::Ok(default_config(api_env_type, api_api_key, api_node_config))
241            }
242        },
243    )
244}
245fn wire_static_backup_impl(
246    port_: MessagePort,
247    req: impl Wire2Api<StaticBackupRequest> + UnwindSafe,
248) {
249    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, StaticBackupResponse, _>(
250        WrapInfo {
251            debug_name: "static_backup",
252            port: Some(port_),
253            mode: FfiCallMode::Normal,
254        },
255        move || {
256            let api_req = req.wire2api();
257            move |task_callback| static_backup(api_req)
258        },
259    )
260}
261fn wire_service_health_check_impl(port_: MessagePort, api_key: impl Wire2Api<String> + UnwindSafe) {
262    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, ServiceHealthCheckResponse, _>(
263        WrapInfo {
264            debug_name: "service_health_check",
265            port: Some(port_),
266            mode: FfiCallMode::Normal,
267        },
268        move || {
269            let api_api_key = api_key.wire2api();
270            move |task_callback| service_health_check(api_api_key)
271        },
272    )
273}
274fn wire_breez_events_stream_impl(port_: MessagePort) {
275    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, (), _>(
276        WrapInfo {
277            debug_name: "breez_events_stream",
278            port: Some(port_),
279            mode: FfiCallMode::Stream,
280        },
281        move || {
282            move |task_callback| breez_events_stream(task_callback.stream_sink::<_, BreezEvent>())
283        },
284    )
285}
286fn wire_breez_log_stream_impl(port_: MessagePort) {
287    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, (), _>(
288        WrapInfo {
289            debug_name: "breez_log_stream",
290            port: Some(port_),
291            mode: FfiCallMode::Stream,
292        },
293        move || move |task_callback| breez_log_stream(task_callback.stream_sink::<_, LogEntry>()),
294    )
295}
296fn wire_list_lsps_impl(port_: MessagePort) {
297    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, Vec<LspInformation>, _>(
298        WrapInfo {
299            debug_name: "list_lsps",
300            port: Some(port_),
301            mode: FfiCallMode::Normal,
302        },
303        move || move |task_callback| list_lsps(),
304    )
305}
306fn wire_connect_lsp_impl(port_: MessagePort, lsp_id: impl Wire2Api<String> + UnwindSafe) {
307    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, (), _>(
308        WrapInfo {
309            debug_name: "connect_lsp",
310            port: Some(port_),
311            mode: FfiCallMode::Normal,
312        },
313        move || {
314            let api_lsp_id = lsp_id.wire2api();
315            move |task_callback| connect_lsp(api_lsp_id)
316        },
317    )
318}
319fn wire_lsp_id_impl(port_: MessagePort) {
320    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, Option<String>, _>(
321        WrapInfo {
322            debug_name: "lsp_id",
323            port: Some(port_),
324            mode: FfiCallMode::Normal,
325        },
326        move || move |task_callback| lsp_id(),
327    )
328}
329fn wire_fetch_lsp_info_impl(port_: MessagePort, id: impl Wire2Api<String> + UnwindSafe) {
330    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, Option<LspInformation>, _>(
331        WrapInfo {
332            debug_name: "fetch_lsp_info",
333            port: Some(port_),
334            mode: FfiCallMode::Normal,
335        },
336        move || {
337            let api_id = id.wire2api();
338            move |task_callback| fetch_lsp_info(api_id)
339        },
340    )
341}
342fn wire_lsp_info_impl(port_: MessagePort) {
343    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, LspInformation, _>(
344        WrapInfo {
345            debug_name: "lsp_info",
346            port: Some(port_),
347            mode: FfiCallMode::Normal,
348        },
349        move || move |task_callback| lsp_info(),
350    )
351}
352fn wire_close_lsp_channels_impl(port_: MessagePort) {
353    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, (), _>(
354        WrapInfo {
355            debug_name: "close_lsp_channels",
356            port: Some(port_),
357            mode: FfiCallMode::Normal,
358        },
359        move || move |task_callback| close_lsp_channels(),
360    )
361}
362fn wire_register_webhook_impl(port_: MessagePort, webhook_url: impl Wire2Api<String> + UnwindSafe) {
363    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, (), _>(
364        WrapInfo {
365            debug_name: "register_webhook",
366            port: Some(port_),
367            mode: FfiCallMode::Normal,
368        },
369        move || {
370            let api_webhook_url = webhook_url.wire2api();
371            move |task_callback| register_webhook(api_webhook_url)
372        },
373    )
374}
375fn wire_unregister_webhook_impl(
376    port_: MessagePort,
377    webhook_url: impl Wire2Api<String> + UnwindSafe,
378) {
379    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, (), _>(
380        WrapInfo {
381            debug_name: "unregister_webhook",
382            port: Some(port_),
383            mode: FfiCallMode::Normal,
384        },
385        move || {
386            let api_webhook_url = webhook_url.wire2api();
387            move |task_callback| unregister_webhook(api_webhook_url)
388        },
389    )
390}
391fn wire_backup_impl(port_: MessagePort) {
392    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, (), _>(
393        WrapInfo {
394            debug_name: "backup",
395            port: Some(port_),
396            mode: FfiCallMode::Normal,
397        },
398        move || move |task_callback| backup(),
399    )
400}
401fn wire_backup_status_impl(port_: MessagePort) {
402    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, BackupStatus, _>(
403        WrapInfo {
404            debug_name: "backup_status",
405            port: Some(port_),
406            mode: FfiCallMode::Normal,
407        },
408        move || move |task_callback| backup_status(),
409    )
410}
411fn wire_parse_invoice_impl(port_: MessagePort, invoice: impl Wire2Api<String> + UnwindSafe) {
412    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, mirror_LNInvoice, _>(
413        WrapInfo {
414            debug_name: "parse_invoice",
415            port: Some(port_),
416            mode: FfiCallMode::Normal,
417        },
418        move || {
419            let api_invoice = invoice.wire2api();
420            move |task_callback| parse_invoice(api_invoice)
421        },
422    )
423}
424fn wire_parse_input_impl(port_: MessagePort, input: impl Wire2Api<String> + UnwindSafe) {
425    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, mirror_InputType, _>(
426        WrapInfo {
427            debug_name: "parse_input",
428            port: Some(port_),
429            mode: FfiCallMode::Normal,
430        },
431        move || {
432            let api_input = input.wire2api();
433            move |task_callback| parse_input(api_input)
434        },
435    )
436}
437fn wire_list_payments_impl(
438    port_: MessagePort,
439    req: impl Wire2Api<ListPaymentsRequest> + UnwindSafe,
440) {
441    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, Vec<Payment>, _>(
442        WrapInfo {
443            debug_name: "list_payments",
444            port: Some(port_),
445            mode: FfiCallMode::Normal,
446        },
447        move || {
448            let api_req = req.wire2api();
449            move |task_callback| list_payments(api_req)
450        },
451    )
452}
453fn wire_payment_by_hash_impl(port_: MessagePort, hash: impl Wire2Api<String> + UnwindSafe) {
454    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, Option<Payment>, _>(
455        WrapInfo {
456            debug_name: "payment_by_hash",
457            port: Some(port_),
458            mode: FfiCallMode::Normal,
459        },
460        move || {
461            let api_hash = hash.wire2api();
462            move |task_callback| payment_by_hash(api_hash)
463        },
464    )
465}
466fn wire_set_payment_metadata_impl(
467    port_: MessagePort,
468    hash: impl Wire2Api<String> + UnwindSafe,
469    metadata: impl Wire2Api<String> + UnwindSafe,
470) {
471    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, (), _>(
472        WrapInfo {
473            debug_name: "set_payment_metadata",
474            port: Some(port_),
475            mode: FfiCallMode::Normal,
476        },
477        move || {
478            let api_hash = hash.wire2api();
479            let api_metadata = metadata.wire2api();
480            move |task_callback| set_payment_metadata(api_hash, api_metadata)
481        },
482    )
483}
484fn wire_send_payment_impl(port_: MessagePort, req: impl Wire2Api<SendPaymentRequest> + UnwindSafe) {
485    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, SendPaymentResponse, _>(
486        WrapInfo {
487            debug_name: "send_payment",
488            port: Some(port_),
489            mode: FfiCallMode::Normal,
490        },
491        move || {
492            let api_req = req.wire2api();
493            move |task_callback| send_payment(api_req)
494        },
495    )
496}
497fn wire_send_spontaneous_payment_impl(
498    port_: MessagePort,
499    req: impl Wire2Api<SendSpontaneousPaymentRequest> + UnwindSafe,
500) {
501    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, SendPaymentResponse, _>(
502        WrapInfo {
503            debug_name: "send_spontaneous_payment",
504            port: Some(port_),
505            mode: FfiCallMode::Normal,
506        },
507        move || {
508            let api_req = req.wire2api();
509            move |task_callback| send_spontaneous_payment(api_req)
510        },
511    )
512}
513fn wire_receive_payment_impl(
514    port_: MessagePort,
515    req: impl Wire2Api<ReceivePaymentRequest> + UnwindSafe,
516) {
517    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, ReceivePaymentResponse, _>(
518        WrapInfo {
519            debug_name: "receive_payment",
520            port: Some(port_),
521            mode: FfiCallMode::Normal,
522        },
523        move || {
524            let api_req = req.wire2api();
525            move |task_callback| receive_payment(api_req)
526        },
527    )
528}
529fn wire_lnurl_pay_impl(port_: MessagePort, req: impl Wire2Api<LnUrlPayRequest> + UnwindSafe) {
530    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, LnUrlPayResult, _>(
531        WrapInfo {
532            debug_name: "lnurl_pay",
533            port: Some(port_),
534            mode: FfiCallMode::Normal,
535        },
536        move || {
537            let api_req = req.wire2api();
538            move |task_callback| lnurl_pay(api_req)
539        },
540    )
541}
542fn wire_lnurl_withdraw_impl(
543    port_: MessagePort,
544    req: impl Wire2Api<LnUrlWithdrawRequest> + UnwindSafe,
545) {
546    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, mirror_LnUrlWithdrawResult, _>(
547        WrapInfo {
548            debug_name: "lnurl_withdraw",
549            port: Some(port_),
550            mode: FfiCallMode::Normal,
551        },
552        move || {
553            let api_req = req.wire2api();
554            move |task_callback| lnurl_withdraw(api_req)
555        },
556    )
557}
558fn wire_lnurl_auth_impl(
559    port_: MessagePort,
560    req_data: impl Wire2Api<LnUrlAuthRequestData> + UnwindSafe,
561) {
562    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, mirror_LnUrlCallbackStatus, _>(
563        WrapInfo {
564            debug_name: "lnurl_auth",
565            port: Some(port_),
566            mode: FfiCallMode::Normal,
567        },
568        move || {
569            let api_req_data = req_data.wire2api();
570            move |task_callback| lnurl_auth(api_req_data)
571        },
572    )
573}
574fn wire_report_issue_impl(port_: MessagePort, req: impl Wire2Api<ReportIssueRequest> + UnwindSafe) {
575    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, (), _>(
576        WrapInfo {
577            debug_name: "report_issue",
578            port: Some(port_),
579            mode: FfiCallMode::Normal,
580        },
581        move || {
582            let api_req = req.wire2api();
583            move |task_callback| report_issue(api_req)
584        },
585    )
586}
587fn wire_fetch_fiat_rates_impl(port_: MessagePort) {
588    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, Vec<mirror_Rate>, _>(
589        WrapInfo {
590            debug_name: "fetch_fiat_rates",
591            port: Some(port_),
592            mode: FfiCallMode::Normal,
593        },
594        move || move |task_callback| fetch_fiat_rates(),
595    )
596}
597fn wire_list_fiat_currencies_impl(port_: MessagePort) {
598    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, Vec<mirror_FiatCurrency>, _>(
599        WrapInfo {
600            debug_name: "list_fiat_currencies",
601            port: Some(port_),
602            mode: FfiCallMode::Normal,
603        },
604        move || move |task_callback| list_fiat_currencies(),
605    )
606}
607fn wire_pay_onchain_impl(port_: MessagePort, req: impl Wire2Api<PayOnchainRequest> + UnwindSafe) {
608    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, PayOnchainResponse, _>(
609        WrapInfo {
610            debug_name: "pay_onchain",
611            port: Some(port_),
612            mode: FfiCallMode::Normal,
613        },
614        move || {
615            let api_req = req.wire2api();
616            move |task_callback| pay_onchain(api_req)
617        },
618    )
619}
620fn wire_receive_onchain_impl(
621    port_: MessagePort,
622    req: impl Wire2Api<ReceiveOnchainRequest> + UnwindSafe,
623) {
624    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, SwapInfo, _>(
625        WrapInfo {
626            debug_name: "receive_onchain",
627            port: Some(port_),
628            mode: FfiCallMode::Normal,
629        },
630        move || {
631            let api_req = req.wire2api();
632            move |task_callback| receive_onchain(api_req)
633        },
634    )
635}
636fn wire_buy_bitcoin_impl(port_: MessagePort, req: impl Wire2Api<BuyBitcoinRequest> + UnwindSafe) {
637    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, BuyBitcoinResponse, _>(
638        WrapInfo {
639            debug_name: "buy_bitcoin",
640            port: Some(port_),
641            mode: FfiCallMode::Normal,
642        },
643        move || {
644            let api_req = req.wire2api();
645            move |task_callback| buy_bitcoin(api_req)
646        },
647    )
648}
649fn wire_redeem_onchain_funds_impl(
650    port_: MessagePort,
651    req: impl Wire2Api<RedeemOnchainFundsRequest> + UnwindSafe,
652) {
653    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, RedeemOnchainFundsResponse, _>(
654        WrapInfo {
655            debug_name: "redeem_onchain_funds",
656            port: Some(port_),
657            mode: FfiCallMode::Normal,
658        },
659        move || {
660            let api_req = req.wire2api();
661            move |task_callback| redeem_onchain_funds(api_req)
662        },
663    )
664}
665fn wire_prepare_redeem_onchain_funds_impl(
666    port_: MessagePort,
667    req: impl Wire2Api<PrepareRedeemOnchainFundsRequest> + UnwindSafe,
668) {
669    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, PrepareRedeemOnchainFundsResponse, _>(
670        WrapInfo {
671            debug_name: "prepare_redeem_onchain_funds",
672            port: Some(port_),
673            mode: FfiCallMode::Normal,
674        },
675        move || {
676            let api_req = req.wire2api();
677            move |task_callback| prepare_redeem_onchain_funds(api_req)
678        },
679    )
680}
681fn wire_list_refundables_impl(port_: MessagePort) {
682    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, Vec<SwapInfo>, _>(
683        WrapInfo {
684            debug_name: "list_refundables",
685            port: Some(port_),
686            mode: FfiCallMode::Normal,
687        },
688        move || move |task_callback| list_refundables(),
689    )
690}
691fn wire_prepare_refund_impl(
692    port_: MessagePort,
693    req: impl Wire2Api<PrepareRefundRequest> + UnwindSafe,
694) {
695    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, PrepareRefundResponse, _>(
696        WrapInfo {
697            debug_name: "prepare_refund",
698            port: Some(port_),
699            mode: FfiCallMode::Normal,
700        },
701        move || {
702            let api_req = req.wire2api();
703            move |task_callback| prepare_refund(api_req)
704        },
705    )
706}
707fn wire_refund_impl(port_: MessagePort, req: impl Wire2Api<RefundRequest> + UnwindSafe) {
708    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, RefundResponse, _>(
709        WrapInfo {
710            debug_name: "refund",
711            port: Some(port_),
712            mode: FfiCallMode::Normal,
713        },
714        move || {
715            let api_req = req.wire2api();
716            move |task_callback| refund(api_req)
717        },
718    )
719}
720fn wire_rescan_swaps_impl(port_: MessagePort) {
721    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, (), _>(
722        WrapInfo {
723            debug_name: "rescan_swaps",
724            port: Some(port_),
725            mode: FfiCallMode::Normal,
726        },
727        move || move |task_callback| rescan_swaps(),
728    )
729}
730fn wire_redeem_swap_impl(port_: MessagePort, swap_address: impl Wire2Api<String> + UnwindSafe) {
731    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, (), _>(
732        WrapInfo {
733            debug_name: "redeem_swap",
734            port: Some(port_),
735            mode: FfiCallMode::Normal,
736        },
737        move || {
738            let api_swap_address = swap_address.wire2api();
739            move |task_callback| redeem_swap(api_swap_address)
740        },
741    )
742}
743fn wire_in_progress_swap_impl(port_: MessagePort) {
744    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, Option<SwapInfo>, _>(
745        WrapInfo {
746            debug_name: "in_progress_swap",
747            port: Some(port_),
748            mode: FfiCallMode::Normal,
749        },
750        move || move |task_callback| in_progress_swap(),
751    )
752}
753fn wire_list_swaps_impl(port_: MessagePort, req: impl Wire2Api<ListSwapsRequest> + UnwindSafe) {
754    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, Vec<SwapInfo>, _>(
755        WrapInfo {
756            debug_name: "list_swaps",
757            port: Some(port_),
758            mode: FfiCallMode::Normal,
759        },
760        move || {
761            let api_req = req.wire2api();
762            move |task_callback| list_swaps(api_req)
763        },
764    )
765}
766fn wire_claim_reverse_swap_impl(
767    port_: MessagePort,
768    lockup_address: impl Wire2Api<String> + UnwindSafe,
769) {
770    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, (), _>(
771        WrapInfo {
772            debug_name: "claim_reverse_swap",
773            port: Some(port_),
774            mode: FfiCallMode::Normal,
775        },
776        move || {
777            let api_lockup_address = lockup_address.wire2api();
778            move |task_callback| claim_reverse_swap(api_lockup_address)
779        },
780    )
781}
782fn wire_open_channel_fee_impl(
783    port_: MessagePort,
784    req: impl Wire2Api<OpenChannelFeeRequest> + UnwindSafe,
785) {
786    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, OpenChannelFeeResponse, _>(
787        WrapInfo {
788            debug_name: "open_channel_fee",
789            port: Some(port_),
790            mode: FfiCallMode::Normal,
791        },
792        move || {
793            let api_req = req.wire2api();
794            move |task_callback| open_channel_fee(api_req)
795        },
796    )
797}
798fn wire_fetch_reverse_swap_fees_impl(
799    port_: MessagePort,
800    req: impl Wire2Api<ReverseSwapFeesRequest> + UnwindSafe,
801) {
802    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, ReverseSwapPairInfo, _>(
803        WrapInfo {
804            debug_name: "fetch_reverse_swap_fees",
805            port: Some(port_),
806            mode: FfiCallMode::Normal,
807        },
808        move || {
809            let api_req = req.wire2api();
810            move |task_callback| fetch_reverse_swap_fees(api_req)
811        },
812    )
813}
814fn wire_onchain_payment_limits_impl(port_: MessagePort) {
815    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, OnchainPaymentLimitsResponse, _>(
816        WrapInfo {
817            debug_name: "onchain_payment_limits",
818            port: Some(port_),
819            mode: FfiCallMode::Normal,
820        },
821        move || move |task_callback| onchain_payment_limits(),
822    )
823}
824fn wire_prepare_onchain_payment_impl(
825    port_: MessagePort,
826    req: impl Wire2Api<PrepareOnchainPaymentRequest> + UnwindSafe,
827) {
828    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, PrepareOnchainPaymentResponse, _>(
829        WrapInfo {
830            debug_name: "prepare_onchain_payment",
831            port: Some(port_),
832            mode: FfiCallMode::Normal,
833        },
834        move || {
835            let api_req = req.wire2api();
836            move |task_callback| prepare_onchain_payment(api_req)
837        },
838    )
839}
840fn wire_in_progress_onchain_payments_impl(port_: MessagePort) {
841    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, Vec<ReverseSwapInfo>, _>(
842        WrapInfo {
843            debug_name: "in_progress_onchain_payments",
844            port: Some(port_),
845            mode: FfiCallMode::Normal,
846        },
847        move || move |task_callback| in_progress_onchain_payments(),
848    )
849}
850fn wire_recommended_fees_impl(port_: MessagePort) {
851    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, RecommendedFees, _>(
852        WrapInfo {
853            debug_name: "recommended_fees",
854            port: Some(port_),
855            mode: FfiCallMode::Normal,
856        },
857        move || move |task_callback| recommended_fees(),
858    )
859}
860fn wire_execute_command_impl(port_: MessagePort, command: impl Wire2Api<String> + UnwindSafe) {
861    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, String, _>(
862        WrapInfo {
863            debug_name: "execute_command",
864            port: Some(port_),
865            mode: FfiCallMode::Normal,
866        },
867        move || {
868            let api_command = command.wire2api();
869            move |task_callback| execute_command(api_command)
870        },
871    )
872}
873fn wire_generate_diagnostic_data_impl(port_: MessagePort) {
874    FLUTTER_RUST_BRIDGE_HANDLER.wrap::<_, _, _, String, _>(
875        WrapInfo {
876            debug_name: "generate_diagnostic_data",
877            port: Some(port_),
878            mode: FfiCallMode::Normal,
879        },
880        move || move |task_callback| generate_diagnostic_data(),
881    )
882}
883// Section: wrapper structs
884
885#[derive(Clone)]
886pub struct mirror_AesSuccessActionDataDecrypted(AesSuccessActionDataDecrypted);
887
888#[derive(Clone)]
889pub struct mirror_AesSuccessActionDataResult(AesSuccessActionDataResult);
890
891#[derive(Clone)]
892pub struct mirror_BitcoinAddressData(BitcoinAddressData);
893
894#[derive(Clone)]
895pub struct mirror_CurrencyInfo(CurrencyInfo);
896
897#[derive(Clone)]
898pub struct mirror_FiatCurrency(FiatCurrency);
899
900#[derive(Clone)]
901pub struct mirror_InputType(InputType);
902
903#[derive(Clone)]
904pub struct mirror_LNInvoice(LNInvoice);
905
906#[derive(Clone)]
907pub struct mirror_LnUrlAuthRequestData(LnUrlAuthRequestData);
908
909#[derive(Clone)]
910pub struct mirror_LnUrlCallbackStatus(LnUrlCallbackStatus);
911
912#[derive(Clone)]
913pub struct mirror_LnUrlErrorData(LnUrlErrorData);
914
915#[derive(Clone)]
916pub struct mirror_LnUrlPayErrorData(LnUrlPayErrorData);
917
918#[derive(Clone)]
919pub struct mirror_LnUrlPayRequestData(LnUrlPayRequestData);
920
921#[derive(Clone)]
922pub struct mirror_LnUrlWithdrawRequestData(LnUrlWithdrawRequestData);
923
924#[derive(Clone)]
925pub struct mirror_LnUrlWithdrawResult(LnUrlWithdrawResult);
926
927#[derive(Clone)]
928pub struct mirror_LnUrlWithdrawSuccessData(LnUrlWithdrawSuccessData);
929
930#[derive(Clone)]
931pub struct mirror_LocaleOverrides(LocaleOverrides);
932
933#[derive(Clone)]
934pub struct mirror_LocalizedName(LocalizedName);
935
936#[derive(Clone)]
937pub struct mirror_MessageSuccessActionData(MessageSuccessActionData);
938
939#[derive(Clone)]
940pub struct mirror_Network(Network);
941
942#[derive(Clone)]
943pub struct mirror_Rate(Rate);
944
945#[derive(Clone)]
946pub struct mirror_RouteHint(RouteHint);
947
948#[derive(Clone)]
949pub struct mirror_RouteHintHop(RouteHintHop);
950
951#[derive(Clone)]
952pub struct mirror_SuccessActionProcessed(SuccessActionProcessed);
953
954#[derive(Clone)]
955pub struct mirror_Symbol(Symbol);
956
957#[derive(Clone)]
958pub struct mirror_UrlSuccessActionData(UrlSuccessActionData);
959
960// Section: static checks
961
962const _: fn() = || {
963    {
964        let AesSuccessActionDataDecrypted = None::<AesSuccessActionDataDecrypted>.unwrap();
965        let _: String = AesSuccessActionDataDecrypted.description;
966        let _: String = AesSuccessActionDataDecrypted.plaintext;
967    }
968    match None::<AesSuccessActionDataResult>.unwrap() {
969        AesSuccessActionDataResult::Decrypted { data } => {
970            let _: AesSuccessActionDataDecrypted = data;
971        }
972        AesSuccessActionDataResult::ErrorStatus { reason } => {
973            let _: String = reason;
974        }
975    }
976    {
977        let BitcoinAddressData = None::<BitcoinAddressData>.unwrap();
978        let _: String = BitcoinAddressData.address;
979        let _: Network = BitcoinAddressData.network;
980        let _: Option<u64> = BitcoinAddressData.amount_sat;
981        let _: Option<String> = BitcoinAddressData.label;
982        let _: Option<String> = BitcoinAddressData.message;
983    }
984    {
985        let CurrencyInfo = None::<CurrencyInfo>.unwrap();
986        let _: String = CurrencyInfo.name;
987        let _: u32 = CurrencyInfo.fraction_size;
988        let _: Option<u32> = CurrencyInfo.spacing;
989        let _: Option<Symbol> = CurrencyInfo.symbol;
990        let _: Option<Symbol> = CurrencyInfo.uniq_symbol;
991        let _: Vec<LocalizedName> = CurrencyInfo.localized_name;
992        let _: Vec<LocaleOverrides> = CurrencyInfo.locale_overrides;
993    }
994    {
995        let FiatCurrency = None::<FiatCurrency>.unwrap();
996        let _: String = FiatCurrency.id;
997        let _: CurrencyInfo = FiatCurrency.info;
998    }
999    match None::<InputType>.unwrap() {
1000        InputType::BitcoinAddress { address } => {
1001            let _: BitcoinAddressData = address;
1002        }
1003        InputType::Bolt11 { invoice } => {
1004            let _: LNInvoice = invoice;
1005        }
1006        InputType::NodeId { node_id } => {
1007            let _: String = node_id;
1008        }
1009        InputType::Url { url } => {
1010            let _: String = url;
1011        }
1012        InputType::LnUrlPay {
1013            data,
1014            bip353_address,
1015        } => {
1016            let _: LnUrlPayRequestData = data;
1017            let _: Option<String> = bip353_address;
1018        }
1019        InputType::LnUrlWithdraw { data } => {
1020            let _: LnUrlWithdrawRequestData = data;
1021        }
1022        InputType::LnUrlAuth { data } => {
1023            let _: LnUrlAuthRequestData = data;
1024        }
1025        InputType::LnUrlError { data } => {
1026            let _: LnUrlErrorData = data;
1027        }
1028    }
1029    {
1030        let LNInvoice = None::<LNInvoice>.unwrap();
1031        let _: String = LNInvoice.bolt11;
1032        let _: Network = LNInvoice.network;
1033        let _: String = LNInvoice.payee_pubkey;
1034        let _: String = LNInvoice.payment_hash;
1035        let _: Option<String> = LNInvoice.description;
1036        let _: Option<String> = LNInvoice.description_hash;
1037        let _: Option<u64> = LNInvoice.amount_msat;
1038        let _: u64 = LNInvoice.timestamp;
1039        let _: u64 = LNInvoice.expiry;
1040        let _: Vec<RouteHint> = LNInvoice.routing_hints;
1041        let _: Vec<u8> = LNInvoice.payment_secret;
1042        let _: u64 = LNInvoice.min_final_cltv_expiry_delta;
1043    }
1044    {
1045        let LnUrlAuthRequestData = None::<LnUrlAuthRequestData>.unwrap();
1046        let _: String = LnUrlAuthRequestData.k1;
1047        let _: Option<String> = LnUrlAuthRequestData.action;
1048        let _: String = LnUrlAuthRequestData.domain;
1049        let _: String = LnUrlAuthRequestData.url;
1050    }
1051    match None::<LnUrlCallbackStatus>.unwrap() {
1052        LnUrlCallbackStatus::Ok => {}
1053        LnUrlCallbackStatus::ErrorStatus { data } => {
1054            let _: LnUrlErrorData = data;
1055        }
1056    }
1057    {
1058        let LnUrlErrorData = None::<LnUrlErrorData>.unwrap();
1059        let _: String = LnUrlErrorData.reason;
1060    }
1061    {
1062        let LnUrlPayErrorData = None::<LnUrlPayErrorData>.unwrap();
1063        let _: String = LnUrlPayErrorData.payment_hash;
1064        let _: String = LnUrlPayErrorData.reason;
1065    }
1066    {
1067        let LnUrlPayRequestData = None::<LnUrlPayRequestData>.unwrap();
1068        let _: String = LnUrlPayRequestData.callback;
1069        let _: u64 = LnUrlPayRequestData.min_sendable;
1070        let _: u64 = LnUrlPayRequestData.max_sendable;
1071        let _: String = LnUrlPayRequestData.metadata_str;
1072        let _: u16 = LnUrlPayRequestData.comment_allowed;
1073        let _: String = LnUrlPayRequestData.domain;
1074        let _: bool = LnUrlPayRequestData.allows_nostr;
1075        let _: Option<String> = LnUrlPayRequestData.nostr_pubkey;
1076        let _: Option<String> = LnUrlPayRequestData.ln_address;
1077    }
1078    {
1079        let LnUrlWithdrawRequestData = None::<LnUrlWithdrawRequestData>.unwrap();
1080        let _: String = LnUrlWithdrawRequestData.callback;
1081        let _: String = LnUrlWithdrawRequestData.k1;
1082        let _: String = LnUrlWithdrawRequestData.default_description;
1083        let _: u64 = LnUrlWithdrawRequestData.min_withdrawable;
1084        let _: u64 = LnUrlWithdrawRequestData.max_withdrawable;
1085    }
1086    match None::<LnUrlWithdrawResult>.unwrap() {
1087        LnUrlWithdrawResult::Ok { data } => {
1088            let _: LnUrlWithdrawSuccessData = data;
1089        }
1090        LnUrlWithdrawResult::Timeout { data } => {
1091            let _: LnUrlWithdrawSuccessData = data;
1092        }
1093        LnUrlWithdrawResult::ErrorStatus { data } => {
1094            let _: LnUrlErrorData = data;
1095        }
1096    }
1097    {
1098        let LnUrlWithdrawSuccessData = None::<LnUrlWithdrawSuccessData>.unwrap();
1099        let _: LNInvoice = LnUrlWithdrawSuccessData.invoice;
1100    }
1101    {
1102        let LocaleOverrides = None::<LocaleOverrides>.unwrap();
1103        let _: String = LocaleOverrides.locale;
1104        let _: Option<u32> = LocaleOverrides.spacing;
1105        let _: Symbol = LocaleOverrides.symbol;
1106    }
1107    {
1108        let LocalizedName = None::<LocalizedName>.unwrap();
1109        let _: String = LocalizedName.locale;
1110        let _: String = LocalizedName.name;
1111    }
1112    {
1113        let MessageSuccessActionData = None::<MessageSuccessActionData>.unwrap();
1114        let _: String = MessageSuccessActionData.message;
1115    }
1116    match None::<Network>.unwrap() {
1117        Network::Bitcoin => {}
1118        Network::Testnet => {}
1119        Network::Signet => {}
1120        Network::Regtest => {}
1121    }
1122    {
1123        let Rate = None::<Rate>.unwrap();
1124        let _: String = Rate.coin;
1125        let _: f64 = Rate.value;
1126    }
1127    {
1128        let RouteHint = None::<RouteHint>.unwrap();
1129        let _: Vec<RouteHintHop> = RouteHint.hops;
1130    }
1131    {
1132        let RouteHintHop = None::<RouteHintHop>.unwrap();
1133        let _: String = RouteHintHop.src_node_id;
1134        let _: String = RouteHintHop.short_channel_id;
1135        let _: u32 = RouteHintHop.fees_base_msat;
1136        let _: u32 = RouteHintHop.fees_proportional_millionths;
1137        let _: u64 = RouteHintHop.cltv_expiry_delta;
1138        let _: Option<u64> = RouteHintHop.htlc_minimum_msat;
1139        let _: Option<u64> = RouteHintHop.htlc_maximum_msat;
1140    }
1141    match None::<SuccessActionProcessed>.unwrap() {
1142        SuccessActionProcessed::Aes { result } => {
1143            let _: AesSuccessActionDataResult = result;
1144        }
1145        SuccessActionProcessed::Message { data } => {
1146            let _: MessageSuccessActionData = data;
1147        }
1148        SuccessActionProcessed::Url { data } => {
1149            let _: UrlSuccessActionData = data;
1150        }
1151    }
1152    {
1153        let Symbol = None::<Symbol>.unwrap();
1154        let _: Option<String> = Symbol.grapheme;
1155        let _: Option<String> = Symbol.template;
1156        let _: Option<bool> = Symbol.rtl;
1157        let _: Option<u32> = Symbol.position;
1158    }
1159    {
1160        let UrlSuccessActionData = None::<UrlSuccessActionData>.unwrap();
1161        let _: String = UrlSuccessActionData.description;
1162        let _: String = UrlSuccessActionData.url;
1163    }
1164};
1165// Section: allocate functions
1166
1167// Section: related functions
1168
1169// Section: impl Wire2Api
1170
1171pub trait Wire2Api<T> {
1172    fn wire2api(self) -> T;
1173}
1174
1175impl<T, S> Wire2Api<Option<T>> for *mut S
1176where
1177    *mut S: Wire2Api<T>,
1178{
1179    fn wire2api(self) -> Option<T> {
1180        (!self.is_null()).then(|| self.wire2api())
1181    }
1182}
1183
1184impl Wire2Api<bool> for bool {
1185    fn wire2api(self) -> bool {
1186        self
1187    }
1188}
1189
1190impl Wire2Api<BuyBitcoinProvider> for i32 {
1191    fn wire2api(self) -> BuyBitcoinProvider {
1192        match self {
1193            0 => BuyBitcoinProvider::Moonpay,
1194            _ => unreachable!("Invalid variant for BuyBitcoinProvider: {}", self),
1195        }
1196    }
1197}
1198
1199impl Wire2Api<EnvironmentType> for i32 {
1200    fn wire2api(self) -> EnvironmentType {
1201        match self {
1202            0 => EnvironmentType::Production,
1203            1 => EnvironmentType::Staging,
1204            _ => unreachable!("Invalid variant for EnvironmentType: {}", self),
1205        }
1206    }
1207}
1208impl Wire2Api<f64> for f64 {
1209    fn wire2api(self) -> f64 {
1210        self
1211    }
1212}
1213
1214impl Wire2Api<i32> for i32 {
1215    fn wire2api(self) -> i32 {
1216        self
1217    }
1218}
1219impl Wire2Api<i64> for i64 {
1220    fn wire2api(self) -> i64 {
1221        self
1222    }
1223}
1224
1225impl Wire2Api<Network> for i32 {
1226    fn wire2api(self) -> Network {
1227        match self {
1228            0 => Network::Bitcoin,
1229            1 => Network::Testnet,
1230            2 => Network::Signet,
1231            3 => Network::Regtest,
1232            _ => unreachable!("Invalid variant for Network: {}", self),
1233        }
1234    }
1235}
1236
1237impl Wire2Api<PaymentTypeFilter> for i32 {
1238    fn wire2api(self) -> PaymentTypeFilter {
1239        match self {
1240            0 => PaymentTypeFilter::Sent,
1241            1 => PaymentTypeFilter::Received,
1242            2 => PaymentTypeFilter::ClosedChannel,
1243            _ => unreachable!("Invalid variant for PaymentTypeFilter: {}", self),
1244        }
1245    }
1246}
1247
1248impl Wire2Api<SwapAmountType> for i32 {
1249    fn wire2api(self) -> SwapAmountType {
1250        match self {
1251            0 => SwapAmountType::Send,
1252            1 => SwapAmountType::Receive,
1253            _ => unreachable!("Invalid variant for SwapAmountType: {}", self),
1254        }
1255    }
1256}
1257impl Wire2Api<SwapStatus> for i32 {
1258    fn wire2api(self) -> SwapStatus {
1259        match self {
1260            0 => SwapStatus::Initial,
1261            1 => SwapStatus::WaitingConfirmation,
1262            2 => SwapStatus::Redeemable,
1263            3 => SwapStatus::Redeemed,
1264            4 => SwapStatus::Refundable,
1265            5 => SwapStatus::Completed,
1266            _ => unreachable!("Invalid variant for SwapStatus: {}", self),
1267        }
1268    }
1269}
1270
1271impl Wire2Api<u16> for u16 {
1272    fn wire2api(self) -> u16 {
1273        self
1274    }
1275}
1276impl Wire2Api<u32> for u32 {
1277    fn wire2api(self) -> u32 {
1278        self
1279    }
1280}
1281impl Wire2Api<u64> for u64 {
1282    fn wire2api(self) -> u64 {
1283        self
1284    }
1285}
1286impl Wire2Api<u8> for u8 {
1287    fn wire2api(self) -> u8 {
1288        self
1289    }
1290}
1291
1292// Section: impl IntoDart
1293
1294impl support::IntoDart for mirror_AesSuccessActionDataDecrypted {
1295    fn into_dart(self) -> support::DartAbi {
1296        vec![
1297            self.0.description.into_into_dart().into_dart(),
1298            self.0.plaintext.into_into_dart().into_dart(),
1299        ]
1300        .into_dart()
1301    }
1302}
1303impl support::IntoDartExceptPrimitive for mirror_AesSuccessActionDataDecrypted {}
1304impl rust2dart::IntoIntoDart<mirror_AesSuccessActionDataDecrypted>
1305    for AesSuccessActionDataDecrypted
1306{
1307    fn into_into_dart(self) -> mirror_AesSuccessActionDataDecrypted {
1308        mirror_AesSuccessActionDataDecrypted(self)
1309    }
1310}
1311
1312impl support::IntoDart for mirror_AesSuccessActionDataResult {
1313    fn into_dart(self) -> support::DartAbi {
1314        match self.0 {
1315            AesSuccessActionDataResult::Decrypted { data } => {
1316                vec![0.into_dart(), data.into_into_dart().into_dart()]
1317            }
1318            AesSuccessActionDataResult::ErrorStatus { reason } => {
1319                vec![1.into_dart(), reason.into_into_dart().into_dart()]
1320            }
1321        }
1322        .into_dart()
1323    }
1324}
1325impl support::IntoDartExceptPrimitive for mirror_AesSuccessActionDataResult {}
1326impl rust2dart::IntoIntoDart<mirror_AesSuccessActionDataResult> for AesSuccessActionDataResult {
1327    fn into_into_dart(self) -> mirror_AesSuccessActionDataResult {
1328        mirror_AesSuccessActionDataResult(self)
1329    }
1330}
1331
1332impl support::IntoDart for BackupFailedData {
1333    fn into_dart(self) -> support::DartAbi {
1334        vec![self.error.into_into_dart().into_dart()].into_dart()
1335    }
1336}
1337impl support::IntoDartExceptPrimitive for BackupFailedData {}
1338impl rust2dart::IntoIntoDart<BackupFailedData> for BackupFailedData {
1339    fn into_into_dart(self) -> Self {
1340        self
1341    }
1342}
1343
1344impl support::IntoDart for BackupStatus {
1345    fn into_dart(self) -> support::DartAbi {
1346        vec![
1347            self.backed_up.into_into_dart().into_dart(),
1348            self.last_backup_time.into_dart(),
1349        ]
1350        .into_dart()
1351    }
1352}
1353impl support::IntoDartExceptPrimitive for BackupStatus {}
1354impl rust2dart::IntoIntoDart<BackupStatus> for BackupStatus {
1355    fn into_into_dart(self) -> Self {
1356        self
1357    }
1358}
1359
1360impl support::IntoDart for mirror_BitcoinAddressData {
1361    fn into_dart(self) -> support::DartAbi {
1362        vec![
1363            self.0.address.into_into_dart().into_dart(),
1364            self.0.network.into_into_dart().into_dart(),
1365            self.0.amount_sat.into_dart(),
1366            self.0.label.into_dart(),
1367            self.0.message.into_dart(),
1368        ]
1369        .into_dart()
1370    }
1371}
1372impl support::IntoDartExceptPrimitive for mirror_BitcoinAddressData {}
1373impl rust2dart::IntoIntoDart<mirror_BitcoinAddressData> for BitcoinAddressData {
1374    fn into_into_dart(self) -> mirror_BitcoinAddressData {
1375        mirror_BitcoinAddressData(self)
1376    }
1377}
1378
1379impl support::IntoDart for BreezEvent {
1380    fn into_dart(self) -> support::DartAbi {
1381        match self {
1382            Self::NewBlock { block } => vec![0.into_dart(), block.into_into_dart().into_dart()],
1383            Self::InvoicePaid { details } => {
1384                vec![1.into_dart(), details.into_into_dart().into_dart()]
1385            }
1386            Self::Synced => vec![2.into_dart()],
1387            Self::PaymentSucceed { details } => {
1388                vec![3.into_dart(), details.into_into_dart().into_dart()]
1389            }
1390            Self::PaymentFailed { details } => {
1391                vec![4.into_dart(), details.into_into_dart().into_dart()]
1392            }
1393            Self::BackupStarted => vec![5.into_dart()],
1394            Self::BackupSucceeded => vec![6.into_dart()],
1395            Self::BackupFailed { details } => {
1396                vec![7.into_dart(), details.into_into_dart().into_dart()]
1397            }
1398            Self::ReverseSwapUpdated { details } => {
1399                vec![8.into_dart(), details.into_into_dart().into_dart()]
1400            }
1401            Self::SwapUpdated { details } => {
1402                vec![9.into_dart(), details.into_into_dart().into_dart()]
1403            }
1404        }
1405        .into_dart()
1406    }
1407}
1408impl support::IntoDartExceptPrimitive for BreezEvent {}
1409impl rust2dart::IntoIntoDart<BreezEvent> for BreezEvent {
1410    fn into_into_dart(self) -> Self {
1411        self
1412    }
1413}
1414
1415impl support::IntoDart for BuyBitcoinResponse {
1416    fn into_dart(self) -> support::DartAbi {
1417        vec![
1418            self.url.into_into_dart().into_dart(),
1419            self.opening_fee_params.into_dart(),
1420        ]
1421        .into_dart()
1422    }
1423}
1424impl support::IntoDartExceptPrimitive for BuyBitcoinResponse {}
1425impl rust2dart::IntoIntoDart<BuyBitcoinResponse> for BuyBitcoinResponse {
1426    fn into_into_dart(self) -> Self {
1427        self
1428    }
1429}
1430
1431impl support::IntoDart for ChannelState {
1432    fn into_dart(self) -> support::DartAbi {
1433        match self {
1434            Self::PendingOpen => 0,
1435            Self::Opened => 1,
1436            Self::PendingClose => 2,
1437            Self::Closed => 3,
1438        }
1439        .into_dart()
1440    }
1441}
1442impl support::IntoDartExceptPrimitive for ChannelState {}
1443impl rust2dart::IntoIntoDart<ChannelState> for ChannelState {
1444    fn into_into_dart(self) -> Self {
1445        self
1446    }
1447}
1448
1449impl support::IntoDart for CheckMessageResponse {
1450    fn into_dart(self) -> support::DartAbi {
1451        vec![self.is_valid.into_into_dart().into_dart()].into_dart()
1452    }
1453}
1454impl support::IntoDartExceptPrimitive for CheckMessageResponse {}
1455impl rust2dart::IntoIntoDart<CheckMessageResponse> for CheckMessageResponse {
1456    fn into_into_dart(self) -> Self {
1457        self
1458    }
1459}
1460
1461impl support::IntoDart for ClosedChannelPaymentDetails {
1462    fn into_dart(self) -> support::DartAbi {
1463        vec![
1464            self.state.into_into_dart().into_dart(),
1465            self.funding_txid.into_into_dart().into_dart(),
1466            self.short_channel_id.into_dart(),
1467            self.closing_txid.into_dart(),
1468        ]
1469        .into_dart()
1470    }
1471}
1472impl support::IntoDartExceptPrimitive for ClosedChannelPaymentDetails {}
1473impl rust2dart::IntoIntoDart<ClosedChannelPaymentDetails> for ClosedChannelPaymentDetails {
1474    fn into_into_dart(self) -> Self {
1475        self
1476    }
1477}
1478
1479impl support::IntoDart for Config {
1480    fn into_dart(self) -> support::DartAbi {
1481        vec![
1482            self.breezserver.into_into_dart().into_dart(),
1483            self.chainnotifier_url.into_into_dart().into_dart(),
1484            self.mempoolspace_url.into_dart(),
1485            self.working_dir.into_into_dart().into_dart(),
1486            self.network.into_into_dart().into_dart(),
1487            self.payment_timeout_sec.into_into_dart().into_dart(),
1488            self.default_lsp_id.into_dart(),
1489            self.api_key.into_dart(),
1490            self.maxfee_percent.into_into_dart().into_dart(),
1491            self.exemptfee_msat.into_into_dart().into_dart(),
1492            self.node_config.into_into_dart().into_dart(),
1493        ]
1494        .into_dart()
1495    }
1496}
1497impl support::IntoDartExceptPrimitive for Config {}
1498impl rust2dart::IntoIntoDart<Config> for Config {
1499    fn into_into_dart(self) -> Self {
1500        self
1501    }
1502}
1503
1504impl support::IntoDart for mirror_CurrencyInfo {
1505    fn into_dart(self) -> support::DartAbi {
1506        vec![
1507            self.0.name.into_into_dart().into_dart(),
1508            self.0.fraction_size.into_into_dart().into_dart(),
1509            self.0.spacing.into_dart(),
1510            self.0.symbol.map(|v| mirror_Symbol(v)).into_dart(),
1511            self.0.uniq_symbol.map(|v| mirror_Symbol(v)).into_dart(),
1512            self.0.localized_name.into_into_dart().into_dart(),
1513            self.0.locale_overrides.into_into_dart().into_dart(),
1514        ]
1515        .into_dart()
1516    }
1517}
1518impl support::IntoDartExceptPrimitive for mirror_CurrencyInfo {}
1519impl rust2dart::IntoIntoDart<mirror_CurrencyInfo> for CurrencyInfo {
1520    fn into_into_dart(self) -> mirror_CurrencyInfo {
1521        mirror_CurrencyInfo(self)
1522    }
1523}
1524
1525impl support::IntoDart for mirror_FiatCurrency {
1526    fn into_dart(self) -> support::DartAbi {
1527        vec![
1528            self.0.id.into_into_dart().into_dart(),
1529            self.0.info.into_into_dart().into_dart(),
1530        ]
1531        .into_dart()
1532    }
1533}
1534impl support::IntoDartExceptPrimitive for mirror_FiatCurrency {}
1535impl rust2dart::IntoIntoDart<mirror_FiatCurrency> for FiatCurrency {
1536    fn into_into_dart(self) -> mirror_FiatCurrency {
1537        mirror_FiatCurrency(self)
1538    }
1539}
1540
1541impl support::IntoDart for GreenlightCredentials {
1542    fn into_dart(self) -> support::DartAbi {
1543        vec![
1544            self.developer_key.into_into_dart().into_dart(),
1545            self.developer_cert.into_into_dart().into_dart(),
1546        ]
1547        .into_dart()
1548    }
1549}
1550impl support::IntoDartExceptPrimitive for GreenlightCredentials {}
1551impl rust2dart::IntoIntoDart<GreenlightCredentials> for GreenlightCredentials {
1552    fn into_into_dart(self) -> Self {
1553        self
1554    }
1555}
1556
1557impl support::IntoDart for GreenlightDeviceCredentials {
1558    fn into_dart(self) -> support::DartAbi {
1559        vec![self.device.into_into_dart().into_dart()].into_dart()
1560    }
1561}
1562impl support::IntoDartExceptPrimitive for GreenlightDeviceCredentials {}
1563impl rust2dart::IntoIntoDart<GreenlightDeviceCredentials> for GreenlightDeviceCredentials {
1564    fn into_into_dart(self) -> Self {
1565        self
1566    }
1567}
1568
1569impl support::IntoDart for GreenlightNodeConfig {
1570    fn into_dart(self) -> support::DartAbi {
1571        vec![
1572            self.partner_credentials.into_dart(),
1573            self.invite_code.into_dart(),
1574        ]
1575        .into_dart()
1576    }
1577}
1578impl support::IntoDartExceptPrimitive for GreenlightNodeConfig {}
1579impl rust2dart::IntoIntoDart<GreenlightNodeConfig> for GreenlightNodeConfig {
1580    fn into_into_dart(self) -> Self {
1581        self
1582    }
1583}
1584
1585impl support::IntoDart for HealthCheckStatus {
1586    fn into_dart(self) -> support::DartAbi {
1587        match self {
1588            Self::Operational => 0,
1589            Self::Maintenance => 1,
1590            Self::ServiceDisruption => 2,
1591        }
1592        .into_dart()
1593    }
1594}
1595impl support::IntoDartExceptPrimitive for HealthCheckStatus {}
1596impl rust2dart::IntoIntoDart<HealthCheckStatus> for HealthCheckStatus {
1597    fn into_into_dart(self) -> Self {
1598        self
1599    }
1600}
1601
1602impl support::IntoDart for mirror_InputType {
1603    fn into_dart(self) -> support::DartAbi {
1604        match self.0 {
1605            InputType::BitcoinAddress { address } => {
1606                vec![0.into_dart(), address.into_into_dart().into_dart()]
1607            }
1608            InputType::Bolt11 { invoice } => {
1609                vec![1.into_dart(), invoice.into_into_dart().into_dart()]
1610            }
1611            InputType::NodeId { node_id } => {
1612                vec![2.into_dart(), node_id.into_into_dart().into_dart()]
1613            }
1614            InputType::Url { url } => vec![3.into_dart(), url.into_into_dart().into_dart()],
1615            InputType::LnUrlPay {
1616                data,
1617                bip353_address,
1618            } => vec![
1619                4.into_dart(),
1620                data.into_into_dart().into_dart(),
1621                bip353_address.into_dart(),
1622            ],
1623            InputType::LnUrlWithdraw { data } => {
1624                vec![5.into_dart(), data.into_into_dart().into_dart()]
1625            }
1626            InputType::LnUrlAuth { data } => vec![6.into_dart(), data.into_into_dart().into_dart()],
1627            InputType::LnUrlError { data } => {
1628                vec![7.into_dart(), data.into_into_dart().into_dart()]
1629            }
1630        }
1631        .into_dart()
1632    }
1633}
1634impl support::IntoDartExceptPrimitive for mirror_InputType {}
1635impl rust2dart::IntoIntoDart<mirror_InputType> for InputType {
1636    fn into_into_dart(self) -> mirror_InputType {
1637        mirror_InputType(self)
1638    }
1639}
1640
1641impl support::IntoDart for InvoicePaidDetails {
1642    fn into_dart(self) -> support::DartAbi {
1643        vec![
1644            self.payment_hash.into_into_dart().into_dart(),
1645            self.bolt11.into_into_dart().into_dart(),
1646            self.payment.into_dart(),
1647        ]
1648        .into_dart()
1649    }
1650}
1651impl support::IntoDartExceptPrimitive for InvoicePaidDetails {}
1652impl rust2dart::IntoIntoDart<InvoicePaidDetails> for InvoicePaidDetails {
1653    fn into_into_dart(self) -> Self {
1654        self
1655    }
1656}
1657
1658impl support::IntoDart for mirror_LNInvoice {
1659    fn into_dart(self) -> support::DartAbi {
1660        vec![
1661            self.0.bolt11.into_into_dart().into_dart(),
1662            self.0.network.into_into_dart().into_dart(),
1663            self.0.payee_pubkey.into_into_dart().into_dart(),
1664            self.0.payment_hash.into_into_dart().into_dart(),
1665            self.0.description.into_dart(),
1666            self.0.description_hash.into_dart(),
1667            self.0.amount_msat.into_dart(),
1668            self.0.timestamp.into_into_dart().into_dart(),
1669            self.0.expiry.into_into_dart().into_dart(),
1670            self.0.routing_hints.into_into_dart().into_dart(),
1671            self.0.payment_secret.into_into_dart().into_dart(),
1672            self.0
1673                .min_final_cltv_expiry_delta
1674                .into_into_dart()
1675                .into_dart(),
1676        ]
1677        .into_dart()
1678    }
1679}
1680impl support::IntoDartExceptPrimitive for mirror_LNInvoice {}
1681impl rust2dart::IntoIntoDart<mirror_LNInvoice> for LNInvoice {
1682    fn into_into_dart(self) -> mirror_LNInvoice {
1683        mirror_LNInvoice(self)
1684    }
1685}
1686
1687impl support::IntoDart for LnPaymentDetails {
1688    fn into_dart(self) -> support::DartAbi {
1689        vec![
1690            self.payment_hash.into_into_dart().into_dart(),
1691            self.label.into_into_dart().into_dart(),
1692            self.destination_pubkey.into_into_dart().into_dart(),
1693            self.payment_preimage.into_into_dart().into_dart(),
1694            self.keysend.into_into_dart().into_dart(),
1695            self.bolt11.into_into_dart().into_dart(),
1696            self.open_channel_bolt11.into_dart(),
1697            self.lnurl_success_action
1698                .map(|v| mirror_SuccessActionProcessed(v))
1699                .into_dart(),
1700            self.lnurl_pay_domain.into_dart(),
1701            self.lnurl_pay_comment.into_dart(),
1702            self.ln_address.into_dart(),
1703            self.lnurl_metadata.into_dart(),
1704            self.lnurl_withdraw_endpoint.into_dart(),
1705            self.swap_info.into_dart(),
1706            self.reverse_swap_info.into_dart(),
1707            self.pending_expiration_block.into_dart(),
1708        ]
1709        .into_dart()
1710    }
1711}
1712impl support::IntoDartExceptPrimitive for LnPaymentDetails {}
1713impl rust2dart::IntoIntoDart<LnPaymentDetails> for LnPaymentDetails {
1714    fn into_into_dart(self) -> Self {
1715        self
1716    }
1717}
1718
1719impl support::IntoDart for mirror_LnUrlAuthRequestData {
1720    fn into_dart(self) -> support::DartAbi {
1721        vec![
1722            self.0.k1.into_into_dart().into_dart(),
1723            self.0.action.into_dart(),
1724            self.0.domain.into_into_dart().into_dart(),
1725            self.0.url.into_into_dart().into_dart(),
1726        ]
1727        .into_dart()
1728    }
1729}
1730impl support::IntoDartExceptPrimitive for mirror_LnUrlAuthRequestData {}
1731impl rust2dart::IntoIntoDart<mirror_LnUrlAuthRequestData> for LnUrlAuthRequestData {
1732    fn into_into_dart(self) -> mirror_LnUrlAuthRequestData {
1733        mirror_LnUrlAuthRequestData(self)
1734    }
1735}
1736
1737impl support::IntoDart for mirror_LnUrlCallbackStatus {
1738    fn into_dart(self) -> support::DartAbi {
1739        match self.0 {
1740            LnUrlCallbackStatus::Ok => vec![0.into_dart()],
1741            LnUrlCallbackStatus::ErrorStatus { data } => {
1742                vec![1.into_dart(), data.into_into_dart().into_dart()]
1743            }
1744        }
1745        .into_dart()
1746    }
1747}
1748impl support::IntoDartExceptPrimitive for mirror_LnUrlCallbackStatus {}
1749impl rust2dart::IntoIntoDart<mirror_LnUrlCallbackStatus> for LnUrlCallbackStatus {
1750    fn into_into_dart(self) -> mirror_LnUrlCallbackStatus {
1751        mirror_LnUrlCallbackStatus(self)
1752    }
1753}
1754
1755impl support::IntoDart for mirror_LnUrlErrorData {
1756    fn into_dart(self) -> support::DartAbi {
1757        vec![self.0.reason.into_into_dart().into_dart()].into_dart()
1758    }
1759}
1760impl support::IntoDartExceptPrimitive for mirror_LnUrlErrorData {}
1761impl rust2dart::IntoIntoDart<mirror_LnUrlErrorData> for LnUrlErrorData {
1762    fn into_into_dart(self) -> mirror_LnUrlErrorData {
1763        mirror_LnUrlErrorData(self)
1764    }
1765}
1766
1767impl support::IntoDart for mirror_LnUrlPayErrorData {
1768    fn into_dart(self) -> support::DartAbi {
1769        vec![
1770            self.0.payment_hash.into_into_dart().into_dart(),
1771            self.0.reason.into_into_dart().into_dart(),
1772        ]
1773        .into_dart()
1774    }
1775}
1776impl support::IntoDartExceptPrimitive for mirror_LnUrlPayErrorData {}
1777impl rust2dart::IntoIntoDart<mirror_LnUrlPayErrorData> for LnUrlPayErrorData {
1778    fn into_into_dart(self) -> mirror_LnUrlPayErrorData {
1779        mirror_LnUrlPayErrorData(self)
1780    }
1781}
1782
1783impl support::IntoDart for mirror_LnUrlPayRequestData {
1784    fn into_dart(self) -> support::DartAbi {
1785        vec![
1786            self.0.callback.into_into_dart().into_dart(),
1787            self.0.min_sendable.into_into_dart().into_dart(),
1788            self.0.max_sendable.into_into_dart().into_dart(),
1789            self.0.metadata_str.into_into_dart().into_dart(),
1790            self.0.comment_allowed.into_into_dart().into_dart(),
1791            self.0.domain.into_into_dart().into_dart(),
1792            self.0.allows_nostr.into_into_dart().into_dart(),
1793            self.0.nostr_pubkey.into_dart(),
1794            self.0.ln_address.into_dart(),
1795        ]
1796        .into_dart()
1797    }
1798}
1799impl support::IntoDartExceptPrimitive for mirror_LnUrlPayRequestData {}
1800impl rust2dart::IntoIntoDart<mirror_LnUrlPayRequestData> for LnUrlPayRequestData {
1801    fn into_into_dart(self) -> mirror_LnUrlPayRequestData {
1802        mirror_LnUrlPayRequestData(self)
1803    }
1804}
1805
1806impl support::IntoDart for LnUrlPayResult {
1807    fn into_dart(self) -> support::DartAbi {
1808        match self {
1809            Self::EndpointSuccess { data } => {
1810                vec![0.into_dart(), data.into_into_dart().into_dart()]
1811            }
1812            Self::EndpointError { data } => vec![1.into_dart(), data.into_into_dart().into_dart()],
1813            Self::PayError { data } => vec![2.into_dart(), data.into_into_dart().into_dart()],
1814        }
1815        .into_dart()
1816    }
1817}
1818impl support::IntoDartExceptPrimitive for LnUrlPayResult {}
1819impl rust2dart::IntoIntoDart<LnUrlPayResult> for LnUrlPayResult {
1820    fn into_into_dart(self) -> Self {
1821        self
1822    }
1823}
1824
1825impl support::IntoDart for LnUrlPaySuccessData {
1826    fn into_dart(self) -> support::DartAbi {
1827        vec![
1828            self.payment.into_into_dart().into_dart(),
1829            self.success_action
1830                .map(|v| mirror_SuccessActionProcessed(v))
1831                .into_dart(),
1832        ]
1833        .into_dart()
1834    }
1835}
1836impl support::IntoDartExceptPrimitive for LnUrlPaySuccessData {}
1837impl rust2dart::IntoIntoDart<LnUrlPaySuccessData> for LnUrlPaySuccessData {
1838    fn into_into_dart(self) -> Self {
1839        self
1840    }
1841}
1842
1843impl support::IntoDart for mirror_LnUrlWithdrawRequestData {
1844    fn into_dart(self) -> support::DartAbi {
1845        vec![
1846            self.0.callback.into_into_dart().into_dart(),
1847            self.0.k1.into_into_dart().into_dart(),
1848            self.0.default_description.into_into_dart().into_dart(),
1849            self.0.min_withdrawable.into_into_dart().into_dart(),
1850            self.0.max_withdrawable.into_into_dart().into_dart(),
1851        ]
1852        .into_dart()
1853    }
1854}
1855impl support::IntoDartExceptPrimitive for mirror_LnUrlWithdrawRequestData {}
1856impl rust2dart::IntoIntoDart<mirror_LnUrlWithdrawRequestData> for LnUrlWithdrawRequestData {
1857    fn into_into_dart(self) -> mirror_LnUrlWithdrawRequestData {
1858        mirror_LnUrlWithdrawRequestData(self)
1859    }
1860}
1861
1862impl support::IntoDart for mirror_LnUrlWithdrawResult {
1863    fn into_dart(self) -> support::DartAbi {
1864        match self.0 {
1865            LnUrlWithdrawResult::Ok { data } => {
1866                vec![0.into_dart(), data.into_into_dart().into_dart()]
1867            }
1868            LnUrlWithdrawResult::Timeout { data } => {
1869                vec![1.into_dart(), data.into_into_dart().into_dart()]
1870            }
1871            LnUrlWithdrawResult::ErrorStatus { data } => {
1872                vec![2.into_dart(), data.into_into_dart().into_dart()]
1873            }
1874        }
1875        .into_dart()
1876    }
1877}
1878impl support::IntoDartExceptPrimitive for mirror_LnUrlWithdrawResult {}
1879impl rust2dart::IntoIntoDart<mirror_LnUrlWithdrawResult> for LnUrlWithdrawResult {
1880    fn into_into_dart(self) -> mirror_LnUrlWithdrawResult {
1881        mirror_LnUrlWithdrawResult(self)
1882    }
1883}
1884
1885impl support::IntoDart for mirror_LnUrlWithdrawSuccessData {
1886    fn into_dart(self) -> support::DartAbi {
1887        vec![self.0.invoice.into_into_dart().into_dart()].into_dart()
1888    }
1889}
1890impl support::IntoDartExceptPrimitive for mirror_LnUrlWithdrawSuccessData {}
1891impl rust2dart::IntoIntoDart<mirror_LnUrlWithdrawSuccessData> for LnUrlWithdrawSuccessData {
1892    fn into_into_dart(self) -> mirror_LnUrlWithdrawSuccessData {
1893        mirror_LnUrlWithdrawSuccessData(self)
1894    }
1895}
1896
1897impl support::IntoDart for mirror_LocaleOverrides {
1898    fn into_dart(self) -> support::DartAbi {
1899        vec![
1900            self.0.locale.into_into_dart().into_dart(),
1901            self.0.spacing.into_dart(),
1902            self.0.symbol.into_into_dart().into_dart(),
1903        ]
1904        .into_dart()
1905    }
1906}
1907impl support::IntoDartExceptPrimitive for mirror_LocaleOverrides {}
1908impl rust2dart::IntoIntoDart<mirror_LocaleOverrides> for LocaleOverrides {
1909    fn into_into_dart(self) -> mirror_LocaleOverrides {
1910        mirror_LocaleOverrides(self)
1911    }
1912}
1913
1914impl support::IntoDart for mirror_LocalizedName {
1915    fn into_dart(self) -> support::DartAbi {
1916        vec![
1917            self.0.locale.into_into_dart().into_dart(),
1918            self.0.name.into_into_dart().into_dart(),
1919        ]
1920        .into_dart()
1921    }
1922}
1923impl support::IntoDartExceptPrimitive for mirror_LocalizedName {}
1924impl rust2dart::IntoIntoDart<mirror_LocalizedName> for LocalizedName {
1925    fn into_into_dart(self) -> mirror_LocalizedName {
1926        mirror_LocalizedName(self)
1927    }
1928}
1929
1930impl support::IntoDart for LogEntry {
1931    fn into_dart(self) -> support::DartAbi {
1932        vec![
1933            self.line.into_into_dart().into_dart(),
1934            self.level.into_into_dart().into_dart(),
1935        ]
1936        .into_dart()
1937    }
1938}
1939impl support::IntoDartExceptPrimitive for LogEntry {}
1940impl rust2dart::IntoIntoDart<LogEntry> for LogEntry {
1941    fn into_into_dart(self) -> Self {
1942        self
1943    }
1944}
1945
1946impl support::IntoDart for LspInformation {
1947    fn into_dart(self) -> support::DartAbi {
1948        vec![
1949            self.id.into_into_dart().into_dart(),
1950            self.name.into_into_dart().into_dart(),
1951            self.widget_url.into_into_dart().into_dart(),
1952            self.pubkey.into_into_dart().into_dart(),
1953            self.host.into_into_dart().into_dart(),
1954            self.base_fee_msat.into_into_dart().into_dart(),
1955            self.fee_rate.into_into_dart().into_dart(),
1956            self.time_lock_delta.into_into_dart().into_dart(),
1957            self.min_htlc_msat.into_into_dart().into_dart(),
1958            self.lsp_pubkey.into_into_dart().into_dart(),
1959            self.opening_fee_params_list.into_into_dart().into_dart(),
1960        ]
1961        .into_dart()
1962    }
1963}
1964impl support::IntoDartExceptPrimitive for LspInformation {}
1965impl rust2dart::IntoIntoDart<LspInformation> for LspInformation {
1966    fn into_into_dart(self) -> Self {
1967        self
1968    }
1969}
1970
1971impl support::IntoDart for mirror_MessageSuccessActionData {
1972    fn into_dart(self) -> support::DartAbi {
1973        vec![self.0.message.into_into_dart().into_dart()].into_dart()
1974    }
1975}
1976impl support::IntoDartExceptPrimitive for mirror_MessageSuccessActionData {}
1977impl rust2dart::IntoIntoDart<mirror_MessageSuccessActionData> for MessageSuccessActionData {
1978    fn into_into_dart(self) -> mirror_MessageSuccessActionData {
1979        mirror_MessageSuccessActionData(self)
1980    }
1981}
1982
1983impl support::IntoDart for mirror_Network {
1984    fn into_dart(self) -> support::DartAbi {
1985        match self.0 {
1986            Network::Bitcoin => 0,
1987            Network::Testnet => 1,
1988            Network::Signet => 2,
1989            Network::Regtest => 3,
1990        }
1991        .into_dart()
1992    }
1993}
1994impl support::IntoDartExceptPrimitive for mirror_Network {}
1995impl rust2dart::IntoIntoDart<mirror_Network> for Network {
1996    fn into_into_dart(self) -> mirror_Network {
1997        mirror_Network(self)
1998    }
1999}
2000
2001impl support::IntoDart for NodeConfig {
2002    fn into_dart(self) -> support::DartAbi {
2003        match self {
2004            Self::Greenlight { config } => vec![0.into_dart(), config.into_into_dart().into_dart()],
2005        }
2006        .into_dart()
2007    }
2008}
2009impl support::IntoDartExceptPrimitive for NodeConfig {}
2010impl rust2dart::IntoIntoDart<NodeConfig> for NodeConfig {
2011    fn into_into_dart(self) -> Self {
2012        self
2013    }
2014}
2015
2016impl support::IntoDart for NodeCredentials {
2017    fn into_dart(self) -> support::DartAbi {
2018        match self {
2019            Self::Greenlight { credentials } => {
2020                vec![0.into_dart(), credentials.into_into_dart().into_dart()]
2021            }
2022        }
2023        .into_dart()
2024    }
2025}
2026impl support::IntoDartExceptPrimitive for NodeCredentials {}
2027impl rust2dart::IntoIntoDart<NodeCredentials> for NodeCredentials {
2028    fn into_into_dart(self) -> Self {
2029        self
2030    }
2031}
2032
2033impl support::IntoDart for NodeState {
2034    fn into_dart(self) -> support::DartAbi {
2035        vec![
2036            self.id.into_into_dart().into_dart(),
2037            self.block_height.into_into_dart().into_dart(),
2038            self.channels_balance_msat.into_into_dart().into_dart(),
2039            self.onchain_balance_msat.into_into_dart().into_dart(),
2040            self.pending_onchain_balance_msat
2041                .into_into_dart()
2042                .into_dart(),
2043            self.utxos.into_into_dart().into_dart(),
2044            self.max_payable_msat.into_into_dart().into_dart(),
2045            self.max_receivable_msat.into_into_dart().into_dart(),
2046            self.max_single_payment_amount_msat
2047                .into_into_dart()
2048                .into_dart(),
2049            self.max_chan_reserve_msats.into_into_dart().into_dart(),
2050            self.connected_peers.into_into_dart().into_dart(),
2051            self.max_receivable_single_payment_amount_msat
2052                .into_into_dart()
2053                .into_dart(),
2054            self.total_inbound_liquidity_msats
2055                .into_into_dart()
2056                .into_dart(),
2057        ]
2058        .into_dart()
2059    }
2060}
2061impl support::IntoDartExceptPrimitive for NodeState {}
2062impl rust2dart::IntoIntoDart<NodeState> for NodeState {
2063    fn into_into_dart(self) -> Self {
2064        self
2065    }
2066}
2067
2068impl support::IntoDart for OnchainPaymentLimitsResponse {
2069    fn into_dart(self) -> support::DartAbi {
2070        vec![
2071            self.min_sat.into_into_dart().into_dart(),
2072            self.max_sat.into_into_dart().into_dart(),
2073            self.max_payable_sat.into_into_dart().into_dart(),
2074        ]
2075        .into_dart()
2076    }
2077}
2078impl support::IntoDartExceptPrimitive for OnchainPaymentLimitsResponse {}
2079impl rust2dart::IntoIntoDart<OnchainPaymentLimitsResponse> for OnchainPaymentLimitsResponse {
2080    fn into_into_dart(self) -> Self {
2081        self
2082    }
2083}
2084
2085impl support::IntoDart for OpenChannelFeeResponse {
2086    fn into_dart(self) -> support::DartAbi {
2087        vec![
2088            self.fee_msat.into_dart(),
2089            self.fee_params.into_into_dart().into_dart(),
2090        ]
2091        .into_dart()
2092    }
2093}
2094impl support::IntoDartExceptPrimitive for OpenChannelFeeResponse {}
2095impl rust2dart::IntoIntoDart<OpenChannelFeeResponse> for OpenChannelFeeResponse {
2096    fn into_into_dart(self) -> Self {
2097        self
2098    }
2099}
2100
2101impl support::IntoDart for OpeningFeeParams {
2102    fn into_dart(self) -> support::DartAbi {
2103        vec![
2104            self.min_msat.into_into_dart().into_dart(),
2105            self.proportional.into_into_dart().into_dart(),
2106            self.valid_until.into_into_dart().into_dart(),
2107            self.max_idle_time.into_into_dart().into_dart(),
2108            self.max_client_to_self_delay.into_into_dart().into_dart(),
2109            self.promise.into_into_dart().into_dart(),
2110        ]
2111        .into_dart()
2112    }
2113}
2114impl support::IntoDartExceptPrimitive for OpeningFeeParams {}
2115impl rust2dart::IntoIntoDart<OpeningFeeParams> for OpeningFeeParams {
2116    fn into_into_dart(self) -> Self {
2117        self
2118    }
2119}
2120
2121impl support::IntoDart for OpeningFeeParamsMenu {
2122    fn into_dart(self) -> support::DartAbi {
2123        vec![self.values.into_into_dart().into_dart()].into_dart()
2124    }
2125}
2126impl support::IntoDartExceptPrimitive for OpeningFeeParamsMenu {}
2127impl rust2dart::IntoIntoDart<OpeningFeeParamsMenu> for OpeningFeeParamsMenu {
2128    fn into_into_dart(self) -> Self {
2129        self
2130    }
2131}
2132
2133impl support::IntoDart for PayOnchainResponse {
2134    fn into_dart(self) -> support::DartAbi {
2135        vec![self.reverse_swap_info.into_into_dart().into_dart()].into_dart()
2136    }
2137}
2138impl support::IntoDartExceptPrimitive for PayOnchainResponse {}
2139impl rust2dart::IntoIntoDart<PayOnchainResponse> for PayOnchainResponse {
2140    fn into_into_dart(self) -> Self {
2141        self
2142    }
2143}
2144
2145impl support::IntoDart for Payment {
2146    fn into_dart(self) -> support::DartAbi {
2147        vec![
2148            self.id.into_into_dart().into_dart(),
2149            self.payment_type.into_into_dart().into_dart(),
2150            self.payment_time.into_into_dart().into_dart(),
2151            self.amount_msat.into_into_dart().into_dart(),
2152            self.fee_msat.into_into_dart().into_dart(),
2153            self.status.into_into_dart().into_dart(),
2154            self.error.into_dart(),
2155            self.description.into_dart(),
2156            self.details.into_into_dart().into_dart(),
2157            self.metadata.into_dart(),
2158        ]
2159        .into_dart()
2160    }
2161}
2162impl support::IntoDartExceptPrimitive for Payment {}
2163impl rust2dart::IntoIntoDart<Payment> for Payment {
2164    fn into_into_dart(self) -> Self {
2165        self
2166    }
2167}
2168
2169impl support::IntoDart for PaymentDetails {
2170    fn into_dart(self) -> support::DartAbi {
2171        match self {
2172            Self::Ln { data } => vec![0.into_dart(), data.into_into_dart().into_dart()],
2173            Self::ClosedChannel { data } => vec![1.into_dart(), data.into_into_dart().into_dart()],
2174        }
2175        .into_dart()
2176    }
2177}
2178impl support::IntoDartExceptPrimitive for PaymentDetails {}
2179impl rust2dart::IntoIntoDart<PaymentDetails> for PaymentDetails {
2180    fn into_into_dart(self) -> Self {
2181        self
2182    }
2183}
2184
2185impl support::IntoDart for PaymentFailedData {
2186    fn into_dart(self) -> support::DartAbi {
2187        vec![
2188            self.error.into_into_dart().into_dart(),
2189            self.node_id.into_into_dart().into_dart(),
2190            self.invoice.map(|v| mirror_LNInvoice(v)).into_dart(),
2191            self.label.into_dart(),
2192        ]
2193        .into_dart()
2194    }
2195}
2196impl support::IntoDartExceptPrimitive for PaymentFailedData {}
2197impl rust2dart::IntoIntoDart<PaymentFailedData> for PaymentFailedData {
2198    fn into_into_dart(self) -> Self {
2199        self
2200    }
2201}
2202
2203impl support::IntoDart for PaymentStatus {
2204    fn into_dart(self) -> support::DartAbi {
2205        match self {
2206            Self::Pending => 0,
2207            Self::Complete => 1,
2208            Self::Failed => 2,
2209        }
2210        .into_dart()
2211    }
2212}
2213impl support::IntoDartExceptPrimitive for PaymentStatus {}
2214impl rust2dart::IntoIntoDart<PaymentStatus> for PaymentStatus {
2215    fn into_into_dart(self) -> Self {
2216        self
2217    }
2218}
2219
2220impl support::IntoDart for PaymentType {
2221    fn into_dart(self) -> support::DartAbi {
2222        match self {
2223            Self::Sent => 0,
2224            Self::Received => 1,
2225            Self::ClosedChannel => 2,
2226        }
2227        .into_dart()
2228    }
2229}
2230impl support::IntoDartExceptPrimitive for PaymentType {}
2231impl rust2dart::IntoIntoDart<PaymentType> for PaymentType {
2232    fn into_into_dart(self) -> Self {
2233        self
2234    }
2235}
2236
2237impl support::IntoDart for PrepareOnchainPaymentResponse {
2238    fn into_dart(self) -> support::DartAbi {
2239        vec![
2240            self.fees_hash.into_into_dart().into_dart(),
2241            self.fees_percentage.into_into_dart().into_dart(),
2242            self.fees_lockup.into_into_dart().into_dart(),
2243            self.fees_claim.into_into_dart().into_dart(),
2244            self.sender_amount_sat.into_into_dart().into_dart(),
2245            self.recipient_amount_sat.into_into_dart().into_dart(),
2246            self.total_fees.into_into_dart().into_dart(),
2247        ]
2248        .into_dart()
2249    }
2250}
2251impl support::IntoDartExceptPrimitive for PrepareOnchainPaymentResponse {}
2252impl rust2dart::IntoIntoDart<PrepareOnchainPaymentResponse> for PrepareOnchainPaymentResponse {
2253    fn into_into_dart(self) -> Self {
2254        self
2255    }
2256}
2257
2258impl support::IntoDart for PrepareRedeemOnchainFundsResponse {
2259    fn into_dart(self) -> support::DartAbi {
2260        vec![
2261            self.tx_weight.into_into_dart().into_dart(),
2262            self.tx_fee_sat.into_into_dart().into_dart(),
2263        ]
2264        .into_dart()
2265    }
2266}
2267impl support::IntoDartExceptPrimitive for PrepareRedeemOnchainFundsResponse {}
2268impl rust2dart::IntoIntoDart<PrepareRedeemOnchainFundsResponse>
2269    for PrepareRedeemOnchainFundsResponse
2270{
2271    fn into_into_dart(self) -> Self {
2272        self
2273    }
2274}
2275
2276impl support::IntoDart for PrepareRefundResponse {
2277    fn into_dart(self) -> support::DartAbi {
2278        vec![
2279            self.refund_tx_weight.into_into_dart().into_dart(),
2280            self.refund_tx_fee_sat.into_into_dart().into_dart(),
2281        ]
2282        .into_dart()
2283    }
2284}
2285impl support::IntoDartExceptPrimitive for PrepareRefundResponse {}
2286impl rust2dart::IntoIntoDart<PrepareRefundResponse> for PrepareRefundResponse {
2287    fn into_into_dart(self) -> Self {
2288        self
2289    }
2290}
2291
2292impl support::IntoDart for mirror_Rate {
2293    fn into_dart(self) -> support::DartAbi {
2294        vec![
2295            self.0.coin.into_into_dart().into_dart(),
2296            self.0.value.into_into_dart().into_dart(),
2297        ]
2298        .into_dart()
2299    }
2300}
2301impl support::IntoDartExceptPrimitive for mirror_Rate {}
2302impl rust2dart::IntoIntoDart<mirror_Rate> for Rate {
2303    fn into_into_dart(self) -> mirror_Rate {
2304        mirror_Rate(self)
2305    }
2306}
2307
2308impl support::IntoDart for ReceivePaymentResponse {
2309    fn into_dart(self) -> support::DartAbi {
2310        vec![
2311            self.ln_invoice.into_into_dart().into_dart(),
2312            self.opening_fee_params.into_dart(),
2313            self.opening_fee_msat.into_dart(),
2314        ]
2315        .into_dart()
2316    }
2317}
2318impl support::IntoDartExceptPrimitive for ReceivePaymentResponse {}
2319impl rust2dart::IntoIntoDart<ReceivePaymentResponse> for ReceivePaymentResponse {
2320    fn into_into_dart(self) -> Self {
2321        self
2322    }
2323}
2324
2325impl support::IntoDart for RecommendedFees {
2326    fn into_dart(self) -> support::DartAbi {
2327        vec![
2328            self.fastest_fee.into_into_dart().into_dart(),
2329            self.half_hour_fee.into_into_dart().into_dart(),
2330            self.hour_fee.into_into_dart().into_dart(),
2331            self.economy_fee.into_into_dart().into_dart(),
2332            self.minimum_fee.into_into_dart().into_dart(),
2333        ]
2334        .into_dart()
2335    }
2336}
2337impl support::IntoDartExceptPrimitive for RecommendedFees {}
2338impl rust2dart::IntoIntoDart<RecommendedFees> for RecommendedFees {
2339    fn into_into_dart(self) -> Self {
2340        self
2341    }
2342}
2343
2344impl support::IntoDart for RedeemOnchainFundsResponse {
2345    fn into_dart(self) -> support::DartAbi {
2346        vec![self.txid.into_into_dart().into_dart()].into_dart()
2347    }
2348}
2349impl support::IntoDartExceptPrimitive for RedeemOnchainFundsResponse {}
2350impl rust2dart::IntoIntoDart<RedeemOnchainFundsResponse> for RedeemOnchainFundsResponse {
2351    fn into_into_dart(self) -> Self {
2352        self
2353    }
2354}
2355
2356impl support::IntoDart for RefundResponse {
2357    fn into_dart(self) -> support::DartAbi {
2358        vec![self.refund_tx_id.into_into_dart().into_dart()].into_dart()
2359    }
2360}
2361impl support::IntoDartExceptPrimitive for RefundResponse {}
2362impl rust2dart::IntoIntoDart<RefundResponse> for RefundResponse {
2363    fn into_into_dart(self) -> Self {
2364        self
2365    }
2366}
2367
2368impl support::IntoDart for ReverseSwapInfo {
2369    fn into_dart(self) -> support::DartAbi {
2370        vec![
2371            self.id.into_into_dart().into_dart(),
2372            self.claim_pubkey.into_into_dart().into_dart(),
2373            self.lockup_txid.into_dart(),
2374            self.claim_txid.into_dart(),
2375            self.onchain_amount_sat.into_into_dart().into_dart(),
2376            self.status.into_into_dart().into_dart(),
2377        ]
2378        .into_dart()
2379    }
2380}
2381impl support::IntoDartExceptPrimitive for ReverseSwapInfo {}
2382impl rust2dart::IntoIntoDart<ReverseSwapInfo> for ReverseSwapInfo {
2383    fn into_into_dart(self) -> Self {
2384        self
2385    }
2386}
2387
2388impl support::IntoDart for ReverseSwapPairInfo {
2389    fn into_dart(self) -> support::DartAbi {
2390        vec![
2391            self.min.into_into_dart().into_dart(),
2392            self.max.into_into_dart().into_dart(),
2393            self.fees_hash.into_into_dart().into_dart(),
2394            self.fees_percentage.into_into_dart().into_dart(),
2395            self.fees_lockup.into_into_dart().into_dart(),
2396            self.fees_claim.into_into_dart().into_dart(),
2397            self.total_fees.into_dart(),
2398        ]
2399        .into_dart()
2400    }
2401}
2402impl support::IntoDartExceptPrimitive for ReverseSwapPairInfo {}
2403impl rust2dart::IntoIntoDart<ReverseSwapPairInfo> for ReverseSwapPairInfo {
2404    fn into_into_dart(self) -> Self {
2405        self
2406    }
2407}
2408
2409impl support::IntoDart for ReverseSwapStatus {
2410    fn into_dart(self) -> support::DartAbi {
2411        match self {
2412            Self::Initial => 0,
2413            Self::InProgress => 1,
2414            Self::Cancelled => 2,
2415            Self::CompletedSeen => 3,
2416            Self::CompletedConfirmed => 4,
2417        }
2418        .into_dart()
2419    }
2420}
2421impl support::IntoDartExceptPrimitive for ReverseSwapStatus {}
2422impl rust2dart::IntoIntoDart<ReverseSwapStatus> for ReverseSwapStatus {
2423    fn into_into_dart(self) -> Self {
2424        self
2425    }
2426}
2427
2428impl support::IntoDart for mirror_RouteHint {
2429    fn into_dart(self) -> support::DartAbi {
2430        vec![self.0.hops.into_into_dart().into_dart()].into_dart()
2431    }
2432}
2433impl support::IntoDartExceptPrimitive for mirror_RouteHint {}
2434impl rust2dart::IntoIntoDart<mirror_RouteHint> for RouteHint {
2435    fn into_into_dart(self) -> mirror_RouteHint {
2436        mirror_RouteHint(self)
2437    }
2438}
2439
2440impl support::IntoDart for mirror_RouteHintHop {
2441    fn into_dart(self) -> support::DartAbi {
2442        vec![
2443            self.0.src_node_id.into_into_dart().into_dart(),
2444            self.0.short_channel_id.into_into_dart().into_dart(),
2445            self.0.fees_base_msat.into_into_dart().into_dart(),
2446            self.0
2447                .fees_proportional_millionths
2448                .into_into_dart()
2449                .into_dart(),
2450            self.0.cltv_expiry_delta.into_into_dart().into_dart(),
2451            self.0.htlc_minimum_msat.into_dart(),
2452            self.0.htlc_maximum_msat.into_dart(),
2453        ]
2454        .into_dart()
2455    }
2456}
2457impl support::IntoDartExceptPrimitive for mirror_RouteHintHop {}
2458impl rust2dart::IntoIntoDart<mirror_RouteHintHop> for RouteHintHop {
2459    fn into_into_dart(self) -> mirror_RouteHintHop {
2460        mirror_RouteHintHop(self)
2461    }
2462}
2463
2464impl support::IntoDart for SendPaymentResponse {
2465    fn into_dart(self) -> support::DartAbi {
2466        vec![self.payment.into_into_dart().into_dart()].into_dart()
2467    }
2468}
2469impl support::IntoDartExceptPrimitive for SendPaymentResponse {}
2470impl rust2dart::IntoIntoDart<SendPaymentResponse> for SendPaymentResponse {
2471    fn into_into_dart(self) -> Self {
2472        self
2473    }
2474}
2475
2476impl support::IntoDart for ServiceHealthCheckResponse {
2477    fn into_dart(self) -> support::DartAbi {
2478        vec![self.status.into_into_dart().into_dart()].into_dart()
2479    }
2480}
2481impl support::IntoDartExceptPrimitive for ServiceHealthCheckResponse {}
2482impl rust2dart::IntoIntoDart<ServiceHealthCheckResponse> for ServiceHealthCheckResponse {
2483    fn into_into_dart(self) -> Self {
2484        self
2485    }
2486}
2487
2488impl support::IntoDart for SignMessageResponse {
2489    fn into_dart(self) -> support::DartAbi {
2490        vec![self.signature.into_into_dart().into_dart()].into_dart()
2491    }
2492}
2493impl support::IntoDartExceptPrimitive for SignMessageResponse {}
2494impl rust2dart::IntoIntoDart<SignMessageResponse> for SignMessageResponse {
2495    fn into_into_dart(self) -> Self {
2496        self
2497    }
2498}
2499
2500impl support::IntoDart for StaticBackupResponse {
2501    fn into_dart(self) -> support::DartAbi {
2502        vec![self.backup.into_dart()].into_dart()
2503    }
2504}
2505impl support::IntoDartExceptPrimitive for StaticBackupResponse {}
2506impl rust2dart::IntoIntoDart<StaticBackupResponse> for StaticBackupResponse {
2507    fn into_into_dart(self) -> Self {
2508        self
2509    }
2510}
2511
2512impl support::IntoDart for mirror_SuccessActionProcessed {
2513    fn into_dart(self) -> support::DartAbi {
2514        match self.0 {
2515            SuccessActionProcessed::Aes { result } => {
2516                vec![0.into_dart(), result.into_into_dart().into_dart()]
2517            }
2518            SuccessActionProcessed::Message { data } => {
2519                vec![1.into_dart(), data.into_into_dart().into_dart()]
2520            }
2521            SuccessActionProcessed::Url { data } => {
2522                vec![2.into_dart(), data.into_into_dart().into_dart()]
2523            }
2524        }
2525        .into_dart()
2526    }
2527}
2528impl support::IntoDartExceptPrimitive for mirror_SuccessActionProcessed {}
2529impl rust2dart::IntoIntoDart<mirror_SuccessActionProcessed> for SuccessActionProcessed {
2530    fn into_into_dart(self) -> mirror_SuccessActionProcessed {
2531        mirror_SuccessActionProcessed(self)
2532    }
2533}
2534
2535impl support::IntoDart for SwapInfo {
2536    fn into_dart(self) -> support::DartAbi {
2537        vec![
2538            self.bitcoin_address.into_into_dart().into_dart(),
2539            self.created_at.into_into_dart().into_dart(),
2540            self.lock_height.into_into_dart().into_dart(),
2541            self.payment_hash.into_into_dart().into_dart(),
2542            self.preimage.into_into_dart().into_dart(),
2543            self.private_key.into_into_dart().into_dart(),
2544            self.public_key.into_into_dart().into_dart(),
2545            self.swapper_public_key.into_into_dart().into_dart(),
2546            self.script.into_into_dart().into_dart(),
2547            self.bolt11.into_dart(),
2548            self.paid_msat.into_into_dart().into_dart(),
2549            self.total_incoming_txs.into_into_dart().into_dart(),
2550            self.confirmed_sats.into_into_dart().into_dart(),
2551            self.unconfirmed_sats.into_into_dart().into_dart(),
2552            self.status.into_into_dart().into_dart(),
2553            self.refund_tx_ids.into_into_dart().into_dart(),
2554            self.unconfirmed_tx_ids.into_into_dart().into_dart(),
2555            self.confirmed_tx_ids.into_into_dart().into_dart(),
2556            self.min_allowed_deposit.into_into_dart().into_dart(),
2557            self.max_allowed_deposit.into_into_dart().into_dart(),
2558            self.max_swapper_payable.into_into_dart().into_dart(),
2559            self.last_redeem_error.into_dart(),
2560            self.channel_opening_fees.into_dart(),
2561            self.confirmed_at.into_dart(),
2562        ]
2563        .into_dart()
2564    }
2565}
2566impl support::IntoDartExceptPrimitive for SwapInfo {}
2567impl rust2dart::IntoIntoDart<SwapInfo> for SwapInfo {
2568    fn into_into_dart(self) -> Self {
2569        self
2570    }
2571}
2572
2573impl support::IntoDart for SwapStatus {
2574    fn into_dart(self) -> support::DartAbi {
2575        match self {
2576            Self::Initial => 0,
2577            Self::WaitingConfirmation => 1,
2578            Self::Redeemable => 2,
2579            Self::Redeemed => 3,
2580            Self::Refundable => 4,
2581            Self::Completed => 5,
2582        }
2583        .into_dart()
2584    }
2585}
2586impl support::IntoDartExceptPrimitive for SwapStatus {}
2587impl rust2dart::IntoIntoDart<SwapStatus> for SwapStatus {
2588    fn into_into_dart(self) -> Self {
2589        self
2590    }
2591}
2592
2593impl support::IntoDart for mirror_Symbol {
2594    fn into_dart(self) -> support::DartAbi {
2595        vec![
2596            self.0.grapheme.into_dart(),
2597            self.0.template.into_dart(),
2598            self.0.rtl.into_dart(),
2599            self.0.position.into_dart(),
2600        ]
2601        .into_dart()
2602    }
2603}
2604impl support::IntoDartExceptPrimitive for mirror_Symbol {}
2605impl rust2dart::IntoIntoDart<mirror_Symbol> for Symbol {
2606    fn into_into_dart(self) -> mirror_Symbol {
2607        mirror_Symbol(self)
2608    }
2609}
2610
2611impl support::IntoDart for UnspentTransactionOutput {
2612    fn into_dart(self) -> support::DartAbi {
2613        vec![
2614            self.txid.into_into_dart().into_dart(),
2615            self.outnum.into_into_dart().into_dart(),
2616            self.amount_millisatoshi.into_into_dart().into_dart(),
2617            self.address.into_into_dart().into_dart(),
2618            self.reserved.into_into_dart().into_dart(),
2619        ]
2620        .into_dart()
2621    }
2622}
2623impl support::IntoDartExceptPrimitive for UnspentTransactionOutput {}
2624impl rust2dart::IntoIntoDart<UnspentTransactionOutput> for UnspentTransactionOutput {
2625    fn into_into_dart(self) -> Self {
2626        self
2627    }
2628}
2629
2630impl support::IntoDart for mirror_UrlSuccessActionData {
2631    fn into_dart(self) -> support::DartAbi {
2632        vec![
2633            self.0.description.into_into_dart().into_dart(),
2634            self.0.url.into_into_dart().into_dart(),
2635        ]
2636        .into_dart()
2637    }
2638}
2639impl support::IntoDartExceptPrimitive for mirror_UrlSuccessActionData {}
2640impl rust2dart::IntoIntoDart<mirror_UrlSuccessActionData> for UrlSuccessActionData {
2641    fn into_into_dart(self) -> mirror_UrlSuccessActionData {
2642        mirror_UrlSuccessActionData(self)
2643    }
2644}
2645
2646// Section: executor
2647
2648support::lazy_static! {
2649    pub static ref FLUTTER_RUST_BRIDGE_HANDLER: support::DefaultHandler = Default::default();
2650}
2651
2652#[cfg(not(target_family = "wasm"))]
2653#[path = "bridge_generated.io.rs"]
2654mod io;
2655#[cfg(not(target_family = "wasm"))]
2656pub use self::io::*;